veryfront 0.1.1122 → 0.1.1123

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 (157) hide show
  1. package/esm/deno.js +1 -1
  2. package/esm/extensions/ext-llm-openai/src/openai-responses-request-builder.d.ts.map +1 -1
  3. package/esm/extensions/ext-llm-openai/src/openai-responses-request-builder.js +5 -0
  4. package/esm/src/agent/hosted/child-lifecycle.d.ts.map +1 -1
  5. package/esm/src/agent/hosted/child-lifecycle.js +1 -12
  6. package/esm/src/agent/hosted/cloud-agent-chat-execution.d.ts +38 -0
  7. package/esm/src/agent/hosted/cloud-agent-chat-execution.d.ts.map +1 -0
  8. package/esm/src/agent/hosted/cloud-agent-chat-execution.js +349 -0
  9. package/esm/src/agent/hosted/cloud-agent-child-tools.d.ts +80 -0
  10. package/esm/src/agent/hosted/cloud-agent-child-tools.d.ts.map +1 -0
  11. package/esm/src/agent/hosted/cloud-agent-child-tools.js +280 -0
  12. package/esm/src/agent/hosted/cloud-agent-config.d.ts +69 -0
  13. package/esm/src/agent/hosted/cloud-agent-config.d.ts.map +1 -0
  14. package/esm/src/agent/hosted/cloud-agent-config.js +129 -0
  15. package/esm/src/agent/hosted/cloud-agent-paths.d.ts +42 -0
  16. package/esm/src/agent/hosted/cloud-agent-paths.d.ts.map +1 -0
  17. package/esm/src/agent/hosted/cloud-agent-paths.js +117 -0
  18. package/esm/src/agent/hosted/cloud-agent-provider-bootstrap.d.ts +49 -0
  19. package/esm/src/agent/hosted/cloud-agent-provider-bootstrap.d.ts.map +1 -0
  20. package/esm/src/agent/hosted/cloud-agent-provider-bootstrap.js +96 -0
  21. package/esm/src/agent/hosted/durable-child-fork-execution.d.ts.map +1 -1
  22. package/esm/src/agent/hosted/durable-child-fork-execution.js +1 -12
  23. package/esm/src/agent/hosted/runtime-request-config.js +2 -2
  24. package/esm/src/agent/hosted/stream-finalization.d.ts.map +1 -1
  25. package/esm/src/agent/hosted/stream-finalization.js +2 -26
  26. package/esm/src/agent/hosted/veryfront-cloud-agent-service.d.ts +11 -93
  27. package/esm/src/agent/hosted/veryfront-cloud-agent-service.d.ts.map +1 -1
  28. package/esm/src/agent/hosted/veryfront-cloud-agent-service.js +8 -901
  29. package/esm/src/agent/project/agent-runtime.d.ts.map +1 -1
  30. package/esm/src/agent/project/agent-runtime.js +3 -0
  31. package/esm/src/agent/runtime/chat-stream-handler.d.ts.map +1 -1
  32. package/esm/src/agent/runtime/chat-stream-handler.js +1 -28
  33. package/esm/src/agent/streaming/stream-outcome.d.ts +30 -0
  34. package/esm/src/agent/streaming/stream-outcome.d.ts.map +1 -0
  35. package/esm/src/agent/streaming/stream-outcome.js +62 -0
  36. package/esm/src/agent/types.d.ts +3 -0
  37. package/esm/src/agent/types.d.ts.map +1 -1
  38. package/esm/src/eval/studio.d.ts +1 -1
  39. package/esm/src/html/styles-builder/plugin-loader.d.ts.map +1 -1
  40. package/esm/src/html/styles-builder/plugin-loader.js +4 -2
  41. package/esm/src/modules/server/classify.d.ts +54 -0
  42. package/esm/src/modules/server/classify.d.ts.map +1 -0
  43. package/esm/src/modules/server/classify.js +50 -0
  44. package/esm/src/modules/server/fs-probe.d.ts +14 -0
  45. package/esm/src/modules/server/fs-probe.d.ts.map +1 -0
  46. package/esm/src/modules/server/fs-probe.js +17 -0
  47. package/esm/src/modules/server/module-batch-handler.d.ts.map +1 -1
  48. package/esm/src/modules/server/module-batch-handler.js +31 -45
  49. package/esm/src/modules/server/module-server.d.ts.map +1 -1
  50. package/esm/src/modules/server/module-server.js +77 -93
  51. package/esm/src/modules/server/module-transform.d.ts +73 -0
  52. package/esm/src/modules/server/module-transform.d.ts.map +1 -0
  53. package/esm/src/modules/server/module-transform.js +64 -0
  54. package/esm/src/modules/server/ssr-import-rewriter.d.ts +1 -1
  55. package/esm/src/modules/server/ssr-import-rewriter.d.ts.map +1 -1
  56. package/esm/src/observability/error-collector.d.ts.map +1 -1
  57. package/esm/src/observability/error-collector.js +4 -11
  58. package/esm/src/observability/log-buffer.d.ts.map +1 -1
  59. package/esm/src/observability/log-buffer.js +4 -11
  60. package/esm/src/observability/request-profiler.d.ts +4 -0
  61. package/esm/src/observability/request-profiler.d.ts.map +1 -1
  62. package/esm/src/observability/request-profiler.js +9 -4
  63. package/esm/src/proxy/server-timing.d.ts.map +1 -1
  64. package/esm/src/proxy/server-timing.js +2 -14
  65. package/esm/src/react/components/chat/agent-card.d.ts +2 -3
  66. package/esm/src/react/components/chat/agent-card.d.ts.map +1 -1
  67. package/esm/src/react/components/chat/agent-card.js +3 -12
  68. package/esm/src/react/components/chat/agent-picker-context.d.ts +2 -3
  69. package/esm/src/react/components/chat/agent-picker-context.d.ts.map +1 -1
  70. package/esm/src/react/components/chat/agent-picker-context.js +3 -13
  71. package/esm/src/react/components/chat/chat/components/attachment-pill.d.ts +2 -6
  72. package/esm/src/react/components/chat/chat/components/attachment-pill.d.ts.map +1 -1
  73. package/esm/src/react/components/chat/chat/components/attachment-pill.js +3 -15
  74. package/esm/src/react/components/chat/chat/components/attachments-panel.d.ts +2 -12
  75. package/esm/src/react/components/chat/chat/components/attachments-panel.d.ts.map +1 -1
  76. package/esm/src/react/components/chat/chat/components/attachments-panel.js +3 -21
  77. package/esm/src/react/components/chat/chat/components/branch-picker.d.ts.map +1 -1
  78. package/esm/src/react/components/chat/chat/components/branch-picker.js +2 -11
  79. package/esm/src/react/components/chat/chat/components/inline-citation.d.ts.map +1 -1
  80. package/esm/src/react/components/chat/chat/components/inline-citation.js +2 -11
  81. package/esm/src/react/components/chat/chat/components/message-actions.d.ts.map +1 -1
  82. package/esm/src/react/components/chat/chat/components/message-actions.js +2 -11
  83. package/esm/src/react/components/chat/chat/components/message-feedback.d.ts.map +1 -1
  84. package/esm/src/react/components/chat/chat/components/message-feedback.js +2 -11
  85. package/esm/src/react/components/chat/chat/components/reasoning.d.ts +2 -3
  86. package/esm/src/react/components/chat/chat/components/reasoning.d.ts.map +1 -1
  87. package/esm/src/react/components/chat/chat/components/reasoning.js +3 -12
  88. package/esm/src/react/components/chat/chat/components/sidebar.d.ts +2 -3
  89. package/esm/src/react/components/chat/chat/components/sidebar.d.ts.map +1 -1
  90. package/esm/src/react/components/chat/chat/components/sidebar.js +4 -22
  91. package/esm/src/react/components/chat/chat/components/sources.d.ts +2 -3
  92. package/esm/src/react/components/chat/chat/components/sources.d.ts.map +1 -1
  93. package/esm/src/react/components/chat/chat/components/sources.js +3 -12
  94. package/esm/src/react/components/chat/chat/components/step-indicator.d.ts +2 -6
  95. package/esm/src/react/components/chat/chat/components/step-indicator.d.ts.map +1 -1
  96. package/esm/src/react/components/chat/chat/components/step-indicator.js +3 -15
  97. package/esm/src/react/components/chat/chat/components/tool-ui.d.ts +2 -3
  98. package/esm/src/react/components/chat/chat/components/tool-ui.d.ts.map +1 -1
  99. package/esm/src/react/components/chat/chat/components/tool-ui.js +3 -12
  100. package/esm/src/react/components/chat/chat/composition/chat-message-list.d.ts.map +1 -1
  101. package/esm/src/react/components/chat/chat/composition/chat-message-list.js +2 -11
  102. package/esm/src/react/components/chat/chat/contexts/chat-context.d.ts +2 -2
  103. package/esm/src/react/components/chat/chat/contexts/chat-context.d.ts.map +1 -1
  104. package/esm/src/react/components/chat/chat/contexts/chat-context.js +3 -12
  105. package/esm/src/react/components/chat/chat/contexts/composer-context.d.ts +2 -2
  106. package/esm/src/react/components/chat/chat/contexts/composer-context.d.ts.map +1 -1
  107. package/esm/src/react/components/chat/chat/contexts/composer-context.js +3 -12
  108. package/esm/src/react/components/chat/chat/contexts/conversations-context.d.ts +2 -2
  109. package/esm/src/react/components/chat/chat/contexts/conversations-context.d.ts.map +1 -1
  110. package/esm/src/react/components/chat/chat/contexts/conversations-context.js +3 -12
  111. package/esm/src/react/components/chat/chat/contexts/message-context.d.ts +2 -2
  112. package/esm/src/react/components/chat/chat/contexts/message-context.d.ts.map +1 -1
  113. package/esm/src/react/components/chat/chat/contexts/message-context.js +3 -12
  114. package/esm/src/react/components/chat/chat-actions.d.ts +2 -6
  115. package/esm/src/react/components/chat/chat-actions.d.ts.map +1 -1
  116. package/esm/src/react/components/chat/chat-actions.js +3 -15
  117. package/esm/src/react/components/chat/model-selector.d.ts +2 -6
  118. package/esm/src/react/components/chat/model-selector.d.ts.map +1 -1
  119. package/esm/src/react/components/chat/model-selector.js +3 -15
  120. package/esm/src/react/components/create-strict-context.d.ts +44 -0
  121. package/esm/src/react/components/create-strict-context.d.ts.map +1 -0
  122. package/esm/src/react/components/create-strict-context.js +56 -0
  123. package/esm/src/react/components/ui/app-shell.d.ts +2 -2
  124. package/esm/src/react/components/ui/app-shell.d.ts.map +1 -1
  125. package/esm/src/react/components/ui/app-shell.js +3 -7
  126. package/esm/src/react/components/ui/color-mode.d.ts +2 -2
  127. package/esm/src/react/components/ui/color-mode.d.ts.map +1 -1
  128. package/esm/src/react/components/ui/color-mode.js +3 -11
  129. package/esm/src/react/components/ui/command.d.ts.map +1 -1
  130. package/esm/src/react/components/ui/command.js +2 -7
  131. package/esm/src/react/components/ui/select.d.ts.map +1 -1
  132. package/esm/src/react/components/ui/select.js +2 -7
  133. package/esm/src/react/components/ui/tabs.d.ts.map +1 -1
  134. package/esm/src/react/components/ui/tabs.js +3 -4
  135. package/esm/src/runs/schemas.d.ts +9 -9
  136. package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
  137. package/esm/src/server/handlers/dev/framework-candidates.generated.js +79 -106
  138. package/esm/src/server/reload-notifier.d.ts +0 -1
  139. package/esm/src/server/reload-notifier.d.ts.map +1 -1
  140. package/esm/src/server/reload-notifier.js +7 -25
  141. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.d.ts.map +1 -1
  142. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.js +1 -1
  143. package/esm/src/utils/base64url.d.ts +9 -1
  144. package/esm/src/utils/base64url.d.ts.map +1 -1
  145. package/esm/src/utils/base64url.js +25 -11
  146. package/esm/src/utils/index.d.ts +2 -1
  147. package/esm/src/utils/index.d.ts.map +1 -1
  148. package/esm/src/utils/index.js +2 -1
  149. package/esm/src/utils/subscriber-set.d.ts +19 -0
  150. package/esm/src/utils/subscriber-set.d.ts.map +1 -0
  151. package/esm/src/utils/subscriber-set.js +38 -0
  152. package/esm/src/utils/version-constant.d.ts +1 -1
  153. package/esm/src/utils/version-constant.js +1 -1
  154. package/esm/src/workflow/claude-code/websocket-publisher.d.ts.map +1 -1
  155. package/esm/src/workflow/claude-code/websocket-publisher.js +8 -15
  156. package/esm/src/workflow/schemas/workflow.schema.d.ts +4 -4
  157. package/package.json +5 -5
