@multiplayer-app/sandbox 0.0.32 → 0.0.33-beta.2
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/dist/agents/content-generator.agent.d.ts +8 -0
- package/dist/agents/content-generator.agent.d.ts.map +1 -1
- package/dist/agents/content-generator.agent.js +53 -6
- package/dist/agents/content-generator.agent.js.map +1 -1
- package/dist/agents/notebook.agent.d.ts.map +1 -1
- package/dist/agents/notebook.agent.js +2 -1
- package/dist/agents/notebook.agent.js.map +1 -1
- package/dist/agents/shared/build-plan.tools.d.ts.map +1 -1
- package/dist/agents/shared/build-plan.tools.js +4 -4
- package/dist/agents/shared/build-plan.tools.js.map +1 -1
- package/dist/agents/shared/content-generator-system-prompt.d.ts +3 -2
- package/dist/agents/shared/content-generator-system-prompt.d.ts.map +1 -1
- package/dist/agents/shared/content-generator-system-prompt.js +41 -24
- package/dist/agents/shared/content-generator-system-prompt.js.map +1 -1
- package/dist/agents/shared/publish-session-artifacts.tool.d.ts +5 -0
- package/dist/agents/shared/publish-session-artifacts.tool.d.ts.map +1 -1
- package/dist/agents/shared/publish-session-artifacts.tool.js +154 -15
- package/dist/agents/shared/publish-session-artifacts.tool.js.map +1 -1
- package/dist/agents/shared/session-quality-report.tool.js +1 -1
- package/dist/agents/shared/session-quality-report.tool.js.map +1 -1
- package/dist/agents/shared/update-session-artifacts.tool.d.ts +5 -0
- package/dist/agents/shared/update-session-artifacts.tool.d.ts.map +1 -1
- package/dist/agents/shared/update-session-artifacts.tool.js +136 -26
- package/dist/agents/shared/update-session-artifacts.tool.js.map +1 -1
- package/dist/agents/shared/validate-artifact-content.tools.d.ts +4 -0
- package/dist/agents/shared/validate-artifact-content.tools.d.ts.map +1 -1
- package/dist/agents/shared/validate-artifact-content.tools.js +24 -1
- package/dist/agents/shared/validate-artifact-content.tools.js.map +1 -1
- package/dist/agents/skills/designer.skill.d.ts.map +1 -1
- package/dist/agents/skills/designer.skill.js +75 -113
- package/dist/agents/skills/designer.skill.js.map +1 -1
- package/dist/agents/skills/skill-injection.d.ts.map +1 -1
- package/dist/agents/skills/skill-injection.js +9 -3
- package/dist/agents/skills/skill-injection.js.map +1 -1
- package/dist/context.d.ts +4 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js.map +1 -1
- package/dist/create-builder-api.d.ts +6 -0
- package/dist/create-builder-api.d.ts.map +1 -1
- package/dist/create-builder-api.js +2 -0
- package/dist/create-builder-api.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/notebooks/notebook-storage-paths.d.ts +8 -0
- package/dist/lib/notebooks/notebook-storage-paths.d.ts.map +1 -0
- package/dist/lib/notebooks/notebook-storage-paths.js +22 -0
- package/dist/lib/notebooks/notebook-storage-paths.js.map +1 -0
- package/dist/lib/notebooks/notebook-yjs-content.d.ts +6 -0
- package/dist/lib/notebooks/notebook-yjs-content.d.ts.map +1 -0
- package/dist/lib/notebooks/notebook-yjs-content.js +42 -0
- package/dist/lib/notebooks/notebook-yjs-content.js.map +1 -0
- package/dist/lib/object-storage/keys.d.ts +1 -0
- package/dist/lib/object-storage/keys.d.ts.map +1 -1
- package/dist/lib/object-storage/keys.js +5 -0
- package/dist/lib/object-storage/keys.js.map +1 -1
- package/dist/lib/object-storage/named-snapshot-paths.d.ts +9 -0
- package/dist/lib/object-storage/named-snapshot-paths.d.ts.map +1 -0
- package/dist/lib/object-storage/named-snapshot-paths.js +39 -0
- package/dist/lib/object-storage/named-snapshot-paths.js.map +1 -0
- package/dist/lib/session-artifacts/hashline-diff-guide.d.ts +1 -1
- package/dist/lib/session-artifacts/hashline-diff-guide.d.ts.map +1 -1
- package/dist/lib/session-artifacts/hashline-diff-guide.js +9 -5
- package/dist/lib/session-artifacts/hashline-diff-guide.js.map +1 -1
- package/dist/lib/session-artifacts/parse-hashline-diff.d.ts +13 -0
- package/dist/lib/session-artifacts/parse-hashline-diff.d.ts.map +1 -1
- package/dist/lib/session-artifacts/parse-hashline-diff.js +72 -0
- package/dist/lib/session-artifacts/parse-hashline-diff.js.map +1 -1
- package/dist/lib/session-pages/artifact-quality-audit.d.ts.map +1 -1
- package/dist/lib/session-pages/artifact-quality-audit.js +19 -14
- package/dist/lib/session-pages/artifact-quality-audit.js.map +1 -1
- package/dist/lib/session-pages/artifact-storage-paths.d.ts +1 -0
- package/dist/lib/session-pages/artifact-storage-paths.d.ts.map +1 -1
- package/dist/lib/session-pages/artifact-storage-paths.js +9 -5
- package/dist/lib/session-pages/artifact-storage-paths.js.map +1 -1
- package/dist/lib/session-pages/html-artifact-template.d.ts +16 -0
- package/dist/lib/session-pages/html-artifact-template.d.ts.map +1 -1
- package/dist/lib/session-pages/html-artifact-template.js +166 -10
- package/dist/lib/session-pages/html-artifact-template.js.map +1 -1
- package/dist/lib/session-pages/index.d.ts +4 -0
- package/dist/lib/session-pages/index.d.ts.map +1 -1
- package/dist/lib/session-pages/index.js +11 -1
- package/dist/lib/session-pages/index.js.map +1 -1
- package/dist/lib/session-pages/write-session-artifacts.d.ts +1 -0
- package/dist/lib/session-pages/write-session-artifacts.d.ts.map +1 -1
- package/dist/lib/session-pages/write-session-artifacts.js +4 -1
- package/dist/lib/session-pages/write-session-artifacts.js.map +1 -1
- package/dist/lib/session-plans/build-plan.d.ts +13 -3
- package/dist/lib/session-plans/build-plan.d.ts.map +1 -1
- package/dist/lib/session-plans/build-plan.js +37 -6
- package/dist/lib/session-plans/build-plan.js.map +1 -1
- package/dist/lib/yjs-pending/flush-worker.d.ts +1 -1
- package/dist/lib/yjs-pending/flush-worker.d.ts.map +1 -1
- package/dist/lib/yjs-pending/flush-worker.js +3 -33
- package/dist/lib/yjs-pending/flush-worker.js.map +1 -1
- package/dist/lib/yjs-pending/snapshot-retention.d.ts +6 -0
- package/dist/lib/yjs-pending/snapshot-retention.d.ts.map +1 -0
- package/dist/lib/yjs-pending/snapshot-retention.js +33 -0
- package/dist/lib/yjs-pending/snapshot-retention.js.map +1 -0
- package/dist/lib/yjs-pending/yjs-persistence.d.ts +1 -0
- package/dist/lib/yjs-pending/yjs-persistence.d.ts.map +1 -1
- package/dist/lib/yjs-pending/yjs-persistence.js +36 -0
- package/dist/lib/yjs-pending/yjs-persistence.js.map +1 -1
- package/dist/realtime/session-artifact-yjs-store.d.ts +21 -0
- package/dist/realtime/session-artifact-yjs-store.d.ts.map +1 -1
- package/dist/realtime/session-artifact-yjs-store.js +84 -0
- package/dist/realtime/session-artifact-yjs-store.js.map +1 -1
- package/dist/routes/notebooks.d.ts.map +1 -1
- package/dist/routes/notebooks.js +2 -0
- package/dist/routes/notebooks.js.map +1 -1
- package/dist/routes/schemas.d.ts +2 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +2 -0
- package/dist/server.js.map +1 -1
- package/package.json +4 -4
|
@@ -3,137 +3,99 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.designerSkill = void 0;
|
|
4
4
|
exports.designerSkill = {
|
|
5
5
|
name: 'designer',
|
|
6
|
-
description: '
|
|
6
|
+
description: 'Advanced visual design: diverse layout packs, signature systems, typography, atmosphere, polish — never a single SaaS template',
|
|
7
7
|
whenToUse: 'Every UI/HTML page. Always include for any .html artifact.',
|
|
8
8
|
instructions: `## designer
|
|
9
9
|
|
|
10
|
-
Goal: every
|
|
10
|
+
Goal: every session should feel like a distinct 2025–2026 product — rich, modern, and different from the last one. Tailwind Play CDN is on (preflight): utility-class every visible element. Use a small <style> only for fonts, keyframes, and atmosphere (mesh/grain/noise).
|
|
11
|
+
|
|
12
|
+
### Diversity mandate (non-negotiable)
|
|
13
|
+
Do NOT invent from a mental default of "sticky glass nav + centered headline + blur orb + 3 feature cards". That skeleton is BANNED as a default.
|
|
14
|
+
1. Read the brief's **layout pack** + **signature** first.
|
|
15
|
+
2. Compose the first viewport to match THAT pack — invent structure; do not paste a generic template.
|
|
16
|
+
3. Across sessions, vary composition deliberately. Same accent with the same centered blob hero = fail.
|
|
17
|
+
4. Within a session, keep ONE design system (tokens, chrome, type) — diversity is across products, consistency is within a product.
|
|
11
18
|
|
|
12
19
|
### Design brief is law
|
|
13
|
-
Use the brief's accent as LITERAL hex utilities (bg-[#0EA5E9] hover:bg-[#0284C7]) — same hex everywhere. One neutral scale (slate OR zinc OR stone). Never indigo/violet defaults unless the brief names them. Never Inter. Never bg-[var(--x)] class names (undefined vars fail the gate).
|
|
20
|
+
Use the brief's accent as LITERAL hex utilities (bg-[#0EA5E9] hover:bg-[#0284C7]) — same hex everywhere. One neutral scale (slate OR zinc OR stone OR neutral). Never indigo/violet defaults unless the brief names them. Never Inter. Never bg-[var(--x)] class names (undefined vars fail the gate).
|
|
21
|
+
Honor: **radius** (sharp | soft | pill), **density** (airy | comfortable | dense), **signature**, **atmosphere**, **anti-cliché**.
|
|
14
22
|
|
|
15
23
|
### Accent contrast (buttons & labels)
|
|
16
24
|
Bright accents (#1DB954, lime, cyan-400, etc.) fail WCAG with white text and as body/eyebrow text on white. Prefer one of:
|
|
17
25
|
- CTA: dark text on bright fill — e.g. \`bg-[#1DB954] text-slate-950\` (not text-white)
|
|
18
|
-
- Or darken the fill for white text — e.g. \`bg-[#15803d] text-white\`
|
|
19
|
-
- Accent-as-text
|
|
26
|
+
- Or darken the fill for white text — e.g. \`bg-[#15803d] text-white\`
|
|
27
|
+
- Accent-as-text: darker shade of the brief accent, not the bright fill hex on white
|
|
20
28
|
Never waste turns "fixing contrast" by nudging slate body text — fix the accent/button pairing once.
|
|
21
29
|
|
|
22
|
-
###
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
30
|
+
### Layout packs — build the composition the pack implies
|
|
31
|
+
Pick (or follow) exactly one. Section rhythm and chrome must match the pack, not a generic launch page.
|
|
32
|
+
|
|
33
|
+
- **launch** — Marketing narrative. Full-bleed hero edge-to-edge; brand-first; then 2–3 sections with alternating alignment (NOT everything centered); social proof; pricing or final CTA. Still invent a distinctive hero (split, offset type, framed UI mock) — not the default centered blob.
|
|
34
|
+
- **split-hero** — First viewport is 50/50 (or 40/60) text + framed product UI / abstract SVG. Nav can be minimal. No centered single-column hero.
|
|
35
|
+
- **product** — App/dashboard density: glass or solid chrome header; KPI/toolbar row; card grid or sidebar+main; tables in cards. First viewport is the workspace, not a marketing hero.
|
|
36
|
+
- **workspace** — Persistent sidebar + main canvas from the first paint. Dense controls, quiet chrome. Marketing sections are out of place.
|
|
37
|
+
- **editorial** / **magazine** — Strong type hierarchy, asymmetric columns, pull quotes, accent border-l callouts, generous measure (max-w-2xl for body). Hero may be typographic only — huge display, little ornament.
|
|
38
|
+
- **bento** — Uneven modular grid (varied col/row spans). Modules have different jobs/sizes — never three equal cards in a row as the hero.
|
|
39
|
+
- **dark-terminal** — Near-black ground, mono or semi-mono accents, tight tracking, hard borders, minimal blur/glass. Green/amber/cyan terminal accents when topic-fit.
|
|
40
|
+
- **brutalist** — Hard edges (radius sharp), high contrast, visible structure, little or no blur/glass/orb. Typography does the work.
|
|
41
|
+
- **story** — Full-bleed stacked chapters, scroll narrative, minimal persistent nav. Each section is one beat; motion is scroll-tied (respect prefers-reduced-motion).
|
|
42
|
+
|
|
43
|
+
### Signature system (required in brief — execute literally)
|
|
44
|
+
Name and ship ONE of each:
|
|
45
|
+
- **Signature layout**: asymmetric | split | stacked | bento | magazine | terminal-rail | sidebar-first
|
|
46
|
+
- **Signature surface**: paper grain | hard grid | ink wash | soft glass | flat ink | mesh drift | noise film — pick ONE primary; do not stack all
|
|
47
|
+
- **Signature motion** (2–3 max total on the page): hero entrance | card lift | scroll reveal | type stagger | mesh drift — behind prefers-reduced-motion; never decorative noise
|
|
48
|
+
|
|
49
|
+
### Radius & density
|
|
50
|
+
- **sharp**: rounded-none / rounded-sm; hard separators
|
|
51
|
+
- **soft**: rounded-xl / rounded-2xl (default only when brief says soft)
|
|
52
|
+
- **pill**: rounded-full on controls and chips; keep cards softer or sharper per brief
|
|
53
|
+
- **airy**: py-24+, sparse; **comfortable**: py-16/20; **dense**: py-8–12, tighter gaps, compact type
|
|
27
54
|
|
|
28
|
-
###
|
|
29
|
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
|
|
55
|
+
### Brand-first first viewport
|
|
56
|
+
ONE composition: brand/product name as a hero-level signal (unless pack is product/workspace — then brand lives in chrome), one headline, one supporting sentence, one CTA pair (marketing packs), one dominant visual plane matching the signature surface.
|
|
57
|
+
- Launch/story/split-hero: full-bleed section background; max-w column INSIDE the section. Never put the hero inside a rounded card.
|
|
58
|
+
- Brand must still read if the nav disappeared (marketing packs).
|
|
59
|
+
- At most one quiet eyebrow — no floating stickers, KPI strips, or promo chips on hero media.
|
|
60
|
+
- Product/workspace packs: first viewport IS the app chrome + primary content — skip marketing hero rules.
|
|
61
|
+
|
|
62
|
+
### Atmosphere (required — flat white/black slabs fail)
|
|
63
|
+
Depth without clutter. Follow the brief's signature surface. Examples (pick what the brief named):
|
|
64
|
+
- Soft accent-tint wash on the hero
|
|
65
|
+
- Mesh blob (blur-3xl, low opacity) — ONLY when signature allows soft glass/mesh; banned for brutalist/terminal
|
|
66
|
+
- Subtle grain / noise film at 3–5% opacity
|
|
67
|
+
- Hard grid overlay (brutalist / terminal)
|
|
68
|
+
- Glass chrome when signature is soft glass — not mandatory for every pack
|
|
69
|
+
Never neon saturated walls. Atmosphere supports content.
|
|
35
70
|
|
|
36
71
|
### Typography
|
|
37
|
-
Load the brief's Google Fonts <link> + wire font-family on body in <style>.
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
<a href="pricing.html" class="transition-colors hover:text-[#0EA5E9]">Pricing</a>
|
|
53
|
-
</nav>
|
|
54
|
-
<div class="flex items-center gap-3">
|
|
55
|
-
<button type="button" class="md:hidden inline-flex h-10 w-10 items-center justify-center rounded-lg text-slate-700" aria-label="Open menu"><!-- menu svg --></button>
|
|
56
|
-
<a href="#cta" class="hidden sm:inline-flex items-center rounded-lg bg-[#0EA5E9] px-4 py-2 text-sm font-semibold text-white shadow-sm transition hover:bg-[#0284C7] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#0EA5E9] focus-visible:ring-offset-2">Start free</a>
|
|
57
|
-
</div>
|
|
58
|
-
</div>
|
|
59
|
-
</header>
|
|
60
|
-
\`\`\`
|
|
61
|
-
Include a mobile drawer/menu script for the md:hidden button — a sticky nav that does nothing on mobile looks unfinished.
|
|
62
|
-
|
|
63
|
-
Launch hero:
|
|
64
|
-
\`\`\`html
|
|
65
|
-
<section class="relative overflow-hidden">
|
|
66
|
-
<div class="pointer-events-none absolute -top-24 left-1/2 h-72 w-72 -translate-x-1/2 rounded-full bg-[#0EA5E9]/25 blur-3xl"></div>
|
|
67
|
-
<div class="relative mx-auto max-w-6xl px-4 py-24 text-center sm:px-6 sm:py-32">
|
|
68
|
-
<p class="text-sm font-semibold tracking-wide text-[#0EA5E9]">For ops teams who live in data</p>
|
|
69
|
-
<h1 class="mt-4 text-5xl font-extrabold tracking-tight text-slate-900 sm:text-6xl lg:text-7xl">Ship clarity,<br><span class="text-[#0EA5E9]">not dashboards</span></h1>
|
|
70
|
-
<p class="mx-auto mt-6 max-w-2xl text-lg text-slate-600">One sentence of concrete value for a named audience — not "welcome to our platform".</p>
|
|
71
|
-
<div class="mt-10 flex flex-wrap items-center justify-center gap-4">
|
|
72
|
-
<a href="#cta" class="inline-flex items-center rounded-lg bg-[#0EA5E9] px-6 py-3 text-sm font-semibold text-white shadow-lg shadow-[#0EA5E9]/25 transition hover:bg-[#0284C7]">Start free trial</a>
|
|
73
|
-
<a href="features.html" class="inline-flex items-center rounded-lg border border-slate-200 bg-white px-6 py-3 text-sm font-semibold text-slate-800 transition hover:border-slate-300 hover:bg-slate-50">See how it works</a>
|
|
74
|
-
</div>
|
|
75
|
-
</div>
|
|
76
|
-
</section>
|
|
77
|
-
\`\`\`
|
|
78
|
-
|
|
79
|
-
Feature row (alternate direction with lg:flex-row-reverse on odd sections):
|
|
80
|
-
\`\`\`html
|
|
81
|
-
<section class="border-t border-slate-100 py-20 sm:py-28">
|
|
82
|
-
<div class="mx-auto grid max-w-6xl items-center gap-12 px-4 sm:px-6 lg:grid-cols-2">
|
|
83
|
-
<div>
|
|
84
|
-
<h2 class="text-3xl font-bold tracking-tight text-slate-900 sm:text-4xl">Outcome-led headline</h2>
|
|
85
|
-
<p class="mt-4 text-lg text-slate-600">Benefit first, mechanism second. Two sentences max.</p>
|
|
86
|
-
<ul class="mt-8 space-y-3 text-slate-700">
|
|
87
|
-
<li class="flex gap-3"><span class="mt-0.5 text-[#0EA5E9]"><!-- check svg --></span>Concrete capability</li>
|
|
88
|
-
</ul>
|
|
89
|
-
</div>
|
|
90
|
-
<div class="relative aspect-[4/3] overflow-hidden rounded-2xl border border-slate-200 bg-gradient-to-br from-[#0EA5E9]/10 to-slate-50 shadow-sm">
|
|
91
|
-
<!-- abstract SVG illustration or UI mock framed here — never a hotlinked photo -->
|
|
92
|
-
</div>
|
|
93
|
-
</div>
|
|
94
|
-
</section>
|
|
95
|
-
\`\`\`
|
|
96
|
-
|
|
97
|
-
KPI (product pack only — never in launch hero):
|
|
98
|
-
\`\`\`html
|
|
99
|
-
<div class="rounded-2xl border border-slate-200/80 bg-white p-5 shadow-sm transition hover:-translate-y-0.5 hover:shadow-lg">
|
|
100
|
-
<div class="flex items-center justify-between">
|
|
101
|
-
<span class="text-sm font-medium text-slate-500">Weekly active</span>
|
|
102
|
-
<span class="inline-flex h-9 w-9 items-center justify-center rounded-xl bg-[#0EA5E9]/10 text-[#0EA5E9]"><!-- svg --></span>
|
|
103
|
-
</div>
|
|
104
|
-
<p class="mt-3 text-3xl font-bold tracking-tight tabular-nums text-slate-900">12,480</p>
|
|
105
|
-
<p class="mt-1 text-sm font-medium text-emerald-600">↑ 12.4% vs last week</p>
|
|
106
|
-
</div>
|
|
107
|
-
\`\`\`
|
|
108
|
-
|
|
109
|
-
Pricing highlight:
|
|
110
|
-
\`\`\`html
|
|
111
|
-
<div class="relative rounded-2xl border-2 border-[#0EA5E9] bg-white p-8 shadow-xl shadow-[#0EA5E9]/10">
|
|
112
|
-
<span class="absolute -top-3 left-1/2 -translate-x-1/2 rounded-full bg-[#0EA5E9] px-3 py-1 text-xs font-semibold text-white">Most popular</span>
|
|
113
|
-
<h3 class="text-lg font-semibold text-slate-900">Growth</h3>
|
|
114
|
-
<p class="mt-3"><span class="text-4xl font-extrabold tracking-tight tabular-nums">$149</span><span class="text-slate-500">/mo</span></p>
|
|
115
|
-
<a href="#cta" class="mt-8 block rounded-lg bg-[#0EA5E9] py-2.5 text-center text-sm font-semibold text-white transition hover:bg-[#0284C7]">Start free trial</a>
|
|
116
|
-
</div>
|
|
117
|
-
\`\`\`
|
|
118
|
-
|
|
119
|
-
### Layout packs
|
|
120
|
-
- **launch**: hero → 2–3 alternating features → social proof (logos or quote) → pricing or final CTA band. Section rhythm py-20 sm:py-28. Alternate alignment; not everything centered.
|
|
121
|
-
- **product**: dense glass header; KPI row; card grid or sidebar+main; tables in cards with toolbar; space-y-6.
|
|
122
|
-
- **editorial**: max-w-2xl measure, strong type, sticky TOC (lg+), accent border-l-4 callouts.
|
|
72
|
+
Load the brief's Google Fonts <link> + wire font-family on body in <style>. Max two families. Pair by intent (examples — invent others when brief names them):
|
|
73
|
+
- Product: Manrope + Plus Jakarta Sans · Instrument Sans + Source Sans 3
|
|
74
|
+
- Tech: Sora + Space Grotesk · IBM Plex Sans + IBM Plex Mono
|
|
75
|
+
- Editorial: Fraunces + Newsreader · Libre Baskerville + Source Serif 4
|
|
76
|
+
- Friendly: Outfit + DM Sans · Nunito + Figtree
|
|
77
|
+
- Terminal: JetBrains Mono + IBM Plex Sans · Geist Mono + Satoshi-like via Space Grotesk
|
|
78
|
+
Never Inter. Scale: marketing heroes text-5xl→lg:text-7xl font-extrabold tracking-tight; editorial may go larger with serif; product/workspace use tighter display (text-2xl/3xl). Body text-base/lg; secondary text-slate-500 (or zinc/stone). tabular-nums on metrics.
|
|
79
|
+
|
|
80
|
+
### Structural recipes (describe — do NOT copy as fixed HTML)
|
|
81
|
+
Invent markup from the pack. These are jobs, not templates:
|
|
82
|
+
- **Nav**: sticky or static; glass OR solid OR invisible until scroll — match signature. Mobile drawer required when links collapse. Primary actions ≥44px.
|
|
83
|
+
- **Hero**: match pack (split / typographic / workspace shell / bento opener / story chapter 1). Dominant visual = abstract SVG, UI mock, grid, or type — never hotlinked photos.
|
|
84
|
+
- **Features**: alternate alignment, bento modules, or editorial callouts — not three identical icon cards unless the brief asks.
|
|
85
|
+
- **KPI / pricing**: product pack or pricing section only — never soup the marketing first viewport with KPIs.
|
|
86
|
+
- **Footer**: real product name + working relative links.
|
|
123
87
|
|
|
124
88
|
### Icons
|
|
125
|
-
Inline Lucide/Heroicons SVG only (stroke="currentColor" stroke-width="2" class="h-5 w-5"). Never emoji. Feature icons
|
|
89
|
+
Inline Lucide/Heroicons SVG only (stroke="currentColor" stroke-width="2" class="h-5 w-5"). Never emoji. Feature icons in rounded badges only when radius/signature allow.
|
|
126
90
|
|
|
127
|
-
### Interactions & polish (
|
|
128
|
-
-
|
|
129
|
-
-
|
|
130
|
-
-
|
|
131
|
-
-
|
|
132
|
-
-
|
|
133
|
-
- One <h1>; every section has a clear job; no dead href="#"; no lorem; no "Welcome to"
|
|
134
|
-
- Mentally check 360px and 1280px — grids collapse, type stays readable
|
|
91
|
+
### Interactions & polish (same write — do not iterate)
|
|
92
|
+
- Hover + focus-visible:ring-2 ring-offset-2 on controls; nav links transition-colors
|
|
93
|
+
- 2–3 purposeful motions max, matching signature motion
|
|
94
|
+
- body { background } matches scheme; gutters never flash wrong on dark pages
|
|
95
|
+
- One <h1>; every section one job; no dead href="#"; no lorem; no "Welcome to"
|
|
96
|
+
- Mentally check 360px and 1280px
|
|
135
97
|
|
|
136
98
|
### Automatic fails
|
|
137
|
-
Indigo/violet-on-white gradient cliché · Inter · emoji icons · hero-in-a-card · first-viewport KPI soup · flat unstyled sections · external raster images · template adjectives (revolutionary/seamless/cutting-edge/unleash/empower)`,
|
|
99
|
+
Indigo/violet-on-white gradient cliché · Inter · emoji icons · hero-in-a-card · first-viewport KPI soup on marketing packs · flat unstyled sections · external raster images · template adjectives (revolutionary/seamless/cutting-edge/unleash/empower) · default centered blur-orb hero when the brief asked for another pack/signature · three equal feature cards as the whole personality of the page`,
|
|
138
100
|
};
|
|
139
101
|
//# sourceMappingURL=designer.skill.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"designer.skill.js","sourceRoot":"","sources":["../../../src/agents/skills/designer.skill.ts"],"names":[],"mappings":";;;AAEa,QAAA,aAAa,GAAoB;IAC5C,IAAI,EAAE,UAAU;IAChB,WAAW,
|
|
1
|
+
{"version":3,"file":"designer.skill.js","sourceRoot":"","sources":["../../../src/agents/skills/designer.skill.ts"],"names":[],"mappings":";;;AAEa,QAAA,aAAa,GAAoB;IAC5C,IAAI,EAAE,UAAU;IAChB,WAAW,EACT,gIAAgI;IAClI,SAAS,EAAE,4DAA4D;IACvE,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2YA2F2X;CAC1Y,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-injection.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/skill-injection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAExE,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"skill-injection.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/skill-injection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAExE,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAWnF,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;CAClB;AAsBD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CA6BhG;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAsC9F;AAUD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAuBrE;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA6CxG;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,+BAA+B,CAAC,MAAM,GAAE,kBAAsC,IAE1F,SAAS,kBAAkB,EAC3B,UAAU,iBAAiB,KAC1B,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,UAAU,CAAA;CAAE,GAAG,SAAS,CAAC,CA0B9E"}
|
|
@@ -109,18 +109,24 @@ function clipBlock(block, max) {
|
|
|
109
109
|
* machine-readable contract, not only prose.
|
|
110
110
|
*/
|
|
111
111
|
function extractDesignTokens(brief) {
|
|
112
|
-
var _a, _b, _c, _d;
|
|
112
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
113
113
|
const accents = [...brief.matchAll(/#([0-9a-fA-F]{3,8})\b/g)].map((match) => `#${match[1]}`);
|
|
114
|
-
const pack = (_b = (_a = brief.match(
|
|
114
|
+
const pack = (_b = (_a = brief.match(build_plan_1.LAYOUT_PACK_PATTERN)) === null || _a === void 0 ? void 0 : _a[1]) === null || _b === void 0 ? void 0 : _b.toLowerCase();
|
|
115
115
|
const fontLine = (_d = (_c = brief.match(/(?:fonts?|typeface|typography)\s*[:=]?\s*([^.;\n]+)/i)) === null || _c === void 0 ? void 0 : _c[1]) === null || _d === void 0 ? void 0 : _d.trim();
|
|
116
|
+
const signature = (_f = (_e = brief.match(/signature\s*[:=]?\s*([^.;\n]+)/i)) === null || _e === void 0 ? void 0 : _e[1]) === null || _f === void 0 ? void 0 : _f.trim();
|
|
117
|
+
const radius = (_j = (_h = (_g = brief.match(/\bradius\s*[:=]?\s*(sharp|soft|pill)\b/i)) === null || _g === void 0 ? void 0 : _g[1]) === null || _h === void 0 ? void 0 : _h.toLowerCase()) !== null && _j !== void 0 ? _j : (_l = (_k = brief.match(/\b(sharp|soft|pill)\b/i)) === null || _k === void 0 ? void 0 : _k[1]) === null || _l === void 0 ? void 0 : _l.toLowerCase();
|
|
118
|
+
const density = (_p = (_o = (_m = brief.match(/\bdensity\s*[:=]?\s*(airy|comfortable|dense)\b/i)) === null || _m === void 0 ? void 0 : _m[1]) === null || _o === void 0 ? void 0 : _o.toLowerCase()) !== null && _p !== void 0 ? _p : (_r = (_q = brief.match(/\b(airy|comfortable|dense)\b/i)) === null || _q === void 0 ? void 0 : _q[1]) === null || _r === void 0 ? void 0 : _r.toLowerCase();
|
|
116
119
|
const lines = [
|
|
117
120
|
accents[0] ? `- accent: ${accents[0]}${accents[1] ? ` (hover/secondary: ${accents[1]})` : ''}` : undefined,
|
|
118
121
|
pack ? `- layout pack: ${pack}` : undefined,
|
|
119
122
|
fontLine ? `- fonts: ${fontLine}` : undefined,
|
|
123
|
+
signature ? `- signature: ${signature}` : undefined,
|
|
124
|
+
radius ? `- radius: ${radius}` : undefined,
|
|
125
|
+
density ? `- density: ${density}` : undefined,
|
|
120
126
|
].filter(Boolean);
|
|
121
127
|
if (lines.length === 0)
|
|
122
128
|
return undefined;
|
|
123
|
-
return `## Parsed design tokens (authoritative — use these literal values)\n${lines.join('\n')}\
|
|
129
|
+
return `## Parsed design tokens (authoritative — use these literal values)\n${lines.join('\n')}\nCompose from the layout pack + signature — do not fall back to a centered blur-orb SaaS template. Do not substitute Inter or indigo/violet defaults.`;
|
|
124
130
|
}
|
|
125
131
|
/**
|
|
126
132
|
* Cross-page consistency: subagents can't see previously published pages, so
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-injection.js","sourceRoot":"","sources":["../../../src/agents/skills/skill-injection.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"skill-injection.js","sourceRoot":"","sources":["../../../src/agents/skills/skill-injection.ts"],"names":[],"mappings":"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"}
|
package/dist/context.d.ts
CHANGED
|
@@ -5,6 +5,8 @@ import type { BuilderApiLogger } from './logger';
|
|
|
5
5
|
import type { AccountDbRepository } from './lib/account-dbs/account-db-repository';
|
|
6
6
|
import type { NotebookRepository } from './lib/notebooks/notebook-repository';
|
|
7
7
|
import type { SqlExecutor, SqlSchemaProvider } from './lib/sql-schema';
|
|
8
|
+
import type { CustomSkillRepository } from './agents/skills/custom-skill-repository';
|
|
9
|
+
import type { SessionVmBridge } from './agents/shared/session-vm-bridge';
|
|
8
10
|
import type { YjsPendingUpdatesRepository } from './lib/yjs-pending/yjs-pending-updates-repository';
|
|
9
11
|
export interface BuilderApiRepositories {
|
|
10
12
|
chatRepository: AIAgentServiceOptions['chatRepository'];
|
|
@@ -19,6 +21,8 @@ export interface BuilderApiContext {
|
|
|
19
21
|
readonly accountDbRepository?: AccountDbRepository;
|
|
20
22
|
readonly sqlSchemaProvider?: SqlSchemaProvider;
|
|
21
23
|
readonly sqlExecutor?: SqlExecutor;
|
|
24
|
+
readonly customSkillRepository?: CustomSkillRepository;
|
|
25
|
+
readonly sessionVmBridge?: SessionVmBridge;
|
|
22
26
|
readonly yjsPendingUpdatesRepository?: YjsPendingUpdatesRepository;
|
|
23
27
|
readonly redisClient?: RedisClientType;
|
|
24
28
|
}
|
package/dist/context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAC3F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAA;AAEnG,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;IACvD,iBAAiB,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,CAAA;CAC9D;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAA;IACrC,QAAQ,CAAC,YAAY,EAAE,sBAAsB,CAAA;IAC7C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IAChD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;IAClD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAA;IAClC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,2BAA2B,CAAA;IAClE,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAA;CACvC;AAID,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAEjE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAK9E;AAED,wBAAgB,oBAAoB,IAAI,iBAAiB,CAKxD;AAED,wBAAgB,eAAe,IAAI,cAAc,CAEhD;AAED,wBAAgB,yBAAyB,IAAI,sBAAsB,CAElE;AAED,wBAAgB,8BAA8B,IAAI,2BAA2B,CAM5E;AAED,wBAAgB,oBAAoB,IAAI,eAAe,GAAG,SAAS,CAElE"}
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAC3F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAA;AAEnG,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;IACvD,iBAAiB,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,CAAA;CAC9D;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAA;IACrC,QAAQ,CAAC,YAAY,EAAE,sBAAsB,CAAA;IAC7C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IAChD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;IAClD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAA;IAClC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IACtD,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAA;IAC1C,QAAQ,CAAC,2BAA2B,CAAC,EAAE,2BAA2B,CAAA;IAClE,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAA;CACvC;AAID,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAEjE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAK9E;AAED,wBAAgB,oBAAoB,IAAI,iBAAiB,CAKxD;AAED,wBAAgB,eAAe,IAAI,cAAc,CAEhD;AAED,wBAAgB,yBAAyB,IAAI,sBAAsB,CAElE;AAED,wBAAgB,8BAA8B,IAAI,2BAA2B,CAM5E;AAED,wBAAgB,oBAAoB,IAAI,eAAe,GAAG,SAAS,CAElE"}
|
package/dist/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";;AAiCA,oDAEC;AAED,wDAKC;AAED,oDAKC;AAED,0CAEC;AAED,8DAEC;AAED,wEAMC;AAED,oDAEC;AAtCD,IAAI,cAAc,GAA6B,IAAI,CAAA;AAEnD,SAAgB,oBAAoB,CAAC,GAAsB;IACzD,cAAc,GAAG,GAAG,CAAA;AACtB,CAAC;AAED,SAAgB,sBAAsB,CAAC,KAAiC;IACtE,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;IAC3D,CAAC;IACD,cAAc,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,KAAK,EAAE,CAAA;AAClD,CAAC;AAED,SAAgB,oBAAoB;IAClC,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;IAC3D,CAAC;IACD,OAAO,cAAc,CAAA;AACvB,CAAC;AAED,SAAgB,eAAe;IAC7B,OAAO,oBAAoB,EAAE,CAAC,YAAY,CAAA;AAC5C,CAAC;AAED,SAAgB,yBAAyB;IACvC,OAAO,oBAAoB,EAAE,CAAC,YAAY,CAAA;AAC5C,CAAC;AAED,SAAgB,8BAA8B;IAC5C,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAC,2BAA2B,CAAA;IACrE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACrE,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAgB,oBAAoB;IAClC,OAAO,oBAAoB,EAAE,CAAC,WAAW,CAAA;AAC3C,CAAC"}
|
|
@@ -7,6 +7,8 @@ import { type BuilderApiLogger } from './logger';
|
|
|
7
7
|
import type { AccountDbRepository } from './lib/account-dbs/account-db-repository';
|
|
8
8
|
import type { NotebookRepository } from './lib/notebooks/notebook-repository';
|
|
9
9
|
import type { SqlExecutor, SqlSchemaProvider } from './lib/sql-schema';
|
|
10
|
+
import type { CustomSkillRepository } from './agents/skills/custom-skill-repository';
|
|
11
|
+
import type { SessionVmBridge } from './agents/shared/session-vm-bridge';
|
|
10
12
|
import type { YjsPendingUpdatesRepository } from './lib/yjs-pending/yjs-pending-updates-repository';
|
|
11
13
|
/**
|
|
12
14
|
* Embedders must attach HTTP middleware that sets `req.userId` and `req.accountId`,
|
|
@@ -29,6 +31,10 @@ export interface CreateBuilderApiOptions {
|
|
|
29
31
|
accountDbRepository?: AccountDbRepository;
|
|
30
32
|
sqlSchemaProvider?: SqlSchemaProvider;
|
|
31
33
|
sqlExecutor?: SqlExecutor;
|
|
34
|
+
/** Account-defined generation skills (brand packs) merged over the built-in skills. */
|
|
35
|
+
customSkillRepository?: CustomSkillRepository;
|
|
36
|
+
/** Bridge to a per-session app VM (workspace, exec, preview). Absent = app tools report unavailable. */
|
|
37
|
+
sessionVmBridge?: SessionVmBridge;
|
|
32
38
|
yjsPendingUpdatesRepository?: YjsPendingUpdatesRepository;
|
|
33
39
|
}
|
|
34
40
|
export interface BuilderApiInstance {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-builder-api.d.ts","sourceRoot":"","sources":["../src/create-builder-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAEjE,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAGjF,OAAO,
|
|
1
|
+
{"version":3,"file":"create-builder-api.d.ts","sourceRoot":"","sources":["../src/create-builder-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAEjE,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAGjF,OAAO,EAGH,KAAK,sBAAsB,EAC9B,MAAM,WAAW,CAAA;AAClB,OAAO,EAA2E,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAEzH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAClF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAA;AAInG;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,gBAAgB,CAAA;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,YAAY,EAAE,sBAAsB,GAAG;QACrC,kBAAkB,EAAE,qBAAqB,CAAC,oBAAoB,CAAC,CAAA;QAC/D,qBAAqB,EAAE,qBAAqB,CAAC,uBAAuB,CAAC,CAAA;QACrE,4BAA4B,EAAE,qBAAqB,CAAC,8BAA8B,CAAC,CAAA;KACpF,CAAA;IACD,kBAAkB,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IACnD,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,CAAA;IAChD,MAAM,CAAC,EAAE,gBAAgB,CAAA;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;IACzC,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,uFAAuF;IACvF,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IAC7C,wGAAwG;IACxG,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,2BAA2B,CAAC,EAAE,2BAA2B,CAAA;CAC1D;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,EAAE,cAAc,CAAA;IAC5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACtB;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAmFpG"}
|
|
@@ -38,6 +38,8 @@ async function createBuilderApi(options) {
|
|
|
38
38
|
accountDbRepository: options.accountDbRepository,
|
|
39
39
|
sqlSchemaProvider: options.sqlSchemaProvider,
|
|
40
40
|
sqlExecutor: options.sqlExecutor,
|
|
41
|
+
customSkillRepository: options.customSkillRepository,
|
|
42
|
+
sessionVmBridge: options.sessionVmBridge,
|
|
41
43
|
yjsPendingUpdatesRepository: options.yjsPendingUpdatesRepository,
|
|
42
44
|
redisClient: realtimeServices === null || realtimeServices === void 0 ? void 0 : realtimeServices.redisClient,
|
|
43
45
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-builder-api.js","sourceRoot":"","sources":["../src/create-builder-api.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"create-builder-api.js","sourceRoot":"","sources":["../src/create-builder-api.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,6 +12,10 @@ export { parseNotebookDocumentId, buildNotebookDocumentId, } from './realtime/no
|
|
|
12
12
|
export type { SqlDatabaseSchema, SqlTableColumn, SqlTableSchema, SqlSchemaProvider, SqlQueryResult, } from './lib/sql-schema';
|
|
13
13
|
export { AccountDbType, type AccountDbConnection, type AccountDbRecord, type AccountDbSummary, type AccountDbTypeValue, type CreateAccountDbInput, type UpdateAccountDbInput, } from './lib/account-dbs/account-db';
|
|
14
14
|
export type { AccountDbRepository } from './lib/account-dbs/account-db-repository';
|
|
15
|
+
export type { CustomSkillRepository, CustomSkillRecord, CreateCustomSkillInput, UpdateCustomSkillInput, } from './agents/skills/custom-skill-repository';
|
|
16
|
+
export { GENERATION_SKILLS, type GenerationSkill } from './agents/skills';
|
|
17
|
+
export type { SessionVmBridge, AppVmInfo, AppVmFile, AppVmExecRequest, AppVmExecResult, } from './agents/shared/session-vm-bridge';
|
|
18
|
+
export { writeAppFilesTool, runAppCommandTool } from './agents/shared/app-vm.tools';
|
|
15
19
|
export type { NotebookRepository, NotebookRecord, NotebookSummary, CreateNotebookInput, UpdateNotebookInput, } from './lib/notebooks/notebook-repository';
|
|
16
20
|
export type { YjsPendingUpdatesRepository, YjsPendingUpdate, AppendYjsPendingUpdateInput, } from './lib/yjs-pending/yjs-pending-updates-repository';
|
|
17
21
|
export { NOTEBOOK_CONTENT_VERSION, createEmptyNotebookContent, parseNotebookContent, serializeNotebookContent, validateNotebookContentString, type NotebookContent, } from './lib/notebooks/notebook-content';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9G,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,gBAAgB,GACtB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,GAC5B,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC9E,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,GAC/B,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,iCAAiC,CAAA;AACxC,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,cAAc,GACf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,8BAA8B,CAAA;AACrC,YAAY,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAClF,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qCAAqC,CAAA;AAC5C,YAAY,EACV,2BAA2B,EAC3B,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,kDAAkD,CAAA;AACzD,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,KAAK,eAAe,GACrB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,2BAA2B,GAC5B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,mCAAmC,EAAE,MAAM,gDAAgD,CAAA;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9G,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,gBAAgB,GACtB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,GAC5B,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC9E,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,GAC/B,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,iCAAiC,CAAA;AACxC,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,cAAc,GACf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,8BAA8B,CAAA;AACrC,YAAY,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAClF,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yCAAyC,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACzE,YAAY,EACV,eAAe,EACf,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,eAAe,GAChB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AACnF,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qCAAqC,CAAA;AAC5C,YAAY,EACV,2BAA2B,EAC3B,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,kDAAkD,CAAA;AACzD,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,KAAK,eAAe,GACrB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,2BAA2B,GAC5B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,mCAAmC,EAAE,MAAM,gDAAgD,CAAA;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.updateSessionArtifactsSubagentTool = exports.publishSessionArtifactsSubagentTool = exports.createNotebookAgent = exports.createContentGeneratorAgent = exports.validateNotebookContentString = exports.serializeNotebookContent = exports.parseNotebookContent = exports.createEmptyNotebookContent = exports.NOTEBOOK_CONTENT_VERSION = exports.AccountDbType = exports.buildNotebookDocumentId = exports.parseNotebookDocumentId = exports.buildSessionArtifactDocumentId = exports.parseSessionArtifactDocumentId = exports.CHAT_NOT_FOUND = exports.loadChatForUser = exports.hasChatAccess = exports.assertSessionAccess = exports.initRealtime = exports.AgentServiceStore = exports.createSetupAgents = exports.setupAgents = exports.getBuilderApiRouter = exports.getAgentService = exports.getBuilderApiContext = exports.patchBuilderApiContext = exports.setBuilderApiContext = exports.resolveBuilderApiLogger = exports.getBuilderApiLogger = exports.configureBuilderApiLogger = exports.DEFAULT_AI_MODEL = exports.agentDepsFromConfig = exports.createBuilderApi = void 0;
|
|
3
|
+
exports.updateSessionArtifactsSubagentTool = exports.publishSessionArtifactsSubagentTool = exports.createNotebookAgent = exports.createContentGeneratorAgent = exports.validateNotebookContentString = exports.serializeNotebookContent = exports.parseNotebookContent = exports.createEmptyNotebookContent = exports.NOTEBOOK_CONTENT_VERSION = exports.runAppCommandTool = exports.writeAppFilesTool = exports.GENERATION_SKILLS = exports.AccountDbType = exports.buildNotebookDocumentId = exports.parseNotebookDocumentId = exports.buildSessionArtifactDocumentId = exports.parseSessionArtifactDocumentId = exports.CHAT_NOT_FOUND = exports.loadChatForUser = exports.hasChatAccess = exports.assertSessionAccess = exports.initRealtime = exports.AgentServiceStore = exports.createSetupAgents = exports.setupAgents = exports.getBuilderApiRouter = exports.getAgentService = exports.getBuilderApiContext = exports.patchBuilderApiContext = exports.setBuilderApiContext = exports.resolveBuilderApiLogger = exports.getBuilderApiLogger = exports.configureBuilderApiLogger = exports.DEFAULT_AI_MODEL = exports.agentDepsFromConfig = exports.createBuilderApi = void 0;
|
|
4
4
|
var create_builder_api_1 = require("./create-builder-api");
|
|
5
5
|
Object.defineProperty(exports, "createBuilderApi", { enumerable: true, get: function () { return create_builder_api_1.createBuilderApi; } });
|
|
6
6
|
var builder_api_config_1 = require("./builder-api-config");
|
|
@@ -37,6 +37,11 @@ Object.defineProperty(exports, "parseNotebookDocumentId", { enumerable: true, ge
|
|
|
37
37
|
Object.defineProperty(exports, "buildNotebookDocumentId", { enumerable: true, get: function () { return notebook_document_id_1.buildNotebookDocumentId; } });
|
|
38
38
|
var account_db_1 = require("./lib/account-dbs/account-db");
|
|
39
39
|
Object.defineProperty(exports, "AccountDbType", { enumerable: true, get: function () { return account_db_1.AccountDbType; } });
|
|
40
|
+
var skills_1 = require("./agents/skills");
|
|
41
|
+
Object.defineProperty(exports, "GENERATION_SKILLS", { enumerable: true, get: function () { return skills_1.GENERATION_SKILLS; } });
|
|
42
|
+
var app_vm_tools_1 = require("./agents/shared/app-vm.tools");
|
|
43
|
+
Object.defineProperty(exports, "writeAppFilesTool", { enumerable: true, get: function () { return app_vm_tools_1.writeAppFilesTool; } });
|
|
44
|
+
Object.defineProperty(exports, "runAppCommandTool", { enumerable: true, get: function () { return app_vm_tools_1.runAppCommandTool; } });
|
|
40
45
|
var notebook_content_1 = require("./lib/notebooks/notebook-content");
|
|
41
46
|
Object.defineProperty(exports, "NOTEBOOK_CONTENT_VERSION", { enumerable: true, get: function () { return notebook_content_1.NOTEBOOK_CONTENT_VERSION; } });
|
|
42
47
|
Object.defineProperty(exports, "createEmptyNotebookContent", { enumerable: true, get: function () { return notebook_content_1.createEmptyNotebookContent; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,2DAA8G;AAArG,sHAAA,gBAAgB,OAAA;AACzB,2DAK6B;AAJ3B,yHAAA,mBAAmB,OAAA;AACnB,sHAAA,gBAAgB,OAAA;AAIlB,mCAKiB;AAJf,mHAAA,yBAAyB,OAAA;AACzB,6GAAA,mBAAmB,OAAA;AACnB,iHAAA,uBAAuB,OAAA;AAGzB,qCAOkB;AANhB,+GAAA,oBAAoB,OAAA;AACpB,iHAAA,sBAAsB,OAAA;AACtB,+GAAA,oBAAoB,OAAA;AACpB,0GAAA,eAAe,OAAA;AAIjB,mCAA8C;AAArC,6GAAA,mBAAmB,OAAA;AAC5B,mCAAyD;AAAhD,qGAAA,WAAW,OAAA;AAAE,2GAAA,iBAAiB,OAAA;AACvC,uDAAsD;AAA7C,qHAAA,iBAAiB,OAAA;AAC1B,0DAA8E;AAArE,6GAAA,YAAY,OAAA;AACrB,iDAK0B;AAJxB,kHAAA,mBAAmB,OAAA;AACnB,4GAAA,aAAa,OAAA;AACb,8GAAA,eAAe,OAAA;AACf,6GAAA,cAAc,OAAA;AAEhB,wFAGgD;AAF9C,8IAAA,8BAA8B,OAAA;AAC9B,8IAAA,8BAA8B,OAAA;AAEhC,wEAGwC;AAFtC,+HAAA,uBAAuB,OAAA;AACvB,+HAAA,uBAAuB,OAAA;AASzB,2DAQqC;AAPnC,2GAAA,aAAa,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,2DAA8G;AAArG,sHAAA,gBAAgB,OAAA;AACzB,2DAK6B;AAJ3B,yHAAA,mBAAmB,OAAA;AACnB,sHAAA,gBAAgB,OAAA;AAIlB,mCAKiB;AAJf,mHAAA,yBAAyB,OAAA;AACzB,6GAAA,mBAAmB,OAAA;AACnB,iHAAA,uBAAuB,OAAA;AAGzB,qCAOkB;AANhB,+GAAA,oBAAoB,OAAA;AACpB,iHAAA,sBAAsB,OAAA;AACtB,+GAAA,oBAAoB,OAAA;AACpB,0GAAA,eAAe,OAAA;AAIjB,mCAA8C;AAArC,6GAAA,mBAAmB,OAAA;AAC5B,mCAAyD;AAAhD,qGAAA,WAAW,OAAA;AAAE,2GAAA,iBAAiB,OAAA;AACvC,uDAAsD;AAA7C,qHAAA,iBAAiB,OAAA;AAC1B,0DAA8E;AAArE,6GAAA,YAAY,OAAA;AACrB,iDAK0B;AAJxB,kHAAA,mBAAmB,OAAA;AACnB,4GAAA,aAAa,OAAA;AACb,8GAAA,eAAe,OAAA;AACf,6GAAA,cAAc,OAAA;AAEhB,wFAGgD;AAF9C,8IAAA,8BAA8B,OAAA;AAC9B,8IAAA,8BAA8B,OAAA;AAEhC,wEAGwC;AAFtC,+HAAA,uBAAuB,OAAA;AACvB,+HAAA,uBAAuB,OAAA;AASzB,2DAQqC;AAPnC,2GAAA,aAAa,OAAA;AAef,0CAAyE;AAAhE,2GAAA,iBAAiB,OAAA;AAQ1B,6DAAmF;AAA1E,iHAAA,iBAAiB,OAAA;AAAE,iHAAA,iBAAiB,OAAA;AAa7C,qEAOyC;AANvC,4HAAA,wBAAwB,OAAA;AACxB,8HAAA,0BAA0B,OAAA;AAC1B,wHAAA,oBAAoB,OAAA;AACpB,4HAAA,wBAAwB,OAAA;AACxB,iIAAA,6BAA6B,OAAA;AAG/B,4EAEyC;AADvC,sIAAA,2BAA2B,OAAA;AAE7B,0DAA6D;AAApD,qHAAA,mBAAmB,OAAA;AAC5B,iGAAoG;AAA3F,qJAAA,mCAAmC,OAAA;AAC5C,+FAAkG;AAAzF,mJAAA,kCAAkC,OAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const NOTEBOOK_CONTENT_FILENAME = "content.json";
|
|
2
|
+
export declare const NOTEBOOK_YJS_STATE_FILENAME = "yjs.state";
|
|
3
|
+
/** Relative path for a point-in-time content snapshot beside content.json. */
|
|
4
|
+
export declare function notebookContentSnapshotPath(at: Date): string;
|
|
5
|
+
export declare function isNotebookSnapshotPath(relativePath: string): boolean;
|
|
6
|
+
/** Sidecar files managed by the notebook storage layer (not user-facing content). */
|
|
7
|
+
export declare function isNotebookStorageSidecar(relativePath: string): boolean;
|
|
8
|
+
//# sourceMappingURL=notebook-storage-paths.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-storage-paths.d.ts","sourceRoot":"","sources":["../../../src/lib/notebooks/notebook-storage-paths.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,yBAAyB,iBAAiB,CAAA;AACvD,eAAO,MAAM,2BAA2B,cAAc,CAAA;AAEtD,8EAA8E;AAC9E,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,IAAI,GAAG,MAAM,CAE5D;AAED,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAKpE;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAItE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NOTEBOOK_YJS_STATE_FILENAME = exports.NOTEBOOK_CONTENT_FILENAME = void 0;
|
|
4
|
+
exports.notebookContentSnapshotPath = notebookContentSnapshotPath;
|
|
5
|
+
exports.isNotebookSnapshotPath = isNotebookSnapshotPath;
|
|
6
|
+
exports.isNotebookStorageSidecar = isNotebookStorageSidecar;
|
|
7
|
+
const named_snapshot_paths_1 = require("../object-storage/named-snapshot-paths");
|
|
8
|
+
exports.NOTEBOOK_CONTENT_FILENAME = 'content.json';
|
|
9
|
+
exports.NOTEBOOK_YJS_STATE_FILENAME = 'yjs.state';
|
|
10
|
+
/** Relative path for a point-in-time content snapshot beside content.json. */
|
|
11
|
+
function notebookContentSnapshotPath(at) {
|
|
12
|
+
return `${exports.NOTEBOOK_CONTENT_FILENAME}${(0, named_snapshot_paths_1.namedSnapshotSuffix)(at)}`;
|
|
13
|
+
}
|
|
14
|
+
function isNotebookSnapshotPath(relativePath) {
|
|
15
|
+
return (relativePath.startsWith(`${exports.NOTEBOOK_CONTENT_FILENAME}${named_snapshot_paths_1.NAMED_SNAPSHOT_SEGMENT}`) &&
|
|
16
|
+
(0, named_snapshot_paths_1.hasNamedSnapshotTimestamp)(relativePath));
|
|
17
|
+
}
|
|
18
|
+
/** Sidecar files managed by the notebook storage layer (not user-facing content). */
|
|
19
|
+
function isNotebookStorageSidecar(relativePath) {
|
|
20
|
+
return (relativePath === exports.NOTEBOOK_YJS_STATE_FILENAME || isNotebookSnapshotPath(relativePath));
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=notebook-storage-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-storage-paths.js","sourceRoot":"","sources":["../../../src/lib/notebooks/notebook-storage-paths.ts"],"names":[],"mappings":";;;AAUA,kEAEC;AAED,wDAKC;AAGD,4DAIC;AA1BD,iFAI+C;AAElC,QAAA,yBAAyB,GAAG,cAAc,CAAA;AAC1C,QAAA,2BAA2B,GAAG,WAAW,CAAA;AAEtD,8EAA8E;AAC9E,SAAgB,2BAA2B,CAAC,EAAQ;IAClD,OAAO,GAAG,iCAAyB,GAAG,IAAA,0CAAmB,EAAC,EAAE,CAAC,EAAE,CAAA;AACjE,CAAC;AAED,SAAgB,sBAAsB,CAAC,YAAoB;IACzD,OAAO,CACL,YAAY,CAAC,UAAU,CAAC,GAAG,iCAAyB,GAAG,6CAAsB,EAAE,CAAC;QAChF,IAAA,gDAAyB,EAAC,YAAY,CAAC,CACxC,CAAA;AACH,CAAC;AAED,qFAAqF;AACrF,SAAgB,wBAAwB,CAAC,YAAoB;IAC3D,OAAO,CACL,YAAY,KAAK,mCAA2B,IAAI,sBAAsB,CAAC,YAAY,CAAC,CACrF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as Y from 'yjs';
|
|
2
|
+
import { type NotebookContent } from './notebook-content';
|
|
3
|
+
export declare function hydrateNotebookDocFromContent(doc: Y.Doc, content: NotebookContent): void;
|
|
4
|
+
export declare function serializeNotebookContentFromDoc(doc: Y.Doc, options: Pick<NotebookContent, 'title' | 'metadata'>): string;
|
|
5
|
+
export declare function resolveNotebookContentEnvelope(accountId: string, notebookId: string, readContent: (accountId: string, notebookId: string) => Promise<string | null>, fallbackTitle: string): Promise<Pick<NotebookContent, 'title' | 'metadata'>>;
|
|
6
|
+
//# sourceMappingURL=notebook-yjs-content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-yjs-content.d.ts","sourceRoot":"","sources":["../../../src/lib/notebooks/notebook-yjs-content.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AACxB,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,oBAAoB,CAAA;AAK3B,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,eAAe,GAAG,IAAI,CAOxF;AAED,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,UAAU,CAAC,GACnD,MAAM,CAQR;AAED,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EAC9E,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC,CActD"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hydrateNotebookDocFromContent = hydrateNotebookDocFromContent;
|
|
4
|
+
exports.serializeNotebookContentFromDoc = serializeNotebookContentFromDoc;
|
|
5
|
+
exports.resolveNotebookContentEnvelope = resolveNotebookContentEnvelope;
|
|
6
|
+
const notebook_content_1 = require("./notebook-content");
|
|
7
|
+
const notebook_yjs_blocks_1 = require("./notebook-yjs-blocks");
|
|
8
|
+
const NOTEBOOK_XML_FIELD = 'xml';
|
|
9
|
+
function hydrateNotebookDocFromContent(doc, content) {
|
|
10
|
+
const fragment = doc.getXmlFragment(NOTEBOOK_XML_FIELD);
|
|
11
|
+
const blocks = content.blocks;
|
|
12
|
+
if (blocks.length === 0) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
fragment.insert(0, blocks.map(notebook_yjs_blocks_1.tipTapNodeToYXml));
|
|
16
|
+
}
|
|
17
|
+
function serializeNotebookContentFromDoc(doc, options) {
|
|
18
|
+
const blocks = (0, notebook_yjs_blocks_1.readFragmentBlocks)(doc.getXmlFragment(NOTEBOOK_XML_FIELD));
|
|
19
|
+
return (0, notebook_content_1.serializeNotebookContent)({
|
|
20
|
+
version: 1,
|
|
21
|
+
title: options.title,
|
|
22
|
+
blocks,
|
|
23
|
+
...(options.metadata ? { metadata: options.metadata } : {}),
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
async function resolveNotebookContentEnvelope(accountId, notebookId, readContent, fallbackTitle) {
|
|
27
|
+
const raw = await readContent(accountId, notebookId);
|
|
28
|
+
if (!raw) {
|
|
29
|
+
return { title: fallbackTitle };
|
|
30
|
+
}
|
|
31
|
+
try {
|
|
32
|
+
const parsed = (0, notebook_content_1.parseNotebookContent)(raw);
|
|
33
|
+
return {
|
|
34
|
+
title: parsed.title,
|
|
35
|
+
...(parsed.metadata ? { metadata: parsed.metadata } : {}),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
catch (_a) {
|
|
39
|
+
return { title: fallbackTitle };
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=notebook-yjs-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-yjs-content.js","sourceRoot":"","sources":["../../../src/lib/notebooks/notebook-yjs-content.ts"],"names":[],"mappings":";;AAUA,sEAOC;AAED,0EAWC;AAED,wEAmBC;AAlDD,yDAI2B;AAC3B,+DAA6F;AAE7F,MAAM,kBAAkB,GAAG,KAAK,CAAA;AAEhC,SAAgB,6BAA6B,CAAC,GAAU,EAAE,OAAwB;IAChF,MAAM,QAAQ,GAAG,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAA;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAsB,CAAA;IAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAM;IACR,CAAC;IACD,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,sCAAgB,CAAC,CAAC,CAAA;AAClD,CAAC;AAED,SAAgB,+BAA+B,CAC7C,GAAU,EACV,OAAoD;IAEpD,MAAM,MAAM,GAAG,IAAA,wCAAkB,EAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAA;IACzE,OAAO,IAAA,2CAAwB,EAAC;QAC9B,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM;QACN,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5D,CAAC,CAAA;AACJ,CAAC;AAEM,KAAK,UAAU,8BAA8B,CAClD,SAAiB,EACjB,UAAkB,EAClB,WAA8E,EAC9E,aAAqB;IAErB,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IACpD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA;IACjC,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,uCAAoB,EAAC,GAAG,CAAC,CAAA;QACxC,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1D,CAAA;IACH,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA;IACjC,CAAC;AACH,CAAC"}
|
|
@@ -5,6 +5,7 @@ export declare function sessionArtifactNamedSnapshotKey(accountId: string, sessi
|
|
|
5
5
|
export declare function notebookPrefix(accountId: string, notebookId: string): string;
|
|
6
6
|
export declare function notebookContentKey(accountId: string, notebookId: string): string;
|
|
7
7
|
export declare function notebookYjsStateKey(accountId: string, notebookId: string): string;
|
|
8
|
+
export declare function notebookNamedSnapshotKey(accountId: string, notebookId: string, at?: Date): string;
|
|
8
9
|
export declare function isSessionArtifactUserFacingKey(prefix: string, key: string): boolean;
|
|
9
10
|
export declare function relativeSessionArtifactPath(prefix: string, key: string): string;
|
|
10
11
|
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/lib/object-storage/keys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/lib/object-storage/keys.ts"],"names":[],"mappings":"AAeA,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAED,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAED,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,EAAE,GAAE,IAAiB,GACpB,MAAM,CAER;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAE5E;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEhF;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,EAAE,GAAE,IAAiB,GACpB,MAAM,CAER;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAMnF;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/E"}
|