@theoremjs/studio 0.0.0-stage → 0.3.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/LICENSE +21 -0
- package/README.md +295 -2
- package/agreement.d.ts +14 -0
- package/agreement.js +80 -0
- package/asks.d.ts +47 -0
- package/asks.js +54 -0
- package/browser-connection.d.ts +49 -0
- package/browser-connection.js +215 -0
- package/browser-engine.d.ts +11 -0
- package/browser-engine.js +11 -0
- package/browser-execution.d.ts +6 -0
- package/browser-execution.js +18 -0
- package/browser-live.d.ts +4 -0
- package/browser-live.js +132 -0
- package/browser-transport.d.ts +33 -0
- package/browser-transport.js +229 -0
- package/browser.d.ts +4 -0
- package/browser.js +4 -0
- package/canonical.d.ts +10 -0
- package/canonical.js +25 -0
- package/compile-workspace.d.ts +28 -0
- package/compile-workspace.js +295 -0
- package/compile.d.ts +65 -0
- package/compile.js +1605 -0
- package/concierge-demo.d.ts +17 -0
- package/concierge-demo.js +1230 -0
- package/conversation-key.d.ts +5 -0
- package/conversation-key.js +10 -0
- package/decision-example-images.d.ts +30 -0
- package/decision-example-images.js +30 -0
- package/deno.json +3 -0
- package/draft.d.ts +407 -0
- package/draft.js +505 -0
- package/editors.d.ts +29 -0
- package/editors.js +51 -0
- package/example-embedding-files.d.ts +11 -0
- package/example-embedding-files.js +20 -0
- package/example.d.ts +36 -0
- package/example.js +357 -0
- package/guardrail-probe.d.ts +100 -0
- package/guardrail-probe.js +722 -0
- package/held-credentials.d.ts +28 -0
- package/held-credentials.js +87 -0
- package/installed.mjs +40 -0
- package/lent-keys.d.ts +122 -0
- package/lent-keys.js +47 -0
- package/line-diff.d.ts +15 -0
- package/line-diff.js +41 -0
- package/live-connection.d.ts +22 -0
- package/live-connection.js +27 -0
- package/live-session-bridge.d.ts +15 -0
- package/live-session-bridge.js +202 -0
- package/map-line.d.ts +19 -0
- package/map-line.js +42 -0
- package/map.d.ts +154 -0
- package/map.js +525 -0
- package/media-accept.d.ts +19 -0
- package/media-accept.js +65 -0
- package/mod.d.ts +39 -0
- package/mod.js +33 -0
- package/origins.d.ts +52 -0
- package/origins.js +165 -0
- package/package.json +85 -4
- package/page/assets/Banner-BISz3nXA.js +2 -0
- package/page/assets/BottomSheet-BwfBDtje.js +1 -0
- package/page/assets/Card-Lp-0P5eL.js +1 -0
- package/page/assets/CardWall-CBRLdDZW.js +1 -0
- package/page/assets/Center-nHS1JSux.js +1 -0
- package/page/assets/CheckboxInput-Cj5pk-KI.js +2 -0
- package/page/assets/CodeBlock-C7XJ4ioE.js +51 -0
- package/page/assets/CollapsibleGroup-N7_SOjbm.js +2 -0
- package/page/assets/ContextMenu-CBu9H-9H.js +2 -0
- package/page/assets/DateInput-BGrQ5tPC.js +1 -0
- package/page/assets/Dialog-DELWQo-v.js +1 -0
- package/page/assets/EmptyState-C8W4JKBZ.js +1 -0
- package/page/assets/HoverCard-D1Y1ltWQ.js +1 -0
- package/page/assets/Icon-JrysT8aU.js +3 -0
- package/page/assets/IconAlertTriangle-BqAEqqdU.js +1 -0
- package/page/assets/IconButton-DlOGzJIX.js +1 -0
- package/page/assets/IconEye-BB5aY-wQ.js +1 -0
- package/page/assets/IconFileText-6zOFKKrF.js +1 -0
- package/page/assets/IconSearch-BTx66a40.js +1 -0
- package/page/assets/IconShield-DDOh7Gr5.js +1 -0
- package/page/assets/ItemSwipeLayer-Ckn4X6h9.js +1 -0
- package/page/assets/PaneState-BvA2tLQg.js +1 -0
- package/page/assets/PaneState-eUzUkNE8.css +1 -0
- package/page/assets/ScrollableArea-Ckugdj1N.js +1 -0
- package/page/assets/Section-DJ97F7QE.js +1 -0
- package/page/assets/SegmentedControlItem-h-aaXzyS.js +1 -0
- package/page/assets/SidePanel-BL32abk8.js +1 -0
- package/page/assets/StackItem-CQviqAfM.js +1 -0
- package/page/assets/Text-bum6zWWx.js +2 -0
- package/page/assets/TimestampHoverCard-DQIG0RZF.js +1 -0
- package/page/assets/ToolResultCharts-CgshSv9Q.js +1 -0
- package/page/assets/Tooltip-BH9xiRMl.js +1 -0
- package/page/assets/TraceInspector-_yZiz05W.js +1 -0
- package/page/assets/TraceOverview-BPO-HIYK.js +57 -0
- package/page/assets/VStack-CkVMcNiK.js +1 -0
- package/page/assets/_virtual_studio-type-sources-ByxqQaOG.js +12936 -0
- package/page/assets/arrive-DvbqpeRS.js +1 -0
- package/page/assets/browser-engine-CYq9DQAM.js +9 -0
- package/page/assets/browser-transport-D-2jDYe7.js +47 -0
- package/page/assets/codicon-DF1abBS2.ttf +0 -0
- package/page/assets/compile-egress-BSxOdX4K.js +23 -0
- package/page/assets/container.stylex-BmOi-8DQ.js +1 -0
- package/page/assets/createReactComponent-CZwsv6DD.js +1 -0
- package/page/assets/decision-example-images-CZGr7YIT.js +1 -0
- package/page/assets/devWarning-DxuplmRl.js +1 -0
- package/page/assets/editor-DjpsE8to.css +1 -0
- package/page/assets/editor.api-Cd3ViPQa.js +908 -0
- package/page/assets/editor.worker-6GY8RhDc.js +1 -0
- package/page/assets/editor.worker-BmdWdrHZ.js +33 -0
- package/page/assets/editors-BJX_S59A.js +1 -0
- package/page/assets/egress-automata-B5ZGE1mT.js +1 -0
- package/page/assets/embedding-space-view-CfQBPDxD.js +140 -0
- package/page/assets/encode-files-Bc3HJyAh.js +1 -0
- package/page/assets/export-agent-C3yyzXH8.js +43 -0
- package/page/assets/figtree-latin-400-normal-BD4aNku5.woff +0 -0
- package/page/assets/figtree-latin-400-normal-g7Dtegnw.woff2 +0 -0
- package/page/assets/figtree-latin-500-normal-BWnGEVsr.woff2 +0 -0
- package/page/assets/figtree-latin-500-normal-B_yy1phn.woff +0 -0
- package/page/assets/figtree-latin-600-normal-BM_oTo4n.woff +0 -0
- package/page/assets/figtree-latin-600-normal-Cv_xCTDl.woff2 +0 -0
- package/page/assets/figtree-latin-700-normal-BCCt2T1q.woff +0 -0
- package/page/assets/figtree-latin-700-normal-th6qEP7c.woff2 +0 -0
- package/page/assets/focusOutline.stylex-BT0kfa4t.js +1 -0
- package/page/assets/focusableSelector-DXZeMU85.js +1 -0
- package/page/assets/groupStyles-C7Ter7zC.js +1 -0
- package/page/assets/guardrail-tester-Gut5xK4a.js +9 -0
- package/page/assets/host-patterns-C9RMP16Q.js +1 -0
- package/page/assets/index-CvvmFKgS.js +105 -0
- package/page/assets/index-DOaHlqBo.css +1 -0
- package/page/assets/isRtlElement-BG33-k_H.js +1 -0
- package/page/assets/labels-provider-4TIWDvsE.js +3 -0
- package/page/assets/lent-keys-C32ems-I.js +1 -0
- package/page/assets/live-ingress-lDUGPwth.js +1 -0
- package/page/assets/live-messages-CnkL4GWi.js +1 -0
- package/page/assets/mergeProps-ptS-gIMz.js +1 -0
- package/page/assets/padding.stylex-B76907Zf.js +1 -0
- package/page/assets/preload-helper-DpV6A1kQ.js +1 -0
- package/page/assets/reader-BOCCYaRp.js +7 -0
- package/page/assets/register-CDgivxvX.js +2 -0
- package/page/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/page/assets/schemas-BQ9Jydzb.js +56 -0
- package/page/assets/shaped-data-BcarWqd5.js +16 -0
- package/page/assets/sharedResizeObserver-4U9Xq5Oq.js +1 -0
- package/page/assets/stub-DhdcU_Ew.js +471 -0
- package/page/assets/studio-code-pane-C_SAbcOa.js +8 -0
- package/page/assets/studio-console-DZwlEsvr.js +3 -0
- package/page/assets/studio-decision-B0FnCAXA.js +1 -0
- package/page/assets/studio-embedding-CmA51HVo.js +2 -0
- package/page/assets/studio-host-console-By7hqu2l.js +2 -0
- package/page/assets/studio-live-BrcVQcyV.js +1 -0
- package/page/assets/studio-map-B_xSia-z.js +1 -0
- package/page/assets/studio-map-Bb06Tw1F.css +1 -0
- package/page/assets/studio-monaco-CbKf90i6.css +1 -0
- package/page/assets/studio-monaco-xfyfezQS.js +34 -0
- package/page/assets/studio-ts.worker-B-EXG4Sv.js +67741 -0
- package/page/assets/studio-ts.worker-BXtW3z-O.js +1 -0
- package/page/assets/studio-type-checker-BOvxudki.js +23 -0
- package/page/assets/themeProps-3IqahpCr.js +1 -0
- package/page/assets/tokens.stylex-DkHf0P9C.js +1 -0
- package/page/assets/tool-schema-idaOe2nI.js +18 -0
- package/page/assets/trace-patterns-DnYJa0nI.js +1 -0
- package/page/assets/trace-record-C3zNksA_.js +1 -0
- package/page/assets/trace-schema-9CdEyG6Q.js +1 -0
- package/page/assets/tree-DqyAMsbI.js +3 -0
- package/page/assets/turn-client-Du3Um3Mg.js +2 -0
- package/page/assets/types-BhfXQCLx.js +1 -0
- package/page/assets/typescript-20GgZ8PJ.js +1 -0
- package/page/assets/use-one-call-Hcs8YBp1.js +1 -0
- package/page/assets/useAdaptivePresentation-BzmPCddb.js +1 -0
- package/page/assets/useClipboard-BgGRxRMJ.js +1 -0
- package/page/assets/useContainerReveal-BFy8N_QU.js +1 -0
- package/page/assets/useDevWarning-Z9SoixOP.js +1 -0
- package/page/assets/useLayerDismissal-B_G7IWpC.js +1 -0
- package/page/assets/useMediaQuery-BCT0NUeZ.js +1 -0
- package/page/assets/useScrollLock-Dyf6PHJt.js +1 -0
- package/page/assets/useScrollableArea-0NzdiBCq.js +1 -0
- package/page/assets/useTooltip-CJM_xhLB.js +1 -0
- package/page/assets/workspace-DZALqEDX.js +1 -0
- package/page/assets/zip-DTcEfps6.js +1 -0
- package/page/index.html +90 -0
- package/page.mjs +49 -0
- package/people.d.ts +87 -0
- package/people.js +110 -0
- package/policy.d.ts +43 -0
- package/policy.js +102 -0
- package/ports.d.mts +32 -0
- package/ports.mjs +85 -0
- package/probe-battery.d.ts +13 -0
- package/probe-battery.js +404 -0
- package/providers.d.ts +149 -0
- package/providers.js +306 -0
- package/read-source.d.ts +48 -0
- package/read-source.js +1301 -0
- package/read-steps.d.ts +23 -0
- package/read-steps.js +2 -0
- package/reader.d.ts +11 -0
- package/reader.js +11 -0
- package/registrations.d.ts +83 -0
- package/registrations.js +1 -0
- package/requirements.d.ts +22 -0
- package/requirements.js +38 -0
- package/run-payload-core.d.ts +28 -0
- package/run-payload-core.js +123 -0
- package/run-payload.d.ts +32 -0
- package/run-payload.js +26 -0
- package/runtime-scope.d.ts +84 -0
- package/runtime-scope.js +308 -0
- package/runtime.d.ts +84 -0
- package/runtime.js +387 -0
- package/section-notes.d.ts +33 -0
- package/section-notes.js +38 -0
- package/serve-page.mjs +96 -0
- package/server/draft-decide.d.ts +72 -0
- package/server/draft-decide.js +111 -0
- package/server/draft-embedding.d.ts +3 -0
- package/server/draft-embedding.js +35 -0
- package/server/draft-handler.d.ts +82 -0
- package/server/draft-handler.js +213 -0
- package/server/draft-probe.d.ts +14 -0
- package/server/draft-probe.js +61 -0
- package/server/draft-replies.d.ts +22 -0
- package/server/draft-replies.js +46 -0
- package/server/edited-session.d.ts +28 -0
- package/server/edited-session.js +83 -0
- package/server/edits.d.ts +38 -0
- package/server/edits.js +195 -0
- package/server/handler.d.ts +133 -0
- package/server/handler.js +598 -0
- package/server/lent-draft.d.ts +19 -0
- package/server/lent-draft.js +23 -0
- package/server/live.d.ts +15 -0
- package/server/live.js +96 -0
- package/server/open-editor.d.ts +63 -0
- package/server/open-editor.js +115 -0
- package/server/origins.d.ts +18 -0
- package/server/origins.js +330 -0
- package/server/project-source.d.ts +208 -0
- package/server/project-source.js +1042 -0
- package/server/project.d.ts +22 -0
- package/server/project.js +56 -0
- package/server/run-traces.d.ts +20 -0
- package/server/run-traces.js +96 -0
- package/server/save-new.d.ts +29 -0
- package/server/save-new.js +514 -0
- package/server/save-plan.d.ts +46 -0
- package/server/save-plan.js +1134 -0
- package/server/save-remove.d.ts +21 -0
- package/server/save-remove.js +528 -0
- package/server/save-session.d.ts +96 -0
- package/server/save-session.js +418 -0
- package/server/save-wire.d.ts +235 -0
- package/server/save-wire.js +8 -0
- package/server/save.d.ts +52 -0
- package/server/save.js +209 -0
- package/server/serve.d.ts +23 -0
- package/server/serve.js +413 -0
- package/server/test-connection.d.ts +17 -0
- package/server/test-connection.js +362 -0
- package/server/test-key.d.ts +2 -0
- package/server/test-key.js +83 -0
- package/server/watch.d.ts +28 -0
- package/server/watch.js +93 -0
- package/server/zod-edit.d.ts +74 -0
- package/server/zod-edit.js +558 -0
- package/server.d.ts +8 -0
- package/server.js +8 -0
- package/setups.mjs +170 -0
- package/shared-carry.d.ts +114 -0
- package/shared-carry.js +523 -0
- package/shared-settings.d.ts +34 -0
- package/shared-settings.js +70 -0
- package/source.d.ts +75 -0
- package/source.js +414 -0
- package/start.mjs +169 -0
- package/stream-lines.d.ts +9 -0
- package/stream-lines.js +27 -0
- package/stub.d.ts +6 -0
- package/stub.js +33 -0
- package/surface.d.ts +53 -0
- package/surface.js +631 -0
- package/system-markup.d.ts +20 -0
- package/system-markup.js +51 -0
- package/tool-schema.d.ts +23 -0
- package/tool-schema.js +69 -0
- package/tools.d.ts +16 -0
- package/tools.js +91 -0
- package/traces.d.ts +24 -0
- package/traces.js +29 -0
- package/transport.d.ts +57 -0
- package/transport.js +187 -0
- package/tree.d.ts +32 -0
- package/tree.js +83 -0
- package/types.d.ts +62 -0
- package/types.js +6 -0
- package/ui/acting-as-button.d.ts +2 -0
- package/ui/acting-as-button.js +16 -0
- package/ui/add-provider.d.ts +13 -0
- package/ui/add-provider.js +20 -0
- package/ui/boot-mark.css +53 -0
- package/ui/boot-mark.d.ts +19 -0
- package/ui/boot-mark.js +128 -0
- package/ui/boot-paint.d.ts +8 -0
- package/ui/boot-paint.js +8 -0
- package/ui/brand-icons.d.ts +57 -0
- package/ui/brand-icons.js +148 -0
- package/ui/built/theme.css +830 -0
- package/ui/built/theme.css.d.ts +9 -0
- package/ui/built/theorem-studio.d.ts +13 -0
- package/ui/built/theorem-studio.js +705 -0
- package/ui/built/theorem-studio.variants.d.ts +28 -0
- package/ui/code/monaco-contributions.d.ts +45 -0
- package/ui/code/studio-code.d.ts +7 -0
- package/ui/code/studio-code.js +253 -0
- package/ui/code/studio-monaco.d.ts +44 -0
- package/ui/code/studio-monaco.js +48 -0
- package/ui/code/studio-ts.worker.d.ts +1 -0
- package/ui/code/studio-ts.worker.js +16 -0
- package/ui/code/studio-type-checker.d.ts +12 -0
- package/ui/code/studio-type-checker.js +308 -0
- package/ui/code/studio-type-sources.d.ts +26 -0
- package/ui/confirm-write.d.ts +12 -0
- package/ui/confirm-write.js +45 -0
- package/ui/diff-block.d.ts +21 -0
- package/ui/diff-block.js +17 -0
- package/ui/figtree.css +59 -0
- package/ui/file-place.d.ts +4 -0
- package/ui/file-place.js +26 -0
- package/ui/guardrail-tester.d.ts +18 -0
- package/ui/guardrail-tester.js +248 -0
- package/ui/inspector-context.d.ts +119 -0
- package/ui/inspector-context.js +84 -0
- package/ui/inspector.d.ts +247 -0
- package/ui/inspector.js +284 -0
- package/ui/lib/acting-as.d.ts +25 -0
- package/ui/lib/acting-as.js +90 -0
- package/ui/lib/boot-sequence.d.ts +32 -0
- package/ui/lib/boot-sequence.js +57 -0
- package/ui/lib/export-agent.d.ts +11 -0
- package/ui/lib/export-agent.js +335 -0
- package/ui/lib/facet-icons.d.ts +20 -0
- package/ui/lib/facet-icons.js +21 -0
- package/ui/lib/panel-motion.d.ts +8 -0
- package/ui/lib/panel-motion.js +74 -0
- package/ui/lib/project-address.d.ts +14 -0
- package/ui/lib/project-address.js +24 -0
- package/ui/lib/project-starting.d.ts +13 -0
- package/ui/lib/project-starting.js +30 -0
- package/ui/lib/project-traces.d.ts +17 -0
- package/ui/lib/project-traces.js +54 -0
- package/ui/lib/read-map.d.ts +30 -0
- package/ui/lib/read-map.js +173 -0
- package/ui/lib/read-progress.d.ts +14 -0
- package/ui/lib/read-progress.js +12 -0
- package/ui/lib/refusal-lines.d.ts +3 -0
- package/ui/lib/refusal-lines.js +8 -0
- package/ui/lib/studio-activity.d.ts +5 -0
- package/ui/lib/studio-activity.js +17 -0
- package/ui/lib/studio-console.d.ts +27 -0
- package/ui/lib/studio-console.js +9 -0
- package/ui/lib/studio-conversation.d.ts +20 -0
- package/ui/lib/studio-conversation.js +130 -0
- package/ui/lib/studio-examples.d.ts +31 -0
- package/ui/lib/studio-examples.js +25 -0
- package/ui/lib/studio-labels.d.ts +6 -0
- package/ui/lib/studio-labels.js +13 -0
- package/ui/lib/studio-map-kept.d.ts +17 -0
- package/ui/lib/studio-map-kept.js +48 -0
- package/ui/lib/studio-open.d.ts +22 -0
- package/ui/lib/studio-open.js +54 -0
- package/ui/lib/studio-page.d.ts +33 -0
- package/ui/lib/studio-page.js +121 -0
- package/ui/lib/studio-prefs.d.ts +26 -0
- package/ui/lib/studio-prefs.js +87 -0
- package/ui/lib/studio-project.d.ts +106 -0
- package/ui/lib/studio-project.js +177 -0
- package/ui/lib/studio-restore.d.ts +49 -0
- package/ui/lib/studio-restore.js +251 -0
- package/ui/lib/studio-run-open.d.ts +15 -0
- package/ui/lib/studio-run-open.js +16 -0
- package/ui/lib/studio-session.d.ts +34 -0
- package/ui/lib/studio-session.js +17 -0
- package/ui/lib/studio-settings.d.ts +15 -0
- package/ui/lib/studio-settings.js +48 -0
- package/ui/lib/studio-store.d.ts +64 -0
- package/ui/lib/studio-store.js +391 -0
- package/ui/lib/studio-watch.d.ts +12 -0
- package/ui/lib/studio-watch.js +27 -0
- package/ui/lib/tab-fills.d.ts +6 -0
- package/ui/lib/tab-fills.js +14 -0
- package/ui/lib/tool-credentials.d.ts +3 -0
- package/ui/lib/tool-credentials.js +23 -0
- package/ui/lib/tool-probe.d.ts +19 -0
- package/ui/lib/tool-probe.js +104 -0
- package/ui/lib/type-icons.d.ts +35 -0
- package/ui/lib/type-icons.js +38 -0
- package/ui/lib/when-idle.d.ts +5 -0
- package/ui/lib/when-idle.js +14 -0
- package/ui/lib/zip.d.ts +5 -0
- package/ui/lib/zip.js +8 -0
- package/ui/map-token.css +11 -0
- package/ui/map-token.d.ts +17 -0
- package/ui/map-token.js +29 -0
- package/ui/mcp-icon.d.ts +6 -0
- package/ui/mcp-icon.js +8 -0
- package/ui/motion.css +113 -0
- package/ui/pan.d.ts +32 -0
- package/ui/pan.js +90 -0
- package/ui/profile-editor.d.ts +33 -0
- package/ui/profile-editor.js +2638 -0
- package/ui/provider-editor.d.ts +15 -0
- package/ui/provider-editor.js +92 -0
- package/ui/read-map.css +48 -0
- package/ui/read-map.d.ts +7 -0
- package/ui/read-map.js +163 -0
- package/ui/refusal-detail.d.ts +4 -0
- package/ui/refusal-detail.js +21 -0
- package/ui/shared-change.d.ts +9 -0
- package/ui/shared-change.js +28 -0
- package/ui/shell-motion.css +121 -0
- package/ui/shell-motion.d.ts +73 -0
- package/ui/shell-motion.js +194 -0
- package/ui/studio-code-pane.d.ts +19 -0
- package/ui/studio-code-pane.js +44 -0
- package/ui/studio-compare.d.ts +80 -0
- package/ui/studio-compare.js +326 -0
- package/ui/studio-conflicts.d.ts +17 -0
- package/ui/studio-conflicts.js +87 -0
- package/ui/studio-connection.d.ts +64 -0
- package/ui/studio-connection.js +286 -0
- package/ui/studio-decision.d.ts +6 -0
- package/ui/studio-decision.js +49 -0
- package/ui/studio-embedding.d.ts +6 -0
- package/ui/studio-embedding.js +30 -0
- package/ui/studio-host-console.d.ts +6 -0
- package/ui/studio-host-console.js +17 -0
- package/ui/studio-host.d.ts +73 -0
- package/ui/studio-host.js +12 -0
- package/ui/studio-live.d.ts +17 -0
- package/ui/studio-live.js +26 -0
- package/ui/studio-map.css +273 -0
- package/ui/studio-map.d.ts +17 -0
- package/ui/studio-map.js +397 -0
- package/ui/studio-nav.d.ts +24 -0
- package/ui/studio-nav.js +17 -0
- package/ui/studio-no-project.d.ts +5 -0
- package/ui/studio-no-project.js +9 -0
- package/ui/studio-run.css +76 -0
- package/ui/studio-run.d.ts +14 -0
- package/ui/studio-run.js +119 -0
- package/ui/studio-runner.d.ts +45 -0
- package/ui/studio-runner.js +187 -0
- package/ui/studio-save.d.ts +49 -0
- package/ui/studio-save.js +307 -0
- package/ui/studio-screen.d.ts +61 -0
- package/ui/studio-screen.js +2078 -0
- package/ui/studio-settings.d.ts +31 -0
- package/ui/studio-settings.js +288 -0
- package/ui/studio-shell.css +27 -0
- package/ui/studio-shell.d.ts +43 -0
- package/ui/studio-shell.js +87 -0
- package/ui/studio-theme.d.ts +7 -0
- package/ui/studio-theme.js +94 -0
- package/ui/studio.css +427 -0
- package/ui/theorem-mark.css +84 -0
- package/ui/theorem-mark.d.ts +22 -0
- package/ui/theorem-mark.js +21 -0
- package/vite.d.mts +30 -0
- package/vite.mjs +277 -0
- package/workspace.d.ts +230 -0
- package/workspace.js +1054 -0
package/map-line.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface MapPlace {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}
|
|
5
|
+
export interface MapCurve {
|
|
6
|
+
d: string;
|
|
7
|
+
/** The point `t` of the way along, from 0 to 1. */
|
|
8
|
+
at(t: number): MapPlace;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The line every map draws between two nodes: level as it leaves and as it arrives, turning at
|
|
12
|
+
* `via`, which is halfway between them unless said.
|
|
13
|
+
*/
|
|
14
|
+
export declare function mapCurve(from: MapPlace, to: MapPlace, via?: number): MapCurve;
|
|
15
|
+
/**
|
|
16
|
+
* A line that runs level from `from` to `rail`, straight up or down it, and level to `to`, its two
|
|
17
|
+
* corners rounded by `radius`. Lines that share an end and a rail are one line along both.
|
|
18
|
+
*/
|
|
19
|
+
export declare function mapRail(from: MapPlace, to: MapPlace, rail: number, radius: number): MapCurve;
|
package/map-line.js
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The line every map draws between two nodes: level as it leaves and as it arrives, turning at
|
|
3
|
+
* `via`, which is halfway between them unless said.
|
|
4
|
+
*/
|
|
5
|
+
export function mapCurve(from, to, via = (from.x + to.x) / 2) {
|
|
6
|
+
return {
|
|
7
|
+
d: `M ${from.x} ${from.y} C ${via} ${from.y}, ${via} ${to.y}, ${to.x} ${to.y}`,
|
|
8
|
+
at(t) {
|
|
9
|
+
const u = 1 - t;
|
|
10
|
+
return {
|
|
11
|
+
x: u * u * u * from.x + 3 * u * t * via + t * t * t * to.x,
|
|
12
|
+
y: (u * u * u + 3 * u * u * t) * from.y + (3 * u * t * t + t * t * t) * to.y,
|
|
13
|
+
};
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A line that runs level from `from` to `rail`, straight up or down it, and level to `to`, its two
|
|
19
|
+
* corners rounded by `radius`. Lines that share an end and a rail are one line along both.
|
|
20
|
+
*/
|
|
21
|
+
export function mapRail(from, to, rail, radius) {
|
|
22
|
+
const lead = Math.abs(rail - from.x);
|
|
23
|
+
const rise = Math.abs(to.y - from.y);
|
|
24
|
+
const tail = Math.abs(to.x - rail);
|
|
25
|
+
const length = lead + rise + tail;
|
|
26
|
+
const along = Math.sign(to.x - from.x);
|
|
27
|
+
const up = Math.sign(to.y - from.y);
|
|
28
|
+
const round = Math.min(radius, rise / 2, lead, tail);
|
|
29
|
+
const corners = ` L ${rail - along * round} ${from.y} Q ${rail} ${from.y}, ${rail} ${from.y + up * round}` +
|
|
30
|
+
` L ${rail} ${to.y - up * round} Q ${rail} ${to.y}, ${rail + along * round} ${to.y}`;
|
|
31
|
+
return {
|
|
32
|
+
d: `M ${from.x} ${from.y}${round > 0 ? corners : ''} L ${to.x} ${to.y}`,
|
|
33
|
+
at(t) {
|
|
34
|
+
const run = t * length;
|
|
35
|
+
if (run < lead)
|
|
36
|
+
return { x: from.x + along * run, y: from.y };
|
|
37
|
+
if (run > lead + rise)
|
|
38
|
+
return { x: to.x - along * (length - run), y: to.y };
|
|
39
|
+
return { x: rail, y: from.y + up * (run - lead) };
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
}
|
package/map.d.ts
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The workspace as a map. Each profile is a card of its sections; what feeds it stands beside it:
|
|
3
|
+
* the providers and models it runs on, the settings the project shares, the tools it may call. A
|
|
4
|
+
* line joins each to the section it feeds. It is read from the workspace and changes nothing; each
|
|
5
|
+
* node and section names the workspace node that opens it.
|
|
6
|
+
*/
|
|
7
|
+
import { type MapPlace } from './map-line.ts';
|
|
8
|
+
import { type SharedEntry } from './shared-settings.ts';
|
|
9
|
+
import { type StudioWorkspace } from './workspace.ts';
|
|
10
|
+
export type MapNodeKind = 'provider' | 'shared' | 'model' | 'agent' | 'tool';
|
|
11
|
+
/** One section of a profile, on its card. */
|
|
12
|
+
export interface MapRow {
|
|
13
|
+
/** The section's workspace node id, which also opens it. */
|
|
14
|
+
id: string;
|
|
15
|
+
label: string;
|
|
16
|
+
/** Beside the label: the models' names, how many tools are allowed, the kind of output. */
|
|
17
|
+
note: string;
|
|
18
|
+
opens: string;
|
|
19
|
+
/** The section, as `FACET_ICON` names it. */
|
|
20
|
+
type: string;
|
|
21
|
+
}
|
|
22
|
+
export interface MapNode {
|
|
23
|
+
id: string;
|
|
24
|
+
kind: MapNodeKind;
|
|
25
|
+
label: string;
|
|
26
|
+
/** Under the label: a tool's description, a model's provider and id, where a setting is declared. */
|
|
27
|
+
note: string;
|
|
28
|
+
/** The workspace node that opens it; unset for a shared setting nothing here uses. */
|
|
29
|
+
opens?: string;
|
|
30
|
+
/** A model: every workspace node it stands for, one for each profile that runs it. */
|
|
31
|
+
holds?: string[];
|
|
32
|
+
/** A model whose label another model has too: its label with what tells the two apart. */
|
|
33
|
+
long?: string;
|
|
34
|
+
/** An agent's profile type, a tool's type, a model's provider definition, or the section a shared setting fills. */
|
|
35
|
+
type?: string;
|
|
36
|
+
/** A profile's sections, in the tree's order. */
|
|
37
|
+
rows?: MapRow[];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* What joins two nodes, read from `from` to `to`. An end is a node's id, or the id of the profile's
|
|
41
|
+
* section it feeds:
|
|
42
|
+
* - `serves`: a provider serves a model.
|
|
43
|
+
* - `sets`: a shared setting sets a section of a profile, or a tool.
|
|
44
|
+
* - `runs`: a model runs a profile.
|
|
45
|
+
* - `allows`: a profile may call a tool.
|
|
46
|
+
* - `asks`: an agent tool asks its profile.
|
|
47
|
+
* - `summarised`: a profile has another write its summaries.
|
|
48
|
+
*/
|
|
49
|
+
export type MapLinkKind = 'serves' | 'sets' | 'runs' | 'allows' | 'asks' | 'summarised';
|
|
50
|
+
export interface MapLink {
|
|
51
|
+
from: string;
|
|
52
|
+
to: string;
|
|
53
|
+
kind: MapLinkKind;
|
|
54
|
+
}
|
|
55
|
+
export interface MapGroup {
|
|
56
|
+
label: string;
|
|
57
|
+
nodes: MapNode[];
|
|
58
|
+
}
|
|
59
|
+
export interface WorkspaceMap {
|
|
60
|
+
/**
|
|
61
|
+
* Left to right: providers, what profiles are set with, the profiles, the tools. A column holds
|
|
62
|
+
* only groups with nodes.
|
|
63
|
+
*/
|
|
64
|
+
columns: MapGroup[][];
|
|
65
|
+
links: MapLink[];
|
|
66
|
+
}
|
|
67
|
+
/** The map of `workspace`, with the settings its project shares. */
|
|
68
|
+
export declare function workspaceMap(workspace: StudioWorkspace, shared?: readonly SharedEntry[]): WorkspaceMap;
|
|
69
|
+
/** The nodes a link joins: a link to a profile's section joins the profile. */
|
|
70
|
+
export declare function mapLinkEnds(map: WorkspaceMap): {
|
|
71
|
+
link: MapLink;
|
|
72
|
+
from: string;
|
|
73
|
+
to: string;
|
|
74
|
+
}[];
|
|
75
|
+
/** `id` and every node a link joins it to. */
|
|
76
|
+
export declare function mapNeighbours(map: WorkspaceMap, id: string): Set<string>;
|
|
77
|
+
/** The nodes whose name or note holds `query`, whatever its case: their ids. None for an empty query. */
|
|
78
|
+
export declare function mapFound(map: WorkspaceMap, query: string): string[];
|
|
79
|
+
/**
|
|
80
|
+
* `id`'s family: the node, everything that feeds it, and everything it feeds, however many links
|
|
81
|
+
* away, with the links between them. Empty when the map has no such node. Several ids give their
|
|
82
|
+
* families together.
|
|
83
|
+
*/
|
|
84
|
+
export declare function mapFamily(map: WorkspaceMap, id: string | readonly string[]): WorkspaceMap;
|
|
85
|
+
/** What joins a node to the rest, in words: "Runs on gemini-2.5-flash. Allows get_weather, find_plant." */
|
|
86
|
+
export declare function mapLinkWords(map: WorkspaceMap, id: string): string;
|
|
87
|
+
/** The sizes a map is laid out with, in pixels. */
|
|
88
|
+
export interface MapSizes {
|
|
89
|
+
/** A node's slot in its column. Its height is a token's, or with detail a node whose note runs to two lines. */
|
|
90
|
+
node: {
|
|
91
|
+
width: number;
|
|
92
|
+
height: number;
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* With detail, a node with sections: its head, each section's row, and the room under the last.
|
|
96
|
+
* A node with a one-line note is a head alone.
|
|
97
|
+
*/
|
|
98
|
+
card: {
|
|
99
|
+
head: number;
|
|
100
|
+
row: number;
|
|
101
|
+
foot: number;
|
|
102
|
+
};
|
|
103
|
+
/** Between columns, and between a column's nodes. */
|
|
104
|
+
columnGap: number;
|
|
105
|
+
rowGap: number;
|
|
106
|
+
/** A group's heading, and the room between one group and the next. */
|
|
107
|
+
heading: number;
|
|
108
|
+
groupGap: number;
|
|
109
|
+
/** Around the whole map. */
|
|
110
|
+
padding: number;
|
|
111
|
+
/** Between a node's side and the line that leaves or arrives there. */
|
|
112
|
+
lineGap: number;
|
|
113
|
+
}
|
|
114
|
+
export type { MapPlace };
|
|
115
|
+
export interface MapView {
|
|
116
|
+
/** Where nodes were put, by id. */
|
|
117
|
+
moved?: Readonly<Record<string, MapPlace>>;
|
|
118
|
+
/** How wide each node is drawn, by id, when narrower than its slot. */
|
|
119
|
+
widths?: Readonly<Record<string, number>>;
|
|
120
|
+
/** Each profile as a card of its sections and a line to the section it joins; else every node is one token. */
|
|
121
|
+
detail?: boolean;
|
|
122
|
+
}
|
|
123
|
+
/** A link's line as an SVG path from `link.from` to `link.to`, and the nodes it joins. */
|
|
124
|
+
export interface MapLine {
|
|
125
|
+
link: MapLink;
|
|
126
|
+
from: string;
|
|
127
|
+
to: string;
|
|
128
|
+
d: string;
|
|
129
|
+
}
|
|
130
|
+
export interface MapLayout {
|
|
131
|
+
width: number;
|
|
132
|
+
height: number;
|
|
133
|
+
/** Each node's top left corner and height, by id. */
|
|
134
|
+
nodes: Record<string, MapPlace & {
|
|
135
|
+
height: number;
|
|
136
|
+
}>;
|
|
137
|
+
/** Each group's heading: its top left corner. */
|
|
138
|
+
headings: (MapPlace & {
|
|
139
|
+
label: string;
|
|
140
|
+
})[];
|
|
141
|
+
lines: MapLine[];
|
|
142
|
+
}
|
|
143
|
+
/** How many lines of its note a node shows: a tool's description and a shared setting's source run to two. */
|
|
144
|
+
export declare function mapNoteLines(node: MapNode): 1 | 2;
|
|
145
|
+
/**
|
|
146
|
+
* Where everything on the map goes: the columns side by side from the top, each group under its
|
|
147
|
+
* heading, except a node in `moved`, which goes where it was put. A line leaves the side of a node
|
|
148
|
+
* that faces the other; between two nodes one above the other it bows out to the right, past what
|
|
149
|
+
* stands between them. Between two columns the lines that share an end run as one, and part beside
|
|
150
|
+
* the end fewer lines share, each end's lines along a rail of their own: two columns stand far enough
|
|
151
|
+
* apart for the rails between them. A line that would pass behind a node or a heading goes over or under only
|
|
152
|
+
* what is in its way, whichever is nearer. The map is large enough for every line.
|
|
153
|
+
*/
|
|
154
|
+
export declare function mapLayout(map: WorkspaceMap, sizes: MapSizes, view?: MapView): MapLayout;
|