@@ -4,7 +4,8 @@ const storage = new AsyncLocalStorage();
4
4
  const records = [];
5
5
  const MAX_RECORDS = 200;
6
6
  let sequence = 0;
7
- function roundMs(value) {
7
+ /** Round to 2 decimal places (Server-Timing millisecond precision). */
8
+ export function roundMs(value) {
8
9
  return Math.round(value * 100) / 100;
9
10
  }
10
11
  function shouldEnableProfiling() {
@@ -119,13 +120,17 @@ function sanitizeMetricName(name) {
119
120
  function formatDuration(value) {
120
121
  return Math.max(0, roundMs(value)).toFixed(2);
121
122
  }
122
- export function buildServerTimingHeader(record) {
123
- const metrics = [`total;dur=${formatDuration(record.totalMs)}`];
124
- for (const [name, duration] of Object.entries(record.phases).slice(0, 20)) {
123
+ /** Build a Server-Timing header value from a total plus named phase durations. */
124
+ export function buildServerTimingValue(totalLabel, totalMs, phases) {
125
+ const metrics = [`${sanitizeMetricName(totalLabel)};dur=${formatDuration(totalMs)}`];
126
+ for (const [name, duration] of phases) {
125
127
  metrics.push(`${sanitizeMetricName(name)};dur=${formatDuration(duration)}`);
126
128
  }
127
129
  return metrics.join(", ");
128
130
  }
131
+ export function buildServerTimingHeader(record) {
132
+ return buildServerTimingValue("total", record.totalMs, Object.entries(record.phases).slice(0, 20));
133
+ }
129
134
  export function withServerTimingHeader(response, record) {
130
135
  if (!record || !shouldEnableServerTiming())
131
136
  return response;
@@ -1 +1 @@
1
- {"version":3,"file":"server-timing.d.ts","sourceRoot":"","sources":["../../../src/src/proxy/server-timing.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAcD,wBAAgB,6BAA6B,IAAI,OAAO,CAGvD;AAED,wBAAgB,uBAAuB,CACrC,OAAO,UAAkC,GACxC,iBAAiB,CAMnB;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,MAAM,EACZ,UAAU,SAAI,GACb,IAAI,CAGN;AAED,wBAAsB,6BAA6B,CAAC,CAAC,EACnD,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CASZ;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,iBAAiB,EACzB,OAAO,SAAuC,GAC7C,QAAQ,CAwBV"}
1
+ {"version":3,"file":"server-timing.d.ts","sourceRoot":"","sources":["../../../src/src/proxy/server-timing.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,wBAAgB,6BAA6B,IAAI,OAAO,CAGvD;AAED,wBAAgB,uBAAuB,CACrC,OAAO,UAAkC,GACxC,iBAAiB,CAMnB;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,MAAM,EACZ,UAAU,SAAI,GACb,IAAI,CAGN;AAED,wBAAsB,6BAA6B,CAAC,CAAC,EACnD,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CASZ;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,iBAAiB,EACzB,OAAO,SAAuC,GAC7C,QAAQ,CAmBV"}
@@ -1,13 +1,5 @@
1
1
  import { getEnv } from "../platform/compat/process.js";
2
- function roundMs(value) {
3
- return Math.round(value * 100) / 100;
4
- }
5
- function formatDuration(value) {
6
- return Math.max(0, roundMs(value)).toFixed(2);
7
- }
8
- function sanitizeMetricName(name) {
9
- return name.replace(/[^A-Za-z0-9!#$%&'*+\-.^_`|~]/g, "_");
10
- }
2
+ import { buildServerTimingValue, roundMs } from "../observability/request-profiler.js";
11
3
  export function shouldEnableProxyServerTiming() {
12
4
  return getEnv("VERYFRONT_ENABLE_PROXY_SERVER_TIMING") === "1" ||
13
5
  getEnv("VERYFRONT_ENABLE_SERVER_TIMING") === "1";
@@ -38,11 +30,7 @@ export async function profileProxyServerTimingPhase(timing, name, fn) {
38
30
  export function withProxyServerTimingHeader(response, timing, totalMs = performance.now() - timing.startedAt) {
39
31
  if (!timing.enabled)
40
32
  return response;
41
- const metrics = [`proxy.total;dur=${formatDuration(totalMs)}`];
42
- for (const [name, duration] of timing.phases.entries()) {
43
- metrics.push(`${sanitizeMetricName(name)};dur=${formatDuration(duration)}`);
44
- }
45
- const value = metrics.join(", ");
33
+ const value = buildServerTimingValue("proxy.total", totalMs, timing.phases.entries());
46
34
  try {
47
35
  const existing = response.headers.get("Server-Timing");
48
36
  response.headers.set("Server-Timing", existing ? `${existing}, ${value}` : value);
@@ -46,8 +46,8 @@ export interface AgentCardContextValue {
46
46
  pulse: boolean;
47
47
  };
48
48
  }
49
- /** Read the enclosing `AgentCard` state. Throws when used outside an `AgentCard`. */
50
- export declare function useAgentCard(): AgentCardContextValue;
49
+ declare const useAgentCard: () => AgentCardContextValue;
50
+ export { useAgentCard };
51
51
  /**
52
52
  * `AgentCard.Root` — context provider + the `Card` wrapper. No children renders
53
53
  * the default anatomy (`Header` + `Reasoning` + `Tools` + `Body`); pass children
@@ -100,5 +100,4 @@ export declare const AgentCard: typeof AgentCardRoot & {
100
100
  Tools: typeof AgentCardTools;
101
101
  Body: typeof AgentCardBody;
102
102
  };
103
- export {};
104
103
  //# sourceMappingURL=agent-card.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-card.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/chat/agent-card.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAMnF,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAK3D,oCAAoC;AACpC,MAAM,WAAW,cAAc;IAC7B,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,gEAAgE;IAChE,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,6DAA6D;IAC7D,MAAM,EAAE,WAAW,CAAC;IACpB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAmDD,0DAA0D;AAC1D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;CACrE;AAMD,qFAAqF;AACrF,wBAAgB,YAAY,IAAI,qBAAqB,CAQpD;AAED;;;;GAIG;AACH,iBAAS,aAAa,CACpB,EACE,IAAc,EACd,SAAS,EACT,QAAQ,EACR,SAAc,EACd,MAAM,EACN,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,GAAG,GACJ,EAAE,cAAc,GAChB,KAAK,CAAC,YAAY,CAgCpB;kBA5CQ,aAAa;;;AA+CtB;;;GAGG;AACH,iBAAS,eAAe,CACtB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,CAgBnB;kBAlBQ,eAAe;;;AAqBxB,yEAAyE;AACzE,iBAAS,kBAAkB,CACzB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAI1B;kBANQ,kBAAkB;;;AAS3B,iEAAiE;AACjE,iBAAS,cAAc,CACrB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAQ1B;kBAVQ,cAAc;;;AAavB,qEAAqE;AACrE,iBAAS,aAAa,CACpB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAgB1B;kBAlBQ,aAAa;;;AAqBtB;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;;;CAMpB,CAAC"}
1
+ {"version":3,"file":"agent-card.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/chat/agent-card.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAMnF,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAK3D,oCAAoC;AACpC,MAAM,WAAW,cAAc;IAC7B,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,gEAAgE;IAChE,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,6DAA6D;IAC7D,MAAM,EAAE,WAAW,CAAC;IACpB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAmDD,0DAA0D;AAC1D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;CACrE;AAED,QAAA,MAAyB,YAAY,6BAGpC,CAAC;AACF,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB;;;;GAIG;AACH,iBAAS,aAAa,CACpB,EACE,IAAc,EACd,SAAS,EACT,QAAQ,EACR,SAAc,EACd,MAAM,EACN,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,GAAG,GACJ,EAAE,cAAc,GAChB,KAAK,CAAC,YAAY,CAgCpB;kBA5CQ,aAAa;;;AA+CtB;;;GAGG;AACH,iBAAS,eAAe,CACtB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,CAgBnB;kBAlBQ,eAAe;;;AAqBxB,yEAAyE;AACzE,iBAAS,kBAAkB,CACzB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAI1B;kBANQ,kBAAkB;;;AAS3B,iEAAiE;AACjE,iBAAS,cAAc,CACrB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAQ1B;kBAVQ,cAAc;;;AAavB,qEAAqE;AACrE,iBAAS,aAAa,CACpB,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAgB1B;kBAlBQ,aAAa;;;AAqBtB;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;;;CAMpB,CAAC"}
@@ -19,7 +19,7 @@
19
19
  // stays fully back-compatible.
20
20
  // ---------------------------------------------------------------------------
21
21
  import * as React from "react";
22
- import { COMPONENT_ERROR } from "../../../errors/error-registry.js";
22
+ import { createStrictContext } from "../create-strict-context.js";
23
23
  import { cn } from "./theme.js";
24
24
  import { Avatar } from "../ui/avatar.js";
25
25
  import { Card } from "../ui/card.js";
@@ -70,17 +70,8 @@ function messageText(message) {
70
70
  .map((p) => p.text)
71
71
  .join("") ?? "";
72
72
  }
73
- const AgentCardContext = React.createContext(null);
74
- /** Read the enclosing `AgentCard` state. Throws when used outside an `AgentCard`. */
75
- export function useAgentCard() {
76
- const ctx = React.useContext(AgentCardContext);
77
- if (!ctx) {
78
- throw COMPONENT_ERROR.create({
79
- detail: "useAgentCard must be used within an AgentCard",
80
- });
81
- }
82
- return ctx;
83
- }
73
+ const [AgentCardContext, useAgentCard] = createStrictContext("useAgentCard", "an AgentCard");
74
+ export { useAgentCard };
84
75
  /**
85
76
  * `AgentCard.Root` — context provider + the `Card` wrapper. No children renders
86
77
  * the default anatomy (`Header` + `Reasoning` + `Tools` + `Body`); pass children
@@ -13,7 +13,6 @@ export interface AgentPickerContextValue {
13
13
  /** Manage agents and close the menu when the action is available. */
14
14
  onManage?: () => void;
15
15
  }
16
- export declare const AgentPickerContext: any;
17
- /** Read the enclosing `AgentPicker` state. */
18
- export declare function useAgentPicker(): AgentPickerContextValue;
16
+ declare const AgentPickerContext: React.Context<T | null>, useAgentPicker: () => AgentPickerContextValue;
17
+ export { AgentPickerContext, useAgentPicker };
19
18
  //# sourceMappingURL=agent-picker-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-picker-context.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/chat/agent-picker-context.tsx"],"names":[],"mappings":"AAGA,4EAA4E;AAC5E,MAAM,WAAW,uBAAuB;IACtC,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,0BAA0B;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,4DAA4D;IAC5D,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,KAA4D,CAAC;AAE5F,8CAA8C;AAC9C,wBAAgB,cAAc,IAAI,uBAAuB,CAQxD"}
1
+ {"version":3,"file":"agent-picker-context.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/components/chat/agent-picker-context.tsx"],"names":[],"mappings":"AAEA,4EAA4E;AAC5E,MAAM,WAAW,uBAAuB;IACtC,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,0BAA0B;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,4DAA4D;IAC5D,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,QAAA,MAAO,kBAAkB,2BAAE,cAAc,+BAGxC,CAAC;AACF,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAC"}
@@ -1,13 +1,3 @@
1
- import * as React from "react";
2
- import { COMPONENT_ERROR } from "../../../errors/error-registry.js";
3
- export const AgentPickerContext = React.createContext(null);
4
- /** Read the enclosing `AgentPicker` state. */
5
- export function useAgentPicker() {
6
- const context = React.useContext(AgentPickerContext);
7
- if (!context) {
8
- throw COMPONENT_ERROR.create({
9
- detail: "useAgentPicker must be used within an AgentPicker",
10
- });
11
- }
12
- return context;
13
- }
1
+ import { createStrictContext } from "../create-strict-context.js";
2
+ const [AgentPickerContext, useAgentPicker] = createStrictContext("useAgentPicker", "an AgentPicker");
3
+ export { AgentPickerContext, useAgentPicker };
@@ -63,11 +63,8 @@ export interface AttachmentPillContextValue {
63
63
  /** Tailwind classes for the icon box background/foreground. */
64
64
  boxClass: string;
65
65
  }
66
- /**
67
- * Read the enclosing `AttachmentPill` state. Throws when used outside an
68
- * `AttachmentPill`.
69
- */
70
- export declare function useAttachmentPill(): AttachmentPillContextValue;
66
+ declare const useAttachmentPill: () => AttachmentPillContextValue;
67
+ export { useAttachmentPill };
71
68
  /**
72
69
  * `AttachmentPill.Root` — context provider + the chip wrapper. No children
73
70
  * renders the default anatomy; pass children to recompose.
@@ -138,5 +135,4 @@ export declare const AttachmentPill: typeof AttachmentPillRoot & {
138
135
  Retry: typeof AttachmentPillRetry;
139
136
  Remove: typeof AttachmentPillRemove;
140
137
  };
141
- export {};
142
138
  //# sourceMappingURL=attachment-pill.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-pill.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/attachment-pill.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachment-pill.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/attachment-pill.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { cn } from "../../theme.js";
3
3
  import { CheckIcon, ClockIcon, FileTextIcon, RefreshCwIcon } from "../../../ui/icons/index.js";
4
4
  import { Button } from "../../../ui/button.js";
5
5
  import { Shimmer } from "./animations.js";
6
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
6
+ import { createStrictContext } from "../../../create-strict-context.js";
7
7
  const FILE_TYPE_COLORS = {
8
8
  pdf: "text-red-700 bg-red-100",
9
9
  docx: "text-blue-700 bg-blue-100",
@@ -61,20 +61,8 @@ function AlertGlyph() {
61
61
  React.createElement("line", { x1: "12", y1: "8", x2: "12", y2: "12.5" }),
62
62
  React.createElement("line", { x1: "12", y1: "16", x2: "12.01", y2: "16" })));
63
63
  }
64
- const AttachmentPillContext = React.createContext(null);
65
- /**
66
- * Read the enclosing `AttachmentPill` state. Throws when used outside an
67
- * `AttachmentPill`.
68
- */
69
- export function useAttachmentPill() {
70
- const ctx = React.useContext(AttachmentPillContext);
71
- if (!ctx) {
72
- throw COMPONENT_ERROR.create({
73
- detail: "useAttachmentPill must be used within a AttachmentPill",
74
- });
75
- }
76
- return ctx;
77
- }
64
+ const [AttachmentPillContext, useAttachmentPill] = createStrictContext("useAttachmentPill", "a AttachmentPill");
65
+ export { useAttachmentPill };
78
66
  /**
79
67
  * `AttachmentPill.Root` — context provider + the chip wrapper. No children
80
68
  * renders the default anatomy; pass children to recompose.
@@ -20,17 +20,8 @@ export interface AttachmentsPanelContextValue {
20
20
  /** Opens the native file picker (wired to the hidden input in `Root`). */
21
21
  triggerAttach: () => void;
22
22
  }
23
- /**
24
- * Read the enclosing `AttachmentsPanel`'s state to compose custom leaves inside
25
- * a `Root` you're already rendering. Throws when used outside an
26
- * `AttachmentsPanel`.
27
- *
28
- * This is the *panel composition context*, not the headless state hook: it only
29
- * re-surfaces what `<AttachmentsPanel.Root>` was given (plus `triggerAttach`).
30
- * To OWN attachment state with no panel rendered, use the domain hook
31
- * `useAttachments()` (upload / remove / list) and render whatever UI you like.
32
- */
33
- export declare function useAttachmentsPanel(): AttachmentsPanelContextValue;
23
+ declare const useAttachmentsPanel: () => AttachmentsPanelContextValue;
24
+ export { useAttachmentsPanel };
34
25
  /** Props accepted by `AttachmentsPanel` / `AttachmentsPanel.Root`. */
35
26
  export interface AttachmentsPanelProps {
36
27
  uploads?: UploadedFile[];
@@ -205,5 +196,4 @@ export declare const AttachmentsPanel: typeof AttachmentsPanelRoot & {
205
196
  Empty: typeof AttachmentsPanelEmpty;
206
197
  Action: typeof AttachmentsPanelAction;
207
198
  };
208
- export {};
209
199
  //# sourceMappingURL=attachments-panel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachments-panel.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/attachments-panel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachments-panel.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/attachments-panel.tsx"],"names":[],"mappings":"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"}
@@ -6,27 +6,9 @@ import { Button } from "../../../ui/button.js";
6
6
  import { Skeleton } from "../../../ui/skeleton.js";
7
7
  import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "../../../ui/dropdown-menu.js";
8
8
  import { AttachmentPill, useAttachmentPill } from "./attachment-pill.js";
9
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
10
- const AttachmentsPanelContext = React.createContext(null);
11
- /**
12
- * Read the enclosing `AttachmentsPanel`'s state to compose custom leaves inside
13
- * a `Root` you're already rendering. Throws when used outside an
14
- * `AttachmentsPanel`.
15
- *
16
- * This is the *panel composition context*, not the headless state hook: it only
17
- * re-surfaces what `<AttachmentsPanel.Root>` was given (plus `triggerAttach`).
18
- * To OWN attachment state with no panel rendered, use the domain hook
19
- * `useAttachments()` (upload / remove / list) and render whatever UI you like.
20
- */
21
- export function useAttachmentsPanel() {
22
- const ctx = React.useContext(AttachmentsPanelContext);
23
- if (!ctx) {
24
- throw COMPONENT_ERROR.create({
25
- detail: "useAttachmentsPanel must be used within an AttachmentsPanel",
26
- });
27
- }
28
- return ctx;
29
- }
9
+ import { createStrictContext } from "../../../create-strict-context.js";
10
+ const [AttachmentsPanelContext, useAttachmentsPanel] = createStrictContext("useAttachmentsPanel", "an AttachmentsPanel");
11
+ export { useAttachmentsPanel };
30
12
  /**
31
13
  * `AttachmentsPanel.Root` — context provider + the panel wrapper (scroll area +
32
14
  * hidden file input). No children renders the default anatomy (`Empty` when the
@@ -1 +1 @@
1
- {"version":3,"file":"branch-picker.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/branch-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,uCAAuC;AACvC,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;IACxF,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,uEAAuE;AACvE,MAAM,WAAW,uBAAuB;IACtC,kCAAkC;IAClC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,8CAA8C;AAC9C,MAAM,WAAW,sBAAsB;IACrC,kDAAkD;IAClD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA0DD,+BAA+B;AAC/B,iBAAS,oBAAoB,CAAC,EAC5B,IAAI,EACJ,SAAS,GACV,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CAa9C;kBAhBQ,oBAAoB;;;AAmB7B,+BAA+B;AAC/B,iBAAS,iBAAiB,CAAC,EACzB,QAAQ,EACR,SAAS,GACV,EAAE,sBAAsB,GAAG,KAAK,CAAC,YAAY,CAO7C;kBAVQ,iBAAiB;;;AAa1B,2BAA2B;AAC3B,iBAAS,gBAAgB,CAAC,EACxB,IAAI,EACJ,SAAS,GACV,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CAa9C;kBAhBQ,gBAAgB;;;AAmBzB,4EAA4E;AAC5E,iBAAS,gBAAgB,CAAC,EACxB,OAAO,EACP,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CA0B/C;kBAlCQ,gBAAgB;;;AAqCzB,uEAAuE;AACvE,eAAO,MAAM,YAAY;;;;;CAKvB,CAAC"}
1
+ {"version":3,"file":"branch-picker.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/branch-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,uCAAuC;AACvC,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;IACxF,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,uEAAuE;AACvE,MAAM,WAAW,uBAAuB;IACtC,kCAAkC;IAClC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,8CAA8C;AAC9C,MAAM,WAAW,sBAAsB;IACrC,kDAAkD;IAClD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAmDD,+BAA+B;AAC/B,iBAAS,oBAAoB,CAAC,EAC5B,IAAI,EACJ,SAAS,GACV,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CAa9C;kBAhBQ,oBAAoB;;;AAmB7B,+BAA+B;AAC/B,iBAAS,iBAAiB,CAAC,EACzB,QAAQ,EACR,SAAS,GACV,EAAE,sBAAsB,GAAG,KAAK,CAAC,YAAY,CAO7C;kBAVQ,iBAAiB;;;AAa1B,2BAA2B;AAC3B,iBAAS,gBAAgB,CAAC,EACxB,IAAI,EACJ,SAAS,GACV,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CAa9C;kBAhBQ,gBAAgB;;;AAmBzB,4EAA4E;AAC5E,iBAAS,gBAAgB,CAAC,EACxB,OAAO,EACP,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CA0B/C;kBAlCQ,gBAAgB;;;AAqCzB,uEAAuE;AACvE,eAAO,MAAM,YAAY;;;;;CAKvB,CAAC"}
@@ -1,16 +1,7 @@
1
1
  import * as React from "react";
2
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
2
+ import { createStrictContext } from "../../../create-strict-context.js";
3
3
  import { cn } from "../../theme.js";
4
- const BranchPickerContext = React.createContext(null);
5
- function useBranchPicker() {
6
- const context = React.useContext(BranchPickerContext);
7
- if (!context) {
8
- throw COMPONENT_ERROR.create({
9
- detail: "BranchPicker.* must be used within <BranchPicker>",
10
- });
11
- }
12
- return context;
13
- }
4
+ const [BranchPickerContext, useBranchPicker] = createStrictContext("BranchPicker.*", "<BranchPicker>");
14
5
  const ACTION_BUTTON = "size-5 flex items-center justify-center rounded-full transition-all hover:bg-[var(--foreground)]/5 disabled:opacity-50 disabled:pointer-events-none";
15
6
  function PreviousIcon() {
16
7
  return (React.createElement("svg", { "aria-hidden": "true", className: "size-3", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round" },
@@ -1 +1 @@
1
- {"version":3,"file":"inline-citation.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/inline-citation.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,yCAAyC;AACzC,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AA2BD,kDAAkD;AAClD,MAAM,WAAW,0BAA2B,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IAC/F,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACpC;AAED,iCAAiC;AACjC,iBAAS,qBAAqB,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,GAAG,EACH,GAAG,KAAK,EACT,EAAE,0BAA0B,GAAG,KAAK,CAAC,YAAY,CAgDjD;kBAxDQ,qBAAqB;;;AA2D9B,+CAA+C;AAC/C,MAAM,WAAW,uBAAwB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACnF,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED,6BAA6B;AAC7B,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,GAAG,EACH,GAAG,KAAK,EACT,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAoCrD;kBA5CQ,kBAAkB;;;AA6G3B,8BAA8B;AAC9B,iBAAS,kBAAkB,CAAC,EAC1B,KAAK,EACL,MAAM,EACN,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAiF1C;kBAvFQ,kBAAkB;;;AA0F3B,6EAA6E;AAC7E,eAAO,MAAM,cAAc;;;CAGzB,CAAC"}
1
+ {"version":3,"file":"inline-citation.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/inline-citation.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,yCAAyC;AACzC,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAoBD,kDAAkD;AAClD,MAAM,WAAW,0BAA2B,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IAC/F,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACpC;AAED,iCAAiC;AACjC,iBAAS,qBAAqB,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,GAAG,EACH,GAAG,KAAK,EACT,EAAE,0BAA0B,GAAG,KAAK,CAAC,YAAY,CAgDjD;kBAxDQ,qBAAqB;;;AA2D9B,+CAA+C;AAC/C,MAAM,WAAW,uBAAwB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACnF,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED,6BAA6B;AAC7B,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,GAAG,EACH,GAAG,KAAK,EACT,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAoCrD;kBA5CQ,kBAAkB;;;AA6G3B,8BAA8B;AAC9B,iBAAS,kBAAkB,CAAC,EAC1B,KAAK,EACL,MAAM,EACN,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAiF1C;kBAvFQ,kBAAkB;;;AA0F3B,6EAA6E;AAC7E,eAAO,MAAM,cAAc;;;CAGzB,CAAC"}
@@ -1,16 +1,7 @@
1
1
  import * as React from "react";
2
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
2
+ import { createStrictContext } from "../../../create-strict-context.js";
3
3
  import { cn } from "../../theme.js";
4
- const InlineCitationContext = React.createContext(null);
5
- function useInlineCitation() {
6
- const context = React.useContext(InlineCitationContext);
7
- if (!context) {
8
- throw COMPONENT_ERROR.create({
9
- detail: "InlineCitation parts must be used within an InlineCitation",
10
- });
11
- }
12
- return context;
13
- }
4
+ const [InlineCitationContext, useInlineCitation] = createStrictContext("InlineCitation parts", "an InlineCitation");
14
5
  /** Numbered citation trigger. */
15
6
  function InlineCitationTrigger({ className, children, onClick, onMouseEnter, onMouseLeave, ref, ...props }) {
16
7
  const { index, triggerClasses, onCitationClick, show, hide, setTriggerRef, } = useInlineCitation();
@@ -1 +1 @@
1
- {"version":3,"file":"message-actions.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/message-actions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAChF,qEAAqE;IACrE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED,8DAA8D;AAC9D,MAAM,WAAW,2BAA2B;IAC1C,iCAAiC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsBD,4DAA4D;AAC5D,iBAAS,oBAAoB,CAAC,EAC5B,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,oBAAoB;;;AAoB7B,iEAAiE;AACjE,iBAAS,sBAAsB,CAAC,EAC9B,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,sBAAsB;;;AAoB/B,wEAAwE;AACxE,iBAAS,0BAA0B,CAAC,EAClC,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,0BAA0B;;;AAoBnC,4DAA4D;AAC5D,iBAAS,oBAAoB,CAAC,EAC5B,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,oBAAoB;;;AAoB7B;;;GAGG;AACH,iBAAS,oBAAoB,CAAC,EAC5B,OAAO,EACP,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,EACN,YAAY,EACZ,GAAG,GACJ,EAAE,qBAAqB,GAAG,KAAK,CAAC,YAAY,CAmC5C;kBA3CQ,oBAAoB;;;AA8C7B;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;;;;CAM3B,CAAC"}
1
+ {"version":3,"file":"message-actions.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/message-actions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAChF,qEAAqE;IACrE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED,8DAA8D;AAC9D,MAAM,WAAW,2BAA2B;IAC1C,iCAAiC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiBD,4DAA4D;AAC5D,iBAAS,oBAAoB,CAAC,EAC5B,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,oBAAoB;;;AAoB7B,iEAAiE;AACjE,iBAAS,sBAAsB,CAAC,EAC9B,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,sBAAsB;;;AAoB/B,wEAAwE;AACxE,iBAAS,0BAA0B,CAAC,EAClC,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,0BAA0B;;;AAoBnC,4DAA4D;AAC5D,iBAAS,oBAAoB,CAAC,EAC5B,IAAI,EACJ,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAczD;kBAjBQ,oBAAoB;;;AAoB7B;;;GAGG;AACH,iBAAS,oBAAoB,CAAC,EAC5B,OAAO,EACP,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,EACN,YAAY,EACZ,GAAG,GACJ,EAAE,qBAAqB,GAAG,KAAK,CAAC,YAAY,CAmC5C;kBA3CQ,oBAAoB;;;AA8C7B;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;;;;CAM3B,CAAC"}
@@ -1,19 +1,10 @@
1
1
  import * as React from "react";
2
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
2
+ import { createStrictContext } from "../../../create-strict-context.js";
3
3
  import { cn } from "../../theme.js";
4
4
  import { CheckIcon, CopyIcon, PencilIcon, RefreshCwIcon } from "../../../ui/icons/index.js";
5
5
  import { useClipboard } from "../hooks/use-clipboard.js";
6
6
  const ACTION_BUTTON = "inline-flex items-center justify-center size-7 rounded-full text-[var(--faint)] transition-colors hover:bg-[var(--tertiary)] hover:text-[var(--foreground)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--edge-medium)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--background)]";
7
- const MessageActionBarContext = React.createContext(null);
8
- function useMessageActionBar() {
9
- const context = React.useContext(MessageActionBarContext);
10
- if (!context) {
11
- throw COMPONENT_ERROR.create({
12
- detail: "MessageActionBar.* must be used within <MessageActionBar>",
13
- });
14
- }
15
- return context;
16
- }
7
+ const [MessageActionBarContext, useMessageActionBar] = createStrictContext("MessageActionBar.*", "<MessageActionBar>");
17
8
  /** Copy action shown before the content has been copied. */
18
9
  function MessageActionBarCopy({ icon, className, }) {
19
10
  const { copied, onCopy } = useMessageActionBar();
@@ -1 +1 @@
1
- {"version":3,"file":"message-feedback.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/message-feedback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,8CAA8C;AAC9C,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,CAAC;AAEpD,0CAA0C;AAC1C,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;IACxF,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IACjE,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED,iFAAiF;AACjF,MAAM,WAAW,0BAA0B;IACzC,mCAAmC;IACnC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA2DD,gCAAgC;AAChC,iBAAS,uBAAuB,CAAC,EAC/B,IAAI,EACJ,SAAS,GACV,EAAE,0BAA0B,GAAG,KAAK,CAAC,YAAY,CAoBjD;kBAvBQ,uBAAuB;;;AA0BhC,gCAAgC;AAChC,iBAAS,uBAAuB,CAAC,EAC/B,IAAI,EACJ,SAAS,GACV,EAAE,0BAA0B,GAAG,KAAK,CAAC,YAAY,CAoBjD;kBAvBQ,uBAAuB;;;AA0BhC,sEAAsE;AACtE,iBAAS,mBAAmB,CAAC,EAC3B,SAAS,EACT,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,SAAS,EACT,GAAG,EACH,GAAG,KAAK,EACT,EAAE,oBAAoB,GAAG,KAAK,CAAC,YAAY,CAqB3C;kBA7BQ,mBAAmB;;;AAgC5B,6EAA6E;AAC7E,eAAO,MAAM,eAAe;;;;CAI1B,CAAC"}
1
+ {"version":3,"file":"message-feedback.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/message-feedback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,8CAA8C;AAC9C,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,CAAC;AAEpD,0CAA0C;AAC1C,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;IACxF,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IACjE,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED,iFAAiF;AACjF,MAAM,WAAW,0BAA0B;IACzC,mCAAmC;IACnC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsDD,gCAAgC;AAChC,iBAAS,uBAAuB,CAAC,EAC/B,IAAI,EACJ,SAAS,GACV,EAAE,0BAA0B,GAAG,KAAK,CAAC,YAAY,CAoBjD;kBAvBQ,uBAAuB;;;AA0BhC,gCAAgC;AAChC,iBAAS,uBAAuB,CAAC,EAC/B,IAAI,EACJ,SAAS,GACV,EAAE,0BAA0B,GAAG,KAAK,CAAC,YAAY,CAoBjD;kBAvBQ,uBAAuB;;;AA0BhC,sEAAsE;AACtE,iBAAS,mBAAmB,CAAC,EAC3B,SAAS,EACT,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,SAAS,EACT,GAAG,EACH,GAAG,KAAK,EACT,EAAE,oBAAoB,GAAG,KAAK,CAAC,YAAY,CAqB3C;kBA7BQ,mBAAmB;;;AAgC5B,6EAA6E;AAC7E,eAAO,MAAM,eAAe;;;;CAI1B,CAAC"}
@@ -1,16 +1,7 @@
1
1
  import * as React from "react";
2
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
2
+ import { createStrictContext } from "../../../create-strict-context.js";
3
3
  import { cn } from "../../theme.js";
4
- const MessageFeedbackContext = React.createContext(null);
5
- function useMessageFeedback() {
6
- const context = React.useContext(MessageFeedbackContext);
7
- if (!context) {
8
- throw COMPONENT_ERROR.create({
9
- detail: "MessageFeedback.* must be used within <MessageFeedback>",
10
- });
11
- }
12
- return context;
13
- }
4
+ const [MessageFeedbackContext, useMessageFeedback] = createStrictContext("MessageFeedback.*", "<MessageFeedback>");
14
5
  const BUTTON_BASE = "inline-flex items-center justify-center size-7 rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--edge-medium)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--background)]";
15
6
  function PositiveIcon({ active }) {
16
7
  return (React.createElement("svg", { "aria-hidden": "true", className: "size-3.5", viewBox: "0 0 24 24", fill: active ? "currentColor" : "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" },
@@ -6,8 +6,8 @@ export interface ReasoningContextValue {
6
6
  isOpen: boolean;
7
7
  toggle: () => void;
8
8
  }
9
- /** Read the enclosing `Reasoning` state. Throws when used outside a `Reasoning`. */
10
- export declare function useReasoning(): ReasoningContextValue;
9
+ declare const useReasoning: () => ReasoningContextValue;
10
+ export { useReasoning };
11
11
  /** Props accepted by `Reasoning` / `Reasoning.Root`. */
12
12
  export interface ReasoningProps {
13
13
  text: string;
@@ -77,5 +77,4 @@ export declare const Reasoning: typeof ReasoningRoot & {
77
77
  Trigger: typeof ReasoningTrigger;
78
78
  Content: typeof ReasoningContent;
79
79
  };
80
- export {};
81
80
  //# sourceMappingURL=reasoning.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reasoning.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/reasoning.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,0DAA0D;AAC1D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAID,oFAAoF;AACpF,wBAAgB,YAAY,IAAI,qBAAqB,CAQpD;AAED,wDAAwD;AACxD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;4EACwE;IACxE,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oEAAoE;IACpE,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD;gFAC4E;IAC5E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;uEAEmE;IACnE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED;;;GAGG;AACH,iBAAS,aAAa,CACpB,EACE,IAAI,EACJ,WAAmB,EACnB,SAAS,EACT,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,GAAG,GACJ,EAAE,cAAc,GAChB,KAAK,CAAC,YAAY,CA6DpB;kBA1EQ,aAAa;;;AA6EtB,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,mCAAmC;IACnC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oEAAoE;IACpE,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,gFAAgF;AAChF,iBAAS,gBAAgB,CACvB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,qBAAqB,GACjD,KAAK,CAAC,GAAG,CAAC,OAAO,CA0BnB;kBA5BQ,gBAAgB;;;AA+BzB,oFAAoF;AACpF,iBAAS,gBAAgB,CACvB,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,GAC1E,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAY1B;kBAdQ,gBAAgB;;;AAiBzB;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;CAIpB,CAAC"}
1
+ {"version":3,"file":"reasoning.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/reasoning.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,0DAA0D;AAC1D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,QAAA,MAAyB,YAAY,6BAGpC,CAAC;AACF,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,wDAAwD;AACxD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;4EACwE;IACxE,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oEAAoE;IACpE,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD;gFAC4E;IAC5E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;uEAEmE;IACnE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACjC;AAED;;;GAGG;AACH,iBAAS,aAAa,CACpB,EACE,IAAI,EACJ,WAAmB,EACnB,SAAS,EACT,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,GAAG,GACJ,EAAE,cAAc,GAChB,KAAK,CAAC,YAAY,CA6DpB;kBA1EQ,aAAa;;;AA6EtB,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,mCAAmC;IACnC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,oEAAoE;IACpE,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,gFAAgF;AAChF,iBAAS,gBAAgB,CACvB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,qBAAqB,GACjD,KAAK,CAAC,GAAG,CAAC,OAAO,CA0BnB;kBA5BQ,gBAAgB;;;AA+BzB,oFAAoF;AACpF,iBAAS,gBAAgB,CACvB,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,GAC1E,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAY1B;kBAdQ,gBAAgB;;;AAiBzB;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;CAIpB,CAAC"}
@@ -2,19 +2,10 @@ import * as React from "react";
2
2
  import { cn } from "../../theme.js";
3
3
  import { Markdown } from "../../markdown.js";
4
4
  import { ChevronDownIcon } from "../../../ui/icons/index.js";
5
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
5
+ import { createStrictContext } from "../../../create-strict-context.js";
6
6
  import { Shimmer } from "./animations.js";
7
- const ReasoningContext = React.createContext(null);
8
- /** Read the enclosing `Reasoning` state. Throws when used outside a `Reasoning`. */
9
- export function useReasoning() {
10
- const ctx = React.useContext(ReasoningContext);
11
- if (!ctx) {
12
- throw COMPONENT_ERROR.create({
13
- detail: "useReasoning must be used within a Reasoning",
14
- });
15
- }
16
- return ctx;
17
- }
7
+ const [ReasoningContext, useReasoning] = createStrictContext("useReasoning", "a Reasoning");
8
+ export { useReasoning };
18
9
  /**
19
10
  * `Reasoning.Root` — context provider + wrapper. No children renders the
20
11
  * default anatomy (`Trigger` + `Content`); pass children to recompose.
@@ -110,8 +110,8 @@ export interface ChatSidebarItemContextValue {
110
110
  menuOpen: boolean;
111
111
  setMenuOpen: (open: boolean) => void;
112
112
  }
113
- /** Read the enclosing `ChatSidebar.Item` row state. Throws when used outside one. */
114
- export declare function useChatSidebarItem(): ChatSidebarItemContextValue;
113
+ declare const useChatSidebarItem: () => ChatSidebarItemContextValue;
114
+ export { useChatSidebarItem };
115
115
  export interface ChatSidebarItemProps {
116
116
  conversation: ConversationSummary;
117
117
  className?: string;
@@ -226,5 +226,4 @@ export type ChatSidebarComponent = typeof ChatSidebarBase & {
226
226
  };
227
227
  /** Render a chat sidebar — usable as `<ChatSidebar />` or `<ChatSidebar.Root>…`. */
228
228
  export declare const ChatSidebar: ChatSidebarComponent;
229
- export {};
230
229
  //# sourceMappingURL=sidebar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/sidebar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/chat/chat/components/sidebar.tsx"],"names":[],"mappings":"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"}
@@ -38,7 +38,7 @@
38
38
  * @module react/components/chat/chat/components/sidebar
39
39
  */
40
40
  import * as React from "react";
41
- import { COMPONENT_ERROR } from "../../../../../errors/error-registry.js";
41
+ import { createStrictContext } from "../../../create-strict-context.js";
42
42
  import { cn, UI_SCOPE_ATTRS } from "../../theme.js";
43
43
  import { PencilIcon, TrashIcon } from "../../../ui/icons/index.js";
44
44
  import { Button } from "../../../ui/button.js";
@@ -54,16 +54,7 @@ function MoreGlyph({ className }) {
54
54
  React.createElement("circle", { cx: "12", cy: "12", r: "1.6" }),
55
55
  React.createElement("circle", { cx: "19", cy: "12", r: "1.6" })));
56
56
  }
57
- const ChatSidebarContext = React.createContext(null);
58
- function useChatSidebarContext() {
59
- const context = React.useContext(ChatSidebarContext);
60
- if (!context) {
61
- throw COMPONENT_ERROR.create({
62
- detail: "ChatSidebar sub-components must be used within <ChatSidebar.Root>",
63
- });
64
- }
65
- return context;
66
- }
57
+ const [ChatSidebarContext, useChatSidebarContext] = createStrictContext("ChatSidebar sub-components", "<ChatSidebar.Root>");
67
58
  const noop = () => { };
68
59
  /**
69
60
  * Resolve the sidebar's data + actions from the explicit conversation props,
@@ -149,17 +140,8 @@ export function ChatSidebarNewButton({ children, icon, className, }) {
149
140
  children ?? "New chat")));
150
141
  }
151
142
  ChatSidebarNewButton.displayName = "ChatSidebar.NewButton";
152
- const ChatSidebarItemContext = React.createContext(null);
153
- /** Read the enclosing `ChatSidebar.Item` row state. Throws when used outside one. */
154
- export function useChatSidebarItem() {
155
- const ctx = React.useContext(ChatSidebarItemContext);
156
- if (!ctx) {
157
- throw COMPONENT_ERROR.create({
158
- detail: "ChatSidebar.Item.* must be used within <ChatSidebar.Item>",
159
- });
160
- }
161
- return ctx;
162
- }
143
+ const [ChatSidebarItemContext, useChatSidebarItem] = createStrictContext("ChatSidebar.Item.*", "<ChatSidebar.Item>");
144
+ export { useChatSidebarItem };
163
145
  /**
164
146
  * A single conversation row — select on click, rename/delete via a "…" menu.
165
147
  * The menu is a composable compound: pass a `<ChatSidebar.Item.Menu>` child to
@@ -11,8 +11,8 @@ export interface SourcesContextValue {
11
11
  sources: Source[];
12
12
  onSourceClick?: (source: Source, index: number) => void;
13
13
  }
14
- /** Read the enclosing `Sources` state. Throws when used outside a `Sources`. */
15
- export declare function useSources(): SourcesContextValue;
14
+ declare const useSources: () => SourcesContextValue;
15
+ export { useSources };
16
16
  /**
17
17
  * Read the enclosing `Sources` state if present, or `null` outside one. Lets a
18
18
  * leaf like `Message.Source` opt into the row's `onSourceClick` without failing
@@ -81,5 +81,4 @@ export declare const Sources: typeof SourcesRoot & {
81
81
  List: typeof SourcesList;
82
82
  Pill: typeof SourcePill;
83
83
  };
84
- export {};
85
84
  //# sourceMappingURL=sources.d.ts.map