OriaTheme
GitHub

API-Referenz · Editor-Domäne

@oriatheme/editor-core

Entwurf, Feldmetadaten, intelligente Waagen, Diagnose, Vorschau und Commit-Sitzungen ohne DOM-, Speicher- oder Framework-Abhängigkeit.

Paket und Umgebung

Reine Domänenlogik; Nur Vorschau/Speichern erhalten eine vom Verbraucher erstellte Laufzeit.

bash
pnpm add @oriatheme/editor-core

Verwenden Sie den Paketmanager und die Sperrdatei, die bereits vom Verbraucherprojekt ausgewählt wurden. Beispiele verwenden nur Paket-Root-Exporte; Führen Sie keinen Deep-Import aus src-, dist- oder Registry-Vorlagen durch.

Exports

ExportierenUnterschriftBeschreibung
describeTokenContract(contract?) => readonly TokenFieldDescriptor[]Stabile Metadaten für Vertragsauftragsfelder.
describeToken(path, contract?) => TokenFieldDescriptor | undefinedSucht ein Editorfeld nach.
getTokenModeScope(path) => 'shared' | 'mode'Gibt den Standard-Token-Bearbeitungsbereich zurück.
deriveSmartScale(input: SmartScaleInput) => readonly DerivedTokenValue[]Erweitert den Designer-orientierten Master-Wert.
preserveScaleOverrides(derived, current, customized) => readonly DerivedTokenValue[]Behält explizit angepasste Blätter bei.
createThemeEditorIdentity(source, existingThemes) => CloneIdentityErstellt eine stabile, ungenutzte Identität für die Bearbeitung von Voreinstellungen.
createThemeEditorSession(options) => ThemeEditorSessionErstellt die Framework-unabhängige Entwurfssitzung.

ThemeEditorSession

ExportierenUnterschriftBeschreibung
getSnapshot / subscribe() => ThemeEditorSnapshot / (listener) => unsubscribeLesen oder beobachten Sie den unveränderlichen Editorstatus.
setName / setToken / setTokens(...) => voidÄndern Sie den Entwurf nach Namen, einem Token oder einem atomaren Satz.
removeToken / resetToken / resetMode / resetAll(...) => voidEntwurfswerte zurücksetzen oder wiederherstellen.
replaceFromJson / exportJson(json) => ImportResult / () => stringAtomically import a draft or serialize it.
preview(runtime, mode?) => ThemeEditorPreviewResultVorschauen schließen nur gültige Revisionen ab.
save(runtime) => ThemeEditorSaveResultValidiert, erstellt/aktualisiert benutzerdefinierte Designs oder meldet Konflikte.
reload / destroy(theme) => void / () => voidÜbernehmen Sie eine externe Version oder geben Sie Sitzungsressourcen frei.

Wichtige Typen und Grenzen

ThemeEditorOptions erfordert beim Bearbeiten einer Voreinstellung eine Quelle und eine Identität. ThemeEditorSaveResult schlägt mit Validierung oder Konflikt fehl; ThemeEditorPreviewResult schlägt mit Problemen fehl. Kopieren Sie diesen Entwurfszustandsautomaten nicht in React, Vue oder eine Route.