アプリケーション開発者向け
カスタムテーマ
不変のプリセットをコピーし、完全な検証後にのみ保存し、ランタイムのアトミック境界内でインポート、プレビュー、永続性を維持します。プリセットは不変です
ts
const copied = runtime.duplicateTheme("oria-default", {
id: "brand-2026",
name: "Brand 2026",
});
runtime.updateCustomTheme(copied.id, {
name: "Brand 2026 (refined)",
modes: { light: draftLightTokens, dark: draftDarkTokens },
});
runtime.setTheme(copied.id);DuplicateTheme はカスタム テーマを作成します。プリセットは変更または削除できません。アクティブなカスタム テーマを削除すると、構成されたデフォルトに戻ります。
プレビューは永続的ではありません
プレビューテーマは、設定やストレージを変更せずに、現在完全に有効なドラフトのみを適用します。ハンドルを破棄すると、最新の公式状態が復元されます。 createCustomTheme または updateCustomTheme を通じて保存すると、書き込み前に完全に検証されます。
輸入は常に契約を経由します
ts
try {
const imported = runtime.importTheme(json);
runtime.setTheme(imported.id);
} catch (error) {
// Branch on OriaThemeError.code, not its English message.
}インポートはカスタム テーマになり、プリセットを上書きできません。無効な JSON またはトークンが部分的に適用されることはありません。エラー テキストを照合する代わりに、OriaThemeError.code または検証の問題を提示します。
続行: アプリケーション定義のプリセット