本文へ移動
WebView Native UIdocs

API

@rdlabo/ionic-theme-md3 v9.2.1 が公開するJavaScript APIのリファレンスです。CSSエントリーポイントはREADMEで説明します。

アニメーション

function mdTransitionAnimation

(_: HTMLElement, opts: TransitionOptions) => Animation

Ionic向けのMaterial Design 3ナビゲーショントランジションを生成します。

動的な配色

function enableDynamicColors

(options: DynamicColorThemeOptions) => Promise<DynamicColorTheme>

選択した配色をドキュメントのルートに適用します。終了処理まで、生成したインラインプロパティとダーククラスを管理します。設定、ライフサイクル、フォールバックの動作はAndroidの動的な配色を参照してください。

function materialToIonicColors

(scheme: MaterialColorScheme) => IonicColorVariables

MaterialのカラーロールをIonicのCSS変数へ変換します。

function materialToMd3Colors

(scheme: Partial<Record<MaterialColorRole, string>>) => IonicColorVariables

指定されたMaterialのカラーロールをMD3のCSS変数へ変換します。

公開された色の型定義

公開配列 materialColorRoles は対応するロールを列挙します。MaterialColorRole はその要素の型です。MaterialColorScheme では以下の6ロールが必須で、ほかのロールは任意です。

type MaterialColorRole = (typeof materialColorRoles)[number];
interface MaterialColorScheme extends Partial<Record<MaterialColorRole, string>> {
  primary: string;
  secondary: string;
  tertiary: string;
  error: string;
  surface: string;
  onSurface: string;
}
type DynamicColorScheme = {
  available: false;
  systemDark: boolean;
} | {
  available: true;
  systemDark: boolean;
  light: MaterialColorScheme;
  dark: MaterialColorScheme;
};
type ColorMode = 'system' | 'light' | 'dark';
type IonicColorVariables = Record<string, string>;

コントローラーはカラーモードの変更、配色の再取得、リスナーと管理中のスタイルの解放を行います。

interface DynamicColorThemeOptions {
  getScheme: () => Promise<DynamicColorScheme>;
  listen?: (listener: () => void) => Promise<{
    remove(): Promise<void>;
  }>;
  mode?: ColorMode;
  document?: Document;
  onError?: (error: unknown) => void;
}
interface DynamicColorTheme {
  setMode(mode: ColorMode): void;
  refresh(): Promise<void>;
  destroy(): Promise<void>;
}

トグルの状態アイコン

function applyToggleStateIcons

(toggle: HTMLElement) => Promise<() => void>

描画済みのIonicトグル1つにAndroid Settingsの状態アイコンを追加します。Ionicのオン/オフラベルが優先されます。戻り値の関数で追加した表示を解除します。Android Settingsの外観を参照してください。

テーマ設定プリセット

constant md3ThemeConfig

IonicConfig

Ionic の初期化オプションへ展開できる設定オブジェクトです。md3ThemeConfig をフレームワークの Ionic 初期化へ展開し、必要なプロパティを後から上書きします。セットアップと設定ガイドを参照してください。