@noodleseed/one 0.89.1 → 0.91.0

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.
Files changed (257) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +3 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/auth-live-doctor.js +1 -1
  5. package/dist/commands/auth-live-doctor.js.map +1 -1
  6. package/dist/commands/billing-enforcement-activation-ops.js +1 -11
  7. package/dist/commands/billing-enforcement-activation-ops.js.map +1 -1
  8. package/dist/commands/billing-enforcement-ops.js +1 -11
  9. package/dist/commands/billing-enforcement-ops.js.map +1 -1
  10. package/dist/commands/billing-metering-ops.js +1 -11
  11. package/dist/commands/billing-metering-ops.js.map +1 -1
  12. package/dist/commands/billing-metering-validation-ops.js +1 -11
  13. package/dist/commands/billing-metering-validation-ops.js.map +1 -1
  14. package/dist/commands/billing-read-ops.js +1 -11
  15. package/dist/commands/billing-read-ops.js.map +1 -1
  16. package/dist/commands/billing-stripe-ops.js +1 -11
  17. package/dist/commands/billing-stripe-ops.js.map +1 -1
  18. package/dist/commands/catalog-data-local-authoring.d.ts.map +1 -1
  19. package/dist/commands/catalog-data-local-authoring.js +27 -0
  20. package/dist/commands/catalog-data-local-authoring.js.map +1 -1
  21. package/dist/commands/design.d.ts +7 -0
  22. package/dist/commands/design.d.ts.map +1 -0
  23. package/dist/commands/design.js +95 -0
  24. package/dist/commands/design.js.map +1 -0
  25. package/dist/commands/devtools.d.ts.map +1 -1
  26. package/dist/commands/devtools.js +5 -1
  27. package/dist/commands/devtools.js.map +1 -1
  28. package/dist/commands/org-admin.d.ts +6 -0
  29. package/dist/commands/org-admin.d.ts.map +1 -1
  30. package/dist/commands/org-admin.js +1 -29
  31. package/dist/commands/org-admin.js.map +1 -1
  32. package/dist/commands/org-domains.js +1 -22
  33. package/dist/commands/org-domains.js.map +1 -1
  34. package/dist/commands/org-member-args.d.ts +1 -1
  35. package/dist/commands/org-member-args.d.ts.map +1 -1
  36. package/dist/commands/org-member-args.js +1 -10
  37. package/dist/commands/org-member-args.js.map +1 -1
  38. package/dist/commands/org-openai-challenge.js +1 -22
  39. package/dist/commands/org-openai-challenge.js.map +1 -1
  40. package/dist/commands/platform-account-reset-args.d.ts.map +1 -1
  41. package/dist/commands/platform-account-reset-args.js +1 -6
  42. package/dist/commands/platform-account-reset-args.js.map +1 -1
  43. package/dist/commands/platform-account-reset-ops.js +1 -11
  44. package/dist/commands/platform-account-reset-ops.js.map +1 -1
  45. package/dist/commands/platform-auth-migration-args.d.ts +2 -0
  46. package/dist/commands/platform-auth-migration-args.d.ts.map +1 -1
  47. package/dist/commands/platform-auth-migration-args.js +2 -1
  48. package/dist/commands/platform-auth-migration-args.js.map +1 -1
  49. package/dist/commands/platform-auth-migration-ops.js +1 -11
  50. package/dist/commands/platform-auth-migration-ops.js.map +1 -1
  51. package/dist/commands/shared.d.ts +6 -0
  52. package/dist/commands/shared.d.ts.map +1 -1
  53. package/dist/commands/shared.js +34 -0
  54. package/dist/commands/shared.js.map +1 -1
  55. package/dist/deploy.d.ts +2 -0
  56. package/dist/deploy.d.ts.map +1 -1
  57. package/dist/deploy.js +4 -4
  58. package/dist/deploy.js.map +1 -1
  59. package/dist/dev.d.ts.map +1 -1
  60. package/dist/dev.js +1 -7
  61. package/dist/dev.js.map +1 -1
  62. package/dist/devtools-brand.d.ts +14 -0
  63. package/dist/devtools-brand.d.ts.map +1 -0
  64. package/dist/devtools-brand.js +98 -0
  65. package/dist/devtools-brand.js.map +1 -0
  66. package/dist/devtools-chat-anthropic.d.ts +3 -0
  67. package/dist/devtools-chat-anthropic.d.ts.map +1 -0
  68. package/dist/devtools-chat-anthropic.js +75 -0
  69. package/dist/devtools-chat-anthropic.js.map +1 -0
  70. package/dist/devtools-chat-gemini.d.ts +3 -0
  71. package/dist/devtools-chat-gemini.d.ts.map +1 -0
  72. package/dist/devtools-chat-gemini.js +82 -0
  73. package/dist/devtools-chat-gemini.js.map +1 -0
  74. package/dist/devtools-chat-types.d.ts +64 -0
  75. package/dist/devtools-chat-types.d.ts.map +1 -0
  76. package/dist/devtools-chat-types.js +64 -0
  77. package/dist/devtools-chat-types.js.map +1 -0
  78. package/dist/devtools-chat.d.ts +7 -39
  79. package/dist/devtools-chat.d.ts.map +1 -1
  80. package/dist/devtools-chat.js +33 -48
  81. package/dist/devtools-chat.js.map +1 -1
  82. package/dist/devtools-copy-styles.d.ts +3 -0
  83. package/dist/devtools-copy-styles.d.ts.map +1 -0
  84. package/dist/devtools-copy-styles.js +54 -0
  85. package/dist/devtools-copy-styles.js.map +1 -0
  86. package/dist/devtools-design-brief.d.ts +10 -0
  87. package/dist/devtools-design-brief.d.ts.map +1 -0
  88. package/dist/devtools-design-brief.js +121 -0
  89. package/dist/devtools-design-brief.js.map +1 -0
  90. package/dist/devtools-design-contract.d.ts +74 -0
  91. package/dist/devtools-design-contract.d.ts.map +1 -0
  92. package/dist/devtools-design-contract.js +306 -0
  93. package/dist/devtools-design-contract.js.map +1 -0
  94. package/dist/devtools-design-element.d.ts +6 -0
  95. package/dist/devtools-design-element.d.ts.map +1 -0
  96. package/dist/devtools-design-element.js +233 -0
  97. package/dist/devtools-design-element.js.map +1 -0
  98. package/dist/devtools-design-preview.d.ts +6 -0
  99. package/dist/devtools-design-preview.d.ts.map +1 -0
  100. package/dist/devtools-design-preview.js +438 -0
  101. package/dist/devtools-design-preview.js.map +1 -0
  102. package/dist/devtools-design-routes.d.ts +14 -0
  103. package/dist/devtools-design-routes.d.ts.map +1 -0
  104. package/dist/devtools-design-routes.js +197 -0
  105. package/dist/devtools-design-routes.js.map +1 -0
  106. package/dist/devtools-design-store.d.ts +16 -0
  107. package/dist/devtools-design-store.d.ts.map +1 -0
  108. package/dist/devtools-design-store.js +209 -0
  109. package/dist/devtools-design-store.js.map +1 -0
  110. package/dist/devtools-design-styles.d.ts +3 -0
  111. package/dist/devtools-design-styles.d.ts.map +1 -0
  112. package/dist/devtools-design-styles.js +509 -0
  113. package/dist/devtools-design-styles.js.map +1 -0
  114. package/dist/devtools-design.d.ts +3 -0
  115. package/dist/devtools-design.d.ts.map +1 -0
  116. package/dist/devtools-design.js +455 -0
  117. package/dist/devtools-design.js.map +1 -0
  118. package/dist/devtools-harness.d.ts +2 -2
  119. package/dist/devtools-harness.d.ts.map +1 -1
  120. package/dist/devtools-harness.js +138 -221
  121. package/dist/devtools-harness.js.map +1 -1
  122. package/dist/devtools-json.d.ts +10 -0
  123. package/dist/devtools-json.d.ts.map +1 -0
  124. package/dist/devtools-json.js +23 -0
  125. package/dist/devtools-json.js.map +1 -0
  126. package/dist/devtools-preview-control-styles.d.ts +3 -0
  127. package/dist/devtools-preview-control-styles.d.ts.map +1 -0
  128. package/dist/devtools-preview-control-styles.js +207 -0
  129. package/dist/devtools-preview-control-styles.js.map +1 -0
  130. package/dist/devtools-preview.d.ts +10 -3
  131. package/dist/devtools-preview.d.ts.map +1 -1
  132. package/dist/devtools-preview.js +192 -43
  133. package/dist/devtools-preview.js.map +1 -1
  134. package/dist/devtools-provider-logos.d.ts +5 -0
  135. package/dist/devtools-provider-logos.d.ts.map +1 -0
  136. package/dist/devtools-provider-logos.js +5 -0
  137. package/dist/devtools-provider-logos.js.map +1 -0
  138. package/dist/devtools-responsive-styles.d.ts +3 -0
  139. package/dist/devtools-responsive-styles.d.ts.map +1 -0
  140. package/dist/devtools-responsive-styles.js +90 -0
  141. package/dist/devtools-responsive-styles.js.map +1 -0
  142. package/dist/devtools-styles.d.ts +3 -0
  143. package/dist/devtools-styles.d.ts.map +1 -0
  144. package/dist/devtools-styles.js +694 -0
  145. package/dist/devtools-styles.js.map +1 -0
  146. package/dist/local-target.d.ts.map +1 -1
  147. package/dist/local-target.js +1 -6
  148. package/dist/local-target.js.map +1 -1
  149. package/dist/plugin-mode/build-readiness-server.d.ts +4 -10
  150. package/dist/plugin-mode/build-readiness-server.d.ts.map +1 -1
  151. package/dist/plugin-mode/build-readiness-server.js +68 -67
  152. package/dist/plugin-mode/build-readiness-server.js.map +1 -1
  153. package/dist/plugin-mode/plugin-command-runner.d.ts +41 -0
  154. package/dist/plugin-mode/plugin-command-runner.d.ts.map +1 -0
  155. package/dist/plugin-mode/plugin-command-runner.js +122 -0
  156. package/dist/plugin-mode/plugin-command-runner.js.map +1 -0
  157. package/dist/plugin-mode/plugin-operation-contract.d.ts +237 -0
  158. package/dist/plugin-mode/plugin-operation-contract.d.ts.map +1 -0
  159. package/dist/plugin-mode/plugin-operation-contract.js +164 -0
  160. package/dist/plugin-mode/plugin-operation-contract.js.map +1 -0
  161. package/dist/plugin-mode/plugin-operation-tools.d.ts +20 -0
  162. package/dist/plugin-mode/plugin-operation-tools.d.ts.map +1 -0
  163. package/dist/plugin-mode/plugin-operation-tools.js +289 -0
  164. package/dist/plugin-mode/plugin-operation-tools.js.map +1 -0
  165. package/dist/preview-session.d.ts +5 -0
  166. package/dist/preview-session.d.ts.map +1 -1
  167. package/dist/preview-session.js +23 -5
  168. package/dist/preview-session.js.map +1 -1
  169. package/dist/project.d.ts.map +1 -1
  170. package/dist/project.js +1 -7
  171. package/dist/project.js.map +1 -1
  172. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  173. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +4 -0
  174. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  175. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.js +1 -1
  176. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.js.map +1 -1
  177. package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js +5 -5
  178. package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js.map +1 -1
  179. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  180. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +1 -0
  181. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  182. package/node_modules/@noodle-borg/agent-kit/dist/plugin-bundle.d.ts.map +1 -1
  183. package/node_modules/@noodle-borg/agent-kit/dist/plugin-bundle.js +16 -12
  184. package/node_modules/@noodle-borg/agent-kit/dist/plugin-bundle.js.map +1 -1
  185. package/node_modules/@noodle-borg/agent-kit/dist/plugin-marketplace-docs.js +9 -9
  186. package/node_modules/@noodle-borg/agent-kit/dist/skill-design-refs.d.ts.map +1 -1
  187. package/node_modules/@noodle-borg/agent-kit/dist/skill-design-refs.js +12 -0
  188. package/node_modules/@noodle-borg/agent-kit/dist/skill-design-refs.js.map +1 -1
  189. package/node_modules/@noodle-borg/agent-kit/dist/skill-feedback-ref.js +4 -4
  190. package/node_modules/@noodle-borg/agent-kit/dist/skill-feedback-ref.js.map +1 -1
  191. package/node_modules/@noodle-borg/agent-kit/dist/skill-router.d.ts.map +1 -1
  192. package/node_modules/@noodle-borg/agent-kit/dist/skill-router.js +6 -3
  193. package/node_modules/@noodle-borg/agent-kit/dist/skill-router.js.map +1 -1
  194. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  195. package/node_modules/@noodle-borg/auth/dist/verify.d.ts +3 -1
  196. package/node_modules/@noodle-borg/auth/dist/verify.d.ts.map +1 -1
  197. package/node_modules/@noodle-borg/auth/dist/verify.js +16 -4
  198. package/node_modules/@noodle-borg/auth/dist/verify.js.map +1 -1
  199. package/node_modules/@noodle-borg/compiler/dist/widget-ui-style.d.ts +0 -2
  200. package/node_modules/@noodle-borg/compiler/dist/widget-ui-style.d.ts.map +1 -1
  201. package/node_modules/@noodle-borg/compiler/dist/widget-ui-style.js +0 -76
  202. package/node_modules/@noodle-borg/compiler/dist/widget-ui-style.js.map +1 -1
  203. package/node_modules/@noodle-borg/connector-defs/dist/index.d.ts +1 -1
  204. package/node_modules/@noodle-borg/connector-defs/dist/index.d.ts.map +1 -1
  205. package/node_modules/@noodle-borg/connector-defs/dist/index.js.map +1 -1
  206. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts +2 -8
  207. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts.map +1 -1
  208. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js +8 -237
  209. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js.map +1 -1
  210. package/node_modules/@noodle-borg/connector-http/dist/http-response.d.ts +26 -0
  211. package/node_modules/@noodle-borg/connector-http/dist/http-response.d.ts.map +1 -0
  212. package/node_modules/@noodle-borg/connector-http/dist/http-response.js +249 -0
  213. package/node_modules/@noodle-borg/connector-http/dist/http-response.js.map +1 -0
  214. package/node_modules/@noodle-borg/module-audit/dist/route.d.ts +0 -2
  215. package/node_modules/@noodle-borg/module-audit/dist/route.d.ts.map +1 -1
  216. package/node_modules/@noodle-borg/module-audit/dist/route.js +0 -4
  217. package/node_modules/@noodle-borg/module-audit/dist/route.js.map +1 -1
  218. package/node_modules/@noodle-borg/protocol/dist/input-validation.d.ts +0 -2
  219. package/node_modules/@noodle-borg/protocol/dist/input-validation.d.ts.map +1 -1
  220. package/node_modules/@noodle-borg/protocol/dist/input-validation.js +1 -5
  221. package/node_modules/@noodle-borg/protocol/dist/input-validation.js.map +1 -1
  222. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.d.ts +0 -2
  223. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.d.ts.map +1 -1
  224. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.js +0 -7
  225. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.js.map +1 -1
  226. package/node_modules/@noodle-borg/service/dist/credential-binding-index.d.ts +1 -3
  227. package/node_modules/@noodle-borg/service/dist/credential-binding-index.d.ts.map +1 -1
  228. package/node_modules/@noodle-borg/service/dist/credential-binding-index.js +1 -14
  229. package/node_modules/@noodle-borg/service/dist/credential-binding-index.js.map +1 -1
  230. package/node_modules/@noodle-borg/service/dist/customer-verifier.d.ts.map +1 -1
  231. package/node_modules/@noodle-borg/service/dist/customer-verifier.js +8 -5
  232. package/node_modules/@noodle-borg/service/dist/customer-verifier.js.map +1 -1
  233. package/node_modules/@noodle-borg/service/dist/index.d.ts +5 -5
  234. package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
  235. package/node_modules/@noodle-borg/service/dist/index.js +1 -1
  236. package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
  237. package/node_modules/@noodle-borg/service/dist/mcp-public-routing.d.ts +0 -2
  238. package/node_modules/@noodle-borg/service/dist/mcp-public-routing.d.ts.map +1 -1
  239. package/node_modules/@noodle-borg/service/dist/mcp-public-routing.js +0 -6
  240. package/node_modules/@noodle-borg/service/dist/mcp-public-routing.js.map +1 -1
  241. package/node_modules/@noodle-borg/service/dist/oauth/console-url.d.ts +2 -0
  242. package/node_modules/@noodle-borg/service/dist/oauth/console-url.d.ts.map +1 -0
  243. package/node_modules/@noodle-borg/service/dist/oauth/console-url.js +4 -0
  244. package/node_modules/@noodle-borg/service/dist/oauth/console-url.js.map +1 -0
  245. package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.d.ts.map +1 -1
  246. package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js +2 -1
  247. package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js.map +1 -1
  248. package/node_modules/@noodle-borg/service/dist/registry-targets.d.ts +1 -3
  249. package/node_modules/@noodle-borg/service/dist/registry-targets.d.ts.map +1 -1
  250. package/node_modules/@noodle-borg/service/dist/registry-targets.js +0 -17
  251. package/node_modules/@noodle-borg/service/dist/registry-targets.js.map +1 -1
  252. package/node_modules/@noodle-borg/service/package.json +0 -1
  253. package/package.json +1 -1
  254. package/node_modules/@noodle-borg/compiler/dist/widget-tailwind-tokens.d.ts +0 -2
  255. package/node_modules/@noodle-borg/compiler/dist/widget-tailwind-tokens.d.ts.map +0 -1
  256. package/node_modules/@noodle-borg/compiler/dist/widget-tailwind-tokens.js +0 -22
  257. package/node_modules/@noodle-borg/compiler/dist/widget-tailwind-tokens.js.map +0 -1
