sunpeak 0.20.64 → 0.20.69

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 (75) hide show
  1. package/bin/commands/dev.mjs +88 -46
  2. package/bin/lib/inspect/inspect-config.mjs +6 -6
  3. package/bin/lib/live/live-config.mjs +8 -6
  4. package/bin/lib/test/test-config.mjs +7 -10
  5. package/dist/chatgpt/index.cjs +1 -1
  6. package/dist/chatgpt/index.js +1 -1
  7. package/dist/claude/index.cjs +1 -1
  8. package/dist/claude/index.js +1 -1
  9. package/dist/embed.css +2 -2
  10. package/dist/host/chatgpt/index.cjs +1 -1
  11. package/dist/host/chatgpt/index.js +1 -1
  12. package/dist/index.cjs +22 -12
  13. package/dist/index.cjs.map +1 -1
  14. package/dist/index.d.ts +3 -3
  15. package/dist/index.js +17 -12
  16. package/dist/index.js.map +1 -1
  17. package/dist/inspector/index.cjs +1 -1
  18. package/dist/inspector/index.js +1 -1
  19. package/dist/{inspector-Cl5w_7yQ.cjs → inspector-BSYXIDUe.cjs} +34 -17
  20. package/dist/{inspector-Cl5w_7yQ.cjs.map → inspector-BSYXIDUe.cjs.map} +1 -1
  21. package/dist/{inspector-DPJeSQAd.js → inspector-C5YJHT_c.js} +32 -16
  22. package/dist/{inspector-DPJeSQAd.js.map → inspector-C5YJHT_c.js.map} +1 -1
  23. package/dist/mcp/index.cjs +517 -104
  24. package/dist/mcp/index.cjs.map +1 -1
  25. package/dist/mcp/index.d.ts +1 -1
  26. package/dist/mcp/index.js +505 -92
  27. package/dist/mcp/index.js.map +1 -1
  28. package/dist/style.css +7 -6
  29. package/dist/{use-app-D7-OtXBl.js → use-app-D27K0Cjf.js} +82 -32
  30. package/dist/{use-app-D7-OtXBl.js.map → use-app-D27K0Cjf.js.map} +1 -1
  31. package/dist/{use-app-BcSuulay.cjs → use-app-LPg2jlv8.cjs} +107 -32
  32. package/dist/{use-app-BcSuulay.cjs.map → use-app-LPg2jlv8.cjs.map} +1 -1
  33. package/package.json +21 -21
  34. package/template/dist/albums/albums.html +3 -3
  35. package/template/dist/albums/albums.json +1 -1
  36. package/template/dist/carousel/carousel.html +3 -3
  37. package/template/dist/carousel/carousel.json +1 -1
  38. package/template/dist/map/map.html +887 -811
  39. package/template/dist/map/map.json +1 -1
  40. package/template/dist/review/review.html +2 -2
  41. package/template/dist/review/review.json +1 -1
  42. package/template/node_modules/.bin/vite +2 -2
  43. package/template/node_modules/.bin/vitest +2 -2
  44. package/template/node_modules/.vite/deps/_metadata.json +4 -4
  45. package/template/node_modules/.vite-mcp/deps/@modelcontextprotocol_ext-apps.js +83 -31
  46. package/template/node_modules/.vite-mcp/deps/@modelcontextprotocol_ext-apps.js.map +1 -1
  47. package/template/node_modules/.vite-mcp/deps/@modelcontextprotocol_ext-apps_app-bridge.js +83 -31
  48. package/template/node_modules/.vite-mcp/deps/@modelcontextprotocol_ext-apps_app-bridge.js.map +1 -1
  49. package/template/node_modules/.vite-mcp/deps/@modelcontextprotocol_ext-apps_react.js +83 -31
  50. package/template/node_modules/.vite-mcp/deps/@modelcontextprotocol_ext-apps_react.js.map +1 -1
  51. package/template/node_modules/.vite-mcp/deps/@testing-library_react.js +4 -4
  52. package/template/node_modules/.vite-mcp/deps/@testing-library_react.js.map +1 -1
  53. package/template/node_modules/.vite-mcp/deps/_metadata.json +36 -36
  54. package/template/node_modules/.vite-mcp/deps/{client-ClsaORxz.js → client-96teDLij.js} +6 -6
  55. package/template/node_modules/.vite-mcp/deps/{client-ClsaORxz.js.map → client-96teDLij.js.map} +1 -1
  56. package/template/node_modules/.vite-mcp/deps/{dist-CO4R4Zw4.js → dist-Bd8a6mlN.js} +17 -5
  57. package/template/node_modules/.vite-mcp/deps/{dist-CO4R4Zw4.js.map → dist-Bd8a6mlN.js.map} +1 -1
  58. package/template/node_modules/.vite-mcp/deps/embla-carousel-react.js +1 -1
  59. package/template/node_modules/.vite-mcp/deps/embla-carousel-react.js.map +1 -1
  60. package/template/node_modules/.vite-mcp/deps/mapbox-gl.js +15062 -13925
  61. package/template/node_modules/.vite-mcp/deps/mapbox-gl.js.map +1 -1
  62. package/template/node_modules/.vite-mcp/deps/react-dom.js +3 -3
  63. package/template/node_modules/.vite-mcp/deps/react-dom.js.map +1 -1
  64. package/template/node_modules/.vite-mcp/deps/react-dom_client.js +1 -1
  65. package/template/node_modules/.vite-mcp/deps/react.js +3 -3
  66. package/template/node_modules/.vite-mcp/deps/react.js.map +1 -1
  67. package/template/node_modules/.vite-mcp/deps/react_jsx-dev-runtime.js +2 -2
  68. package/template/node_modules/.vite-mcp/deps/react_jsx-dev-runtime.js.map +1 -1
  69. package/template/node_modules/.vite-mcp/deps/react_jsx-runtime.js +2 -2
  70. package/template/node_modules/.vite-mcp/deps/react_jsx-runtime.js.map +1 -1
  71. package/template/node_modules/.vite-mcp/deps/vitest.js +57 -36
  72. package/template/node_modules/.vite-mcp/deps/vitest.js.map +1 -1
  73. package/template/package.json +11 -11
  74. package/template/tests/e2e/visual.spec.ts-snapshots/albums-fullscreen-chatgpt-linux.png +0 -0
  75. package/template/tests/e2e/visual.spec.ts-snapshots/albums-fullscreen-claude-darwin.png +0 -0
