OriaTheme
GitHub

アプリケーション開発者向け

アプリケーション定義のプリセット

完全で有効な ThemeDefinition をアプリケーション コードに登録します。これらを公式カタログとして提示したり、コア検証をバイパスしたりしないでください。

完全な定義を作成し、最初に検証します

ts
import { createThemeFromSeed, validateTheme, oriaStandardContract } from "@oriatheme/core";

const brandTheme = createThemeFromSeed(
  { color: "#2563eb" },
  { id: "acme-blue", name: "Acme Blue" },
);
const result = validateTheme(brandTheme, oriaStandardContract);
if (!result.ok) throw new Error("Theme definition is invalid");

運用アプリケーションは、ビルドまたは制御された初期化中に完全な ThemeDefinition を検証する必要があります。信頼できない JSON から CSS をコンパイルしないでください。コアのインポートおよび検証 API を通じてユーザー入力をルーティングします。

公式プリセットを使用してランタイムに渡します

ts
import { oriaPresetThemes } from "@oriatheme/presets";
import { createOriaThemeRuntime } from "@oriatheme/runtime-dom";

const runtime = createOriaThemeRuntime({
  presets: [...oriaPresetThemes, brandTheme],
  defaultThemeId: "acme-blue",
});

これは公式のプリセットカタログではありません

@oriatheme/presets のカタログは、OriaTheme のリリース プロセスによって維持されます。アプリケーション プリセットは、アプリ独自の構成にのみ属します。公式 ID をオーバーライドしたり、コアの検証、解決、またはランタイム アトミック アプリケーションをバイパスしたりすることはできません。

パッケージの選択に戻る