@@ -1,12 +1,42 @@
1
1
  import { createServer } from 'node:http';
2
- import { DEFAULT_CHAT_MODEL, runChatTurn, } from './devtools-chat.js';
3
- import { harnessHtml, openAiShimScript, wrapWidgetHtml, } from './devtools-harness.js';
2
+ import { DEFAULT_CHAT_MODELS, runProviderChatTurn, } from './devtools-chat.js';
3
+ import { handleDesignRoute } from './devtools-design-routes.js';
4
+ import { calculateRangeProgress, harnessHtml, openAiShimScript, wrapWidgetHtml, } from './devtools-harness.js';
4
5
  // Re-exported so `devtools-preview` stays the single import surface for the command and tests.
5
- export { harnessHtml, openAiShimScript, wrapWidgetHtml };
6
+ export { calculateRangeProgress, harnessHtml, openAiShimScript, wrapWidgetHtml };
6
7
  const CHAT_SYSTEM_PROMPT = 'You are an assistant embedded in the Noodle Seed devtools playground. You can call the MCP tools ' +
7
8
  'exposed by the local server the developer is previewing. Call a tool whenever it can answer the ' +
8
9
  'request or render a widget, then explain the result briefly. Keep answers concise.';
9
10
  const DEFAULT_PROTOCOL_VERSION = '2025-11-25';
