@12ui/design 0.2.82 → 0.2.84
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 +4 -1
- package/SKILL.md +1 -1
- package/dist/branch-execution.d.ts.map +1 -1
- package/dist/branch-execution.js +6 -0
- package/dist/branch-execution.js.map +1 -1
- package/dist/branch-materialize.d.ts.map +1 -1
- package/dist/branch-materialize.js +6 -2
- package/dist/branch-materialize.js.map +1 -1
- package/dist/cli-capabilities.d.ts +2 -5
- package/dist/cli-capabilities.d.ts.map +1 -1
- package/dist/cli-capabilities.js +2 -2
- package/dist/cli-capabilities.js.map +1 -1
- package/dist/cli-help/conversion.d.ts +1 -1
- package/dist/cli-help/conversion.js +1 -1
- package/dist/cli-help/conversion.js.map +1 -1
- package/dist/cli-help/index.d.ts +1 -1
- package/dist/cli-image-backend.d.ts +6 -1
- package/dist/cli-image-backend.d.ts.map +1 -1
- package/dist/cli-image-backend.js +8 -3
- package/dist/cli-image-backend.js.map +1 -1
- package/dist/cli-local-runtime.d.ts +6 -0
- package/dist/cli-local-runtime.d.ts.map +1 -1
- package/dist/cli-local-runtime.js +14 -1
- package/dist/cli-local-runtime.js.map +1 -1
- package/dist/cli-usage.js +3 -3
- package/dist/cli-workspace-draw.d.ts.map +1 -1
- package/dist/cli-workspace-draw.js +2 -0
- package/dist/cli-workspace-draw.js.map +1 -1
- package/dist/cli-workspace-runner.d.ts.map +1 -1
- package/dist/cli-workspace-runner.js +2 -1
- package/dist/cli-workspace-runner.js.map +1 -1
- package/dist/legacy-skill-catalog.d.ts.map +1 -1
- package/dist/legacy-skill-catalog.js +24 -1
- package/dist/legacy-skill-catalog.js.map +1 -1
- package/dist/mcp-slate-tool-defs.d.ts.map +1 -1
- package/dist/mcp-slate-tool-defs.js +3 -2
- package/dist/mcp-slate-tool-defs.js.map +1 -1
- package/dist/mcp-slate-ui-copy.d.ts +10 -0
- package/dist/mcp-slate-ui-copy.d.ts.map +1 -1
- package/dist/mcp-slate-ui-copy.js +9 -0
- package/dist/mcp-slate-ui-copy.js.map +1 -1
- package/dist/mcp-slate-ui-locales/de-DE.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/de-DE.js +5 -0
- package/dist/mcp-slate-ui-locales/de-DE.js.map +1 -1
- package/dist/mcp-slate-ui-locales/es-419.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/es-419.js +5 -0
- package/dist/mcp-slate-ui-locales/es-419.js.map +1 -1
- package/dist/mcp-slate-ui-locales/es-ES.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/es-ES.js +5 -0
- package/dist/mcp-slate-ui-locales/es-ES.js.map +1 -1
- package/dist/mcp-slate-ui-locales/fr-FR.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/fr-FR.js +5 -0
- package/dist/mcp-slate-ui-locales/fr-FR.js.map +1 -1
- package/dist/mcp-slate-ui-locales/hi-IN.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/hi-IN.js +5 -0
- package/dist/mcp-slate-ui-locales/hi-IN.js.map +1 -1
- package/dist/mcp-slate-ui-locales/it-IT.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/it-IT.js +5 -0
- package/dist/mcp-slate-ui-locales/it-IT.js.map +1 -1
- package/dist/mcp-slate-ui-locales/ja-JP.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/ja-JP.js +5 -0
- package/dist/mcp-slate-ui-locales/ja-JP.js.map +1 -1
- package/dist/mcp-slate-ui-locales/ko-KR.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/ko-KR.js +5 -0
- package/dist/mcp-slate-ui-locales/ko-KR.js.map +1 -1
- package/dist/mcp-slate-ui-locales/pt-BR.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/pt-BR.js +5 -0
- package/dist/mcp-slate-ui-locales/pt-BR.js.map +1 -1
- package/dist/mcp-slate-ui-locales/zh-CN.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/zh-CN.js +5 -0
- package/dist/mcp-slate-ui-locales/zh-CN.js.map +1 -1
- package/dist/mcp-slate-ui-locales/zh-TW.d.ts.map +1 -1
- package/dist/mcp-slate-ui-locales/zh-TW.js +5 -0
- package/dist/mcp-slate-ui-locales/zh-TW.js.map +1 -1
- package/dist/mcp-slate-ui-script-board.d.ts +19 -0
- package/dist/mcp-slate-ui-script-board.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-board.js +126 -0
- package/dist/mcp-slate-ui-script-board.js.map +1 -0
- package/dist/mcp-slate-ui-script-designs.d.ts +1 -1
- package/dist/mcp-slate-ui-script-designs.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-designs.js +24 -15
- package/dist/mcp-slate-ui-script-designs.js.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration-collage.d.ts +5 -2
- package/dist/mcp-slate-ui-script-inspiration-collage.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration-collage.js +9 -5
- package/dist/mcp-slate-ui-script-inspiration-collage.js.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration-gallery.d.ts +7 -4
- package/dist/mcp-slate-ui-script-inspiration-gallery.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration-gallery.js +46 -5
- package/dist/mcp-slate-ui-script-inspiration-gallery.js.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration-grid.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-inspiration-grid.js +4 -0
- package/dist/mcp-slate-ui-script-inspiration-grid.js.map +1 -1
- package/dist/mcp-slate-ui-script-pause.d.ts +4 -0
- package/dist/mcp-slate-ui-script-pause.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-pause.js +9 -2
- package/dist/mcp-slate-ui-script-pause.js.map +1 -1
- package/dist/mcp-slate-ui-script-peek.d.ts +16 -0
- package/dist/mcp-slate-ui-script-peek.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-peek.js +89 -0
- package/dist/mcp-slate-ui-script-peek.js.map +1 -0
- package/dist/mcp-slate-ui-script-references.d.ts +4 -2
- package/dist/mcp-slate-ui-script-references.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-references.js +39 -7
- package/dist/mcp-slate-ui-script-references.js.map +1 -1
- package/dist/mcp-slate-ui-script-remote.js +2 -2
- package/dist/mcp-slate-ui-script-viewer.d.ts +7 -2
- package/dist/mcp-slate-ui-script-viewer.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script-viewer.js +183 -50
- package/dist/mcp-slate-ui-script-viewer.js.map +1 -1
- package/dist/mcp-slate-ui-script.d.ts.map +1 -1
- package/dist/mcp-slate-ui-script.js +4 -0
- package/dist/mcp-slate-ui-script.js.map +1 -1
- package/dist/mcp-slate-ui-styles-board.d.ts +7 -0
- package/dist/mcp-slate-ui-styles-board.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-board.js +30 -0
- package/dist/mcp-slate-ui-styles-board.js.map +1 -0
- package/dist/mcp-slate-ui-styles-designs.d.ts +2 -1
- package/dist/mcp-slate-ui-styles-designs.d.ts.map +1 -1
- package/dist/mcp-slate-ui-styles-designs.js +10 -8
- package/dist/mcp-slate-ui-styles-designs.js.map +1 -1
- package/dist/mcp-slate-ui-styles-inspiration.d.ts.map +1 -1
- package/dist/mcp-slate-ui-styles-inspiration.js +13 -2
- package/dist/mcp-slate-ui-styles-inspiration.js.map +1 -1
- package/dist/mcp-slate-ui-styles-loading.d.ts +18 -0
- package/dist/mcp-slate-ui-styles-loading.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-loading.js +37 -0
- package/dist/mcp-slate-ui-styles-loading.js.map +1 -0
- package/dist/mcp-slate-ui-styles-peek.d.ts +8 -0
- package/dist/mcp-slate-ui-styles-peek.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-peek.js +13 -0
- package/dist/mcp-slate-ui-styles-peek.js.map +1 -0
- package/dist/mcp-slate-ui-styles.d.ts.map +1 -1
- package/dist/mcp-slate-ui-styles.js +0 -3
- package/dist/mcp-slate-ui-styles.js.map +1 -1
- package/dist/mcp-slate-ui.d.ts.map +1 -1
- package/dist/mcp-slate-ui.js +4 -1
- package/dist/mcp-slate-ui.js.map +1 -1
- package/dist/prototype-browsers.d.ts +10 -2
- package/dist/prototype-browsers.d.ts.map +1 -1
- package/dist/prototype-browsers.js +27 -2
- package/dist/prototype-browsers.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +2 -1
- package/dist/server.js.map +1 -1
- package/dist/slate-actions.d.ts +6 -7
- package/dist/slate-actions.d.ts.map +1 -1
- package/dist/slate-actions.js +6 -9
- package/dist/slate-actions.js.map +1 -1
- package/dist/slate-branch-runner.d.ts +120 -0
- package/dist/slate-branch-runner.d.ts.map +1 -0
- package/dist/slate-branch-runner.js +312 -0
- package/dist/slate-branch-runner.js.map +1 -0
- package/dist/slate-captions-local.d.ts +14 -0
- package/dist/slate-captions-local.d.ts.map +1 -0
- package/dist/slate-captions-local.js +70 -0
- package/dist/slate-captions-local.js.map +1 -0
- package/dist/slate-captions-remote.d.ts +29 -0
- package/dist/slate-captions-remote.d.ts.map +1 -0
- package/dist/slate-captions-remote.js +65 -0
- package/dist/slate-captions-remote.js.map +1 -0
- package/dist/slate-captions.d.ts +41 -0
- package/dist/slate-captions.d.ts.map +1 -0
- package/dist/slate-captions.js +112 -0
- package/dist/slate-captions.js.map +1 -0
- package/dist/slate-commit.d.ts.map +1 -1
- package/dist/slate-commit.js +8 -6
- package/dist/slate-commit.js.map +1 -1
- package/dist/slate-image-executor.d.ts +18 -3
- package/dist/slate-image-executor.d.ts.map +1 -1
- package/dist/slate-image-executor.js +18 -5
- package/dist/slate-image-executor.js.map +1 -1
- package/dist/slate-paths.d.ts +3 -1
- package/dist/slate-paths.d.ts.map +1 -1
- package/dist/slate-paths.js +8 -2
- package/dist/slate-paths.js.map +1 -1
- package/dist/slate-round-prompt.d.ts +0 -12
- package/dist/slate-round-prompt.d.ts.map +1 -1
- package/dist/slate-round-prompt.js +0 -15
- package/dist/slate-round-prompt.js.map +1 -1
- package/dist/slate-round-runner.d.ts.map +1 -1
- package/dist/slate-round-runner.js +8 -14
- package/dist/slate-round-runner.js.map +1 -1
- package/dist/slate-runner-context.d.ts +3 -0
- package/dist/slate-runner-context.d.ts.map +1 -1
- package/dist/slate-runner-context.js.map +1 -1
- package/dist/slate-runner-main.d.ts +3 -0
- package/dist/slate-runner-main.d.ts.map +1 -1
- package/dist/slate-runner-main.js +5 -1
- package/dist/slate-runner-main.js.map +1 -1
- package/dist/slate-runner-spawn.js +2 -2
- package/dist/slate-runner-spawn.js.map +1 -1
- package/dist/slate-site-references-capture.d.ts +38 -1
- package/dist/slate-site-references-capture.d.ts.map +1 -1
- package/dist/slate-site-references-capture.js +25 -7
- package/dist/slate-site-references-capture.js.map +1 -1
- package/dist/slate-site-references-client.d.ts +13 -1
- package/dist/slate-site-references-client.d.ts.map +1 -1
- package/dist/slate-site-references-client.js +39 -14
- package/dist/slate-site-references-client.js.map +1 -1
- package/dist/slate-site-references-local.d.ts +3 -0
- package/dist/slate-site-references-local.d.ts.map +1 -1
- package/dist/slate-site-references-local.js +20 -1
- package/dist/slate-site-references-local.js.map +1 -1
- package/dist/slate-site-references-suggest.d.ts +25 -2
- package/dist/slate-site-references-suggest.d.ts.map +1 -1
- package/dist/slate-site-references-suggest.js +71 -12
- package/dist/slate-site-references-suggest.js.map +1 -1
- package/dist/slate-site-references.d.ts +11 -0
- package/dist/slate-site-references.d.ts.map +1 -1
- package/dist/slate-site-references.js +42 -3
- package/dist/slate-site-references.js.map +1 -1
- package/dist/slate-view-contract.d.ts +39 -1
- package/dist/slate-view-contract.d.ts.map +1 -1
- package/dist/slate-view.d.ts.map +1 -1
- package/dist/slate-view.js +8 -0
- package/dist/slate-view.js.map +1 -1
- package/dist/slate-workspace-parse.d.ts.map +1 -1
- package/dist/slate-workspace-parse.js +35 -0
- package/dist/slate-workspace-parse.js.map +1 -1
- package/dist/slate-workspace-types.d.ts +31 -2
- package/dist/slate-workspace-types.d.ts.map +1 -1
- package/dist/workspace-draw-branch.d.ts +27 -0
- package/dist/workspace-draw-branch.d.ts.map +1 -0
- package/dist/workspace-draw-branch.js +101 -0
- package/dist/workspace-draw-branch.js.map +1 -0
- package/dist/workspace-draw-client.d.ts +27 -0
- package/dist/workspace-draw-client.d.ts.map +1 -1
- package/dist/workspace-draw-client.js +30 -0
- package/dist/workspace-draw-client.js.map +1 -1
- package/dist/workspace-draw-codex.d.ts +10 -7
- package/dist/workspace-draw-codex.d.ts.map +1 -1
- package/dist/workspace-draw-codex.js +41 -16
- package/dist/workspace-draw-codex.js.map +1 -1
- package/dist/workspace-draw-run.d.ts +19 -3
- package/dist/workspace-draw-run.d.ts.map +1 -1
- package/dist/workspace-draw-run.js +48 -6
- package/dist/workspace-draw-run.js.map +1 -1
- package/dist/workspace-draw-types.d.ts +23 -2
- package/dist/workspace-draw-types.d.ts.map +1 -1
- package/dist/workspace-draw-types.js.map +1 -1
- package/dist/workspace-runner-main.d.ts +9 -2
- package/dist/workspace-runner-main.d.ts.map +1 -1
- package/dist/workspace-runner-main.js +21 -2
- package/dist/workspace-runner-main.js.map +1 -1
- package/dist/workspace-runner-spawn.js +1 -1
- package/dist/workspace-runner-spawn.js.map +1 -1
- package/open-design.json +2 -2
- package/package.json +1 -1
- package/runtime/codex-conversion/bin/convert.mjs +1 -1
- package/runtime/codex-conversion/src/codex/caller-home.mjs +95 -0
- package/runtime/codex-conversion/src/codex/home.mjs +8 -2
- package/runtime/codex-conversion/src/images/execute.mjs +1 -1
- package/runtime/codex-conversion/src/images/native-invoke.mjs +21 -13
- package/runtime/codex-conversion/src/images/native-records.mjs +3 -1
- package/runtime/codex-conversion/src/images/native.mjs +42 -19
- package/runtime/codex-conversion/src/run.mjs +2 -1
- package/skills/12ui-design/SKILL.md +6 -6
- package/skills/12ui-design/outputs.md +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui-styles-loading.d.ts","sourceRoot":"","sources":["../src/mcp-slate-ui-styles-loading.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,uBAAuB,QAmBnC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The loading surface, everywhere a picture is on its way (`.shimmer`): an Inspiration or References tile until its
|
|
3
|
+
* picture lands, the skeleton tiles of a first search, a reference site whose screenshot is still being captured, and a
|
|
4
|
+
* design slot while it is drawn.
|
|
5
|
+
*
|
|
6
|
+
* A field of fine dots in the host's ink whose brightness ripples across the frame: one soft crest with a faint echo,
|
|
7
|
+
* travelling diagonally. The wave is fixed to the frame (`background-attachment: fixed`), so every loading tile on
|
|
8
|
+
* screen is a window onto the same wave and a grid of them reads as one calm surface rather than many blinking boxes.
|
|
9
|
+
*
|
|
10
|
+
* - On a picture (`img.shimmer`, no pixels yet) the dots are the picture's own mask, so its tile's ground shows between
|
|
11
|
+
* them; on anything else they are an overlay (`::before`) over the element's own ground, under its content.
|
|
12
|
+
* - The colours are the host's ink (`--text`) mixed into transparency, so Codex's light and dark themes drive it.
|
|
13
|
+
* - Reduced motion: still dots, no wave.
|
|
14
|
+
* - Chosen over the web's light band (apps/web generatedDesignPromptEdit.css) side by side in light and dark (evidence
|
|
15
|
+
* 12ui/slate-ui-polish/loading): the band must stay faint not to glare in light, and then all but vanishes on dark.
|
|
16
|
+
*/
|
|
17
|
+
export const SLATE_UI_LOADING_STYLES = String.raw `
|
|
18
|
+
.shimmer, .shimmer:not(img)::before {
|
|
19
|
+
--dot: color-mix(in srgb, var(--text) 15%, transparent);
|
|
20
|
+
--dot-mid: color-mix(in srgb, var(--text) 28%, transparent);
|
|
21
|
+
--dot-hi: color-mix(in srgb, var(--text) 56%, transparent);
|
|
22
|
+
}
|
|
23
|
+
img.shimmer, .shimmer:not(img)::before {
|
|
24
|
+
background-color: transparent;
|
|
25
|
+
background-image: linear-gradient(118deg, var(--dot) 34%, var(--dot-mid) 39%, var(--dot) 42.5%, var(--dot-mid) 45.5%, var(--dot-hi) 50%, var(--dot-mid) 54%, var(--dot) 59%);
|
|
26
|
+
background-size: 200vw 200vh;
|
|
27
|
+
background-attachment: fixed;
|
|
28
|
+
-webkit-mask: radial-gradient(circle, #000 1.15px, transparent 1.75px) 0 0 / 9px 9px;
|
|
29
|
+
mask: radial-gradient(circle, #000 1.15px, transparent 1.75px) 0 0 / 9px 9px;
|
|
30
|
+
animation: dotwave 2.4s cubic-bezier(.45, .05, .55, .95) infinite;
|
|
31
|
+
}
|
|
32
|
+
.shimmer:not(img)::before { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; }
|
|
33
|
+
.skelgrid > .skeleton { position: relative; overflow: hidden; background: var(--fill); }
|
|
34
|
+
@keyframes dotwave { from { background-position: -135vw -135vh; } to { background-position: 35vw 35vh; } }
|
|
35
|
+
@media (prefers-reduced-motion: reduce) { .shimmer { animation: none; } .shimmer:not(img)::before { animation: none; background-image: none; background-color: var(--dot-mid); } img.shimmer { background-image: none; background-color: var(--dot-mid); } }
|
|
36
|
+
`;
|
|
37
|
+
//# sourceMappingURL=mcp-slate-ui-styles-loading.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui-styles-loading.js","sourceRoot":"","sources":["../src/mcp-slate-ui-styles-loading.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;CAmBhD,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The hover peek (mcp-slate-ui-script-peek.ts): a larger copy of a tile's picture floating over the grid, fixed to the
|
|
3
|
+
* frame, never taking the pointer. It appears at its full size after the hover delay, with no entry animation (a
|
|
4
|
+
* scale-in was measured frozen at the tile's size in headless Chromium), and a soft shadow in either theme; a selected
|
|
5
|
+
* or chosen tile's copy keeps its ring.
|
|
6
|
+
*/
|
|
7
|
+
export declare const SLATE_UI_PEEK_STYLES: string;
|
|
8
|
+
//# sourceMappingURL=mcp-slate-ui-styles-peek.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui-styles-peek.d.ts","sourceRoot":"","sources":["../src/mcp-slate-ui-styles-peek.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,QAKhC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The hover peek (mcp-slate-ui-script-peek.ts): a larger copy of a tile's picture floating over the grid, fixed to the
|
|
3
|
+
* frame, never taking the pointer. It appears at its full size after the hover delay, with no entry animation (a
|
|
4
|
+
* scale-in was measured frozen at the tile's size in headless Chromium), and a soft shadow in either theme; a selected
|
|
5
|
+
* or chosen tile's copy keeps its ring.
|
|
6
|
+
*/
|
|
7
|
+
export const SLATE_UI_PEEK_STYLES = String.raw `
|
|
8
|
+
.peek { position: fixed; z-index: 30; pointer-events: none; overflow: hidden; border-radius: var(--radius-lg); background: var(--fill);
|
|
9
|
+
box-shadow: 0 0 0 1px var(--border2), 0 2px 6px light-dark(rgb(0 0 0 / .06), rgb(0 0 0 / .3)), 0 18px 44px -8px light-dark(rgb(0 0 0 / .28), rgb(0 0 0 / .62)); }
|
|
10
|
+
.peek.on { box-shadow: 0 0 0 3px var(--ring), 0 2px 6px light-dark(rgb(0 0 0 / .06), rgb(0 0 0 / .3)), 0 18px 44px -8px light-dark(rgb(0 0 0 / .28), rgb(0 0 0 / .62)); }
|
|
11
|
+
.peek img { display: block; width: 100%; height: 100%; object-fit: contain; }
|
|
12
|
+
`;
|
|
13
|
+
//# sourceMappingURL=mcp-slate-ui-styles-peek.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui-styles-peek.js","sourceRoot":"","sources":["../src/mcp-slate-ui-styles-peek.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;CAK7C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-slate-ui-styles.d.ts","sourceRoot":"","sources":["../src/mcp-slate-ui-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui-styles.d.ts","sourceRoot":"","sources":["../src/mcp-slate-ui-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,QA6H3B,CAAC"}
|
|
@@ -117,8 +117,6 @@ export const SLATE_UI_STYLES = String.raw `
|
|
|
117
117
|
.thumb { display: block; width: 100%; height: 100%; background: var(--fill); object-fit: contain; object-position: center; }
|
|
118
118
|
.tilenote { position: absolute; left: 8px; right: 8px; top: 6px; bottom: 6px; display: flex; align-items: center; justify-content: center; font-size: var(--fs-sm); font-weight: 500; line-height: 1.35; text-align: center; color: var(--text2); }
|
|
119
119
|
.tilenote > span { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; overflow-wrap: anywhere; }
|
|
120
|
-
.shimmer { background: linear-gradient(100deg, var(--fill) 30%, var(--fill-hover) 50%, var(--fill) 70%); background-size: 200% 100%; animation: shimmer 1.4s linear infinite; }
|
|
121
|
-
@keyframes shimmer { from { background-position: 100% 0; } to { background-position: -100% 0; } }
|
|
122
120
|
input[type="text"] {
|
|
123
121
|
width: 100%; padding: 8px 10px; font: inherit; color: var(--text); background: var(--bg);
|
|
124
122
|
border: 1px solid var(--border); border-radius: var(--radius);
|
|
@@ -135,7 +133,6 @@ export const SLATE_UI_STYLES = String.raw `
|
|
|
135
133
|
button:focus-visible { outline: 2px solid var(--ring); outline-offset: 2px; }
|
|
136
134
|
button:disabled { opacity: .45; cursor: default; }
|
|
137
135
|
.note { margin: 10px 0 0; font-size: var(--fs-sm); color: var(--text2); }
|
|
138
|
-
@media (prefers-reduced-motion: reduce) { .shimmer { animation: none; } }
|
|
139
136
|
.status { min-height: 18px; margin: 8px 0 0; font-size: var(--fs-sm); overflow-wrap: anywhere; }
|
|
140
137
|
.status:empty { display: none; }
|
|
141
138
|
.status.ok { color: var(--ok); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-slate-ui-styles.js","sourceRoot":"","sources":["../src/mcp-slate-ui-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui-styles.js","sourceRoot":"","sources":["../src/mcp-slate-ui-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6HxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-slate-ui.d.ts","sourceRoot":"","sources":["../src/mcp-slate-ui.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui.d.ts","sourceRoot":"","sources":["../src/mcp-slate-ui.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAUlF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,gBAAgB,GAAI,YAAY;IAAE,MAAM,EAAE,aAAa,CAAA;CAAE,KAAG,MAwCxE,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,aAAa,QAAwC,CAAC"}
|
package/dist/mcp-slate-ui.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { SLATE_UI_COPY as COPY } from './mcp-slate-ui-copy.js';
|
|
2
2
|
import { buildSlateUiScript } from './mcp-slate-ui-script.js';
|
|
3
3
|
import { SLATE_UI_STYLES } from './mcp-slate-ui-styles.js';
|
|
4
|
+
import { SLATE_UI_LOADING_STYLES } from './mcp-slate-ui-styles-loading.js';
|
|
5
|
+
import { SLATE_UI_PEEK_STYLES } from './mcp-slate-ui-styles-peek.js';
|
|
4
6
|
import { SLATE_UI_INSPIRATION_STYLES } from './mcp-slate-ui-styles-inspiration.js';
|
|
5
7
|
import { SLATE_UI_PAUSE_STYLES } from './mcp-slate-ui-styles-pause.js';
|
|
6
8
|
import { SLATE_UI_STAGE_STYLES } from './mcp-slate-ui-styles-stage.js';
|
|
9
|
+
import { SLATE_UI_BOARD_STYLES } from './mcp-slate-ui-styles-board.js';
|
|
7
10
|
import { SLATE_UI_DESIGNS_STYLES } from './mcp-slate-ui-styles-designs.js';
|
|
8
11
|
/**
|
|
9
12
|
* The workspace view for one target, as one self-contained HTML document: no external script, stylesheet or font, so
|
|
@@ -28,7 +31,7 @@ export const buildSlateUiHtml = ({ target }) => `<!doctype html>
|
|
|
28
31
|
<meta charset="utf-8">
|
|
29
32
|
<meta name="viewport" content="width=device-width, initial-scale=1">${target === 'local' ? '' : `\n<meta name="slate-target" content="${target}">`}
|
|
30
33
|
<title>${COPY.title}</title>
|
|
31
|
-
<style>${SLATE_UI_STYLES}${SLATE_UI_STAGE_STYLES}${SLATE_UI_DESIGNS_STYLES}${SLATE_UI_INSPIRATION_STYLES}${SLATE_UI_PAUSE_STYLES}</style>
|
|
34
|
+
<style>${SLATE_UI_STYLES}${SLATE_UI_LOADING_STYLES}${SLATE_UI_STAGE_STYLES}${SLATE_UI_DESIGNS_STYLES}${SLATE_UI_BOARD_STYLES}${SLATE_UI_INSPIRATION_STYLES}${SLATE_UI_PAUSE_STYLES}${SLATE_UI_PEEK_STYLES}</style>
|
|
32
35
|
</head>
|
|
33
36
|
<body>
|
|
34
37
|
<div id="fatal" class="hidden" role="alert"></div>
|
package/dist/mcp-slate-ui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-slate-ui.js","sourceRoot":"","sources":["../src/mcp-slate-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAsB,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAE3E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAE,MAAM,EAA6B,EAAU,EAAE,CAAC;;;;sEAIb,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,wCAAwC,MAAM,IAAI;SACzI,IAAI,CAAC,KAAK;SACV,eAAe,GAAG,qBAAqB,GAAG,uBAAuB,GAAG,2BAA2B,GAAG,qBAAqB;;;;;
|
|
1
|
+
{"version":3,"file":"mcp-slate-ui.js","sourceRoot":"","sources":["../src/mcp-slate-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAsB,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAE3E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAE,MAAM,EAA6B,EAAU,EAAE,CAAC;;;;sEAIb,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,wCAAwC,MAAM,IAAI;SACzI,IAAI,CAAC,KAAK;SACV,eAAe,GAAG,uBAAuB,GAAG,qBAAqB,GAAG,uBAAuB,GAAG,qBAAqB,GAAG,2BAA2B,GAAG,qBAAqB,GAAG,oBAAoB;;;;;qCAKpK,IAAI,CAAC,KAAK;wDACS,IAAI,CAAC,KAAK;;wGAEsC,IAAI,CAAC,UAAU,kBAAkB,IAAI,CAAC,gBAAgB,oKAAoK,IAAI,CAAC,MAAM;;qDAExR,IAAI,CAAC,KAAK;+HACgE,IAAI,CAAC,cAAc;6HACrB,IAAI,CAAC,aAAa;sHACzB,IAAI,CAAC,UAAU;;;sEAG/D,IAAI,CAAC,aAAa,YAAY,IAAI,CAAC,aAAa;;;;;;;;;;;;;;;UAe5G,kBAAkB,CAAC,MAAM,CAAC;;;CAGnC,CAAC;AAEF,yDAAyD;AACzD,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC"}
|
|
@@ -17,10 +17,18 @@ export declare const resolvePrototypeBrowserProvisioning: (args?: {
|
|
|
17
17
|
playwrightCli?: string;
|
|
18
18
|
}) => Promise<PrototypeBrowserProvisioning>;
|
|
19
19
|
export declare const isMissingPrototypeBrowserOutput: (output: string) => boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Installs Chromium into the managed browsers path, the same install the command
|
|
22
|
+
* above names. Only the References tab's capture calls it: that capture runs
|
|
23
|
+
* unattended (the workspace runner, or the draw command while the person
|
|
24
|
+
* chooses), so nobody would read the command, and a fresh home has no browser.
|
|
25
|
+
*/
|
|
26
|
+
export declare const installPrototypeBrowser: (provisioning: Pick<PrototypeBrowserProvisioning, "environment">, playwrightCli?: string) => Promise<void>;
|
|
20
27
|
/**
|
|
21
28
|
* The one statement of a missing managed browser, shared by every command that
|
|
22
|
-
* drives Chromium (prototype stages, scene capture).
|
|
23
|
-
* browser on
|
|
29
|
+
* drives Chromium (prototype stages, scene capture). Those commands never
|
|
30
|
+
* download a browser on their own; they name the exact install command for this
|
|
31
|
+
* environment (the References capture installs it, above).
|
|
24
32
|
*/
|
|
25
33
|
export declare const missingPrototypeBrowserMessage: (args: {
|
|
26
34
|
/** What cannot start, e.g. `Prototype runtime` or `Scene capture`. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prototype-browsers.d.ts","sourceRoot":"","sources":["../src/prototype-browsers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prototype-browsers.d.ts","sourceRoot":"","sources":["../src/prototype-browsers.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,4BAA4B,GAAG;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAmCF;;;;;GAKG;AACH,eAAO,MAAM,mCAAmC,GAAU,OAAM;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACnB,KAAG,OAAO,CAAC,4BAA4B,CAmB5C,CAAC;AAEF,eAAO,MAAM,+BAA+B,GAAI,QAAQ,MAAM,KAAG,OAGhE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,cAAc,IAAI,CAAC,4BAA4B,EAAE,aAAa,CAAC,EAC/D,gBAAe,MAAiC,KAC/C,OAAO,CAAC,IAAI,CAcd,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,GAAI,MAAM;IACnD,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,IAAI,CAAC,4BAA4B,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAC;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,KAAG,MAMH,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { spawn } from 'node:child_process';
|
|
1
2
|
import { createRequire } from 'node:module';
|
|
2
3
|
import os from 'node:os';
|
|
3
4
|
import path from 'node:path';
|
|
@@ -44,10 +45,34 @@ export const resolvePrototypeBrowserProvisioning = async (args = {}) => {
|
|
|
44
45
|
};
|
|
45
46
|
export const isMissingPrototypeBrowserOutput = (output) => (/Executable doesn't exist at/u.test(output)
|
|
46
47
|
&& /playwright install/u.test(output));
|
|
48
|
+
/**
|
|
49
|
+
* Installs Chromium into the managed browsers path, the same install the command
|
|
50
|
+
* above names. Only the References tab's capture calls it: that capture runs
|
|
51
|
+
* unattended (the workspace runner, or the draw command while the person
|
|
52
|
+
* chooses), so nobody would read the command, and a fresh home has no browser.
|
|
53
|
+
*/
|
|
54
|
+
export const installPrototypeBrowser = async (provisioning, playwrightCli = installedPlaywrightCli()) => {
|
|
55
|
+
await new Promise((resolve, reject) => {
|
|
56
|
+
const child = spawn(process.execPath, [playwrightCli, 'install', 'chromium'], {
|
|
57
|
+
env: provisioning.environment,
|
|
58
|
+
stdio: ['ignore', 'ignore', 'pipe'],
|
|
59
|
+
});
|
|
60
|
+
let stderr = '';
|
|
61
|
+
child.stderr.setEncoding('utf8').on('data', (chunk) => { stderr = (stderr + chunk).slice(-2000); });
|
|
62
|
+
child.on('error', reject);
|
|
63
|
+
child.on('close', (code) => {
|
|
64
|
+
if (code === 0)
|
|
65
|
+
resolve();
|
|
66
|
+
else
|
|
67
|
+
reject(new Error(`Chromium install exited with ${code}: ${stderr.trim()}`));
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
};
|
|
47
71
|
/**
|
|
48
72
|
* The one statement of a missing managed browser, shared by every command that
|
|
49
|
-
* drives Chromium (prototype stages, scene capture).
|
|
50
|
-
* browser on
|
|
73
|
+
* drives Chromium (prototype stages, scene capture). Those commands never
|
|
74
|
+
* download a browser on their own; they name the exact install command for this
|
|
75
|
+
* environment (the References capture installs it, above).
|
|
51
76
|
*/
|
|
52
77
|
export const missingPrototypeBrowserMessage = (args) => (`${args.subject} cannot start because Chromium is not installed in the managed`
|
|
53
78
|
+ ` 12ui browser directory at ${args.provisioning.browsersPath}.\n`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prototype-browsers.js","sourceRoot":"","sources":["../src/prototype-browsers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prototype-browsers.js","sourceRoot":"","sources":["../src/prototype-browsers.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAWnE,OAAO,EAAoB,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAWnE,OAAO,EAAoB,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAazF,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;;;;;OAOG;IACH,MAAM,EAAE,gBAAgB,GAAG,CAAC,MAAM,gBAAgB,CAAC,CAAC;IACpD,sFAAsF;IACtF,YAAY,CAAC,EAAE,YAAY,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC;IACnD;;;;OAIG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AAEF,qGAAqG;AACrG,eAAO,MAAM,eAAe,GAAI,SAAS,gBAAgB,KAAG,MA6C3D,CAAC;AAEF,wBAAsB,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E"}
|
package/dist/server.js
CHANGED
|
@@ -6,6 +6,7 @@ import { readCorpusConfig } from './config.js';
|
|
|
6
6
|
import { MCP_TOOL_DEFINITIONS } from './mcp-tool-definitions.js';
|
|
7
7
|
import { callMcpTool, createMcpCorpusDependencies, createMcpToolDependencies, } from './mcp-tool-handler.js';
|
|
8
8
|
import { lazyCorpus } from './slate-corpus.js';
|
|
9
|
+
import { startLocalCaptions } from './slate-captions-local.js';
|
|
9
10
|
import { startLocalReferences } from './slate-site-references-local.js';
|
|
10
11
|
import { listSlateResources, readSlateResource } from './mcp-slate-resource.js';
|
|
11
12
|
import { SLATE_TOOL_DEFINITIONS, createSlateToolHandler, isSlateTool, } from './mcp-slate-tools.js';
|
|
@@ -29,7 +30,7 @@ export const createMcpServer = (options) => {
|
|
|
29
30
|
const slateTools = createSlateToolHandler({
|
|
30
31
|
// The workspace's free reference search reads the same optional-auth corpus configuration, lazily.
|
|
31
32
|
corpus: lazyCorpus(resolveCorpusConfig),
|
|
32
|
-
gatherReferences: (root) => { startLocalReferences(root); },
|
|
33
|
+
gatherReferences: (root) => { startLocalReferences(root); startLocalCaptions(root); },
|
|
33
34
|
...options.slate,
|
|
34
35
|
});
|
|
35
36
|
const server = new Server({ name: PACKAGE_NAME, version: packageIdentity().version }, { capabilities: { tools: {}, resources: {} } });
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAA4C,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,WAAW,EACX,2BAA2B,EAC3B,yBAAyB,GAG1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,WAAW,GAEZ,MAAM,sBAAsB,CAAC;AAsB9B,qGAAqG;AACrG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAyB,EAAU,EAAE;IACnE,IAAI,YAA6C,CAAC;IAClD,IAAI,MAAyC,CAAC;IAC9C,MAAM,aAAa,GAAG,GAAqB,EAAE,CAAC,CAC5C,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CACzE,CAAC;IACF,MAAM,mBAAmB,GAAG,GAAiB,EAAE;QAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACzG,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC1F,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,GAA0B,EAAE;QACrD,MAAM,KAAK,2BAA2B,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,GAAwB,EAAE;QACnD,YAAY,KAAK,yBAAyB,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5D,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,sBAAsB,CAAC;QACxC,mGAAmG;QACnG,MAAM,EAAE,UAAU,CAAC,mBAAmB,CAAC;QACvC,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/slate-actions.d.ts
CHANGED
|
@@ -29,15 +29,16 @@ export type RoundAction = {
|
|
|
29
29
|
brief?: string;
|
|
30
30
|
};
|
|
31
31
|
/**
|
|
32
|
-
* Branch:
|
|
33
|
-
*
|
|
32
|
+
* Branch: the real branch pipeline (`12ui branch execute`) grown from one design. `page` continues the design below
|
|
33
|
+
* the fold into its full page; `site` adds the product's other pages and routes, the person's names when given.
|
|
34
34
|
*/
|
|
35
|
+
export type BranchScope = 'page' | 'site';
|
|
35
36
|
export type BranchAction = {
|
|
36
37
|
kind: 'round';
|
|
37
38
|
mode: 'branch';
|
|
38
39
|
note: null;
|
|
39
40
|
fromVersionId: string;
|
|
40
|
-
|
|
41
|
+
scope: BranchScope;
|
|
41
42
|
pages: string[];
|
|
42
43
|
};
|
|
43
44
|
export type EditAction = {
|
|
@@ -47,11 +48,9 @@ export type EditAction = {
|
|
|
47
48
|
strokes: SlateStroke[];
|
|
48
49
|
};
|
|
49
50
|
export type SlateWorkAction = RoundAction | BranchAction | EditAction;
|
|
50
|
-
|
|
51
|
-
export declare const BRANCH_MAX_PAGES =
|
|
51
|
+
/** The branch service plans at most 4 pages beyond the design's own (workers/api/src/slate/limits.ts SLATE_BRANCH.maxPages). */
|
|
52
|
+
export declare const BRANCH_MAX_PAGES = 4;
|
|
52
53
|
export declare const PAGE_NAME_MAX_CHARACTERS = 60;
|
|
53
|
-
/** The pages a branch draws when the person names none, in this order (a product without one draws its closest equivalent). */
|
|
54
|
-
export declare const BRANCH_DEFAULT_PAGE_NAMES: readonly ["Detail", "Sign in", "Pricing", "Settings", "Dashboard", "Search", "Profile", "Checkout"];
|
|
55
54
|
/** Control characters are stripped except tab and newline; the rest is the user's text. */
|
|
56
55
|
export declare const cleanUserText: (value: string) => string;
|
|
57
56
|
/** Freehand strokes as integer permille points; anything outside the limits is refused, never trimmed. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slate-actions.d.ts","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkD,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5G;;;GAGG;AAEH,4FAA4F;AAC5F,eAAO,MAAM,mBAAmB,8BAA+B,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,eAAO,MAAM,0BAA0B,EAAE,gBAAoB,CAAC;AAC9D,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,qBAAqB,OAA8B,CAAC;AACjE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,6KAA6K,CAAC;AACjN,eAAO,MAAM,aAAa;;;;CAAqE,CAAC;AAGhG,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,gBAAgB,CAAC;IACxB,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"slate-actions.d.ts","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkD,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5G;;;GAGG;AAEH,4FAA4F;AAC5F,eAAO,MAAM,mBAAmB,8BAA+B,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,eAAO,MAAM,0BAA0B,EAAE,gBAAoB,CAAC;AAC9D,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,qBAAqB,OAA8B,CAAC;AACjE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,6KAA6K,CAAC;AACjN,eAAO,MAAM,aAAa;;;;CAAqE,CAAC;AAGhG,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,gBAAgB,CAAC;IACxB,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;AAC1C,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AACrI,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC;AACrG,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AAEtE,gIAAgI;AAChI,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAQ3C,2FAA2F;AAC3F,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,KAAG,MAG7C,CAAC;AAEF,0GAA0G;AAC1G,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,WAAW,EAsB5D,CAAC;AAEF,kGAAkG;AAClG,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,KAAG,gBAKpD,CAAC;AAEF,sIAAsI;AACtI,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,MAAM,EAWrD,CAAC;AAUF,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,eAsChD,CAAC"}
|
package/dist/slate-actions.js
CHANGED
|
@@ -17,11 +17,9 @@ export const EDIT_PROMPT_MAX_BYTES = SLATE_EDIT_PROMPT_MAX_BYTES;
|
|
|
17
17
|
export const EDIT_MARKS_ONLY_PROMPT = 'Infer the change from the marks: an X or a cross-out means remove that element, a circle or a scribble means adjust it, and any words written there are the instruction.';
|
|
18
18
|
export const STROKE_LIMITS = { strokes: 24, pointsPerStroke: 400, pointsTotal: 3_000 };
|
|
19
19
|
const ROUND_BRIEF_MAX_CHARACTERS = 2_000;
|
|
20
|
-
|
|
21
|
-
export const BRANCH_MAX_PAGES =
|
|
20
|
+
/** The branch service plans at most 4 pages beyond the design's own (workers/api/src/slate/limits.ts SLATE_BRANCH.maxPages). */
|
|
21
|
+
export const BRANCH_MAX_PAGES = 4;
|
|
22
22
|
export const PAGE_NAME_MAX_CHARACTERS = 60;
|
|
23
|
-
/** The pages a branch draws when the person names none, in this order (a product without one draws its closest equivalent). */
|
|
24
|
-
export const BRANCH_DEFAULT_PAGE_NAMES = ['Detail', 'Sign in', 'Pricing', 'Settings', 'Dashboard', 'Search', 'Profile', 'Checkout'];
|
|
25
23
|
const isRecord = (value) => (!!value && typeof value === 'object' && !Array.isArray(value));
|
|
26
24
|
const invalid = (message, l10n) => { throw new SlateError('invalid_input', message, l10n ? { l10n } : {}); };
|
|
27
25
|
/** Control characters are stripped except tab and newline; the rest is the user's text. */
|
|
@@ -91,11 +89,10 @@ const normalizeBranch = (input) => {
|
|
|
91
89
|
const fromVersionId = input.fromVersionId;
|
|
92
90
|
if (typeof fromVersionId !== 'string' || !VERSION_ID_PATTERN.test(fromVersionId))
|
|
93
91
|
return invalid('A branch needs the version it grows from (fromVersionId).');
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
return { kind: 'round', mode: 'branch', note: null, fromVersionId, count, pages: pages.length > 0 ? pages : BRANCH_DEFAULT_PAGE_NAMES.slice(0, count) };
|
|
92
|
+
if (input.scope !== 'page' && input.scope !== 'site')
|
|
93
|
+
return invalid('A branch scope is page (the full page) or site (more pages).');
|
|
94
|
+
const pages = input.scope === 'site' ? normalizePages(input.pages) : [];
|
|
95
|
+
return { kind: 'round', mode: 'branch', note: null, fromVersionId, scope: input.scope, pages };
|
|
99
96
|
};
|
|
100
97
|
export const normalizeAction = (input) => {
|
|
101
98
|
if (!isRecord(input))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slate-actions.js","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAuC,MAAM,0BAA0B,CAAC;AAE5G;;;GAGG;AAEH,4FAA4F;AAC5F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAU,CAAC;AAEhE,MAAM,CAAC,MAAM,0BAA0B,GAAqB,CAAC,CAAC;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,2BAA2B,CAAC;AACjE;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,0KAA0K,CAAC;AACjN,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAW,CAAC;AAChG,MAAM,0BAA0B,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"slate-actions.js","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { type Outcome, type RunnerEnv } from './slate-runner-context.js';
|
|
2
|
+
import type { SlateOp, SlateRoundParams } from './slate-workspace-types.js';
|
|
3
|
+
/**
|
|
4
|
+
* A branch runs the real branch pipeline (`followBranchRun`), here for the local runner's branch round: `12ui branch execute` on the design it grows from, in
|
|
5
|
+
* `branches/<roundId>/`, as a child of this runner. The runner reads what that run records while it works and lands
|
|
6
|
+
* each page in the Designs tab the moment its screens are in:
|
|
7
|
+
*
|
|
8
|
+
* - `branch/branch.plan.json` names the pages, their surfaces and the viewports (screens) of each page;
|
|
9
|
+
* - `branch/branch.progress.json` says which screens are in (the board's "n of m");
|
|
10
|
+
* - every screen is one option, placed on the branch's board (`boardOf`): its column (0 is the design the branch grows
|
|
11
|
+
* from, with the full page continued under it; then the plan's other pages, in order), its row in that column, and
|
|
12
|
+
* how the column stacks (`page`: one continuous web page, flush; `states`: app states, framed one by one). Each screen
|
|
13
|
+
* lands the moment it is in, so the board fills in place.
|
|
14
|
+
*
|
|
15
|
+
* The child runs on the person's own 12ui sign-in, with no extra step before it starts. A rerun of the op reruns the same command in the same
|
|
16
|
+
* folder, which resumes the recorded branch run instead of repeating its paid work.
|
|
17
|
+
*/
|
|
18
|
+
export type BranchChild = {
|
|
19
|
+
exited: Promise<number>;
|
|
20
|
+
};
|
|
21
|
+
export type BranchLaunch = (args: {
|
|
22
|
+
cwd: string;
|
|
23
|
+
argv: string[];
|
|
24
|
+
}) => BranchChild;
|
|
25
|
+
/** The default launch: this CLI's own `branch execute`, with the runner's environment (the stored 12ui sign-in under HOME). */
|
|
26
|
+
export declare const spawnBranchExecute: BranchLaunch;
|
|
27
|
+
/** How a page's screens read together: one continuous web page (flush), or separate app states (framed). */
|
|
28
|
+
export type BoardFlow = 'page' | 'states';
|
|
29
|
+
export type PlanPage = {
|
|
30
|
+
index: number;
|
|
31
|
+
title: string;
|
|
32
|
+
startsFromWinner: boolean;
|
|
33
|
+
flow: BoardFlow;
|
|
34
|
+
};
|
|
35
|
+
type PlanScreen = {
|
|
36
|
+
slot: string;
|
|
37
|
+
pageIndex: number;
|
|
38
|
+
viewportOrdinal: number;
|
|
39
|
+
status: string;
|
|
40
|
+
};
|
|
41
|
+
type Plan = {
|
|
42
|
+
pages: PlanPage[];
|
|
43
|
+
screens: PlanScreen[];
|
|
44
|
+
};
|
|
45
|
+
/** A screen's place on the board: its column, its row in that column, and how the column stacks. */
|
|
46
|
+
export type BoardPlace = {
|
|
47
|
+
column: number;
|
|
48
|
+
screen: number;
|
|
49
|
+
flow: BoardFlow;
|
|
50
|
+
};
|
|
51
|
+
/** A page of the board as the runner reports it: `source` when it continues the design the branch grows from (column 0). */
|
|
52
|
+
export type BoardPage = {
|
|
53
|
+
title: string;
|
|
54
|
+
flow: BoardFlow;
|
|
55
|
+
source: boolean;
|
|
56
|
+
screens: number;
|
|
57
|
+
};
|
|
58
|
+
export type BoardScreen = {
|
|
59
|
+
slot: string;
|
|
60
|
+
title: string;
|
|
61
|
+
place: BoardPlace;
|
|
62
|
+
};
|
|
63
|
+
/** The board's screens from its pages in board order: the one rule both stores (and the runner) place screens by. */
|
|
64
|
+
export declare const boardPlaces: (pages: readonly BoardPage[]) => {
|
|
65
|
+
title: string;
|
|
66
|
+
place: BoardPlace;
|
|
67
|
+
}[];
|
|
68
|
+
/**
|
|
69
|
+
* The board of a plan: its pages in board order (the page that continues the design first, as column 0; then the rest
|
|
70
|
+
* in plan order, as columns 1, 2, ...) and every screen in that order, each page's screens by viewport. A screen's
|
|
71
|
+
* position in `screens` is its option's position: the server and the local store make the options in this order.
|
|
72
|
+
*/
|
|
73
|
+
export declare const boardOf: (plan: Plan) => {
|
|
74
|
+
pages: BoardPage[];
|
|
75
|
+
screens: BoardScreen[];
|
|
76
|
+
};
|
|
77
|
+
export declare const readBranchPlan: (branchDir: string) => Promise<Plan | null>;
|
|
78
|
+
/**
|
|
79
|
+
* The words `branch execute` plans from: the workspace brief, as the web /branch page sends its prompt (Branch.tsx
|
|
80
|
+
* `startBranch`: the brief, trimmed, nothing added). The same design and brief then get the web's plan: the page the
|
|
81
|
+
* design starts continued below the fold, the planner's other pages, the same header, footer and screen cap.
|
|
82
|
+
* The scope is no sentence: `--scope page` keeps that plan's source page (the web board's first column), `site` all of
|
|
83
|
+
* it. Page names the person gave are the one addition, said the way a person on the web writes them into the brief:
|
|
84
|
+
* what the rest of the product must cover.
|
|
85
|
+
*/
|
|
86
|
+
export declare const branchConcept: (params: Pick<SlateRoundParams, "concept" | "scope" | "pages">) => string;
|
|
87
|
+
/** Where a followed branch run lands what it records: the local workspace, or the hosted one (workspace-draw-branch.ts). */
|
|
88
|
+
export type BranchHooks = {
|
|
89
|
+
/** Every poll once the plan is in: its pages in board order (`boardOf`) and how many screens are in. */
|
|
90
|
+
progress: (pages: BoardPage[], screens: {
|
|
91
|
+
ready: number;
|
|
92
|
+
total: number;
|
|
93
|
+
}) => Promise<void>;
|
|
94
|
+
/** Whether the screen at this position has already landed (or failed): a resumed run skips it. */
|
|
95
|
+
settled: (position: number) => Promise<boolean>;
|
|
96
|
+
/** The screen at this position is done: its picture, or null when it was not drawn. */
|
|
97
|
+
land: (position: number, screen: BoardScreen, png: Buffer | null) => Promise<void>;
|
|
98
|
+
};
|
|
99
|
+
/**
|
|
100
|
+
* Runs `12ui branch execute` from `source` in `runDir` (resuming the recorded run when there is one) and follows what
|
|
101
|
+
* it records until it exits: the local runner's branch round and the hosted workspace's branch op
|
|
102
|
+
* (workspace-draw-branch.ts) both land their pages through `hooks`. `planned` says whether its plan ever named a page.
|
|
103
|
+
*/
|
|
104
|
+
export declare const followBranchRun: (args: {
|
|
105
|
+
launch: BranchLaunch;
|
|
106
|
+
runDir: string;
|
|
107
|
+
scope: "page" | "site";
|
|
108
|
+
concept: string;
|
|
109
|
+
source: Buffer;
|
|
110
|
+
sleep: (milliseconds: number) => Promise<void>;
|
|
111
|
+
log: (entry: Record<string, unknown>) => Promise<void>;
|
|
112
|
+
hooks: BranchHooks;
|
|
113
|
+
}) => Promise<{
|
|
114
|
+
exitCode: number;
|
|
115
|
+
planned: boolean;
|
|
116
|
+
branchDir: string;
|
|
117
|
+
}>;
|
|
118
|
+
export declare const runBranch: (env: RunnerEnv, op: SlateOp) => Promise<Outcome>;
|
|
119
|
+
export {};
|
|
120
|
+
//# sourceMappingURL=slate-branch-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slate-branch-runner.d.ts","sourceRoot":"","sources":["../src/slate-branch-runner.ts"],"names":[],"mappings":"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"}
|