package/dist/style.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
1
+ /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
2
  @layer properties {
3
3
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
4
4
  *, :before, :after, ::backdrop {
@@ -73,8 +73,9 @@
73
73
 
74
74
  @layer theme {
75
75
  :root, :host {
76
- --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
77
- "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
76
+ --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
77
+ "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
78
+ "Segoe UI Symbol", "Noto Color Emoji";
78
79
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
79
80
  "Courier New", monospace;
80
81
  --color-black: #000;
@@ -138,7 +139,7 @@
138
139
  -webkit-text-size-adjust: 100%;
139
140
  tab-size: 4;
140
141
  line-height: 1.5;
141
- font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
142
+ font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
142
143
  font-feature-settings: var(--default-font-feature-settings, normal);
143
144
  font-variation-settings: var(--default-font-variation-settings, normal);
144
145
  -webkit-tap-highlight-color: transparent;
@@ -204,7 +205,7 @@
204
205
  border-collapse: collapse;
205
206
  }
206
207
 
207
- :-moz-focusring {
208
+ :-moz-focusring:where(:not(iframe)) {
208
209
  outline: auto;
209
210
  }
210
211
 
@@ -2053,7 +2054,7 @@
2053
2054
  }
2054
2055
 
2055
2056
  .max-md\:translate-x-0 {
2056
- --tw-translate-x: 0;
2057
+ --tw-translate-x: 0px;
2057
2058
  translate: var(--tw-translate-x) var(--tw-translate-y);
2058
2059
  }
2059
2060
 
@@ -1,7 +1,7 @@
1
1
  import { $ as _undefined, A as ListToolsRequestSchema, B as ResourceLinkSchema, F as PingRequestSchema, G as ToolSchema, O as ListResourcesResultSchema, R as ReadResourceResultSchema, a as CallToolResultSchema, at as object, bt as config, ct as union, et as array, h as EmptyResultSchema, i as CallToolRequestSchema, it as number, l as CreateMessageResultSchema, lt as unknown, m as EmbeddedResourceSchema, n as mergeCapabilities, nt as literal, ot as record, rt as never, s as ContentBlockSchema, st as string, t as Protocol, tt as boolean, u as CreateMessageResultWithToolsSchema, v as ImplementationSchema, wt as __require, x as JSONRPCMessageSchema, z as RequestIdSchema } from "./protocol-fGgeFIiL.js";
2
2
  import { createContext, useContext, useEffect, useState } from "react";
3
3
  import { jsx } from "react/jsx-runtime";
4
- //#region ../../node_modules/.pnpm/@modelcontextprotocol+ext-apps@1.7.4_@modelcontextprotocol+sdk@1.29.0_zod@4.4.3__react-_bc4d5adeaec14d46b9a46bfff8177b13/node_modules/@modelcontextprotocol/ext-apps/dist/src/app.js
4
+ //#region ../../node_modules/.pnpm/@modelcontextprotocol+ext-apps@1.7.4_@modelcontextprotocol+sdk@1.29.0_zod@4.4.3__react-_b5c68214f1621bc5f24903738e19c6a8/node_modules/@modelcontextprotocol/ext-apps/dist/src/app.js
5
5
  ((X) => typeof __require < "u" ? __require : typeof Proxy < "u" ? new Proxy(X, { get: (Y, Z) => (typeof __require < "u" ? __require : Y)[Z] }) : X)(function(X) {
6
6
  if (typeof __require < "u") return __require.apply(this, arguments);
7
7
  throw Error("Dynamic require of \"" + X + "\" is not supported");
@@ -62,7 +62,24 @@ var _ = class extends Protocol {
62
62
  if (this._registeredMethods.has(Z)) throw Error(`Handler for "${Z}" already registered (via ${Y}). Use addEventListener() to attach multiple listeners, or the on* setter for replace semantics.`);
63
63
  this._registeredMethods.add(Z);
64
64
  }
65
- }, E = "2026-01-26", l = "ui/open-link", r = "ui/download-file", n = "ui/message", s = "ui/notifications/size-changed", t = "ui/notifications/tool-input", O = "ui/notifications/tool-input-partial", e = "ui/notifications/tool-result", QQ = "ui/notifications/tool-cancelled", XQ = "ui/notifications/host-context-changed", YQ = "ui/notifications/request-teardown", ZQ = "ui/resource-teardown", $Q = "ui/initialize", DQ = "ui/notifications/initialized", JQ = "ui/request-display-mode";
65
+ };
66
+ var E = "2026-01-26";
67
+ var l = "ui/open-link";
68
+ var r = "ui/download-file";
69
+ var n = "ui/message";
70
+ var a = "ui/notifications/sandbox-proxy-ready";
71
+ var o = "ui/notifications/sandbox-resource-ready";
72
+ var s = "ui/notifications/size-changed";
73
+ var t = "ui/notifications/tool-input";
74
+ var O = "ui/notifications/tool-input-partial";
75
+ var e = "ui/notifications/tool-result";
76
+ var QQ = "ui/notifications/tool-cancelled";
77
+ var XQ = "ui/notifications/host-context-changed";
78
+ var YQ = "ui/notifications/request-teardown";
79
+ var ZQ = "ui/resource-teardown";
80
+ var $Q = "ui/initialize";
81
+ var DQ = "ui/notifications/initialized";
82
+ var JQ = "ui/request-display-mode";
66
83
  var j = class {
67
84
  eventTarget;
68
85
  eventSource;
@@ -96,11 +113,14 @@ var j = class {
96
113
  onmessage;
97
114
  sessionId;
98
115
  setProtocolVersion;
99
- }, g = union([literal("light"), literal("dark")]).describe("Color theme preference for the host environment."), W = union([
116
+ };
117
+ var g = union([literal("light"), literal("dark")]).describe("Color theme preference for the host environment.");
118
+ var W = union([
100
119
  literal("inline"),
101
120
  literal("fullscreen"),
102
121
  literal("pip")
103
- ]).describe("Display mode for UI presentation."), BQ = record(union([
122
+ ]).describe("Display mode for UI presentation.");
123
+ var BQ = record(union([
104
124
  literal("--color-background-primary"),
105
125
  literal("--color-background-secondary"),
106
126
  literal("--color-background-tertiary"),
@@ -195,11 +215,15 @@ Individual style keys are optional - hosts may provide any subset of these value
195
215
  Values are strings containing CSS values (colors, sizes, font stacks, etc.).
196
216
 
197
217
  Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Record<K, string>>\`
198
- for compatibility with Zod schema generation. Both are functionally equivalent for validation.`), _Q = object({
218
+ for compatibility with Zod schema generation. Both are functionally equivalent for validation.`);
219
+ var _Q = object({
199
220
  method: literal("ui/open-link"),
200
221
  params: object({ url: string().describe("URL to open in the host's browser") })
201
- }), I = object({ isError: boolean().optional().describe("True if the host failed to open the URL (e.g., due to security policy).") }).passthrough(), F = object({ isError: boolean().optional().describe("True if the download failed (e.g., user cancelled or host denied).") }).passthrough(), q = object({ isError: boolean().optional().describe("True if the host rejected or failed to deliver the message.") }).passthrough();
202
- object({
222
+ });
223
+ var I = object({ isError: boolean().optional().describe("True if the host failed to open the URL (e.g., due to security policy).") }).passthrough();
224
+ var F = object({ isError: boolean().optional().describe("True if the download failed (e.g., user cancelled or host denied).") }).passthrough();
225
+ var q = object({ isError: boolean().optional().describe("True if the host rejected or failed to deliver the message.") }).passthrough();
226
+ var EQ = object({
203
227
  method: literal("ui/notifications/sandbox-proxy-ready"),
204
228
  params: object({})
205
229
  });
@@ -211,43 +235,55 @@ var L = object({
211
235
  resourceDomains: array(string()).optional().describe("Origins for static resources (images, scripts, stylesheets, fonts, media).\n\n- Maps to CSP `img-src`, `script-src`, `style-src`, `font-src`, `media-src` directives\n- Wildcard subdomains supported: `https://*.example.com`\n- Empty or omitted → no network resources (secure default)"),
212
236
  frameDomains: array(string()).optional().describe("Origins for nested iframes.\n\n- Maps to CSP `frame-src` directive\n- Empty or omitted → no nested iframes allowed (`frame-src 'none'`)"),
213
237
  baseUriDomains: array(string()).optional().describe("Allowed base URIs for the document.\n\n- Maps to CSP `base-uri` directive\n- Empty or omitted → only same origin allowed (`base-uri 'self'`)")
214
- }), B = object({
238
+ });
239
+ var B = object({
215
240
  camera: object({}).optional().describe("Request camera access.\n\nMaps to Permission Policy `camera` feature."),
216
241
  microphone: object({}).optional().describe("Request microphone access.\n\nMaps to Permission Policy `microphone` feature."),
217
242
  geolocation: object({}).optional().describe("Request geolocation access.\n\nMaps to Permission Policy `geolocation` feature."),
218
243
  clipboardWrite: object({}).optional().describe("Request clipboard write access.\n\nMaps to Permission Policy `clipboard-write` feature.")
219
- }), OQ = object({
244
+ });
245
+ var OQ = object({
220
246
  method: literal("ui/notifications/size-changed"),
221
247
  params: object({
222
248
  width: number().optional().describe("New width in pixels."),
223
249
  height: number().optional().describe("New height in pixels.")
224
250
  })
225
- }), P = object({
251
+ });
252
+ var P = object({
226
253
  method: literal("ui/notifications/tool-input"),
227
254
  params: object({ arguments: record(string(), unknown().describe("Complete tool call arguments as key-value pairs.")).optional().describe("Complete tool call arguments as key-value pairs.") })
228
- }), w = object({
255
+ });
256
+ var w = object({
229
257
  method: literal("ui/notifications/tool-input-partial"),
230
258
  params: object({ arguments: record(string(), unknown().describe("Partial tool call arguments (incomplete, may change).")).optional().describe("Partial tool call arguments (incomplete, may change).") })
231
- }), A = object({
259
+ });
260
+ var A = object({
232
261
  method: literal("ui/notifications/tool-cancelled"),
233
262
  params: object({ reason: string().optional().describe("Optional reason for the cancellation (e.g., \"user action\", \"timeout\").") })
234
- }), v = object({ fonts: string().optional() }), f = object({
263
+ });
264
+ var v = object({ fonts: string().optional() });
265
+ var f = object({
235
266
  variables: BQ.optional().describe("CSS variables for theming the app."),
236
267
  css: v.optional().describe("CSS blocks that apps can inject.")
237
- }), R = object({
268
+ });
269
+ var R = object({
238
270
  method: literal("ui/resource-teardown"),
239
271
  params: object({})
240
- }), zQ = record(string(), unknown()), z = object({
272
+ });
273
+ var zQ = record(string(), unknown());
274
+ var z = object({
241
275
  text: object({}).optional().describe("Host supports text content blocks."),
242
276
  image: object({}).optional().describe("Host supports image content blocks."),
243
277
  audio: object({}).optional().describe("Host supports audio content blocks."),
244
278
  resource: object({}).optional().describe("Host supports resource content blocks."),
245
279
  resourceLink: object({}).optional().describe("Host supports resource link content blocks."),
246
280
  structuredContent: object({}).optional().describe("Host supports structured content.")
247
- }), IQ = object({
281
+ });
282
+ var IQ = object({
248
283
  method: literal("ui/notifications/request-teardown"),
249
284
  params: object({}).optional()
250
- }), u = object({
285
+ });
286
+ var u = object({
251
287
  experimental: object({}).optional().describe("Experimental features (structure TBD)."),
252
288
  openLinks: object({}).optional().describe("Host supports opening external URLs."),
253
289
  downloadFile: object({}).optional().describe("Host supports file downloads via ui/download-file."),
@@ -261,14 +297,17 @@ var L = object({
261
297
  updateModelContext: z.optional().describe("Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns."),
262
298
  message: z.optional().describe("Host supports receiving content messages (ui/message) from the view."),
263
299
  sampling: object({ tools: object({}).optional().describe("Host supports tool use via `tools` and `toolChoice` parameters.") }).optional().describe("Host supports LLM sampling (sampling/createMessage) from the view.\nMirrors the MCP `ClientCapabilities.sampling` shape so hosts can pass it through.")
264
- }), d = object({
300
+ });
301
+ var d = object({
265
302
  experimental: object({}).optional().describe("Experimental features (structure TBD)."),
266
303
  tools: object({ listChanged: boolean().optional().describe("App supports tools/list_changed notifications.") }).optional().describe("App exposes MCP-style tools that the host can call."),
267
304
  availableDisplayModes: array(W).optional().describe("Display modes the app supports.")
268
- }), FQ = object({
305
+ });
306
+ var FQ = object({
269
307
  method: literal("ui/notifications/initialized"),
270
308
  params: object({}).optional()
271
- }), qQ = object({
309
+ });
310
+ var qQ = object({
272
311
  csp: L.optional().describe("Content Security Policy configuration for UI resources."),
273
312
  permissions: B.optional().describe("Sandbox permissions requested by the UI resource."),
274
313
  domain: string().optional().describe(`Dedicated origin for view sandbox.
@@ -287,10 +326,14 @@ Boolean requesting whether a visible border and background is provided by the ho
287
326
  - \`true\`: request visible border + background
288
327
  - \`false\`: request no visible border + background
289
328
  - omitted: host decides border`)
290
- }), PQ = object({
329
+ });
330
+ var PQ = object({
291
331
  method: literal("ui/request-display-mode"),
292
332
  params: object({ mode: W.describe("The display mode being requested.") })
293
- }), U = object({ mode: W.describe("The display mode that was actually set. May differ from requested if not supported.") }).passthrough(), h = union([literal("model"), literal("app")]).describe("Tool visibility scope - who can access the tool."), wQ = object({
333
+ });
334
+ var U = object({ mode: W.describe("The display mode that was actually set. May differ from requested if not supported.") }).passthrough();
335
+ var h = union([literal("model"), literal("app")]).describe("Tool visibility scope - who can access the tool.");
336
+ var wQ = object({
294
337
  resourceUri: string().optional(),
295
338
  visibility: array(h).optional().describe(`Who can access this tool. Default: ["model", "app"]
296
339
  - "model": Tool visible to and callable by the agent
@@ -302,14 +345,15 @@ object({ mimeTypes: array(string()).optional().describe("Array of supported MIME
302
345
  var AQ = object({
303
346
  method: literal("ui/download-file"),
304
347
  params: object({ contents: array(union([EmbeddedResourceSchema, ResourceLinkSchema])).describe("Resource contents to download — embedded (inline data) or linked (host fetches). Uses standard MCP resource types.") })
305
- }), RQ = object({
348
+ });
349
+ var RQ = object({
306
350
  method: literal("ui/message"),
307
351
  params: object({
308
352
  role: literal("user").describe("Message role, currently only \"user\" is supported."),
309
353
  content: array(ContentBlockSchema).describe("Message content blocks (text, image, etc.).")
310
354
  })
311
355
  });
312
- object({
356
+ var UQ = object({
313
357
  method: literal("ui/notifications/sandbox-resource-ready"),
314
358
  params: object({
315
359
  html: string().describe("HTML content to load into the inner iframe."),
@@ -321,7 +365,8 @@ object({
321
365
  var H = object({
322
366
  method: literal("ui/notifications/tool-result"),
323
367
  params: CallToolResultSchema.describe("Standard MCP tool execution result.")
324
- }), T = object({
368
+ });
369
+ var T = object({
325
370
  toolInfo: object({
326
371
  id: RequestIdSchema.optional().describe("JSON-RPC id of the tools/call request."),
327
372
  tool: ToolSchema.describe("Tool definition including name, inputSchema, etc.")
@@ -350,23 +395,27 @@ container holding the app. Specify either width or maxWidth, and either height o
350
395
  bottom: number().describe("Bottom safe area inset in pixels."),
351
396
  left: number().describe("Left safe area inset in pixels.")
352
397
  }).optional().describe("Mobile safe area boundaries in pixels.")
353
- }).passthrough(), M = object({
398
+ }).passthrough();
399
+ var M = object({
354
400
  method: literal("ui/notifications/host-context-changed"),
355
401
  params: T.describe("Partial context update containing only changed fields.")
356
- }), HQ = object({
402
+ });
403
+ var HQ = object({
357
404
  method: literal("ui/update-model-context"),
358
405
  params: object({
359
406
  content: array(ContentBlockSchema).optional().describe("Context content blocks (text, image, etc.)."),
360
407
  structuredContent: record(string(), unknown().describe("Structured content for machine-readable context data.")).optional().describe("Structured content for machine-readable context data.")
361
408
  })
362
- }), TQ = object({
409
+ });
410
+ var TQ = object({
363
411
  method: literal("ui/initialize"),
364
412
  params: object({
365
413
  appInfo: ImplementationSchema.describe("App identification (name and version)."),
366
414
  appCapabilities: d.describe("Features and capabilities this app provides."),
367
415
  protocolVersion: string().describe("Protocol version this app supports.")
368
416
  })
369
- }), C = object({
417
+ });
418
+ var C = object({
370
419
  protocolVersion: string().describe("Negotiated protocol version string (e.g., \"2025-11-21\")."),
371
420
  hostInfo: ImplementationSchema.describe("Host application identification and version."),
372
421
  hostCapabilities: u.describe("Features and capabilities provided by the host."),
@@ -410,7 +459,8 @@ function SQ(X) {
410
459
  let Z = document.createElement("style");
411
460
  Z.id = "__mcp-host-fonts", Z.textContent = X, document.head.appendChild(Z);
412
461
  }
413
- var eX = "ui/resourceUri", QY = "text/html;profile=mcp-app";
462
+ var eX = "ui/resourceUri";
463
+ var QY = "text/html;profile=mcp-app";
414
464
  var i = class i extends _ {
415
465
  _appInfo;
416
466
  _capabilities;
@@ -964,6 +1014,6 @@ function useApp() {
964
1014
  return useContext(AppContext).app;
965
1015
  }
966
1016
  //#endregion
967
- export { s as $, TQ as A, e as B, PQ as C, RQ as D, R as E, ZQ as F, i as G, f as H, _ as I, l as J, j as K, _Q as L, W as M, XQ as N, SQ as O, YQ as P, r as Q, bQ as R, P as S, QY as T, g as U, eX as V, h as W, q as X, n as Y, qQ as Z, JQ as _, AQ as a, z as at, O as b, CQ as c, F as d, t as et, FQ as f, IQ as g, I as h, A as i, wQ as it, U as j, T as k, DQ as l, HQ as m, AppProvider as n, v as nt, B as o, zQ as ot, H as p, kQ as q, $Q as r, w as rt, C as s, useApp as t, u as tt, E as u, L as v, QQ as w, OQ as x, M as y, d as z };
1017
+ export { o as $, T as A, a as B, P as C, R as D, QY as E, XQ as F, f as G, d as H, YQ as I, i as J, g as K, ZQ as L, U as M, UQ as N, RQ as O, W as P, n as Q, _ as R, OQ as S, QQ as T, e as U, bQ as V, eX as W, kQ as X, j as Y, l as Z, IQ as _, AQ as a, u as at, M as b, CQ as c, wQ as ct, EQ as d, q as et, F as f, I as g, HQ as h, A as i, t as it, TQ as j, SQ as k, DQ as l, z as lt, H as m, AppProvider as n, r as nt, B as o, v as ot, FQ as p, h as q, $Q as r, s as rt, C as s, w as st, useApp as t, qQ as tt, E as u, zQ as ut, JQ as v, PQ as w, O as x, L as y, _Q as z };
968
1018
 
969
- //# sourceMappingURL=use-app-D7-OtXBl.js.map
1019
+ //# sourceMappingURL=use-app-D27K0Cjf.js.map