11
+ const CHAT_PROVIDERS = ['openai', 'anthropic', 'gemini'];
12
+ const CHAT_PROVIDER_CONFIG = {
13
+ openai: {
14
+ envName: 'OPENAI_API_KEY',
15
+ modelEnvName: 'OPENAI_MODEL',
16
+ baseUrlEnvName: 'OPENAI_BASE_URL',
17
+ },
18
+ anthropic: {
19
+ envName: 'ANTHROPIC_API_KEY',
20
+ modelEnvName: 'ANTHROPIC_MODEL',
21
+ baseUrlEnvName: 'ANTHROPIC_BASE_URL',
22
+ },
23
+ gemini: {
24
+ envName: 'GEMINI_API_KEY',
25
+ modelEnvName: 'GEMINI_MODEL',
26
+ baseUrlEnvName: 'GEMINI_BASE_URL',
27
+ },
28
+ };
29
+ function isChatProvider(value) {
30
+ return typeof value === 'string' && CHAT_PROVIDERS.includes(value);
31
+ }
32
+ /** Infer the provider from the API-key formats developers already recognize, without adding a picker. */
33
+ function detectChatProvider(key) {
34
+ if (key.startsWith('sk-ant-'))
35
+ return 'anthropic';
36
+ if (key.startsWith('AIza'))
37
+ return 'gemini';
38
+ return 'openai';
39
+ }
10
40
  /** Parse the `/widget?args=` query param (a JSON object) into tool-call arguments; `{}` on absent/invalid. */
