@mdwrk/extension-theme-studio 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -0
- package/dist/components/ThemeStudioView.d.ts +9 -0
- package/dist/components/ThemeStudioView.d.ts.map +1 -0
- package/dist/components/ThemeStudioView.js +75 -0
- package/dist/components/ThemeStudioView.js.map +1 -0
- package/dist/constants.d.ts +16 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +29 -0
- package/dist/constants.js.map +1 -0
- package/dist/createThemeStudioBundledEntry.d.ts +3 -0
- package/dist/createThemeStudioBundledEntry.d.ts.map +1 -0
- package/dist/createThemeStudioBundledEntry.js +72 -0
- package/dist/createThemeStudioBundledEntry.js.map +1 -0
- package/dist/export.d.ts +12 -0
- package/dist/export.d.ts.map +1 -0
- package/dist/export.js +96 -0
- package/dist/export.js.map +1 -0
- package/dist/i18n.d.ts +82 -0
- package/dist/i18n.d.ts.map +1 -0
- package/dist/i18n.js +93 -0
- package/dist/i18n.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/locales/en.d.ts +7 -0
- package/dist/locales/en.d.ts.map +1 -0
- package/dist/locales/en.js +27 -0
- package/dist/locales/en.js.map +1 -0
- package/dist/locales/es.d.ts +7 -0
- package/dist/locales/es.d.ts.map +1 -0
- package/dist/locales/es.js +27 -0
- package/dist/locales/es.js.map +1 -0
- package/dist/manifest.d.ts +4 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +155 -0
- package/dist/manifest.js.map +1 -0
- package/dist/relationship.d.ts +4 -0
- package/dist/relationship.d.ts.map +1 -0
- package/dist/relationship.js +18 -0
- package/dist/relationship.js.map +1 -0
- package/dist/service.d.ts +3 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +216 -0
- package/dist/service.js.map +1 -0
- package/dist/settings.d.ts +4 -0
- package/dist/settings.d.ts.map +1 -0
- package/dist/settings.js +19 -0
- package/dist/settings.js.map +1 -0
- package/dist/types.d.ts +79 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +2 -0
- package/dist/version.js.map +1 -0
- package/package.json +93 -0
package/README.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# mdwrk/extension-theme-studio
|
|
2
|
+
|
|
3
|
+
First-party Theme Studio extension package for Markdown Workspace.
|
|
4
|
+
|
|
5
|
+
## Responsibilities
|
|
6
|
+
|
|
7
|
+
- inspect formal theme tokens and stable class contracts
|
|
8
|
+
- edit token drafts without importing client internals
|
|
9
|
+
- preview renderer/editor bridge behavior against shared package contracts
|
|
10
|
+
- apply or revert theme drafts through host theme APIs
|
|
11
|
+
- export theme presets as JSON, CSS, and theme-package scaffold artifacts
|
|
12
|
+
|
|
13
|
+
## Current checkpoint status
|
|
14
|
+
|
|
15
|
+
This package is implemented for the Phase 11 checkpoint.
|
|
16
|
+
|
|
17
|
+
It is intended to be consumed as a bundled first-party extension through `mdwrk/extension-runtime`.
|
|
18
|
+
|
|
19
|
+
## Certification note
|
|
20
|
+
|
|
21
|
+
This package is **not yet part of a certifiably fully featured** or **certifiably fully RFC compliant** repository release. The repository-level current-state docs describe the remaining gaps.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { I18nLabel } from "@mdwrk/extension-manifest";
|
|
2
|
+
import type { ThemeStudioService } from "../types.js";
|
|
3
|
+
export interface ThemeStudioViewProps {
|
|
4
|
+
readonly service: ThemeStudioService;
|
|
5
|
+
readonly close: () => Promise<void>;
|
|
6
|
+
readonly formatLabel: (label: I18nLabel | string) => string;
|
|
7
|
+
}
|
|
8
|
+
export declare const ThemeStudioView: React.FC<ThemeStudioViewProps>;
|
|
9
|
+
//# sourceMappingURL=ThemeStudioView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeStudioView.d.ts","sourceRoot":"","sources":["../../src/components/ThemeStudioView.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAK3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,KAAK,MAAM,CAAC;CAC7D;AA8CD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAuL1D,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { MarkdownSourceEditor, createMarkdownEditorThemeStyleFromThemeTokens } from "@mdwrk/markdown-editor-react";
|
|
4
|
+
import { MarkdownRenderer, createMarkdownRendererThemeStyleFromThemeTokens } from "@mdwrk/markdown-renderer-react";
|
|
5
|
+
import { Download, Eye, Package, RefreshCw, RotateCcw, Save, X } from "lucide-react";
|
|
6
|
+
import { THEME_STUDIO_SAMPLE_MARKDOWN } from "../constants.js";
|
|
7
|
+
import { themeStudioLabels } from "../i18n.js";
|
|
8
|
+
import { sanitizePackageName, sanitizeThemeIdentifier } from "../export.js";
|
|
9
|
+
const sectionTitleStyle = {
|
|
10
|
+
fontSize: 11,
|
|
11
|
+
fontWeight: 700,
|
|
12
|
+
textTransform: "uppercase",
|
|
13
|
+
letterSpacing: "0.08em",
|
|
14
|
+
};
|
|
15
|
+
const fieldStyle = {
|
|
16
|
+
width: "100%",
|
|
17
|
+
border: "1px solid var(--border-primary)",
|
|
18
|
+
background: "var(--surface-elevated, var(--bg-panel))",
|
|
19
|
+
color: "var(--fg-primary)",
|
|
20
|
+
borderRadius: 8,
|
|
21
|
+
padding: "10px 12px",
|
|
22
|
+
fontSize: 12,
|
|
23
|
+
};
|
|
24
|
+
const codeBlockStyle = {
|
|
25
|
+
width: "100%",
|
|
26
|
+
minHeight: 160,
|
|
27
|
+
border: "1px solid var(--border-primary)",
|
|
28
|
+
background: "var(--surface-elevated, var(--bg-panel))",
|
|
29
|
+
color: "var(--fg-primary)",
|
|
30
|
+
borderRadius: 8,
|
|
31
|
+
padding: 12,
|
|
32
|
+
fontSize: 11,
|
|
33
|
+
fontFamily: "var(--font-mono, monospace)",
|
|
34
|
+
lineHeight: 1.6,
|
|
35
|
+
resize: "vertical",
|
|
36
|
+
};
|
|
37
|
+
const mergeTokens = (current, draft) => ({ ...(current ?? {}), ...draft });
|
|
38
|
+
function downloadTextFile(filename, content, mimeType = "text/plain;charset=utf-8") {
|
|
39
|
+
if (typeof window === "undefined")
|
|
40
|
+
return;
|
|
41
|
+
const blob = new Blob([content], { type: mimeType });
|
|
42
|
+
const url = URL.createObjectURL(blob);
|
|
43
|
+
const anchor = document.createElement("a");
|
|
44
|
+
anchor.href = url;
|
|
45
|
+
anchor.download = filename;
|
|
46
|
+
anchor.click();
|
|
47
|
+
URL.revokeObjectURL(url);
|
|
48
|
+
}
|
|
49
|
+
export const ThemeStudioView = ({ service, close, formatLabel }) => {
|
|
50
|
+
const snapshot = React.useSyncExternalStore(service.subscribe, service.getSnapshot, service.getSnapshot);
|
|
51
|
+
const [exportTarget, setExportTarget] = React.useState("host");
|
|
52
|
+
const effectiveTokens = React.useMemo(() => mergeTokens(snapshot.currentTokens, snapshot.draftTokens), [snapshot.currentTokens, snapshot.draftTokens]);
|
|
53
|
+
const rendererThemeStyle = React.useMemo(() => createMarkdownRendererThemeStyleFromThemeTokens(effectiveTokens), [effectiveTokens]);
|
|
54
|
+
const editorThemeStyle = React.useMemo(() => createMarkdownEditorThemeStyleFromThemeTokens(effectiveTokens), [effectiveTokens]);
|
|
55
|
+
React.useEffect(() => {
|
|
56
|
+
void service.refresh();
|
|
57
|
+
void service.readSettings().then((settings) => setExportTarget(settings.defaultExportTarget));
|
|
58
|
+
}, [service]);
|
|
59
|
+
const runExport = async () => {
|
|
60
|
+
await service.generateExports(exportTarget);
|
|
61
|
+
};
|
|
62
|
+
const handleMetadataChange = (key, value) => {
|
|
63
|
+
const normalizedValue = key === "themeId"
|
|
64
|
+
? sanitizeThemeIdentifier(value)
|
|
65
|
+
: key === "packageName"
|
|
66
|
+
? sanitizePackageName(value)
|
|
67
|
+
: value;
|
|
68
|
+
void service.updateMetadata({ [key]: normalizedValue });
|
|
69
|
+
};
|
|
70
|
+
const exports = snapshot.lastExports;
|
|
71
|
+
return (_jsx("div", { className: "settings-modal-backdrop", role: "presentation", children: _jsxs("div", { className: "settings-modal-shell", role: "dialog", "aria-modal": "true", "aria-label": formatLabel(themeStudioLabels.viewTitle), children: [_jsxs("div", { className: "settings-modal-header", children: [_jsxs("div", { className: "settings-modal-title-group", children: [_jsx("span", { className: "settings-modal-kicker", children: "THEME_STUDIO" }), _jsx("strong", { className: "settings-modal-title", children: formatLabel(themeStudioLabels.headerTitle) }), _jsx("span", { className: "settings-modal-subtitle", children: formatLabel(themeStudioLabels.headerSubtitle) })] }), _jsxs("div", { className: "settings-modal-actions", children: [_jsxs("button", { className: "modal-btn", onClick: () => void service.refresh(), disabled: snapshot.busy, children: [_jsx(RefreshCw, { size: 14 }), " ", formatLabel(themeStudioLabels.actionRefresh)] }), _jsxs("button", { className: "modal-btn", onClick: () => void service.preview(), disabled: snapshot.busy, children: [_jsx(Eye, { size: 14 }), " ", formatLabel(themeStudioLabels.actionPreview)] }), _jsxs("button", { className: "modal-btn modal-btn-primary", onClick: () => void service.apply(), disabled: snapshot.busy, children: [_jsx(Save, { size: 14 }), " ", formatLabel(themeStudioLabels.actionApply)] }), _jsxs("button", { className: "modal-btn", onClick: () => void service.revert(), disabled: snapshot.busy, children: [_jsx(RotateCcw, { size: 14 }), " ", formatLabel(themeStudioLabels.actionRevert)] }), _jsxs("button", { className: "modal-btn", onClick: () => void close(), children: [_jsx(X, { size: 14 }), " ", formatLabel(themeStudioLabels.actionClose)] })] })] }), _jsxs("div", { className: "settings-modal-body", style: { display: "grid", gap: 16 }, children: [_jsxs("div", { className: "settings-card settings-card-stack", style: { display: "grid", gap: 8 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", gap: 12, flexWrap: "wrap" }, children: [_jsx("span", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.metadataTitle) }), _jsx("span", { className: "text-[11px] text-[var(--fg-muted)]", children: snapshot.busy ? formatLabel(themeStudioLabels.statusBusy) : snapshot.infoMessage ?? formatLabel(themeStudioLabels.statusReady) })] }), snapshot.lastError && _jsx("p", { style: { margin: 0, color: "var(--accent-red, #ef4444)", fontSize: 12 }, children: snapshot.lastError }), _jsxs("div", { className: "settings-grid-2", children: [_jsxs("label", { className: "flex flex-col gap-2", children: [_jsx("span", { className: "text-[10px] font-bold text-[var(--fg-muted)] uppercase", children: formatLabel(themeStudioLabels.metadataThemeName) }), _jsx("input", { style: fieldStyle, value: snapshot.metadata.themeName, onChange: (event) => handleMetadataChange("themeName", event.currentTarget.value) })] }), _jsxs("label", { className: "flex flex-col gap-2", children: [_jsx("span", { className: "text-[10px] font-bold text-[var(--fg-muted)] uppercase", children: formatLabel(themeStudioLabels.metadataThemeId) }), _jsx("input", { style: fieldStyle, value: snapshot.metadata.themeId, onChange: (event) => handleMetadataChange("themeId", event.currentTarget.value) })] }), _jsxs("label", { className: "flex flex-col gap-2", children: [_jsx("span", { className: "text-[10px] font-bold text-[var(--fg-muted)] uppercase", children: formatLabel(themeStudioLabels.metadataPackageName) }), _jsx("input", { style: fieldStyle, value: snapshot.metadata.packageName, onChange: (event) => handleMetadataChange("packageName", event.currentTarget.value) })] }), _jsxs("label", { className: "flex flex-col gap-2", children: [_jsx("span", { className: "text-[10px] font-bold text-[var(--fg-muted)] uppercase", children: formatLabel(themeStudioLabels.metadataAuthor) }), _jsx("input", { style: fieldStyle, value: snapshot.metadata.author, onChange: (event) => handleMetadataChange("author", event.currentTarget.value) })] })] }), _jsxs("label", { className: "flex flex-col gap-2", children: [_jsx("span", { className: "text-[10px] font-bold text-[var(--fg-muted)] uppercase", children: formatLabel(themeStudioLabels.metadataDescription) }), _jsx("textarea", { style: { ...fieldStyle, minHeight: 72, resize: "vertical" }, value: snapshot.metadata.description, onChange: (event) => handleMetadataChange("description", event.currentTarget.value) })] })] }), _jsxs("div", { className: "settings-card settings-card-stack", style: { display: "grid", gap: 12 }, children: [_jsxs("div", { children: [_jsx("div", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.tokenInspectorTitle) }), _jsx("p", { style: { margin: "6px 0 0", fontSize: 12, color: "var(--fg-secondary)", lineHeight: 1.6 }, children: formatLabel(themeStudioLabels.tokenInspectorDescription) })] }), _jsx("div", { style: { display: "grid", gap: 10, maxHeight: 320, overflow: "auto", paddingRight: 6 }, children: snapshot.tokenDefinitions.map((definition) => (_jsxs("div", { className: "settings-session-item", style: { display: "grid", gap: 8 }, children: [_jsxs("div", { style: { display: "grid", gridTemplateColumns: "1fr auto", gap: 8, alignItems: "baseline" }, children: [_jsx("strong", { style: { fontSize: 12 }, children: definition.name }), _jsx("span", { className: "settings-session-label", children: definition.category })] }), _jsx("span", { className: "text-[11px] text-[var(--fg-muted)]", children: definition.description }), _jsxs("div", { className: "settings-grid-2", children: [_jsxs("div", { className: "settings-session-item", children: [_jsx("span", { className: "settings-session-label", children: formatLabel(themeStudioLabels.labelDefault) }), _jsx("span", { className: "settings-session-value", children: definition.defaultValue })] }), _jsxs("div", { className: "settings-session-item", children: [_jsx("span", { className: "settings-session-label", children: formatLabel(themeStudioLabels.labelCurrent) }), _jsx("span", { className: "settings-session-value", children: snapshot.currentTokens?.[definition.name] ?? definition.defaultValue })] })] }), _jsxs("label", { className: "flex flex-col gap-2", children: [_jsx("span", { className: "text-[10px] font-bold text-[var(--fg-muted)] uppercase", children: formatLabel(themeStudioLabels.labelDraft) }), _jsx("input", { style: fieldStyle, value: snapshot.draftTokens[definition.name] ?? snapshot.currentTokens?.[definition.name] ?? definition.defaultValue, onChange: (event) => {
|
|
72
|
+
void service.setDraftToken(definition.name, event.currentTarget.value);
|
|
73
|
+
} })] })] }, definition.name))) })] }), _jsxs("div", { className: "settings-grid-2", children: [_jsxs("div", { className: "settings-card settings-card-stack", style: { display: "grid", gap: 12 }, children: [_jsxs("div", { children: [_jsx("div", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.previewTitle) }), _jsx("p", { style: { margin: "6px 0 0", fontSize: 12, color: "var(--fg-secondary)", lineHeight: 1.6 }, children: formatLabel(themeStudioLabels.previewDescription) })] }), _jsxs("div", { style: { display: "grid", gap: 12 }, children: [_jsx("div", { style: { border: "1px solid var(--border-primary)", borderRadius: 8, padding: 12 }, children: _jsx(MarkdownRenderer, { markdown: THEME_STUDIO_SAMPLE_MARKDOWN, themeStyle: rendererThemeStyle }) }), _jsx("div", { style: { border: "1px solid var(--border-primary)", borderRadius: 8, overflow: "hidden" }, children: _jsx(MarkdownSourceEditor, { value: THEME_STUDIO_SAMPLE_MARKDOWN, disabled: true, showLineNumbers: true, themeStyle: editorThemeStyle }) })] })] }), _jsxs("div", { className: "settings-card settings-card-stack", style: { display: "grid", gap: 12 }, children: [_jsxs("div", { children: [_jsx("div", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.classInspectorTitle) }), _jsx("p", { style: { margin: "6px 0 0", fontSize: 12, color: "var(--fg-secondary)", lineHeight: 1.6 }, children: formatLabel(themeStudioLabels.classInspectorDescription) })] }), _jsxs("div", { style: { display: "grid", gap: 10, maxHeight: 420, overflow: "auto", paddingRight: 6 }, children: [snapshot.relationships.length === 0 && _jsx("span", { className: "text-[12px] text-[var(--fg-muted)]", children: formatLabel(themeStudioLabels.labelNoRelationships) }), snapshot.relationships.map((relationship) => (_jsxs("div", { className: "settings-session-item", style: { display: "grid", gap: 6 }, children: [_jsxs("div", { style: { display: "grid", gridTemplateColumns: "1fr auto", gap: 8, alignItems: "baseline" }, children: [_jsx("strong", { style: { fontSize: 12 }, children: relationship.className }), _jsx("span", { className: "settings-session-label", children: relationship.bridgeTarget })] }), _jsx("span", { className: "text-[11px] text-[var(--fg-muted)]", children: relationship.selector }), _jsxs("div", { className: "settings-grid-2", children: [_jsxs("div", { className: "settings-session-item", children: [_jsx("span", { className: "settings-session-label", children: formatLabel(themeStudioLabels.labelScope) }), _jsx("span", { className: "settings-session-value", children: relationship.scope })] }), _jsxs("div", { className: "settings-session-item", children: [_jsx("span", { className: "settings-session-label", children: formatLabel(themeStudioLabels.labelBridgeTarget) }), _jsx("span", { className: "settings-session-value", children: relationship.bridgeTarget })] })] }), _jsxs("div", { className: "settings-session-item", children: [_jsx("span", { className: "settings-session-label", children: formatLabel(themeStudioLabels.labelTokens) }), _jsx("span", { className: "settings-session-value", children: relationship.sourceTokens.join(", ") })] })] }, relationship.className)))] })] })] }), _jsxs("div", { className: "settings-card settings-card-stack", style: { display: "grid", gap: 12 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", gap: 12, alignItems: "center", flexWrap: "wrap" }, children: [_jsxs("div", { children: [_jsx("div", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.exportTitle) }), _jsx("p", { style: { margin: "6px 0 0", fontSize: 12, color: "var(--fg-secondary)", lineHeight: 1.6 }, children: formatLabel(themeStudioLabels.exportDescription) })] }), _jsxs("div", { style: { display: "flex", gap: 8, alignItems: "center", flexWrap: "wrap" }, children: [_jsxs("select", { style: fieldStyle, value: exportTarget, onChange: (event) => setExportTarget(event.currentTarget.value), children: [_jsx("option", { value: "host", children: "Host CSS" }), _jsx("option", { value: "renderer", children: "Renderer CSS" }), _jsx("option", { value: "editor", children: "Editor CSS" })] }), _jsxs("button", { className: "modal-btn modal-btn-primary", onClick: () => void runExport(), disabled: snapshot.busy, children: [_jsx(Package, { size: 14 }), " ", formatLabel(themeStudioLabels.actionExport)] })] })] }), _jsxs("div", { className: "settings-grid-2", children: [_jsxs("div", { style: { display: "grid", gap: 8 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [_jsx("span", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.labelJsonExport) }), exports && _jsxs("button", { className: "modal-btn", onClick: () => downloadTextFile(`${snapshot.metadata.themeId}.json`, exports.json, "application/json"), children: [_jsx(Download, { size: 14 }), " ", formatLabel(themeStudioLabels.actionDownloadJson)] })] }), _jsx("textarea", { readOnly: true, style: codeBlockStyle, value: exports?.json ?? "" })] }), _jsxs("div", { style: { display: "grid", gap: 8 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [_jsx("span", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.labelCssExport) }), exports && _jsxs("button", { className: "modal-btn", onClick: () => downloadTextFile(`${snapshot.metadata.themeId}.css`, exportTarget === "host" ? exports.hostCss : exportTarget === "renderer" ? exports.rendererCss : exports.editorCss, "text/css"), children: [_jsx(Download, { size: 14 }), " ", formatLabel(themeStudioLabels.actionDownloadCss)] })] }), _jsx("textarea", { readOnly: true, style: codeBlockStyle, value: exports ? (exportTarget === "host" ? exports.hostCss : exportTarget === "renderer" ? exports.rendererCss : exports.editorCss) : "" })] })] }), _jsxs("div", { style: { display: "grid", gap: 8 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [_jsx("span", { style: sectionTitleStyle, children: formatLabel(themeStudioLabels.labelPackageArtifact) }), exports && _jsxs("button", { className: "modal-btn", onClick: () => downloadTextFile(`${snapshot.metadata.themeId}.theme-package.json`, JSON.stringify(exports.packageArtifact, null, 2), "application/json"), children: [_jsx(Download, { size: 14 }), " ", formatLabel(themeStudioLabels.actionDownloadPackage)] })] }), _jsx("textarea", { readOnly: true, style: { ...codeBlockStyle, minHeight: 220 }, value: exports ? JSON.stringify(exports.packageArtifact, null, 2) : "" })] })] })] })] }) }));
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=ThemeStudioView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeStudioView.js","sourceRoot":"","sources":["../../src/components/ThemeStudioView.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,6CAA6C,EAAE,MAAM,8BAA8B,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAAE,+CAA+C,EAAE,MAAM,gCAAgC,CAAC;AAEnH,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAS5E,MAAM,iBAAiB,GAAwB;IAC7C,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,aAAa,EAAE,WAAW;IAC1B,aAAa,EAAE,QAAQ;CACxB,CAAC;AAEF,MAAM,UAAU,GAAwB;IACtC,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,iCAAiC;IACzC,UAAU,EAAE,0CAA0C;IACtD,KAAK,EAAE,mBAAmB;IAC1B,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF,MAAM,cAAc,GAAwB;IAC1C,KAAK,EAAE,MAAM;IACb,SAAS,EAAE,GAAG;IACd,MAAM,EAAE,iCAAiC;IACzC,UAAU,EAAE,0CAA0C;IACtD,KAAK,EAAE,mBAAmB;IAC1B,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,6BAA6B;IACzC,UAAU,EAAE,GAAG;IACf,MAAM,EAAE,UAAU;CACnB,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,OAAsC,EAAE,KAA6B,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;AAElI,SAAS,gBAAgB,CAAC,QAAgB,EAAE,OAAe,EAAE,QAAQ,GAAG,0BAA0B;IAChG,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAmC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE;IACjG,MAAM,QAAQ,GAAG,KAAK,CAAC,oBAAoB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACzG,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAiC,MAAM,CAAC,CAAC;IAE/F,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CACnC,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,aAA8C,EAAE,QAAQ,CAAC,WAAqC,CAAC,EAC1H,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,WAAW,CAAC,CAC/C,CAAC;IAEF,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,+CAA+C,CAAC,eAAsB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAC3I,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,6CAA6C,CAAC,eAAsB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEvI,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAChG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;QAC1C,MAAM,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,GAAuE,EAAE,KAAa,EAAE,EAAE;QACtH,MAAM,eAAe,GAAG,GAAG,KAAK,SAAS;YACvC,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC;YAChC,CAAC,CAAC,GAAG,KAAK,aAAa;gBACrB,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC;gBAC5B,CAAC,CAAC,KAAK,CAAC;QACZ,KAAK,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC;IAErC,OAAO,CACL,cAAK,SAAS,EAAC,yBAAyB,EAAC,IAAI,EAAC,cAAc,YAC1D,eAAK,SAAS,EAAC,sBAAsB,EAAC,IAAI,EAAC,QAAQ,gBAAY,MAAM,gBAAa,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,aACxH,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAK,SAAS,EAAC,4BAA4B,aACzC,eAAM,SAAS,EAAC,uBAAuB,6BAAoB,EAC3D,iBAAQ,SAAS,EAAC,sBAAsB,YAAE,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAU,EAC9F,eAAM,SAAS,EAAC,yBAAyB,YAAE,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,GAAQ,IAC5F,EACN,eAAK,SAAS,EAAC,wBAAwB,aACrC,kBAAQ,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,aAAE,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAU,EAC7K,kBAAQ,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,aAAE,KAAC,GAAG,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAU,EACvK,kBAAQ,SAAS,EAAC,6BAA6B,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,aAAE,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAU,EACtL,kBAAQ,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,aAAE,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAU,EAC3K,kBAAQ,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,KAAK,EAAE,aAAE,KAAC,CAAC,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAU,IAC5H,IACF,EAEN,eAAK,SAAS,EAAC,qBAAqB,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,aACtE,eAAK,SAAS,EAAC,mCAAmC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACnF,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,aACzF,eAAM,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,GAAQ,EACrF,eAAM,SAAS,EAAC,oCAAoC,YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,IAAI,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAQ,IACxL,EACL,QAAQ,CAAC,SAAS,IAAI,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAG,QAAQ,CAAC,SAAS,GAAK,EAC3H,eAAK,SAAS,EAAC,iBAAiB,aAC9B,iBAAO,SAAS,EAAC,qBAAqB,aAAC,eAAM,SAAS,EAAC,wDAAwD,YAAE,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,GAAQ,EAAA,gBAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,GAAI,IAAQ,EACpU,iBAAO,SAAS,EAAC,qBAAqB,aAAC,eAAM,SAAS,EAAC,wDAAwD,YAAE,WAAW,CAAC,iBAAiB,CAAC,eAAe,CAAC,GAAQ,EAAA,gBAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,GAAI,IAAQ,EAC9T,iBAAO,SAAS,EAAC,qBAAqB,aAAC,eAAM,SAAS,EAAC,wDAAwD,YAAE,WAAW,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,GAAQ,EAAA,gBAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,GAAI,IAAQ,EAC1U,iBAAO,SAAS,EAAC,qBAAqB,aAAC,eAAM,SAAS,EAAC,wDAAwD,YAAE,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,GAAQ,EAAA,gBAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,GAAI,IAAQ,IACvT,EACN,iBAAO,SAAS,EAAC,qBAAqB,aAAC,eAAM,SAAS,EAAC,wDAAwD,YAAE,WAAW,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,GAAQ,EAAA,mBAAU,KAAK,EAAE,EAAE,GAAG,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,GAAI,IAAQ,IACnX,EAEN,eAAK,SAAS,EAAC,mCAAmC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,aACpF,0BACE,cAAK,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,GAAO,EACzF,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,GAAG,EAAE,YAAG,WAAW,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,GAAK,IACxJ,EACN,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,YACxF,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAC7C,eAA2B,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aAC7F,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,aAC9F,iBAAQ,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAG,UAAU,CAAC,IAAI,GAAU,EAC3D,eAAM,SAAS,EAAC,wBAAwB,YAAE,UAAU,CAAC,QAAQ,GAAQ,IACjE,EACN,eAAM,SAAS,EAAC,oCAAoC,YAAE,UAAU,CAAC,WAAW,GAAQ,EACpF,eAAK,SAAS,EAAC,iBAAiB,aAC9B,eAAK,SAAS,EAAC,uBAAuB,aAAC,eAAM,SAAS,EAAC,wBAAwB,YAAE,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAQ,EAAA,eAAM,SAAS,EAAC,wBAAwB,YAAE,UAAU,CAAC,YAAY,GAAQ,IAAM,EACnN,eAAK,SAAS,EAAC,uBAAuB,aAAC,eAAM,SAAS,EAAC,wBAAwB,YAAE,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAQ,EAAA,eAAM,SAAS,EAAC,wBAAwB,YAAG,QAAQ,CAAC,aAAqB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,YAAY,GAAQ,IAAM,IACrQ,EACN,iBAAO,SAAS,EAAC,qBAAqB,aACpC,eAAM,SAAS,EAAC,wDAAwD,YAAE,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAQ,EAC3H,gBACE,KAAK,EAAE,UAAU,EACjB,KAAK,EAAG,QAAQ,CAAC,WAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAK,QAAQ,CAAC,aAAqB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,YAAY,EACtI,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;4DAClB,KAAK,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,IAAW,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;wDAChF,CAAC,GACD,IACI,KAnBA,UAAU,CAAC,IAAI,CAoBnB,CACP,CAAC,GACE,IACF,EAEN,eAAK,SAAS,EAAC,iBAAiB,aAC9B,eAAK,SAAS,EAAC,mCAAmC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,aACpF,0BACE,cAAK,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAO,EAClF,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,GAAG,EAAE,YAAG,WAAW,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,GAAK,IACjJ,EACN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,aACtC,cAAK,KAAK,EAAE,EAAE,MAAM,EAAE,iCAAiC,EAAE,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YACrF,KAAC,gBAAgB,IAAC,QAAQ,EAAE,4BAA4B,EAAE,UAAU,EAAE,kBAAkB,GAAI,GACxF,EACN,cAAK,KAAK,EAAE,EAAE,MAAM,EAAE,iCAAiC,EAAE,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAC5F,KAAC,oBAAoB,IAAC,KAAK,EAAE,4BAA4B,EAAE,QAAQ,QAAC,eAAe,QAAC,UAAU,EAAE,gBAAgB,GAAI,GAChH,IACF,IACF,EAEN,eAAK,SAAS,EAAC,mCAAmC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,aACpF,0BACE,cAAK,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,GAAO,EACzF,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,GAAG,EAAE,YAAG,WAAW,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,GAAK,IACxJ,EACN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,aACxF,QAAQ,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,eAAM,SAAS,EAAC,oCAAoC,YAAE,WAAW,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,GAAQ,EACxJ,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAC5C,eAAkC,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACpG,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,aAC9F,iBAAQ,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAG,YAAY,CAAC,SAAS,GAAU,EAClE,eAAM,SAAS,EAAC,wBAAwB,YAAE,YAAY,CAAC,YAAY,GAAQ,IACvE,EACN,eAAM,SAAS,EAAC,oCAAoC,YAAE,YAAY,CAAC,QAAQ,GAAQ,EACnF,eAAK,SAAS,EAAC,iBAAiB,aAC9B,eAAK,SAAS,EAAC,uBAAuB,aAAC,eAAM,SAAS,EAAC,wBAAwB,YAAE,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAQ,EAAA,eAAM,SAAS,EAAC,wBAAwB,YAAE,YAAY,CAAC,KAAK,GAAQ,IAAM,EAC5M,eAAK,SAAS,EAAC,uBAAuB,aAAC,eAAM,SAAS,EAAC,wBAAwB,YAAE,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,GAAQ,EAAA,eAAM,SAAS,EAAC,wBAAwB,YAAE,YAAY,CAAC,YAAY,GAAQ,IAAM,IACtN,EACN,eAAK,SAAS,EAAC,uBAAuB,aAAC,eAAM,SAAS,EAAC,wBAAwB,YAAE,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAQ,EAAA,eAAM,SAAS,EAAC,wBAAwB,YAAE,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAQ,IAAM,KAVvN,YAAY,CAAC,SAAS,CAW1B,CACP,CAAC,IACE,IACF,IACF,EAEN,eAAK,SAAS,EAAC,mCAAmC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,aACpF,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAC/G,0BACE,cAAK,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAO,EACjF,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,GAAG,EAAE,YAAG,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,GAAK,IAChJ,EACN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAC7E,kBAAQ,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,KAAY,CAAC,aACpH,iBAAQ,KAAK,EAAC,MAAM,yBAAkB,EACtC,iBAAQ,KAAK,EAAC,UAAU,6BAAsB,EAC9C,iBAAQ,KAAK,EAAC,QAAQ,2BAAoB,IACnC,EACT,kBAAQ,SAAS,EAAC,6BAA6B,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,aAAE,KAAC,OAAO,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAU,IAClL,IACF,EAEN,eAAK,SAAS,EAAC,iBAAiB,aAC9B,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,aACpF,eAAM,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,eAAe,CAAC,GAAQ,EACtF,OAAO,IAAI,kBAAQ,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,kBAAkB,CAAC,aAAG,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAU,IAClO,EACN,mBAAU,QAAQ,QAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,GAAI,IACpE,EACN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,aACpF,eAAM,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,GAAQ,EACrF,OAAO,IAAI,kBAAQ,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,MAAM,EAAE,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,aAAG,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAU,IAC7T,EACN,mBAAU,QAAQ,QAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAI,IACnL,IACF,EACN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,aACpF,eAAM,KAAK,EAAE,iBAAiB,YAAG,WAAW,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,GAAQ,EAC3F,OAAO,IAAI,kBAAQ,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC,aAAG,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,IAAU,IACvR,EACN,mBAAU,QAAQ,QAAC,KAAK,EAAE,EAAE,GAAG,cAAc,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAI,IACvI,IACF,IACF,IACF,GACF,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ThemeStudioResolvedSettings } from "./types.js";
|
|
2
|
+
export declare const THEME_STUDIO_EXTENSION_ID: "core.theme-studio";
|
|
3
|
+
export declare const THEME_STUDIO_VIEW_ID: "core.theme-studio.view";
|
|
4
|
+
export declare const THEME_STUDIO_RAIL_ID: "core.theme-studio.rail";
|
|
5
|
+
export declare const THEME_STUDIO_COMMAND_OPEN_ID: "core.theme-studio.open";
|
|
6
|
+
export declare const THEME_STUDIO_SERVICE_TOKEN: "core.theme-studio.service";
|
|
7
|
+
export declare const THEME_STUDIO_SETTINGS_SECTION_PREVIEW: "core.theme-studio.settings.preview";
|
|
8
|
+
export declare const THEME_STUDIO_SETTINGS_SECTION_EXPORT: "core.theme-studio.settings.export";
|
|
9
|
+
export declare const THEME_STUDIO_SETTING_AUTO_PREVIEW: "autoPreviewOnEdit";
|
|
10
|
+
export declare const THEME_STUDIO_SETTING_DEFAULT_EXPORT_TARGET: "defaultExportTarget";
|
|
11
|
+
export declare const THEME_STUDIO_SETTING_COMPACT_CSS: "compactCss";
|
|
12
|
+
export declare const THEME_STUDIO_SETTING_PACKAGE_NAME_PREFIX: "packageNamePrefix";
|
|
13
|
+
export declare const THEME_STUDIO_SETTING_DEFAULT_AUTHOR: "defaultAuthor";
|
|
14
|
+
export declare const THEME_STUDIO_DEFAULT_SETTINGS: ThemeStudioResolvedSettings;
|
|
15
|
+
export declare const THEME_STUDIO_SAMPLE_MARKDOWN = "# Theme Studio Preview\n\nUse **tokens** to style renderer and editor surfaces.\n\n- Preview renderer bridges\n- Preview editor bridges\n- Export JSON and CSS artifacts\n\n> Theme Studio uses the shared token and class contract.";
|
|
16
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAE9D,eAAO,MAAM,yBAAyB,EAAG,mBAA4B,CAAC;AACtE,eAAO,MAAM,oBAAoB,0BAA+C,CAAC;AACjF,eAAO,MAAM,oBAAoB,0BAA+C,CAAC;AACjF,eAAO,MAAM,4BAA4B,0BAA+C,CAAC;AACzF,eAAO,MAAM,0BAA0B,6BAAkD,CAAC;AAE1F,eAAO,MAAM,qCAAqC,sCAA2D,CAAC;AAC9G,eAAO,MAAM,oCAAoC,qCAA0D,CAAC;AAE5G,eAAO,MAAM,iCAAiC,EAAG,mBAA4B,CAAC;AAC9E,eAAO,MAAM,0CAA0C,EAAG,qBAA8B,CAAC;AACzF,eAAO,MAAM,gCAAgC,EAAG,YAAqB,CAAC;AACtE,eAAO,MAAM,wCAAwC,EAAG,mBAA4B,CAAC;AACrF,eAAO,MAAM,mCAAmC,EAAG,eAAwB,CAAC;AAE5E,eAAO,MAAM,6BAA6B,EAAE,2BAM3C,CAAC;AAEF,eAAO,MAAM,4BAA4B,yOAQgB,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export const THEME_STUDIO_EXTENSION_ID = "core.theme-studio";
|
|
2
|
+
export const THEME_STUDIO_VIEW_ID = `${THEME_STUDIO_EXTENSION_ID}.view`;
|
|
3
|
+
export const THEME_STUDIO_RAIL_ID = `${THEME_STUDIO_EXTENSION_ID}.rail`;
|
|
4
|
+
export const THEME_STUDIO_COMMAND_OPEN_ID = `${THEME_STUDIO_EXTENSION_ID}.open`;
|
|
5
|
+
export const THEME_STUDIO_SERVICE_TOKEN = `${THEME_STUDIO_EXTENSION_ID}.service`;
|
|
6
|
+
export const THEME_STUDIO_SETTINGS_SECTION_PREVIEW = `${THEME_STUDIO_EXTENSION_ID}.settings.preview`;
|
|
7
|
+
export const THEME_STUDIO_SETTINGS_SECTION_EXPORT = `${THEME_STUDIO_EXTENSION_ID}.settings.export`;
|
|
8
|
+
export const THEME_STUDIO_SETTING_AUTO_PREVIEW = "autoPreviewOnEdit";
|
|
9
|
+
export const THEME_STUDIO_SETTING_DEFAULT_EXPORT_TARGET = "defaultExportTarget";
|
|
10
|
+
export const THEME_STUDIO_SETTING_COMPACT_CSS = "compactCss";
|
|
11
|
+
export const THEME_STUDIO_SETTING_PACKAGE_NAME_PREFIX = "packageNamePrefix";
|
|
12
|
+
export const THEME_STUDIO_SETTING_DEFAULT_AUTHOR = "defaultAuthor";
|
|
13
|
+
export const THEME_STUDIO_DEFAULT_SETTINGS = {
|
|
14
|
+
autoPreviewOnEdit: true,
|
|
15
|
+
defaultExportTarget: "host",
|
|
16
|
+
compactCss: false,
|
|
17
|
+
packageNamePrefix: "@mdwrk/theme-",
|
|
18
|
+
defaultAuthor: "Markdown Workspace",
|
|
19
|
+
};
|
|
20
|
+
export const THEME_STUDIO_SAMPLE_MARKDOWN = `# Theme Studio Preview
|
|
21
|
+
|
|
22
|
+
Use **tokens** to style renderer and editor surfaces.
|
|
23
|
+
|
|
24
|
+
- Preview renderer bridges
|
|
25
|
+
- Preview editor bridges
|
|
26
|
+
- Export JSON and CSS artifacts
|
|
27
|
+
|
|
28
|
+
> Theme Studio uses the shared token and class contract.`;
|
|
29
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAAG,mBAA4B,CAAC;AACtE,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,yBAAyB,OAAgB,CAAC;AACjF,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,yBAAyB,OAAgB,CAAC;AACjF,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,yBAAyB,OAAgB,CAAC;AACzF,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,yBAAyB,UAAmB,CAAC;AAE1F,MAAM,CAAC,MAAM,qCAAqC,GAAG,GAAG,yBAAyB,mBAA4B,CAAC;AAC9G,MAAM,CAAC,MAAM,oCAAoC,GAAG,GAAG,yBAAyB,kBAA2B,CAAC;AAE5G,MAAM,CAAC,MAAM,iCAAiC,GAAG,mBAA4B,CAAC;AAC9E,MAAM,CAAC,MAAM,0CAA0C,GAAG,qBAA8B,CAAC;AACzF,MAAM,CAAC,MAAM,gCAAgC,GAAG,YAAqB,CAAC;AACtE,MAAM,CAAC,MAAM,wCAAwC,GAAG,mBAA4B,CAAC;AACrF,MAAM,CAAC,MAAM,mCAAmC,GAAG,eAAwB,CAAC;AAE5E,MAAM,CAAC,MAAM,6BAA6B,GAAgC;IACxE,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,MAAM;IAC3B,UAAU,EAAE,KAAK;IACjB,iBAAiB,EAAE,eAAe;IAClC,aAAa,EAAE,oBAAoB;CACpC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG;;;;;;;;yDAQa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createThemeStudioBundledEntry.d.ts","sourceRoot":"","sources":["../src/createThemeStudioBundledEntry.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAY7E,wBAAgB,6BAA6B,IAAI,4BAA4B,CA6E5E"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { THEME_STUDIO_COMMAND_OPEN_ID, THEME_STUDIO_RAIL_ID, THEME_STUDIO_SERVICE_TOKEN, THEME_STUDIO_VIEW_ID, } from "./constants.js";
|
|
3
|
+
import { themeStudioLabels, themeStudioLocaleLoader } from "./i18n.js";
|
|
4
|
+
import { themeStudioManifest } from "./manifest.js";
|
|
5
|
+
import { createThemeStudioService } from "./service.js";
|
|
6
|
+
import { ThemeStudioView } from "./components/ThemeStudioView.js";
|
|
7
|
+
export function createThemeStudioBundledEntry() {
|
|
8
|
+
return {
|
|
9
|
+
manifest: themeStudioManifest,
|
|
10
|
+
activation: "eager",
|
|
11
|
+
async load() {
|
|
12
|
+
const extension = {
|
|
13
|
+
manifest: themeStudioManifest,
|
|
14
|
+
async activate(context) {
|
|
15
|
+
context.registerLocaleCatalogLoader(themeStudioLocaleLoader);
|
|
16
|
+
await context.host.i18n.ensureLocale();
|
|
17
|
+
const service = createThemeStudioService({
|
|
18
|
+
context,
|
|
19
|
+
formatLabel: context.host.i18n.format,
|
|
20
|
+
});
|
|
21
|
+
context.registerService(THEME_STUDIO_SERVICE_TOKEN, service);
|
|
22
|
+
await service.refresh();
|
|
23
|
+
context.registerCommand({
|
|
24
|
+
id: THEME_STUDIO_COMMAND_OPEN_ID,
|
|
25
|
+
title: themeStudioLabels.commandOpenTitle,
|
|
26
|
+
description: themeStudioLabels.commandOpenDescription,
|
|
27
|
+
icon: { kind: "lucide", name: "Palette" },
|
|
28
|
+
keywords: ["theme", "studio", "palette", "tokens"],
|
|
29
|
+
execute: async () => {
|
|
30
|
+
await context.host.views.open(THEME_STUDIO_VIEW_ID);
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
context.registerView({
|
|
34
|
+
id: THEME_STUDIO_VIEW_ID,
|
|
35
|
+
title: themeStudioLabels.viewTitle,
|
|
36
|
+
description: themeStudioLabels.viewDescription,
|
|
37
|
+
icon: { kind: "lucide", name: "Palette" },
|
|
38
|
+
location: "modal",
|
|
39
|
+
allowMultiple: false,
|
|
40
|
+
canBePinned: false,
|
|
41
|
+
render: (props) => (_jsx(ThemeStudioView, { service: service, close: () => props.close(), formatLabel: context.host.i18n.format })),
|
|
42
|
+
});
|
|
43
|
+
context.registerActionRailItem({
|
|
44
|
+
id: THEME_STUDIO_RAIL_ID,
|
|
45
|
+
title: themeStudioLabels.railTitle,
|
|
46
|
+
icon: { kind: "lucide", name: "Palette" },
|
|
47
|
+
group: "appearance",
|
|
48
|
+
order: 10,
|
|
49
|
+
target: {
|
|
50
|
+
kind: "view",
|
|
51
|
+
viewId: THEME_STUDIO_VIEW_ID,
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
context.registerSettingsSection({
|
|
55
|
+
id: `${context.extensionId}.settings`,
|
|
56
|
+
title: themeStudioLabels.settingsTitle,
|
|
57
|
+
description: themeStudioLabels.settingsDescription,
|
|
58
|
+
order: 20,
|
|
59
|
+
schemaPath: "manifest.settingsSchema",
|
|
60
|
+
});
|
|
61
|
+
await context.host.diagnostics.publish(context.extensionId, {
|
|
62
|
+
severity: "info",
|
|
63
|
+
code: "EXT_THEME_STUDIO_READY",
|
|
64
|
+
message: context.host.i18n.format(themeStudioLabels.diagnosticsReady),
|
|
65
|
+
});
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
return extension;
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=createThemeStudioBundledEntry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createThemeStudioBundledEntry.js","sourceRoot":"","sources":["../src/createThemeStudioBundledEntry.tsx"],"names":[],"mappings":";AAGA,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,MAAM,UAAU,6BAA6B;IAC3C,OAAO;QACL,QAAQ,EAAE,mBAAmB;QAC7B,UAAU,EAAE,OAAO;QACnB,KAAK,CAAC,IAAI;YACR,MAAM,SAAS,GAA+B;gBAC5C,QAAQ,EAAE,mBAAmB;gBAC7B,KAAK,CAAC,QAAQ,CAAC,OAAO;oBACpB,OAAO,CAAC,2BAA2B,CAAC,uBAAuB,CAAC,CAAC;oBAC7D,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;oBAEvC,MAAM,OAAO,GAAG,wBAAwB,CAAC;wBACvC,OAAO;wBACP,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;qBACtC,CAAC,CAAC;oBACH,OAAO,CAAC,eAAe,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAC;oBAC7D,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;oBAExB,OAAO,CAAC,eAAe,CAAC;wBACtB,EAAE,EAAE,4BAA4B;wBAChC,KAAK,EAAE,iBAAiB,CAAC,gBAAgB;wBACzC,WAAW,EAAE,iBAAiB,CAAC,sBAAsB;wBACrD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;wBACzC,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC;wBAClD,OAAO,EAAE,KAAK,IAAI,EAAE;4BAClB,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;wBACtD,CAAC;qBACF,CAAC,CAAC;oBAEH,OAAO,CAAC,YAAY,CAAC;wBACnB,EAAE,EAAE,oBAAoB;wBACxB,KAAK,EAAE,iBAAiB,CAAC,SAAS;wBAClC,WAAW,EAAE,iBAAiB,CAAC,eAAe;wBAC9C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;wBACzC,QAAQ,EAAE,OAAO;wBACjB,aAAa,EAAE,KAAK;wBACpB,WAAW,EAAE,KAAK;wBAClB,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CACjB,KAAC,eAAe,IACd,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,GAAG,EAAE,CAAE,KAAwC,CAAC,KAAK,EAAE,EAC9D,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GACrC,CACH;qBACF,CAAC,CAAC;oBAEH,OAAO,CAAC,sBAAsB,CAAC;wBAC7B,EAAE,EAAE,oBAAoB;wBACxB,KAAK,EAAE,iBAAiB,CAAC,SAAS;wBAClC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;wBACzC,KAAK,EAAE,YAAY;wBACnB,KAAK,EAAE,EAAE;wBACT,MAAM,EAAE;4BACN,IAAI,EAAE,MAAM;4BACZ,MAAM,EAAE,oBAAoB;yBAC7B;qBACF,CAAC,CAAC;oBAEH,OAAO,CAAC,uBAAuB,CAAC;wBAC9B,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,WAAW;wBACrC,KAAK,EAAE,iBAAiB,CAAC,aAAa;wBACtC,WAAW,EAAE,iBAAiB,CAAC,mBAAmB;wBAClD,KAAK,EAAE,EAAE;wBACT,UAAU,EAAE,yBAAyB;qBACtC,CAAC,CAAC;oBAEH,MAAM,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE;wBAC1D,QAAQ,EAAE,MAAM;wBAChB,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;qBACtE,CAAC,CAAC;gBACL,CAAC;aACF,CAAC;YAEF,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/export.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type MarkdownWorkspaceThemeTokenMap, type ThemePreset } from "@mdwrk/theme-contract";
|
|
2
|
+
import type { ThemeStudioExportArtifacts, ThemeStudioMetadata, ThemeStudioPackageArtifact, ThemeStudioResolvedSettings } from "./types.js";
|
|
3
|
+
export declare function sanitizeThemeIdentifier(value: string): string;
|
|
4
|
+
export declare function sanitizePackageName(value: string): string;
|
|
5
|
+
export declare function buildThemePreset(metadata: ThemeStudioMetadata, tokens: MarkdownWorkspaceThemeTokenMap): ThemePreset;
|
|
6
|
+
export declare function createThemePackageArtifact(preset: ThemePreset, css: {
|
|
7
|
+
readonly host: string;
|
|
8
|
+
readonly renderer: string;
|
|
9
|
+
readonly editor: string;
|
|
10
|
+
}, metadata: ThemeStudioMetadata): ThemeStudioPackageArtifact;
|
|
11
|
+
export declare function buildThemeStudioExports(metadata: ThemeStudioMetadata, tokens: MarkdownWorkspaceThemeTokenMap, settings: ThemeStudioResolvedSettings): ThemeStudioExportArtifacts;
|
|
12
|
+
//# sourceMappingURL=export.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,8BAA8B,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEtH,OAAO,KAAK,EACV,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AAEpB,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM7D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWzD;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,8BAA8B,GAAG,WAAW,CAanH;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAClF,QAAQ,EAAE,mBAAmB,GAC5B,0BAA0B,CA6C5B;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,mBAAmB,EAC7B,MAAM,EAAE,8BAA8B,EACtC,QAAQ,EAAE,2BAA2B,GACpC,0BAA0B,CAgB5B"}
|
package/dist/export.js
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { createEmptyThemePreset } from "@mdwrk/theme-contract";
|
|
2
|
+
import { renderThemeBridgeCssVariables, renderThemeCssVariables } from "@mdwrk/ui-tokens/theme-map";
|
|
3
|
+
export function sanitizeThemeIdentifier(value) {
|
|
4
|
+
return value
|
|
5
|
+
.trim()
|
|
6
|
+
.toLowerCase()
|
|
7
|
+
.replace(/[^a-z0-9]+/g, "-")
|
|
8
|
+
.replace(/^-+|-+$/g, "") || "custom-theme";
|
|
9
|
+
}
|
|
10
|
+
export function sanitizePackageName(value) {
|
|
11
|
+
const trimmed = value.trim();
|
|
12
|
+
if (!trimmed) {
|
|
13
|
+
return "@mdwrk/theme-custom-theme";
|
|
14
|
+
}
|
|
15
|
+
return trimmed
|
|
16
|
+
.replace(/\s+/g, "-")
|
|
17
|
+
.replace(/[^@a-z0-9._\/-]+/gi, "-")
|
|
18
|
+
.replace(/--+/g, "-")
|
|
19
|
+
.replace(/-+\//g, "/")
|
|
20
|
+
.replace(/\/-+/g, "/");
|
|
21
|
+
}
|
|
22
|
+
export function buildThemePreset(metadata, tokens) {
|
|
23
|
+
const preset = createEmptyThemePreset(sanitizeThemeIdentifier(metadata.themeId), metadata.themeName.trim() || "Custom Theme");
|
|
24
|
+
return {
|
|
25
|
+
...preset,
|
|
26
|
+
metadata: {
|
|
27
|
+
...preset.metadata,
|
|
28
|
+
name: metadata.themeName.trim() || "Custom Theme",
|
|
29
|
+
description: metadata.description.trim() || undefined,
|
|
30
|
+
author: metadata.author.trim() || undefined,
|
|
31
|
+
version: "1.0.1",
|
|
32
|
+
},
|
|
33
|
+
tokens,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export function createThemePackageArtifact(preset, css, metadata) {
|
|
37
|
+
const packageName = sanitizePackageName(metadata.packageName);
|
|
38
|
+
const themeId = sanitizeThemeIdentifier(preset.metadata.id);
|
|
39
|
+
const packageJson = JSON.stringify({
|
|
40
|
+
name: packageName,
|
|
41
|
+
version: "0.1.0",
|
|
42
|
+
type: "module",
|
|
43
|
+
license: "Apache-2.0",
|
|
44
|
+
description: preset.metadata.description ?? `Portable Markdown Workspace theme package for ${preset.metadata.name}.`,
|
|
45
|
+
files: ["dist", "themes", "README.md"],
|
|
46
|
+
style: "./dist/index.css",
|
|
47
|
+
exports: {
|
|
48
|
+
".": "./dist/index.css",
|
|
49
|
+
"./renderer.css": "./dist/renderer.css",
|
|
50
|
+
"./editor.css": "./dist/editor.css",
|
|
51
|
+
[`./themes/${themeId}.json`]: `./themes/${themeId}.json`,
|
|
52
|
+
},
|
|
53
|
+
keywords: ["markdown-workspace", "theme", "portable"],
|
|
54
|
+
}, null, 2);
|
|
55
|
+
const readme = [
|
|
56
|
+
`# ${preset.metadata.name}`,
|
|
57
|
+
"",
|
|
58
|
+
preset.metadata.description ?? `Portable theme package scaffold generated by Theme Studio for ${preset.metadata.name}.`,
|
|
59
|
+
"",
|
|
60
|
+
"## Files",
|
|
61
|
+
"",
|
|
62
|
+
`- \`dist/index.css\` — host token CSS variables`,
|
|
63
|
+
`- \`dist/renderer.css\` — renderer bridge CSS variables`,
|
|
64
|
+
`- \`dist/editor.css\` — editor bridge CSS variables`,
|
|
65
|
+
`- \`themes/${themeId}.json\` — theme preset JSON`,
|
|
66
|
+
].join("\n");
|
|
67
|
+
const json = JSON.stringify(preset, null, 2);
|
|
68
|
+
return {
|
|
69
|
+
packageName,
|
|
70
|
+
files: [
|
|
71
|
+
{ path: "package.json", content: packageJson, mimeType: "application/json" },
|
|
72
|
+
{ path: "README.md", content: readme, mimeType: "text/markdown" },
|
|
73
|
+
{ path: "dist/index.css", content: css.host, mimeType: "text/css" },
|
|
74
|
+
{ path: "dist/renderer.css", content: css.renderer, mimeType: "text/css" },
|
|
75
|
+
{ path: "dist/editor.css", content: css.editor, mimeType: "text/css" },
|
|
76
|
+
{ path: `themes/${themeId}.json`, content: json, mimeType: "application/json" },
|
|
77
|
+
],
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
export function buildThemeStudioExports(metadata, tokens, settings) {
|
|
81
|
+
const preset = buildThemePreset(metadata, tokens);
|
|
82
|
+
const compact = settings.compactCss;
|
|
83
|
+
const hostCss = renderThemeCssVariables(tokens, { selector: ":root", compact });
|
|
84
|
+
const rendererCss = renderThemeBridgeCssVariables("renderer", tokens, { selector: ":root", compact });
|
|
85
|
+
const editorCss = renderThemeBridgeCssVariables("editor", tokens, { selector: ":root", compact });
|
|
86
|
+
const packageArtifact = createThemePackageArtifact(preset, { host: hostCss, renderer: rendererCss, editor: editorCss }, metadata);
|
|
87
|
+
return {
|
|
88
|
+
preset,
|
|
89
|
+
json: JSON.stringify(preset, null, 2),
|
|
90
|
+
hostCss,
|
|
91
|
+
rendererCss,
|
|
92
|
+
editorCss,
|
|
93
|
+
packageArtifact,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=export.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"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"}
|
package/dist/i18n.d.ts
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { I18nLabel } from "@mdwrk/extension-manifest";
|
|
2
|
+
import type { ExtensionLocaleCatalogLoader } from "@mdwrk/extension-host";
|
|
3
|
+
export declare const themeStudioLabel: (suffix: string, defaultMessage: string, description?: string) => I18nLabel;
|
|
4
|
+
export declare const themeStudioLabels: {
|
|
5
|
+
readonly manifestDisplayName: I18nLabel;
|
|
6
|
+
readonly manifestDescription: I18nLabel;
|
|
7
|
+
readonly commandOpenTitle: I18nLabel;
|
|
8
|
+
readonly commandOpenDescription: I18nLabel;
|
|
9
|
+
readonly viewTitle: I18nLabel;
|
|
10
|
+
readonly viewDescription: I18nLabel;
|
|
11
|
+
readonly railTitle: I18nLabel;
|
|
12
|
+
readonly settingsTitle: I18nLabel;
|
|
13
|
+
readonly settingsDescription: I18nLabel;
|
|
14
|
+
readonly settingsPreviewTitle: I18nLabel;
|
|
15
|
+
readonly settingsPreviewDescription: I18nLabel;
|
|
16
|
+
readonly settingsExportTitle: I18nLabel;
|
|
17
|
+
readonly settingsExportDescription: I18nLabel;
|
|
18
|
+
readonly autoPreviewLabel: I18nLabel;
|
|
19
|
+
readonly autoPreviewDescription: I18nLabel;
|
|
20
|
+
readonly defaultExportTargetLabel: I18nLabel;
|
|
21
|
+
readonly defaultExportTargetDescription: I18nLabel;
|
|
22
|
+
readonly compactCssLabel: I18nLabel;
|
|
23
|
+
readonly compactCssDescription: I18nLabel;
|
|
24
|
+
readonly packagePrefixLabel: I18nLabel;
|
|
25
|
+
readonly packagePrefixDescription: I18nLabel;
|
|
26
|
+
readonly defaultAuthorLabel: I18nLabel;
|
|
27
|
+
readonly defaultAuthorDescription: I18nLabel;
|
|
28
|
+
readonly headerTitle: I18nLabel;
|
|
29
|
+
readonly headerSubtitle: I18nLabel;
|
|
30
|
+
readonly actionClose: I18nLabel;
|
|
31
|
+
readonly actionRefresh: I18nLabel;
|
|
32
|
+
readonly actionPreview: I18nLabel;
|
|
33
|
+
readonly actionApply: I18nLabel;
|
|
34
|
+
readonly actionRevert: I18nLabel;
|
|
35
|
+
readonly actionExport: I18nLabel;
|
|
36
|
+
readonly tokenInspectorTitle: I18nLabel;
|
|
37
|
+
readonly tokenInspectorDescription: I18nLabel;
|
|
38
|
+
readonly classInspectorTitle: I18nLabel;
|
|
39
|
+
readonly classInspectorDescription: I18nLabel;
|
|
40
|
+
readonly previewTitle: I18nLabel;
|
|
41
|
+
readonly previewDescription: I18nLabel;
|
|
42
|
+
readonly exportTitle: I18nLabel;
|
|
43
|
+
readonly exportDescription: I18nLabel;
|
|
44
|
+
readonly metadataTitle: I18nLabel;
|
|
45
|
+
readonly metadataThemeName: I18nLabel;
|
|
46
|
+
readonly metadataThemeId: I18nLabel;
|
|
47
|
+
readonly metadataPackageName: I18nLabel;
|
|
48
|
+
readonly metadataAuthor: I18nLabel;
|
|
49
|
+
readonly metadataDescription: I18nLabel;
|
|
50
|
+
readonly labelCategory: I18nLabel;
|
|
51
|
+
readonly labelDefault: I18nLabel;
|
|
52
|
+
readonly labelCurrent: I18nLabel;
|
|
53
|
+
readonly labelDraft: I18nLabel;
|
|
54
|
+
readonly labelScope: I18nLabel;
|
|
55
|
+
readonly labelBridgeTarget: I18nLabel;
|
|
56
|
+
readonly labelTokens: I18nLabel;
|
|
57
|
+
readonly labelNoRelationships: I18nLabel;
|
|
58
|
+
readonly labelJsonExport: I18nLabel;
|
|
59
|
+
readonly labelCssExport: I18nLabel;
|
|
60
|
+
readonly labelRendererCssExport: I18nLabel;
|
|
61
|
+
readonly labelEditorCssExport: I18nLabel;
|
|
62
|
+
readonly labelPackageArtifact: I18nLabel;
|
|
63
|
+
readonly actionDownloadJson: I18nLabel;
|
|
64
|
+
readonly actionDownloadCss: I18nLabel;
|
|
65
|
+
readonly actionDownloadPackage: I18nLabel;
|
|
66
|
+
readonly statusReady: I18nLabel;
|
|
67
|
+
readonly statusBusy: I18nLabel;
|
|
68
|
+
readonly statusApplied: I18nLabel;
|
|
69
|
+
readonly statusReverted: I18nLabel;
|
|
70
|
+
readonly statusExported: I18nLabel;
|
|
71
|
+
readonly diagnosticsReady: I18nLabel;
|
|
72
|
+
readonly diagnosticsPreviewed: I18nLabel;
|
|
73
|
+
readonly diagnosticsApplied: I18nLabel;
|
|
74
|
+
readonly diagnosticsReverted: I18nLabel;
|
|
75
|
+
readonly diagnosticsExported: I18nLabel;
|
|
76
|
+
readonly diagnosticsFailed: I18nLabel;
|
|
77
|
+
readonly notificationApplied: I18nLabel;
|
|
78
|
+
readonly notificationReverted: I18nLabel;
|
|
79
|
+
readonly notificationExported: I18nLabel;
|
|
80
|
+
};
|
|
81
|
+
export declare const themeStudioLocaleLoader: ExtensionLocaleCatalogLoader;
|
|
82
|
+
//# sourceMappingURL=i18n.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAI1E,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,gBAAgB,MAAM,EAAE,cAAc,MAAM,KAAG,SAI9F,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4EpB,CAAC;AAEX,eAAO,MAAM,uBAAuB,EAAE,4BAOrC,CAAC"}
|