OriaTheme
GitHub

API リファレンス · エディター ドメイン

@oriatheme/editor-core

DOM、ストレージ、またはフレームワークの依存関係のない、ドラフト、フィールド メタデータ、スマート スケール、診断、プレビュー、およびコミット セッション。

パッケージと環境

純粋なドメインロジック。コンシューマーによって作成されたランタイムを受け取るのはプレビュー/保存のみです。

bash
pnpm add @oriatheme/editor-core

コンシューマ プロジェクトによってすでに選択されているパッケージ マネージャーとロックファイルを使用します。例では、パッケージ ルート エクスポートのみを使用します。 src、dist、またはレジストリ テンプレートからディープ インポートしないでください。

Exports

エクスポート署名説明
describeTokenContract(contract?) => readonly TokenFieldDescriptor[]安定した契約注文フィールドのメタデータ。
describeToken(path, contract?) => TokenFieldDescriptor | undefined1 つのエディター フィールドを検索します。
getTokenModeScope(path) => 'shared' | 'mode'標準トークンの編集スコープを返します。
deriveSmartScale(input: SmartScaleInput) => readonly DerivedTokenValue[]デザイナー向けのマスター値を展開します。
preserveScaleOverrides(derived, current, customized) => readonly DerivedTokenValue[]明示的にカスタマイズされたリーフを保持します。
createThemeEditorIdentity(source, existingThemes) => CloneIdentityプリセット編集用に安定した未使用のアイデンティティを作成します。
createThemeEditorSession(options) => ThemeEditorSessionフレームワークに依存しないドラフト セッションを作成します。

ThemeEditorSession

エクスポート署名説明
getSnapshot / subscribe() => ThemeEditorSnapshot / (listener) => unsubscribe不変のエディターの状態を読み取るか監視します。
setName / setToken / setTokens(...) => void名前、1 つのトークン、またはアトミック セットによってドラフトを変更します。
removeToken / resetToken / resetMode / resetAll(...) => voidドラフト値の設定を解除または復元します。
replaceFromJson / exportJson(json) => ImportResult / () => stringAtomically import a draft or serialize it.
preview(runtime, mode?) => ThemeEditorPreviewResultプレビューは有効なリビジョンのみを完了します。
save(runtime) => ThemeEditorSaveResultカスタム テーマの検証、作成/更新、または競合の報告を行います。
reload / destroy(theme) => void / () => void外部バージョンを採用するか、セッション リソースをリリースします。

重要な種類と境界

ThemeEditorOptions にはソースが必要で、プリセットを編集するときに ID が必要です。 ThemeEditorSaveResult は検証または競合により失敗します。 ThemeEditorPreviewResult が問題により失敗します。このドラフト ステート マシンを React、Vue、またはルートにコピーしないでください。