11
41
  function parseArgsParam(raw) {
12
42
  if (!raw)
@@ -21,6 +51,18 @@ function parseArgsParam(raw) {
21
51
  return {};
22
52
  }
23
53
  }
54
+ /** Parse a JSON request body only when its top-level value is an object. */
55
+ function parseJsonObject(raw) {
56
+ try {
57
+ const parsed = JSON.parse(raw.toString('utf8'));
58
+ return parsed !== null && typeof parsed === 'object' && !Array.isArray(parsed)
59
+ ? parsed
60
+ : undefined;
61
+ }
62
+ catch {
63
+ return undefined;
64
+ }
65
+ }
24
66
  /** Cap a value for the inspector log so a huge tool result does not flood the SSE stream. */
25
67
  function capForLog(value, max = 20000) {
26
68
  if (value === undefined)
@@ -84,21 +126,64 @@ export async function startPreview(options) {
84
126
  const log = [];
85
127
  const subscribers = new Set();
86
128
  const reloadSubscribers = new Set();
87
- // The OpenAI key lives ONLY in this server process (session) or the env never in the browser. The
129
+ // Provider keys live ONLY in this server process (session) or the env, never in the browser. The
88
130
  // /widget iframes are same-origin and unsandboxed, so anything the page holds (localStorage or a JS var)
89
131
  // is readable by widget scripts and could be exfiltrated. The browser sets it via POST /chat/key and then
90
132
  // drops it; the gate state comes from GET /chat/status. The key is never logged or sent back to the page.
91
- let sessionApiKey;
92
- function resolveApiKey() {
93
- return sessionApiKey ?? process.env.OPENAI_API_KEY;
133
+ const sessionApiKeys = {};
134
+ const sessionModels = {};
135
+ let activeChatProvider;
136
+ function resolveApiKey(provider) {
137
+ return sessionApiKeys[provider] ?? process.env[CHAT_PROVIDER_CONFIG[provider].envName];
94
138
  }
95
- function apiKeySource() {
96
- if (sessionApiKey)
139
+ function apiKeySource(provider) {
140
+ if (sessionApiKeys[provider])
97
141
  return 'session';
98
- if (process.env.OPENAI_API_KEY)
142
+ if (process.env[CHAT_PROVIDER_CONFIG[provider].envName])
99
143
  return 'env';
100
144
  return 'none';
101
145
  }
146
+ function configuredModel(provider) {
147
+ const optionModel = provider === 'openai'
148
+ ? options.openaiModel
149
+ : provider === 'anthropic'
150
+ ? options.anthropicModel
151
+ : options.geminiModel;
152
+ return (sessionModels[provider] ??
153
+ optionModel ??
154
+ process.env[CHAT_PROVIDER_CONFIG[provider].modelEnvName] ??
155
+ DEFAULT_CHAT_MODELS[provider]);
156
+ }
157
+ function providerStatus(provider) {
158
+ return {
159
+ hasKey: Boolean(resolveApiKey(provider)),
160
+ source: apiKeySource(provider),
161
+ envName: CHAT_PROVIDER_CONFIG[provider].envName,
162
+ model: configuredModel(provider),
163
+ };
164
+ }
165
+ function configuredChatProviders() {
166
+ return CHAT_PROVIDERS.filter((provider) => providerStatus(provider).hasKey);
167
+ }
168
+ function resolveActiveChatProvider() {
169
+ if (activeChatProvider && providerStatus(activeChatProvider).hasKey) {
170
+ return activeChatProvider;
171
+ }
172
+ const configured = configuredChatProviders();
173
+ if (configured.length === 1)
174
+ return configured[0];
175
+ if (configured.length === 0)
176
+ return 'openai';
177
+ return undefined;
178
+ }
179
+ function ambiguousProviderError() {
180
+ if (resolveActiveChatProvider() !== undefined)
181
+ return undefined;
182
+ return {
183
+ code: 'ambiguous_provider',
184
+ message: 'Multiple provider keys are configured. Paste one API key to choose this chat session.',
185
+ };
186
+ }
102
187
  function record(entry) {
103
188
  log.push(entry);
104
189
  if (log.length > 500)
@@ -198,16 +283,18 @@ export async function startPreview(options) {
198
283
  });
199
284
  }
200
285
  /** Run one chat-playground turn against the local tools; the API key is read fresh and never logged. */
201
- async function handleChat(incoming, apiKey) {
286
+ async function handleChat(provider, incoming, apiKey, model) {
202
287
  const messages = incoming[0]?.role === 'system'
203
288
  ? incoming
204
289
  : [{ role: 'system', content: CHAT_SYSTEM_PROMPT }, ...incoming];
205
- return runChatTurn({
290
+ const baseUrl = process.env[CHAT_PROVIDER_CONFIG[provider].baseUrlEnvName];
291
+ return runProviderChatTurn({
292
+ provider,
206
293
  messages,
207
294
  tools: await chatToolDefs(),
208
295
  apiKey,
209
- model: options.openaiModel ?? process.env.OPENAI_MODEL ?? DEFAULT_CHAT_MODEL,
210
- ...(process.env.OPENAI_BASE_URL ? { baseUrl: process.env.OPENAI_BASE_URL } : {}),
296
+ model: model?.trim() || configuredModel(provider),
297
+ ...(baseUrl ? { baseUrl } : {}),
211
298
  callTool: async (name, args) => {
212
299
  const call = await forward({
213
300
  method: 'tools/call',
@@ -223,9 +310,11 @@ export async function startPreview(options) {
223
310
  }
224
311
  const server = createServer((req, res) => {
225
312
  const url = new URL(req.url ?? '/', 'http://localhost');
313
+ if (handleDesignRoute(req, res, url, options.design))
314
+ return;
226
315
  if (req.method === 'GET' && url.pathname === '/') {
227
316
  res.writeHead(200, { 'content-type': 'text/html; charset=utf-8' });
228
- res.end(harnessHtml({ ...options, hasServerKey: Boolean(resolveApiKey()) }));
317
+ res.end(harnessHtml(options));
229
318
  return;
230
319
  }
231
320
  if (req.method === 'GET' && url.pathname === '/widget') {
@@ -266,9 +355,16 @@ export async function startPreview(options) {
266
355
  return;
267
356
  }
268
357
  if (req.method === 'GET' && url.pathname === '/chat/status') {
269
- // Report only whether a key is available (and its source) never the value.
358
+ // Report only whether each key is available, plus non-secret configuration. Never return a key.
359
+ const activeProvider = resolveActiveChatProvider();
360
+ const error = ambiguousProviderError();
270
361
  res.writeHead(200, { 'content-type': 'application/json' });
271
- res.end(JSON.stringify({ hasKey: Boolean(resolveApiKey()), source: apiKeySource() }));
362
+ res.end(JSON.stringify({
363
+ activeProvider: activeProvider ?? null,
364
+ requiresKey: Boolean(error),
365
+ error,
366
+ providers: Object.fromEntries(CHAT_PROVIDERS.map((provider) => [provider, providerStatus(provider)])),
367
+ }));
272
368
  return;
273
369
  }
274
370
  if (req.method === 'POST' && url.pathname === '/chat/key') {
@@ -276,48 +372,101 @@ export async function startPreview(options) {
276
372
  const chunks = [];
277
373
  req.on('data', (c) => chunks.push(c));
278
374
  req.on('end', () => {
279
- let key = '';
280
- try {
281
- key = String(JSON.parse(Buffer.concat(chunks).toString('utf8')).key ?? '');
282
- }
283
- catch {
375
+ const body = parseJsonObject(Buffer.concat(chunks));
376
+ if (!body) {
284
377
  res.writeHead(400, { 'content-type': 'application/json' });
285
378
  res.end(JSON.stringify({ error: { code: 'invalid_json', message: 'invalid JSON' } }));
286
379
  return;
287
380
  }
288
- const trimmed = key.trim();
289
- sessionApiKey = trimmed === '' ? undefined : trimmed;
381
+ const submittedKey = typeof body.key === 'string' ? body.key.trim() : '';
382
+ const provider = submittedKey === ''
383
+ ? (body.provider ?? resolveActiveChatProvider())
384
+ : detectChatProvider(submittedKey);
385
+ const ambiguity = ambiguousProviderError();
386
+ if (submittedKey === '' && ambiguity) {
387
+ res.writeHead(409, { 'content-type': 'application/json' });
388
+ res.end(JSON.stringify({ error: ambiguity }));
389
+ return;
390
+ }
391
+ if (!isChatProvider(provider)) {
392
+ res.writeHead(400, { 'content-type': 'application/json' });
393
+ res.end(JSON.stringify({ error: { code: 'invalid_provider', message: 'invalid provider' } }));
394
+ return;
395
+ }
396
+ if (body.key !== undefined) {
397
+ if (submittedKey === '')
398
+ delete sessionApiKeys[provider];
399
+ else
400
+ sessionApiKeys[provider] = submittedKey;
401
+ }
402
+ const model = typeof body.model === 'string' ? body.model.trim() : '';
403
+ if (model)
404
+ sessionModels[provider] = model;
405
+ if (resolveApiKey(provider))
406
+ activeChatProvider = provider;
407
+ else if (activeChatProvider === provider)
408
+ activeChatProvider = undefined;
290
409
  res.writeHead(200, { 'content-type': 'application/json' });
291
- res.end(JSON.stringify({ ok: true, hasKey: Boolean(resolveApiKey()), source: apiKeySource() }));
410
+ res.end(JSON.stringify({ ok: true, provider, ...providerStatus(provider) }));
292
411
  });
293
412
  return;
294
413
  }
295
414
  if (req.method === 'POST' && url.pathname === '/chat') {
296
- // The key lives server-side (session key set via /chat/key, or the env). The browser never sends it.
297
- const apiKey = resolveApiKey();
298
- if (!apiKey) {
299
- res.writeHead(200, { 'content-type': 'application/json' });
300
- res.end(JSON.stringify({
301
- error: {
302
- code: 'no_api_key',
303
- message: 'No OpenAI key set. Add one in the Chat tab or set OPENAI_API_KEY.',
304
- },
305
- }));
306
- return;
307
- }
308
415
  const chunks = [];
309
416
  req.on('data', (c) => chunks.push(c));
310
417
  req.on('end', () => {
311
- let body;
312
- try {
313
- body = JSON.parse(Buffer.concat(chunks).toString('utf8'));
314
- }
315
- catch {
418
+ const body = parseJsonObject(Buffer.concat(chunks));
419
+ if (!body) {
316
420
  res.writeHead(400, { 'content-type': 'application/json' });
317
421
  res.end(JSON.stringify({ error: { code: 'invalid_json', message: 'invalid JSON' } }));
318
422
  return;
319
423
  }
320
- handleChat(Array.isArray(body.messages) ? body.messages : [], apiKey)
424
+ const requestedProvider = body.provider;
425
+ if (requestedProvider !== undefined && !isChatProvider(requestedProvider)) {
426
+ res.writeHead(400, { 'content-type': 'application/json' });
427
+ res.end(JSON.stringify({ error: { code: 'invalid_provider', message: 'invalid provider' } }));
428
+ return;
429
+ }
430
+ const ambiguity = ambiguousProviderError();
431
+ if (ambiguity) {
432
+ res.writeHead(409, { 'content-type': 'application/json' });
433
+ res.end(JSON.stringify({ error: ambiguity }));
434
+ return;
435
+ }
436
+ const provider = resolveActiveChatProvider();
437
+ if (!provider) {
438
+ res.writeHead(409, { 'content-type': 'application/json' });
439
+ res.end(JSON.stringify({
440
+ error: {
441
+ code: 'ambiguous_provider',
442
+ message: 'Paste one API key to choose this chat session.',
443
+ },
444
+ }));
445
+ return;
446
+ }
447
+ if (requestedProvider !== undefined && requestedProvider !== provider) {
448
+ res.writeHead(409, { 'content-type': 'application/json' });
449
+ res.end(JSON.stringify({
450
+ error: {
451
+ code: 'provider_mismatch',
452
+ message: 'The chat provider does not match the connected API key.',
453
+ },
454
+ }));
455
+ return;
456
+ }
457
+ // The key and inferred provider live server-side. The browser can only use the bound provider.
458
+ const apiKey = resolveApiKey(provider);
459
+ if (!apiKey) {
460
+ res.writeHead(200, { 'content-type': 'application/json' });
461
+ res.end(JSON.stringify({
462
+ error: {
463
+ code: 'no_api_key',
464
+ message: `No key set for this provider. Add one in Chat or set ${CHAT_PROVIDER_CONFIG[provider].envName}.`,
465
+ },
466
+ }));
467
+ return;
468
+ }
469
+ handleChat(provider, Array.isArray(body.messages) ? body.messages : [], apiKey, typeof body.model === 'string' ? body.model : undefined)
321
470
  .then((result) => {
322
471
  res.writeHead(200, { 'content-type': 'application/json' });
323
472
  res.end(JSON.stringify(result));
@@ -1 +1 @@
1
- {"version":3,"file":"devtools-preview.js","sourceRoot":"","sources":["../src/devtools-preview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devtools-preview.js","sourceRoot":"","sources":["../src/devtools-preview.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** Recognizable provider marks used only as compact compatibility cues in the chat key gate. */
2
+ export declare const OPENAI_MARK = "<svg viewBox=\"0 0 24 24\" role=\"img\" aria-label=\"OpenAI\"><path d=\"M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z\"/></svg>";
3
+ export declare const CLAUDE_MARK = "<svg viewBox=\"0 0 100 100\" role=\"img\" aria-label=\"Claude\"><path d=\"m19.6 66.5 19.7-11 .3-1-.3-.5h-1l-3.3-.2-11.2-.3L14 53l-9.5-.5-2.4-.5L0 49l.2-1.5 2-1.3 2.9.2 6.3.5 9.5.6 6.9.4L38 49.1h1.6l.2-.7-.5-.4-.4-.4L29 41l-10.6-7-5.6-4.1-3-2-1.5-2-.6-4.2 2.7-3 3.7.3.9.2 3.7 2.9 8 6.1L37 36l1.5 1.2.6-.4.1-.3-.7-1.1L33 25l-6-10.4-2.7-4.3-.7-2.6c-.3-1-.4-2-.4-3l3-4.2L28 0l4.2.6L33.8 2l2.6 6 4.1 9.3L47 29.9l2 3.8 1 3.4.3 1h.7v-.5l.5-7.2 1-8.7 1-11.2.3-3.2 1.6-3.8 3-2L61 2.6l2 2.9-.3 1.8-1.1 7.7L59 27.1l-1.5 8.2h.9l1-1.1 4.1-5.4 6.9-8.6 3-3.5L77 13l2.3-1.8h4.3l3.1 4.7-1.4 4.9-4.4 5.6-3.7 4.7-5.3 7.1-3.2 5.7.3.4h.7l12-2.6 6.4-1.1 7.6-1.3 3.5 1.6.4 1.6-1.4 3.4-8.2 2-9.6 2-14.3 3.3-.2.1.2.3 6.4.6 2.8.2h6.8l12.6 1 3.3 2 1.9 2.7-.3 2-5.1 2.6-6.8-1.6-16-3.8-5.4-1.3h-.8v.4l4.6 4.5 8.3 7.5L89 80.1l.5 2.4-1.3 2-1.4-.2-9.2-7-3.6-3-8-6.8h-.5v.7l1.8 2.7 9.8 14.7.5 4.5-.7 1.4-2.6 1-2.7-.6-5.8-8-6-9-4.7-8.2-.5.4-2.9 30.2-1.3 1.5-3 1.2-2.5-2-1.4-3 1.4-6.2 1.6-8 1.3-6.4 1.2-7.9.7-2.6v-.2H49L43 72l-9 12.3-7.2 7.6-1.7.7-3-1.5.3-2.8L24 86l10-12.8 6-7.9 4-4.6-.1-.5h-.3L17.2 77.4l-4.7.6-2-2 .2-3 1-1 8-5.5Z\"/></svg>";
4
+ export declare const GEMINI_MARK = "<svg viewBox=\"0 0 24 24\" role=\"img\" aria-label=\"Gemini\"><path d=\"M12 2c.8 5.5 4.5 9.2 10 10-5.5.8-9.2 4.5-10 10-.8-5.5-4.5-9.2-10-10 5.5-.8 9.2-4.5 10-10Z\"/></svg>";
5
+ //# sourceMappingURL=devtools-provider-logos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-provider-logos.d.ts","sourceRoot":"","sources":["../src/devtools-provider-logos.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,eAAO,MAAM,WAAW,2gDAC0+C,CAAC;AAEngD,eAAO,MAAM,WAAW,wlCACujC,CAAC;AAEhlC,eAAO,MAAM,WAAW,gLAC+I,CAAC"}
@@ -0,0 +1,5 @@
1
+ /** Recognizable provider marks used only as compact compatibility cues in the chat key gate. */
2
+ export const OPENAI_MARK = '<svg viewBox="0 0 24 24" role="img" aria-label="OpenAI"><path d="M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z"/></svg>';
3
+ export const CLAUDE_MARK = '<svg viewBox="0 0 100 100" role="img" aria-label="Claude"><path d="m19.6 66.5 19.7-11 .3-1-.3-.5h-1l-3.3-.2-11.2-.3L14 53l-9.5-.5-2.4-.5L0 49l.2-1.5 2-1.3 2.9.2 6.3.5 9.5.6 6.9.4L38 49.1h1.6l.2-.7-.5-.4-.4-.4L29 41l-10.6-7-5.6-4.1-3-2-1.5-2-.6-4.2 2.7-3 3.7.3.9.2 3.7 2.9 8 6.1L37 36l1.5 1.2.6-.4.1-.3-.7-1.1L33 25l-6-10.4-2.7-4.3-.7-2.6c-.3-1-.4-2-.4-3l3-4.2L28 0l4.2.6L33.8 2l2.6 6 4.1 9.3L47 29.9l2 3.8 1 3.4.3 1h.7v-.5l.5-7.2 1-8.7 1-11.2.3-3.2 1.6-3.8 3-2L61 2.6l2 2.9-.3 1.8-1.1 7.7L59 27.1l-1.5 8.2h.9l1-1.1 4.1-5.4 6.9-8.6 3-3.5L77 13l2.3-1.8h4.3l3.1 4.7-1.4 4.9-4.4 5.6-3.7 4.7-5.3 7.1-3.2 5.7.3.4h.7l12-2.6 6.4-1.1 7.6-1.3 3.5 1.6.4 1.6-1.4 3.4-8.2 2-9.6 2-14.3 3.3-.2.1.2.3 6.4.6 2.8.2h6.8l12.6 1 3.3 2 1.9 2.7-.3 2-5.1 2.6-6.8-1.6-16-3.8-5.4-1.3h-.8v.4l4.6 4.5 8.3 7.5L89 80.1l.5 2.4-1.3 2-1.4-.2-9.2-7-3.6-3-8-6.8h-.5v.7l1.8 2.7 9.8 14.7.5 4.5-.7 1.4-2.6 1-2.7-.6-5.8-8-6-9-4.7-8.2-.5.4-2.9 30.2-1.3 1.5-3 1.2-2.5-2-1.4-3 1.4-6.2 1.6-8 1.3-6.4 1.2-7.9.7-2.6v-.2H49L43 72l-9 12.3-7.2 7.6-1.7.7-3-1.5.3-2.8L24 86l10-12.8 6-7.9 4-4.6-.1-.5h-.3L17.2 77.4l-4.7.6-2-2 .2-3 1-1 8-5.5Z"/></svg>';
4
+ export const GEMINI_MARK = '<svg viewBox="0 0 24 24" role="img" aria-label="Gemini"><path d="M12 2c.8 5.5 4.5 9.2 10 10-5.5.8-9.2 4.5-10 10-.8-5.5-4.5-9.2-10-10 5.5-.8 9.2-4.5 10-10Z"/></svg>';
5
+ //# sourceMappingURL=devtools-provider-logos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-provider-logos.js","sourceRoot":"","sources":["../src/devtools-provider-logos.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,MAAM,CAAC,MAAM,WAAW,GACtB,ggDAAggD,CAAC;AAEngD,MAAM,CAAC,MAAM,WAAW,GACtB,6kCAA6kC,CAAC;AAEhlC,MAAM,CAAC,MAAM,WAAW,GACtB,qKAAqK,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Breakpoint, reduced-motion, and overlay layering rules for the devtools shell. */
2
+ export declare const DEVTOOLS_RESPONSIVE_STYLES: string;
3
+ //# sourceMappingURL=devtools-responsive-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-responsive-styles.d.ts","sourceRoot":"","sources":["../src/devtools-responsive-styles.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,eAAO,MAAM,0BAA0B,QAuFtC,CAAC"}
@@ -0,0 +1,90 @@
1
+ /** Breakpoint, reduced-motion, and overlay layering rules for the devtools shell. */
2
+ export const DEVTOOLS_RESPONSIVE_STYLES = String.raw `
3
+ .rail-scrim{display:none}
4
+ @media (max-width:1179px){
5
+ .workspace{grid-template-columns:minmax(248px,280px) minmax(0,1fr)}
6
+ .rail-toggle--activity{display:inline-flex}
7
+ .pane--log{
8
+ position:fixed;
9
+ z-index:20;
10
+ top:14px;
11
+ right:14px;
12
+ bottom:14px;
13
+ width:min(340px,calc(100vw - 28px));
14
+ transform:translateX(calc(100% + 28px));
15
+ transition:transform .24s cubic-bezier(.2,.8,.2,1);
16
+ }
17
+ body.activity-open .pane--log{transform:translateX(0)}
18
+ body.design-mode .pane--log{transform:translateX(0)}
19
+ .pane--log .rail-close{display:inline-flex}
20
+ body.design-mode .pane--log .rail-close{display:none}
21
+ body.activity-open .rail-scrim{display:block}
22
+ body.design-mode .rail-scrim{display:none}
23
+ }
24
+ @media (max-width:859px){
25
+ .workspace{grid-template-columns:minmax(0,1fr)}
26
+ .rail-toggle--tools{display:inline-flex}
27
+ .pane--tools{
28
+ position:fixed;
29
+ z-index:20;
30
+ top:14px;
31
+ bottom:14px;
32
+ left:14px;
33
+ width:min(290px,calc(100vw - 28px));
34
+ transform:translateX(calc(-100% - 28px));
35
+ transition:transform .24s cubic-bezier(.2,.8,.2,1);
36
+ }
37
+ body.tools-open .pane--tools{transform:translateX(0)}
38
+ .pane--tools .rail-close{display:inline-flex;margin-left:auto}
39
+ body.tools-open .rail-scrim{display:block}
40
+ .brand__url{display:none}
41
+ }
42
+ @media (max-width:639px){
43
+ .workspace{gap:8px;padding:8px}
44
+ .pane{border-radius:22px}
45
+ .bar{min-height:58px;padding:9px 10px}
46
+ .rail-toggle{padding:7px 9px}
47
+ .rail-toggle span:last-child{display:none}
48
+ .modes{margin:auto}
49
+ .mode{min-width:68px;padding:7px 12px}
50
+ .pane--stage>div{padding:12px}
51
+ .controls{
52
+ flex-wrap:nowrap;
53
+ overflow-x:auto;
54
+ margin-bottom:10px;
55
+ }
56
+ .ctl--width{display:none}
57
+ .ctl__spacer{display:none}
58
+ .ctl-btn{white-space:nowrap}
59
+ .chat-gate{padding:18px 4px}
60
+ .chat-gate__card h3{font-size:20px}
61
+ #chat-key-form{grid-template-columns:1fr;align-items:stretch}
62
+ #chat-key-input{min-height:40px}
63
+ .primary-action{width:100%}
64
+ .chat-form .primary-action{width:auto}
65
+ .pane--tools{top:8px;bottom:8px;left:8px;width:min(290px,calc(100vw - 16px))}
66
+ .pane--log{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px)}
67
+ body.design-mode .pane--log{
68
+ top:auto;
69
+ left:8px;
70
+ height:min(58dvh,510px);
71
+ }
72
+ body.design-mode .pane--log>.design-inspector{
73
+ position:static;
74
+ right:auto;
75
+ bottom:auto;
76
+ left:auto;
77
+ max-height:none;
78
+ }
79
+ }
80
+ @media (prefers-reduced-motion:reduce){
81
+ *,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}
82
+ }
83
+ .rail-scrim{
84
+ position:fixed;
85
+ inset:0;
86
+ z-index:15;
87
+ background:rgba(0,0,0,.58);
88
+ }
89
+ `;
90
+ //# sourceMappingURL=devtools-responsive-styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-responsive-styles.js","sourceRoot":"","sources":["../src/devtools-responsive-styles.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuFnD,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Complete composed stylesheet, kept as one `<style>` element in the self-contained harness. */
2
+ export declare const DEVTOOLS_STYLES: string;
3
+ //# sourceMappingURL=devtools-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-styles.d.ts","sourceRoot":"","sources":["../src/devtools-styles.ts"],"names":[],"mappings":"AAirBA,iGAAiG;AACjG,eAAO,MAAM,eAAe,QAKA,CAAC"}