@mediansh/widget 0.3.0 → 0.6.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.
package/dist/index.js CHANGED
@@ -25,11 +25,11 @@ var SNOOZE_MAX_MS = 365 * 24 * 60 * 6e4;
25
25
 
26
26
  // ../../apps/web/src/components/support-widget/sdk/median-support.tsx
27
27
  import { ConvexProvider, ConvexReactClient } from "convex/react";
28
- import { useEffect as useEffect20, useState as useState18 } from "react";
28
+ import { useEffect as useEffect20, useState as useState20 } from "react";
29
29
 
30
30
  // ../../apps/web/src/components/support-widget/markdown-chunk.tsx
31
31
  import { lazy, useSyncExternalStore } from "react";
32
- var load = () => import("./message-markdown-5ZZ6COCL.js");
32
+ var load = () => import("./message-markdown-LOE74LBE.js");
33
33
  var MessageMarkdown = lazy(async () => ({
34
34
  default: (await load()).MessageMarkdown
35
35
  }));
@@ -78,19 +78,19 @@ function useMarkdownReady() {
78
78
  }
79
79
 
80
80
  // ../../apps/web/src/components/support-widget/widget-launcher.tsx
81
- import { useCallback as useCallback7, useEffect as useEffect10, useRef as useRef11, useState as useState11 } from "react";
81
+ import { useCallback as useCallback7, useEffect as useEffect10, useRef as useRef11, useState as useState13 } from "react";
82
82
 
83
83
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/lib/SSRBase.es.js
84
84
  import * as e from "react";
85
85
  var w = e.forwardRef((l5, s4) => {
86
86
  const {
87
- alt: r28,
88
- color: a26 = "currentColor",
89
- size: t8 = "1em",
90
- weight: o36 = "regular",
87
+ alt: r32,
88
+ color: a28 = "currentColor",
89
+ size: t9 = "1em",
90
+ weight: o42 = "regular",
91
91
  mirrored: i3 = false,
92
92
  children: n,
93
- weights: c6,
93
+ weights: c7,
94
94
  ...m5
95
95
  } = l5;
96
96
  return /* @__PURE__ */ e.createElement(
@@ -98,16 +98,16 @@ var w = e.forwardRef((l5, s4) => {
98
98
  {
99
99
  ref: s4,
100
100
  xmlns: "http://www.w3.org/2000/svg",
101
- width: t8,
102
- height: t8,
103
- fill: a26,
101
+ width: t9,
102
+ height: t9,
103
+ fill: a28,
104
104
  viewBox: "0 0 256 256",
105
105
  transform: i3 ? "scale(-1, 1)" : void 0,
106
106
  ...m5
107
107
  },
108
- !!r28 && /* @__PURE__ */ e.createElement("title", null, r28),
108
+ !!r32 && /* @__PURE__ */ e.createElement("title", null, r32),
109
109
  n,
110
- c6.get(o36)
110
+ c7.get(o42)
111
111
  );
112
112
  });
113
113
  w.displayName = "SSRBase";
@@ -145,800 +145,836 @@ var a = /* @__PURE__ */ new Map([
145
145
  ]);
146
146
 
147
147
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowDown.es.js
148
- var r = o.forwardRef((e53, t8) => /* @__PURE__ */ o.createElement(w, { ref: t8, ...e53, weights: a }));
148
+ var r = o.forwardRef((e54, t9) => /* @__PURE__ */ o.createElement(w, { ref: t9, ...e54, weights: a }));
149
149
  r.displayName = "ArrowDownIcon";
150
150
 
151
- // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowUp.es.js
151
+ // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowRight.es.js
152
152
  import * as r2 from "react";
153
153
 
154
- // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ArrowUp.es.js
154
+ // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ArrowRight.es.js
155
155
  import * as e3 from "react";
156
156
  var a2 = /* @__PURE__ */ new Map([
157
157
  [
158
158
  "bold",
159
- /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M208.49,120.49a12,12,0,0,1-17,0L140,69V216a12,12,0,0,1-24,0V69L64.49,120.49a12,12,0,0,1-17-17l72-72a12,12,0,0,1,17,0l72,72A12,12,0,0,1,208.49,120.49Z" }))
159
+ /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M224.49,136.49l-72,72a12,12,0,0,1-17-17L187,140H40a12,12,0,0,1,0-24H187L135.51,64.48a12,12,0,0,1,17-17l72,72A12,12,0,0,1,224.49,136.49Z" }))
160
160
  ],
161
161
  [
162
162
  "duotone",
163
- /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M200,112H56l72-72Z", opacity: "0.2" }), /* @__PURE__ */ e3.createElement("path", { d: "M205.66,106.34l-72-72a8,8,0,0,0-11.32,0l-72,72A8,8,0,0,0,56,120h64v96a8,8,0,0,0,16,0V120h64a8,8,0,0,0,5.66-13.66ZM75.31,104,128,51.31,180.69,104Z" }))
163
+ /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M216,128l-72,72V56Z", opacity: "0.2" }), /* @__PURE__ */ e3.createElement("path", { d: "M221.66,122.34l-72-72A8,8,0,0,0,136,56v64H40a8,8,0,0,0,0,16h96v64a8,8,0,0,0,13.66,5.66l72-72A8,8,0,0,0,221.66,122.34ZM152,180.69V75.31L204.69,128Z" }))
164
164
  ],
165
165
  [
166
166
  "fill",
167
- /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M207.39,115.06A8,8,0,0,1,200,120H136v96a8,8,0,0,1-16,0V120H56a8,8,0,0,1-5.66-13.66l72-72a8,8,0,0,1,11.32,0l72,72A8,8,0,0,1,207.39,115.06Z" }))
167
+ /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M221.66,133.66l-72,72A8,8,0,0,1,136,200V136H40a8,8,0,0,1,0-16h96V56a8,8,0,0,1,13.66-5.66l72,72A8,8,0,0,1,221.66,133.66Z" }))
168
168
  ],
169
169
  [
170
170
  "light",
171
- /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M204.24,116.24a6,6,0,0,1-8.48,0L134,54.49V216a6,6,0,0,1-12,0V54.49L60.24,116.24a6,6,0,0,1-8.48-8.48l72-72a6,6,0,0,1,8.48,0l72,72A6,6,0,0,1,204.24,116.24Z" }))
171
+ /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M220.24,132.24l-72,72a6,6,0,0,1-8.48-8.48L201.51,134H40a6,6,0,0,1,0-12H201.51L139.76,60.24a6,6,0,0,1,8.48-8.48l72,72A6,6,0,0,1,220.24,132.24Z" }))
172
172
  ],
173
173
  [
174
174
  "regular",
175
- /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M205.66,117.66a8,8,0,0,1-11.32,0L136,59.31V216a8,8,0,0,1-16,0V59.31L61.66,117.66a8,8,0,0,1-11.32-11.32l72-72a8,8,0,0,1,11.32,0l72,72A8,8,0,0,1,205.66,117.66Z" }))
175
+ /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M221.66,133.66l-72,72a8,8,0,0,1-11.32-11.32L196.69,136H40a8,8,0,0,1,0-16H196.69L138.34,61.66a8,8,0,0,1,11.32-11.32l72,72A8,8,0,0,1,221.66,133.66Z" }))
176
176
  ],
177
177
  [
178
178
  "thin",
179
- /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M202.83,114.83a4,4,0,0,1-5.66,0L132,49.66V216a4,4,0,0,1-8,0V49.66L58.83,114.83a4,4,0,0,1-5.66-5.66l72-72a4,4,0,0,1,5.66,0l72,72A4,4,0,0,1,202.83,114.83Z" }))
179
+ /* @__PURE__ */ e3.createElement(e3.Fragment, null, /* @__PURE__ */ e3.createElement("path", { d: "M218.83,130.83l-72,72a4,4,0,0,1-5.66-5.66L206.34,132H40a4,4,0,0,1,0-8H206.34L141.17,58.83a4,4,0,0,1,5.66-5.66l72,72A4,4,0,0,1,218.83,130.83Z" }))
180
180
  ]
181
181
  ]);
182
182
 
183
+ // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowRight.es.js
184
+ var o2 = r2.forwardRef((t9, e54) => /* @__PURE__ */ r2.createElement(w, { ref: e54, ...t9, weights: a2 }));
185
+ o2.displayName = "ArrowRightIcon";
186
+
183
187
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowUp.es.js
184
- var o2 = r2.forwardRef((e53, t8) => /* @__PURE__ */ r2.createElement(w, { ref: t8, ...e53, weights: a2 }));
185
- o2.displayName = "ArrowUpIcon";
188
+ import * as r3 from "react";
189
+
190
+ // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ArrowUp.es.js
191
+ import * as e4 from "react";
192
+ var a3 = /* @__PURE__ */ new Map([
193
+ [
194
+ "bold",
195
+ /* @__PURE__ */ e4.createElement(e4.Fragment, null, /* @__PURE__ */ e4.createElement("path", { d: "M208.49,120.49a12,12,0,0,1-17,0L140,69V216a12,12,0,0,1-24,0V69L64.49,120.49a12,12,0,0,1-17-17l72-72a12,12,0,0,1,17,0l72,72A12,12,0,0,1,208.49,120.49Z" }))
196
+ ],
197
+ [
198
+ "duotone",
199
+ /* @__PURE__ */ e4.createElement(e4.Fragment, null, /* @__PURE__ */ e4.createElement("path", { d: "M200,112H56l72-72Z", opacity: "0.2" }), /* @__PURE__ */ e4.createElement("path", { d: "M205.66,106.34l-72-72a8,8,0,0,0-11.32,0l-72,72A8,8,0,0,0,56,120h64v96a8,8,0,0,0,16,0V120h64a8,8,0,0,0,5.66-13.66ZM75.31,104,128,51.31,180.69,104Z" }))
200
+ ],
201
+ [
202
+ "fill",
203
+ /* @__PURE__ */ e4.createElement(e4.Fragment, null, /* @__PURE__ */ e4.createElement("path", { d: "M207.39,115.06A8,8,0,0,1,200,120H136v96a8,8,0,0,1-16,0V120H56a8,8,0,0,1-5.66-13.66l72-72a8,8,0,0,1,11.32,0l72,72A8,8,0,0,1,207.39,115.06Z" }))
204
+ ],
205
+ [
206
+ "light",
207
+ /* @__PURE__ */ e4.createElement(e4.Fragment, null, /* @__PURE__ */ e4.createElement("path", { d: "M204.24,116.24a6,6,0,0,1-8.48,0L134,54.49V216a6,6,0,0,1-12,0V54.49L60.24,116.24a6,6,0,0,1-8.48-8.48l72-72a6,6,0,0,1,8.48,0l72,72A6,6,0,0,1,204.24,116.24Z" }))
208
+ ],
209
+ [
210
+ "regular",
211
+ /* @__PURE__ */ e4.createElement(e4.Fragment, null, /* @__PURE__ */ e4.createElement("path", { d: "M205.66,117.66a8,8,0,0,1-11.32,0L136,59.31V216a8,8,0,0,1-16,0V59.31L61.66,117.66a8,8,0,0,1-11.32-11.32l72-72a8,8,0,0,1,11.32,0l72,72A8,8,0,0,1,205.66,117.66Z" }))
212
+ ],
213
+ [
214
+ "thin",
215
+ /* @__PURE__ */ e4.createElement(e4.Fragment, null, /* @__PURE__ */ e4.createElement("path", { d: "M202.83,114.83a4,4,0,0,1-5.66,0L132,49.66V216a4,4,0,0,1-8,0V49.66L58.83,114.83a4,4,0,0,1-5.66-5.66l72-72a4,4,0,0,1,5.66,0l72,72A4,4,0,0,1,202.83,114.83Z" }))
216
+ ]
217
+ ]);
218
+
219
+ // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowUp.es.js
220
+ var o3 = r3.forwardRef((e54, t9) => /* @__PURE__ */ r3.createElement(w, { ref: t9, ...e54, weights: a3 }));
221
+ o3.displayName = "ArrowUpIcon";
186
222
 
187
223
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowsClockwise.es.js
188
- import * as o3 from "react";
224
+ import * as o4 from "react";
189
225
 
190
226
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ArrowsClockwise.es.js
191
- import * as a3 from "react";
192
- var e4 = /* @__PURE__ */ new Map([
227
+ import * as a4 from "react";
228
+ var e5 = /* @__PURE__ */ new Map([
193
229
  [
194
230
  "bold",
195
- /* @__PURE__ */ a3.createElement(a3.Fragment, null, /* @__PURE__ */ a3.createElement("path", { d: "M228,48V96a12,12,0,0,1-12,12H168a12,12,0,0,1,0-24h19l-7.8-7.8a75.55,75.55,0,0,0-53.32-22.26h-.43A75.49,75.49,0,0,0,72.39,75.57,12,12,0,1,1,55.61,58.41a99.38,99.38,0,0,1,69.87-28.47H126A99.42,99.42,0,0,1,196.2,59.23L204,67V48a12,12,0,0,1,24,0ZM183.61,180.43a75.49,75.49,0,0,1-53.09,21.63h-.43A75.55,75.55,0,0,1,76.77,179.8L69,172H88a12,12,0,0,0,0-24H40a12,12,0,0,0-12,12v48a12,12,0,0,0,24,0V189l7.8,7.8A99.42,99.42,0,0,0,130,226.06h.56a99.38,99.38,0,0,0,69.87-28.47,12,12,0,0,0-16.78-17.16Z" }))
231
+ /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M228,48V96a12,12,0,0,1-12,12H168a12,12,0,0,1,0-24h19l-7.8-7.8a75.55,75.55,0,0,0-53.32-22.26h-.43A75.49,75.49,0,0,0,72.39,75.57,12,12,0,1,1,55.61,58.41a99.38,99.38,0,0,1,69.87-28.47H126A99.42,99.42,0,0,1,196.2,59.23L204,67V48a12,12,0,0,1,24,0ZM183.61,180.43a75.49,75.49,0,0,1-53.09,21.63h-.43A75.55,75.55,0,0,1,76.77,179.8L69,172H88a12,12,0,0,0,0-24H40a12,12,0,0,0-12,12v48a12,12,0,0,0,24,0V189l7.8,7.8A99.42,99.42,0,0,0,130,226.06h.56a99.38,99.38,0,0,0,69.87-28.47,12,12,0,0,0-16.78-17.16Z" }))
196
232
  ],
197
233
  [
198
234
  "duotone",
199
- /* @__PURE__ */ a3.createElement(a3.Fragment, null, /* @__PURE__ */ a3.createElement("path", { d: "M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z", opacity: "0.2" }), /* @__PURE__ */ a3.createElement("path", { d: "M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z" }))
235
+ /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z", opacity: "0.2" }), /* @__PURE__ */ a4.createElement("path", { d: "M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z" }))
200
236
  ],
201
237
  [
202
238
  "fill",
203
- /* @__PURE__ */ a3.createElement(a3.Fragment, null, /* @__PURE__ */ a3.createElement("path", { d: "M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1-5.66-13.66L180.65,72a79.48,79.48,0,0,0-54.72-22.09h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27,96,96,0,0,1,192,60.7l18.36-18.36A8,8,0,0,1,224,48ZM186.41,183.29A80,80,0,0,1,75.35,184l18.31-18.31A8,8,0,0,0,88,152H40a8,8,0,0,0-8,8v48a8,8,0,0,0,13.66,5.66L64,195.3a95.42,95.42,0,0,0,66,26.76h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z" }))
239
+ /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1-5.66-13.66L180.65,72a79.48,79.48,0,0,0-54.72-22.09h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27,96,96,0,0,1,192,60.7l18.36-18.36A8,8,0,0,1,224,48ZM186.41,183.29A80,80,0,0,1,75.35,184l18.31-18.31A8,8,0,0,0,88,152H40a8,8,0,0,0-8,8v48a8,8,0,0,0,13.66,5.66L64,195.3a95.42,95.42,0,0,0,66,26.76h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z" }))
204
240
  ],
205
241
  [
206
242
  "light",
207
- /* @__PURE__ */ a3.createElement(a3.Fragment, null, /* @__PURE__ */ a3.createElement("path", { d: "M222,48V96a6,6,0,0,1-6,6H168a6,6,0,0,1,0-12h33.52L183.47,72a81.51,81.51,0,0,0-57.53-24h-.46A81.5,81.5,0,0,0,68.19,71.28a6,6,0,1,1-8.38-8.58,93.38,93.38,0,0,1,65.67-26.76H126a93.45,93.45,0,0,1,66,27.53l18,18V48a6,6,0,0,1,12,0ZM187.81,184.72a81.5,81.5,0,0,1-57.29,23.34h-.46a81.51,81.51,0,0,1-57.53-24L54.48,166H88a6,6,0,0,0,0-12H40a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V174.48l18,18.05a93.45,93.45,0,0,0,66,27.53h.52a93.38,93.38,0,0,0,65.67-26.76,6,6,0,1,0-8.38-8.58Z" }))
243
+ /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M222,48V96a6,6,0,0,1-6,6H168a6,6,0,0,1,0-12h33.52L183.47,72a81.51,81.51,0,0,0-57.53-24h-.46A81.5,81.5,0,0,0,68.19,71.28a6,6,0,1,1-8.38-8.58,93.38,93.38,0,0,1,65.67-26.76H126a93.45,93.45,0,0,1,66,27.53l18,18V48a6,6,0,0,1,12,0ZM187.81,184.72a81.5,81.5,0,0,1-57.29,23.34h-.46a81.51,81.51,0,0,1-57.53-24L54.48,166H88a6,6,0,0,0,0-12H40a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V174.48l18,18.05a93.45,93.45,0,0,0,66,27.53h.52a93.38,93.38,0,0,0,65.67-26.76,6,6,0,1,0-8.38-8.58Z" }))
208
244
  ],
209
245
  [
210
246
  "regular",
211
- /* @__PURE__ */ a3.createElement(a3.Fragment, null, /* @__PURE__ */ a3.createElement("path", { d: "M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z" }))
247
+ /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z" }))
212
248
  ],
213
249
  [
214
250
  "thin",
215
- /* @__PURE__ */ a3.createElement(a3.Fragment, null, /* @__PURE__ */ a3.createElement("path", { d: "M220,48V96a4,4,0,0,1-4,4H168a4,4,0,0,1,0-8h38.34L184.89,70.54A84,84,0,0,0,66.8,69.85a4,4,0,1,1-5.6-5.72,92,92,0,0,1,129.34.76L212,86.34V48a4,4,0,0,1,8,0ZM189.2,186.15a83.44,83.44,0,0,1-58.68,23.91h-.47a83.52,83.52,0,0,1-58.94-24.6L49.66,164H88a4,4,0,0,0,0-8H40a4,4,0,0,0-4,4v48a4,4,0,0,0,8,0V169.66l21.46,21.45A91.43,91.43,0,0,0,130,218.06h.51a91.45,91.45,0,0,0,64.28-26.19,4,4,0,1,0-5.6-5.72Z" }))
251
+ /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M220,48V96a4,4,0,0,1-4,4H168a4,4,0,0,1,0-8h38.34L184.89,70.54A84,84,0,0,0,66.8,69.85a4,4,0,1,1-5.6-5.72,92,92,0,0,1,129.34.76L212,86.34V48a4,4,0,0,1,8,0ZM189.2,186.15a83.44,83.44,0,0,1-58.68,23.91h-.47a83.52,83.52,0,0,1-58.94-24.6L49.66,164H88a4,4,0,0,0,0-8H40a4,4,0,0,0-4,4v48a4,4,0,0,0,8,0V169.66l21.46,21.45A91.43,91.43,0,0,0,130,218.06h.51a91.45,91.45,0,0,0,64.28-26.19,4,4,0,1,0-5.6-5.72Z" }))
216
252
  ]
217
253
  ]);
218
254
 
219
255
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowsClockwise.es.js
220
- var r3 = o3.forwardRef((e53, s4) => /* @__PURE__ */ o3.createElement(w, { ref: s4, ...e53, weights: e4 }));
221
- r3.displayName = "ArrowsClockwiseIcon";
256
+ var r4 = o4.forwardRef((e54, s4) => /* @__PURE__ */ o4.createElement(w, { ref: s4, ...e54, weights: e5 }));
257
+ r4.displayName = "ArrowsClockwiseIcon";
222
258
 
223
259
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowsIn.es.js
224
- import * as r4 from "react";
260
+ import * as r5 from "react";
225
261
 
226
262
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ArrowsIn.es.js
227
- import * as a4 from "react";
228
- var e5 = /* @__PURE__ */ new Map([
263
+ import * as a5 from "react";
264
+ var e6 = /* @__PURE__ */ new Map([
229
265
  [
230
266
  "bold",
231
- /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M140,104V64a12,12,0,0,1,24,0V75l35.51-35.52a12,12,0,0,1,17,17L181,92h11a12,12,0,0,1,0,24H152A12,12,0,0,1,140,104Zm-36,36H64a12,12,0,0,0,0,24H75L39.51,199.51a12,12,0,0,0,17,17L92,181v11a12,12,0,0,0,24,0V152A12,12,0,0,0,104,140Zm77,24h11a12,12,0,0,0,0-24H152a12,12,0,0,0-12,12v40a12,12,0,0,0,24,0V181l35.51,35.52a12,12,0,0,0,17-17ZM104,52A12,12,0,0,0,92,64V75L56.49,39.51a12,12,0,0,0-17,17L75,92H64a12,12,0,0,0,0,24h40a12,12,0,0,0,12-12V64A12,12,0,0,0,104,52Z" }))
267
+ /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M140,104V64a12,12,0,0,1,24,0V75l35.51-35.52a12,12,0,0,1,17,17L181,92h11a12,12,0,0,1,0,24H152A12,12,0,0,1,140,104Zm-36,36H64a12,12,0,0,0,0,24H75L39.51,199.51a12,12,0,0,0,17,17L92,181v11a12,12,0,0,0,24,0V152A12,12,0,0,0,104,140Zm77,24h11a12,12,0,0,0,0-24H152a12,12,0,0,0-12,12v40a12,12,0,0,0,24,0V181l35.51,35.52a12,12,0,0,0,17-17ZM104,52A12,12,0,0,0,92,64V75L56.49,39.51a12,12,0,0,0-17,17L75,92H64a12,12,0,0,0,0,24h40a12,12,0,0,0,12-12V64A12,12,0,0,0,104,52Z" }))
232
268
  ],
233
269
  [
234
270
  "duotone",
235
- /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement(
271
+ /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement(
236
272
  "path",
237
273
  {
238
274
  d: "M224,48V208a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V48A16,16,0,0,1,48,32H208A16,16,0,0,1,224,48Z",
239
275
  opacity: "0.2"
240
276
  }
241
- ), /* @__PURE__ */ a4.createElement("path", { d: "M144,104V64a8,8,0,0,1,16,0V84.69l42.34-42.35a8,8,0,0,1,11.32,11.32L171.31,96H192a8,8,0,0,1,0,16H152A8,8,0,0,1,144,104Zm-40,40H64a8,8,0,0,0,0,16H84.69L42.34,202.34a8,8,0,0,0,11.32,11.32L96,171.31V192a8,8,0,0,0,16,0V152A8,8,0,0,0,104,144Zm67.31,16H192a8,8,0,0,0,0-16H152a8,8,0,0,0-8,8v40a8,8,0,0,0,16,0V171.31l42.34,42.35a8,8,0,0,0,11.32-11.32ZM104,56a8,8,0,0,0-8,8V84.69L53.66,42.34A8,8,0,0,0,42.34,53.66L84.69,96H64a8,8,0,0,0,0,16h40a8,8,0,0,0,8-8V64A8,8,0,0,0,104,56Z" }))
277
+ ), /* @__PURE__ */ a5.createElement("path", { d: "M144,104V64a8,8,0,0,1,16,0V84.69l42.34-42.35a8,8,0,0,1,11.32,11.32L171.31,96H192a8,8,0,0,1,0,16H152A8,8,0,0,1,144,104Zm-40,40H64a8,8,0,0,0,0,16H84.69L42.34,202.34a8,8,0,0,0,11.32,11.32L96,171.31V192a8,8,0,0,0,16,0V152A8,8,0,0,0,104,144Zm67.31,16H192a8,8,0,0,0,0-16H152a8,8,0,0,0-8,8v40a8,8,0,0,0,16,0V171.31l42.34,42.35a8,8,0,0,0,11.32-11.32ZM104,56a8,8,0,0,0-8,8V84.69L53.66,42.34A8,8,0,0,0,42.34,53.66L84.69,96H64a8,8,0,0,0,0,16h40a8,8,0,0,0,8-8V64A8,8,0,0,0,104,56Z" }))
242
278
  ],
243
279
  [
244
280
  "fill",
245
- /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M144,104V64a8,8,0,0,1,13.66-5.66L172,72.69l30.34-30.35a8,8,0,0,1,11.32,11.32L183.31,84l14.35,14.34A8,8,0,0,1,192,112H152A8,8,0,0,1,144,104Zm-40,40H64a8,8,0,0,0-5.66,13.66L72.69,172,42.34,202.34a8,8,0,0,0,11.32,11.32L84,183.31l14.34,14.35A8,8,0,0,0,112,192V152A8,8,0,0,0,104,144Zm3.06-87.39a8,8,0,0,0-8.72,1.73L84,72.69,53.66,42.34A8,8,0,0,0,42.34,53.66L72.69,84,58.34,98.34A8,8,0,0,0,64,112h40a8,8,0,0,0,8-8V64A8,8,0,0,0,107.06,56.61ZM183.31,172l14.35-14.34A8,8,0,0,0,192,144H152a8,8,0,0,0-8,8v40a8,8,0,0,0,13.66,5.66L172,183.31l30.34,30.35a8,8,0,0,0,11.32-11.32Z" }))
281
+ /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M144,104V64a8,8,0,0,1,13.66-5.66L172,72.69l30.34-30.35a8,8,0,0,1,11.32,11.32L183.31,84l14.35,14.34A8,8,0,0,1,192,112H152A8,8,0,0,1,144,104Zm-40,40H64a8,8,0,0,0-5.66,13.66L72.69,172,42.34,202.34a8,8,0,0,0,11.32,11.32L84,183.31l14.34,14.35A8,8,0,0,0,112,192V152A8,8,0,0,0,104,144Zm3.06-87.39a8,8,0,0,0-8.72,1.73L84,72.69,53.66,42.34A8,8,0,0,0,42.34,53.66L72.69,84,58.34,98.34A8,8,0,0,0,64,112h40a8,8,0,0,0,8-8V64A8,8,0,0,0,107.06,56.61ZM183.31,172l14.35-14.34A8,8,0,0,0,192,144H152a8,8,0,0,0-8,8v40a8,8,0,0,0,13.66,5.66L172,183.31l30.34,30.35a8,8,0,0,0,11.32-11.32Z" }))
246
282
  ],
247
283
  [
248
284
  "light",
249
- /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M146,104V64a6,6,0,0,1,12,0V89.51l45.76-45.75a6,6,0,0,1,8.48,8.48L166.48,98H192a6,6,0,0,1,0,12H152A6,6,0,0,1,146,104Zm-42,42H64a6,6,0,0,0,0,12H89.52L43.76,203.76a6,6,0,1,0,8.48,8.48L98,166.48V192a6,6,0,0,0,12,0V152A6,6,0,0,0,104,146Zm62.48,12H192a6,6,0,0,0,0-12H152a6,6,0,0,0-6,6v40a6,6,0,0,0,12,0V166.48l45.76,45.76a6,6,0,0,0,8.48-8.48ZM104,58a6,6,0,0,0-6,6V89.51L52.24,43.76a6,6,0,0,0-8.48,8.48L89.52,98H64a6,6,0,0,0,0,12h40a6,6,0,0,0,6-6V64A6,6,0,0,0,104,58Z" }))
285
+ /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M146,104V64a6,6,0,0,1,12,0V89.51l45.76-45.75a6,6,0,0,1,8.48,8.48L166.48,98H192a6,6,0,0,1,0,12H152A6,6,0,0,1,146,104Zm-42,42H64a6,6,0,0,0,0,12H89.52L43.76,203.76a6,6,0,1,0,8.48,8.48L98,166.48V192a6,6,0,0,0,12,0V152A6,6,0,0,0,104,146Zm62.48,12H192a6,6,0,0,0,0-12H152a6,6,0,0,0-6,6v40a6,6,0,0,0,12,0V166.48l45.76,45.76a6,6,0,0,0,8.48-8.48ZM104,58a6,6,0,0,0-6,6V89.51L52.24,43.76a6,6,0,0,0-8.48,8.48L89.52,98H64a6,6,0,0,0,0,12h40a6,6,0,0,0,6-6V64A6,6,0,0,0,104,58Z" }))
250
286
  ],
251
287
  [
252
288
  "regular",
253
- /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M144,104V64a8,8,0,0,1,16,0V84.69l42.34-42.35a8,8,0,0,1,11.32,11.32L171.31,96H192a8,8,0,0,1,0,16H152A8,8,0,0,1,144,104Zm-40,40H64a8,8,0,0,0,0,16H84.69L42.34,202.34a8,8,0,0,0,11.32,11.32L96,171.31V192a8,8,0,0,0,16,0V152A8,8,0,0,0,104,144Zm67.31,16H192a8,8,0,0,0,0-16H152a8,8,0,0,0-8,8v40a8,8,0,0,0,16,0V171.31l42.34,42.35a8,8,0,0,0,11.32-11.32ZM104,56a8,8,0,0,0-8,8V84.69L53.66,42.34A8,8,0,0,0,42.34,53.66L84.69,96H64a8,8,0,0,0,0,16h40a8,8,0,0,0,8-8V64A8,8,0,0,0,104,56Z" }))
289
+ /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M144,104V64a8,8,0,0,1,16,0V84.69l42.34-42.35a8,8,0,0,1,11.32,11.32L171.31,96H192a8,8,0,0,1,0,16H152A8,8,0,0,1,144,104Zm-40,40H64a8,8,0,0,0,0,16H84.69L42.34,202.34a8,8,0,0,0,11.32,11.32L96,171.31V192a8,8,0,0,0,16,0V152A8,8,0,0,0,104,144Zm67.31,16H192a8,8,0,0,0,0-16H152a8,8,0,0,0-8,8v40a8,8,0,0,0,16,0V171.31l42.34,42.35a8,8,0,0,0,11.32-11.32ZM104,56a8,8,0,0,0-8,8V84.69L53.66,42.34A8,8,0,0,0,42.34,53.66L84.69,96H64a8,8,0,0,0,0,16h40a8,8,0,0,0,8-8V64A8,8,0,0,0,104,56Z" }))
254
290
  ],
255
291
  [
256
292
  "thin",
257
- /* @__PURE__ */ a4.createElement(a4.Fragment, null, /* @__PURE__ */ a4.createElement("path", { d: "M148,104V64a4,4,0,0,1,8,0V94.34l49.17-49.17a4,4,0,1,1,5.66,5.66L161.66,100H192a4,4,0,0,1,0,8H152A4,4,0,0,1,148,104Zm-44,44H64a4,4,0,0,0,0,8H94.34L45.17,205.17a4,4,0,0,0,5.66,5.66L100,161.66V192a4,4,0,0,0,8,0V152A4,4,0,0,0,104,148Zm57.66,8H192a4,4,0,0,0,0-8H152a4,4,0,0,0-4,4v40a4,4,0,0,0,8,0V161.66l49.17,49.17a4,4,0,0,0,5.66-5.66ZM104,60a4,4,0,0,0-4,4V94.34L50.83,45.17a4,4,0,0,0-5.66,5.66L94.34,100H64a4,4,0,0,0,0,8h40a4,4,0,0,0,4-4V64A4,4,0,0,0,104,60Z" }))
293
+ /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M148,104V64a4,4,0,0,1,8,0V94.34l49.17-49.17a4,4,0,1,1,5.66,5.66L161.66,100H192a4,4,0,0,1,0,8H152A4,4,0,0,1,148,104Zm-44,44H64a4,4,0,0,0,0,8H94.34L45.17,205.17a4,4,0,0,0,5.66,5.66L100,161.66V192a4,4,0,0,0,8,0V152A4,4,0,0,0,104,148Zm57.66,8H192a4,4,0,0,0,0-8H152a4,4,0,0,0-4,4v40a4,4,0,0,0,8,0V161.66l49.17,49.17a4,4,0,0,0,5.66-5.66ZM104,60a4,4,0,0,0-4,4V94.34L50.83,45.17a4,4,0,0,0-5.66,5.66L94.34,100H64a4,4,0,0,0,0,8h40a4,4,0,0,0,4-4V64A4,4,0,0,0,104,60Z" }))
258
294
  ]
259
295
  ]);
260
296
 
261
297
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowsIn.es.js
262
- var o4 = r4.forwardRef((e53, s4) => /* @__PURE__ */ r4.createElement(w, { ref: s4, ...e53, weights: e5 }));
263
- o4.displayName = "ArrowsInIcon";
298
+ var o5 = r5.forwardRef((e54, s4) => /* @__PURE__ */ r5.createElement(w, { ref: s4, ...e54, weights: e6 }));
299
+ o5.displayName = "ArrowsInIcon";
264
300
 
265
301
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowsOut.es.js
266
- import * as r5 from "react";
302
+ import * as r6 from "react";
267
303
 
268
304
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ArrowsOut.es.js
269
- import * as a5 from "react";
270
- var e6 = /* @__PURE__ */ new Map([
305
+ import * as a6 from "react";
306
+ var e7 = /* @__PURE__ */ new Map([
271
307
  [
272
308
  "bold",
273
- /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M220,48V96a12,12,0,0,1-24,0V77l-35.51,35.52a12,12,0,0,1-17-17L179,60H160a12,12,0,0,1,0-24h48A12,12,0,0,1,220,48ZM95.51,143.51,60,179V160a12,12,0,0,0-24,0v48a12,12,0,0,0,12,12H96a12,12,0,0,0,0-24H77l35.52-35.51a12,12,0,0,0-17-17ZM208,148a12,12,0,0,0-12,12v19l-35.51-35.52a12,12,0,0,0-17,17L179,196H160a12,12,0,0,0,0,24h48a12,12,0,0,0,12-12V160A12,12,0,0,0,208,148ZM77,60H96a12,12,0,0,0,0-24H48A12,12,0,0,0,36,48V96a12,12,0,0,0,24,0V77l35.51,35.52a12,12,0,0,0,17-17Z" }))
309
+ /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M220,48V96a12,12,0,0,1-24,0V77l-35.51,35.52a12,12,0,0,1-17-17L179,60H160a12,12,0,0,1,0-24h48A12,12,0,0,1,220,48ZM95.51,143.51,60,179V160a12,12,0,0,0-24,0v48a12,12,0,0,0,12,12H96a12,12,0,0,0,0-24H77l35.52-35.51a12,12,0,0,0-17-17ZM208,148a12,12,0,0,0-12,12v19l-35.51-35.52a12,12,0,0,0-17,17L179,196H160a12,12,0,0,0,0,24h48a12,12,0,0,0,12-12V160A12,12,0,0,0,208,148ZM77,60H96a12,12,0,0,0,0-24H48A12,12,0,0,0,36,48V96a12,12,0,0,0,24,0V77l35.51,35.52a12,12,0,0,0,17-17Z" }))
274
310
  ],
275
311
  [
276
312
  "duotone",
277
- /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M208,48V208H48V48Z", opacity: "0.2" }), /* @__PURE__ */ a5.createElement("path", { d: "M216,48V96a8,8,0,0,1-16,0V67.31l-42.34,42.35a8,8,0,0,1-11.32-11.32L188.69,56H160a8,8,0,0,1,0-16h48A8,8,0,0,1,216,48ZM98.34,146.34,56,188.69V160a8,8,0,0,0-16,0v48a8,8,0,0,0,8,8H96a8,8,0,0,0,0-16H67.31l42.35-42.34a8,8,0,0,0-11.32-11.32ZM208,152a8,8,0,0,0-8,8v28.69l-42.34-42.35a8,8,0,0,0-11.32,11.32L188.69,200H160a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,208,152ZM67.31,56H96a8,8,0,0,0,0-16H48a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31l42.34,42.35a8,8,0,0,0,11.32-11.32Z" }))
313
+ /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M208,48V208H48V48Z", opacity: "0.2" }), /* @__PURE__ */ a6.createElement("path", { d: "M216,48V96a8,8,0,0,1-16,0V67.31l-42.34,42.35a8,8,0,0,1-11.32-11.32L188.69,56H160a8,8,0,0,1,0-16h48A8,8,0,0,1,216,48ZM98.34,146.34,56,188.69V160a8,8,0,0,0-16,0v48a8,8,0,0,0,8,8H96a8,8,0,0,0,0-16H67.31l42.35-42.34a8,8,0,0,0-11.32-11.32ZM208,152a8,8,0,0,0-8,8v28.69l-42.34-42.35a8,8,0,0,0-11.32,11.32L188.69,200H160a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,208,152ZM67.31,56H96a8,8,0,0,0,0-16H48a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31l42.34,42.35a8,8,0,0,0,11.32-11.32Z" }))
278
314
  ],
279
315
  [
280
316
  "fill",
281
- /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M109.66,146.34a8,8,0,0,1,0,11.32L83.31,184l18.35,18.34A8,8,0,0,1,96,216H48a8,8,0,0,1-8-8V160a8,8,0,0,1,13.66-5.66L72,172.69l26.34-26.35A8,8,0,0,1,109.66,146.34ZM83.31,72l18.35-18.34A8,8,0,0,0,96,40H48a8,8,0,0,0-8,8V96a8,8,0,0,0,13.66,5.66L72,83.31l26.34,26.35a8,8,0,0,0,11.32-11.32ZM208,40H160a8,8,0,0,0-5.66,13.66L172.69,72,146.34,98.34a8,8,0,0,0,11.32,11.32L184,83.31l18.34,18.35A8,8,0,0,0,216,96V48A8,8,0,0,0,208,40Zm3.06,112.61a8,8,0,0,0-8.72,1.73L184,172.69l-26.34-26.35a8,8,0,0,0-11.32,11.32L172.69,184l-18.35,18.34A8,8,0,0,0,160,216h48a8,8,0,0,0,8-8V160A8,8,0,0,0,211.06,152.61Z" }))
317
+ /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M109.66,146.34a8,8,0,0,1,0,11.32L83.31,184l18.35,18.34A8,8,0,0,1,96,216H48a8,8,0,0,1-8-8V160a8,8,0,0,1,13.66-5.66L72,172.69l26.34-26.35A8,8,0,0,1,109.66,146.34ZM83.31,72l18.35-18.34A8,8,0,0,0,96,40H48a8,8,0,0,0-8,8V96a8,8,0,0,0,13.66,5.66L72,83.31l26.34,26.35a8,8,0,0,0,11.32-11.32ZM208,40H160a8,8,0,0,0-5.66,13.66L172.69,72,146.34,98.34a8,8,0,0,0,11.32,11.32L184,83.31l18.34,18.35A8,8,0,0,0,216,96V48A8,8,0,0,0,208,40Zm3.06,112.61a8,8,0,0,0-8.72,1.73L184,172.69l-26.34-26.35a8,8,0,0,0-11.32,11.32L172.69,184l-18.35,18.34A8,8,0,0,0,160,216h48a8,8,0,0,0,8-8V160A8,8,0,0,0,211.06,152.61Z" }))
282
318
  ],
283
319
  [
284
320
  "light",
285
- /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M214,48V96a6,6,0,0,1-12,0V62.48l-45.76,45.76a6,6,0,0,1-8.48-8.48L193.52,54H160a6,6,0,0,1,0-12h48A6,6,0,0,1,214,48ZM99.76,147.76,54,193.52V160a6,6,0,0,0-12,0v48a6,6,0,0,0,6,6H96a6,6,0,0,0,0-12H62.48l45.76-45.76a6,6,0,0,0-8.48-8.48ZM208,154a6,6,0,0,0-6,6v33.52l-45.76-45.76a6,6,0,0,0-8.48,8.48L193.52,202H160a6,6,0,0,0,0,12h48a6,6,0,0,0,6-6V160A6,6,0,0,0,208,154ZM62.48,54H96a6,6,0,0,0,0-12H48a6,6,0,0,0-6,6V96a6,6,0,0,0,12,0V62.48l45.76,45.76a6,6,0,0,0,8.48-8.48Z" }))
321
+ /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M214,48V96a6,6,0,0,1-12,0V62.48l-45.76,45.76a6,6,0,0,1-8.48-8.48L193.52,54H160a6,6,0,0,1,0-12h48A6,6,0,0,1,214,48ZM99.76,147.76,54,193.52V160a6,6,0,0,0-12,0v48a6,6,0,0,0,6,6H96a6,6,0,0,0,0-12H62.48l45.76-45.76a6,6,0,0,0-8.48-8.48ZM208,154a6,6,0,0,0-6,6v33.52l-45.76-45.76a6,6,0,0,0-8.48,8.48L193.52,202H160a6,6,0,0,0,0,12h48a6,6,0,0,0,6-6V160A6,6,0,0,0,208,154ZM62.48,54H96a6,6,0,0,0,0-12H48a6,6,0,0,0-6,6V96a6,6,0,0,0,12,0V62.48l45.76,45.76a6,6,0,0,0,8.48-8.48Z" }))
286
322
  ],
287
323
  [
288
324
  "regular",
289
- /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M216,48V96a8,8,0,0,1-16,0V67.31l-42.34,42.35a8,8,0,0,1-11.32-11.32L188.69,56H160a8,8,0,0,1,0-16h48A8,8,0,0,1,216,48ZM98.34,146.34,56,188.69V160a8,8,0,0,0-16,0v48a8,8,0,0,0,8,8H96a8,8,0,0,0,0-16H67.31l42.35-42.34a8,8,0,0,0-11.32-11.32ZM208,152a8,8,0,0,0-8,8v28.69l-42.34-42.35a8,8,0,0,0-11.32,11.32L188.69,200H160a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,208,152ZM67.31,56H96a8,8,0,0,0,0-16H48a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31l42.34,42.35a8,8,0,0,0,11.32-11.32Z" }))
325
+ /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M216,48V96a8,8,0,0,1-16,0V67.31l-42.34,42.35a8,8,0,0,1-11.32-11.32L188.69,56H160a8,8,0,0,1,0-16h48A8,8,0,0,1,216,48ZM98.34,146.34,56,188.69V160a8,8,0,0,0-16,0v48a8,8,0,0,0,8,8H96a8,8,0,0,0,0-16H67.31l42.35-42.34a8,8,0,0,0-11.32-11.32ZM208,152a8,8,0,0,0-8,8v28.69l-42.34-42.35a8,8,0,0,0-11.32,11.32L188.69,200H160a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,208,152ZM67.31,56H96a8,8,0,0,0,0-16H48a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31l42.34,42.35a8,8,0,0,0,11.32-11.32Z" }))
290
326
  ],
291
327
  [
292
328
  "thin",
293
- /* @__PURE__ */ a5.createElement(a5.Fragment, null, /* @__PURE__ */ a5.createElement("path", { d: "M212,48V96a4,4,0,0,1-8,0V57.66l-49.17,49.17a4,4,0,0,1-5.66-5.66L198.34,52H160a4,4,0,0,1,0-8h48A4,4,0,0,1,212,48ZM101.17,149.17,52,198.34V160a4,4,0,0,0-8,0v48a4,4,0,0,0,4,4H96a4,4,0,0,0,0-8H57.66l49.17-49.17a4,4,0,0,0-5.66-5.66ZM208,156a4,4,0,0,0-4,4v38.34l-49.17-49.17a4,4,0,0,0-5.66,5.66L198.34,204H160a4,4,0,0,0,0,8h48a4,4,0,0,0,4-4V160A4,4,0,0,0,208,156ZM57.66,52H96a4,4,0,0,0,0-8H48a4,4,0,0,0-4,4V96a4,4,0,0,0,8,0V57.66l49.17,49.17a4,4,0,0,0,5.66-5.66Z" }))
329
+ /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M212,48V96a4,4,0,0,1-8,0V57.66l-49.17,49.17a4,4,0,0,1-5.66-5.66L198.34,52H160a4,4,0,0,1,0-8h48A4,4,0,0,1,212,48ZM101.17,149.17,52,198.34V160a4,4,0,0,0-8,0v48a4,4,0,0,0,4,4H96a4,4,0,0,0,0-8H57.66l49.17-49.17a4,4,0,0,0-5.66-5.66ZM208,156a4,4,0,0,0-4,4v38.34l-49.17-49.17a4,4,0,0,0-5.66,5.66L198.34,204H160a4,4,0,0,0,0,8h48a4,4,0,0,0,4-4V160A4,4,0,0,0,208,156ZM57.66,52H96a4,4,0,0,0,0-8H48a4,4,0,0,0-4,4V96a4,4,0,0,0,8,0V57.66l49.17,49.17a4,4,0,0,0,5.66-5.66Z" }))
294
330
  ]
295
331
  ]);
296
332
 
297
333
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ArrowsOut.es.js
298
- var o5 = r5.forwardRef((t8, e53) => /* @__PURE__ */ r5.createElement(w, { ref: e53, ...t8, weights: e6 }));
299
- o5.displayName = "ArrowsOutIcon";
334
+ var o6 = r6.forwardRef((t9, e54) => /* @__PURE__ */ r6.createElement(w, { ref: e54, ...t9, weights: e7 }));
335
+ o6.displayName = "ArrowsOutIcon";
300
336
 
301
337
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Bug.es.js
302
- import * as o6 from "react";
338
+ import * as o7 from "react";
303
339
 
304
340
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/Bug.es.js
305
- import * as a6 from "react";
306
- var e7 = /* @__PURE__ */ new Map([
341
+ import * as a7 from "react";
342
+ var e8 = /* @__PURE__ */ new Map([
307
343
  [
308
344
  "bold",
309
- /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M140,88a16,16,0,1,1,16,16A16,16,0,0,1,140,88ZM100,72a16,16,0,1,0,16,16A16,16,0,0,0,100,72Zm120,72a91.84,91.84,0,0,1-2.34,20.64L236.81,173a12,12,0,0,1-9.62,22l-18-7.85a92,92,0,0,1-162.46,0l-18,7.85a12,12,0,1,1-9.62-22l19.15-8.36A91.84,91.84,0,0,1,36,144v-4H16a12,12,0,0,1,0-24H36v-4a91.84,91.84,0,0,1,2.34-20.64L19.19,83a12,12,0,0,1,9.62-22l18,7.85a92,92,0,0,1,162.46,0l18-7.85a12,12,0,1,1,9.62,22l-19.15,8.36A91.84,91.84,0,0,1,220,112v4h20a12,12,0,0,1,0,24H220ZM60,116H196v-4a68,68,0,0,0-136,0Zm56,94.92V140H60v4A68.1,68.1,0,0,0,116,210.92ZM196,144v-4H140v70.92A68.1,68.1,0,0,0,196,144Z" }))
345
+ /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M140,88a16,16,0,1,1,16,16A16,16,0,0,1,140,88ZM100,72a16,16,0,1,0,16,16A16,16,0,0,0,100,72Zm120,72a91.84,91.84,0,0,1-2.34,20.64L236.81,173a12,12,0,0,1-9.62,22l-18-7.85a92,92,0,0,1-162.46,0l-18,7.85a12,12,0,1,1-9.62-22l19.15-8.36A91.84,91.84,0,0,1,36,144v-4H16a12,12,0,0,1,0-24H36v-4a91.84,91.84,0,0,1,2.34-20.64L19.19,83a12,12,0,0,1,9.62-22l18,7.85a92,92,0,0,1,162.46,0l18-7.85a12,12,0,1,1,9.62,22l-19.15,8.36A91.84,91.84,0,0,1,220,112v4h20a12,12,0,0,1,0,24H220ZM60,116H196v-4a68,68,0,0,0-136,0Zm56,94.92V140H60v4A68.1,68.1,0,0,0,116,210.92ZM196,144v-4H140v70.92A68.1,68.1,0,0,0,196,144Z" }))
310
346
  ],
311
347
  [
312
348
  "duotone",
313
- /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M208,128v16a80,80,0,0,1-160,0V128Z", opacity: "0.2" }), /* @__PURE__ */ a6.createElement("path", { d: "M144,92a12,12,0,1,1,12,12A12,12,0,0,1,144,92ZM100,80a12,12,0,1,0,12,12A12,12,0,0,0,100,80Zm116,64A87.76,87.76,0,0,1,213,167l22.24,9.72A8,8,0,0,1,232,192a7.89,7.89,0,0,1-3.2-.67L207.38,182a88,88,0,0,1-158.76,0L27.2,191.33A7.89,7.89,0,0,1,24,192a8,8,0,0,1-3.2-15.33L43,167A87.76,87.76,0,0,1,40,144v-8H16a8,8,0,0,1,0-16H40v-8a87.76,87.76,0,0,1,3-23L20.8,79.33a8,8,0,1,1,6.4-14.66L48.62,74a88,88,0,0,1,158.76,0l21.42-9.36a8,8,0,0,1,6.4,14.66L213,89.05a87.76,87.76,0,0,1,3,23v8h24a8,8,0,0,1,0,16H216ZM56,120H200v-8a72,72,0,0,0-144,0Zm64,95.54V136H56v8A72.08,72.08,0,0,0,120,215.54ZM200,144v-8H136v79.54A72.08,72.08,0,0,0,200,144Z" }))
349
+ /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M208,128v16a80,80,0,0,1-160,0V128Z", opacity: "0.2" }), /* @__PURE__ */ a7.createElement("path", { d: "M144,92a12,12,0,1,1,12,12A12,12,0,0,1,144,92ZM100,80a12,12,0,1,0,12,12A12,12,0,0,0,100,80Zm116,64A87.76,87.76,0,0,1,213,167l22.24,9.72A8,8,0,0,1,232,192a7.89,7.89,0,0,1-3.2-.67L207.38,182a88,88,0,0,1-158.76,0L27.2,191.33A7.89,7.89,0,0,1,24,192a8,8,0,0,1-3.2-15.33L43,167A87.76,87.76,0,0,1,40,144v-8H16a8,8,0,0,1,0-16H40v-8a87.76,87.76,0,0,1,3-23L20.8,79.33a8,8,0,1,1,6.4-14.66L48.62,74a88,88,0,0,1,158.76,0l21.42-9.36a8,8,0,0,1,6.4,14.66L213,89.05a87.76,87.76,0,0,1,3,23v8h24a8,8,0,0,1,0,16H216ZM56,120H200v-8a72,72,0,0,0-144,0Zm64,95.54V136H56v8A72.08,72.08,0,0,0,120,215.54ZM200,144v-8H136v79.54A72.08,72.08,0,0,0,200,144Z" }))
314
350
  ],
315
351
  [
316
352
  "fill",
317
- /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M168,92a12,12,0,1,1-12-12A12,12,0,0,1,168,92ZM100,80a12,12,0,1,0,12,12A12,12,0,0,0,100,80Zm116,64A87.76,87.76,0,0,1,213,167l22.24,9.72A8,8,0,0,1,232,192a7.89,7.89,0,0,1-3.2-.67L207.38,182a88,88,0,0,1-158.76,0L27.2,191.33A7.89,7.89,0,0,1,24,192a8,8,0,0,1-3.2-15.33L43,167A87.76,87.76,0,0,1,40,144v-8H16a8,8,0,0,1,0-16H40v-8a87.76,87.76,0,0,1,3-23L20.8,79.33a8,8,0,1,1,6.4-14.66L48.62,74a88,88,0,0,1,158.76,0l21.42-9.36a8,8,0,0,1,6.4,14.66L213,89.05a87.76,87.76,0,0,1,3,23v8h24a8,8,0,0,1,0,16H216Zm-80,0a8,8,0,0,0-16,0v64a8,8,0,0,0,16,0Zm64-32a72,72,0,0,0-144,0v8H200Z" }))
353
+ /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M168,92a12,12,0,1,1-12-12A12,12,0,0,1,168,92ZM100,80a12,12,0,1,0,12,12A12,12,0,0,0,100,80Zm116,64A87.76,87.76,0,0,1,213,167l22.24,9.72A8,8,0,0,1,232,192a7.89,7.89,0,0,1-3.2-.67L207.38,182a88,88,0,0,1-158.76,0L27.2,191.33A7.89,7.89,0,0,1,24,192a8,8,0,0,1-3.2-15.33L43,167A87.76,87.76,0,0,1,40,144v-8H16a8,8,0,0,1,0-16H40v-8a87.76,87.76,0,0,1,3-23L20.8,79.33a8,8,0,1,1,6.4-14.66L48.62,74a88,88,0,0,1,158.76,0l21.42-9.36a8,8,0,0,1,6.4,14.66L213,89.05a87.76,87.76,0,0,1,3,23v8h24a8,8,0,0,1,0,16H216Zm-80,0a8,8,0,0,0-16,0v64a8,8,0,0,0,16,0Zm64-32a72,72,0,0,0-144,0v8H200Z" }))
318
354
  ],
319
355
  [
320
356
  "light",
321
- /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M146,92a10,10,0,1,1,10,10A10,10,0,0,1,146,92ZM100,82a10,10,0,1,0,10,10A10,10,0,0,0,100,82Zm146,46a6,6,0,0,1-6,6H214v10a85.88,85.88,0,0,1-3.45,24.08L234.4,178.5a6,6,0,0,1-4.8,11l-23.23-10.15a86,86,0,0,1-156.74,0L26.4,189.5a6,6,0,1,1-4.8-11l23.85-10.42A85.88,85.88,0,0,1,42,144V134H16a6,6,0,0,1,0-12H42V112a85.88,85.88,0,0,1,3.45-24.08L21.6,77.5a6,6,0,0,1,4.8-11L49.63,76.65a86,86,0,0,1,156.74,0L229.6,66.5a6,6,0,1,1,4.8,11L210.55,87.92A85.88,85.88,0,0,1,214,112v10h26A6,6,0,0,1,246,128ZM54,122H202V112a74,74,0,0,0-148,0Zm68,95.74V134H54v10A74.09,74.09,0,0,0,122,217.74ZM202,134H134v83.74A74.09,74.09,0,0,0,202,144Z" }))
357
+ /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M146,92a10,10,0,1,1,10,10A10,10,0,0,1,146,92ZM100,82a10,10,0,1,0,10,10A10,10,0,0,0,100,82Zm146,46a6,6,0,0,1-6,6H214v10a85.88,85.88,0,0,1-3.45,24.08L234.4,178.5a6,6,0,0,1-4.8,11l-23.23-10.15a86,86,0,0,1-156.74,0L26.4,189.5a6,6,0,1,1-4.8-11l23.85-10.42A85.88,85.88,0,0,1,42,144V134H16a6,6,0,0,1,0-12H42V112a85.88,85.88,0,0,1,3.45-24.08L21.6,77.5a6,6,0,0,1,4.8-11L49.63,76.65a86,86,0,0,1,156.74,0L229.6,66.5a6,6,0,1,1,4.8,11L210.55,87.92A85.88,85.88,0,0,1,214,112v10h26A6,6,0,0,1,246,128ZM54,122H202V112a74,74,0,0,0-148,0Zm68,95.74V134H54v10A74.09,74.09,0,0,0,122,217.74ZM202,134H134v83.74A74.09,74.09,0,0,0,202,144Z" }))
322
358
  ],
323
359
  [
324
360
  "regular",
325
- /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M144,92a12,12,0,1,1,12,12A12,12,0,0,1,144,92ZM100,80a12,12,0,1,0,12,12A12,12,0,0,0,100,80Zm116,64A87.76,87.76,0,0,1,213,167l22.24,9.72A8,8,0,0,1,232,192a7.89,7.89,0,0,1-3.2-.67L207.38,182a88,88,0,0,1-158.76,0L27.2,191.33A7.89,7.89,0,0,1,24,192a8,8,0,0,1-3.2-15.33L43,167A87.76,87.76,0,0,1,40,144v-8H16a8,8,0,0,1,0-16H40v-8a87.76,87.76,0,0,1,3-23L20.8,79.33a8,8,0,1,1,6.4-14.66L48.62,74a88,88,0,0,1,158.76,0l21.42-9.36a8,8,0,0,1,6.4,14.66L213,89.05a87.76,87.76,0,0,1,3,23v8h24a8,8,0,0,1,0,16H216ZM56,120H200v-8a72,72,0,0,0-144,0Zm64,95.54V136H56v8A72.08,72.08,0,0,0,120,215.54ZM200,144v-8H136v79.54A72.08,72.08,0,0,0,200,144Z" }))
361
+ /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M144,92a12,12,0,1,1,12,12A12,12,0,0,1,144,92ZM100,80a12,12,0,1,0,12,12A12,12,0,0,0,100,80Zm116,64A87.76,87.76,0,0,1,213,167l22.24,9.72A8,8,0,0,1,232,192a7.89,7.89,0,0,1-3.2-.67L207.38,182a88,88,0,0,1-158.76,0L27.2,191.33A7.89,7.89,0,0,1,24,192a8,8,0,0,1-3.2-15.33L43,167A87.76,87.76,0,0,1,40,144v-8H16a8,8,0,0,1,0-16H40v-8a87.76,87.76,0,0,1,3-23L20.8,79.33a8,8,0,1,1,6.4-14.66L48.62,74a88,88,0,0,1,158.76,0l21.42-9.36a8,8,0,0,1,6.4,14.66L213,89.05a87.76,87.76,0,0,1,3,23v8h24a8,8,0,0,1,0,16H216ZM56,120H200v-8a72,72,0,0,0-144,0Zm64,95.54V136H56v8A72.08,72.08,0,0,0,120,215.54ZM200,144v-8H136v79.54A72.08,72.08,0,0,0,200,144Z" }))
326
362
  ],
327
363
  [
328
364
  "thin",
329
- /* @__PURE__ */ a6.createElement(a6.Fragment, null, /* @__PURE__ */ a6.createElement("path", { d: "M148,92a8,8,0,1,1,8,8A8,8,0,0,1,148,92Zm-48-8a8,8,0,1,0,8,8A8,8,0,0,0,100,84Zm144,44a4,4,0,0,1-4,4H212v12a83.64,83.64,0,0,1-3.87,25.2l25.47,11.13A4,4,0,0,1,232,188a4.09,4.09,0,0,1-1.6-.33l-25-10.95a84,84,0,0,1-154.72,0l-25,10.95A4.09,4.09,0,0,1,24,188a4,4,0,0,1-1.6-7.67L47.87,169.2A83.64,83.64,0,0,1,44,144V132H16a4,4,0,0,1,0-8H44V112a83.64,83.64,0,0,1,3.87-25.2L22.4,75.67a4,4,0,0,1,3.2-7.34l25,11a84,84,0,0,1,154.72,0l25-11a4,4,0,1,1,3.2,7.34L208.13,86.8A83.64,83.64,0,0,1,212,112v12h28A4,4,0,0,1,244,128ZM52,124H204V112a76,76,0,0,0-152,0Zm72,95.89V132H52v12A76.09,76.09,0,0,0,124,219.89ZM204,132H132v87.89A76.09,76.09,0,0,0,204,144Z" }))
365
+ /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M148,92a8,8,0,1,1,8,8A8,8,0,0,1,148,92Zm-48-8a8,8,0,1,0,8,8A8,8,0,0,0,100,84Zm144,44a4,4,0,0,1-4,4H212v12a83.64,83.64,0,0,1-3.87,25.2l25.47,11.13A4,4,0,0,1,232,188a4.09,4.09,0,0,1-1.6-.33l-25-10.95a84,84,0,0,1-154.72,0l-25,10.95A4.09,4.09,0,0,1,24,188a4,4,0,0,1-1.6-7.67L47.87,169.2A83.64,83.64,0,0,1,44,144V132H16a4,4,0,0,1,0-8H44V112a83.64,83.64,0,0,1,3.87-25.2L22.4,75.67a4,4,0,0,1,3.2-7.34l25,11a84,84,0,0,1,154.72,0l25-11a4,4,0,1,1,3.2,7.34L208.13,86.8A83.64,83.64,0,0,1,212,112v12h28A4,4,0,0,1,244,128ZM52,124H204V112a76,76,0,0,0-152,0Zm72,95.89V132H52v12A76.09,76.09,0,0,0,124,219.89ZM204,132H132v87.89A76.09,76.09,0,0,0,204,144Z" }))
330
366
  ]
331
367
  ]);
332
368
 
333
369
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Bug.es.js
334
- var e8 = o6.forwardRef((r28, t8) => /* @__PURE__ */ o6.createElement(w, { ref: t8, ...r28, weights: e7 }));
335
- e8.displayName = "BugIcon";
370
+ var e9 = o7.forwardRef((r32, t9) => /* @__PURE__ */ o7.createElement(w, { ref: t9, ...r32, weights: e8 }));
371
+ e9.displayName = "BugIcon";
336
372
 
337
373
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/CaretRight.es.js
338
374
  import * as t2 from "react";
339
375
 
340
376
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/CaretRight.es.js
341
- import * as e9 from "react";
377
+ import * as e10 from "react";
342
378
  var t = /* @__PURE__ */ new Map([
343
379
  [
344
380
  "bold",
345
- /* @__PURE__ */ e9.createElement(e9.Fragment, null, /* @__PURE__ */ e9.createElement("path", { d: "M184.49,136.49l-80,80a12,12,0,0,1-17-17L159,128,87.51,56.49a12,12,0,1,1,17-17l80,80A12,12,0,0,1,184.49,136.49Z" }))
381
+ /* @__PURE__ */ e10.createElement(e10.Fragment, null, /* @__PURE__ */ e10.createElement("path", { d: "M184.49,136.49l-80,80a12,12,0,0,1-17-17L159,128,87.51,56.49a12,12,0,1,1,17-17l80,80A12,12,0,0,1,184.49,136.49Z" }))
346
382
  ],
347
383
  [
348
384
  "duotone",
349
- /* @__PURE__ */ e9.createElement(e9.Fragment, null, /* @__PURE__ */ e9.createElement("path", { d: "M176,128,96,208V48Z", opacity: "0.2" }), /* @__PURE__ */ e9.createElement("path", { d: "M181.66,122.34l-80-80A8,8,0,0,0,88,48V208a8,8,0,0,0,13.66,5.66l80-80A8,8,0,0,0,181.66,122.34ZM104,188.69V67.31L164.69,128Z" }))
385
+ /* @__PURE__ */ e10.createElement(e10.Fragment, null, /* @__PURE__ */ e10.createElement("path", { d: "M176,128,96,208V48Z", opacity: "0.2" }), /* @__PURE__ */ e10.createElement("path", { d: "M181.66,122.34l-80-80A8,8,0,0,0,88,48V208a8,8,0,0,0,13.66,5.66l80-80A8,8,0,0,0,181.66,122.34ZM104,188.69V67.31L164.69,128Z" }))
350
386
  ],
351
387
  [
352
388
  "fill",
353
- /* @__PURE__ */ e9.createElement(e9.Fragment, null, /* @__PURE__ */ e9.createElement("path", { d: "M181.66,133.66l-80,80A8,8,0,0,1,88,208V48a8,8,0,0,1,13.66-5.66l80,80A8,8,0,0,1,181.66,133.66Z" }))
389
+ /* @__PURE__ */ e10.createElement(e10.Fragment, null, /* @__PURE__ */ e10.createElement("path", { d: "M181.66,133.66l-80,80A8,8,0,0,1,88,208V48a8,8,0,0,1,13.66-5.66l80,80A8,8,0,0,1,181.66,133.66Z" }))
354
390
  ],
355
391
  [
356
392
  "light",
357
- /* @__PURE__ */ e9.createElement(e9.Fragment, null, /* @__PURE__ */ e9.createElement("path", { d: "M180.24,132.24l-80,80a6,6,0,0,1-8.48-8.48L167.51,128,91.76,52.24a6,6,0,0,1,8.48-8.48l80,80A6,6,0,0,1,180.24,132.24Z" }))
393
+ /* @__PURE__ */ e10.createElement(e10.Fragment, null, /* @__PURE__ */ e10.createElement("path", { d: "M180.24,132.24l-80,80a6,6,0,0,1-8.48-8.48L167.51,128,91.76,52.24a6,6,0,0,1,8.48-8.48l80,80A6,6,0,0,1,180.24,132.24Z" }))
358
394
  ],
359
395
  [
360
396
  "regular",
361
- /* @__PURE__ */ e9.createElement(e9.Fragment, null, /* @__PURE__ */ e9.createElement("path", { d: "M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z" }))
397
+ /* @__PURE__ */ e10.createElement(e10.Fragment, null, /* @__PURE__ */ e10.createElement("path", { d: "M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z" }))
362
398
  ],
363
399
  [
364
400
  "thin",
365
- /* @__PURE__ */ e9.createElement(e9.Fragment, null, /* @__PURE__ */ e9.createElement("path", { d: "M178.83,130.83l-80,80a4,4,0,0,1-5.66-5.66L170.34,128,93.17,50.83a4,4,0,0,1,5.66-5.66l80,80A4,4,0,0,1,178.83,130.83Z" }))
401
+ /* @__PURE__ */ e10.createElement(e10.Fragment, null, /* @__PURE__ */ e10.createElement("path", { d: "M178.83,130.83l-80,80a4,4,0,0,1-5.66-5.66L170.34,128,93.17,50.83a4,4,0,0,1,5.66-5.66l80,80A4,4,0,0,1,178.83,130.83Z" }))
366
402
  ]
367
403
  ]);
368
404
 
369
405
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/CaretRight.es.js
370
- var e10 = t2.forwardRef((r28, o36) => /* @__PURE__ */ t2.createElement(w, { ref: o36, ...r28, weights: t }));
371
- e10.displayName = "CaretRightIcon";
406
+ var e11 = t2.forwardRef((r32, o42) => /* @__PURE__ */ t2.createElement(w, { ref: o42, ...r32, weights: t }));
407
+ e11.displayName = "CaretRightIcon";
372
408
 
373
409
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ChatCircleDots.es.js
374
410
  import * as t3 from "react";
375
411
 
376
412
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ChatCircleDots.es.js
377
- import * as a7 from "react";
378
- var e11 = /* @__PURE__ */ new Map([
413
+ import * as a8 from "react";
414
+ var e12 = /* @__PURE__ */ new Map([
379
415
  [
380
416
  "bold",
381
- /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M120,128a16,16,0,1,1-16-16A16,16,0,0,1,120,128Zm32-16a16,16,0,1,0,16,16A16,16,0,0,0,152,112Zm84,16A108,108,0,0,1,78.77,224.15L46.34,235A20,20,0,0,1,21,209.66l10.81-32.43A108,108,0,1,1,236,128Zm-24,0A84,84,0,1,0,55.27,170.06a12,12,0,0,1,1,9.81l-9.93,29.79,29.79-9.93a12.1,12.1,0,0,1,3.8-.62,12,12,0,0,1,6,1.62A84,84,0,0,0,212,128Z" }))
417
+ /* @__PURE__ */ a8.createElement(a8.Fragment, null, /* @__PURE__ */ a8.createElement("path", { d: "M120,128a16,16,0,1,1-16-16A16,16,0,0,1,120,128Zm32-16a16,16,0,1,0,16,16A16,16,0,0,0,152,112Zm84,16A108,108,0,0,1,78.77,224.15L46.34,235A20,20,0,0,1,21,209.66l10.81-32.43A108,108,0,1,1,236,128Zm-24,0A84,84,0,1,0,55.27,170.06a12,12,0,0,1,1,9.81l-9.93,29.79,29.79-9.93a12.1,12.1,0,0,1,3.8-.62,12,12,0,0,1,6,1.62A84,84,0,0,0,212,128Z" }))
382
418
  ],
383
419
  [
384
420
  "duotone",
385
- /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement(
421
+ /* @__PURE__ */ a8.createElement(a8.Fragment, null, /* @__PURE__ */ a8.createElement(
386
422
  "path",
387
423
  {
388
424
  d: "M224,128A96,96,0,0,1,79.93,211.11h0L42.54,223.58a8,8,0,0,1-10.12-10.12l12.47-37.39h0A96,96,0,1,1,224,128Z",
389
425
  opacity: "0.2"
390
426
  }
391
- ), /* @__PURE__ */ a7.createElement("path", { d: "M128,24A104,104,0,0,0,36.18,176.88L24.83,210.93a16,16,0,0,0,20.24,20.24l34.05-11.35A104,104,0,1,0,128,24Zm0,192a87.87,87.87,0,0,1-44.06-11.81,8,8,0,0,0-4-1.08,7.85,7.85,0,0,0-2.53.42L40,216,52.47,178.6a8,8,0,0,0-.66-6.54A88,88,0,1,1,128,216Zm12-88a12,12,0,1,1-12-12A12,12,0,0,1,140,128Zm-44,0a12,12,0,1,1-12-12A12,12,0,0,1,96,128Zm88,0a12,12,0,1,1-12-12A12,12,0,0,1,184,128Z" }))
427
+ ), /* @__PURE__ */ a8.createElement("path", { d: "M128,24A104,104,0,0,0,36.18,176.88L24.83,210.93a16,16,0,0,0,20.24,20.24l34.05-11.35A104,104,0,1,0,128,24Zm0,192a87.87,87.87,0,0,1-44.06-11.81,8,8,0,0,0-4-1.08,7.85,7.85,0,0,0-2.53.42L40,216,52.47,178.6a8,8,0,0,0-.66-6.54A88,88,0,1,1,128,216Zm12-88a12,12,0,1,1-12-12A12,12,0,0,1,140,128Zm-44,0a12,12,0,1,1-12-12A12,12,0,0,1,96,128Zm88,0a12,12,0,1,1-12-12A12,12,0,0,1,184,128Z" }))
392
428
  ],
393
429
  [
394
430
  "fill",
395
- /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M128,24A104,104,0,0,0,36.18,176.88L24.83,210.93a16,16,0,0,0,20.24,20.24l34.05-11.35A104,104,0,1,0,128,24ZM84,140a12,12,0,1,1,12-12A12,12,0,0,1,84,140Zm44,0a12,12,0,1,1,12-12A12,12,0,0,1,128,140Zm44,0a12,12,0,1,1,12-12A12,12,0,0,1,172,140Z" }))
431
+ /* @__PURE__ */ a8.createElement(a8.Fragment, null, /* @__PURE__ */ a8.createElement("path", { d: "M128,24A104,104,0,0,0,36.18,176.88L24.83,210.93a16,16,0,0,0,20.24,20.24l34.05-11.35A104,104,0,1,0,128,24ZM84,140a12,12,0,1,1,12-12A12,12,0,0,1,84,140Zm44,0a12,12,0,1,1,12-12A12,12,0,0,1,128,140Zm44,0a12,12,0,1,1,12-12A12,12,0,0,1,172,140Z" }))
396
432
  ],
397
433
  [
398
434
  "light",
399
- /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M138,128a10,10,0,1,1-10-10A10,10,0,0,1,138,128ZM84,118a10,10,0,1,0,10,10A10,10,0,0,0,84,118Zm88,0a10,10,0,1,0,10,10A10,10,0,0,0,172,118Zm58,10A102,102,0,0,1,79.31,217.65L44.44,229.27a14,14,0,0,1-17.71-17.71l11.62-34.87A102,102,0,1,1,230,128Zm-12,0A90,90,0,1,0,50.08,173.06a6,6,0,0,1,.5,4.91L38.12,215.35a2,2,0,0,0,2.53,2.53L78,205.42a6.2,6.2,0,0,1,1.9-.31,6.09,6.09,0,0,1,3,.81A90,90,0,0,0,218,128Z" }))
435
+ /* @__PURE__ */ a8.createElement(a8.Fragment, null, /* @__PURE__ */ a8.createElement("path", { d: "M138,128a10,10,0,1,1-10-10A10,10,0,0,1,138,128ZM84,118a10,10,0,1,0,10,10A10,10,0,0,0,84,118Zm88,0a10,10,0,1,0,10,10A10,10,0,0,0,172,118Zm58,10A102,102,0,0,1,79.31,217.65L44.44,229.27a14,14,0,0,1-17.71-17.71l11.62-34.87A102,102,0,1,1,230,128Zm-12,0A90,90,0,1,0,50.08,173.06a6,6,0,0,1,.5,4.91L38.12,215.35a2,2,0,0,0,2.53,2.53L78,205.42a6.2,6.2,0,0,1,1.9-.31,6.09,6.09,0,0,1,3,.81A90,90,0,0,0,218,128Z" }))
400
436
  ],
401
437
  [
402
438
  "regular",
403
- /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M140,128a12,12,0,1,1-12-12A12,12,0,0,1,140,128ZM84,116a12,12,0,1,0,12,12A12,12,0,0,0,84,116Zm88,0a12,12,0,1,0,12,12A12,12,0,0,0,172,116Zm60,12A104,104,0,0,1,79.12,219.82L45.07,231.17a16,16,0,0,1-20.24-20.24l11.35-34.05A104,104,0,1,1,232,128Zm-16,0A88,88,0,1,0,51.81,172.06a8,8,0,0,1,.66,6.54L40,216,77.4,203.53a7.85,7.85,0,0,1,2.53-.42,8,8,0,0,1,4,1.08A88,88,0,0,0,216,128Z" }))
439
+ /* @__PURE__ */ a8.createElement(a8.Fragment, null, /* @__PURE__ */ a8.createElement("path", { d: "M140,128a12,12,0,1,1-12-12A12,12,0,0,1,140,128ZM84,116a12,12,0,1,0,12,12A12,12,0,0,0,84,116Zm88,0a12,12,0,1,0,12,12A12,12,0,0,0,172,116Zm60,12A104,104,0,0,1,79.12,219.82L45.07,231.17a16,16,0,0,1-20.24-20.24l11.35-34.05A104,104,0,1,1,232,128Zm-16,0A88,88,0,1,0,51.81,172.06a8,8,0,0,1,.66,6.54L40,216,77.4,203.53a7.85,7.85,0,0,1,2.53-.42,8,8,0,0,1,4,1.08A88,88,0,0,0,216,128Z" }))
404
440
  ],
405
441
  [
406
442
  "thin",
407
- /* @__PURE__ */ a7.createElement(a7.Fragment, null, /* @__PURE__ */ a7.createElement("path", { d: "M136,128a8,8,0,1,1-8-8A8,8,0,0,1,136,128Zm-52-8a8,8,0,1,0,8,8A8,8,0,0,0,84,120Zm88,0a8,8,0,1,0,8,8A8,8,0,0,0,172,120Zm56,8A100,100,0,0,1,79.5,215.47l-35.69,11.9a12,12,0,0,1-15.18-15.18l11.9-35.69A100,100,0,1,1,228,128Zm-8,0A92,92,0,1,0,48.35,174.07a4,4,0,0,1,.33,3.27L36.22,214.72a4,4,0,0,0,5.06,5.06l37.38-12.46a3.93,3.93,0,0,1,1.27-.21,4.05,4.05,0,0,1,2,.54A92,92,0,0,0,220,128Z" }))
443
+ /* @__PURE__ */ a8.createElement(a8.Fragment, null, /* @__PURE__ */ a8.createElement("path", { d: "M136,128a8,8,0,1,1-8-8A8,8,0,0,1,136,128Zm-52-8a8,8,0,1,0,8,8A8,8,0,0,0,84,120Zm88,0a8,8,0,1,0,8,8A8,8,0,0,0,172,120Zm56,8A100,100,0,0,1,79.5,215.47l-35.69,11.9a12,12,0,0,1-15.18-15.18l11.9-35.69A100,100,0,1,1,228,128Zm-8,0A92,92,0,1,0,48.35,174.07a4,4,0,0,1,.33,3.27L36.22,214.72a4,4,0,0,0,5.06,5.06l37.38-12.46a3.93,3.93,0,0,1,1.27-.21,4.05,4.05,0,0,1,2,.54A92,92,0,0,0,220,128Z" }))
408
444
  ]
409
445
  ]);
410
446
 
411
447
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ChatCircleDots.es.js
412
- var o7 = t3.forwardRef((e53, r28) => /* @__PURE__ */ t3.createElement(w, { ref: r28, ...e53, weights: e11 }));
413
- o7.displayName = "ChatCircleDotsIcon";
448
+ var o8 = t3.forwardRef((e54, r32) => /* @__PURE__ */ t3.createElement(w, { ref: r32, ...e54, weights: e12 }));
449
+ o8.displayName = "ChatCircleDotsIcon";
414
450
 
415
451
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Check.es.js
416
- import * as e13 from "react";
452
+ import * as e14 from "react";
417
453
 
418
454
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/Check.es.js
419
- import * as e12 from "react";
420
- var a8 = /* @__PURE__ */ new Map([
455
+ import * as e13 from "react";
456
+ var a9 = /* @__PURE__ */ new Map([
421
457
  [
422
458
  "bold",
423
- /* @__PURE__ */ e12.createElement(e12.Fragment, null, /* @__PURE__ */ e12.createElement("path", { d: "M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z" }))
459
+ /* @__PURE__ */ e13.createElement(e13.Fragment, null, /* @__PURE__ */ e13.createElement("path", { d: "M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z" }))
424
460
  ],
425
461
  [
426
462
  "duotone",
427
- /* @__PURE__ */ e12.createElement(e12.Fragment, null, /* @__PURE__ */ e12.createElement(
463
+ /* @__PURE__ */ e13.createElement(e13.Fragment, null, /* @__PURE__ */ e13.createElement(
428
464
  "path",
429
465
  {
430
466
  d: "M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z",
431
467
  opacity: "0.2"
432
468
  }
433
- ), /* @__PURE__ */ e12.createElement("path", { d: "M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z" }))
469
+ ), /* @__PURE__ */ e13.createElement("path", { d: "M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z" }))
434
470
  ],
435
471
  [
436
472
  "fill",
437
- /* @__PURE__ */ e12.createElement(e12.Fragment, null, /* @__PURE__ */ e12.createElement("path", { d: "M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z" }))
473
+ /* @__PURE__ */ e13.createElement(e13.Fragment, null, /* @__PURE__ */ e13.createElement("path", { d: "M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z" }))
438
474
  ],
439
475
  [
440
476
  "light",
441
- /* @__PURE__ */ e12.createElement(e12.Fragment, null, /* @__PURE__ */ e12.createElement("path", { d: "M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z" }))
477
+ /* @__PURE__ */ e13.createElement(e13.Fragment, null, /* @__PURE__ */ e13.createElement("path", { d: "M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z" }))
442
478
  ],
443
479
  [
444
480
  "regular",
445
- /* @__PURE__ */ e12.createElement(e12.Fragment, null, /* @__PURE__ */ e12.createElement("path", { d: "M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z" }))
481
+ /* @__PURE__ */ e13.createElement(e13.Fragment, null, /* @__PURE__ */ e13.createElement("path", { d: "M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z" }))
446
482
  ],
447
483
  [
448
484
  "thin",
449
- /* @__PURE__ */ e12.createElement(e12.Fragment, null, /* @__PURE__ */ e12.createElement("path", { d: "M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z" }))
485
+ /* @__PURE__ */ e13.createElement(e13.Fragment, null, /* @__PURE__ */ e13.createElement("path", { d: "M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z" }))
450
486
  ]
451
487
  ]);
452
488
 
453
489
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Check.es.js
454
- var o8 = e13.forwardRef((r28, t8) => /* @__PURE__ */ e13.createElement(w, { ref: t8, ...r28, weights: a8 }));
455
- o8.displayName = "CheckIcon";
490
+ var o9 = e14.forwardRef((r32, t9) => /* @__PURE__ */ e14.createElement(w, { ref: t9, ...r32, weights: a9 }));
491
+ o9.displayName = "CheckIcon";
456
492
 
457
493
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/EnvelopeSimple.es.js
458
- import * as e15 from "react";
494
+ import * as e16 from "react";
459
495
 
460
496
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/EnvelopeSimple.es.js
461
- import * as e14 from "react";
462
- var a9 = /* @__PURE__ */ new Map([
497
+ import * as e15 from "react";
498
+ var a10 = /* @__PURE__ */ new Map([
463
499
  [
464
500
  "bold",
465
- /* @__PURE__ */ e14.createElement(e14.Fragment, null, /* @__PURE__ */ e14.createElement("path", { d: "M224,44H32A12,12,0,0,0,20,56V192a20,20,0,0,0,20,20H216a20,20,0,0,0,20-20V56A12,12,0,0,0,224,44ZM193.15,68,128,127.72,62.85,68ZM44,188V83.28l75.89,69.57a12,12,0,0,0,16.22,0L212,83.28V188Z" }))
501
+ /* @__PURE__ */ e15.createElement(e15.Fragment, null, /* @__PURE__ */ e15.createElement("path", { d: "M224,44H32A12,12,0,0,0,20,56V192a20,20,0,0,0,20,20H216a20,20,0,0,0,20-20V56A12,12,0,0,0,224,44ZM193.15,68,128,127.72,62.85,68ZM44,188V83.28l75.89,69.57a12,12,0,0,0,16.22,0L212,83.28V188Z" }))
466
502
  ],
467
503
  [
468
504
  "duotone",
469
- /* @__PURE__ */ e14.createElement(e14.Fragment, null, /* @__PURE__ */ e14.createElement("path", { d: "M224,56l-96,88L32,56Z", opacity: "0.2" }), /* @__PURE__ */ e14.createElement("path", { d: "M224,48H32a8,8,0,0,0-8,8V192a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A8,8,0,0,0,224,48ZM203.43,64,128,133.15,52.57,64ZM216,192H40V74.19l82.59,75.71a8,8,0,0,0,10.82,0L216,74.19V192Z" }))
505
+ /* @__PURE__ */ e15.createElement(e15.Fragment, null, /* @__PURE__ */ e15.createElement("path", { d: "M224,56l-96,88L32,56Z", opacity: "0.2" }), /* @__PURE__ */ e15.createElement("path", { d: "M224,48H32a8,8,0,0,0-8,8V192a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A8,8,0,0,0,224,48ZM203.43,64,128,133.15,52.57,64ZM216,192H40V74.19l82.59,75.71a8,8,0,0,0,10.82,0L216,74.19V192Z" }))
470
506
  ],
471
507
  [
472
508
  "fill",
473
- /* @__PURE__ */ e14.createElement(e14.Fragment, null, /* @__PURE__ */ e14.createElement("path", { d: "M224,48H32a8,8,0,0,0-8,8V192a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A8,8,0,0,0,224,48Zm-8,144H40V74.19l82.59,75.71a8,8,0,0,0,10.82,0L216,74.19V192Z" }))
509
+ /* @__PURE__ */ e15.createElement(e15.Fragment, null, /* @__PURE__ */ e15.createElement("path", { d: "M224,48H32a8,8,0,0,0-8,8V192a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A8,8,0,0,0,224,48Zm-8,144H40V74.19l82.59,75.71a8,8,0,0,0,10.82,0L216,74.19V192Z" }))
474
510
  ],
475
511
  [
476
512
  "light",
477
- /* @__PURE__ */ e14.createElement(e14.Fragment, null, /* @__PURE__ */ e14.createElement("path", { d: "M224,50H32a6,6,0,0,0-6,6V192a14,14,0,0,0,14,14H216a14,14,0,0,0,14-14V56A6,6,0,0,0,224,50ZM208.58,62,128,135.86,47.42,62ZM216,194H40a2,2,0,0,1-2-2V69.64l86,78.78a6,6,0,0,0,8.1,0L218,69.64V192A2,2,0,0,1,216,194Z" }))
513
+ /* @__PURE__ */ e15.createElement(e15.Fragment, null, /* @__PURE__ */ e15.createElement("path", { d: "M224,50H32a6,6,0,0,0-6,6V192a14,14,0,0,0,14,14H216a14,14,0,0,0,14-14V56A6,6,0,0,0,224,50ZM208.58,62,128,135.86,47.42,62ZM216,194H40a2,2,0,0,1-2-2V69.64l86,78.78a6,6,0,0,0,8.1,0L218,69.64V192A2,2,0,0,1,216,194Z" }))
478
514
  ],
479
515
  [
480
516
  "regular",
481
- /* @__PURE__ */ e14.createElement(e14.Fragment, null, /* @__PURE__ */ e14.createElement("path", { d: "M224,48H32a8,8,0,0,0-8,8V192a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A8,8,0,0,0,224,48ZM203.43,64,128,133.15,52.57,64ZM216,192H40V74.19l82.59,75.71a8,8,0,0,0,10.82,0L216,74.19V192Z" }))
517
+ /* @__PURE__ */ e15.createElement(e15.Fragment, null, /* @__PURE__ */ e15.createElement("path", { d: "M224,48H32a8,8,0,0,0-8,8V192a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A8,8,0,0,0,224,48ZM203.43,64,128,133.15,52.57,64ZM216,192H40V74.19l82.59,75.71a8,8,0,0,0,10.82,0L216,74.19V192Z" }))
482
518
  ],
483
519
  [
484
520
  "thin",
485
- /* @__PURE__ */ e14.createElement(e14.Fragment, null, /* @__PURE__ */ e14.createElement("path", { d: "M224,52H32a4,4,0,0,0-4,4V192a12,12,0,0,0,12,12H216a12,12,0,0,0,12-12V56A4,4,0,0,0,224,52Zm-10.28,8L128,138.57,42.28,60ZM216,196H40a4,4,0,0,1-4-4V65.09L125.3,147a4,4,0,0,0,5.4,0L220,65.09V192A4,4,0,0,1,216,196Z" }))
521
+ /* @__PURE__ */ e15.createElement(e15.Fragment, null, /* @__PURE__ */ e15.createElement("path", { d: "M224,52H32a4,4,0,0,0-4,4V192a12,12,0,0,0,12,12H216a12,12,0,0,0,12-12V56A4,4,0,0,0,224,52Zm-10.28,8L128,138.57,42.28,60ZM216,196H40a4,4,0,0,1-4-4V65.09L125.3,147a4,4,0,0,0,5.4,0L220,65.09V192A4,4,0,0,1,216,196Z" }))
486
522
  ]
487
523
  ]);
488
524
 
489
525
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/EnvelopeSimple.es.js
490
- var o9 = e15.forwardRef((m5, p3) => /* @__PURE__ */ e15.createElement(w, { ref: p3, ...m5, weights: a9 }));
491
- o9.displayName = "EnvelopeSimpleIcon";
526
+ var o10 = e16.forwardRef((m5, p3) => /* @__PURE__ */ e16.createElement(w, { ref: p3, ...m5, weights: a10 }));
527
+ o10.displayName = "EnvelopeSimpleIcon";
492
528
 
493
529
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/File.es.js
494
- import * as e17 from "react";
530
+ import * as e18 from "react";
495
531
 
496
532
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/File.es.js
497
- import * as e16 from "react";
498
- var a10 = /* @__PURE__ */ new Map([
533
+ import * as e17 from "react";
534
+ var a11 = /* @__PURE__ */ new Map([
499
535
  [
500
536
  "bold",
501
- /* @__PURE__ */ e16.createElement(e16.Fragment, null, /* @__PURE__ */ e16.createElement("path", { d: "M216.49,79.52l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40V216a20,20,0,0,0,20,20H200a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.52ZM160,57l23,23H160ZM60,212V44h76V92a12,12,0,0,0,12,12h48V212Z" }))
537
+ /* @__PURE__ */ e17.createElement(e17.Fragment, null, /* @__PURE__ */ e17.createElement("path", { d: "M216.49,79.52l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40V216a20,20,0,0,0,20,20H200a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.52ZM160,57l23,23H160ZM60,212V44h76V92a12,12,0,0,0,12,12h48V212Z" }))
502
538
  ],
503
539
  [
504
540
  "duotone",
505
- /* @__PURE__ */ e16.createElement(e16.Fragment, null, /* @__PURE__ */ e16.createElement("path", { d: "M208,88H152V32Z", opacity: "0.2" }), /* @__PURE__ */ e16.createElement("path", { d: "M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Z" }))
541
+ /* @__PURE__ */ e17.createElement(e17.Fragment, null, /* @__PURE__ */ e17.createElement("path", { d: "M208,88H152V32Z", opacity: "0.2" }), /* @__PURE__ */ e17.createElement("path", { d: "M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Z" }))
506
542
  ],
507
543
  [
508
544
  "fill",
509
- /* @__PURE__ */ e16.createElement(e16.Fragment, null, /* @__PURE__ */ e16.createElement("path", { d: "M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Z" }))
545
+ /* @__PURE__ */ e17.createElement(e17.Fragment, null, /* @__PURE__ */ e17.createElement("path", { d: "M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Z" }))
510
546
  ],
511
547
  [
512
548
  "light",
513
- /* @__PURE__ */ e16.createElement(e16.Fragment, null, /* @__PURE__ */ e16.createElement("path", { d: "M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40V216a14,14,0,0,0,14,14H200a14,14,0,0,0,14-14V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158ZM200,218H56a2,2,0,0,1-2-2V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V216A2,2,0,0,1,200,218Z" }))
549
+ /* @__PURE__ */ e17.createElement(e17.Fragment, null, /* @__PURE__ */ e17.createElement("path", { d: "M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40V216a14,14,0,0,0,14,14H200a14,14,0,0,0,14-14V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158ZM200,218H56a2,2,0,0,1-2-2V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V216A2,2,0,0,1,200,218Z" }))
514
550
  ],
515
551
  [
516
552
  "regular",
517
- /* @__PURE__ */ e16.createElement(e16.Fragment, null, /* @__PURE__ */ e16.createElement("path", { d: "M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Z" }))
553
+ /* @__PURE__ */ e17.createElement(e17.Fragment, null, /* @__PURE__ */ e17.createElement("path", { d: "M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Z" }))
518
554
  ],
519
555
  [
520
556
  "thin",
521
- /* @__PURE__ */ e16.createElement(e16.Fragment, null, /* @__PURE__ */ e16.createElement("path", { d: "M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40V216a12,12,0,0,0,12,12H200a12,12,0,0,0,12-12V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM200,220H56a4,4,0,0,1-4-4V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V216A4,4,0,0,1,200,220Z" }))
557
+ /* @__PURE__ */ e17.createElement(e17.Fragment, null, /* @__PURE__ */ e17.createElement("path", { d: "M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40V216a12,12,0,0,0,12,12H200a12,12,0,0,0,12-12V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM200,220H56a4,4,0,0,1-4-4V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V216A4,4,0,0,1,200,220Z" }))
522
558
  ]
523
559
  ]);
524
560
 
525
561
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/File.es.js
526
- var o10 = e17.forwardRef((r28, t8) => /* @__PURE__ */ e17.createElement(w, { ref: t8, ...r28, weights: a10 }));
527
- o10.displayName = "FileIcon";
562
+ var o11 = e18.forwardRef((r32, t9) => /* @__PURE__ */ e18.createElement(w, { ref: t9, ...r32, weights: a11 }));
563
+ o11.displayName = "FileIcon";
528
564
 
529
565
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ImageSquare.es.js
530
- import * as e19 from "react";
566
+ import * as e20 from "react";
531
567
 
532
568
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/ImageSquare.es.js
533
- import * as a11 from "react";
534
- var e18 = /* @__PURE__ */ new Map([
569
+ import * as a12 from "react";
570
+ var e19 = /* @__PURE__ */ new Map([
535
571
  [
536
572
  "bold",
537
- /* @__PURE__ */ a11.createElement(a11.Fragment, null, /* @__PURE__ */ a11.createElement("path", { d: "M208,28H48A20,20,0,0,0,28,48V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V48A20,20,0,0,0,208,28Zm-4,24v63.72L186.14,97.86a20,20,0,0,0-28.28,0L52,203.72V52ZM85.66,204,172,117.66l32,32V204ZM76,96a20,20,0,1,1,20,20A20,20,0,0,1,76,96Z" }))
573
+ /* @__PURE__ */ a12.createElement(a12.Fragment, null, /* @__PURE__ */ a12.createElement("path", { d: "M208,28H48A20,20,0,0,0,28,48V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V48A20,20,0,0,0,208,28Zm-4,24v63.72L186.14,97.86a20,20,0,0,0-28.28,0L52,203.72V52ZM85.66,204,172,117.66l32,32V204ZM76,96a20,20,0,1,1,20,20A20,20,0,0,1,76,96Z" }))
538
574
  ],
539
575
  [
540
576
  "duotone",
541
- /* @__PURE__ */ a11.createElement(a11.Fragment, null, /* @__PURE__ */ a11.createElement(
577
+ /* @__PURE__ */ a12.createElement(a12.Fragment, null, /* @__PURE__ */ a12.createElement(
542
578
  "path",
543
579
  {
544
580
  d: "M208,40H48a8,8,0,0,0-8,8V208a8,8,0,0,0,8,8h8.69L166.34,106.34a8,8,0,0,1,11.32,0L216,144.69V48A8,8,0,0,0,208,40ZM96,112a16,16,0,1,1,16-16A16,16,0,0,1,96,112Z",
545
581
  opacity: "0.2"
546
582
  }
547
- ), /* @__PURE__ */ a11.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM48,48H208v77.38l-24.69-24.7a16,16,0,0,0-22.62,0L53.37,208H48ZM208,208H76l96-96,36,36v60ZM96,120A24,24,0,1,0,72,96,24,24,0,0,0,96,120Zm0-32a8,8,0,1,1-8,8A8,8,0,0,1,96,88Z" }))
583
+ ), /* @__PURE__ */ a12.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM48,48H208v77.38l-24.69-24.7a16,16,0,0,0-22.62,0L53.37,208H48ZM208,208H76l96-96,36,36v60ZM96,120A24,24,0,1,0,72,96,24,24,0,0,0,96,120Zm0-32a8,8,0,1,1-8,8A8,8,0,0,1,96,88Z" }))
548
584
  ],
549
585
  [
550
586
  "fill",
551
- /* @__PURE__ */ a11.createElement(a11.Fragment, null, /* @__PURE__ */ a11.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM48,48H208v77.38l-24.69-24.7a16,16,0,0,0-22.62,0L53.37,208H48ZM80,96a16,16,0,1,1,16,16A16,16,0,0,1,80,96Z" }))
587
+ /* @__PURE__ */ a12.createElement(a12.Fragment, null, /* @__PURE__ */ a12.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM48,48H208v77.38l-24.69-24.7a16,16,0,0,0-22.62,0L53.37,208H48ZM80,96a16,16,0,1,1,16,16A16,16,0,0,1,80,96Z" }))
552
588
  ],
553
589
  [
554
590
  "light",
555
- /* @__PURE__ */ a11.createElement(a11.Fragment, null, /* @__PURE__ */ a11.createElement("path", { d: "M208,34H48A14,14,0,0,0,34,48V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V48A14,14,0,0,0,208,34ZM46,208V48a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2v82.2l-28.1-28.1a14,14,0,0,0-19.8,0L54.2,210H48A2,2,0,0,1,46,208Zm162,2H71.17l99.41-99.41a2,2,0,0,1,2.83,0L210,147.17V208A2,2,0,0,1,208,210ZM96,118A22,22,0,1,0,74,96,22,22,0,0,0,96,118Zm0-32A10,10,0,1,1,86,96,10,10,0,0,1,96,86Z" }))
591
+ /* @__PURE__ */ a12.createElement(a12.Fragment, null, /* @__PURE__ */ a12.createElement("path", { d: "M208,34H48A14,14,0,0,0,34,48V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V48A14,14,0,0,0,208,34ZM46,208V48a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2v82.2l-28.1-28.1a14,14,0,0,0-19.8,0L54.2,210H48A2,2,0,0,1,46,208Zm162,2H71.17l99.41-99.41a2,2,0,0,1,2.83,0L210,147.17V208A2,2,0,0,1,208,210ZM96,118A22,22,0,1,0,74,96,22,22,0,0,0,96,118Zm0-32A10,10,0,1,1,86,96,10,10,0,0,1,96,86Z" }))
556
592
  ],
557
593
  [
558
594
  "regular",
559
- /* @__PURE__ */ a11.createElement(a11.Fragment, null, /* @__PURE__ */ a11.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM48,48H208v77.38l-24.69-24.7a16,16,0,0,0-22.62,0L53.37,208H48ZM208,208H76l96-96,36,36v60ZM96,120A24,24,0,1,0,72,96,24,24,0,0,0,96,120Zm0-32a8,8,0,1,1-8,8A8,8,0,0,1,96,88Z" }))
595
+ /* @__PURE__ */ a12.createElement(a12.Fragment, null, /* @__PURE__ */ a12.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM48,48H208v77.38l-24.69-24.7a16,16,0,0,0-22.62,0L53.37,208H48ZM208,208H76l96-96,36,36v60ZM96,120A24,24,0,1,0,72,96,24,24,0,0,0,96,120Zm0-32a8,8,0,1,1-8,8A8,8,0,0,1,96,88Z" }))
560
596
  ],
561
597
  [
562
598
  "thin",
563
- /* @__PURE__ */ a11.createElement(a11.Fragment, null, /* @__PURE__ */ a11.createElement("path", { d: "M208,36H48A12,12,0,0,0,36,48V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V48A12,12,0,0,0,208,36ZM44,208V48a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4v87l-31.51-31.52a12,12,0,0,0-17,0L55,212H48A4,4,0,0,1,44,208Zm164,4H66.34L169.17,109.17a4,4,0,0,1,5.66,0L212,146.34V208A4,4,0,0,1,208,212ZM96,116A20,20,0,1,0,76,96,20,20,0,0,0,96,116Zm0-32A12,12,0,1,1,84,96,12,12,0,0,1,96,84Z" }))
599
+ /* @__PURE__ */ a12.createElement(a12.Fragment, null, /* @__PURE__ */ a12.createElement("path", { d: "M208,36H48A12,12,0,0,0,36,48V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V48A12,12,0,0,0,208,36ZM44,208V48a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4v87l-31.51-31.52a12,12,0,0,0-17,0L55,212H48A4,4,0,0,1,44,208Zm164,4H66.34L169.17,109.17a4,4,0,0,1,5.66,0L212,146.34V208A4,4,0,0,1,208,212ZM96,116A20,20,0,1,0,76,96,20,20,0,0,0,96,116Zm0-32A12,12,0,1,1,84,96,12,12,0,0,1,96,84Z" }))
564
600
  ]
565
601
  ]);
566
602
 
567
603
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/ImageSquare.es.js
568
- var a12 = e19.forwardRef((r28, o36) => /* @__PURE__ */ e19.createElement(w, { ref: o36, ...r28, weights: e18 }));
569
- a12.displayName = "ImageSquareIcon";
604
+ var a13 = e20.forwardRef((r32, o42) => /* @__PURE__ */ e20.createElement(w, { ref: o42, ...r32, weights: e19 }));
605
+ a13.displayName = "ImageSquareIcon";
570
606
 
571
607
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Lightbulb.es.js
572
608
  import * as t4 from "react";
573
609
 
574
610
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/Lightbulb.es.js
575
- import * as a13 from "react";
576
- var e20 = /* @__PURE__ */ new Map([
611
+ import * as a14 from "react";
612
+ var e21 = /* @__PURE__ */ new Map([
577
613
  [
578
614
  "bold",
579
- /* @__PURE__ */ a13.createElement(a13.Fragment, null, /* @__PURE__ */ a13.createElement("path", { d: "M180,232a12,12,0,0,1-12,12H88a12,12,0,0,1,0-24h80A12,12,0,0,1,180,232Zm40-128a91.51,91.51,0,0,1-35.17,72.35A12.26,12.26,0,0,0,180,186v2a20,20,0,0,1-20,20H96a20,20,0,0,1-20-20v-2a12,12,0,0,0-4.7-9.51A91.57,91.57,0,0,1,36,104.52C35.73,54.69,76,13.2,125.79,12A92,92,0,0,1,220,104Zm-24,0a68,68,0,0,0-69.65-68C89.56,36.88,59.8,67.55,60,104.38a67.71,67.71,0,0,0,26.1,53.19A35.87,35.87,0,0,1,100,184h56.1A36.13,36.13,0,0,1,170,157.49,67.68,67.68,0,0,0,196,104Zm-20.07-5.32a48.5,48.5,0,0,0-31.91-40,12,12,0,0,0-8,22.62,24.31,24.31,0,0,1,16.09,20,12,12,0,0,0,23.86-2.64Z" }))
615
+ /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M180,232a12,12,0,0,1-12,12H88a12,12,0,0,1,0-24h80A12,12,0,0,1,180,232Zm40-128a91.51,91.51,0,0,1-35.17,72.35A12.26,12.26,0,0,0,180,186v2a20,20,0,0,1-20,20H96a20,20,0,0,1-20-20v-2a12,12,0,0,0-4.7-9.51A91.57,91.57,0,0,1,36,104.52C35.73,54.69,76,13.2,125.79,12A92,92,0,0,1,220,104Zm-24,0a68,68,0,0,0-69.65-68C89.56,36.88,59.8,67.55,60,104.38a67.71,67.71,0,0,0,26.1,53.19A35.87,35.87,0,0,1,100,184h56.1A36.13,36.13,0,0,1,170,157.49,67.68,67.68,0,0,0,196,104Zm-20.07-5.32a48.5,48.5,0,0,0-31.91-40,12,12,0,0,0-8,22.62,24.31,24.31,0,0,1,16.09,20,12,12,0,0,0,23.86-2.64Z" }))
580
616
  ],
581
617
  [
582
618
  "duotone",
583
- /* @__PURE__ */ a13.createElement(a13.Fragment, null, /* @__PURE__ */ a13.createElement(
619
+ /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement(
584
620
  "path",
585
621
  {
586
622
  d: "M208,104a79.86,79.86,0,0,1-30.59,62.92A24.29,24.29,0,0,0,168,186v6a8,8,0,0,1-8,8H96a8,8,0,0,1-8-8v-6a24.11,24.11,0,0,0-9.3-19A79.87,79.87,0,0,1,48,104.45C47.76,61.09,82.72,25,126.07,24A80,80,0,0,1,208,104Z",
587
623
  opacity: "0.2"
588
624
  }
589
- ), /* @__PURE__ */ a13.createElement("path", { d: "M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-16,0a72,72,0,0,0-73.74-72c-39,.92-70.47,33.39-70.26,72.39a71.65,71.65,0,0,0,27.64,56.3A32,32,0,0,1,96,186v6h64v-6a32.15,32.15,0,0,1,12.47-25.35A71.65,71.65,0,0,0,200,104Zm-16.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z" }))
625
+ ), /* @__PURE__ */ a14.createElement("path", { d: "M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-16,0a72,72,0,0,0-73.74-72c-39,.92-70.47,33.39-70.26,72.39a71.65,71.65,0,0,0,27.64,56.3A32,32,0,0,1,96,186v6h64v-6a32.15,32.15,0,0,1,12.47-25.35A71.65,71.65,0,0,0,200,104Zm-16.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z" }))
590
626
  ],
591
627
  [
592
628
  "fill",
593
- /* @__PURE__ */ a13.createElement(a13.Fragment, null, /* @__PURE__ */ a13.createElement("path", { d: "M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-32.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z" }))
629
+ /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-32.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z" }))
594
630
  ],
595
631
  [
596
632
  "light",
597
- /* @__PURE__ */ a13.createElement(a13.Fragment, null, /* @__PURE__ */ a13.createElement("path", { d: "M174,232a6,6,0,0,1-6,6H88a6,6,0,0,1,0-12h80A6,6,0,0,1,174,232Zm40-128a85.56,85.56,0,0,1-32.88,67.64A18.23,18.23,0,0,0,174,186v6a14,14,0,0,1-14,14H96a14,14,0,0,1-14-14v-6a18,18,0,0,0-7-14.23h0a85.59,85.59,0,0,1-33-67.24C41.74,57.91,79.39,19.12,125.93,18A86,86,0,0,1,214,104Zm-12,0a74,74,0,0,0-75.79-74C86.17,31,53.78,64.34,54,104.42a73.67,73.67,0,0,0,28.4,57.87A29.92,29.92,0,0,1,94,186v6a2,2,0,0,0,2,2h64a2,2,0,0,0,2-2v-6a30.18,30.18,0,0,1,11.7-23.78A73.59,73.59,0,0,0,202,104Zm-20.08-9A55.58,55.58,0,0,0,137,50.08a6,6,0,1,0-2,11.84C152.38,64.84,167.13,79.6,170.08,97a6,6,0,0,0,5.91,5,6.87,6.87,0,0,0,1-.08A6,6,0,0,0,181.92,95Z" }))
633
+ /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M174,232a6,6,0,0,1-6,6H88a6,6,0,0,1,0-12h80A6,6,0,0,1,174,232Zm40-128a85.56,85.56,0,0,1-32.88,67.64A18.23,18.23,0,0,0,174,186v6a14,14,0,0,1-14,14H96a14,14,0,0,1-14-14v-6a18,18,0,0,0-7-14.23h0a85.59,85.59,0,0,1-33-67.24C41.74,57.91,79.39,19.12,125.93,18A86,86,0,0,1,214,104Zm-12,0a74,74,0,0,0-75.79-74C86.17,31,53.78,64.34,54,104.42a73.67,73.67,0,0,0,28.4,57.87A29.92,29.92,0,0,1,94,186v6a2,2,0,0,0,2,2h64a2,2,0,0,0,2-2v-6a30.18,30.18,0,0,1,11.7-23.78A73.59,73.59,0,0,0,202,104Zm-20.08-9A55.58,55.58,0,0,0,137,50.08a6,6,0,1,0-2,11.84C152.38,64.84,167.13,79.6,170.08,97a6,6,0,0,0,5.91,5,6.87,6.87,0,0,0,1-.08A6,6,0,0,0,181.92,95Z" }))
598
634
  ],
599
635
  [
600
636
  "regular",
601
- /* @__PURE__ */ a13.createElement(a13.Fragment, null, /* @__PURE__ */ a13.createElement("path", { d: "M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-16,0a72,72,0,0,0-73.74-72c-39,.92-70.47,33.39-70.26,72.39a71.65,71.65,0,0,0,27.64,56.3A32,32,0,0,1,96,186v6h64v-6a32.15,32.15,0,0,1,12.47-25.35A71.65,71.65,0,0,0,200,104Zm-16.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z" }))
637
+ /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M176,232a8,8,0,0,1-8,8H88a8,8,0,0,1,0-16h80A8,8,0,0,1,176,232Zm40-128a87.55,87.55,0,0,1-33.64,69.21A16.24,16.24,0,0,0,176,186v6a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16v-6a16,16,0,0,0-6.23-12.66A87.59,87.59,0,0,1,40,104.49C39.74,56.83,78.26,17.14,125.88,16A88,88,0,0,1,216,104Zm-16,0a72,72,0,0,0-73.74-72c-39,.92-70.47,33.39-70.26,72.39a71.65,71.65,0,0,0,27.64,56.3A32,32,0,0,1,96,186v6h64v-6a32.15,32.15,0,0,1,12.47-25.35A71.65,71.65,0,0,0,200,104Zm-16.11-9.34a57.6,57.6,0,0,0-46.56-46.55,8,8,0,0,0-2.66,15.78c16.57,2.79,30.63,16.85,33.44,33.45A8,8,0,0,0,176,104a9,9,0,0,0,1.35-.11A8,8,0,0,0,183.89,94.66Z" }))
602
638
  ],
603
639
  [
604
640
  "thin",
605
- /* @__PURE__ */ a13.createElement(a13.Fragment, null, /* @__PURE__ */ a13.createElement("path", { d: "M172,232a4,4,0,0,1-4,4H88a4,4,0,0,1,0-8h80A4,4,0,0,1,172,232Zm40-128a83.59,83.59,0,0,1-32.11,66.06A20.2,20.2,0,0,0,172,186v6a12,12,0,0,1-12,12H96a12,12,0,0,1-12-12v-6a20,20,0,0,0-7.76-15.81A83.58,83.58,0,0,1,44,104.47C43.75,59,80.52,21.09,126,20a84,84,0,0,1,86,84Zm-8,0a76,76,0,0,0-77.83-76C85,29,51.77,63.27,52,104.43a75.62,75.62,0,0,0,29.17,59.43A28,28,0,0,1,92,186v6a4,4,0,0,0,4,4h64a4,4,0,0,0,4-4v-6a28.14,28.14,0,0,1,10.94-22.2A75.62,75.62,0,0,0,204,104ZM136.66,52.06a4,4,0,0,0-1.32,7.88C153.53,63,169,78.45,172.06,96.67A4,4,0,0,0,176,100a3.88,3.88,0,0,0,.67-.06,4,4,0,0,0,3.27-4.61A53.51,53.51,0,0,0,136.66,52.06Z" }))
641
+ /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M172,232a4,4,0,0,1-4,4H88a4,4,0,0,1,0-8h80A4,4,0,0,1,172,232Zm40-128a83.59,83.59,0,0,1-32.11,66.06A20.2,20.2,0,0,0,172,186v6a12,12,0,0,1-12,12H96a12,12,0,0,1-12-12v-6a20,20,0,0,0-7.76-15.81A83.58,83.58,0,0,1,44,104.47C43.75,59,80.52,21.09,126,20a84,84,0,0,1,86,84Zm-8,0a76,76,0,0,0-77.83-76C85,29,51.77,63.27,52,104.43a75.62,75.62,0,0,0,29.17,59.43A28,28,0,0,1,92,186v6a4,4,0,0,0,4,4h64a4,4,0,0,0,4-4v-6a28.14,28.14,0,0,1,10.94-22.2A75.62,75.62,0,0,0,204,104ZM136.66,52.06a4,4,0,0,0-1.32,7.88C153.53,63,169,78.45,172.06,96.67A4,4,0,0,0,176,100a3.88,3.88,0,0,0,.67-.06,4,4,0,0,0,3.27-4.61A53.51,53.51,0,0,0,136.66,52.06Z" }))
606
642
  ]
607
643
  ]);
608
644
 
609
645
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Lightbulb.es.js
610
- var o11 = t4.forwardRef((e53, r28) => /* @__PURE__ */ t4.createElement(w, { ref: r28, ...e53, weights: e20 }));
611
- o11.displayName = "LightbulbIcon";
646
+ var o12 = t4.forwardRef((e54, r32) => /* @__PURE__ */ t4.createElement(w, { ref: r32, ...e54, weights: e21 }));
647
+ o12.displayName = "LightbulbIcon";
612
648
 
613
649
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/LockSimple.es.js
614
- import * as o12 from "react";
650
+ import * as o13 from "react";
615
651
 
616
652
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/LockSimple.es.js
617
- import * as a14 from "react";
618
- var e21 = /* @__PURE__ */ new Map([
653
+ import * as a15 from "react";
654
+ var e22 = /* @__PURE__ */ new Map([
619
655
  [
620
656
  "bold",
621
- /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M208,76H180V56A52,52,0,0,0,76,56V76H48A20,20,0,0,0,28,96V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V96A20,20,0,0,0,208,76ZM100,56a28,28,0,0,1,56,0V76H100ZM204,204H52V100H204Z" }))
657
+ /* @__PURE__ */ a15.createElement(a15.Fragment, null, /* @__PURE__ */ a15.createElement("path", { d: "M208,76H180V56A52,52,0,0,0,76,56V76H48A20,20,0,0,0,28,96V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V96A20,20,0,0,0,208,76ZM100,56a28,28,0,0,1,56,0V76H100ZM204,204H52V100H204Z" }))
622
658
  ],
623
659
  [
624
660
  "duotone",
625
- /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement(
661
+ /* @__PURE__ */ a15.createElement(a15.Fragment, null, /* @__PURE__ */ a15.createElement(
626
662
  "path",
627
663
  {
628
664
  d: "M216,96V208a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V96a8,8,0,0,1,8-8H208A8,8,0,0,1,216,96Z",
629
665
  opacity: "0.2"
630
666
  }
631
- ), /* @__PURE__ */ a14.createElement("path", { d: "M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96ZM208,208H48V96H208V208Z" }))
667
+ ), /* @__PURE__ */ a15.createElement("path", { d: "M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96ZM208,208H48V96H208V208Z" }))
632
668
  ],
633
669
  [
634
670
  "fill",
635
- /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96Z" }))
671
+ /* @__PURE__ */ a15.createElement(a15.Fragment, null, /* @__PURE__ */ a15.createElement("path", { d: "M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96Z" }))
636
672
  ],
637
673
  [
638
674
  "light",
639
- /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M208,82H174V56a46,46,0,0,0-92,0V82H48A14,14,0,0,0,34,96V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V96A14,14,0,0,0,208,82ZM94,56a34,34,0,0,1,68,0V82H94ZM210,208a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V96a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2Z" }))
675
+ /* @__PURE__ */ a15.createElement(a15.Fragment, null, /* @__PURE__ */ a15.createElement("path", { d: "M208,82H174V56a46,46,0,0,0-92,0V82H48A14,14,0,0,0,34,96V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V96A14,14,0,0,0,208,82ZM94,56a34,34,0,0,1,68,0V82H94ZM210,208a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V96a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2Z" }))
640
676
  ],
641
677
  [
642
678
  "regular",
643
- /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96ZM208,208H48V96H208V208Z" }))
679
+ /* @__PURE__ */ a15.createElement(a15.Fragment, null, /* @__PURE__ */ a15.createElement("path", { d: "M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96ZM208,208H48V96H208V208Z" }))
644
680
  ],
645
681
  [
646
682
  "thin",
647
- /* @__PURE__ */ a14.createElement(a14.Fragment, null, /* @__PURE__ */ a14.createElement("path", { d: "M208,84H172V56a44,44,0,0,0-88,0V84H48A12,12,0,0,0,36,96V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V96A12,12,0,0,0,208,84ZM92,56a36,36,0,0,1,72,0V84H92ZM212,208a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V96a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Z" }))
683
+ /* @__PURE__ */ a15.createElement(a15.Fragment, null, /* @__PURE__ */ a15.createElement("path", { d: "M208,84H172V56a44,44,0,0,0-88,0V84H48A12,12,0,0,0,36,96V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V96A12,12,0,0,0,208,84ZM92,56a36,36,0,0,1,72,0V84H92ZM212,208a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V96a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Z" }))
648
684
  ]
649
685
  ]);
650
686
 
651
687
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/LockSimple.es.js
652
- var e22 = o12.forwardRef((m5, r28) => /* @__PURE__ */ o12.createElement(w, { ref: r28, ...m5, weights: e21 }));
653
- e22.displayName = "LockSimpleIcon";
688
+ var e23 = o13.forwardRef((m5, r32) => /* @__PURE__ */ o13.createElement(w, { ref: r32, ...m5, weights: e22 }));
689
+ e23.displayName = "LockSimpleIcon";
654
690
 
655
691
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Play.es.js
656
- import * as o13 from "react";
692
+ import * as o14 from "react";
657
693
 
658
694
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/Play.es.js
659
- import * as e23 from "react";
660
- var a15 = /* @__PURE__ */ new Map([
695
+ import * as e24 from "react";
696
+ var a16 = /* @__PURE__ */ new Map([
661
697
  [
662
698
  "bold",
663
- /* @__PURE__ */ e23.createElement(e23.Fragment, null, /* @__PURE__ */ e23.createElement("path", { d: "M234.49,111.07,90.41,22.94A20,20,0,0,0,60,39.87V216.13a20,20,0,0,0,30.41,16.93l144.08-88.13a19.82,19.82,0,0,0,0-33.86ZM84,208.85V47.15L216.16,128Z" }))
699
+ /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M234.49,111.07,90.41,22.94A20,20,0,0,0,60,39.87V216.13a20,20,0,0,0,30.41,16.93l144.08-88.13a19.82,19.82,0,0,0,0-33.86ZM84,208.85V47.15L216.16,128Z" }))
664
700
  ],
665
701
  [
666
702
  "duotone",
667
- /* @__PURE__ */ e23.createElement(e23.Fragment, null, /* @__PURE__ */ e23.createElement(
703
+ /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement(
668
704
  "path",
669
705
  {
670
706
  d: "M228.23,134.69,84.15,222.81A8,8,0,0,1,72,216.12V39.88a8,8,0,0,1,12.15-6.69l144.08,88.12A7.82,7.82,0,0,1,228.23,134.69Z",
671
707
  opacity: "0.2"
672
708
  }
673
- ), /* @__PURE__ */ e23.createElement("path", { d: "M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z" }))
709
+ ), /* @__PURE__ */ e24.createElement("path", { d: "M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z" }))
674
710
  ],
675
711
  [
676
712
  "fill",
677
- /* @__PURE__ */ e23.createElement(e23.Fragment, null, /* @__PURE__ */ e23.createElement("path", { d: "M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z" }))
713
+ /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z" }))
678
714
  ],
679
715
  [
680
716
  "light",
681
- /* @__PURE__ */ e23.createElement(e23.Fragment, null, /* @__PURE__ */ e23.createElement("path", { d: "M231.36,116.19,87.28,28.06a14,14,0,0,0-14.18-.27A13.69,13.69,0,0,0,66,39.87V216.13a13.69,13.69,0,0,0,7.1,12.08,14,14,0,0,0,14.18-.27l144.08-88.13a13.82,13.82,0,0,0,0-23.62Zm-6.26,13.38L81,217.7a2,2,0,0,1-2.06,0,1.78,1.78,0,0,1-1-1.61V39.87a1.78,1.78,0,0,1,1-1.61A2.06,2.06,0,0,1,80,38a2,2,0,0,1,1,.31L225.1,126.43a1.82,1.82,0,0,1,0,3.14Z" }))
717
+ /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M231.36,116.19,87.28,28.06a14,14,0,0,0-14.18-.27A13.69,13.69,0,0,0,66,39.87V216.13a13.69,13.69,0,0,0,7.1,12.08,14,14,0,0,0,14.18-.27l144.08-88.13a13.82,13.82,0,0,0,0-23.62Zm-6.26,13.38L81,217.7a2,2,0,0,1-2.06,0,1.78,1.78,0,0,1-1-1.61V39.87a1.78,1.78,0,0,1,1-1.61A2.06,2.06,0,0,1,80,38a2,2,0,0,1,1,.31L225.1,126.43a1.82,1.82,0,0,1,0,3.14Z" }))
682
718
  ],
683
719
  [
684
720
  "regular",
685
- /* @__PURE__ */ e23.createElement(e23.Fragment, null, /* @__PURE__ */ e23.createElement("path", { d: "M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z" }))
721
+ /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z" }))
686
722
  ],
687
723
  [
688
724
  "thin",
689
- /* @__PURE__ */ e23.createElement(e23.Fragment, null, /* @__PURE__ */ e23.createElement("path", { d: "M230.32,117.9,86.24,29.79a11.91,11.91,0,0,0-12.17-.23A11.71,11.71,0,0,0,68,39.89V216.11a11.71,11.71,0,0,0,6.07,10.33,11.91,11.91,0,0,0,12.17-.23L230.32,138.1a11.82,11.82,0,0,0,0-20.2Zm-4.18,13.37L82.06,219.39a4,4,0,0,1-4.07.07,3.77,3.77,0,0,1-2-3.35V39.89a3.77,3.77,0,0,1,2-3.35,4,4,0,0,1,4.07.07l144.08,88.12a3.8,3.8,0,0,1,0,6.54Z" }))
725
+ /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M230.32,117.9,86.24,29.79a11.91,11.91,0,0,0-12.17-.23A11.71,11.71,0,0,0,68,39.89V216.11a11.71,11.71,0,0,0,6.07,10.33,11.91,11.91,0,0,0,12.17-.23L230.32,138.1a11.82,11.82,0,0,0,0-20.2Zm-4.18,13.37L82.06,219.39a4,4,0,0,1-4.07.07,3.77,3.77,0,0,1-2-3.35V39.89a3.77,3.77,0,0,1,2-3.35,4,4,0,0,1,4.07.07l144.08,88.12a3.8,3.8,0,0,1,0,6.54Z" }))
690
726
  ]
691
727
  ]);
692
728
 
693
729
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Play.es.js
694
- var a16 = o13.forwardRef((e53, r28) => /* @__PURE__ */ o13.createElement(w, { ref: r28, ...e53, weights: a15 }));
695
- a16.displayName = "PlayIcon";
730
+ var a17 = o14.forwardRef((e54, r32) => /* @__PURE__ */ o14.createElement(w, { ref: r32, ...e54, weights: a16 }));
731
+ a17.displayName = "PlayIcon";
696
732
 
697
733
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Plus.es.js
698
- import * as o14 from "react";
734
+ import * as o15 from "react";
699
735
 
700
736
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/Plus.es.js
701
- import * as e24 from "react";
702
- var a17 = /* @__PURE__ */ new Map([
737
+ import * as e25 from "react";
738
+ var a18 = /* @__PURE__ */ new Map([
703
739
  [
704
740
  "bold",
705
- /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M228,128a12,12,0,0,1-12,12H140v76a12,12,0,0,1-24,0V140H40a12,12,0,0,1,0-24h76V40a12,12,0,0,1,24,0v76h76A12,12,0,0,1,228,128Z" }))
741
+ /* @__PURE__ */ e25.createElement(e25.Fragment, null, /* @__PURE__ */ e25.createElement("path", { d: "M228,128a12,12,0,0,1-12,12H140v76a12,12,0,0,1-24,0V140H40a12,12,0,0,1,0-24h76V40a12,12,0,0,1,24,0v76h76A12,12,0,0,1,228,128Z" }))
706
742
  ],
707
743
  [
708
744
  "duotone",
709
- /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement(
745
+ /* @__PURE__ */ e25.createElement(e25.Fragment, null, /* @__PURE__ */ e25.createElement(
710
746
  "path",
711
747
  {
712
748
  d: "M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z",
713
749
  opacity: "0.2"
714
750
  }
715
- ), /* @__PURE__ */ e24.createElement("path", { d: "M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z" }))
751
+ ), /* @__PURE__ */ e25.createElement("path", { d: "M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z" }))
716
752
  ],
717
753
  [
718
754
  "fill",
719
- /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,136H136v48a8,8,0,0,1-16,0V136H72a8,8,0,0,1,0-16h48V72a8,8,0,0,1,16,0v48h48a8,8,0,0,1,0,16Z" }))
755
+ /* @__PURE__ */ e25.createElement(e25.Fragment, null, /* @__PURE__ */ e25.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,136H136v48a8,8,0,0,1-16,0V136H72a8,8,0,0,1,0-16h48V72a8,8,0,0,1,16,0v48h48a8,8,0,0,1,0,16Z" }))
720
756
  ],
721
757
  [
722
758
  "light",
723
- /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M222,128a6,6,0,0,1-6,6H134v82a6,6,0,0,1-12,0V134H40a6,6,0,0,1,0-12h82V40a6,6,0,0,1,12,0v82h82A6,6,0,0,1,222,128Z" }))
759
+ /* @__PURE__ */ e25.createElement(e25.Fragment, null, /* @__PURE__ */ e25.createElement("path", { d: "M222,128a6,6,0,0,1-6,6H134v82a6,6,0,0,1-12,0V134H40a6,6,0,0,1,0-12h82V40a6,6,0,0,1,12,0v82h82A6,6,0,0,1,222,128Z" }))
724
760
  ],
725
761
  [
726
762
  "regular",
727
- /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z" }))
763
+ /* @__PURE__ */ e25.createElement(e25.Fragment, null, /* @__PURE__ */ e25.createElement("path", { d: "M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z" }))
728
764
  ],
729
765
  [
730
766
  "thin",
731
- /* @__PURE__ */ e24.createElement(e24.Fragment, null, /* @__PURE__ */ e24.createElement("path", { d: "M220,128a4,4,0,0,1-4,4H132v84a4,4,0,0,1-8,0V132H40a4,4,0,0,1,0-8h84V40a4,4,0,0,1,8,0v84h84A4,4,0,0,1,220,128Z" }))
767
+ /* @__PURE__ */ e25.createElement(e25.Fragment, null, /* @__PURE__ */ e25.createElement("path", { d: "M220,128a4,4,0,0,1-4,4H132v84a4,4,0,0,1-8,0V132H40a4,4,0,0,1,0-8h84V40a4,4,0,0,1,8,0v84h84A4,4,0,0,1,220,128Z" }))
732
768
  ]
733
769
  ]);
734
770
 
735
771
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Plus.es.js
736
- var e25 = o14.forwardRef((r28, s4) => /* @__PURE__ */ o14.createElement(w, { ref: s4, ...r28, weights: a17 }));
737
- e25.displayName = "PlusIcon";
772
+ var e26 = o15.forwardRef((r32, s4) => /* @__PURE__ */ o15.createElement(w, { ref: s4, ...r32, weights: a18 }));
773
+ e26.displayName = "PlusIcon";
738
774
 
739
775
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Sparkle.es.js
740
- import * as e26 from "react";
776
+ import * as e27 from "react";
741
777
 
742
778
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/Sparkle.es.js
743
- import * as a18 from "react";
779
+ import * as a19 from "react";
744
780
  var l = /* @__PURE__ */ new Map([
745
781
  [
746
782
  "bold",
747
- /* @__PURE__ */ a18.createElement(a18.Fragment, null, /* @__PURE__ */ a18.createElement("path", { d: "M199,125.31l-49.88-18.39L130.69,57a19.92,19.92,0,0,0-37.38,0L74.92,106.92,25,125.31a19.92,19.92,0,0,0,0,37.38l49.88,18.39L93.31,231a19.92,19.92,0,0,0,37.38,0l18.39-49.88L199,162.69a19.92,19.92,0,0,0,0-37.38Zm-63.38,35.16a12,12,0,0,0-7.11,7.11L112,212.28l-16.47-44.7a12,12,0,0,0-7.11-7.11L43.72,144l44.7-16.47a12,12,0,0,0,7.11-7.11L112,75.72l16.47,44.7a12,12,0,0,0,7.11,7.11L180.28,144ZM140,40a12,12,0,0,1,12-12h12V16a12,12,0,0,1,24,0V28h12a12,12,0,0,1,0,24H188V64a12,12,0,0,1-24,0V52H152A12,12,0,0,1,140,40ZM252,88a12,12,0,0,1-12,12h-4v4a12,12,0,0,1-24,0v-4h-4a12,12,0,0,1,0-24h4V72a12,12,0,0,1,24,0v4h4A12,12,0,0,1,252,88Z" }))
783
+ /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M199,125.31l-49.88-18.39L130.69,57a19.92,19.92,0,0,0-37.38,0L74.92,106.92,25,125.31a19.92,19.92,0,0,0,0,37.38l49.88,18.39L93.31,231a19.92,19.92,0,0,0,37.38,0l18.39-49.88L199,162.69a19.92,19.92,0,0,0,0-37.38Zm-63.38,35.16a12,12,0,0,0-7.11,7.11L112,212.28l-16.47-44.7a12,12,0,0,0-7.11-7.11L43.72,144l44.7-16.47a12,12,0,0,0,7.11-7.11L112,75.72l16.47,44.7a12,12,0,0,0,7.11,7.11L180.28,144ZM140,40a12,12,0,0,1,12-12h12V16a12,12,0,0,1,24,0V28h12a12,12,0,0,1,0,24H188V64a12,12,0,0,1-24,0V52H152A12,12,0,0,1,140,40ZM252,88a12,12,0,0,1-12,12h-4v4a12,12,0,0,1-24,0v-4h-4a12,12,0,0,1,0-24h4V72a12,12,0,0,1,24,0v4h4A12,12,0,0,1,252,88Z" }))
748
784
  ],
749
785
  [
750
786
  "duotone",
751
- /* @__PURE__ */ a18.createElement(a18.Fragment, null, /* @__PURE__ */ a18.createElement(
787
+ /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement(
752
788
  "path",
753
789
  {
754
790
  d: "M194.82,151.43l-55.09,20.3-20.3,55.09a7.92,7.92,0,0,1-14.86,0l-20.3-55.09-55.09-20.3a7.92,7.92,0,0,1,0-14.86l55.09-20.3,20.3-55.09a7.92,7.92,0,0,1,14.86,0l20.3,55.09,55.09,20.3A7.92,7.92,0,0,1,194.82,151.43Z",
755
791
  opacity: "0.2"
756
792
  }
757
- ), /* @__PURE__ */ a18.createElement("path", { d: "M197.58,129.06,146,110l-19-51.62a15.92,15.92,0,0,0-29.88,0L78,110l-51.62,19a15.92,15.92,0,0,0,0,29.88L78,178l19,51.62a15.92,15.92,0,0,0,29.88,0L146,178l51.62-19a15.92,15.92,0,0,0,0-29.88ZM137,164.22a8,8,0,0,0-4.74,4.74L112,223.85,91.78,169A8,8,0,0,0,87,164.22L32.15,144,87,123.78A8,8,0,0,0,91.78,119L112,64.15,132.22,119a8,8,0,0,0,4.74,4.74L191.85,144ZM144,40a8,8,0,0,1,8-8h16V16a8,8,0,0,1,16,0V32h16a8,8,0,0,1,0,16H184V64a8,8,0,0,1-16,0V48H152A8,8,0,0,1,144,40ZM248,88a8,8,0,0,1-8,8h-8v8a8,8,0,0,1-16,0V96h-8a8,8,0,0,1,0-16h8V72a8,8,0,0,1,16,0v8h8A8,8,0,0,1,248,88Z" }))
793
+ ), /* @__PURE__ */ a19.createElement("path", { d: "M197.58,129.06,146,110l-19-51.62a15.92,15.92,0,0,0-29.88,0L78,110l-51.62,19a15.92,15.92,0,0,0,0,29.88L78,178l19,51.62a15.92,15.92,0,0,0,29.88,0L146,178l51.62-19a15.92,15.92,0,0,0,0-29.88ZM137,164.22a8,8,0,0,0-4.74,4.74L112,223.85,91.78,169A8,8,0,0,0,87,164.22L32.15,144,87,123.78A8,8,0,0,0,91.78,119L112,64.15,132.22,119a8,8,0,0,0,4.74,4.74L191.85,144ZM144,40a8,8,0,0,1,8-8h16V16a8,8,0,0,1,16,0V32h16a8,8,0,0,1,0,16H184V64a8,8,0,0,1-16,0V48H152A8,8,0,0,1,144,40ZM248,88a8,8,0,0,1-8,8h-8v8a8,8,0,0,1-16,0V96h-8a8,8,0,0,1,0-16h8V72a8,8,0,0,1,16,0v8h8A8,8,0,0,1,248,88Z" }))
758
794
  ],
759
795
  [
760
796
  "fill",
761
- /* @__PURE__ */ a18.createElement(a18.Fragment, null, /* @__PURE__ */ a18.createElement("path", { d: "M208,144a15.78,15.78,0,0,1-10.42,14.94L146,178l-19,51.62a15.92,15.92,0,0,1-29.88,0L78,178l-51.62-19a15.92,15.92,0,0,1,0-29.88L78,110l19-51.62a15.92,15.92,0,0,1,29.88,0L146,110l51.62,19A15.78,15.78,0,0,1,208,144ZM152,48h16V64a8,8,0,0,0,16,0V48h16a8,8,0,0,0,0-16H184V16a8,8,0,0,0-16,0V32H152a8,8,0,0,0,0,16Zm88,32h-8V72a8,8,0,0,0-16,0v8h-8a8,8,0,0,0,0,16h8v8a8,8,0,0,0,16,0V96h8a8,8,0,0,0,0-16Z" }))
797
+ /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M208,144a15.78,15.78,0,0,1-10.42,14.94L146,178l-19,51.62a15.92,15.92,0,0,1-29.88,0L78,178l-51.62-19a15.92,15.92,0,0,1,0-29.88L78,110l19-51.62a15.92,15.92,0,0,1,29.88,0L146,110l51.62,19A15.78,15.78,0,0,1,208,144ZM152,48h16V64a8,8,0,0,0,16,0V48h16a8,8,0,0,0,0-16H184V16a8,8,0,0,0-16,0V32H152a8,8,0,0,0,0,16Zm88,32h-8V72a8,8,0,0,0-16,0v8h-8a8,8,0,0,0,0,16h8v8a8,8,0,0,0,16,0V96h8a8,8,0,0,0,0-16Z" }))
762
798
  ],
763
799
  [
764
800
  "light",
765
- /* @__PURE__ */ a18.createElement(a18.Fragment, null, /* @__PURE__ */ a18.createElement("path", { d: "M196.89,130.94,144.4,111.6,125.06,59.11a13.92,13.92,0,0,0-26.12,0L79.6,111.6,27.11,130.94a13.92,13.92,0,0,0,0,26.12L79.6,176.4l19.34,52.49a13.92,13.92,0,0,0,26.12,0L144.4,176.4l52.49-19.34a13.92,13.92,0,0,0,0-26.12Zm-4.15,14.86-55.08,20.3a6,6,0,0,0-3.56,3.56l-20.3,55.08a1.92,1.92,0,0,1-3.6,0L89.9,169.66a6,6,0,0,0-3.56-3.56L31.26,145.8a1.92,1.92,0,0,1,0-3.6l55.08-20.3a6,6,0,0,0,3.56-3.56l20.3-55.08a1.92,1.92,0,0,1,3.6,0l20.3,55.08a6,6,0,0,0,3.56,3.56l55.08,20.3a1.92,1.92,0,0,1,0,3.6ZM146,40a6,6,0,0,1,6-6h18V16a6,6,0,0,1,12,0V34h18a6,6,0,0,1,0,12H182V64a6,6,0,0,1-12,0V46H152A6,6,0,0,1,146,40ZM246,88a6,6,0,0,1-6,6H230v10a6,6,0,0,1-12,0V94H208a6,6,0,0,1,0-12h10V72a6,6,0,0,1,12,0V82h10A6,6,0,0,1,246,88Z" }))
801
+ /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M196.89,130.94,144.4,111.6,125.06,59.11a13.92,13.92,0,0,0-26.12,0L79.6,111.6,27.11,130.94a13.92,13.92,0,0,0,0,26.12L79.6,176.4l19.34,52.49a13.92,13.92,0,0,0,26.12,0L144.4,176.4l52.49-19.34a13.92,13.92,0,0,0,0-26.12Zm-4.15,14.86-55.08,20.3a6,6,0,0,0-3.56,3.56l-20.3,55.08a1.92,1.92,0,0,1-3.6,0L89.9,169.66a6,6,0,0,0-3.56-3.56L31.26,145.8a1.92,1.92,0,0,1,0-3.6l55.08-20.3a6,6,0,0,0,3.56-3.56l20.3-55.08a1.92,1.92,0,0,1,3.6,0l20.3,55.08a6,6,0,0,0,3.56,3.56l55.08,20.3a1.92,1.92,0,0,1,0,3.6ZM146,40a6,6,0,0,1,6-6h18V16a6,6,0,0,1,12,0V34h18a6,6,0,0,1,0,12H182V64a6,6,0,0,1-12,0V46H152A6,6,0,0,1,146,40ZM246,88a6,6,0,0,1-6,6H230v10a6,6,0,0,1-12,0V94H208a6,6,0,0,1,0-12h10V72a6,6,0,0,1,12,0V82h10A6,6,0,0,1,246,88Z" }))
766
802
  ],
767
803
  [
768
804
  "regular",
769
- /* @__PURE__ */ a18.createElement(a18.Fragment, null, /* @__PURE__ */ a18.createElement("path", { d: "M197.58,129.06,146,110l-19-51.62a15.92,15.92,0,0,0-29.88,0L78,110l-51.62,19a15.92,15.92,0,0,0,0,29.88L78,178l19,51.62a15.92,15.92,0,0,0,29.88,0L146,178l51.62-19a15.92,15.92,0,0,0,0-29.88ZM137,164.22a8,8,0,0,0-4.74,4.74L112,223.85,91.78,169A8,8,0,0,0,87,164.22L32.15,144,87,123.78A8,8,0,0,0,91.78,119L112,64.15,132.22,119a8,8,0,0,0,4.74,4.74L191.85,144ZM144,40a8,8,0,0,1,8-8h16V16a8,8,0,0,1,16,0V32h16a8,8,0,0,1,0,16H184V64a8,8,0,0,1-16,0V48H152A8,8,0,0,1,144,40ZM248,88a8,8,0,0,1-8,8h-8v8a8,8,0,0,1-16,0V96h-8a8,8,0,0,1,0-16h8V72a8,8,0,0,1,16,0v8h8A8,8,0,0,1,248,88Z" }))
805
+ /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M197.58,129.06,146,110l-19-51.62a15.92,15.92,0,0,0-29.88,0L78,110l-51.62,19a15.92,15.92,0,0,0,0,29.88L78,178l19,51.62a15.92,15.92,0,0,0,29.88,0L146,178l51.62-19a15.92,15.92,0,0,0,0-29.88ZM137,164.22a8,8,0,0,0-4.74,4.74L112,223.85,91.78,169A8,8,0,0,0,87,164.22L32.15,144,87,123.78A8,8,0,0,0,91.78,119L112,64.15,132.22,119a8,8,0,0,0,4.74,4.74L191.85,144ZM144,40a8,8,0,0,1,8-8h16V16a8,8,0,0,1,16,0V32h16a8,8,0,0,1,0,16H184V64a8,8,0,0,1-16,0V48H152A8,8,0,0,1,144,40ZM248,88a8,8,0,0,1-8,8h-8v8a8,8,0,0,1-16,0V96h-8a8,8,0,0,1,0-16h8V72a8,8,0,0,1,16,0v8h8A8,8,0,0,1,248,88Z" }))
770
806
  ],
771
807
  [
772
808
  "thin",
773
- /* @__PURE__ */ a18.createElement(a18.Fragment, null, /* @__PURE__ */ a18.createElement("path", { d: "M196.2,132.81l-53.36-19.65L123.19,59.8a11.93,11.93,0,0,0-22.38,0L81.16,113.16,27.8,132.81a11.93,11.93,0,0,0,0,22.38l53.36,19.65,19.65,53.36a11.93,11.93,0,0,0,22.38,0l19.65-53.36,53.36-19.65a11.93,11.93,0,0,0,0-22.38Zm-2.77,14.87L138.35,168a4,4,0,0,0-2.37,2.37l-20.3,55.08a3.92,3.92,0,0,1-7.36,0L88,170.35A4,4,0,0,0,85.65,168l-55.08-20.3a3.92,3.92,0,0,1,0-7.36L85.65,120A4,4,0,0,0,88,117.65l20.3-55.08a3.92,3.92,0,0,1,7.36,0L136,117.65a4,4,0,0,0,2.37,2.37l55.08,20.3a3.92,3.92,0,0,1,0,7.36ZM148,40a4,4,0,0,1,4-4h20V16a4,4,0,0,1,8,0V36h20a4,4,0,0,1,0,8H180V64a4,4,0,0,1-8,0V44H152A4,4,0,0,1,148,40Zm96,48a4,4,0,0,1-4,4H228v12a4,4,0,0,1-8,0V92H208a4,4,0,0,1,0-8h12V72a4,4,0,0,1,8,0V84h12A4,4,0,0,1,244,88Z" }))
809
+ /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M196.2,132.81l-53.36-19.65L123.19,59.8a11.93,11.93,0,0,0-22.38,0L81.16,113.16,27.8,132.81a11.93,11.93,0,0,0,0,22.38l53.36,19.65,19.65,53.36a11.93,11.93,0,0,0,22.38,0l19.65-53.36,53.36-19.65a11.93,11.93,0,0,0,0-22.38Zm-2.77,14.87L138.35,168a4,4,0,0,0-2.37,2.37l-20.3,55.08a3.92,3.92,0,0,1-7.36,0L88,170.35A4,4,0,0,0,85.65,168l-55.08-20.3a3.92,3.92,0,0,1,0-7.36L85.65,120A4,4,0,0,0,88,117.65l20.3-55.08a3.92,3.92,0,0,1,7.36,0L136,117.65a4,4,0,0,0,2.37,2.37l55.08,20.3a3.92,3.92,0,0,1,0,7.36ZM148,40a4,4,0,0,1,4-4h20V16a4,4,0,0,1,8,0V36h20a4,4,0,0,1,0,8H180V64a4,4,0,0,1-8,0V44H152A4,4,0,0,1,148,40Zm96,48a4,4,0,0,1-4,4H228v12a4,4,0,0,1-8,0V92H208a4,4,0,0,1,0-8h12V72a4,4,0,0,1,8,0V84h12A4,4,0,0,1,244,88Z" }))
774
810
  ]
775
811
  ]);
776
812
 
777
813
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Sparkle.es.js
778
- var r6 = e26.forwardRef((o36, a26) => /* @__PURE__ */ e26.createElement(w, { ref: a26, ...o36, weights: l }));
779
- r6.displayName = "SparkleIcon";
814
+ var r7 = e27.forwardRef((o42, a28) => /* @__PURE__ */ e27.createElement(w, { ref: a28, ...o42, weights: l }));
815
+ r7.displayName = "SparkleIcon";
780
816
 
781
817
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Star.es.js
782
- import * as r7 from "react";
818
+ import * as r8 from "react";
783
819
 
784
820
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/Star.es.js
785
- import * as a19 from "react";
821
+ import * as a20 from "react";
786
822
  var l2 = /* @__PURE__ */ new Map([
787
823
  [
788
824
  "bold",
789
- /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M243,96a20.33,20.33,0,0,0-17.74-14l-56.59-4.57L146.83,24.62a20.36,20.36,0,0,0-37.66,0L87.35,77.44,30.76,82A20.45,20.45,0,0,0,19.1,117.88l43.18,37.24-13.2,55.7A20.37,20.37,0,0,0,79.57,233L128,203.19,176.43,233a20.39,20.39,0,0,0,30.49-22.15l-13.2-55.7,43.18-37.24A20.43,20.43,0,0,0,243,96ZM172.53,141.7a12,12,0,0,0-3.84,11.86L181.58,208l-47.29-29.08a12,12,0,0,0-12.58,0L74.42,208l12.89-54.4a12,12,0,0,0-3.84-11.86L41.2,105.24l55.4-4.47a12,12,0,0,0,10.13-7.38L128,41.89l21.27,51.5a12,12,0,0,0,10.13,7.38l55.4,4.47Z" }))
825
+ /* @__PURE__ */ a20.createElement(a20.Fragment, null, /* @__PURE__ */ a20.createElement("path", { d: "M243,96a20.33,20.33,0,0,0-17.74-14l-56.59-4.57L146.83,24.62a20.36,20.36,0,0,0-37.66,0L87.35,77.44,30.76,82A20.45,20.45,0,0,0,19.1,117.88l43.18,37.24-13.2,55.7A20.37,20.37,0,0,0,79.57,233L128,203.19,176.43,233a20.39,20.39,0,0,0,30.49-22.15l-13.2-55.7,43.18-37.24A20.43,20.43,0,0,0,243,96ZM172.53,141.7a12,12,0,0,0-3.84,11.86L181.58,208l-47.29-29.08a12,12,0,0,0-12.58,0L74.42,208l12.89-54.4a12,12,0,0,0-3.84-11.86L41.2,105.24l55.4-4.47a12,12,0,0,0,10.13-7.38L128,41.89l21.27,51.5a12,12,0,0,0,10.13,7.38l55.4,4.47Z" }))
790
826
  ],
791
827
  [
792
828
  "duotone",
793
- /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement(
829
+ /* @__PURE__ */ a20.createElement(a20.Fragment, null, /* @__PURE__ */ a20.createElement(
794
830
  "path",
795
831
  {
796
832
  d: "M229.06,108.79l-48.7,42,14.88,62.79a8.4,8.4,0,0,1-12.52,9.17L128,189.09,73.28,222.74a8.4,8.4,0,0,1-12.52-9.17l14.88-62.79-48.7-42A8.46,8.46,0,0,1,31.73,94L95.64,88.8l24.62-59.6a8.36,8.36,0,0,1,15.48,0l24.62,59.6L224.27,94A8.46,8.46,0,0,1,229.06,108.79Z",
797
833
  opacity: "0.2"
798
834
  }
799
- ), /* @__PURE__ */ a19.createElement("path", { d: "M239.18,97.26A16.38,16.38,0,0,0,224.92,86l-59-4.76L143.14,26.15a16.36,16.36,0,0,0-30.27,0L90.11,81.23,31.08,86a16.46,16.46,0,0,0-9.37,28.86l45,38.83L53,211.75a16.38,16.38,0,0,0,24.5,17.82L128,198.49l50.53,31.08A16.4,16.4,0,0,0,203,211.75l-13.76-58.07,45-38.83A16.43,16.43,0,0,0,239.18,97.26Zm-15.34,5.47-48.7,42a8,8,0,0,0-2.56,7.91l14.88,62.8a.37.37,0,0,1-.17.48c-.18.14-.23.11-.38,0l-54.72-33.65a8,8,0,0,0-8.38,0L69.09,215.94c-.15.09-.19.12-.38,0a.37.37,0,0,1-.17-.48l14.88-62.8a8,8,0,0,0-2.56-7.91l-48.7-42c-.12-.1-.23-.19-.13-.5s.18-.27.33-.29l63.92-5.16A8,8,0,0,0,103,91.86l24.62-59.61c.08-.17.11-.25.35-.25s.27.08.35.25L153,91.86a8,8,0,0,0,6.75,4.92l63.92,5.16c.15,0,.24,0,.33.29S224,102.63,223.84,102.73Z" }))
835
+ ), /* @__PURE__ */ a20.createElement("path", { d: "M239.18,97.26A16.38,16.38,0,0,0,224.92,86l-59-4.76L143.14,26.15a16.36,16.36,0,0,0-30.27,0L90.11,81.23,31.08,86a16.46,16.46,0,0,0-9.37,28.86l45,38.83L53,211.75a16.38,16.38,0,0,0,24.5,17.82L128,198.49l50.53,31.08A16.4,16.4,0,0,0,203,211.75l-13.76-58.07,45-38.83A16.43,16.43,0,0,0,239.18,97.26Zm-15.34,5.47-48.7,42a8,8,0,0,0-2.56,7.91l14.88,62.8a.37.37,0,0,1-.17.48c-.18.14-.23.11-.38,0l-54.72-33.65a8,8,0,0,0-8.38,0L69.09,215.94c-.15.09-.19.12-.38,0a.37.37,0,0,1-.17-.48l14.88-62.8a8,8,0,0,0-2.56-7.91l-48.7-42c-.12-.1-.23-.19-.13-.5s.18-.27.33-.29l63.92-5.16A8,8,0,0,0,103,91.86l24.62-59.61c.08-.17.11-.25.35-.25s.27.08.35.25L153,91.86a8,8,0,0,0,6.75,4.92l63.92,5.16c.15,0,.24,0,.33.29S224,102.63,223.84,102.73Z" }))
800
836
  ],
801
837
  [
802
838
  "fill",
803
- /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M234.29,114.85l-45,38.83L203,211.75a16.4,16.4,0,0,1-24.5,17.82L128,198.49,77.47,229.57A16.4,16.4,0,0,1,53,211.75l13.76-58.07-45-38.83A16.46,16.46,0,0,1,31.08,86l59-4.76,22.76-55.08a16.36,16.36,0,0,1,30.27,0l22.75,55.08,59,4.76a16.46,16.46,0,0,1,9.37,28.86Z" }))
839
+ /* @__PURE__ */ a20.createElement(a20.Fragment, null, /* @__PURE__ */ a20.createElement("path", { d: "M234.29,114.85l-45,38.83L203,211.75a16.4,16.4,0,0,1-24.5,17.82L128,198.49,77.47,229.57A16.4,16.4,0,0,1,53,211.75l13.76-58.07-45-38.83A16.46,16.46,0,0,1,31.08,86l59-4.76,22.76-55.08a16.36,16.36,0,0,1,30.27,0l22.75,55.08,59,4.76a16.46,16.46,0,0,1,9.37,28.86Z" }))
804
840
  ],
805
841
  [
806
842
  "light",
807
- /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M237.28,97.87A14.18,14.18,0,0,0,224.76,88l-60.25-4.87-23.22-56.2a14.37,14.37,0,0,0-26.58,0L91.49,83.11,31.24,88a14.18,14.18,0,0,0-12.52,9.89A14.43,14.43,0,0,0,23,113.32L69,152.93l-14,59.25a14.4,14.4,0,0,0,5.59,15,14.1,14.1,0,0,0,15.91.6L128,196.12l51.58,31.71a14.1,14.1,0,0,0,15.91-.6,14.4,14.4,0,0,0,5.59-15l-14-59.25L233,113.32A14.43,14.43,0,0,0,237.28,97.87Zm-12.14,6.37-48.69,42a6,6,0,0,0-1.92,5.92l14.88,62.79a2.35,2.35,0,0,1-.95,2.57,2.24,2.24,0,0,1-2.6.1L131.14,184a6,6,0,0,0-6.28,0L70.14,217.61a2.24,2.24,0,0,1-2.6-.1,2.35,2.35,0,0,1-1-2.57l14.88-62.79a6,6,0,0,0-1.92-5.92l-48.69-42a2.37,2.37,0,0,1-.73-2.65,2.28,2.28,0,0,1,2.07-1.65l63.92-5.16a6,6,0,0,0,5.06-3.69l24.63-59.6a2.35,2.35,0,0,1,4.38,0l24.63,59.6a6,6,0,0,0,5.06,3.69l63.92,5.16a2.28,2.28,0,0,1,2.07,1.65A2.37,2.37,0,0,1,225.14,104.24Z" }))
843
+ /* @__PURE__ */ a20.createElement(a20.Fragment, null, /* @__PURE__ */ a20.createElement("path", { d: "M237.28,97.87A14.18,14.18,0,0,0,224.76,88l-60.25-4.87-23.22-56.2a14.37,14.37,0,0,0-26.58,0L91.49,83.11,31.24,88a14.18,14.18,0,0,0-12.52,9.89A14.43,14.43,0,0,0,23,113.32L69,152.93l-14,59.25a14.4,14.4,0,0,0,5.59,15,14.1,14.1,0,0,0,15.91.6L128,196.12l51.58,31.71a14.1,14.1,0,0,0,15.91-.6,14.4,14.4,0,0,0,5.59-15l-14-59.25L233,113.32A14.43,14.43,0,0,0,237.28,97.87Zm-12.14,6.37-48.69,42a6,6,0,0,0-1.92,5.92l14.88,62.79a2.35,2.35,0,0,1-.95,2.57,2.24,2.24,0,0,1-2.6.1L131.14,184a6,6,0,0,0-6.28,0L70.14,217.61a2.24,2.24,0,0,1-2.6-.1,2.35,2.35,0,0,1-1-2.57l14.88-62.79a6,6,0,0,0-1.92-5.92l-48.69-42a2.37,2.37,0,0,1-.73-2.65,2.28,2.28,0,0,1,2.07-1.65l63.92-5.16a6,6,0,0,0,5.06-3.69l24.63-59.6a2.35,2.35,0,0,1,4.38,0l24.63,59.6a6,6,0,0,0,5.06,3.69l63.92,5.16a2.28,2.28,0,0,1,2.07,1.65A2.37,2.37,0,0,1,225.14,104.24Z" }))
808
844
  ],
809
845
  [
810
846
  "regular",
811
- /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M239.18,97.26A16.38,16.38,0,0,0,224.92,86l-59-4.76L143.14,26.15a16.36,16.36,0,0,0-30.27,0L90.11,81.23,31.08,86a16.46,16.46,0,0,0-9.37,28.86l45,38.83L53,211.75a16.38,16.38,0,0,0,24.5,17.82L128,198.49l50.53,31.08A16.4,16.4,0,0,0,203,211.75l-13.76-58.07,45-38.83A16.43,16.43,0,0,0,239.18,97.26Zm-15.34,5.47-48.7,42a8,8,0,0,0-2.56,7.91l14.88,62.8a.37.37,0,0,1-.17.48c-.18.14-.23.11-.38,0l-54.72-33.65a8,8,0,0,0-8.38,0L69.09,215.94c-.15.09-.19.12-.38,0a.37.37,0,0,1-.17-.48l14.88-62.8a8,8,0,0,0-2.56-7.91l-48.7-42c-.12-.1-.23-.19-.13-.5s.18-.27.33-.29l63.92-5.16A8,8,0,0,0,103,91.86l24.62-59.61c.08-.17.11-.25.35-.25s.27.08.35.25L153,91.86a8,8,0,0,0,6.75,4.92l63.92,5.16c.15,0,.24,0,.33.29S224,102.63,223.84,102.73Z" }))
847
+ /* @__PURE__ */ a20.createElement(a20.Fragment, null, /* @__PURE__ */ a20.createElement("path", { d: "M239.18,97.26A16.38,16.38,0,0,0,224.92,86l-59-4.76L143.14,26.15a16.36,16.36,0,0,0-30.27,0L90.11,81.23,31.08,86a16.46,16.46,0,0,0-9.37,28.86l45,38.83L53,211.75a16.38,16.38,0,0,0,24.5,17.82L128,198.49l50.53,31.08A16.4,16.4,0,0,0,203,211.75l-13.76-58.07,45-38.83A16.43,16.43,0,0,0,239.18,97.26Zm-15.34,5.47-48.7,42a8,8,0,0,0-2.56,7.91l14.88,62.8a.37.37,0,0,1-.17.48c-.18.14-.23.11-.38,0l-54.72-33.65a8,8,0,0,0-8.38,0L69.09,215.94c-.15.09-.19.12-.38,0a.37.37,0,0,1-.17-.48l14.88-62.8a8,8,0,0,0-2.56-7.91l-48.7-42c-.12-.1-.23-.19-.13-.5s.18-.27.33-.29l63.92-5.16A8,8,0,0,0,103,91.86l24.62-59.61c.08-.17.11-.25.35-.25s.27.08.35.25L153,91.86a8,8,0,0,0,6.75,4.92l63.92,5.16c.15,0,.24,0,.33.29S224,102.63,223.84,102.73Z" }))
812
848
  ],
813
849
  [
814
850
  "thin",
815
- /* @__PURE__ */ a19.createElement(a19.Fragment, null, /* @__PURE__ */ a19.createElement("path", { d: "M235.36,98.49A12.21,12.21,0,0,0,224.59,90l-61.47-5L139.44,27.67a12.37,12.37,0,0,0-22.88,0L92.88,85,31.41,90a12.45,12.45,0,0,0-7.07,21.84l46.85,40.41L56.87,212.64a12.35,12.35,0,0,0,18.51,13.49L128,193.77l52.62,32.36a12.12,12.12,0,0,0,13.69-.51,12.28,12.28,0,0,0,4.82-13l-14.32-60.42,46.85-40.41A12.29,12.29,0,0,0,235.36,98.49Zm-8.93,7.26-48.68,42a4,4,0,0,0-1.28,3.95l14.87,62.79a4.37,4.37,0,0,1-1.72,4.65,4.24,4.24,0,0,1-4.81.18L130.1,185.67a4,4,0,0,0-4.2,0L71.19,219.32a4.24,4.24,0,0,1-4.81-.18,4.37,4.37,0,0,1-1.72-4.65L79.53,151.7a4,4,0,0,0-1.28-3.95l-48.68-42A4.37,4.37,0,0,1,28.25,101a4.31,4.31,0,0,1,3.81-3L96,92.79a4,4,0,0,0,3.38-2.46L124,30.73a4.35,4.35,0,0,1,8.08,0l24.62,59.6A4,4,0,0,0,160,92.79l63.9,5.15a4.31,4.31,0,0,1,3.81,3A4.37,4.37,0,0,1,226.43,105.75Z" }))
851
+ /* @__PURE__ */ a20.createElement(a20.Fragment, null, /* @__PURE__ */ a20.createElement("path", { d: "M235.36,98.49A12.21,12.21,0,0,0,224.59,90l-61.47-5L139.44,27.67a12.37,12.37,0,0,0-22.88,0L92.88,85,31.41,90a12.45,12.45,0,0,0-7.07,21.84l46.85,40.41L56.87,212.64a12.35,12.35,0,0,0,18.51,13.49L128,193.77l52.62,32.36a12.12,12.12,0,0,0,13.69-.51,12.28,12.28,0,0,0,4.82-13l-14.32-60.42,46.85-40.41A12.29,12.29,0,0,0,235.36,98.49Zm-8.93,7.26-48.68,42a4,4,0,0,0-1.28,3.95l14.87,62.79a4.37,4.37,0,0,1-1.72,4.65,4.24,4.24,0,0,1-4.81.18L130.1,185.67a4,4,0,0,0-4.2,0L71.19,219.32a4.24,4.24,0,0,1-4.81-.18,4.37,4.37,0,0,1-1.72-4.65L79.53,151.7a4,4,0,0,0-1.28-3.95l-48.68-42A4.37,4.37,0,0,1,28.25,101a4.31,4.31,0,0,1,3.81-3L96,92.79a4,4,0,0,0,3.38-2.46L124,30.73a4.35,4.35,0,0,1,8.08,0l24.62,59.6A4,4,0,0,0,160,92.79l63.9,5.15a4.31,4.31,0,0,1,3.81,3A4.37,4.37,0,0,1,226.43,105.75Z" }))
816
852
  ]
817
853
  ]);
818
854
 
819
855
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/Star.es.js
820
- var t5 = r7.forwardRef((o36, a26) => /* @__PURE__ */ r7.createElement(w, { ref: a26, ...o36, weights: l2 }));
856
+ var t5 = r8.forwardRef((o42, a28) => /* @__PURE__ */ r8.createElement(w, { ref: a28, ...o42, weights: l2 }));
821
857
  t5.displayName = "StarIcon";
822
858
 
823
859
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/UserCircle.es.js
824
- import * as e28 from "react";
860
+ import * as e29 from "react";
825
861
 
826
862
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/UserCircle.es.js
827
- import * as e27 from "react";
828
- var a20 = /* @__PURE__ */ new Map([
863
+ import * as e28 from "react";
864
+ var a21 = /* @__PURE__ */ new Map([
829
865
  [
830
866
  "bold",
831
- /* @__PURE__ */ e27.createElement(e27.Fragment, null, /* @__PURE__ */ e27.createElement("path", { d: "M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20ZM79.57,196.57a60,60,0,0,1,96.86,0,83.72,83.72,0,0,1-96.86,0ZM100,120a28,28,0,1,1,28,28A28,28,0,0,1,100,120ZM194,179.94a83.48,83.48,0,0,0-29-23.42,52,52,0,1,0-74,0,83.48,83.48,0,0,0-29,23.42,84,84,0,1,1,131.9,0Z" }))
867
+ /* @__PURE__ */ e28.createElement(e28.Fragment, null, /* @__PURE__ */ e28.createElement("path", { d: "M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20ZM79.57,196.57a60,60,0,0,1,96.86,0,83.72,83.72,0,0,1-96.86,0ZM100,120a28,28,0,1,1,28,28A28,28,0,0,1,100,120ZM194,179.94a83.48,83.48,0,0,0-29-23.42,52,52,0,1,0-74,0,83.48,83.48,0,0,0-29,23.42,84,84,0,1,1,131.9,0Z" }))
832
868
  ],
833
869
  [
834
870
  "duotone",
835
- /* @__PURE__ */ e27.createElement(e27.Fragment, null, /* @__PURE__ */ e27.createElement(
871
+ /* @__PURE__ */ e28.createElement(e28.Fragment, null, /* @__PURE__ */ e28.createElement(
836
872
  "path",
837
873
  {
838
874
  d: "M224,128a95.76,95.76,0,0,1-31.8,71.37A72,72,0,0,0,128,160a40,40,0,1,0-40-40,40,40,0,0,0,40,40,72,72,0,0,0-64.2,39.37h0A96,96,0,1,1,224,128Z",
839
875
  opacity: "0.2"
840
876
  }
841
- ), /* @__PURE__ */ e27.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120Zm97.76,66.41a79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75,88,88,0,1,1,131.52,0Z" }))
877
+ ), /* @__PURE__ */ e28.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120Zm97.76,66.41a79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75,88,88,0,1,1,131.52,0Z" }))
842
878
  ],
843
879
  [
844
880
  "fill",
845
- /* @__PURE__ */ e27.createElement(e27.Fragment, null, /* @__PURE__ */ e27.createElement("path", { d: "M172,120a44,44,0,1,1-44-44A44.05,44.05,0,0,1,172,120Zm60,8A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88.09,88.09,0,0,0-91.47-87.93C77.43,41.89,39.87,81.12,40,128.25a87.65,87.65,0,0,0,22.24,58.16A79.71,79.71,0,0,1,84,165.1a4,4,0,0,1,4.83.32,59.83,59.83,0,0,0,78.28,0,4,4,0,0,1,4.83-.32,79.71,79.71,0,0,1,21.79,21.31A87.62,87.62,0,0,0,216,128Z" }))
881
+ /* @__PURE__ */ e28.createElement(e28.Fragment, null, /* @__PURE__ */ e28.createElement("path", { d: "M172,120a44,44,0,1,1-44-44A44.05,44.05,0,0,1,172,120Zm60,8A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88.09,88.09,0,0,0-91.47-87.93C77.43,41.89,39.87,81.12,40,128.25a87.65,87.65,0,0,0,22.24,58.16A79.71,79.71,0,0,1,84,165.1a4,4,0,0,1,4.83.32,59.83,59.83,0,0,0,78.28,0,4,4,0,0,1,4.83-.32,79.71,79.71,0,0,1,21.79,21.31A87.62,87.62,0,0,0,216,128Z" }))
846
882
  ],
847
883
  [
848
884
  "light",
849
- /* @__PURE__ */ e27.createElement(e27.Fragment, null, /* @__PURE__ */ e27.createElement("path", { d: "M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26ZM71.44,198a66,66,0,0,1,113.12,0,89.8,89.8,0,0,1-113.12,0ZM94,120a34,34,0,1,1,34,34A34,34,0,0,1,94,120Zm99.51,69.64a77.53,77.53,0,0,0-40-31.38,46,46,0,1,0-51,0,77.53,77.53,0,0,0-40,31.38,90,90,0,1,1,131,0Z" }))
885
+ /* @__PURE__ */ e28.createElement(e28.Fragment, null, /* @__PURE__ */ e28.createElement("path", { d: "M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26ZM71.44,198a66,66,0,0,1,113.12,0,89.8,89.8,0,0,1-113.12,0ZM94,120a34,34,0,1,1,34,34A34,34,0,0,1,94,120Zm99.51,69.64a77.53,77.53,0,0,0-40-31.38,46,46,0,1,0-51,0,77.53,77.53,0,0,0-40,31.38,90,90,0,1,1,131,0Z" }))
850
886
  ],
851
887
  [
852
888
  "regular",
853
- /* @__PURE__ */ e27.createElement(e27.Fragment, null, /* @__PURE__ */ e27.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120Zm97.76,66.41a79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75,88,88,0,1,1,131.52,0Z" }))
889
+ /* @__PURE__ */ e28.createElement(e28.Fragment, null, /* @__PURE__ */ e28.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24ZM74.08,197.5a64,64,0,0,1,107.84,0,87.83,87.83,0,0,1-107.84,0ZM96,120a32,32,0,1,1,32,32A32,32,0,0,1,96,120Zm97.76,66.41a79.66,79.66,0,0,0-36.06-28.75,48,48,0,1,0-59.4,0,79.66,79.66,0,0,0-36.06,28.75,88,88,0,1,1,131.52,0Z" }))
854
890
  ],
855
891
  [
856
892
  "thin",
857
- /* @__PURE__ */ e27.createElement(e27.Fragment, null, /* @__PURE__ */ e27.createElement("path", { d: "M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28ZM68.87,198.42a68,68,0,0,1,118.26,0,91.8,91.8,0,0,1-118.26,0Zm124.3-5.55a75.61,75.61,0,0,0-44.51-34,44,44,0,1,0-41.32,0,75.61,75.61,0,0,0-44.51,34,92,92,0,1,1,130.34,0ZM128,156a36,36,0,1,1,36-36A36,36,0,0,1,128,156Z" }))
893
+ /* @__PURE__ */ e28.createElement(e28.Fragment, null, /* @__PURE__ */ e28.createElement("path", { d: "M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28ZM68.87,198.42a68,68,0,0,1,118.26,0,91.8,91.8,0,0,1-118.26,0Zm124.3-5.55a75.61,75.61,0,0,0-44.51-34,44,44,0,1,0-41.32,0,75.61,75.61,0,0,0-44.51,34,92,92,0,1,1,130.34,0ZM128,156a36,36,0,1,1,36-36A36,36,0,0,1,128,156Z" }))
858
894
  ]
859
895
  ]);
860
896
 
861
897
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/UserCircle.es.js
862
- var r8 = e28.forwardRef((o36, s4) => /* @__PURE__ */ e28.createElement(w, { ref: s4, ...o36, weights: a20 }));
863
- r8.displayName = "UserCircleIcon";
898
+ var r9 = e29.forwardRef((o42, s4) => /* @__PURE__ */ e29.createElement(w, { ref: s4, ...o42, weights: a21 }));
899
+ r9.displayName = "UserCircleIcon";
864
900
 
865
901
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/WarningCircle.es.js
866
- import * as r9 from "react";
902
+ import * as r10 from "react";
867
903
 
868
904
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/WarningCircle.es.js
869
- import * as e29 from "react";
870
- var a21 = /* @__PURE__ */ new Map([
905
+ import * as e30 from "react";
906
+ var a22 = /* @__PURE__ */ new Map([
871
907
  [
872
908
  "bold",
873
- /* @__PURE__ */ e29.createElement(e29.Fragment, null, /* @__PURE__ */ e29.createElement("path", { d: "M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm-12-80V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,172Z" }))
909
+ /* @__PURE__ */ e30.createElement(e30.Fragment, null, /* @__PURE__ */ e30.createElement("path", { d: "M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm-12-80V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,172Z" }))
874
910
  ],
875
911
  [
876
912
  "duotone",
877
- /* @__PURE__ */ e29.createElement(e29.Fragment, null, /* @__PURE__ */ e29.createElement("path", { d: "M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z", opacity: "0.2" }), /* @__PURE__ */ e29.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z" }))
913
+ /* @__PURE__ */ e30.createElement(e30.Fragment, null, /* @__PURE__ */ e30.createElement("path", { d: "M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z", opacity: "0.2" }), /* @__PURE__ */ e30.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z" }))
878
914
  ],
879
915
  [
880
916
  "fill",
881
- /* @__PURE__ */ e29.createElement(e29.Fragment, null, /* @__PURE__ */ e29.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm-8,56a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm8,104a12,12,0,1,1,12-12A12,12,0,0,1,128,184Z" }))
917
+ /* @__PURE__ */ e30.createElement(e30.Fragment, null, /* @__PURE__ */ e30.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm-8,56a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm8,104a12,12,0,1,1,12-12A12,12,0,0,1,128,184Z" }))
882
918
  ],
883
919
  [
884
920
  "light",
885
- /* @__PURE__ */ e29.createElement(e29.Fragment, null, /* @__PURE__ */ e29.createElement("path", { d: "M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Zm-6-82V80a6,6,0,0,1,12,0v56a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,172Z" }))
921
+ /* @__PURE__ */ e30.createElement(e30.Fragment, null, /* @__PURE__ */ e30.createElement("path", { d: "M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Zm-6-82V80a6,6,0,0,1,12,0v56a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,172Z" }))
886
922
  ],
887
923
  [
888
924
  "regular",
889
- /* @__PURE__ */ e29.createElement(e29.Fragment, null, /* @__PURE__ */ e29.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z" }))
925
+ /* @__PURE__ */ e30.createElement(e30.Fragment, null, /* @__PURE__ */ e30.createElement("path", { d: "M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z" }))
890
926
  ],
891
927
  [
892
928
  "thin",
893
- /* @__PURE__ */ e29.createElement(e29.Fragment, null, /* @__PURE__ */ e29.createElement("path", { d: "M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Zm-4-84V80a4,4,0,0,1,8,0v56a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,172Z" }))
929
+ /* @__PURE__ */ e30.createElement(e30.Fragment, null, /* @__PURE__ */ e30.createElement("path", { d: "M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Zm-4-84V80a4,4,0,0,1,8,0v56a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,172Z" }))
894
930
  ]
895
931
  ]);
896
932
 
897
933
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/WarningCircle.es.js
898
- var e30 = r9.forwardRef((o36, a26) => /* @__PURE__ */ r9.createElement(w, { ref: a26, ...o36, weights: a21 }));
899
- e30.displayName = "WarningCircleIcon";
934
+ var e31 = r10.forwardRef((o42, a28) => /* @__PURE__ */ r10.createElement(w, { ref: a28, ...o42, weights: a22 }));
935
+ e31.displayName = "WarningCircleIcon";
900
936
 
901
937
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/X.es.js
902
- import * as o15 from "react";
938
+ import * as o16 from "react";
903
939
 
904
940
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/defs/X.es.js
905
- import * as e31 from "react";
906
- var a22 = /* @__PURE__ */ new Map([
941
+ import * as e32 from "react";
942
+ var a23 = /* @__PURE__ */ new Map([
907
943
  [
908
944
  "bold",
909
- /* @__PURE__ */ e31.createElement(e31.Fragment, null, /* @__PURE__ */ e31.createElement("path", { d: "M208.49,191.51a12,12,0,0,1-17,17L128,145,64.49,208.49a12,12,0,0,1-17-17L111,128,47.51,64.49a12,12,0,0,1,17-17L128,111l63.51-63.52a12,12,0,0,1,17,17L145,128Z" }))
945
+ /* @__PURE__ */ e32.createElement(e32.Fragment, null, /* @__PURE__ */ e32.createElement("path", { d: "M208.49,191.51a12,12,0,0,1-17,17L128,145,64.49,208.49a12,12,0,0,1-17-17L111,128,47.51,64.49a12,12,0,0,1,17-17L128,111l63.51-63.52a12,12,0,0,1,17,17L145,128Z" }))
910
946
  ],
911
947
  [
912
948
  "duotone",
913
- /* @__PURE__ */ e31.createElement(e31.Fragment, null, /* @__PURE__ */ e31.createElement(
949
+ /* @__PURE__ */ e32.createElement(e32.Fragment, null, /* @__PURE__ */ e32.createElement(
914
950
  "path",
915
951
  {
916
952
  d: "M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z",
917
953
  opacity: "0.2"
918
954
  }
919
- ), /* @__PURE__ */ e31.createElement("path", { d: "M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z" }))
955
+ ), /* @__PURE__ */ e32.createElement("path", { d: "M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z" }))
920
956
  ],
921
957
  [
922
958
  "fill",
923
- /* @__PURE__ */ e31.createElement(e31.Fragment, null, /* @__PURE__ */ e31.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM181.66,170.34a8,8,0,0,1-11.32,11.32L128,139.31,85.66,181.66a8,8,0,0,1-11.32-11.32L116.69,128,74.34,85.66A8,8,0,0,1,85.66,74.34L128,116.69l42.34-42.35a8,8,0,0,1,11.32,11.32L139.31,128Z" }))
959
+ /* @__PURE__ */ e32.createElement(e32.Fragment, null, /* @__PURE__ */ e32.createElement("path", { d: "M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM181.66,170.34a8,8,0,0,1-11.32,11.32L128,139.31,85.66,181.66a8,8,0,0,1-11.32-11.32L116.69,128,74.34,85.66A8,8,0,0,1,85.66,74.34L128,116.69l42.34-42.35a8,8,0,0,1,11.32,11.32L139.31,128Z" }))
924
960
  ],
925
961
  [
926
962
  "light",
927
- /* @__PURE__ */ e31.createElement(e31.Fragment, null, /* @__PURE__ */ e31.createElement("path", { d: "M204.24,195.76a6,6,0,1,1-8.48,8.48L128,136.49,60.24,204.24a6,6,0,0,1-8.48-8.48L119.51,128,51.76,60.24a6,6,0,0,1,8.48-8.48L128,119.51l67.76-67.75a6,6,0,0,1,8.48,8.48L136.49,128Z" }))
963
+ /* @__PURE__ */ e32.createElement(e32.Fragment, null, /* @__PURE__ */ e32.createElement("path", { d: "M204.24,195.76a6,6,0,1,1-8.48,8.48L128,136.49,60.24,204.24a6,6,0,0,1-8.48-8.48L119.51,128,51.76,60.24a6,6,0,0,1,8.48-8.48L128,119.51l67.76-67.75a6,6,0,0,1,8.48,8.48L136.49,128Z" }))
928
964
  ],
929
965
  [
930
966
  "regular",
931
- /* @__PURE__ */ e31.createElement(e31.Fragment, null, /* @__PURE__ */ e31.createElement("path", { d: "M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z" }))
967
+ /* @__PURE__ */ e32.createElement(e32.Fragment, null, /* @__PURE__ */ e32.createElement("path", { d: "M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z" }))
932
968
  ],
933
969
  [
934
970
  "thin",
935
- /* @__PURE__ */ e31.createElement(e31.Fragment, null, /* @__PURE__ */ e31.createElement("path", { d: "M202.83,197.17a4,4,0,0,1-5.66,5.66L128,133.66,58.83,202.83a4,4,0,0,1-5.66-5.66L122.34,128,53.17,58.83a4,4,0,0,1,5.66-5.66L128,122.34l69.17-69.17a4,4,0,1,1,5.66,5.66L133.66,128Z" }))
971
+ /* @__PURE__ */ e32.createElement(e32.Fragment, null, /* @__PURE__ */ e32.createElement("path", { d: "M202.83,197.17a4,4,0,0,1-5.66,5.66L128,133.66,58.83,202.83a4,4,0,0,1-5.66-5.66L122.34,128,53.17,58.83a4,4,0,0,1,5.66-5.66L128,122.34l69.17-69.17a4,4,0,1,1,5.66,5.66L133.66,128Z" }))
936
972
  ]
937
973
  ]);
938
974
 
939
975
  // ../../node_modules/.bun/@phosphor-icons+react@2.1.10+005eabf3d8b6ef06/node_modules/@phosphor-icons/react/dist/ssr/X.es.js
940
- var e32 = o15.forwardRef((r28, t8) => /* @__PURE__ */ o15.createElement(w, { ref: t8, ...r28, weights: a22 }));
941
- e32.displayName = "XIcon";
976
+ var e33 = o16.forwardRef((r32, t9) => /* @__PURE__ */ o16.createElement(w, { ref: t9, ...r32, weights: a23 }));
977
+ e33.displayName = "XIcon";
942
978
 
943
979
  // ../../apps/web/src/components/icons.tsx
944
980
  import { jsx } from "react/jsx-runtime";
@@ -949,31 +985,32 @@ function icon(Base, name, weight = "fill") {
949
985
  Wrapped.displayName = `${name}Icon`;
950
986
  return Wrapped;
951
987
  }
952
- var Bug = /* @__PURE__ */ icon(e8, "Bug");
953
- var ChatCircleDots = /* @__PURE__ */ icon(o7, "ChatCircleDots");
954
- var EnvelopeSimple = /* @__PURE__ */ icon(o9, "EnvelopeSimple");
955
- var File = /* @__PURE__ */ icon(o10, "File");
956
- var ImageSquare = /* @__PURE__ */ icon(a12, "ImageSquare");
957
- var Lightbulb = /* @__PURE__ */ icon(o11, "Lightbulb");
958
- var LockSimple = /* @__PURE__ */ icon(e22, "LockSimple");
959
- var Play = /* @__PURE__ */ icon(a16, "Play");
960
- var Sparkle = /* @__PURE__ */ icon(r6, "Sparkle");
988
+ var Bug = /* @__PURE__ */ icon(e9, "Bug");
989
+ var ChatCircleDots = /* @__PURE__ */ icon(o8, "ChatCircleDots");
990
+ var EnvelopeSimple = /* @__PURE__ */ icon(o10, "EnvelopeSimple");
991
+ var File = /* @__PURE__ */ icon(o11, "File");
992
+ var ImageSquare = /* @__PURE__ */ icon(a13, "ImageSquare");
993
+ var Lightbulb = /* @__PURE__ */ icon(o12, "Lightbulb");
994
+ var LockSimple = /* @__PURE__ */ icon(e23, "LockSimple");
995
+ var Play = /* @__PURE__ */ icon(a17, "Play");
996
+ var Sparkle = /* @__PURE__ */ icon(r7, "Sparkle");
961
997
  var Star = /* @__PURE__ */ icon(t5, "Star");
962
- var UserCircle = /* @__PURE__ */ icon(r8, "UserCircle");
963
- var WarningCircle = /* @__PURE__ */ icon(e30, "WarningCircle");
998
+ var UserCircle = /* @__PURE__ */ icon(r9, "UserCircle");
999
+ var WarningCircle = /* @__PURE__ */ icon(e31, "WarningCircle");
964
1000
  var ArrowDown = /* @__PURE__ */ icon(r, "ArrowDown", "bold");
965
- var ArrowUp = /* @__PURE__ */ icon(o2, "ArrowUp", "bold");
1001
+ var ArrowRight = /* @__PURE__ */ icon(o2, "ArrowRight", "bold");
1002
+ var ArrowUp = /* @__PURE__ */ icon(o3, "ArrowUp", "bold");
966
1003
  var ArrowsClockwise = /* @__PURE__ */ icon(
967
- r3,
1004
+ r4,
968
1005
  "ArrowsClockwise",
969
1006
  "bold"
970
1007
  );
971
- var ArrowsIn = /* @__PURE__ */ icon(o4, "ArrowsIn", "bold");
972
- var ArrowsOut = /* @__PURE__ */ icon(o5, "ArrowsOut", "bold");
973
- var CaretRight = /* @__PURE__ */ icon(e10, "CaretRight", "bold");
974
- var Check = /* @__PURE__ */ icon(o8, "Check", "bold");
975
- var X = /* @__PURE__ */ icon(e32, "X", "bold");
976
- var Plus = /* @__PURE__ */ icon(e25, "Plus", "bold");
1008
+ var ArrowsIn = /* @__PURE__ */ icon(o5, "ArrowsIn", "bold");
1009
+ var ArrowsOut = /* @__PURE__ */ icon(o6, "ArrowsOut", "bold");
1010
+ var CaretRight = /* @__PURE__ */ icon(e11, "CaretRight", "bold");
1011
+ var Check = /* @__PURE__ */ icon(o9, "Check", "bold");
1012
+ var X = /* @__PURE__ */ icon(e33, "X", "bold");
1013
+ var Plus = /* @__PURE__ */ icon(e26, "Plus", "bold");
977
1014
 
978
1015
  // ../../apps/web/src/components/support-widget/launcher-position.ts
979
1016
  var DEFAULT_SPOT = { side: "right", y: 1 };
@@ -1060,57 +1097,57 @@ import * as React3 from "react";
1060
1097
 
1061
1098
  // ../../node_modules/.bun/@shadcn+react@0.3.0+03aa47d54245a271/node_modules/@shadcn/react/dist/chunk-HBS6WEDP.js
1062
1099
  import * as i2 from "react";
1063
- function S({ defaultTagName: a26, props: r28, render: t8, state: n = {}, stateAttributesMapping: e53 }) {
1064
- let o36 = d(R(n, e53), r28);
1065
- if (!t8) return i2.createElement(a26, o36);
1066
- if (typeof t8 == "function") return t8(o36, n);
1067
- if (!i2.isValidElement(t8)) return null;
1068
- let s4 = t8.props, u = { ...d(o36, s4), ref: f8(o36.ref, s4.ref) };
1069
- return i2.cloneElement(t8, u);
1070
- }
1071
- function d(...a26) {
1072
- let r28 = {};
1073
- for (let t8 of a26) {
1074
- if (!t8) continue;
1075
- let n = t8;
1076
- for (let e53 of Object.keys(n)) {
1077
- let o36 = n[e53];
1078
- if (o36 === void 0) continue;
1079
- let s4 = r28[e53];
1080
- e53 === "className" ? r28[e53] = [s4, o36].filter(Boolean).join(" ") : e53 === "style" ? r28[e53] = { ...s4, ...o36 } : e53 === "ref" ? r28[e53] = f8(s4, o36) : l4(e53) && typeof s4 == "function" && typeof o36 == "function" ? r28[e53] = p2(o36, s4) : r28[e53] = o36;
1100
+ function S({ defaultTagName: a28, props: r32, render: t9, state: n = {}, stateAttributesMapping: e54 }) {
1101
+ let o42 = d(R(n, e54), r32);
1102
+ if (!t9) return i2.createElement(a28, o42);
1103
+ if (typeof t9 == "function") return t9(o42, n);
1104
+ if (!i2.isValidElement(t9)) return null;
1105
+ let s4 = t9.props, u = { ...d(o42, s4), ref: f8(o42.ref, s4.ref) };
1106
+ return i2.cloneElement(t9, u);
1107
+ }
1108
+ function d(...a28) {
1109
+ let r32 = {};
1110
+ for (let t9 of a28) {
1111
+ if (!t9) continue;
1112
+ let n = t9;
1113
+ for (let e54 of Object.keys(n)) {
1114
+ let o42 = n[e54];
1115
+ if (o42 === void 0) continue;
1116
+ let s4 = r32[e54];
1117
+ e54 === "className" ? r32[e54] = [s4, o42].filter(Boolean).join(" ") : e54 === "style" ? r32[e54] = { ...s4, ...o42 } : e54 === "ref" ? r32[e54] = f8(s4, o42) : l4(e54) && typeof s4 == "function" && typeof o42 == "function" ? r32[e54] = p2(o42, s4) : r32[e54] = o42;
1081
1118
  }
1082
1119
  }
1083
- return r28;
1084
- }
1085
- function R(a26, r28) {
1086
- let t8 = {};
1087
- for (let n of Object.keys(a26)) {
1088
- let e53 = a26[n], o36 = r28?.[n]?.(e53);
1089
- if (o36) {
1090
- Object.assign(t8, o36);
1120
+ return r32;
1121
+ }
1122
+ function R(a28, r32) {
1123
+ let t9 = {};
1124
+ for (let n of Object.keys(a28)) {
1125
+ let e54 = a28[n], o42 = r32?.[n]?.(e54);
1126
+ if (o42) {
1127
+ Object.assign(t9, o42);
1091
1128
  continue;
1092
1129
  }
1093
1130
  if (n === "slot") {
1094
- t8["data-slot"] = e53;
1131
+ t9["data-slot"] = e54;
1095
1132
  continue;
1096
1133
  }
1097
- let s4 = `data-${String(n).replace(/[A-Z]/g, (c6) => `-${c6.toLowerCase()}`)}`;
1098
- typeof e53 == "boolean" ? t8[s4] = e53 ? "" : void 0 : e53 != null && (t8[s4] = String(e53));
1134
+ let s4 = `data-${String(n).replace(/[A-Z]/g, (c7) => `-${c7.toLowerCase()}`)}`;
1135
+ typeof e54 == "boolean" ? t9[s4] = e54 ? "" : void 0 : e54 != null && (t9[s4] = String(e54));
1099
1136
  }
1100
- return t8;
1137
+ return t9;
1101
1138
  }
1102
- function p2(a26, r28) {
1139
+ function p2(a28, r32) {
1103
1140
  return function(n) {
1104
- a26(n), n.defaultPrevented || r28(n);
1141
+ a28(n), n.defaultPrevented || r32(n);
1105
1142
  };
1106
1143
  }
1107
- function l4(a26) {
1108
- return /^on[A-Z]/.test(a26);
1144
+ function l4(a28) {
1145
+ return /^on[A-Z]/.test(a28);
1109
1146
  }
1110
- function f8(...a26) {
1111
- let r28 = a26.filter(Boolean);
1112
- if (r28.length !== 0) return (t8) => {
1113
- for (let n of r28) typeof n == "function" ? n(t8) : n && (n.current = t8);
1147
+ function f8(...a28) {
1148
+ let r32 = a28.filter(Boolean);
1149
+ if (r32.length !== 0) return (t9) => {
1150
+ for (let n of r32) typeof n == "function" ? n(t9) : n && (n.current = t9);
1114
1151
  };
1115
1152
  }
1116
1153
 
@@ -1126,15 +1163,15 @@ var Be = /* @__PURE__ */ new Set(["ArrowDown", "ArrowUp", "End", "Home", "PageDo
1126
1163
  var ge = { start: false, end: false };
1127
1164
  var dt = [];
1128
1165
  var Q = { currentAnchorId: null, visibleMessageIds: dt };
1129
- function De({ content: e53, scrollEdgeThreshold: t8, spacer: r28, viewport: n }) {
1130
- if (!n || !e53) return ge;
1131
- let o36 = Se({ content: e53, spacer: r28, viewport: n });
1132
- return { start: n.scrollTop > t8, end: o36 - n.scrollTop - n.clientHeight > t8 };
1133
- }
1134
- function Fe({ content: e53, scrollMargin: t8, scrollPreviousItemPeek: r28, spacer: n, viewport: o36, visibleMessageIds: i3 }) {
1135
- if (!e53 || !o36) return Q;
1136
- let S2 = o36.getBoundingClientRect(), l5 = S2.top + t8 + r28, d2 = typeof IntersectionObserver > "u", E = [], b2 = null;
1137
- for (let C of ee(e53, n)) {
1166
+ function De({ content: e54, scrollEdgeThreshold: t9, spacer: r32, viewport: n }) {
1167
+ if (!n || !e54) return ge;
1168
+ let o42 = Se({ content: e54, spacer: r32, viewport: n });
1169
+ return { start: n.scrollTop > t9, end: o42 - n.scrollTop - n.clientHeight > t9 };
1170
+ }
1171
+ function Fe({ content: e54, scrollMargin: t9, scrollPreviousItemPeek: r32, spacer: n, viewport: o42, visibleMessageIds: i3 }) {
1172
+ if (!e54 || !o42) return Q;
1173
+ let S2 = o42.getBoundingClientRect(), l5 = S2.top + t9 + r32, d2 = typeof IntersectionObserver > "u", E = [], b2 = null;
1174
+ for (let C of ee(e54, n)) {
1138
1175
  let p3 = C.dataset.messageId;
1139
1176
  if (!p3) continue;
1140
1177
  let m5 = C.dataset.scrollAnchor === "true", L = m5 || d2 ? C.getBoundingClientRect() : null;
@@ -1142,238 +1179,238 @@ function Fe({ content: e53, scrollMargin: t8, scrollPreviousItemPeek: r28, space
1142
1179
  }
1143
1180
  return E.length === 0 && b2 === null ? Q : { currentAnchorId: b2, visibleMessageIds: E };
1144
1181
  }
1145
- function ee(e53, t8) {
1146
- return Array.from(e53.children).filter((r28) => r28 instanceof HTMLElement && r28 !== t8);
1182
+ function ee(e54, t9) {
1183
+ return Array.from(e54.children).filter((r32) => r32 instanceof HTMLElement && r32 !== t9);
1147
1184
  }
1148
- function je(e53, t8) {
1149
- for (let r28 = t8; r28 < e53.length; r28++) {
1150
- let n = e53[r28];
1185
+ function je(e54, t9) {
1186
+ for (let r32 = t9; r32 < e54.length; r32++) {
1187
+ let n = e54[r32];
1151
1188
  if (n?.dataset.scrollAnchor === "true") return n;
1152
1189
  }
1153
1190
  return null;
1154
1191
  }
1155
- function Ge(e53, t8) {
1156
- for (let r28 of e53) if (r28.dataset.scrollAnchor === "true" && !t8.has(r28)) return r28;
1192
+ function Ge(e54, t9) {
1193
+ for (let r32 of e54) if (r32.dataset.scrollAnchor === "true" && !t9.has(r32)) return r32;
1157
1194
  return null;
1158
1195
  }
1159
- function Ne(e53, t8) {
1160
- let r28 = 0;
1161
- for (let n = t8; n < e53.length; n++) if (e53[n]?.dataset.scrollAnchor === "true" && (r28 += 1, r28 > 1)) return true;
1196
+ function Ne(e54, t9) {
1197
+ let r32 = 0;
1198
+ for (let n = t9; n < e54.length; n++) if (e54[n]?.dataset.scrollAnchor === "true" && (r32 += 1, r32 > 1)) return true;
1162
1199
  return false;
1163
1200
  }
1164
- function Ue(e53) {
1165
- for (let t8 = e53.length - 1; t8 >= 0; t8--) {
1166
- let r28 = e53[t8];
1167
- if (r28?.dataset.scrollAnchor === "true") return r28;
1201
+ function Ue(e54) {
1202
+ for (let t9 = e54.length - 1; t9 >= 0; t9--) {
1203
+ let r32 = e54[t9];
1204
+ if (r32?.dataset.scrollAnchor === "true") return r32;
1168
1205
  }
1169
1206
  return null;
1170
1207
  }
1171
- function Ye({ content: e53, spacer: t8, viewport: r28 }) {
1172
- let n = r28.getBoundingClientRect();
1173
- for (let o36 of ee(e53, t8)) {
1174
- if (!o36.dataset.messageId) continue;
1175
- let i3 = o36.getBoundingClientRect();
1176
- if (i3.bottom > n.top && i3.top < n.bottom) return o36;
1208
+ function Ye({ content: e54, spacer: t9, viewport: r32 }) {
1209
+ let n = r32.getBoundingClientRect();
1210
+ for (let o42 of ee(e54, t9)) {
1211
+ if (!o42.dataset.messageId) continue;
1212
+ let i3 = o42.getBoundingClientRect();
1213
+ if (i3.bottom > n.top && i3.top < n.bottom) return o42;
1177
1214
  }
1178
1215
  return null;
1179
1216
  }
1180
- function ze({ align: e53, element: t8, scrollMargin: r28, spacer: n, viewport: o36 }) {
1181
- let i3 = pe(t8, o36), S2 = t8.getBoundingClientRect().height, l5 = bt(n);
1182
- if (e53 === "center") {
1183
- let d2 = Math.max(0, o36.clientHeight - l5.start - l5.end);
1184
- return i3 - l5.start - (d2 - S2) / 2 - r28;
1217
+ function ze({ align: e54, element: t9, scrollMargin: r32, spacer: n, viewport: o42 }) {
1218
+ let i3 = pe(t9, o42), S2 = t9.getBoundingClientRect().height, l5 = bt(n);
1219
+ if (e54 === "center") {
1220
+ let d2 = Math.max(0, o42.clientHeight - l5.start - l5.end);
1221
+ return i3 - l5.start - (d2 - S2) / 2 - r32;
1185
1222
  }
1186
- if (e53 === "end") return i3 - o36.clientHeight + S2 + l5.end + r28;
1187
- if (e53 === "nearest") {
1188
- let d2 = i3 + S2, E = o36.scrollTop + l5.start, b2 = o36.scrollTop + o36.clientHeight - l5.end;
1189
- return i3 >= E && d2 <= b2 ? o36.scrollTop : i3 < E ? i3 - l5.start - r28 : d2 - o36.clientHeight + l5.end + r28;
1223
+ if (e54 === "end") return i3 - o42.clientHeight + S2 + l5.end + r32;
1224
+ if (e54 === "nearest") {
1225
+ let d2 = i3 + S2, E = o42.scrollTop + l5.start, b2 = o42.scrollTop + o42.clientHeight - l5.end;
1226
+ return i3 >= E && d2 <= b2 ? o42.scrollTop : i3 < E ? i3 - l5.start - r32 : d2 - o42.clientHeight + l5.end + r32;
1190
1227
  }
1191
- return i3 - l5.start - r28;
1228
+ return i3 - l5.start - r32;
1192
1229
  }
1193
- function pe(e53, t8) {
1194
- let r28 = e53.getBoundingClientRect(), n = t8.getBoundingClientRect();
1195
- return r28.top - n.top + t8.scrollTop;
1230
+ function pe(e54, t9) {
1231
+ let r32 = e54.getBoundingClientRect(), n = t9.getBoundingClientRect();
1232
+ return r32.top - n.top + t9.scrollTop;
1196
1233
  }
1197
- function te(e53, t8) {
1198
- return e53.getBoundingClientRect().top - t8.getBoundingClientRect().top;
1234
+ function te(e54, t9) {
1235
+ return e54.getBoundingClientRect().top - t9.getBoundingClientRect().top;
1199
1236
  }
1200
- function qe({ content: e53, scrollTop: t8, spacer: r28, viewport: n }) {
1201
- let o36 = Se({ content: e53, spacer: r28, viewport: n });
1202
- return t8 + n.clientHeight - o36;
1237
+ function qe({ content: e54, scrollTop: t9, spacer: r32, viewport: n }) {
1238
+ let o42 = Se({ content: e54, spacer: r32, viewport: n });
1239
+ return t9 + n.clientHeight - o42;
1203
1240
  }
1204
- function Se({ content: e53, spacer: t8, viewport: r28 }) {
1205
- let n = ee(e53, t8), o36 = We(e53), i3 = r28.getBoundingClientRect(), S2 = r28.scrollTop, l5 = o36.start + o36.end;
1241
+ function Se({ content: e54, spacer: t9, viewport: r32 }) {
1242
+ let n = ee(e54, t9), o42 = We(e54), i3 = r32.getBoundingClientRect(), S2 = r32.scrollTop, l5 = o42.start + o42.end;
1206
1243
  for (let d2 of n) {
1207
1244
  let E = d2.getBoundingClientRect();
1208
- l5 = Math.max(l5, E.bottom - i3.top + S2 + o36.end);
1245
+ l5 = Math.max(l5, E.bottom - i3.top + S2 + o42.end);
1209
1246
  }
1210
1247
  return l5;
1211
1248
  }
1212
- function Ke(e53) {
1213
- return Math.max(0, e53.scrollHeight - e53.clientHeight);
1249
+ function Ke(e54) {
1250
+ return Math.max(0, e54.scrollHeight - e54.clientHeight);
1214
1251
  }
1215
- function We(e53) {
1216
- let t8 = window.getComputedStyle(e53);
1217
- return { end: Re(t8.paddingBlockEnd || t8.paddingBottom), start: Re(t8.paddingBlockStart || t8.paddingTop) };
1252
+ function We(e54) {
1253
+ let t9 = window.getComputedStyle(e54);
1254
+ return { end: Re(t9.paddingBlockEnd || t9.paddingBottom), start: Re(t9.paddingBlockStart || t9.paddingTop) };
1218
1255
  }
1219
- function bt(e53) {
1220
- let t8 = e53?.parentElement;
1221
- return t8 ? We(t8) : { end: 0, start: 0 };
1256
+ function bt(e54) {
1257
+ let t9 = e54?.parentElement;
1258
+ return t9 ? We(t9) : { end: 0, start: 0 };
1222
1259
  }
1223
- function $e(e53) {
1224
- if (!e53) return 0;
1225
- let t8 = window.getComputedStyle(e53), r28 = t8.rowGap === "normal" ? t8.gap : t8.rowGap;
1226
- return Re(r28);
1260
+ function $e(e54) {
1261
+ if (!e54) return 0;
1262
+ let t9 = window.getComputedStyle(e54), r32 = t9.rowGap === "normal" ? t9.gap : t9.rowGap;
1263
+ return Re(r32);
1227
1264
  }
1228
- function Re(e53) {
1229
- if (!e53) return 0;
1230
- let t8 = Number.parseFloat(e53);
1231
- return Number.isFinite(t8) ? t8 : 0;
1265
+ function Re(e54) {
1266
+ if (!e54) return 0;
1267
+ let t9 = Number.parseFloat(e54);
1268
+ return Number.isFinite(t9) ? t9 : 0;
1232
1269
  }
1233
- function Je({ refs: e53, commitScrollState: t8, scheduleStateCommit: r28, scheduleVisibilitySync: n }) {
1234
- let { streamingTurnRef: o36, autoScrollRef: i3, autoscrollingRef: S2, autoscrollingTimeoutRef: l5, contentRef: d2, defaultScrollPositionAppliedRef: E, itemCountRef: b2, messageElementsRef: C, modeRef: p3, pendingScrollToMessageRef: m5, prependRestoreRef: L, scrollMarginRef: y, scrollPreviousItemPeekRef: u, spacerGapRef: x, spacerHeightRef: Y, spacerRef: k, viewportRef: _ } = e53, G = g.useCallback((c6) => {
1235
- l5.current !== null && (window.clearTimeout(l5.current), l5.current = null), S2.current !== c6 && (S2.current = c6, t8()), c6 && (l5.current = window.setTimeout(() => {
1236
- l5.current = null, S2.current = false, t8();
1270
+ function Je({ refs: e54, commitScrollState: t9, scheduleStateCommit: r32, scheduleVisibilitySync: n }) {
1271
+ let { streamingTurnRef: o42, autoScrollRef: i3, autoscrollingRef: S2, autoscrollingTimeoutRef: l5, contentRef: d2, defaultScrollPositionAppliedRef: E, itemCountRef: b2, messageElementsRef: C, modeRef: p3, pendingScrollToMessageRef: m5, prependRestoreRef: L, scrollMarginRef: y, scrollPreviousItemPeekRef: u, spacerGapRef: x, spacerHeightRef: Y, spacerRef: k, viewportRef: _ } = e54, G = g.useCallback((c7) => {
1272
+ l5.current !== null && (window.clearTimeout(l5.current), l5.current = null), S2.current !== c7 && (S2.current = c7, t9()), c7 && (l5.current = window.setTimeout(() => {
1273
+ l5.current = null, S2.current = false, t9();
1237
1274
  }, ke));
1238
- }, [t8]), v = g.useCallback((c6) => {
1275
+ }, [t9]), v = g.useCallback((c7) => {
1239
1276
  let f9 = k.current;
1240
1277
  if (!f9) return;
1241
- let h = Math.max(0, Math.ceil(c6));
1278
+ let h = Math.max(0, Math.ceil(c7));
1242
1279
  Y.current !== h && (Y.current = h, f9.hidden = h === 0, f9.style.height = `${h}px`, f9.style.marginTop = h > 0 ? `${-x.current}px` : "");
1243
- }, []), H = g.useCallback((c6, { behavior: f9 = "auto", autoscrolling: h = false } = {}) => {
1280
+ }, []), H = g.useCallback((c7, { behavior: f9 = "auto", autoscrolling: h = false } = {}) => {
1244
1281
  let P = _.current;
1245
1282
  if (!P) return;
1246
- let V = Math.max(0, c6);
1283
+ let V = Math.max(0, c7);
1247
1284
  if (Math.abs(P.scrollTop - V) <= J) {
1248
- P.scrollTop = V, t8();
1285
+ P.scrollTop = V, t9();
1249
1286
  return;
1250
1287
  }
1251
- h && G(true), P.scrollTo({ top: V, behavior: f9 }), r28();
1252
- }, [t8, r28, G]), N = g.useCallback(({ behavior: c6 = "auto" } = {}) => _.current ? (v(0), o36.current = null, p3.current = "free-scrolling", H(0, { behavior: c6 }), n(), true) : false, [n, H, v]), ne = g.useCallback(({ behavior: c6 = "auto" } = {}) => {
1288
+ h && G(true), P.scrollTo({ top: V, behavior: f9 }), r32();
1289
+ }, [t9, r32, G]), N = g.useCallback(({ behavior: c7 = "auto" } = {}) => _.current ? (v(0), o42.current = null, p3.current = "free-scrolling", H(0, { behavior: c7 }), n(), true) : false, [n, H, v]), ne = g.useCallback(({ behavior: c7 = "auto" } = {}) => {
1253
1290
  let f9 = _.current;
1254
- return f9 ? (v(0), o36.current = null, p3.current = i3.current ? "following-bottom" : "free-scrolling", H(Ke(f9), { autoscrolling: true, behavior: c6 }), n(), true) : false;
1255
- }, [n, H, v]), A = g.useCallback((c6, { align: f9 = "start", behavior: h = "auto", scrollMargin: P = y.current } = {}, { keepPreviousPeek: V = false } = {}) => {
1291
+ return f9 ? (v(0), o42.current = null, p3.current = i3.current ? "following-bottom" : "free-scrolling", H(Ke(f9), { autoscrolling: true, behavior: c7 }), n(), true) : false;
1292
+ }, [n, H, v]), A = g.useCallback((c7, { align: f9 = "start", behavior: h = "auto", scrollMargin: P = y.current } = {}, { keepPreviousPeek: V = false } = {}) => {
1256
1293
  let z = d2.current, q = _.current;
1257
- if (!z || !q || !z.contains(c6)) return false;
1258
- let K = ze({ align: f9, element: c6, scrollMargin: V ? P + u.current : P, spacer: k.current, viewport: q }), se = qe({ content: z, scrollTop: K, spacer: k.current, viewport: q });
1259
- return v(se), L.current = { element: c6, viewportTop: te(c6, q) }, p3.current = V ? "anchored-to-message" : "settling-jump", o36.current = V ? c6 : null, H(K, { behavior: h }), n(), true;
1294
+ if (!z || !q || !z.contains(c7)) return false;
1295
+ let K = ze({ align: f9, element: c7, scrollMargin: V ? P + u.current : P, spacer: k.current, viewport: q }), se = qe({ content: z, scrollTop: K, spacer: k.current, viewport: q });
1296
+ return v(se), L.current = { element: c7, viewportTop: te(c7, q) }, p3.current = V ? "anchored-to-message" : "settling-jump", o42.current = V ? c7 : null, H(K, { behavior: h }), n(), true;
1260
1297
  }, [n, H, v]), B = g.useCallback(() => {
1261
- let c6 = o36.current;
1262
- return !c6 || !c6.isConnected || p3.current !== "anchored-to-message" ? false : A(c6, { align: "start" }, { keepPreviousPeek: true });
1263
- }, [A]), D = g.useCallback((c6, f9) => {
1264
- let h = C.current.get(c6);
1265
- return h ? (E.current = true, A(h, f9) ? (m5.current = null, true) : (m5.current = { messageId: c6, options: f9 }, true)) : b2.current === 0 ? (m5.current = { messageId: c6, options: f9 }, E.current = true, true) : false;
1298
+ let c7 = o42.current;
1299
+ return !c7 || !c7.isConnected || p3.current !== "anchored-to-message" ? false : A(c7, { align: "start" }, { keepPreviousPeek: true });
1300
+ }, [A]), D = g.useCallback((c7, f9) => {
1301
+ let h = C.current.get(c7);
1302
+ return h ? (E.current = true, A(h, f9) ? (m5.current = null, true) : (m5.current = { messageId: c7, options: f9 }, true)) : b2.current === 0 ? (m5.current = { messageId: c7, options: f9 }, E.current = true, true) : false;
1266
1303
  }, [A]);
1267
1304
  return { flushPendingScrollToMessage: g.useCallback(() => {
1268
- let c6 = m5.current;
1269
- if (!c6) return false;
1270
- let f9 = C.current.get(c6.messageId);
1271
- return !f9 || !A(f9, c6.options) ? false : (m5.current = null, E.current = true, true);
1305
+ let c7 = m5.current;
1306
+ if (!c7) return false;
1307
+ let f9 = C.current.get(c7.messageId);
1308
+ return !f9 || !A(f9, c7.options) ? false : (m5.current = null, E.current = true, true);
1272
1309
  }, [A]), reanchorToAnchoredMessage: B, scrollToElement: A, scrollToEnd: ne, scrollToMessage: D, scrollToStart: N };
1273
1310
  }
1274
- function Qe(e53, t8) {
1275
- let r28 = e53, n = /* @__PURE__ */ new Set();
1276
- return { getSnapshot: () => r28, hasListeners: () => n.size > 0, setSnapshot: (o36) => {
1277
- t8(r28, o36) || (r28 = o36, n.forEach((i3) => i3()));
1278
- }, subscribe: (o36, i3, S2) => {
1311
+ function Qe(e54, t9) {
1312
+ let r32 = e54, n = /* @__PURE__ */ new Set();
1313
+ return { getSnapshot: () => r32, hasListeners: () => n.size > 0, setSnapshot: (o42) => {
1314
+ t9(r32, o42) || (r32 = o42, n.forEach((i3) => i3()));
1315
+ }, subscribe: (o42, i3, S2) => {
1279
1316
  let l5 = n.size === 0;
1280
- return n.add(o36), l5 && i3?.(), () => {
1281
- n.delete(o36), n.size === 0 && S2?.();
1317
+ return n.add(o42), l5 && i3?.(), () => {
1318
+ n.delete(o42), n.size === 0 && S2?.();
1282
1319
  };
1283
1320
  } };
1284
1321
  }
1285
- function Xe(e53, t8) {
1286
- return Qe(e53, t8);
1322
+ function Xe(e54, t9) {
1323
+ return Qe(e54, t9);
1287
1324
  }
1288
1325
  function Ze() {
1289
1326
  return Qe(Q, Tt);
1290
1327
  }
1291
- function et(e53, t8) {
1292
- return e53.start === t8.start && e53.end === t8.end;
1328
+ function et(e54, t9) {
1329
+ return e54.start === t9.start && e54.end === t9.end;
1293
1330
  }
1294
- function Tt(e53, t8) {
1295
- return e53.currentAnchorId !== t8.currentAnchorId || e53.visibleMessageIds.length !== t8.visibleMessageIds.length ? false : e53.visibleMessageIds.every((r28, n) => r28 === t8.visibleMessageIds[n]);
1331
+ function Tt(e54, t9) {
1332
+ return e54.currentAnchorId !== t9.currentAnchorId || e54.visibleMessageIds.length !== t9.visibleMessageIds.length ? false : e54.visibleMessageIds.every((r32, n) => r32 === t9.visibleMessageIds[n]);
1296
1333
  }
1297
- function tt({ autoScroll: e53, scrollEdgeThreshold: t8, scrollMargin: r28, scrollPreviousItemPeek: n }) {
1298
- let o36 = g.useRef(e53), i3 = g.useRef(false), S2 = g.useRef(null), l5 = g.useRef(false), d2 = g.useRef(t8), E = g.useRef(0), b2 = g.useRef(null), C = g.useRef(0), p3 = g.useRef(e53 ? "following-bottom" : "free-scrolling"), m5 = g.useRef(/* @__PURE__ */ new Map()), L = g.useRef(null), y = g.useRef(null), u = g.useRef(null), x = g.useRef(n), Y = g.useRef(true), k = g.useRef(null), _ = g.useRef(r28), G = g.useRef(null), v = g.useRef(0), H = g.useRef(0), N = g.useRef(null), ne = g.useRef(null), A = g.useRef(null), B = g.useRef(null), D = g.useRef(null), U = g.useRef(null), c6 = g.useRef(null), f9 = g.useRef(null), h = g.useRef(/* @__PURE__ */ new Set()), P = g.useRef(/* @__PURE__ */ new WeakSet());
1299
- return A.current === null && (A.current = Xe(ge, et)), f9.current === null && (f9.current = Ze()), o36.current = e53, d2.current = t8, _.current = r28, x.current = n, { autoScrollRef: o36, autoscrollingRef: i3, autoscrollingTimeoutRef: B, streamingTurnRef: u, contentRef: S2, defaultScrollPositionAppliedRef: l5, firstItemRef: b2, itemCountRef: E, lastScrollTopRef: C, messageElementsRef: m5, modeRef: p3, pendingScrollFrameRef: G, pendingScrollToMessageRef: L, prependRestoreRef: y, preserveScrollOnPrependRef: Y, rootRef: k, scrollEdgeThresholdRef: d2, scrollMarginRef: _, scrollPreviousItemPeekRef: x, spacerGapRef: v, spacerHeightRef: H, spacerRef: N, stateFrameRef: ne, stateStore: A.current, viewportRef: D, visibilityFrameRef: U, visibilityObserverRef: c6, visibilityStore: f9.current, visibleMessageIdsRef: h, handledScrollAnchorsRef: P };
1334
+ function tt({ autoScroll: e54, scrollEdgeThreshold: t9, scrollMargin: r32, scrollPreviousItemPeek: n }) {
1335
+ let o42 = g.useRef(e54), i3 = g.useRef(false), S2 = g.useRef(null), l5 = g.useRef(false), d2 = g.useRef(t9), E = g.useRef(0), b2 = g.useRef(null), C = g.useRef(0), p3 = g.useRef(e54 ? "following-bottom" : "free-scrolling"), m5 = g.useRef(/* @__PURE__ */ new Map()), L = g.useRef(null), y = g.useRef(null), u = g.useRef(null), x = g.useRef(n), Y = g.useRef(true), k = g.useRef(null), _ = g.useRef(r32), G = g.useRef(null), v = g.useRef(0), H = g.useRef(0), N = g.useRef(null), ne = g.useRef(null), A = g.useRef(null), B = g.useRef(null), D = g.useRef(null), U = g.useRef(null), c7 = g.useRef(null), f9 = g.useRef(null), h = g.useRef(/* @__PURE__ */ new Set()), P = g.useRef(/* @__PURE__ */ new WeakSet());
1336
+ return A.current === null && (A.current = Xe(ge, et)), f9.current === null && (f9.current = Ze()), o42.current = e54, d2.current = t9, _.current = r32, x.current = n, { autoScrollRef: o42, autoscrollingRef: i3, autoscrollingTimeoutRef: B, streamingTurnRef: u, contentRef: S2, defaultScrollPositionAppliedRef: l5, firstItemRef: b2, itemCountRef: E, lastScrollTopRef: C, messageElementsRef: m5, modeRef: p3, pendingScrollFrameRef: G, pendingScrollToMessageRef: L, prependRestoreRef: y, preserveScrollOnPrependRef: Y, rootRef: k, scrollEdgeThresholdRef: d2, scrollMarginRef: _, scrollPreviousItemPeekRef: x, spacerGapRef: v, spacerHeightRef: H, spacerRef: N, stateFrameRef: ne, stateStore: A.current, viewportRef: D, visibilityFrameRef: U, visibilityObserverRef: c7, visibilityStore: f9.current, visibleMessageIdsRef: h, handledScrollAnchorsRef: P };
1300
1337
  }
1301
- function rt(e53, t8) {
1302
- return g.useCallback((r28) => {
1303
- e53.current = r28, r28 && t8();
1304
- }, [e53, t8]);
1338
+ function rt(e54, t9) {
1339
+ return g.useCallback((r32) => {
1340
+ e54.current = r32, r32 && t9();
1341
+ }, [e54, t9]);
1305
1342
  }
1306
- function nt({ autoScroll: e53 = false, defaultScrollPosition: t8 = "end", scrollEdgeThreshold: r28 = xe, scrollPreviousItemPeek: n = Ve, scrollMargin: o36 = _e }) {
1307
- let i3 = tt({ autoScroll: e53, scrollEdgeThreshold: r28, scrollMargin: o36, scrollPreviousItemPeek: n }), { streamingTurnRef: S2, autoScrollRef: l5, autoscrollingRef: d2, autoscrollingTimeoutRef: E, contentRef: b2, defaultScrollPositionAppliedRef: C, firstItemRef: p3, itemCountRef: m5, lastScrollTopRef: L, messageElementsRef: y, modeRef: u, pendingScrollFrameRef: x, pendingScrollToMessageRef: Y, prependRestoreRef: k, preserveScrollOnPrependRef: _, rootRef: G, scrollEdgeThresholdRef: v, scrollMarginRef: H, scrollPreviousItemPeekRef: N, spacerGapRef: ne, spacerHeightRef: A, spacerRef: B, stateFrameRef: D, stateStore: U, viewportRef: c6, visibilityFrameRef: f9, visibilityObserverRef: h, visibilityStore: P, visibleMessageIdsRef: V, handledScrollAnchorsRef: z } = i3, q = g.useRef(t8);
1308
- q.current !== t8 && (q.current = t8, C.current = false);
1343
+ function nt({ autoScroll: e54 = false, defaultScrollPosition: t9 = "end", scrollEdgeThreshold: r32 = xe, scrollPreviousItemPeek: n = Ve, scrollMargin: o42 = _e }) {
1344
+ let i3 = tt({ autoScroll: e54, scrollEdgeThreshold: r32, scrollMargin: o42, scrollPreviousItemPeek: n }), { streamingTurnRef: S2, autoScrollRef: l5, autoscrollingRef: d2, autoscrollingTimeoutRef: E, contentRef: b2, defaultScrollPositionAppliedRef: C, firstItemRef: p3, itemCountRef: m5, lastScrollTopRef: L, messageElementsRef: y, modeRef: u, pendingScrollFrameRef: x, pendingScrollToMessageRef: Y, prependRestoreRef: k, preserveScrollOnPrependRef: _, rootRef: G, scrollEdgeThresholdRef: v, scrollMarginRef: H, scrollPreviousItemPeekRef: N, spacerGapRef: ne, spacerHeightRef: A, spacerRef: B, stateFrameRef: D, stateStore: U, viewportRef: c7, visibilityFrameRef: f9, visibilityObserverRef: h, visibilityStore: P, visibleMessageIdsRef: V, handledScrollAnchorsRef: z } = i3, q = g.useRef(t9);
1345
+ q.current !== t9 && (q.current = t9, C.current = false);
1309
1346
  let K = g.useCallback((s4) => {
1310
- let a26 = G.current, T = c6.current, O = [s4.start && "start", s4.end && "end"].filter(Boolean).join(" "), ue = d2.current;
1311
- for (let W of [a26, T]) W && (O ? W.setAttribute("data-scrollable", O) : W.removeAttribute("data-scrollable"), W.toggleAttribute("data-autoscrolling", ue));
1347
+ let a28 = G.current, T = c7.current, O = [s4.start && "start", s4.end && "end"].filter(Boolean).join(" "), ue = d2.current;
1348
+ for (let W of [a28, T]) W && (O ? W.setAttribute("data-scrollable", O) : W.removeAttribute("data-scrollable"), W.toggleAttribute("data-autoscrolling", ue));
1312
1349
  }, []), se = g.useCallback((s4) => {
1313
- let a26 = c6.current?.scrollTop ?? 0, T = a26 < L.current - J;
1314
- L.current = a26, l5.current && !s4.end && u.current !== "settling-jump" && u.current !== "anchored-to-message" ? u.current = "following-bottom" : u.current === "following-bottom" && s4.end && T && !d2.current && (u.current = "free-scrolling");
1350
+ let a28 = c7.current?.scrollTop ?? 0, T = a28 < L.current - J;
1351
+ L.current = a28, l5.current && !s4.end && u.current !== "settling-jump" && u.current !== "anchored-to-message" ? u.current = "following-bottom" : u.current === "following-bottom" && s4.end && T && !d2.current && (u.current = "free-scrolling");
1315
1352
  }, []), F = g.useCallback(() => {
1316
- let s4 = De({ content: b2.current, scrollEdgeThreshold: v.current, spacer: B.current, viewport: c6.current });
1353
+ let s4 = De({ content: b2.current, scrollEdgeThreshold: v.current, spacer: B.current, viewport: c7.current });
1317
1354
  se(s4);
1318
- let a26 = u.current === "following-bottom" ? { ...s4, end: false } : s4;
1319
- K(a26), U.setSnapshot(a26);
1355
+ let a28 = u.current === "following-bottom" ? { ...s4, end: false } : s4;
1356
+ K(a28), U.setSnapshot(a28);
1320
1357
  }, [se, U, K]), oe = g.useCallback(() => {
1321
1358
  D.current === null && (D.current = window.requestAnimationFrame(() => {
1322
1359
  D.current = null, F();
1323
1360
  }));
1324
1361
  }, [F]), w2 = g.useCallback(() => {
1325
1362
  P.hasListeners() && f9.current === null && (f9.current = window.requestAnimationFrame(() => {
1326
- f9.current = null, P.hasListeners() && P.setSnapshot(Fe({ content: b2.current, scrollMargin: H.current, scrollPreviousItemPeek: N.current, spacer: B.current, viewport: c6.current, visibleMessageIds: V.current }));
1363
+ f9.current = null, P.hasListeners() && P.setSnapshot(Fe({ content: b2.current, scrollMargin: H.current, scrollPreviousItemPeek: N.current, spacer: B.current, viewport: c7.current, visibleMessageIds: V.current }));
1327
1364
  }));
1328
1365
  }, [P]), { flushPendingScrollToMessage: ce, reanchorToAnchoredMessage: me, scrollToElement: le, scrollToEnd: I2, scrollToMessage: Me, scrollToStart: ae } = Je({ refs: i3, commitScrollState: F, scheduleStateCommit: oe, scheduleVisibilitySync: w2 }), de = g.useCallback(() => {
1329
- let s4 = k.current, a26 = c6.current;
1330
- if (!s4 || !a26 || !s4.element.isConnected) return false;
1331
- let O = te(s4.element, a26) - s4.viewportTop;
1332
- return Math.abs(O) <= J ? false : (a26.scrollTop += O, s4.viewportTop = te(s4.element, a26), oe(), w2(), true);
1366
+ let s4 = k.current, a28 = c7.current;
1367
+ if (!s4 || !a28 || !s4.element.isConnected) return false;
1368
+ let O = te(s4.element, a28) - s4.viewportTop;
1369
+ return Math.abs(O) <= J ? false : (a28.scrollTop += O, s4.viewportTop = te(s4.element, a28), oe(), w2(), true);
1333
1370
  }, [oe, w2]), Z = g.useCallback(() => {
1334
- let s4 = b2.current, a26 = c6.current;
1335
- if (!s4 || !a26) {
1371
+ let s4 = b2.current, a28 = c7.current;
1372
+ if (!s4 || !a28) {
1336
1373
  k.current = null;
1337
1374
  return;
1338
1375
  }
1339
- let T = Ye({ content: s4, spacer: B.current, viewport: a26 });
1340
- k.current = T ? { element: T, viewportTop: te(T, a26) } : null;
1376
+ let T = Ye({ content: s4, spacer: B.current, viewport: a28 });
1377
+ k.current = T ? { element: T, viewportTop: te(T, a28) } : null;
1341
1378
  }, []), be = g.useCallback(() => {
1342
1379
  x.current === null && (x.current = window.requestAnimationFrame(() => {
1343
1380
  x.current = null, ce() && Z();
1344
1381
  }));
1345
1382
  }, [Z, ce]), ie = g.useCallback(() => {
1346
- if (!t8 || C.current || m5.current === 0) return false;
1383
+ if (!t9 || C.current || m5.current === 0) return false;
1347
1384
  let s4 = false;
1348
- if (t8 === "last-anchor") {
1349
- let a26 = b2.current, T = c6.current, O = a26 && T ? Ue(ee(a26, B.current)) : null;
1350
- if (!a26 || !T || !O) s4 = I2({ behavior: "auto" });
1385
+ if (t9 === "last-anchor") {
1386
+ let a28 = b2.current, T = c7.current, O = a28 && T ? Ue(ee(a28, B.current)) : null;
1387
+ if (!a28 || !T || !O) s4 = I2({ behavior: "auto" });
1351
1388
  else {
1352
1389
  let ue = pe(O, T);
1353
- s4 = Se({ content: a26, spacer: B.current, viewport: T }) - ue <= T.clientHeight ? I2({ behavior: "auto" }) : le(O, { align: "start" }, { keepPreviousPeek: true });
1390
+ s4 = Se({ content: a28, spacer: B.current, viewport: T }) - ue <= T.clientHeight ? I2({ behavior: "auto" }) : le(O, { align: "start" }, { keepPreviousPeek: true });
1354
1391
  }
1355
- } else s4 = t8 === "end" ? I2({ behavior: "auto" }) : ae({ behavior: "auto" });
1392
+ } else s4 = t9 === "end" ? I2({ behavior: "auto" }) : ae({ behavior: "auto" });
1356
1393
  return s4 ? (C.current = true, true) : false;
1357
- }, [t8, le, I2, ae]), Te = g.useCallback(() => {
1394
+ }, [t9, le, I2, ae]), Te = g.useCallback(() => {
1358
1395
  let s4 = b2.current;
1359
1396
  if (!s4) return;
1360
- let a26 = ee(s4, B.current), T = m5.current, O = p3.current;
1361
- m5.current = a26.length, p3.current = a26[0] ?? null, (() => {
1397
+ let a28 = ee(s4, B.current), T = m5.current, O = p3.current;
1398
+ m5.current = a28.length, p3.current = a28[0] ?? null, (() => {
1362
1399
  if (ce()) return;
1363
1400
  if (T === 0) {
1364
- if (ie() || a26.length > 0 && l5.current && I2({ behavior: "auto" })) return;
1401
+ if (ie() || a28.length > 0 && l5.current && I2({ behavior: "auto" })) return;
1365
1402
  F(), w2();
1366
1403
  return;
1367
1404
  }
1368
- let W = O ? a26.indexOf(O) : -1;
1405
+ let W = O ? a28.indexOf(O) : -1;
1369
1406
  if (_.current && W > 0) {
1370
1407
  de();
1371
1408
  return;
1372
1409
  }
1373
- if (a26.length > T) {
1374
- let $ = je(a26, T);
1410
+ if (a28.length > T) {
1411
+ let $ = je(a28, T);
1375
1412
  if ($) {
1376
- if (l5.current && u.current === "following-bottom" && Ne(a26, T)) {
1413
+ if (l5.current && u.current === "following-bottom" && Ne(a28, T)) {
1377
1414
  I2({ behavior: "auto" });
1378
1415
  return;
1379
1416
  }
@@ -1381,8 +1418,8 @@ function nt({ autoScroll: e53 = false, defaultScrollPosition: t8 = "end", scroll
1381
1418
  return;
1382
1419
  }
1383
1420
  }
1384
- if (a26.length === T) {
1385
- let $ = Ge(a26, z.current);
1421
+ if (a28.length === T) {
1422
+ let $ = Ge(a28, z.current);
1386
1423
  if ($) {
1387
1424
  le($, { align: "start" }, { keepPreviousPeek: true }), z.current.add($);
1388
1425
  return;
@@ -1402,76 +1439,76 @@ function nt({ autoScroll: e53 = false, defaultScrollPosition: t8 = "end", scroll
1402
1439
  }
1403
1440
  oe(), w2();
1404
1441
  }, [me, oe, w2, I2]), ve = g.useCallback(() => {
1405
- let s4 = c6.current;
1442
+ let s4 = c7.current;
1406
1443
  if (!(!s4 || !P.hasListeners())) {
1407
1444
  if (typeof IntersectionObserver > "u") {
1408
1445
  w2();
1409
1446
  return;
1410
1447
  }
1411
- h.current || (h.current = new IntersectionObserver((a26) => {
1412
- for (let T of a26) {
1448
+ h.current || (h.current = new IntersectionObserver((a28) => {
1449
+ for (let T of a28) {
1413
1450
  let O = T.target.dataset.messageId;
1414
1451
  O && (T.isIntersecting ? V.current.add(O) : V.current.delete(O));
1415
1452
  }
1416
1453
  w2();
1417
- }, { root: s4, rootMargin: `${-(H.current + N.current)}px 0px 0px 0px`, threshold: [0, 0.01, 0.5, 1] })), y.current.forEach((a26) => {
1418
- h.current?.observe(a26);
1454
+ }, { root: s4, rootMargin: `${-(H.current + N.current)}px 0px 0px 0px`, threshold: [0, 0.01, 0.5, 1] })), y.current.forEach((a28) => {
1455
+ h.current?.observe(a28);
1419
1456
  }), w2();
1420
1457
  }
1421
1458
  }, [w2, P]), he = g.useCallback(() => {
1422
1459
  f9.current !== null && (window.cancelAnimationFrame(f9.current), f9.current = null), h.current?.disconnect(), h.current = null, V.current.clear(), P.setSnapshot(Q);
1423
- }, [P]), pt = g.useCallback((s4, a26, T) => {
1424
- if (a26) {
1425
- y.current.set(s4, a26), h.current?.observe(a26), w2(), Y.current?.messageId === s4 && be();
1460
+ }, [P]), pt = g.useCallback((s4, a28, T) => {
1461
+ if (a28) {
1462
+ y.current.set(s4, a28), h.current?.observe(a28), w2(), Y.current?.messageId === s4 && be();
1426
1463
  return;
1427
1464
  }
1428
1465
  T && y.current.get(s4) === T && (y.current.delete(s4), V.current.delete(s4), h.current?.unobserve(T), w2());
1429
1466
  }, [be, w2]), Le = g.useCallback(() => {
1430
1467
  (u.current === "following-bottom" || u.current === "anchored-to-message" || u.current === "settling-jump") && (S2.current = null, u.current = "free-scrolling");
1431
- }, []), Ce = g.useCallback(() => K(U.getSnapshot()), [U, K]), Pe = rt(G, Ce), we = rt(c6, Ce), Oe = g.useCallback((s4) => {
1468
+ }, []), Ce = g.useCallback(() => K(U.getSnapshot()), [U, K]), Pe = rt(G, Ce), we = rt(c7, Ce), Oe = g.useCallback((s4) => {
1432
1469
  b2.current = s4;
1433
1470
  }, []), ye = g.useCallback((s4) => {
1434
1471
  B.current = s4, ne.current = $e(s4?.parentElement ?? null);
1435
1472
  }, []), He = g.useCallback(() => {
1436
1473
  F(), w2(), Z();
1437
- }, [Z, F, w2]), mt = g.useMemo(() => ({ handleContentChange: Te, handleResize: Ee, observeVisibility: ve, preserveScrollOnPrependRef: _, scrollToEnd: I2, scrollToMessage: Me, scrollToStart: ae, setContentElement: Oe, setRootElement: Pe, setSpacerElement: ye, setViewportElement: we, stateStore: U, syncAfterScroll: He, unobserveVisibility: he, userScrollIntent: Le, viewportRef: c6, visibilityStore: P }), [Te, Ee, ve, I2, Me, ae, Oe, Pe, ye, we, U, He, he, Le, P]);
1474
+ }, [Z, F, w2]), mt = g.useMemo(() => ({ handleContentChange: Te, handleResize: Ee, observeVisibility: ve, preserveScrollOnPrependRef: _, scrollToEnd: I2, scrollToMessage: Me, scrollToStart: ae, setContentElement: Oe, setRootElement: Pe, setSpacerElement: ye, setViewportElement: we, stateStore: U, syncAfterScroll: He, unobserveVisibility: he, userScrollIntent: Le, viewportRef: c7, visibilityStore: P }), [Te, Ee, ve, I2, Me, ae, Oe, Pe, ye, we, U, He, he, Le, P]);
1438
1475
  return g.useLayoutEffect(() => {
1439
1476
  ie();
1440
1477
  }, [ie]), g.useEffect(() => () => {
1441
1478
  D.current !== null && (window.cancelAnimationFrame(D.current), D.current = null), f9.current !== null && (window.cancelAnimationFrame(f9.current), f9.current = null), E.current !== null && (window.clearTimeout(E.current), E.current = null), x.current !== null && (window.cancelAnimationFrame(x.current), x.current = null), h.current?.disconnect(), h.current = null;
1442
1479
  }, []), g.useLayoutEffect(() => {
1443
- if (e53 && u.current === "following-bottom" && m5.current > 0) {
1480
+ if (e54 && u.current === "following-bottom" && m5.current > 0) {
1444
1481
  I2({ behavior: "auto" });
1445
1482
  return;
1446
1483
  }
1447
1484
  F();
1448
- }, [e53, F, I2]), { context: mt, registerMessage: pt };
1485
+ }, [e54, F, I2]), { context: mt, registerMessage: pt };
1449
1486
  }
1450
- function lt(e53) {
1451
- let t8 = g.useRef(e53);
1452
- return t8.current = e53, t8;
1487
+ function lt(e54) {
1488
+ let t9 = g.useRef(e54);
1489
+ return t9.current = e54, t9;
1453
1490
  }
1454
1491
  var st = g.createContext(null);
1455
1492
  var ct = g.createContext(null);
1456
1493
  function X2() {
1457
- let e53 = g.useContext(st);
1458
- if (!e53) throw new Error("useMessageScroller must be used within a MessageScroller.");
1459
- return e53;
1494
+ let e54 = g.useContext(st);
1495
+ if (!e54) throw new Error("useMessageScroller must be used within a MessageScroller.");
1496
+ return e54;
1460
1497
  }
1461
1498
  function Et() {
1462
- let e53 = g.useContext(ct);
1463
- if (!e53) throw new Error("MessageScrollerItem must be used within a MessageScroller.");
1464
- return e53;
1499
+ let e54 = g.useContext(ct);
1500
+ if (!e54) throw new Error("MessageScrollerItem must be used within a MessageScroller.");
1501
+ return e54;
1465
1502
  }
1466
- function at({ autoScroll: e53 = false, children: t8, defaultScrollPosition: r28 = "end", scrollEdgeThreshold: n, scrollPreviousItemPeek: o36, scrollMargin: i3 }) {
1467
- let { context: S2, registerMessage: l5 } = nt({ autoScroll: e53, defaultScrollPosition: r28, scrollEdgeThreshold: n, scrollPreviousItemPeek: o36, scrollMargin: i3 });
1468
- return jsx2(st.Provider, { value: S2, children: jsx2(ct.Provider, { value: l5, children: t8 }) });
1503
+ function at({ autoScroll: e54 = false, children: t9, defaultScrollPosition: r32 = "end", scrollEdgeThreshold: n, scrollPreviousItemPeek: o42, scrollMargin: i3 }) {
1504
+ let { context: S2, registerMessage: l5 } = nt({ autoScroll: e54, defaultScrollPosition: r32, scrollEdgeThreshold: n, scrollPreviousItemPeek: o42, scrollMargin: i3 });
1505
+ return jsx2(st.Provider, { value: S2, children: jsx2(ct.Provider, { value: l5, children: t9 }) });
1469
1506
  }
1470
- function it({ children: e53, ...t8 }) {
1471
- let { setRootElement: r28 } = X2();
1472
- return jsx2("div", { ref: r28, ...t8, children: e53 });
1507
+ function it({ children: e54, ...t9 }) {
1508
+ let { setRootElement: r32 } = X2();
1509
+ return jsx2("div", { ref: r32, ...t9, children: e54 });
1473
1510
  }
1474
- function ut({ "aria-label": e53, children: t8, onKeyDown: r28, onScroll: n, onTouchMove: o36, onWheel: i3, preserveScrollOnPrepend: S2 = true, ref: l5, role: d2, tabIndex: E, ...b2 }) {
1511
+ function ut({ "aria-label": e54, children: t9, onKeyDown: r32, onScroll: n, onTouchMove: o42, onWheel: i3, preserveScrollOnPrepend: S2 = true, ref: l5, role: d2, tabIndex: E, ...b2 }) {
1475
1512
  let { handleResize: C, preserveScrollOnPrependRef: p3, setViewportElement: m5, syncAfterScroll: L, userScrollIntent: y, viewportRef: u } = X2();
1476
1513
  p3.current = S2;
1477
1514
  let x = g.useCallback((v) => {
@@ -1484,10 +1521,10 @@ function ut({ "aria-label": e53, children: t8, onKeyDown: r28, onScroll: n, onTo
1484
1521
  y(), i3?.(v);
1485
1522
  }
1486
1523
  function _(v) {
1487
- y(), o36?.(v);
1524
+ y(), o42?.(v);
1488
1525
  }
1489
1526
  function G(v) {
1490
- Be.has(v.key) && y(), r28?.(v);
1527
+ Be.has(v.key) && y(), r32?.(v);
1491
1528
  }
1492
1529
  return g.useEffect(() => {
1493
1530
  let v = u.current;
@@ -1498,12 +1535,12 @@ function ut({ "aria-label": e53, children: t8, onKeyDown: r28, onScroll: n, onTo
1498
1535
  return N.observe(v), () => {
1499
1536
  window.cancelAnimationFrame(H), N.disconnect();
1500
1537
  };
1501
- }, [C, u]), jsx2("div", { ref: x, role: d2 ?? "region", "aria-label": e53 ?? "Messages", tabIndex: E ?? 0, onKeyDown: G, onScroll: Y, onTouchMove: _, onWheel: k, ...b2, children: t8 });
1538
+ }, [C, u]), jsx2("div", { ref: x, role: d2 ?? "region", "aria-label": e54 ?? "Messages", tabIndex: E ?? 0, onKeyDown: G, onScroll: Y, onTouchMove: _, onWheel: k, ...b2, children: t9 });
1502
1539
  }
1503
- function ft({ "aria-relevant": e53, children: t8, ref: r28, role: n, spacerClassName: o36, ...i3 }) {
1540
+ function ft({ "aria-relevant": e54, children: t9, ref: r32, role: n, spacerClassName: o42, ...i3 }) {
1504
1541
  let { handleContentChange: S2, handleResize: l5, setContentElement: d2, setSpacerElement: E } = X2(), b2 = g.useRef(null), C = g.useCallback((p3) => {
1505
- b2.current = p3, d2(p3), f8(r28)?.(p3);
1506
- }, [r28, d2]);
1542
+ b2.current = p3, d2(p3), f8(r32)?.(p3);
1543
+ }, [r32, d2]);
1507
1544
  return g.useLayoutEffect(() => {
1508
1545
  let p3 = b2.current;
1509
1546
  if (!p3 || (S2(), typeof MutationObserver > "u")) return;
@@ -1520,23 +1557,23 @@ function ft({ "aria-relevant": e53, children: t8, ref: r28, role: n, spacerClass
1520
1557
  return L.observe(p3), () => {
1521
1558
  window.cancelAnimationFrame(m5), L.disconnect();
1522
1559
  };
1523
- }, [l5]), jsxs("div", { ref: C, role: n ?? "log", "aria-relevant": e53 ?? "additions", ...i3, children: [t8, jsx2("div", { ref: E, "aria-hidden": "true", "data-message-scroller-spacer": "", hidden: true, className: o36 })] });
1560
+ }, [l5]), jsxs("div", { ref: C, role: n ?? "log", "aria-relevant": e54 ?? "additions", ...i3, children: [t9, jsx2("div", { ref: E, "aria-hidden": "true", "data-message-scroller-spacer": "", hidden: true, className: o42 })] });
1524
1561
  }
1525
- function gt({ messageId: e53, ref: t8, scrollAnchor: r28 = false, ...n }) {
1526
- let o36 = Et(), i3 = g.useRef(null), S2 = g.useCallback((l5) => {
1562
+ function gt({ messageId: e54, ref: t9, scrollAnchor: r32 = false, ...n }) {
1563
+ let o42 = Et(), i3 = g.useRef(null), S2 = g.useCallback((l5) => {
1527
1564
  let d2 = i3.current;
1528
- i3.current = l5, e53 && o36(e53, l5, d2), f8(t8)?.(l5);
1529
- }, [e53, t8, o36]);
1530
- return jsx2("div", { ref: S2, "data-message-id": e53, "data-scroll-anchor": r28 ? "true" : "false", ...n });
1565
+ i3.current = l5, e54 && o42(e54, l5, d2), f8(t9)?.(l5);
1566
+ }, [e54, t9, o42]);
1567
+ return jsx2("div", { ref: S2, "data-message-id": e54, "data-scroll-anchor": r32 ? "true" : "false", ...n });
1531
1568
  }
1532
- function St({ behavior: e53 = "smooth", children: t8, direction: r28 = "end", onClick: n, render: o36, tabIndex: i3, type: S2 = "button", ...l5 }) {
1569
+ function St({ behavior: e54 = "smooth", children: t9, direction: r32 = "end", onClick: n, render: o42, tabIndex: i3, type: S2 = "button", ...l5 }) {
1533
1570
  let { scrollToEnd: d2, scrollToStart: E, stateStore: b$1 } = X2(), C = lt(n), p3 = g.useCallback((u) => b$1.subscribe(u), [b$1]), m5 = g.useCallback(() => {
1534
1571
  let u = b$1.getSnapshot();
1535
- return r28 === "start" ? u.start : u.end;
1536
- }, [r28, b$1]), L = g.useSyncExternalStore(p3, m5, m5), y = g.useCallback((u) => {
1537
- L && (C.current?.(u), u.defaultPrevented || (u.currentTarget.blur(), r28 === "start" ? E({ behavior: e53 }) : d2({ behavior: e53 })));
1538
- }, [e53, r28, L, C, d2, E]);
1539
- return S({ defaultTagName: "button", props: d({ type: S2, inert: !L, tabIndex: L ? i3 : -1, children: t8 ?? jsxs("span", { children: ["Scroll to ", r28] }), onClick: y }, l5), render: o36, state: { active: L, direction: r28 }, stateAttributesMapping: { active: (u) => ({ "data-active": u ? "true" : "false" }) } });
1572
+ return r32 === "start" ? u.start : u.end;
1573
+ }, [r32, b$1]), L = g.useSyncExternalStore(p3, m5, m5), y = g.useCallback((u) => {
1574
+ L && (C.current?.(u), u.defaultPrevented || (u.currentTarget.blur(), r32 === "start" ? E({ behavior: e54 }) : d2({ behavior: e54 })));
1575
+ }, [e54, r32, L, C, d2, E]);
1576
+ return S({ defaultTagName: "button", props: d({ type: S2, inert: !L, tabIndex: L ? i3 : -1, children: t9 ?? jsxs("span", { children: ["Scroll to ", r32] }), onClick: y }, l5), render: o42, state: { active: L, direction: r32 }, stateAttributesMapping: { active: (u) => ({ "data-active": u ? "true" : "false" }) } });
1540
1577
  }
1541
1578
  var $t = { Provider: at, Root: it, Viewport: ut, Content: ft, Item: gt, Button: St };
1542
1579
 
@@ -1775,7 +1812,7 @@ var use = React2[" use ".trim().toString()];
1775
1812
  // ../../apps/web/src/components/ui/button.tsx
1776
1813
  import { jsx as jsx3 } from "react/jsx-runtime";
1777
1814
  var buttonVariants = cva(
1778
- "group/button inline-flex shrink-0 items-center justify-center rounded-full border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
1815
+ "group/button inline-flex shrink-0 items-center justify-center rounded-full border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none touch-manipulation focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
1779
1816
  {
1780
1817
  variants: {
1781
1818
  variant: {
@@ -1852,7 +1889,7 @@ function useIsResizing(target) {
1852
1889
  }
1853
1890
 
1854
1891
  // ../../apps/web/src/components/ui/message-scroller.tsx
1855
- import { Fragment as Fragment23, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
1892
+ import { Fragment as Fragment24, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
1856
1893
  function MessageScrollerProvider({
1857
1894
  autoScroll = true,
1858
1895
  ...props
@@ -2022,7 +2059,7 @@ function MessageScrollerButton({
2022
2059
  ),
2023
2060
  render: render ?? /* @__PURE__ */ jsx4(Button, { variant, size }),
2024
2061
  ...props,
2025
- children: children ?? /* @__PURE__ */ jsxs2(Fragment23, { children: [
2062
+ children: children ?? /* @__PURE__ */ jsxs2(Fragment24, { children: [
2026
2063
  /* @__PURE__ */ jsx4(ArrowDown, {}),
2027
2064
  /* @__PURE__ */ jsx4("span", { className: "sr-only", children: direction === "end" ? "Scroll to end" : "Scroll to start" })
2028
2065
  ] })
@@ -2110,9 +2147,9 @@ import {
2110
2147
  } from "react";
2111
2148
 
2112
2149
  // src/next-image-shim.tsx
2113
- import { forwardRef as forwardRef24 } from "react";
2150
+ import { forwardRef as forwardRef25 } from "react";
2114
2151
  import { jsx as jsx5 } from "react/jsx-runtime";
2115
- var Image = forwardRef24(function Image2({
2152
+ var Image = forwardRef25(function Image2({
2116
2153
  unoptimized: _unoptimized,
2117
2154
  priority: _priority,
2118
2155
  quality: _quality,
@@ -2126,8 +2163,11 @@ var Image = forwardRef24(function Image2({
2126
2163
  });
2127
2164
  var next_image_shim_default = Image;
2128
2165
 
2166
+ // ../../apps/web/src/components/attachments/attachment-image.tsx
2167
+ import { jsx as jsx6 } from "react/jsx-runtime";
2168
+
2129
2169
  // ../../apps/web/src/components/attachments/attachment-draft-chip.tsx
2130
- import { jsx as jsx6, jsxs as jsxs3 } from "react/jsx-runtime";
2170
+ import { jsx as jsx7, jsxs as jsxs3 } from "react/jsx-runtime";
2131
2171
  var KIND_ICONS = {
2132
2172
  image: ImageSquare,
2133
2173
  video: Play,
@@ -2153,7 +2193,7 @@ function AttachmentDraftChip({
2153
2193
  draft.previewUrl ? (
2154
2194
  // Object URLs cannot be optimised, and there is nothing to optimise:
2155
2195
  // the file has not left the browser.
2156
- /* @__PURE__ */ jsx6(
2196
+ /* @__PURE__ */ jsx7(
2157
2197
  next_image_shim_default,
2158
2198
  {
2159
2199
  src: draft.previewUrl,
@@ -2164,7 +2204,7 @@ function AttachmentDraftChip({
2164
2204
  className: "size-8 shrink-0 rounded-md object-cover"
2165
2205
  }
2166
2206
  )
2167
- ) : /* @__PURE__ */ jsx6("span", { className: "grid size-8 shrink-0 place-items-center rounded-md bg-muted", children: /* @__PURE__ */ jsx6(
2207
+ ) : /* @__PURE__ */ jsx7("span", { className: "grid size-8 shrink-0 place-items-center rounded-md bg-muted", children: /* @__PURE__ */ jsx7(
2168
2208
  Glyph,
2169
2209
  {
2170
2210
  className: cn(
@@ -2174,8 +2214,8 @@ function AttachmentDraftChip({
2174
2214
  }
2175
2215
  ) }),
2176
2216
  /* @__PURE__ */ jsxs3("div", { className: "flex min-w-0 flex-1 flex-col", children: [
2177
- /* @__PURE__ */ jsx6("p", { className: "truncate text-xs font-medium", children: draft.name }),
2178
- /* @__PURE__ */ jsx6(
2217
+ /* @__PURE__ */ jsx7("p", { className: "truncate text-xs font-medium", children: draft.name }),
2218
+ /* @__PURE__ */ jsx7(
2179
2219
  "p",
2180
2220
  {
2181
2221
  className: cn(
@@ -2186,7 +2226,7 @@ function AttachmentDraftChip({
2186
2226
  }
2187
2227
  )
2188
2228
  ] }),
2189
- /* @__PURE__ */ jsx6(
2229
+ /* @__PURE__ */ jsx7(
2190
2230
  Button,
2191
2231
  {
2192
2232
  type: "button",
@@ -2195,7 +2235,7 @@ function AttachmentDraftChip({
2195
2235
  onClick: onRemove,
2196
2236
  "aria-label": `Remove ${draft.name}`,
2197
2237
  className: "shrink-0 rounded-full text-muted-foreground",
2198
- children: /* @__PURE__ */ jsx6(X, {})
2238
+ children: /* @__PURE__ */ jsx7(X, {})
2199
2239
  }
2200
2240
  )
2201
2241
  ]
@@ -2206,6 +2246,16 @@ function AttachmentDraftChip({
2206
2246
  // ../../apps/web/src/components/attachments/use-attachment-drafts.ts
2207
2247
  import { useEffect as useEffect4, useRef as useRef4, useState as useState3 } from "react";
2208
2248
  var MAX_BYTES = 25 * 1024 * 1024;
2249
+ var UNSAFE_TYPES = [
2250
+ "text/html",
2251
+ "application/xhtml+xml",
2252
+ "image/svg+xml",
2253
+ "text/xsl",
2254
+ "application/xslt+xml"
2255
+ ];
2256
+ function isUnsafeType(type) {
2257
+ return UNSAFE_TYPES.includes(type.split(";")[0].trim().toLowerCase());
2258
+ }
2209
2259
  var nextDraftId = 0;
2210
2260
  function formatFileSize(bytes) {
2211
2261
  if (bytes < 1024) return `${bytes} B`;
@@ -2218,6 +2268,11 @@ function formatFileSize(bytes) {
2218
2268
  }
2219
2269
  return `${value < 10 ? value.toFixed(1) : Math.round(value)} ${units[unit]}`;
2220
2270
  }
2271
+ var KIND_NAMES = {
2272
+ image: "pictures",
2273
+ video: "videos",
2274
+ file: "files"
2275
+ };
2221
2276
  function attachmentKindOf(type) {
2222
2277
  if (type.startsWith("image/")) return "image";
2223
2278
  if (type.startsWith("video/")) return "video";
@@ -2226,7 +2281,10 @@ function attachmentKindOf(type) {
2226
2281
  function release(draft) {
2227
2282
  if (draft.previewUrl) URL.revokeObjectURL(draft.previewUrl);
2228
2283
  }
2229
- function useAttachmentDrafts() {
2284
+ function useAttachmentDrafts({
2285
+ accept,
2286
+ max
2287
+ } = {}) {
2230
2288
  const [drafts, setDrafts] = useState3([]);
2231
2289
  const draftsRef = useRef4(drafts);
2232
2290
  useEffect4(() => {
@@ -2234,17 +2292,21 @@ function useAttachmentDrafts() {
2234
2292
  }, [drafts]);
2235
2293
  useEffect4(() => () => draftsRef.current.forEach(release), []);
2236
2294
  function add(files) {
2237
- const picked = Array.from(files).map((file) => {
2295
+ const picked = Array.from(files).map((file, index) => {
2238
2296
  const isTooBig = file.size > MAX_BYTES;
2297
+ const isUnsafe = isUnsafeType(file.type);
2239
2298
  const kind = attachmentKindOf(file.type);
2299
+ const isWrongKind = accept !== void 0 && kind !== accept;
2300
+ const isOverCap = max !== void 0 && drafts.length + index >= max;
2301
+ const error = isTooBig ? `Larger than the ${formatFileSize(MAX_BYTES)} limit` : isUnsafe ? "This kind of file cannot be sent" : isWrongKind ? `Only ${KIND_NAMES[accept]} can go here` : isOverCap ? `Only ${max} at a time` : null;
2240
2302
  return {
2241
2303
  id: `draft-${nextDraftId += 1}`,
2242
2304
  file,
2243
2305
  name: file.name,
2244
2306
  size: formatFileSize(file.size),
2245
2307
  kind,
2246
- previewUrl: kind === "image" && !isTooBig ? URL.createObjectURL(file) : null,
2247
- error: isTooBig ? `Larger than the ${formatFileSize(MAX_BYTES)} limit` : null
2308
+ previewUrl: kind === "image" && error === null ? URL.createObjectURL(file) : null,
2309
+ error
2248
2310
  };
2249
2311
  });
2250
2312
  setDrafts([...drafts, ...picked]);
@@ -2266,7 +2328,9 @@ function useAttachmentDrafts() {
2266
2328
  /** The originals, in the order they were picked. */
2267
2329
  files: drafts.map((draft) => draft.file),
2268
2330
  /** True while something in the list cannot be sent. */
2269
- hasBlocker: drafts.some((draft) => draft.error !== null)
2331
+ hasBlocker: drafts.some((draft) => draft.error !== null),
2332
+ /** True once the cap is reached, for a picker that should go quiet. */
2333
+ isFull: max !== void 0 && drafts.length >= max
2270
2334
  };
2271
2335
  }
2272
2336
 
@@ -2319,7 +2383,7 @@ function useAttachmentTarget({
2319
2383
  }
2320
2384
 
2321
2385
  // ../../apps/web/src/components/support-widget/widget-button.tsx
2322
- import { jsx as jsx7 } from "react/jsx-runtime";
2386
+ import { jsx as jsx8 } from "react/jsx-runtime";
2323
2387
  var widgetButtonVariants = cva(
2324
2388
  "group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2325
2389
  {
@@ -2357,7 +2421,7 @@ function WidgetButton({
2357
2421
  ...props
2358
2422
  }) {
2359
2423
  const Comp = asChild ? dist_exports.Root : "button";
2360
- return /* @__PURE__ */ jsx7(
2424
+ return /* @__PURE__ */ jsx8(
2361
2425
  Comp,
2362
2426
  {
2363
2427
  "data-slot": "widget-button",
@@ -2371,7 +2435,7 @@ function WidgetButton({
2371
2435
 
2372
2436
  // ../../apps/web/src/components/ui/text-field.ts
2373
2437
  var TEXT_FIELD_SHELL = [
2374
- "rounded-lg border border-input bg-transparent text-sm transition-[color,box-shadow] outline-none dark:bg-input/30",
2438
+ "rounded-lg border border-input bg-transparent text-sm max-sm:text-base transition-[color,box-shadow] outline-none dark:bg-input/30",
2375
2439
  "placeholder:text-muted-foreground",
2376
2440
  // Focus recolours the hairline rather than adding a ring on top of it, so
2377
2441
  // the outline stays exactly 1px and nothing swells on click.
@@ -2381,14 +2445,14 @@ var TEXT_FIELD_SHELL = [
2381
2445
  ].join(" ");
2382
2446
 
2383
2447
  // ../../apps/web/src/components/ui/textarea.tsx
2384
- import { jsx as jsx8 } from "react/jsx-runtime";
2448
+ import { jsx as jsx9 } from "react/jsx-runtime";
2385
2449
  function Textarea({ className, ...props }) {
2386
- return /* @__PURE__ */ jsx8(
2450
+ return /* @__PURE__ */ jsx9(
2387
2451
  "textarea",
2388
2452
  {
2389
2453
  "data-slot": "textarea",
2390
2454
  className: cn(
2391
- "field-sizing-content w-full resize-none bg-transparent text-sm outline-none",
2455
+ "field-sizing-content w-full resize-none bg-transparent text-sm outline-none max-sm:text-base",
2392
2456
  "placeholder:text-muted-foreground",
2393
2457
  "disabled:pointer-events-none disabled:opacity-50",
2394
2458
  className
@@ -2469,13 +2533,13 @@ var LOGO_MASK_URL = `url("data:image/svg+xml,${encodeURIComponent(
2469
2533
  )}")`;
2470
2534
 
2471
2535
  // ../../apps/web/src/components/brand.tsx
2472
- import { jsx as jsx9 } from "react/jsx-runtime";
2536
+ import { jsx as jsx10 } from "react/jsx-runtime";
2473
2537
  var INVERT_IN_DARK = "dark:invert";
2474
2538
  function Wordmark({
2475
2539
  width = 132,
2476
2540
  className = ""
2477
2541
  }) {
2478
- return /* @__PURE__ */ jsx9(
2542
+ return /* @__PURE__ */ jsx10(
2479
2543
  "svg",
2480
2544
  {
2481
2545
  viewBox: WORDMARK.viewBox,
@@ -2484,7 +2548,7 @@ function Wordmark({
2484
2548
  role: "img",
2485
2549
  "aria-label": "Median",
2486
2550
  className: `${INVERT_IN_DARK} ${className}`,
2487
- children: WORDMARK.paths.map((d2) => /* @__PURE__ */ jsx9("path", { d: d2, fill: BRAND_INK }, d2))
2551
+ children: WORDMARK.paths.map((d2) => /* @__PURE__ */ jsx10("path", { d: d2, fill: BRAND_INK }, d2))
2488
2552
  }
2489
2553
  );
2490
2554
  }
@@ -2492,7 +2556,7 @@ function Logo({
2492
2556
  size = 104,
2493
2557
  className = ""
2494
2558
  }) {
2495
- return /* @__PURE__ */ jsx9(
2559
+ return /* @__PURE__ */ jsx10(
2496
2560
  "svg",
2497
2561
  {
2498
2562
  viewBox: LOGO.viewBox,
@@ -2500,13 +2564,41 @@ function Logo({
2500
2564
  height: size,
2501
2565
  "aria-hidden": true,
2502
2566
  className: `${INVERT_IN_DARK} ${className}`,
2503
- children: LOGO.paths.map((d2) => /* @__PURE__ */ jsx9("path", { d: d2, fill: BRAND_INK }, d2))
2567
+ children: LOGO.paths.map((d2) => /* @__PURE__ */ jsx10("path", { d: d2, fill: BRAND_INK }, d2))
2568
+ }
2569
+ );
2570
+ }
2571
+ function ShimmerLogo({
2572
+ label,
2573
+ className
2574
+ }) {
2575
+ return /* @__PURE__ */ jsx10(
2576
+ "span",
2577
+ {
2578
+ role: "status",
2579
+ "aria-label": label,
2580
+ style: {
2581
+ maskImage: LOGO_MASK_URL,
2582
+ maskSize: "contain",
2583
+ maskRepeat: "no-repeat",
2584
+ maskPosition: "center",
2585
+ WebkitMaskImage: LOGO_MASK_URL,
2586
+ WebkitMaskSize: "contain",
2587
+ WebkitMaskRepeat: "no-repeat",
2588
+ WebkitMaskPosition: "center",
2589
+ backgroundImage: "linear-gradient(115deg, var(--muted) 34%, var(--muted-foreground) 50%, var(--muted) 66%)",
2590
+ backgroundSize: "300% 100%"
2591
+ },
2592
+ className: cn(
2593
+ "size-12 animate-shimmer motion-reduce:animate-none motion-reduce:bg-muted",
2594
+ className
2595
+ )
2504
2596
  }
2505
2597
  );
2506
2598
  }
2507
2599
 
2508
2600
  // ../../apps/web/src/components/support-widget/widget-badge.tsx
2509
- import { jsx as jsx10, jsxs as jsxs4 } from "react/jsx-runtime";
2601
+ import { jsx as jsx11, jsxs as jsxs4 } from "react/jsx-runtime";
2510
2602
  var MEDIAN_URL = "https://median.sh";
2511
2603
  function PoweredByMedian({ className }) {
2512
2604
  return /* @__PURE__ */ jsxs4(
@@ -2523,15 +2615,15 @@ function PoweredByMedian({ className }) {
2523
2615
  ),
2524
2616
  children: [
2525
2617
  "Powered by",
2526
- /* @__PURE__ */ jsx10(Logo, { size: 12, className: "opacity-80" }),
2527
- /* @__PURE__ */ jsx10(Wordmark, { width: 40, className: "opacity-80" })
2618
+ /* @__PURE__ */ jsx11(Logo, { size: 12, className: "opacity-80" }),
2619
+ /* @__PURE__ */ jsx11(Wordmark, { width: 40, className: "opacity-80" })
2528
2620
  ]
2529
2621
  }
2530
2622
  );
2531
2623
  }
2532
2624
 
2533
2625
  // ../../apps/web/src/components/support-widget/widget-composer.tsx
2534
- import { jsx as jsx11, jsxs as jsxs5 } from "react/jsx-runtime";
2626
+ import { jsx as jsx12, jsxs as jsxs5 } from "react/jsx-runtime";
2535
2627
  var EMAIL_PATTERN = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
2536
2628
  var SWAP = "transition-[opacity,translate] duration-300 ease-out motion-reduce:transition-none";
2537
2629
  var RISE = "transition-transform duration-450 ease-spring motion-reduce:transition-none";
@@ -2610,7 +2702,7 @@ function WidgetComposer({
2610
2702
  className: "flex shrink-0 flex-col gap-1.5 px-3 pt-1 pb-3",
2611
2703
  ...isAsking ? {} : target.targetProps,
2612
2704
  children: [
2613
- !isAsking && attachments.drafts.length > 0 && /* @__PURE__ */ jsx11("ul", { className: "flex flex-wrap gap-1.5 px-1", children: attachments.drafts.map((item) => /* @__PURE__ */ jsx11("li", { className: "min-w-0", children: /* @__PURE__ */ jsx11(
2705
+ !isAsking && attachments.drafts.length > 0 && /* @__PURE__ */ jsx12("ul", { className: "flex flex-wrap gap-1.5 px-1", children: attachments.drafts.map((item) => /* @__PURE__ */ jsx12("li", { className: "min-w-0", children: /* @__PURE__ */ jsx12(
2614
2706
  AttachmentDraftChip,
2615
2707
  {
2616
2708
  draft: item,
@@ -2618,13 +2710,13 @@ function WidgetComposer({
2618
2710
  }
2619
2711
  ) }, item.id)) }),
2620
2712
  /* @__PURE__ */ jsxs5("div", { className: "relative", children: [
2621
- /* @__PURE__ */ jsx11(
2713
+ /* @__PURE__ */ jsx12(
2622
2714
  "div",
2623
2715
  {
2624
2716
  "aria-hidden": !showTab,
2625
2717
  inert: !showTab,
2626
2718
  className: "pointer-events-none absolute inset-x-0 bottom-full z-0 -mb-0.5 flex items-end justify-center overflow-hidden pt-2",
2627
- children: /* @__PURE__ */ jsx11(
2719
+ children: /* @__PURE__ */ jsx12(
2628
2720
  "div",
2629
2721
  {
2630
2722
  className: cn(
@@ -2644,8 +2736,8 @@ function WidgetComposer({
2644
2736
  isSaved && "-translate-y-full"
2645
2737
  ),
2646
2738
  children: [
2647
- /* @__PURE__ */ jsx11(EnvelopeSimple, { "aria-hidden": true, className: "size-4 shrink-0" }),
2648
- /* @__PURE__ */ jsx11("span", { className: "truncate", children: "Enter your email" })
2739
+ /* @__PURE__ */ jsx12(EnvelopeSimple, { "aria-hidden": true, className: "size-4 shrink-0" }),
2740
+ /* @__PURE__ */ jsx12("span", { className: "truncate", children: "Enter your email" })
2649
2741
  ]
2650
2742
  }
2651
2743
  ),
@@ -2659,8 +2751,8 @@ function WidgetComposer({
2659
2751
  !isSaved && "translate-y-full"
2660
2752
  ),
2661
2753
  children: [
2662
- /* @__PURE__ */ jsx11(Check, { "aria-hidden": true, className: "size-4 shrink-0" }),
2663
- /* @__PURE__ */ jsx11("span", { className: "truncate", children: "Saved" })
2754
+ /* @__PURE__ */ jsx12(Check, { "aria-hidden": true, className: "size-4 shrink-0" }),
2755
+ /* @__PURE__ */ jsx12("span", { className: "truncate", children: "Saved" })
2664
2756
  ]
2665
2757
  }
2666
2758
  )
@@ -2691,7 +2783,7 @@ function WidgetComposer({
2691
2783
  isAsking && "-translate-y-1 opacity-0 pointer-events-none"
2692
2784
  ),
2693
2785
  children: [
2694
- /* @__PURE__ */ jsx11(
2786
+ /* @__PURE__ */ jsx12(
2695
2787
  "input",
2696
2788
  {
2697
2789
  ref: fileInputRef,
@@ -2702,7 +2794,7 @@ function WidgetComposer({
2702
2794
  className: "sr-only"
2703
2795
  }
2704
2796
  ),
2705
- /* @__PURE__ */ jsx11(
2797
+ /* @__PURE__ */ jsx12(
2706
2798
  WidgetButton,
2707
2799
  {
2708
2800
  type: "button",
@@ -2711,10 +2803,10 @@ function WidgetComposer({
2711
2803
  onClick: () => fileInputRef.current?.click(),
2712
2804
  "aria-label": "Add an attachment",
2713
2805
  className: "rounded-full text-muted-foreground hover:rotate-90 motion-reduce:hover:rotate-0",
2714
- children: /* @__PURE__ */ jsx11(Plus, {})
2806
+ children: /* @__PURE__ */ jsx12(Plus, {})
2715
2807
  }
2716
2808
  ),
2717
- /* @__PURE__ */ jsx11(
2809
+ /* @__PURE__ */ jsx12(
2718
2810
  Textarea,
2719
2811
  {
2720
2812
  ref: draftRef,
@@ -2730,7 +2822,7 @@ function WidgetComposer({
2730
2822
  className: "max-h-32 min-h-8 flex-1 px-1 py-1.5 max-sm:text-[16px]"
2731
2823
  }
2732
2824
  ),
2733
- /* @__PURE__ */ jsx11(
2825
+ /* @__PURE__ */ jsx12(
2734
2826
  WidgetButton,
2735
2827
  {
2736
2828
  type: "button",
@@ -2742,7 +2834,7 @@ function WidgetComposer({
2742
2834
  "rounded-full",
2743
2835
  canSend ? "scale-100 opacity-100" : "scale-90 opacity-40 motion-reduce:scale-100"
2744
2836
  ),
2745
- children: /* @__PURE__ */ jsx11(ArrowUp, {})
2837
+ children: /* @__PURE__ */ jsx12(ArrowUp, {})
2746
2838
  }
2747
2839
  )
2748
2840
  ]
@@ -2759,7 +2851,7 @@ function WidgetComposer({
2759
2851
  !isAsking && "pointer-events-none translate-y-1 opacity-0"
2760
2852
  ),
2761
2853
  children: [
2762
- /* @__PURE__ */ jsx11(
2854
+ /* @__PURE__ */ jsx12(
2763
2855
  "input",
2764
2856
  {
2765
2857
  type: "email",
@@ -2778,7 +2870,7 @@ function WidgetComposer({
2778
2870
  className: "h-8 min-w-0 flex-1 px-1 outline-none placeholder:text-muted-foreground max-sm:text-[16px]"
2779
2871
  }
2780
2872
  ),
2781
- /* @__PURE__ */ jsx11(
2873
+ /* @__PURE__ */ jsx12(
2782
2874
  WidgetButton,
2783
2875
  {
2784
2876
  type: "button",
@@ -2790,7 +2882,7 @@ function WidgetComposer({
2790
2882
  "rounded-full",
2791
2883
  isValid ? "scale-100 opacity-100" : "scale-90 opacity-40 motion-reduce:scale-100"
2792
2884
  ),
2793
- children: /* @__PURE__ */ jsx11(ArrowUp, {})
2885
+ children: /* @__PURE__ */ jsx12(ArrowUp, {})
2794
2886
  }
2795
2887
  )
2796
2888
  ]
@@ -2800,23 +2892,50 @@ function WidgetComposer({
2800
2892
  }
2801
2893
  )
2802
2894
  ] }),
2803
- showBadge && /* @__PURE__ */ jsx11(PoweredByMedian, {})
2895
+ showBadge && /* @__PURE__ */ jsx12(PoweredByMedian, {})
2804
2896
  ]
2805
2897
  }
2806
2898
  )
2807
2899
  );
2808
2900
  }
2809
2901
 
2902
+ // ../../apps/web/src/components/support-widget/widget-destination.tsx
2903
+ import { jsx as jsx13, jsxs as jsxs6 } from "react/jsx-runtime";
2904
+ function WidgetDestination({
2905
+ destination,
2906
+ onFollow
2907
+ }) {
2908
+ return /* @__PURE__ */ jsxs6(
2909
+ WidgetButton,
2910
+ {
2911
+ type: "button",
2912
+ onClick: () => onFollow(destination),
2913
+ "aria-label": `Take me to ${destination.path}`,
2914
+ className: "group/go h-auto max-w-full justify-start gap-2 rounded-full px-3.5 py-2 text-left",
2915
+ children: [
2916
+ /* @__PURE__ */ jsx13("span", { className: "min-w-0 flex-1 truncate", children: "Take me there" }),
2917
+ /* @__PURE__ */ jsx13(
2918
+ ArrowRight,
2919
+ {
2920
+ "aria-hidden": true,
2921
+ className: "size-3.5 transition-transform group-hover/go:translate-x-0.5"
2922
+ }
2923
+ )
2924
+ ]
2925
+ }
2926
+ );
2927
+ }
2928
+
2810
2929
  // ../../apps/web/src/components/avatar.tsx
2811
2930
  import { useState as useState6 } from "react";
2812
2931
 
2813
2932
  // ../../apps/web/src/components/initial-badge.tsx
2814
- import { jsx as jsx12 } from "react/jsx-runtime";
2933
+ import { jsx as jsx14 } from "react/jsx-runtime";
2815
2934
  function InitialBadge({
2816
2935
  value,
2817
2936
  className
2818
2937
  }) {
2819
- return /* @__PURE__ */ jsx12(
2938
+ return /* @__PURE__ */ jsx14(
2820
2939
  "span",
2821
2940
  {
2822
2941
  "aria-hidden": true,
@@ -2831,7 +2950,7 @@ function InitialBadge({
2831
2950
  }
2832
2951
 
2833
2952
  // ../../apps/web/src/components/avatar.tsx
2834
- import { jsx as jsx13 } from "react/jsx-runtime";
2953
+ import { jsx as jsx15 } from "react/jsx-runtime";
2835
2954
  function Avatar({
2836
2955
  src,
2837
2956
  name,
@@ -2843,7 +2962,7 @@ function Avatar({
2843
2962
  const hasFailed = failedSrc !== null && failedSrc === src;
2844
2963
  const shape2 = "size-4.5 shrink-0 rounded-full";
2845
2964
  if (!src || hasFailed) {
2846
- return /* @__PURE__ */ jsx13(
2965
+ return /* @__PURE__ */ jsx15(
2847
2966
  InitialBadge,
2848
2967
  {
2849
2968
  value: name,
@@ -2851,7 +2970,7 @@ function Avatar({
2851
2970
  }
2852
2971
  );
2853
2972
  }
2854
- return /* @__PURE__ */ jsx13(
2973
+ return /* @__PURE__ */ jsx15(
2855
2974
  next_image_shim_default,
2856
2975
  {
2857
2976
  src,
@@ -2867,7 +2986,7 @@ function Avatar({
2867
2986
  }
2868
2987
 
2869
2988
  // ../../apps/web/src/components/support-widget/widget-avatar.tsx
2870
- import { jsx as jsx14 } from "react/jsx-runtime";
2989
+ import { jsx as jsx16 } from "react/jsx-runtime";
2871
2990
  function WidgetAvatar({
2872
2991
  agent,
2873
2992
  label,
@@ -2875,7 +2994,7 @@ function WidgetAvatar({
2875
2994
  }) {
2876
2995
  const shape2 = "size-7 shrink-0 rounded-lg";
2877
2996
  if (agent.kind === "ai" && !agent.avatarUrl) {
2878
- return /* @__PURE__ */ jsx14(
2997
+ return /* @__PURE__ */ jsx16(
2879
2998
  "span",
2880
2999
  {
2881
3000
  role: "img",
@@ -2885,17 +3004,17 @@ function WidgetAvatar({
2885
3004
  shape2,
2886
3005
  className
2887
3006
  ),
2888
- children: /* @__PURE__ */ jsx14(Sparkle, { className: "size-[55%]" })
3007
+ children: /* @__PURE__ */ jsx16(Sparkle, { className: "size-[55%]" })
2889
3008
  }
2890
3009
  );
2891
3010
  }
2892
- return /* @__PURE__ */ jsx14(
3011
+ return /* @__PURE__ */ jsx16(
2893
3012
  "span",
2894
3013
  {
2895
3014
  role: "img",
2896
3015
  "aria-label": label ?? agent.name,
2897
3016
  className: cn("inline-flex", shape2, className),
2898
- children: /* @__PURE__ */ jsx14(
3017
+ children: /* @__PURE__ */ jsx16(
2899
3018
  Avatar,
2900
3019
  {
2901
3020
  src: agent.avatarUrl,
@@ -2911,11 +3030,11 @@ function WidgetAvatarStack({
2911
3030
  className
2912
3031
  }) {
2913
3032
  if (team.length === 0) return null;
2914
- return /* @__PURE__ */ jsx14("div", { className: cn("flex items-center gap-1", className), children: team.map((agent) => /* @__PURE__ */ jsx14(WidgetAvatar, { agent, className: "size-8" }, agent.id)) });
3033
+ return /* @__PURE__ */ jsx16("div", { className: cn("flex items-center gap-1", className), children: team.map((agent) => /* @__PURE__ */ jsx16(WidgetAvatar, { agent, className: "size-8" }, agent.id)) });
2915
3034
  }
2916
3035
 
2917
3036
  // ../../apps/web/src/components/support-widget/widget-empty.tsx
2918
- import { jsx as jsx15, jsxs as jsxs6 } from "react/jsx-runtime";
3037
+ import { jsx as jsx17, jsxs as jsxs7 } from "react/jsx-runtime";
2919
3038
  var STARTERS = [
2920
3039
  {
2921
3040
  label: "Ask a question",
@@ -2941,19 +3060,19 @@ function WidgetEmpty({
2941
3060
  isWaiting = false
2942
3061
  }) {
2943
3062
  const agent = team.find((member) => member.kind === "ai") ?? team[0];
2944
- return /* @__PURE__ */ jsxs6("div", { className: "flex min-h-0 flex-1 flex-col items-center justify-center gap-4 px-5 pb-2 text-center", children: [
2945
- agent && /* @__PURE__ */ jsx15(
3063
+ return /* @__PURE__ */ jsxs7("div", { className: "flex min-h-0 flex-1 flex-col items-center justify-center gap-4 px-5 pb-2 text-center", children: [
3064
+ agent && /* @__PURE__ */ jsx17(
2946
3065
  WidgetAvatar,
2947
3066
  {
2948
3067
  agent,
2949
3068
  className: "size-14 animate-in rounded-2xl duration-500 ease-out fade-in-0 zoom-in-95 motion-reduce:animate-none"
2950
3069
  }
2951
3070
  ),
2952
- /* @__PURE__ */ jsxs6("div", { className: "flex max-w-64 animate-in flex-col gap-1 delay-150 duration-500 ease-out fade-in-0 slide-in-from-bottom-2 fill-mode-backwards motion-reduce:animate-none", children: [
2953
- agent && /* @__PURE__ */ jsx15("p", { className: "text-base font-semibold tracking-tight", children: agent.name }),
2954
- /* @__PURE__ */ jsx15("p", { className: "text-sm text-balance text-muted-foreground", children: orgName ? `Ask me anything about ${orgName}.` : "Ask me anything." })
3071
+ /* @__PURE__ */ jsxs7("div", { className: "flex max-w-64 animate-in flex-col gap-1 delay-150 duration-500 ease-out fade-in-0 slide-in-from-bottom-2 fill-mode-backwards motion-reduce:animate-none", children: [
3072
+ agent && /* @__PURE__ */ jsx17("p", { className: "text-base font-semibold tracking-tight", children: agent.name }),
3073
+ /* @__PURE__ */ jsx17("p", { className: "text-sm text-balance text-muted-foreground", children: orgName ? `Ask me anything about ${orgName}.` : "Ask me anything." })
2955
3074
  ] }),
2956
- onPick && /* @__PURE__ */ jsx15("div", { className: "flex w-full flex-col gap-1.5 pt-1", children: STARTERS.map((starter, index) => /* @__PURE__ */ jsxs6(
3075
+ onPick && /* @__PURE__ */ jsx17("div", { className: "flex w-full flex-col gap-1.5 pt-1", children: STARTERS.map((starter, index) => /* @__PURE__ */ jsxs7(
2957
3076
  WidgetButton,
2958
3077
  {
2959
3078
  type: "button",
@@ -2967,9 +3086,9 @@ function WidgetEmpty({
2967
3086
  "hover:border-foreground/15 hover:shadow-sm"
2968
3087
  ),
2969
3088
  children: [
2970
- /* @__PURE__ */ jsx15(starter.glyph, { className: "size-4 text-muted-foreground" }),
2971
- /* @__PURE__ */ jsx15("span", { className: "min-w-0 flex-1 truncate", children: starter.label }),
2972
- /* @__PURE__ */ jsx15(
3089
+ /* @__PURE__ */ jsx17(starter.glyph, { className: "size-4 text-muted-foreground" }),
3090
+ /* @__PURE__ */ jsx17("span", { className: "min-w-0 flex-1 truncate", children: starter.label }),
3091
+ /* @__PURE__ */ jsx17(
2973
3092
  CaretRight,
2974
3093
  {
2975
3094
  "aria-hidden": true,
@@ -2984,7 +3103,7 @@ function WidgetEmpty({
2984
3103
  }
2985
3104
 
2986
3105
  // ../../apps/web/src/components/support-widget/widget-header.tsx
2987
- import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
3106
+ import { jsx as jsx18, jsxs as jsxs8 } from "react/jsx-runtime";
2988
3107
  function WidgetHeader({
2989
3108
  presence,
2990
3109
  onClose,
@@ -2993,7 +3112,7 @@ function WidgetHeader({
2993
3112
  grabHandlers,
2994
3113
  isMoving = false
2995
3114
  }) {
2996
- return /* @__PURE__ */ jsxs7(
3115
+ return /* @__PURE__ */ jsxs8(
2997
3116
  "header",
2998
3117
  {
2999
3118
  ...grabHandlers,
@@ -3008,14 +3127,14 @@ function WidgetHeader({
3008
3127
  ]
3009
3128
  ),
3010
3129
  children: [
3011
- /* @__PURE__ */ jsxs7("div", { className: "flex min-w-0 flex-1 flex-col pt-0.5", children: [
3012
- /* @__PURE__ */ jsx16("h2", { className: "truncate text-base font-semibold tracking-tight", children: presence.name }),
3013
- /* @__PURE__ */ jsx16("p", { className: "truncate text-sm text-muted-foreground", children: presence.status })
3130
+ /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 flex-1 flex-col pt-0.5", children: [
3131
+ /* @__PURE__ */ jsx18("h2", { className: "truncate text-base font-semibold tracking-tight", children: presence.name }),
3132
+ /* @__PURE__ */ jsx18("p", { className: "truncate text-sm text-muted-foreground", children: presence.status })
3014
3133
  ] }),
3015
- /* @__PURE__ */ jsxs7("div", { className: "flex shrink-0 items-center gap-2", children: [
3016
- /* @__PURE__ */ jsx16(WidgetAvatarStack, { team: presence.team }),
3017
- /* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-0.5", children: [
3018
- onToggleExpanded && /* @__PURE__ */ jsx16(
3134
+ /* @__PURE__ */ jsxs8("div", { className: "flex shrink-0 items-center gap-2", children: [
3135
+ /* @__PURE__ */ jsx18(WidgetAvatarStack, { team: presence.team }),
3136
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-0.5", children: [
3137
+ onToggleExpanded && /* @__PURE__ */ jsx18(
3019
3138
  WidgetButton,
3020
3139
  {
3021
3140
  variant: "ghost",
@@ -3024,10 +3143,10 @@ function WidgetHeader({
3024
3143
  "aria-pressed": isExpanded,
3025
3144
  "aria-label": isExpanded ? "Shrink the panel" : "Expand the panel",
3026
3145
  className: "text-muted-foreground",
3027
- children: isExpanded ? /* @__PURE__ */ jsx16(ArrowsIn, {}) : /* @__PURE__ */ jsx16(ArrowsOut, {})
3146
+ children: isExpanded ? /* @__PURE__ */ jsx18(ArrowsIn, {}) : /* @__PURE__ */ jsx18(ArrowsOut, {})
3028
3147
  }
3029
3148
  ),
3030
- onClose && /* @__PURE__ */ jsx16(
3149
+ onClose && /* @__PURE__ */ jsx18(
3031
3150
  WidgetButton,
3032
3151
  {
3033
3152
  variant: "ghost",
@@ -3035,7 +3154,7 @@ function WidgetHeader({
3035
3154
  onClick: onClose,
3036
3155
  "aria-label": "Close support",
3037
3156
  className: "-mr-1 text-muted-foreground",
3038
- children: /* @__PURE__ */ jsx16(X, {})
3157
+ children: /* @__PURE__ */ jsx18(X, {})
3039
3158
  }
3040
3159
  )
3041
3160
  ] })
@@ -3046,45 +3165,26 @@ function WidgetHeader({
3046
3165
  }
3047
3166
 
3048
3167
  // ../../apps/web/src/components/support-widget/widget-loading.tsx
3049
- import { jsx as jsx17 } from "react/jsx-runtime";
3168
+ import { jsx as jsx19 } from "react/jsx-runtime";
3050
3169
  function WidgetLoading() {
3051
- return /* @__PURE__ */ jsx17("div", { className: "grid min-h-0 flex-1 place-items-center p-6", children: /* @__PURE__ */ jsx17(
3052
- "span",
3053
- {
3054
- role: "status",
3055
- "aria-label": "Loading the conversation",
3056
- style: {
3057
- maskImage: LOGO_MASK_URL,
3058
- maskSize: "contain",
3059
- maskRepeat: "no-repeat",
3060
- maskPosition: "center",
3061
- WebkitMaskImage: LOGO_MASK_URL,
3062
- WebkitMaskSize: "contain",
3063
- WebkitMaskRepeat: "no-repeat",
3064
- WebkitMaskPosition: "center",
3065
- backgroundImage: "linear-gradient(115deg, var(--muted) 34%, var(--muted-foreground) 50%, var(--muted) 66%)",
3066
- backgroundSize: "300% 100%"
3067
- },
3068
- className: "size-12 animate-shimmer motion-reduce:animate-none motion-reduce:bg-muted"
3069
- }
3070
- ) });
3170
+ return /* @__PURE__ */ jsx19("div", { className: "grid min-h-0 flex-1 place-items-center p-6", children: /* @__PURE__ */ jsx19(ShimmerLogo, { label: "Loading the conversation" }) });
3071
3171
  }
3072
3172
 
3073
3173
  // ../../apps/web/src/components/support-widget/widget-locked.tsx
3074
- import { jsx as jsx18, jsxs as jsxs8 } from "react/jsx-runtime";
3174
+ import { jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
3075
3175
  function WidgetLocked({
3076
3176
  orgName,
3077
3177
  onSignIn,
3078
3178
  showBadge = true
3079
3179
  }) {
3080
- return /* @__PURE__ */ jsxs8("div", { className: "flex min-h-0 flex-1 flex-col", children: [
3081
- /* @__PURE__ */ jsxs8("div", { className: "flex min-h-0 flex-1 flex-col items-center justify-center gap-4 px-6 text-center", children: [
3082
- /* @__PURE__ */ jsx18("span", { className: "grid size-14 animate-in place-items-center rounded-2xl bg-muted duration-500 ease-out fade-in-0 zoom-in-95 motion-reduce:animate-none", children: /* @__PURE__ */ jsx18(LockSimple, { className: "size-6 text-muted-foreground" }) }),
3083
- /* @__PURE__ */ jsxs8("div", { className: "flex max-w-64 animate-in flex-col gap-1 delay-150 duration-500 ease-out fade-in-0 slide-in-from-bottom-2 fill-mode-backwards motion-reduce:animate-none", children: [
3084
- /* @__PURE__ */ jsx18("p", { className: "text-base font-semibold tracking-tight", children: "Sign in to chat" }),
3085
- /* @__PURE__ */ jsx18("p", { className: "text-sm text-balance text-muted-foreground", children: orgName ? `Ask ${orgName} anything once you are signed in.` : "Ask us anything once you are signed in." })
3180
+ return /* @__PURE__ */ jsxs9("div", { className: "flex min-h-0 flex-1 flex-col", children: [
3181
+ /* @__PURE__ */ jsxs9("div", { className: "flex min-h-0 flex-1 flex-col items-center justify-center gap-4 px-6 text-center", children: [
3182
+ /* @__PURE__ */ jsx20("span", { className: "grid size-14 animate-in place-items-center rounded-2xl bg-muted duration-500 ease-out fade-in-0 zoom-in-95 motion-reduce:animate-none", children: /* @__PURE__ */ jsx20(LockSimple, { className: "size-6 text-muted-foreground" }) }),
3183
+ /* @__PURE__ */ jsxs9("div", { className: "flex max-w-64 animate-in flex-col gap-1 delay-150 duration-500 ease-out fade-in-0 slide-in-from-bottom-2 fill-mode-backwards motion-reduce:animate-none", children: [
3184
+ /* @__PURE__ */ jsx20("p", { className: "text-base font-semibold tracking-tight", children: "Sign in to chat" }),
3185
+ /* @__PURE__ */ jsx20("p", { className: "text-sm text-balance text-muted-foreground", children: orgName ? `Ask ${orgName} anything once you are signed in.` : "Ask us anything once you are signed in." })
3086
3186
  ] }),
3087
- onSignIn && /* @__PURE__ */ jsx18(
3187
+ onSignIn && /* @__PURE__ */ jsx20(
3088
3188
  WidgetButton,
3089
3189
  {
3090
3190
  onClick: onSignIn,
@@ -3093,12 +3193,12 @@ function WidgetLocked({
3093
3193
  }
3094
3194
  )
3095
3195
  ] }),
3096
- showBadge && /* @__PURE__ */ jsx18(PoweredByMedian, { className: "shrink-0 px-3 pb-3" })
3196
+ showBadge && /* @__PURE__ */ jsx20(PoweredByMedian, { className: "shrink-0 px-3 pb-3" })
3097
3197
  ] });
3098
3198
  }
3099
3199
 
3100
3200
  // ../../apps/web/src/components/ui/badge.tsx
3101
- import { jsx as jsx19 } from "react/jsx-runtime";
3201
+ import { jsx as jsx21 } from "react/jsx-runtime";
3102
3202
  var badgeVariants = cva(
3103
3203
  "inline-flex w-fit shrink-0 items-center gap-1 rounded-full px-2 py-0.5 text-xs font-medium whitespace-nowrap [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-3",
3104
3204
  {
@@ -3122,7 +3222,7 @@ function Badge({
3122
3222
  ...props
3123
3223
  }) {
3124
3224
  const Comp = asChild ? dist_exports.Root : "span";
3125
- return /* @__PURE__ */ jsx19(
3225
+ return /* @__PURE__ */ jsx21(
3126
3226
  Comp,
3127
3227
  {
3128
3228
  "data-slot": "badge",
@@ -3135,15 +3235,15 @@ function Badge({
3135
3235
 
3136
3236
  // ../../apps/web/src/components/support-widget/widget-attachments.tsx
3137
3237
  import { useState as useState7 } from "react";
3138
- import { Fragment as Fragment24, jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
3238
+ import { Fragment as Fragment25, jsx as jsx22, jsxs as jsxs10 } from "react/jsx-runtime";
3139
3239
  var SURFACE = "rounded-xl border border-foreground/10 bg-card/70";
3140
3240
  function OpenAttachment({
3141
3241
  attachment,
3142
3242
  className,
3143
3243
  children
3144
3244
  }) {
3145
- if (!attachment.url) return /* @__PURE__ */ jsx20(Fragment24, { children });
3146
- return /* @__PURE__ */ jsx20(
3245
+ if (!attachment.url) return /* @__PURE__ */ jsx22(Fragment25, { children });
3246
+ return /* @__PURE__ */ jsx22(
3147
3247
  "a",
3148
3248
  {
3149
3249
  href: attachment.url,
@@ -3165,7 +3265,7 @@ function MediaTile({
3165
3265
  }) {
3166
3266
  const [hasFailed, setHasFailed] = useState7(false);
3167
3267
  if (!attachment.previewUrl || hasFailed) {
3168
- return /* @__PURE__ */ jsxs9(
3268
+ return /* @__PURE__ */ jsxs10(
3169
3269
  "div",
3170
3270
  {
3171
3271
  className: cn(
@@ -3174,14 +3274,14 @@ function MediaTile({
3174
3274
  className
3175
3275
  ),
3176
3276
  children: [
3177
- /* @__PURE__ */ jsx20(ImageSquare, { className: "size-5 text-muted-foreground" }),
3178
- /* @__PURE__ */ jsx20("p", { className: "text-xs text-muted-foreground", children: "Preview unavailable" })
3277
+ /* @__PURE__ */ jsx22(ImageSquare, { className: "size-5 text-muted-foreground" }),
3278
+ /* @__PURE__ */ jsx22("p", { className: "text-xs text-muted-foreground", children: "Preview unavailable" })
3179
3279
  ]
3180
3280
  }
3181
3281
  );
3182
3282
  }
3183
- return /* @__PURE__ */ jsxs9("figure", { className: cn(SURFACE, "relative overflow-hidden", className), children: [
3184
- /* @__PURE__ */ jsx20(
3283
+ return /* @__PURE__ */ jsxs10("figure", { className: cn(SURFACE, "relative overflow-hidden", className), children: [
3284
+ /* @__PURE__ */ jsx22(
3185
3285
  "img",
3186
3286
  {
3187
3287
  src: attachment.previewUrl,
@@ -3193,22 +3293,22 @@ function MediaTile({
3193
3293
  className: "size-full object-cover"
3194
3294
  }
3195
3295
  ),
3196
- attachment.kind === "video" && /* @__PURE__ */ jsx20(
3296
+ attachment.kind === "video" && /* @__PURE__ */ jsx22(
3197
3297
  "span",
3198
3298
  {
3199
3299
  "aria-hidden": true,
3200
3300
  className: "absolute inset-0 grid place-items-center bg-foreground/15",
3201
- children: /* @__PURE__ */ jsx20("span", { className: "grid size-8 place-items-center rounded-full bg-background/85 shadow-sm", children: /* @__PURE__ */ jsx20(Play, { className: "size-3.5 translate-x-px" }) })
3301
+ children: /* @__PURE__ */ jsx22("span", { className: "grid size-8 place-items-center rounded-full bg-background/85 shadow-sm", children: /* @__PURE__ */ jsx22(Play, { className: "size-3.5 translate-x-px" }) })
3202
3302
  }
3203
3303
  )
3204
3304
  ] });
3205
3305
  }
3206
3306
  function FileRow({ attachment }) {
3207
- return /* @__PURE__ */ jsx20(OpenAttachment, { attachment, children: /* @__PURE__ */ jsxs9("div", { className: cn(SURFACE, "flex items-center gap-2 px-2 py-1.5"), children: [
3208
- /* @__PURE__ */ jsx20(File, { className: "size-4 shrink-0 text-muted-foreground" }),
3209
- /* @__PURE__ */ jsxs9("div", { className: "flex min-w-0 flex-1 flex-col text-left", children: [
3210
- /* @__PURE__ */ jsx20("p", { className: "truncate text-xs font-medium", children: attachment.name }),
3211
- /* @__PURE__ */ jsx20("p", { className: "truncate text-xs text-muted-foreground", children: attachment.size })
3307
+ return /* @__PURE__ */ jsx22(OpenAttachment, { attachment, children: /* @__PURE__ */ jsxs10("div", { className: cn(SURFACE, "flex items-center gap-2 px-2 py-1.5"), children: [
3308
+ /* @__PURE__ */ jsx22(File, { className: "size-4 shrink-0 text-muted-foreground" }),
3309
+ /* @__PURE__ */ jsxs10("div", { className: "flex min-w-0 flex-1 flex-col text-left", children: [
3310
+ /* @__PURE__ */ jsx22("p", { className: "truncate text-xs font-medium", children: attachment.name }),
3311
+ /* @__PURE__ */ jsx22("p", { className: "truncate text-xs text-muted-foreground", children: attachment.size })
3212
3312
  ] })
3213
3313
  ] }) });
3214
3314
  }
@@ -3217,23 +3317,23 @@ function WidgetAttachments({
3217
3317
  }) {
3218
3318
  const media = attachments.filter((one) => one.kind !== "file");
3219
3319
  const files = attachments.filter((one) => one.kind === "file");
3220
- return /* @__PURE__ */ jsxs9("div", { className: "flex w-56 max-w-full flex-col gap-1.5", children: [
3221
- media.length > 0 && /* @__PURE__ */ jsx20("div", { className: cn("grid gap-1.5", media.length > 1 && "grid-cols-2"), children: media.map((attachment) => /* @__PURE__ */ jsx20(
3320
+ return /* @__PURE__ */ jsxs10("div", { className: "flex w-56 max-w-full flex-col gap-1.5", children: [
3321
+ media.length > 0 && /* @__PURE__ */ jsx22("div", { className: cn("grid gap-1.5", media.length > 1 && "grid-cols-2"), children: media.map((attachment) => /* @__PURE__ */ jsx22(
3222
3322
  OpenAttachment,
3223
3323
  {
3224
3324
  attachment,
3225
3325
  className: media.length > 1 ? "h-20" : "h-32",
3226
- children: /* @__PURE__ */ jsx20(MediaTile, { attachment, className: "size-full" })
3326
+ children: /* @__PURE__ */ jsx22(MediaTile, { attachment, className: "size-full" })
3227
3327
  },
3228
3328
  attachment.id
3229
3329
  )) }),
3230
- files.map((attachment) => /* @__PURE__ */ jsx20(FileRow, { attachment }, attachment.id))
3330
+ files.map((attachment) => /* @__PURE__ */ jsx22(FileRow, { attachment }, attachment.id))
3231
3331
  ] });
3232
3332
  }
3233
3333
 
3234
3334
  // ../../apps/web/src/components/ui/morph-bubble.tsx
3235
3335
  import { useLayoutEffect as useLayoutEffect3, useRef as useRef8 } from "react";
3236
- import { jsx as jsx21 } from "react/jsx-runtime";
3336
+ import { jsx as jsx23 } from "react/jsx-runtime";
3237
3337
  var MORPH_MS = 260;
3238
3338
  var MORPH_EASING = "cubic-bezier(0.22, 1, 0.36, 1)";
3239
3339
  var CONTENT_FADE_MS = 140;
@@ -3302,17 +3402,17 @@ function MorphBubble({
3302
3402
  reveal.cancel();
3303
3403
  });
3304
3404
  }, [morphKey]);
3305
- return /* @__PURE__ */ jsx21("div", { ref: box, className: cn("overflow-hidden", className), children: /* @__PURE__ */ jsx21("div", { ref: content, className: contentClassName, children }) });
3405
+ return /* @__PURE__ */ jsx23("div", { ref: box, className: cn("overflow-hidden", className), children: /* @__PURE__ */ jsx23("div", { ref: content, className: contentClassName, children }) });
3306
3406
  }
3307
3407
 
3308
3408
  // ../../apps/web/src/components/support-widget/widget-bubble.tsx
3309
- import { jsx as jsx22 } from "react/jsx-runtime";
3409
+ import { jsx as jsx24 } from "react/jsx-runtime";
3310
3410
  function WidgetBubble({
3311
3411
  morphKey,
3312
3412
  className,
3313
3413
  children
3314
3414
  }) {
3315
- return /* @__PURE__ */ jsx22(
3415
+ return /* @__PURE__ */ jsx24(
3316
3416
  MorphBubble,
3317
3417
  {
3318
3418
  morphKey,
@@ -3325,24 +3425,24 @@ function WidgetBubble({
3325
3425
 
3326
3426
  // ../../apps/web/src/components/support-widget/widget-message-body.tsx
3327
3427
  import { Suspense } from "react";
3328
- import { jsx as jsx23 } from "react/jsx-runtime";
3428
+ import { jsx as jsx25 } from "react/jsx-runtime";
3329
3429
  function WidgetMessageBody({
3330
3430
  body,
3331
3431
  sender
3332
3432
  }) {
3333
3433
  const isReady = useMarkdownReady();
3334
- const plain = /* @__PURE__ */ jsx23("p", { className: "break-words whitespace-pre-line", children: body });
3434
+ const plain = /* @__PURE__ */ jsx25("p", { className: "break-words whitespace-pre-line", children: body });
3335
3435
  if (sender === "visitor" || !isReady) return plain;
3336
- return /* @__PURE__ */ jsx23(Suspense, { fallback: plain, children: /* @__PURE__ */ jsx23(MessageMarkdown, { body }) });
3436
+ return /* @__PURE__ */ jsx25(Suspense, { fallback: plain, children: /* @__PURE__ */ jsx25(MessageMarkdown, { body }) });
3337
3437
  }
3338
3438
 
3339
3439
  // ../../apps/web/src/components/support-widget/widget-typing.tsx
3340
- import { jsx as jsx24, jsxs as jsxs10 } from "react/jsx-runtime";
3440
+ import { jsx as jsx26, jsxs as jsxs11 } from "react/jsx-runtime";
3341
3441
  var DOTS = [0, 160, 320];
3342
3442
  function WidgetTyping({ label }) {
3343
- return /* @__PURE__ */ jsxs10("span", { className: "flex items-center gap-1 py-1.5", children: [
3344
- /* @__PURE__ */ jsx24("span", { className: "sr-only", children: label }),
3345
- DOTS.map((delay) => /* @__PURE__ */ jsx24(
3443
+ return /* @__PURE__ */ jsxs11("span", { className: "flex items-center gap-1 py-1.5", children: [
3444
+ /* @__PURE__ */ jsx26("span", { className: "sr-only", children: label }),
3445
+ DOTS.map((delay) => /* @__PURE__ */ jsx26(
3346
3446
  "span",
3347
3447
  {
3348
3448
  "aria-hidden": true,
@@ -3355,71 +3455,79 @@ function WidgetTyping({ label }) {
3355
3455
  }
3356
3456
 
3357
3457
  // ../../apps/web/src/components/support-widget/widget-message.tsx
3358
- import { Fragment as Fragment25, jsx as jsx25, jsxs as jsxs11 } from "react/jsx-runtime";
3458
+ import { Fragment as Fragment26, jsx as jsx27, jsxs as jsxs12 } from "react/jsx-runtime";
3359
3459
  var BUBBLE = "max-w-[80%] rounded-2xl px-3.5 py-2 text-sm";
3360
3460
  var VISITOR_BUBBLE = "bg-[color-mix(in_oklch,var(--muted),var(--foreground)_12%)]";
3361
3461
  var ARRIVES = "animate-in fade-in-0 slide-in-from-bottom-1 duration-200 ease-out motion-reduce:animate-none";
3362
3462
  function WidgetDivider({ message }) {
3363
3463
  const label = message.startsConversation ? "New conversation" : message.dayLabel;
3364
3464
  if (!label) return null;
3365
- return /* @__PURE__ */ jsxs11("div", { className: "flex items-center gap-3 py-1", children: [
3366
- /* @__PURE__ */ jsx25("span", { className: "h-px flex-1 bg-border" }),
3367
- /* @__PURE__ */ jsx25("span", { className: "text-xs text-muted-foreground", children: label }),
3368
- /* @__PURE__ */ jsx25("span", { className: "h-px flex-1 bg-border" })
3465
+ return /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-3 py-1", children: [
3466
+ /* @__PURE__ */ jsx27("span", { className: "h-px flex-1 bg-border" }),
3467
+ /* @__PURE__ */ jsx27("span", { className: "text-xs text-muted-foreground", children: label }),
3468
+ /* @__PURE__ */ jsx27("span", { className: "h-px flex-1 bg-border" })
3369
3469
  ] });
3370
3470
  }
3371
3471
  function WidgetMessage({
3372
3472
  message,
3373
- group = LONE_MESSAGE
3473
+ group = LONE_MESSAGE,
3474
+ onFollow
3374
3475
  }) {
3375
- return message.sender === "visitor" ? /* @__PURE__ */ jsx25(VisitorMessage, { message }) : /* @__PURE__ */ jsx25(AgentMessage, { message, group });
3476
+ return message.sender === "visitor" ? /* @__PURE__ */ jsx27(VisitorMessage, { message }) : /* @__PURE__ */ jsx27(AgentMessage, { message, group, onFollow });
3376
3477
  }
3377
3478
  function BubbleContent({ message }) {
3378
3479
  const hasAttachments = (message.attachments?.length ?? 0) > 0;
3379
3480
  if (message.pending) {
3380
- return /* @__PURE__ */ jsx25(
3481
+ return /* @__PURE__ */ jsx27(
3381
3482
  WidgetTyping,
3382
3483
  {
3383
3484
  label: `${message.agent?.name ?? "Support"} is writing a reply`
3384
3485
  }
3385
3486
  );
3386
3487
  }
3387
- return /* @__PURE__ */ jsxs11(Fragment25, { children: [
3388
- hasAttachments && /* @__PURE__ */ jsx25(WidgetAttachments, { attachments: message.attachments ?? [] }),
3389
- message.body && /* @__PURE__ */ jsx25(WidgetMessageBody, { body: message.body, sender: message.sender })
3488
+ return /* @__PURE__ */ jsxs12(Fragment26, { children: [
3489
+ hasAttachments && /* @__PURE__ */ jsx27(WidgetAttachments, { attachments: message.attachments ?? [] }),
3490
+ message.body && /* @__PURE__ */ jsx27(WidgetMessageBody, { body: message.body, sender: message.sender })
3390
3491
  ] });
3391
3492
  }
3392
3493
  function VisitorMessage({ message }) {
3393
- return /* @__PURE__ */ jsx25("div", { className: cn("flex justify-end", ARRIVES), children: /* @__PURE__ */ jsx25(WidgetBubble, { morphKey: "settled", className: cn(BUBBLE, VISITOR_BUBBLE), children: /* @__PURE__ */ jsx25(BubbleContent, { message }) }) });
3494
+ return /* @__PURE__ */ jsx27("div", { className: cn("flex justify-end", ARRIVES), children: /* @__PURE__ */ jsx27(WidgetBubble, { morphKey: "settled", className: cn(BUBBLE, VISITOR_BUBBLE), children: /* @__PURE__ */ jsx27(BubbleContent, { message }) }) });
3394
3495
  }
3395
3496
  function AgentMessage({
3396
3497
  message,
3397
- group
3498
+ group,
3499
+ onFollow
3398
3500
  }) {
3399
3501
  const { agent } = message;
3502
+ const destination = message.navigateTo === void 0 ? null : {
3503
+ key: message.id,
3504
+ path: message.navigateTo,
3505
+ highlight: message.highlight ?? null
3506
+ };
3400
3507
  return (
3401
3508
  // One line saying who and when, then the thing they said. The face used to
3402
3509
  // sit in a gutter beside the bubble with the name above it and the time
3403
3510
  // below, which spread four small things across three rows and pushed every
3404
3511
  // bubble in off the edge. All of it is one line now, and the bubble gets
3405
3512
  // the full width back.
3406
- /* @__PURE__ */ jsxs11("div", { className: cn("flex flex-col items-start gap-1", ARRIVES), children: [
3407
- group.isFirst && /* @__PURE__ */ jsxs11("div", { className: "flex max-w-full items-center gap-1.5 px-0.5", children: [
3408
- agent && /* @__PURE__ */ jsxs11(Fragment25, { children: [
3409
- /* @__PURE__ */ jsx25(WidgetAvatar, { agent, className: "size-5 rounded-md" }),
3410
- /* @__PURE__ */ jsx25("span", { className: "truncate text-xs font-medium", children: agent.name }),
3411
- agent.kind === "ai" && /* @__PURE__ */ jsx25(Badge, { variant: "muted", className: "shrink-0 rounded-md px-1", children: "AI" })
3513
+ /* @__PURE__ */ jsxs12("div", { className: cn("flex flex-col items-start gap-1", ARRIVES), children: [
3514
+ group.isFirst && /* @__PURE__ */ jsxs12("div", { className: "flex max-w-full items-center gap-1.5 px-0.5", children: [
3515
+ agent && /* @__PURE__ */ jsxs12(Fragment26, { children: [
3516
+ /* @__PURE__ */ jsx27(WidgetAvatar, { agent, className: "size-5 rounded-md" }),
3517
+ /* @__PURE__ */ jsx27("span", { className: "truncate text-xs font-medium", children: agent.name }),
3518
+ agent.kind === "ai" && /* @__PURE__ */ jsx27(Badge, { variant: "muted", className: "shrink-0 rounded-md px-1", children: "AI" })
3412
3519
  ] }),
3413
- !message.pending && /* @__PURE__ */ jsx25("span", { className: "shrink-0 text-xs text-muted-foreground tabular-nums", children: message.time })
3520
+ !message.pending && /* @__PURE__ */ jsx27("span", { className: "shrink-0 text-xs text-muted-foreground tabular-nums", children: message.time })
3414
3521
  ] }),
3415
- /* @__PURE__ */ jsx25(
3522
+ /* @__PURE__ */ jsx27(
3416
3523
  WidgetBubble,
3417
3524
  {
3418
3525
  morphKey: message.pending ? "pending" : `${message.body.length}:${message.attachments?.length ?? 0}`,
3419
3526
  className: cn(BUBBLE, "bg-muted"),
3420
- children: /* @__PURE__ */ jsx25(BubbleContent, { message })
3527
+ children: /* @__PURE__ */ jsx27(BubbleContent, { message })
3421
3528
  }
3422
- )
3529
+ ),
3530
+ destination !== null && onFollow !== void 0 && /* @__PURE__ */ jsx27("div", { className: "pt-1", children: /* @__PURE__ */ jsx27(WidgetDestination, { destination, onFollow }) })
3423
3531
  ] })
3424
3532
  );
3425
3533
  }
@@ -3428,7 +3536,7 @@ function AgentMessage({
3428
3536
  import { useEffect as useEffect7, useRef as useRef9, useState as useState8 } from "react";
3429
3537
 
3430
3538
  // ../../apps/web/src/components/ui/collapse.tsx
3431
- import { jsx as jsx26 } from "react/jsx-runtime";
3539
+ import { jsx as jsx28 } from "react/jsx-runtime";
3432
3540
  var COLLAPSE_MS = 200;
3433
3541
  function Collapse({
3434
3542
  isOpen,
@@ -3436,7 +3544,7 @@ function Collapse({
3436
3544
  children,
3437
3545
  className
3438
3546
  }) {
3439
- return /* @__PURE__ */ jsx26(
3547
+ return /* @__PURE__ */ jsx28(
3440
3548
  "div",
3441
3549
  {
3442
3550
  id,
@@ -3446,13 +3554,13 @@ function Collapse({
3446
3554
  isOpen ? "grid-rows-[1fr] opacity-100" : "grid-rows-[0fr] opacity-0",
3447
3555
  className
3448
3556
  ),
3449
- children: /* @__PURE__ */ jsx26("div", { className: "overflow-hidden", children })
3557
+ children: /* @__PURE__ */ jsx28("div", { className: "overflow-hidden", children })
3450
3558
  }
3451
3559
  );
3452
3560
  }
3453
3561
 
3454
3562
  // ../../apps/web/src/components/support-widget/widget-rating.tsx
3455
- import { jsx as jsx27, jsxs as jsxs12 } from "react/jsx-runtime";
3563
+ import { jsx as jsx29, jsxs as jsxs13 } from "react/jsx-runtime";
3456
3564
  var STARS = Array.from({ length: RATING_MAX_STARS }, (_, index) => index + 1);
3457
3565
  var THANKS_MS = 1400;
3458
3566
  var STAR_STAGGER_MS = 40;
@@ -3506,11 +3614,11 @@ function WidgetRating({ rating }) {
3506
3614
  setIsDone(true);
3507
3615
  later(THANKS_MS, leave);
3508
3616
  }
3509
- return /* @__PURE__ */ jsx27(Collapse, { isOpen, className: "shrink-0", children: /* @__PURE__ */ jsxs12("div", { className: "mx-3 mb-2 rounded-xl border bg-muted/40 px-3 dark:bg-muted/20", children: [
3510
- /* @__PURE__ */ jsx27(Collapse, { isOpen: !isDone, children: /* @__PURE__ */ jsxs12("div", { className: "py-2.5", children: [
3511
- /* @__PURE__ */ jsxs12("div", { className: "flex items-start justify-between gap-2", children: [
3512
- /* @__PURE__ */ jsx27("p", { className: "text-sm font-medium", children: picked === null ? "How did we do?" : "Thanks. Tell us more?" }),
3513
- /* @__PURE__ */ jsx27(
3617
+ return /* @__PURE__ */ jsx29(Collapse, { isOpen, className: "shrink-0", children: /* @__PURE__ */ jsxs13("div", { className: "mx-3 mb-2 rounded-xl border bg-muted/40 px-3 dark:bg-muted/20", children: [
3618
+ /* @__PURE__ */ jsx29(Collapse, { isOpen: !isDone, children: /* @__PURE__ */ jsxs13("div", { className: "py-2.5", children: [
3619
+ /* @__PURE__ */ jsxs13("div", { className: "flex items-start justify-between gap-2", children: [
3620
+ /* @__PURE__ */ jsx29("p", { className: "text-sm font-medium", children: picked === null ? "How did we do?" : "Thanks. Tell us more?" }),
3621
+ /* @__PURE__ */ jsx29(
3514
3622
  WidgetButton,
3515
3623
  {
3516
3624
  type: "button",
@@ -3523,14 +3631,14 @@ function WidgetRating({ rating }) {
3523
3631
  }
3524
3632
  )
3525
3633
  ] }),
3526
- /* @__PURE__ */ jsx27(
3634
+ /* @__PURE__ */ jsx29(
3527
3635
  "div",
3528
3636
  {
3529
3637
  role: "radiogroup",
3530
3638
  "aria-label": "How did we do?",
3531
3639
  className: "flex items-center justify-center gap-1 pt-1.5",
3532
3640
  onMouseLeave: () => setHovered(null),
3533
- children: STARS.map((value) => /* @__PURE__ */ jsx27(
3641
+ children: STARS.map((value) => /* @__PURE__ */ jsx29(
3534
3642
  "button",
3535
3643
  {
3536
3644
  type: "button",
@@ -3548,7 +3656,7 @@ function WidgetRating({ rating }) {
3548
3656
  "active:scale-95 disabled:pointer-events-none",
3549
3657
  "motion-reduce:transition-none"
3550
3658
  ),
3551
- children: /* @__PURE__ */ jsx27(
3659
+ children: /* @__PURE__ */ jsx29(
3552
3660
  Star,
3553
3661
  {
3554
3662
  style: {
@@ -3565,8 +3673,8 @@ function WidgetRating({ rating }) {
3565
3673
  ))
3566
3674
  }
3567
3675
  ),
3568
- /* @__PURE__ */ jsx27(Collapse, { isOpen: picked !== null, children: /* @__PURE__ */ jsxs12("div", { className: "flex flex-col gap-2 pt-2", children: [
3569
- /* @__PURE__ */ jsx27(
3676
+ /* @__PURE__ */ jsx29(Collapse, { isOpen: picked !== null, children: /* @__PURE__ */ jsxs13("div", { className: "flex flex-col gap-2 pt-2", children: [
3677
+ /* @__PURE__ */ jsx29(
3570
3678
  Textarea,
3571
3679
  {
3572
3680
  value: feedback,
@@ -3582,7 +3690,7 @@ function WidgetRating({ rating }) {
3582
3690
  )
3583
3691
  }
3584
3692
  ),
3585
- /* @__PURE__ */ jsx27(
3693
+ /* @__PURE__ */ jsx29(
3586
3694
  WidgetButton,
3587
3695
  {
3588
3696
  type: "button",
@@ -3594,23 +3702,23 @@ function WidgetRating({ rating }) {
3594
3702
  }
3595
3703
  )
3596
3704
  ] }) }),
3597
- /* @__PURE__ */ jsx27(Collapse, { isOpen: error !== null, children: /* @__PURE__ */ jsx27("p", { className: "pt-1.5 text-center text-xs text-destructive", children: error }) })
3705
+ /* @__PURE__ */ jsx29(Collapse, { isOpen: error !== null, children: /* @__PURE__ */ jsx29("p", { className: "pt-1.5 text-center text-xs text-destructive", children: error }) })
3598
3706
  ] }) }),
3599
- /* @__PURE__ */ jsx27(Collapse, { isOpen: isDone, children: /* @__PURE__ */ jsx27("p", { className: "py-3 text-center text-sm font-medium", children: "Thanks for the feedback." }) })
3707
+ /* @__PURE__ */ jsx29(Collapse, { isOpen: isDone, children: /* @__PURE__ */ jsx29("p", { className: "py-3 text-center text-sm font-medium", children: "Thanks for the feedback." }) })
3600
3708
  ] }) });
3601
3709
  }
3602
3710
 
3603
3711
  // ../../apps/web/src/components/support-widget/widget-status.tsx
3604
- import { jsx as jsx28, jsxs as jsxs13 } from "react/jsx-runtime";
3712
+ import { jsx as jsx30, jsxs as jsxs14 } from "react/jsx-runtime";
3605
3713
  function WidgetAwaitingHuman() {
3606
- return /* @__PURE__ */ jsxs13("p", { className: "flex animate-in items-center justify-center gap-1.5 px-4 pb-1 text-xs text-muted-foreground duration-200 ease-out fade-in-0 slide-in-from-bottom-1 motion-reduce:animate-none", children: [
3607
- /* @__PURE__ */ jsx28(UserCircle, { "aria-hidden": true, className: "size-3.5" }),
3714
+ return /* @__PURE__ */ jsxs14("p", { className: "flex animate-in items-center justify-center gap-1.5 px-4 pb-1 text-xs text-muted-foreground duration-200 ease-out fade-in-0 slide-in-from-bottom-1 motion-reduce:animate-none", children: [
3715
+ /* @__PURE__ */ jsx30(UserCircle, { "aria-hidden": true, className: "size-3.5" }),
3608
3716
  "Waiting for a teammate"
3609
3717
  ] });
3610
3718
  }
3611
3719
 
3612
3720
  // ../../apps/web/src/components/support-widget/support-widget.tsx
3613
- import { jsx as jsx29, jsxs as jsxs14 } from "react/jsx-runtime";
3721
+ import { jsx as jsx31, jsxs as jsxs15 } from "react/jsx-runtime";
3614
3722
  function joinsPreviousTurn(message, previous) {
3615
3723
  return !message.dayLabel && !message.startsConversation && message.sender === previous.sender && message.agent?.id === previous.agent?.id && withinRun(previous.sentAt, message.sentAt);
3616
3724
  }
@@ -3630,6 +3738,8 @@ function SupportWidget({
3630
3738
  isSending = false,
3631
3739
  awaitingHuman = false,
3632
3740
  rating,
3741
+ offer = null,
3742
+ onFollow,
3633
3743
  notice,
3634
3744
  showBadge = true,
3635
3745
  grabHandlers,
@@ -3637,7 +3747,7 @@ function SupportWidget({
3637
3747
  className
3638
3748
  }) {
3639
3749
  const stack = useStackShift(messages.length);
3640
- return /* @__PURE__ */ jsxs14(
3750
+ return /* @__PURE__ */ jsxs15(
3641
3751
  "section",
3642
3752
  {
3643
3753
  "aria-label": `${presence.name} support`,
@@ -3649,7 +3759,7 @@ function SupportWidget({
3649
3759
  className
3650
3760
  ),
3651
3761
  children: [
3652
- /* @__PURE__ */ jsx29(
3762
+ /* @__PURE__ */ jsx31(
3653
3763
  WidgetHeader,
3654
3764
  {
3655
3765
  presence,
@@ -3660,10 +3770,10 @@ function SupportWidget({
3660
3770
  isMoving
3661
3771
  }
3662
3772
  ),
3663
- isLoading ? /* @__PURE__ */ jsx29(WidgetLoading, {}) : isLocked ? (
3773
+ isLoading ? /* @__PURE__ */ jsx31(WidgetLoading, {}) : isLocked ? (
3664
3774
  /* After the loading rather than before it: the line names the host,
3665
3775
  so it waits for the name the same as everything else does. */
3666
- /* @__PURE__ */ jsx29(
3776
+ /* @__PURE__ */ jsx31(
3667
3777
  WidgetLocked,
3668
3778
  {
3669
3779
  orgName: presence.name,
@@ -3671,7 +3781,7 @@ function SupportWidget({
3671
3781
  showBadge
3672
3782
  }
3673
3783
  )
3674
- ) : /* @__PURE__ */ jsx29(
3784
+ ) : /* @__PURE__ */ jsx31(
3675
3785
  Conversation,
3676
3786
  {
3677
3787
  presence,
@@ -3683,6 +3793,8 @@ function SupportWidget({
3683
3793
  isSending,
3684
3794
  awaitingHuman,
3685
3795
  rating,
3796
+ offer,
3797
+ onFollow,
3686
3798
  notice,
3687
3799
  showBadge,
3688
3800
  stackRef: stack
@@ -3702,13 +3814,15 @@ function Conversation({
3702
3814
  isSending = false,
3703
3815
  awaitingHuman = false,
3704
3816
  rating,
3817
+ offer = null,
3818
+ onFollow,
3705
3819
  notice,
3706
3820
  showBadge,
3707
3821
  stackRef
3708
3822
  }) {
3709
3823
  const groups = groupMessages(messages, joinsPreviousTurn);
3710
- return /* @__PURE__ */ jsxs14("div", { className: "flex min-h-0 flex-1 flex-col animate-in fade-in-0 duration-500 ease-out motion-reduce:animate-none", children: [
3711
- messages.length === 0 ? /* @__PURE__ */ jsx29(
3824
+ return /* @__PURE__ */ jsxs15("div", { className: "flex min-h-0 flex-1 flex-col animate-in fade-in-0 duration-500 ease-out motion-reduce:animate-none", children: [
3825
+ messages.length === 0 ? /* @__PURE__ */ jsx31(
3712
3826
  WidgetEmpty,
3713
3827
  {
3714
3828
  team: presence.team,
@@ -3727,8 +3841,8 @@ function Conversation({
3727
3841
  so a scroller left alone slides the newest message under the
3728
3842
  composer and has to catch up afterwards. Following it is what the
3729
3843
  scroller stops easing for, so this tracks frame by frame. */
3730
- /* @__PURE__ */ jsx29(MessageScrollerProvider, { children: /* @__PURE__ */ jsxs14(MessageScroller, { className: "h-auto min-h-0 flex-1", children: [
3731
- /* @__PURE__ */ jsx29(
3844
+ /* @__PURE__ */ jsx31(MessageScrollerProvider, { children: /* @__PURE__ */ jsxs15(MessageScroller, { className: "h-auto min-h-0 flex-1", children: [
3845
+ /* @__PURE__ */ jsx31(
3732
3846
  MessageScrollerViewport,
3733
3847
  {
3734
3848
  role: "log",
@@ -3736,12 +3850,12 @@ function Conversation({
3736
3850
  "aria-relevant": "additions",
3737
3851
  "aria-label": "Conversation",
3738
3852
  className: "px-3 py-2",
3739
- children: /* @__PURE__ */ jsx29(
3853
+ children: /* @__PURE__ */ jsx31(
3740
3854
  MessageScrollerContent,
3741
3855
  {
3742
3856
  ref: stackRef,
3743
3857
  className: "justify-end gap-0",
3744
- children: messages.map((message, index) => /* @__PURE__ */ jsxs14(
3858
+ children: messages.map((message, index) => /* @__PURE__ */ jsxs15(
3745
3859
  MessageScrollerItem,
3746
3860
  {
3747
3861
  messageId: message.id,
@@ -3750,8 +3864,15 @@ function Conversation({
3750
3864
  groups[index].isFirst ? "pt-4" : "pt-1"
3751
3865
  ),
3752
3866
  children: [
3753
- /* @__PURE__ */ jsx29(WidgetDivider, { message }),
3754
- /* @__PURE__ */ jsx29(WidgetMessage, { message, group: groups[index] })
3867
+ /* @__PURE__ */ jsx31(WidgetDivider, { message }),
3868
+ /* @__PURE__ */ jsx31(
3869
+ WidgetMessage,
3870
+ {
3871
+ message,
3872
+ group: groups[index],
3873
+ onFollow
3874
+ }
3875
+ )
3755
3876
  ]
3756
3877
  },
3757
3878
  message.id
@@ -3760,13 +3881,14 @@ function Conversation({
3760
3881
  )
3761
3882
  }
3762
3883
  ),
3763
- /* @__PURE__ */ jsx29(MessageScrollerButton, {})
3884
+ /* @__PURE__ */ jsx31(MessageScrollerButton, {})
3764
3885
  ] }) })
3765
3886
  ),
3766
- rating && /* @__PURE__ */ jsx29(WidgetRating, { rating }),
3767
- awaitingHuman && /* @__PURE__ */ jsx29(WidgetAwaitingHuman, {}),
3768
- notice && /* @__PURE__ */ jsx29("p", { className: "animate-in px-4 pb-1 text-center text-xs text-destructive fade-in duration-150", children: notice }),
3769
- /* @__PURE__ */ jsx29(
3887
+ rating && /* @__PURE__ */ jsx31(WidgetRating, { rating }),
3888
+ offer !== null && onFollow !== void 0 && /* @__PURE__ */ jsx31("div", { className: "animate-in px-3 pb-1 duration-200 ease-out fade-in-0 slide-in-from-bottom-1 motion-reduce:animate-none", children: /* @__PURE__ */ jsx31(WidgetDestination, { destination: offer, onFollow }) }),
3889
+ awaitingHuman && /* @__PURE__ */ jsx31(WidgetAwaitingHuman, {}),
3890
+ notice && /* @__PURE__ */ jsx31("p", { className: "animate-in px-4 pb-1 text-center text-xs text-destructive fade-in duration-150", children: notice }),
3891
+ /* @__PURE__ */ jsx31(
3770
3892
  WidgetComposer,
3771
3893
  {
3772
3894
  onSend,
@@ -4047,10 +4169,33 @@ function clamp2(value, low, high) {
4047
4169
  return Math.min(Math.max(value, low), Math.max(low, high));
4048
4170
  }
4049
4171
 
4172
+ // ../../apps/web/src/components/support-widget/use-teaser-placement.ts
4173
+ import { useLayoutEffect as useLayoutEffect5, useState as useState10 } from "react";
4174
+ var ROOM_ABOVE_PX = 128;
4175
+ function useTeaserPlacement({
4176
+ buttonRef,
4177
+ enabled: enabled2,
4178
+ isMoving
4179
+ }) {
4180
+ const [placement, setPlacement] = useState10("above");
4181
+ useLayoutEffect5(() => {
4182
+ if (!enabled2 || isMoving) return;
4183
+ const measure = () => {
4184
+ const button = buttonRef.current;
4185
+ if (button === null) return;
4186
+ setPlacement(button.offsetTop < ROOM_ABOVE_PX ? "below" : "above");
4187
+ };
4188
+ measure();
4189
+ window.addEventListener("resize", measure);
4190
+ return () => window.removeEventListener("resize", measure);
4191
+ }, [buttonRef, enabled2, isMoving]);
4192
+ return placement;
4193
+ }
4194
+
4050
4195
  // ../../apps/web/src/components/support-widget/use-widget-sheet.ts
4051
4196
  import {
4052
- useLayoutEffect as useLayoutEffect5,
4053
- useState as useState10,
4197
+ useLayoutEffect as useLayoutEffect6,
4198
+ useState as useState11,
4054
4199
  useSyncExternalStore as useSyncExternalStore4
4055
4200
  } from "react";
4056
4201
 
@@ -4105,13 +4250,13 @@ function useWidgetSheet({
4105
4250
  isPhoneNow,
4106
4251
  isPhoneOnServer
4107
4252
  );
4108
- const [isFramed, setIsFramed] = useState10(false);
4109
- useLayoutEffect5(() => {
4253
+ const [isFramed, setIsFramed] = useState11(false);
4254
+ useLayoutEffect6(() => {
4110
4255
  setIsFramed(boxRef.current?.offsetParent != null);
4111
4256
  }, [boxRef, isPhone]);
4112
4257
  const isSheet = isPhone && !isFramed;
4113
4258
  const isUp = isSheet && isOpen;
4114
- useLayoutEffect5(() => {
4259
+ useLayoutEffect6(() => {
4115
4260
  if (!isUp) return;
4116
4261
  const panel = panelRef.current;
4117
4262
  const viewport = window.visualViewport;
@@ -4162,8 +4307,109 @@ function useWidgetSheet({
4162
4307
  return isSheet;
4163
4308
  }
4164
4309
 
4310
+ // ../../apps/web/src/components/support-widget/widget-teaser.tsx
4311
+ import { useState as useState12 } from "react";
4312
+
4313
+ // ../../apps/web/src/components/support-widget/plain-text.ts
4314
+ function plainTextOf(markdown) {
4315
+ return markdown.replace(/^\s*(?:```|~~~).*$/gm, "").replace(/\[([^\]]*)\]\([^)]*\)/g, "$1").replace(/[*`_~]/g, "").replace(/^\s*#{1,6}\s+/gm, "").replace(/^\s*[-+]\s+/gm, "").replace(/^\s*>\s?/gm, "").replace(/\s+/g, " ").trim();
4316
+ }
4317
+
4318
+ // ../../apps/web/src/components/support-widget/widget-teaser.tsx
4319
+ import { Fragment as Fragment27, jsx as jsx32, jsxs as jsxs16 } from "react/jsx-runtime";
4320
+ var WIDTH = "min(18rem, 100%)";
4321
+ var GAP = "0.5rem";
4322
+ function WidgetTeaser({
4323
+ message,
4324
+ isShown,
4325
+ side,
4326
+ placement,
4327
+ buttonY: buttonY2,
4328
+ buttonSize,
4329
+ onOpen,
4330
+ onDismiss
4331
+ }) {
4332
+ const [held, setHeld] = useState12(message);
4333
+ if (message !== null && message !== held) setHeld(message);
4334
+ const shown = message ?? held;
4335
+ if (shown === null) return null;
4336
+ const agent = shown.agent;
4337
+ const text = plainTextOf(shown.body);
4338
+ return /* @__PURE__ */ jsxs16(
4339
+ "div",
4340
+ {
4341
+ inert: !isShown,
4342
+ role: "status",
4343
+ "aria-live": "polite",
4344
+ style: {
4345
+ width: WIDTH,
4346
+ [side]: 0,
4347
+ ...placement === "above" ? { bottom: `calc(100% - ${buttonY2} + ${GAP})` } : { top: `calc(${buttonY2} + ${buttonSize} + ${GAP})` }
4348
+ },
4349
+ className: cn(
4350
+ "absolute",
4351
+ // Grows out of the corner nearest the button, so it reads as coming
4352
+ // from it rather than landing beside it.
4353
+ placement === "above" ? side === "right" ? "origin-bottom-right" : "origin-bottom-left" : side === "right" ? "origin-top-right" : "origin-top-left",
4354
+ "transition-[opacity,translate,scale] motion-reduce:transition-none",
4355
+ isShown ? [
4356
+ "pointer-events-auto opacity-100 duration-300 ease-spring",
4357
+ // The arrival, once. The transition above takes over after.
4358
+ "animate-in fade-in-0 zoom-in-95 duration-300 ease-spring motion-reduce:animate-none",
4359
+ placement === "above" ? "slide-in-from-bottom-2" : "slide-in-from-top-2"
4360
+ ] : "pointer-events-none scale-95 opacity-0 duration-150 ease-out-quint"
4361
+ ),
4362
+ children: [
4363
+ /* @__PURE__ */ jsxs16(
4364
+ "button",
4365
+ {
4366
+ type: "button",
4367
+ onClick: onOpen,
4368
+ "aria-label": agent ? `Read the reply from ${agent.name}` : "Read the reply",
4369
+ className: cn(
4370
+ // Its own radius scale, like the panel, so the app's token cannot
4371
+ // reshape a card that sits on somebody else's site.
4372
+ "block w-full rounded-xl border bg-card p-3 pr-9 text-left text-card-foreground shadow-lg [--radius:0.625rem]",
4373
+ "transition-[background-color,box-shadow] outline-none",
4374
+ "hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50",
4375
+ "cursor-pointer select-none"
4376
+ ),
4377
+ children: [
4378
+ /* @__PURE__ */ jsxs16("span", { className: "flex items-center gap-1.5", children: [
4379
+ agent && /* @__PURE__ */ jsxs16(Fragment27, { children: [
4380
+ /* @__PURE__ */ jsx32(WidgetAvatar, { agent, className: "size-5 rounded-md" }),
4381
+ /* @__PURE__ */ jsx32("span", { className: "truncate text-xs font-medium", children: agent.name }),
4382
+ agent.kind === "ai" && /* @__PURE__ */ jsx32(Badge, { variant: "muted", className: "shrink-0 rounded-md px-1", children: "AI" })
4383
+ ] }),
4384
+ /* @__PURE__ */ jsx32("span", { className: "ml-auto shrink-0 text-xs text-muted-foreground tabular-nums", children: shown.time })
4385
+ ] }),
4386
+ /* @__PURE__ */ jsx32("span", { className: "mt-1 line-clamp-2 block text-sm leading-snug", children: text.length > 0 ? text : "Sent a file" })
4387
+ ]
4388
+ }
4389
+ ),
4390
+ /* @__PURE__ */ jsx32(
4391
+ "button",
4392
+ {
4393
+ type: "button",
4394
+ onClick: onDismiss,
4395
+ "aria-label": "Dismiss",
4396
+ className: cn(
4397
+ "absolute top-2 right-2 grid size-6 place-items-center rounded-md",
4398
+ "text-muted-foreground transition-colors outline-none",
4399
+ "hover:bg-muted hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",
4400
+ "cursor-pointer"
4401
+ ),
4402
+ children: /* @__PURE__ */ jsx32(X, { className: "size-3.5" })
4403
+ }
4404
+ )
4405
+ ]
4406
+ },
4407
+ shown.id
4408
+ );
4409
+ }
4410
+
4165
4411
  // ../../apps/web/src/components/support-widget/widget-launcher.tsx
4166
- import { jsx as jsx30, jsxs as jsxs15 } from "react/jsx-runtime";
4412
+ import { jsx as jsx33, jsxs as jsxs17 } from "react/jsx-runtime";
4167
4413
  var DEFAULT_WIDTH = "24rem";
4168
4414
  var DEFAULT_HEIGHT = "34rem";
4169
4415
  var DEFAULT_BUTTON_SIZE = "3.5rem";
@@ -4206,7 +4452,11 @@ function SupportLauncher({
4206
4452
  isSending = false,
4207
4453
  awaitingHuman = false,
4208
4454
  rating,
4455
+ offer = null,
4456
+ onFollow,
4209
4457
  unreadCount = 0,
4458
+ teaser = null,
4459
+ onDismissTeaser,
4210
4460
  notice,
4211
4461
  showBadge = true,
4212
4462
  width = DEFAULT_WIDTH,
@@ -4220,10 +4470,10 @@ function SupportLauncher({
4220
4470
  onOpenChange,
4221
4471
  className
4222
4472
  }) {
4223
- const [uncontrolledOpen, setUncontrolledOpen] = useState11(defaultOpen);
4473
+ const [uncontrolledOpen, setUncontrolledOpen] = useState13(defaultOpen);
4224
4474
  const isOpen = open ?? uncontrolledOpen;
4225
4475
  const hasBubble = launcher === "bubble";
4226
- const [isExpanded, setExpanded] = useState11(false);
4476
+ const [isExpanded, setExpanded] = useState13(false);
4227
4477
  const launcherRef = useRef11(null);
4228
4478
  const panelRef = useRef11(null);
4229
4479
  const boxRef = useRef11(null);
@@ -4235,6 +4485,12 @@ function SupportLauncher({
4235
4485
  subject: isOpen ? "panel" : "button"
4236
4486
  });
4237
4487
  const isSheet = useWidgetSheet({ boxRef, panelRef, isOpen });
4488
+ const hasTeaser = teaser !== null && hasBubble;
4489
+ const teaserPlacement = useTeaserPlacement({
4490
+ buttonRef: launcherRef,
4491
+ enabled: hasTeaser,
4492
+ isMoving: drag.isMoving
4493
+ });
4238
4494
  const opener = useRef11(null);
4239
4495
  const wasOpen = useRef11(isOpen);
4240
4496
  const setOpen = useCallback7(
@@ -4245,6 +4501,13 @@ function SupportLauncher({
4245
4501
  [open, onOpenChange]
4246
4502
  );
4247
4503
  const close = useCallback7(() => setOpen(false), [setOpen]);
4504
+ const follow = useCallback7(
4505
+ (destination) => {
4506
+ onFollow?.(destination);
4507
+ if (isSheet) close();
4508
+ },
4509
+ [onFollow, isSheet, close]
4510
+ );
4248
4511
  useEffect10(() => {
4249
4512
  if (isOpen) warmMarkdown();
4250
4513
  }, [isOpen]);
@@ -4273,7 +4536,7 @@ function SupportLauncher({
4273
4536
  // The box is panel sized whether it is open or not, so it never lets a
4274
4537
  // click through to the host's page. Only what is actually on screen takes
4275
4538
  // pointer events back.
4276
- /* @__PURE__ */ jsxs15(
4539
+ /* @__PURE__ */ jsxs17(
4277
4540
  "div",
4278
4541
  {
4279
4542
  ref: boxRef,
@@ -4308,7 +4571,7 @@ function SupportLauncher({
4308
4571
  className
4309
4572
  ),
4310
4573
  children: [
4311
- !isSheet && /* @__PURE__ */ jsx30("div", { "aria-hidden": true, className: "absolute inset-0 drop-shadow-xl", children: /* @__PURE__ */ jsx30(
4574
+ !isSheet && /* @__PURE__ */ jsx33("div", { "aria-hidden": true, className: "absolute inset-0 drop-shadow-xl", children: /* @__PURE__ */ jsx33(
4312
4575
  "div",
4313
4576
  {
4314
4577
  style: shape(isOpen, buttonSize, drag.side, hasBubble),
@@ -4319,7 +4582,7 @@ function SupportLauncher({
4319
4582
  )
4320
4583
  }
4321
4584
  ) }),
4322
- /* @__PURE__ */ jsx30(
4585
+ /* @__PURE__ */ jsx33(
4323
4586
  "div",
4324
4587
  {
4325
4588
  ref: panelRef,
@@ -4338,7 +4601,7 @@ function SupportLauncher({
4338
4601
  ],
4339
4602
  isOpen && "pointer-events-auto"
4340
4603
  ),
4341
- children: /* @__PURE__ */ jsx30(
4604
+ children: /* @__PURE__ */ jsx33(
4342
4605
  SupportWidget,
4343
4606
  {
4344
4607
  presence,
@@ -4356,6 +4619,8 @@ function SupportLauncher({
4356
4619
  isSending,
4357
4620
  awaitingHuman,
4358
4621
  rating,
4622
+ offer,
4623
+ onFollow: onFollow === void 0 ? void 0 : follow,
4359
4624
  notice,
4360
4625
  showBadge,
4361
4626
  grabHandlers: isSheet ? void 0 : drag.dragHandlers,
@@ -4365,7 +4630,7 @@ function SupportLauncher({
4365
4630
  )
4366
4631
  }
4367
4632
  ),
4368
- hasBubble && /* @__PURE__ */ jsxs15(
4633
+ hasBubble && /* @__PURE__ */ jsxs17(
4369
4634
  "button",
4370
4635
  {
4371
4636
  ref: launcherRef,
@@ -4433,8 +4698,8 @@ function SupportLauncher({
4433
4698
  !isOpen && (drag.isMoving ? "cursor-grabbing" : "cursor-pointer active:scale-95")
4434
4699
  ),
4435
4700
  children: [
4436
- /* @__PURE__ */ jsx30(ChatCircleDots, { className: "size-6" }),
4437
- unreadCount > 0 && /* @__PURE__ */ jsx30(
4701
+ /* @__PURE__ */ jsx33(ChatCircleDots, { className: "size-6" }),
4702
+ unreadCount > 0 && /* @__PURE__ */ jsx33(
4438
4703
  "span",
4439
4704
  {
4440
4705
  "aria-hidden": true,
@@ -4449,6 +4714,19 @@ function SupportLauncher({
4449
4714
  )
4450
4715
  ]
4451
4716
  }
4717
+ ),
4718
+ hasBubble && /* @__PURE__ */ jsx33(
4719
+ WidgetTeaser,
4720
+ {
4721
+ message: teaser,
4722
+ isShown: hasTeaser && !isOpen,
4723
+ side: drag.side,
4724
+ placement: teaserPlacement,
4725
+ buttonY: buttonY(buttonSize),
4726
+ buttonSize,
4727
+ onOpen: () => setOpen(true),
4728
+ onDismiss: () => onDismissTeaser?.()
4729
+ }
4452
4730
  )
4453
4731
  ]
4454
4732
  }
@@ -4457,9 +4735,9 @@ function SupportLauncher({
4457
4735
  }
4458
4736
 
4459
4737
  // ../../apps/web/src/components/support-widget/widget-spotlight.tsx
4460
- import { useEffect as useEffect11, useRef as useRef12, useState as useState12 } from "react";
4738
+ import { useEffect as useEffect11, useRef as useRef12, useState as useState14 } from "react";
4461
4739
  import { createPortal } from "react-dom";
4462
- import { jsx as jsx31, jsxs as jsxs16 } from "react/jsx-runtime";
4740
+ import { jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
4463
4741
  var FIND_TIMEOUT_MS = 4e3;
4464
4742
  var HOLD_MS = 2600;
4465
4743
  var FADE_MS = 300;
@@ -4468,8 +4746,8 @@ function prefersReducedMotion3() {
4468
4746
  return window.matchMedia("(prefers-reduced-motion: reduce)").matches;
4469
4747
  }
4470
4748
  function WidgetSpotlight({ selector }) {
4471
- const [isShown, setIsShown] = useState12(false);
4472
- const [isLeaving, setIsLeaving] = useState12(false);
4749
+ const [isShown, setIsShown] = useState14(false);
4750
+ const [isLeaving, setIsLeaving] = useState14(false);
4473
4751
  const ring = useRef12(null);
4474
4752
  useEffect11(() => {
4475
4753
  let target = null;
@@ -4530,7 +4808,7 @@ function WidgetSpotlight({ selector }) {
4530
4808
  }, [selector]);
4531
4809
  if (!isShown || typeof document === "undefined") return null;
4532
4810
  return createPortal(
4533
- /* @__PURE__ */ jsxs16(
4811
+ /* @__PURE__ */ jsxs18(
4534
4812
  "div",
4535
4813
  {
4536
4814
  ref: ring,
@@ -4539,7 +4817,7 @@ function WidgetSpotlight({ selector }) {
4539
4817
  style: { zIndex: LAYER, top: 0, left: 0 },
4540
4818
  className: "pointer-events-none fixed",
4541
4819
  children: [
4542
- /* @__PURE__ */ jsx31(
4820
+ /* @__PURE__ */ jsx34(
4543
4821
  "span",
4544
4822
  {
4545
4823
  className: [
@@ -4550,7 +4828,7 @@ function WidgetSpotlight({ selector }) {
4550
4828
  ].join(" ")
4551
4829
  }
4552
4830
  ),
4553
- /* @__PURE__ */ jsx31(
4831
+ /* @__PURE__ */ jsx34(
4554
4832
  "span",
4555
4833
  {
4556
4834
  className: [
@@ -4567,55 +4845,6 @@ function WidgetSpotlight({ selector }) {
4567
4845
  );
4568
4846
  }
4569
4847
 
4570
- // ../../apps/web/src/components/support-widget/widget-toast.tsx
4571
- import { useEffect as useEffect12, useState as useState13 } from "react";
4572
- import { createPortal as createPortal2 } from "react-dom";
4573
- import { jsx as jsx32, jsxs as jsxs17 } from "react/jsx-runtime";
4574
- var STAY_MS = 5e3;
4575
- var MOVE_MS = 250;
4576
- var LAYER2 = 2147483001;
4577
- function WidgetToast({
4578
- agent,
4579
- children
4580
- }) {
4581
- const [isShown, setIsShown] = useState13(false);
4582
- useEffect12(() => {
4583
- const frame = requestAnimationFrame(() => setIsShown(true));
4584
- const timer = setTimeout(() => setIsShown(false), STAY_MS);
4585
- return () => {
4586
- cancelAnimationFrame(frame);
4587
- clearTimeout(timer);
4588
- };
4589
- }, []);
4590
- if (typeof document === "undefined") return null;
4591
- return createPortal2(
4592
- /* @__PURE__ */ jsxs17(
4593
- "div",
4594
- {
4595
- "data-median-widget": "",
4596
- style: { zIndex: LAYER2, transitionDuration: `${MOVE_MS}ms` },
4597
- role: "status",
4598
- "aria-live": "polite",
4599
- className: cn(
4600
- "pointer-events-none fixed bottom-4 left-1/2 flex max-w-[calc(100vw-2rem)] items-center gap-2",
4601
- "-translate-x-1/2 rounded-full border bg-card py-1.5 pr-4 pl-1.5 shadow-lg",
4602
- "text-sm text-card-foreground",
4603
- // `translate`, which is the property `translate-y-*` sets. Under
4604
- // `transform` the line used to arrive in one frame with only its
4605
- // opacity easing.
4606
- "transition-[opacity,translate] ease-out motion-reduce:transition-none",
4607
- isShown ? "translate-y-0 opacity-100" : "pointer-events-none translate-y-2 opacity-0"
4608
- ),
4609
- children: [
4610
- /* @__PURE__ */ jsx32(WidgetAvatar, { agent, className: "size-6 rounded-full" }),
4611
- /* @__PURE__ */ jsx32("span", { className: "truncate", children })
4612
- ]
4613
- }
4614
- ),
4615
- document.body
4616
- );
4617
- }
4618
-
4619
4848
  // ../../apps/web/src/components/support-widget/sdk/control.ts
4620
4849
  import { useSyncExternalStore as useSyncExternalStore9 } from "react";
4621
4850
 
@@ -4682,7 +4911,7 @@ function restoreCustomData(entries) {
4682
4911
  }
4683
4912
 
4684
4913
  // ../../apps/web/src/components/support-widget/sdk/open-store.ts
4685
- import { useCallback as useCallback8, useEffect as useEffect13, useSyncExternalStore as useSyncExternalStore5 } from "react";
4914
+ import { useCallback as useCallback8, useEffect as useEffect12, useSyncExternalStore as useSyncExternalStore5 } from "react";
4686
4915
  var isDevelopment = typeof process !== "undefined" && process.env.NODE_ENV === "development";
4687
4916
  function createOpenStore(component) {
4688
4917
  let requested = null;
@@ -4762,7 +4991,7 @@ function useOpenState(store3, {
4762
4991
  store3.readServerRequested
4763
4992
  );
4764
4993
  const isOpen = open ?? asked ?? defaultOpen;
4765
- useEffect13(() => {
4994
+ useEffect12(() => {
4766
4995
  store3.settle(isOpen);
4767
4996
  }, [store3, isOpen]);
4768
4997
  const setOpen = useCallback8(
@@ -4775,7 +5004,7 @@ function useOpenState(store3, {
4775
5004
  return [isOpen, setOpen];
4776
5005
  }
4777
5006
  function useRegister(store3) {
4778
- useEffect13(() => {
5007
+ useEffect12(() => {
4779
5008
  if (store3.countMounted() > 1 && isDevelopment) {
4780
5009
  console.warn(
4781
5010
  `Median: more than one <${store3.component}> is mounted. They share one open state and open together. Mount it once, near the root of your app.`
@@ -4987,7 +5216,7 @@ function cleanClientDiagnostics(input) {
4987
5216
  }
4988
5217
 
4989
5218
  // ../../apps/web/src/components/support-widget/sdk/diagnostics.ts
4990
- import { useCallback as useCallback9, useEffect as useEffect14, useRef as useRef13 } from "react";
5219
+ import { useCallback as useCallback9, useEffect as useEffect13, useRef as useRef13 } from "react";
4991
5220
  function settingsOf(option) {
4992
5221
  if (option === void 0 || option === false) return null;
4993
5222
  if (option === true) return { errors: true, network: false, console: false };
@@ -5124,12 +5353,12 @@ function useDiagnostics(option, appState) {
5124
5353
  const settings = settingsOf(option);
5125
5354
  const key = settings === null ? null : JSON.stringify(settings);
5126
5355
  const stateRef = useRef13(appState);
5127
- useEffect14(() => {
5356
+ useEffect13(() => {
5128
5357
  stateRef.current = appState;
5129
5358
  latestState = appState;
5130
5359
  });
5131
5360
  const sentAt = useRef13(null);
5132
- useEffect14(() => {
5361
+ useEffect13(() => {
5133
5362
  if (key === null) return;
5134
5363
  return collect(JSON.parse(key));
5135
5364
  }, [key]);
@@ -5143,7 +5372,7 @@ function useDiagnostics(option, appState) {
5143
5372
  }
5144
5373
 
5145
5374
  // ../../apps/web/src/components/support-widget/sdk/install.ts
5146
- import { useEffect as useEffect15 } from "react";
5375
+ import { useEffect as useEffect14 } from "react";
5147
5376
  var install = null;
5148
5377
  var listeners3 = /* @__PURE__ */ new Set();
5149
5378
  function rememberInstall(next) {
@@ -5165,7 +5394,7 @@ function hasInstall() {
5165
5394
  return install !== null;
5166
5395
  }
5167
5396
  function useRememberInstall(apiKey, user) {
5168
- useEffect15(() => {
5397
+ useEffect14(() => {
5169
5398
  rememberInstall({ apiKey, ...user ? { user } : {} });
5170
5399
  });
5171
5400
  }
@@ -5215,17 +5444,17 @@ function resetSessions() {
5215
5444
  import { useMutation, useQuery } from "convex/react";
5216
5445
  import {
5217
5446
  useCallback as useCallback11,
5218
- useEffect as useEffect17,
5447
+ useEffect as useEffect16,
5219
5448
  useMemo as useMemo2,
5220
- useState as useState15,
5449
+ useState as useState16,
5221
5450
  useSyncExternalStore as useSyncExternalStore7
5222
5451
  } from "react";
5223
5452
 
5224
5453
  // ../../apps/web/src/hooks/use-now.ts
5225
- import { useEffect as useEffect16, useState as useState14 } from "react";
5454
+ import { useEffect as useEffect15, useState as useState15 } from "react";
5226
5455
  function useNow(intervalMs = 3e4) {
5227
- const [now, setNow] = useState14(() => Date.now());
5228
- useEffect16(() => {
5456
+ const [now, setNow] = useState15(() => Date.now());
5457
+ useEffect15(() => {
5229
5458
  const timer = setInterval(() => setNow(Date.now()), intervalMs);
5230
5459
  return () => clearInterval(timer);
5231
5460
  }, [intervalMs]);
@@ -5341,31 +5570,44 @@ function writeSkippedRating(apiKey, conversationId) {
5341
5570
  }
5342
5571
  }
5343
5572
 
5344
- // ../../apps/web/src/components/support-widget/sdk/read-state.ts
5345
- var STORAGE_PREFIX3 = "median:read:";
5573
+ // ../../apps/web/src/components/support-widget/sdk/stamps.ts
5346
5574
  var inMemory2 = /* @__PURE__ */ new Map();
5347
- function readLastSeenAt(apiKey) {
5575
+ function keyOf(name, apiKey) {
5576
+ return `median:${name}:${apiKey}`;
5577
+ }
5578
+ function readStamp(name, apiKey) {
5348
5579
  if (typeof window === "undefined") return 0;
5580
+ const key = keyOf(name, apiKey);
5349
5581
  try {
5350
- const stored = window.localStorage.getItem(`${STORAGE_PREFIX3}${apiKey}`);
5582
+ const stored = window.localStorage.getItem(key);
5351
5583
  const at2 = stored === null ? Number.NaN : Number(stored);
5352
5584
  return Number.isFinite(at2) ? at2 : 0;
5353
5585
  } catch {
5354
- return inMemory2.get(apiKey) ?? 0;
5586
+ return inMemory2.get(key) ?? 0;
5355
5587
  }
5356
5588
  }
5357
- function writeLastSeenAt(apiKey, at2) {
5589
+ function writeStamp(name, apiKey, at2) {
5358
5590
  if (typeof window === "undefined") return;
5359
- inMemory2.set(apiKey, at2);
5591
+ const key = keyOf(name, apiKey);
5592
+ inMemory2.set(key, at2);
5360
5593
  try {
5361
- window.localStorage.setItem(`${STORAGE_PREFIX3}${apiKey}`, String(at2));
5594
+ window.localStorage.setItem(key, String(at2));
5362
5595
  } catch {
5363
5596
  }
5364
5597
  }
5365
5598
 
5599
+ // ../../apps/web/src/components/support-widget/sdk/read-state.ts
5600
+ var READ = "read";
5601
+ function readLastSeenAt(apiKey) {
5602
+ return readStamp(READ, apiKey);
5603
+ }
5604
+ function writeLastSeenAt(apiKey, at2) {
5605
+ writeStamp(READ, apiKey, at2);
5606
+ }
5607
+
5366
5608
  // ../../apps/web/src/components/support-widget/sdk/visitor-email.ts
5367
5609
  import { useCallback as useCallback10, useSyncExternalStore as useSyncExternalStore6 } from "react";
5368
- var STORAGE_PREFIX4 = "median:email:";
5610
+ var STORAGE_PREFIX3 = "median:email:";
5369
5611
  var inMemory3 = /* @__PURE__ */ new Map();
5370
5612
  var listeners5 = /* @__PURE__ */ new Set();
5371
5613
  function subscribeVisitorEmail(listener) {
@@ -5377,7 +5619,7 @@ function subscribeVisitorEmail(listener) {
5377
5619
  function readVisitorEmail(apiKey) {
5378
5620
  if (typeof window === "undefined") return null;
5379
5621
  try {
5380
- const stored = window.localStorage.getItem(`${STORAGE_PREFIX4}${apiKey}`);
5622
+ const stored = window.localStorage.getItem(`${STORAGE_PREFIX3}${apiKey}`);
5381
5623
  return stored && stored.length > 0 ? stored : null;
5382
5624
  } catch {
5383
5625
  return inMemory3.get(apiKey) ?? null;
@@ -5386,7 +5628,7 @@ function readVisitorEmail(apiKey) {
5386
5628
  function writeVisitorEmail(apiKey, email) {
5387
5629
  inMemory3.set(apiKey, email);
5388
5630
  try {
5389
- window.localStorage.setItem(`${STORAGE_PREFIX4}${apiKey}`, email);
5631
+ window.localStorage.setItem(`${STORAGE_PREFIX3}${apiKey}`, email);
5390
5632
  } catch {
5391
5633
  }
5392
5634
  for (const listener of listeners5) listener();
@@ -5398,7 +5640,7 @@ function resetVisitorEmails() {
5398
5640
  const stale = [];
5399
5641
  for (let i3 = 0; i3 < window.localStorage.length; i3 += 1) {
5400
5642
  const key = window.localStorage.key(i3);
5401
- if (key !== null && key.startsWith(STORAGE_PREFIX4)) stale.push(key);
5643
+ if (key !== null && key.startsWith(STORAGE_PREFIX3)) stale.push(key);
5402
5644
  }
5403
5645
  for (const key of stale) window.localStorage.removeItem(key);
5404
5646
  } catch {
@@ -5439,7 +5681,7 @@ var IDENTITY_COMPLAINTS = {
5439
5681
  unverified: "Median: the user hash passed to <MedianSupport> did not match. Sign the same string you pass as `user.id` with the Median key that produced this widget id. Until it matches, this visitor gets a conversation of their own on every device.",
5440
5682
  unconfigured: "Median: a user hash was passed to <MedianSupport>, but its widget id and hash came from different Median keys. Derive both from the same key."
5441
5683
  };
5442
- function useMedianThread(apiKey, user, telemetry = true, isLocked = false, diagnostics, appState, requireEmail = true) {
5684
+ function useMedianThread(apiKey, user, telemetry = true, isLocked = false, diagnostics, appState, requireEmail = true, messagePreview = true) {
5443
5685
  const sessionId = useSyncExternalStore7(
5444
5686
  subscribeSession,
5445
5687
  useCallback11(() => getOrCreateSessionId(apiKey), [apiKey]),
@@ -5463,7 +5705,7 @@ function useMedianThread(apiKey, user, telemetry = true, isLocked = false, diagn
5463
5705
  () => identityKey === null ? null : JSON.parse(identityKey),
5464
5706
  [identityKey]
5465
5707
  );
5466
- useEffect17(() => {
5708
+ useEffect16(() => {
5467
5709
  if (sessionId === null || identity === null) return;
5468
5710
  const { facts, claim } = splitIdentity(identity);
5469
5711
  identify({
@@ -5482,8 +5724,8 @@ function useMedianThread(apiKey, user, telemetry = true, isLocked = false, diagn
5482
5724
  ) ?? false;
5483
5725
  const now = useNow(hasLiveDots ? 1e3 : 6e4);
5484
5726
  const takeDiagnostics = useDiagnostics(diagnostics, appState);
5485
- const [isSending, setIsSending] = useState15(false);
5486
- const [sendError, setSendError] = useState15(null);
5727
+ const [isSending, setIsSending] = useState16(false);
5728
+ const [sendError, setSendError] = useState16(null);
5487
5729
  const agent = useMemo2(
5488
5730
  () => config === void 0 ? null : {
5489
5731
  id: "median-agent",
@@ -5556,15 +5798,17 @@ function useMedianThread(apiKey, user, telemetry = true, isLocked = false, diagn
5556
5798
  team: [...[...humans.values()].slice(-2), agent]
5557
5799
  };
5558
5800
  }, [config, agent, messages]);
5559
- const [lastSeenAt, setLastSeenAt] = useState15(() => readLastSeenAt(apiKey));
5560
- const unreadCount = useMemo2(
5801
+ const [lastSeenAt, setLastSeenAt] = useState16(() => readLastSeenAt(apiKey));
5802
+ const unread = useMemo2(
5561
5803
  () => messages.filter(
5562
5804
  (message) => message.sender === "agent" && !message.pending && (message.sentAt ?? 0) > lastSeenAt
5563
- ).length,
5805
+ ),
5564
5806
  [messages, lastSeenAt]
5565
5807
  );
5566
- const [picked, setPicked] = useState15(null);
5567
- const [skipped, setSkipped] = useState15(
5808
+ const unreadCount = unread.length;
5809
+ const latestUnread = messagePreview && (config?.messagePreview ?? true) ? unread[unread.length - 1] ?? null : null;
5810
+ const [picked, setPicked] = useState16(null);
5811
+ const [skipped, setSkipped] = useState16(
5568
5812
  () => readSkippedRatings(apiKey)
5569
5813
  );
5570
5814
  const conversationId = thread?.conversationId ?? null;
@@ -5604,7 +5848,7 @@ function useMedianThread(apiKey, user, telemetry = true, isLocked = false, diagn
5604
5848
  const custom = takeCustomData();
5605
5849
  try {
5606
5850
  const attachments = await uploadAttachments(
5607
- () => generateUploadUrl({ apiKey }),
5851
+ () => generateUploadUrl({ apiKey, sessionId }),
5608
5852
  files
5609
5853
  );
5610
5854
  const context = telemetry ? collectContext() : void 0;
@@ -5676,6 +5920,8 @@ function useMedianThread(apiKey, user, telemetry = true, isLocked = false, diagn
5676
5920
  rating,
5677
5921
  /** Replies that arrived while they were not looking. */
5678
5922
  unreadCount,
5923
+ /** The newest of those, for the card on the closed button. */
5924
+ latestUnread,
5679
5925
  markSeen,
5680
5926
  /** Say the panel is on screen, so replies are not also emailed. */
5681
5927
  reportPresence,
@@ -5890,7 +6136,7 @@ var MedianErrorBoundary = class extends Component {
5890
6136
  };
5891
6137
 
5892
6138
  // ../../apps/web/src/components/support-widget/sdk/use-identity.ts
5893
- import { useEffect as useEffect18, useState as useState16 } from "react";
6139
+ import { useEffect as useEffect17, useState as useState17 } from "react";
5894
6140
  var NOTHING = {
5895
6141
  apiKey: void 0,
5896
6142
  user: void 0,
@@ -5919,7 +6165,7 @@ function read3(endpoint) {
5919
6165
  return request;
5920
6166
  }
5921
6167
  function useMissingCredentials(component, apiKey, endpoint) {
5922
- useEffect18(() => {
6168
+ useEffect17(() => {
5923
6169
  if (apiKey !== void 0 || endpoint !== void 0) return;
5924
6170
  console.error(
5925
6171
  `Median: <${component}> was given neither apiKey nor identity, so nothing is on the page. Pass the median_pk_ id from publicKeyFromMedianKey(MEDIAN_KEY), or the path of a route built with medianIdentity().`
@@ -5927,8 +6173,8 @@ function useMissingCredentials(component, apiKey, endpoint) {
5927
6173
  }, [component, apiKey, endpoint]);
5928
6174
  }
5929
6175
  function useMedianIdentity(endpoint) {
5930
- const [answered, setAnswered] = useState16(null);
5931
- useEffect18(() => {
6176
+ const [answered, setAnswered] = useState17(null);
6177
+ useEffect17(() => {
5932
6178
  if (endpoint === void 0) return;
5933
6179
  let listening = true;
5934
6180
  void (async () => {
@@ -6281,7 +6527,7 @@ function play(sound = "chime", options) {
6281
6527
  }
6282
6528
 
6283
6529
  // ../../apps/web/src/components/support-widget/sdk/use-message-sound.ts
6284
- import { useEffect as useEffect19, useRef as useRef14 } from "react";
6530
+ import { useEffect as useEffect18, useRef as useRef14 } from "react";
6285
6531
  var ARRIVAL_VOLUME = 0.45;
6286
6532
  function useMessageSound({
6287
6533
  messages,
@@ -6290,7 +6536,7 @@ function useMessageSound({
6290
6536
  }) {
6291
6537
  const heard = useRef14(null);
6292
6538
  const watching = useRef14(null);
6293
- useEffect19(() => {
6539
+ useEffect18(() => {
6294
6540
  if (isLoading) {
6295
6541
  heard.current = null;
6296
6542
  return;
@@ -6314,9 +6560,13 @@ function useMessageSound({
6314
6560
  }
6315
6561
 
6316
6562
  // ../../apps/web/src/components/support-widget/sdk/use-navigation.ts
6317
- import { useLayoutEffect as useLayoutEffect6, useRef as useRef15, useState as useState17 } from "react";
6563
+ import { useCallback as useCallback12, useEffect as useEffect19, useLayoutEffect as useLayoutEffect7, useRef as useRef15, useState as useState18 } from "react";
6318
6564
  var isDevelopment2 = typeof process !== "undefined" && process.env.NODE_ENV === "development";
6319
6565
  var STALE_AFTER_MS = 5 * 60 * 1e3;
6566
+ function isFresh(at2) {
6567
+ const age = Date.now() - at2;
6568
+ return Number.isFinite(age) && age <= STALE_AFTER_MS;
6569
+ }
6320
6570
  function pathOnThisSite(destination) {
6321
6571
  if (typeof window === "undefined") return null;
6322
6572
  if (!destination.startsWith("/")) return null;
@@ -6329,19 +6579,22 @@ function pathOnThisSite(destination) {
6329
6579
  if (url.origin !== window.location.origin) return null;
6330
6580
  return `${url.pathname}${url.search}${url.hash}`;
6331
6581
  }
6332
- function directed(messages, ask) {
6333
- const asked = messages.filter(
6334
- (message) => message.navigateTo !== void 0 || message.highlight !== void 0
6335
- ).map((message) => ({
6336
- key: message.id,
6337
- // Canned content may leave the clock off, and a message with no time on
6338
- // it reads as old here rather than as now. Nothing that moves a page
6339
- // should be doing it on a guess.
6340
- at: message.sentAt ?? 0,
6341
- navigateTo: message.navigateTo ?? null,
6342
- highlight: message.highlight ?? null
6343
- }));
6344
- if (ask !== null) asked.push(ask);
6582
+ function ringing(messages, ask) {
6583
+ const asked = [];
6584
+ for (const message of messages) {
6585
+ if (message.highlight === void 0) continue;
6586
+ if (message.navigateTo !== void 0) continue;
6587
+ asked.push({
6588
+ key: message.id,
6589
+ // Canned content may leave the clock off, and a message with no time on
6590
+ // it reads as old here rather than as now.
6591
+ at: message.sentAt ?? 0,
6592
+ selector: message.highlight
6593
+ });
6594
+ }
6595
+ if (ask !== null && ask.highlight !== null && ask.navigateTo === null) {
6596
+ asked.push({ key: ask.key, at: ask.at, selector: ask.highlight });
6597
+ }
6345
6598
  return asked;
6346
6599
  }
6347
6600
  function useSupportNavigation({
@@ -6353,10 +6606,34 @@ function useSupportNavigation({
6353
6606
  }) {
6354
6607
  const seen = useRef15(null);
6355
6608
  const watching = useRef15(null);
6356
- const [direction, setDirection] = useState17(null);
6357
- useLayoutEffect6(() => {
6609
+ const [spotlight, setSpotlight] = useState18(null);
6610
+ const drawn = useRef15(0);
6611
+ const [taken, setTaken] = useState18(null);
6612
+ const follow = useCallback12(
6613
+ (destination) => {
6614
+ if (onNavigate === void 0) return;
6615
+ const path = pathOnThisSite(destination.path);
6616
+ if (path === null) {
6617
+ console.error(
6618
+ `Median: refused to navigate to ${destination.path}, which is not a path on this site.`
6619
+ );
6620
+ return;
6621
+ }
6622
+ onNavigate(path);
6623
+ setTaken(destination.key);
6624
+ if (destination.highlight !== null) {
6625
+ drawn.current += 1;
6626
+ setSpotlight({
6627
+ key: `${destination.key}:${drawn.current}`,
6628
+ selector: destination.highlight
6629
+ });
6630
+ }
6631
+ },
6632
+ [onNavigate]
6633
+ );
6634
+ useLayoutEffect7(() => {
6358
6635
  if (isLoading) return;
6359
- const asked = directed(messages, ask);
6636
+ const asked = ringing(messages, ask);
6360
6637
  if (seen.current === null || watching.current !== conversationId) {
6361
6638
  seen.current = new Set(asked.map((one) => one.key));
6362
6639
  watching.current = conversationId;
@@ -6366,51 +6643,73 @@ function useSupportNavigation({
6366
6643
  for (const one of asked) {
6367
6644
  if (seen.current.has(one.key)) continue;
6368
6645
  seen.current.add(one.key);
6369
- const age = Date.now() - one.at;
6370
- if (!Number.isFinite(age) || age > STALE_AFTER_MS) continue;
6371
- let didNavigate = false;
6372
- const destination = one.navigateTo;
6373
- if (destination !== null) {
6374
- const path = pathOnThisSite(destination);
6375
- if (onNavigate === void 0) {
6376
- if (isDevelopment2) {
6377
- console.warn(
6378
- `Median: a tool asked to take this visitor to ${destination}, but <MedianSupport> has no onNavigate. Pass one, such as onNavigate={router.push}, or the tool cannot move anybody.`
6379
- );
6380
- }
6381
- } else if (path === null) {
6382
- console.error(
6383
- `Median: refused to navigate to ${destination}, which is not a path on this site.`
6384
- );
6385
- } else {
6386
- onNavigate(path);
6387
- didNavigate = true;
6388
- }
6389
- }
6390
- latest = { key: one.key, didNavigate, selector: one.highlight };
6646
+ if (!isFresh(one.at)) continue;
6647
+ drawn.current += 1;
6648
+ latest = { key: `${one.key}:${drawn.current}`, selector: one.selector };
6391
6649
  }
6392
- let frame = 0;
6393
- if (latest !== null) {
6394
- const announced = latest;
6395
- frame = requestAnimationFrame(() => setDirection(announced));
6396
- }
6397
- return () => cancelAnimationFrame(frame);
6398
- }, [messages, ask, conversationId, isLoading, onNavigate]);
6399
- return direction;
6650
+ if (latest !== null) setSpotlight(latest);
6651
+ }, [messages, ask, conversationId, isLoading]);
6652
+ const warned = useRef15(false);
6653
+ useEffect19(() => {
6654
+ if (!isDevelopment2 || onNavigate !== void 0 || warned.current) return;
6655
+ const offered = messages.some((message) => message.navigateTo !== void 0) || ask?.navigateTo != null;
6656
+ if (!offered) return;
6657
+ warned.current = true;
6658
+ console.warn(
6659
+ "Median: a tool offered to take this visitor to a page, but <MedianSupport> has no onNavigate, so no button is shown for it. Pass one, such as onNavigate={router.push}."
6660
+ );
6661
+ }, [messages, ask, onNavigate]);
6662
+ const [, expire] = useState18(0);
6663
+ useEffect19(() => {
6664
+ if (ask === null || ask.navigateTo === null) return;
6665
+ const left = ask.at + STALE_AFTER_MS - Date.now();
6666
+ if (left <= 0) return;
6667
+ const timer = setTimeout(() => expire((count) => count + 1), left);
6668
+ return () => clearTimeout(timer);
6669
+ }, [ask]);
6670
+ const offer = ask !== null && ask.navigateTo !== null && ask.key !== taken && onNavigate !== void 0 && isFresh(ask.at) ? { key: ask.key, path: ask.navigateTo, highlight: ask.highlight } : null;
6671
+ return { spotlight, offer, follow };
6672
+ }
6673
+
6674
+ // ../../apps/web/src/components/support-widget/sdk/use-teaser.ts
6675
+ import { useCallback as useCallback13, useState as useState19 } from "react";
6676
+
6677
+ // ../../apps/web/src/components/support-widget/sdk/teaser-state.ts
6678
+ var TEASER = "teaser";
6679
+ function readTeaserDismissedAt(apiKey) {
6680
+ return readStamp(TEASER, apiKey);
6681
+ }
6682
+ function writeTeaserDismissedAt(apiKey, at2) {
6683
+ writeStamp(TEASER, apiKey, at2);
6684
+ }
6685
+
6686
+ // ../../apps/web/src/components/support-widget/sdk/use-teaser.ts
6687
+ function useTeaser(apiKey, latestUnread) {
6688
+ const [dismissedAt, setDismissedAt] = useState19(
6689
+ () => readTeaserDismissedAt(apiKey)
6690
+ );
6691
+ const teaser = latestUnread !== null && (latestUnread.sentAt ?? 0) > dismissedAt ? latestUnread : null;
6692
+ const dismiss = useCallback13(() => {
6693
+ if (teaser === null) return;
6694
+ const at2 = teaser.sentAt ?? Date.now();
6695
+ writeTeaserDismissedAt(apiKey, at2);
6696
+ setDismissedAt(at2);
6697
+ }, [apiKey, teaser]);
6698
+ return { teaser, dismiss };
6400
6699
  }
6401
6700
 
6402
6701
  // ../../apps/web/src/components/support-widget/sdk/median-support.tsx
6403
- import { Fragment as Fragment26, jsx as jsx33, jsxs as jsxs18 } from "react/jsx-runtime";
6702
+ import { Fragment as Fragment28, jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
6404
6703
  var PRESENCE_BEAT_MS = 45e3;
6405
6704
  function MedianSupport(props) {
6406
- return /* @__PURE__ */ jsx33(MedianSupportPreview, { ...props });
6705
+ return /* @__PURE__ */ jsx35(MedianSupportPreview, { ...props });
6407
6706
  }
6408
6707
  function MedianSupportPreview({
6409
6708
  defaultOpen = false,
6410
6709
  className,
6411
6710
  ...props
6412
6711
  }) {
6413
- return /* @__PURE__ */ jsx33(MedianErrorBoundary, { children: /* @__PURE__ */ jsx33(
6712
+ return /* @__PURE__ */ jsx35(MedianErrorBoundary, { children: /* @__PURE__ */ jsx35(
6414
6713
  MedianIdentity,
6415
6714
  {
6416
6715
  ...props,
@@ -6424,7 +6723,7 @@ function MedianIdentity({ apiKey, identity, user, ...rest }) {
6424
6723
  useMissingCredentials("MedianSupport", apiKey, identity);
6425
6724
  const key = apiKey ?? resolved.apiKey;
6426
6725
  if (key === void 0) return null;
6427
- return /* @__PURE__ */ jsx33(
6726
+ return /* @__PURE__ */ jsx35(
6428
6727
  MedianConnection,
6429
6728
  {
6430
6729
  ...rest,
@@ -6444,7 +6743,7 @@ function useApiKeyShapeWarning(apiKey) {
6444
6743
  }, [apiKey]);
6445
6744
  }
6446
6745
  function MedianConnection(props) {
6447
- const [client2] = useState18(() => {
6746
+ const [client2] = useState20(() => {
6448
6747
  if (!MEDIAN_DEPLOYMENT_URL) {
6449
6748
  throw new Error(
6450
6749
  "The Median widget was built without a deployment URL. Set NEXT_PUBLIC_CONVEX_URL."
@@ -6452,7 +6751,7 @@ function MedianConnection(props) {
6452
6751
  }
6453
6752
  return new ConvexReactClient(MEDIAN_DEPLOYMENT_URL);
6454
6753
  });
6455
- return /* @__PURE__ */ jsx33(ConvexProvider, { client: client2, children: /* @__PURE__ */ jsx33(MedianLauncher, { ...props }) });
6754
+ return /* @__PURE__ */ jsx35(ConvexProvider, { client: client2, children: /* @__PURE__ */ jsx35(MedianLauncher, { ...props }) });
6456
6755
  }
6457
6756
  function MedianLauncher({
6458
6757
  apiKey,
@@ -6463,6 +6762,7 @@ function MedianLauncher({
6463
6762
  requireSignIn = false,
6464
6763
  onSignIn,
6465
6764
  requireEmail = true,
6765
+ messagePreview = true,
6466
6766
  launcher,
6467
6767
  defaultOpen,
6468
6768
  open,
@@ -6492,6 +6792,7 @@ function MedianLauncher({
6492
6792
  awaitingHuman,
6493
6793
  rating,
6494
6794
  unreadCount,
6795
+ latestUnread,
6495
6796
  markSeen,
6496
6797
  reportPresence,
6497
6798
  sendError,
@@ -6504,8 +6805,10 @@ function MedianLauncher({
6504
6805
  isLocked,
6505
6806
  diagnostics,
6506
6807
  appState,
6507
- requireEmail
6808
+ requireEmail,
6809
+ messagePreview
6508
6810
  );
6811
+ const { teaser, dismiss: dismissTeaser } = useTeaser(apiKey, latestUnread);
6509
6812
  const isSettling = isLoading || isResolvingIdentity;
6510
6813
  useEffect20(() => {
6511
6814
  if (isOpen) markSeen();
@@ -6529,7 +6832,7 @@ function MedianLauncher({
6529
6832
  window.removeEventListener("focus", beat);
6530
6833
  };
6531
6834
  }, [isOpen, reportPresence]);
6532
- const direction = useSupportNavigation({
6835
+ const { spotlight, offer, follow } = useSupportNavigation({
6533
6836
  messages,
6534
6837
  ask,
6535
6838
  // Signing in is the case this exists for. A page that has been watching
@@ -6552,20 +6855,9 @@ function MedianLauncher({
6552
6855
  status: "Connecting",
6553
6856
  team: []
6554
6857
  };
6555
- const mover = resolvedPresence.team.find((member) => member.kind === "ai");
6556
- return /* @__PURE__ */ jsxs18(Fragment26, { children: [
6557
- direction?.selector != null && /* @__PURE__ */ jsx33(
6558
- WidgetSpotlight,
6559
- {
6560
- selector: direction.selector
6561
- },
6562
- `ring:${direction.key}`
6563
- ),
6564
- direction?.didNavigate === true && mover !== void 0 && /* @__PURE__ */ jsxs18(WidgetToast, { agent: mover, children: [
6565
- mover.name,
6566
- " navigated you here"
6567
- ] }, `moved:${direction.key}`),
6568
- /* @__PURE__ */ jsx33(
6858
+ return /* @__PURE__ */ jsxs19(Fragment28, { children: [
6859
+ spotlight !== null && /* @__PURE__ */ jsx35(WidgetSpotlight, { selector: spotlight.selector }, spotlight.key),
6860
+ /* @__PURE__ */ jsx35(
6569
6861
  SupportLauncher,
6570
6862
  {
6571
6863
  presence: resolvedPresence,
@@ -6580,7 +6872,11 @@ function MedianLauncher({
6580
6872
  isSending,
6581
6873
  awaitingHuman,
6582
6874
  rating,
6875
+ offer,
6876
+ onFollow: onNavigate === void 0 ? void 0 : follow,
6583
6877
  unreadCount,
6878
+ teaser,
6879
+ onDismissTeaser: dismissTeaser,
6584
6880
  notice: sendError,
6585
6881
  launcher,
6586
6882
  open: isOpen,
@@ -6593,7 +6889,7 @@ function MedianLauncher({
6593
6889
 
6594
6890
  // ../../apps/web/src/components/support-widget/sdk/mount.tsx
6595
6891
  import { createRoot } from "react-dom/client";
6596
- import { jsx as jsx34 } from "react/jsx-runtime";
6892
+ import { jsx as jsx36 } from "react/jsx-runtime";
6597
6893
  var isDevelopment3 = typeof process !== "undefined" && process.env.NODE_ENV === "development";
6598
6894
  function mountMedianSupport(options) {
6599
6895
  if (typeof document === "undefined") {
@@ -6611,7 +6907,7 @@ function mountMedianSupport(options) {
6611
6907
  let current2 = options;
6612
6908
  let mounted = true;
6613
6909
  const render = () => {
6614
- root.render(/* @__PURE__ */ jsx34(MedianSupport, { ...current2 }));
6910
+ root.render(/* @__PURE__ */ jsx36(MedianSupport, { ...current2 }));
6615
6911
  };
6616
6912
  render();
6617
6913
  return {
@@ -6638,17 +6934,24 @@ function mountMedianSupport(options) {
6638
6934
 
6639
6935
  // ../../apps/web/src/components/support-widget/sdk/median-feedback.tsx
6640
6936
  import { ConvexProvider as ConvexProvider2, ConvexReactClient as ConvexReactClient2 } from "convex/react";
6641
- import { useCallback as useCallback13, useEffect as useEffect23, useRef as useRef17, useState as useState22 } from "react";
6937
+ import { useCallback as useCallback15, useEffect as useEffect23, useRef as useRef18, useState as useState24 } from "react";
6642
6938
 
6643
6939
  // ../backend/convex/shared/feedback.ts
6644
6940
  var NOTE_MAX_LENGTH = 2e3;
6645
6941
 
6942
+ // ../backend/convex/shared/reportImages.ts
6943
+ var MAX_REPORT_IMAGES = 6;
6944
+
6646
6945
  // ../../apps/web/src/components/support-widget/feedback/feedback-panel.tsx
6647
- import { useEffect as useEffect22, useState as useState20 } from "react";
6946
+ import {
6947
+ useEffect as useEffect22,
6948
+ useRef as useRef17,
6949
+ useState as useState22
6950
+ } from "react";
6648
6951
 
6649
6952
  // ../../apps/web/src/components/support-widget/feedback/feedback-popover.tsx
6650
6953
  import { useEffect as useEffect21, useRef as useRef16 } from "react";
6651
- import { createPortal as createPortal3 } from "react-dom";
6954
+ import { createPortal as createPortal2 } from "react-dom";
6652
6955
 
6653
6956
  // ../../apps/web/src/components/support-widget/use-hydrated.ts
6654
6957
  import { useSyncExternalStore as useSyncExternalStore10 } from "react";
@@ -6661,8 +6964,8 @@ function useHydrated() {
6661
6964
  }
6662
6965
 
6663
6966
  // ../../apps/web/src/components/support-widget/feedback/use-anchor.ts
6664
- import { useLayoutEffect as useLayoutEffect7, useState as useState19 } from "react";
6665
- var GAP = 8;
6967
+ import { useLayoutEffect as useLayoutEffect8, useState as useState21 } from "react";
6968
+ var GAP2 = 8;
6666
6969
  var MARGIN2 = 16;
6667
6970
  function findAnchor(selector) {
6668
6971
  if (selector === void 0 || typeof document === "undefined") return null;
@@ -6681,8 +6984,8 @@ function useAnchor({
6681
6984
  panelRef,
6682
6985
  isOpen
6683
6986
  }) {
6684
- const [side, setSide] = useState19("bottom");
6685
- useLayoutEffect7(() => {
6987
+ const [side, setSide] = useState21("bottom");
6988
+ useLayoutEffect8(() => {
6686
6989
  if (!isOpen) return;
6687
6990
  let frame = 0;
6688
6991
  function place() {
@@ -6702,11 +7005,11 @@ function useAnchor({
6702
7005
  return;
6703
7006
  }
6704
7007
  const rect = trigger.getBoundingClientRect();
6705
- const below = room.height - rect.bottom - GAP - MARGIN2;
6706
- const above = rect.top - GAP - MARGIN2;
7008
+ const below = room.height - rect.bottom - GAP2 - MARGIN2;
7009
+ const above = rect.top - GAP2 - MARGIN2;
6707
7010
  const onTop = height > below && above > below;
6708
7011
  setSide(onTop ? "top" : "bottom");
6709
- const top = onTop ? rect.top - GAP - height : rect.bottom + GAP;
7012
+ const top = onTop ? rect.top - GAP2 - height : rect.bottom + GAP2;
6710
7013
  const fromStart = rect.left;
6711
7014
  const fromEnd = rect.right - width;
6712
7015
  const left = fromStart + width + MARGIN2 <= room.width ? fromStart : fromEnd;
@@ -6736,8 +7039,8 @@ function clamp3(value, low, high) {
6736
7039
  }
6737
7040
 
6738
7041
  // ../../apps/web/src/components/support-widget/feedback/feedback-popover.tsx
6739
- import { jsx as jsx35 } from "react/jsx-runtime";
6740
- var LAYER3 = 2147483e3;
7042
+ import { jsx as jsx37 } from "react/jsx-runtime";
7043
+ var LAYER2 = 2147483e3;
6741
7044
  var AUTOFOCUS_ATTRIBUTE = "data-median-autofocus";
6742
7045
  var MOTION = "transition-[opacity,scale,translate] motion-reduce:transition-none";
6743
7046
  var OPEN = "duration-250 ease-spring";
@@ -6792,8 +7095,8 @@ function FeedbackPopover({
6792
7095
  if (back && back !== document.body && back.isConnected) back.focus();
6793
7096
  }, [isOpen, triggerRef]);
6794
7097
  if (!isHydrated) return null;
6795
- return createPortal3(
6796
- /* @__PURE__ */ jsx35(
7098
+ return createPortal2(
7099
+ /* @__PURE__ */ jsx37(
6797
7100
  "div",
6798
7101
  {
6799
7102
  ref: panelRef,
@@ -6801,7 +7104,7 @@ function FeedbackPopover({
6801
7104
  inert: !isOpen,
6802
7105
  "data-median-widget": "",
6803
7106
  style: {
6804
- zIndex: LAYER3,
7107
+ zIndex: LAYER2,
6805
7108
  width,
6806
7109
  top: 0,
6807
7110
  left: 0,
@@ -6831,7 +7134,7 @@ function FeedbackPopover({
6831
7134
  }
6832
7135
 
6833
7136
  // ../../apps/web/src/components/support-widget/feedback/feedback-panel.tsx
6834
- import { jsx as jsx36, jsxs as jsxs19 } from "react/jsx-runtime";
7137
+ import { Fragment as Fragment29, jsx as jsx38, jsxs as jsxs20 } from "react/jsx-runtime";
6835
7138
  var THANKS_MS2 = 1600;
6836
7139
  function FeedbackPanel({
6837
7140
  onSubmit,
@@ -6844,10 +7147,16 @@ function FeedbackPanel({
6844
7147
  placeholder = "What should change?",
6845
7148
  className
6846
7149
  }) {
6847
- const [draft, setDraft] = useState20("");
6848
- const [isSending, setSending] = useState20(false);
6849
- const [isSent, setSent] = useState20(false);
6850
- const canSend = draft.trim().length > 0 && !isSending && !isSent;
7150
+ const [draft, setDraft] = useState22("");
7151
+ const [isSending, setSending] = useState22(false);
7152
+ const [isSent, setSent] = useState22(false);
7153
+ const fileInputRef = useRef17(null);
7154
+ const images = useAttachmentDrafts({
7155
+ accept: "image",
7156
+ max: MAX_REPORT_IMAGES
7157
+ });
7158
+ const target = useAttachmentTarget({ onFiles: images.add });
7159
+ const canSend = draft.trim().length > 0 && !images.hasBlocker && !isSending && !isSent;
6851
7160
  useEffect22(() => {
6852
7161
  if (!isSent) return;
6853
7162
  const timer = setTimeout(() => onSent?.(), THANKS_MS2);
@@ -6857,24 +7166,30 @@ function FeedbackPanel({
6857
7166
  if (!canSend) return;
6858
7167
  setSending(true);
6859
7168
  try {
6860
- await onSubmit?.(draft.trim());
7169
+ await onSubmit?.(draft.trim(), images.files);
6861
7170
  } catch {
6862
7171
  return;
6863
7172
  } finally {
6864
7173
  setSending(false);
6865
7174
  }
7175
+ images.clear();
6866
7176
  setSent(true);
6867
7177
  }
7178
+ function handlePick(event) {
7179
+ if (event.target.files?.length) images.add(event.target.files);
7180
+ event.target.value = "";
7181
+ }
6868
7182
  function handleKeyDown(event) {
6869
7183
  if (event.key !== "Enter") return;
6870
7184
  if (!event.metaKey && !event.ctrlKey) return;
6871
7185
  event.preventDefault();
6872
7186
  void send();
6873
7187
  }
6874
- return /* @__PURE__ */ jsxs19(
7188
+ return /* @__PURE__ */ jsxs20(
6875
7189
  "section",
6876
7190
  {
6877
7191
  "aria-label": title,
7192
+ ...target.targetProps,
6878
7193
  className: cn(
6879
7194
  // The widget's own radius scale, so the app's token can climb as the
6880
7195
  // chrome gets rounder without this changing shape under its hosts.
@@ -6882,12 +7197,12 @@ function FeedbackPanel({
6882
7197
  className
6883
7198
  ),
6884
7199
  children: [
6885
- /* @__PURE__ */ jsxs19("header", { className: "flex items-start gap-2", children: [
6886
- /* @__PURE__ */ jsxs19("div", { className: "flex min-w-0 flex-1 flex-col", children: [
6887
- /* @__PURE__ */ jsx36("h2", { className: "truncate text-sm font-semibold tracking-tight", children: title }),
6888
- /* @__PURE__ */ jsx36("p", { className: "text-xs text-muted-foreground", children: description })
7200
+ /* @__PURE__ */ jsxs20("header", { className: "flex items-start gap-2", children: [
7201
+ /* @__PURE__ */ jsxs20("div", { className: "flex min-w-0 flex-1 flex-col", children: [
7202
+ /* @__PURE__ */ jsx38("h2", { className: "truncate text-sm font-semibold tracking-tight", children: title }),
7203
+ /* @__PURE__ */ jsx38("p", { className: "text-xs text-muted-foreground", children: description })
6889
7204
  ] }),
6890
- onClose && /* @__PURE__ */ jsx36(
7205
+ onClose && /* @__PURE__ */ jsx38(
6891
7206
  WidgetButton,
6892
7207
  {
6893
7208
  type: "button",
@@ -6896,13 +7211,13 @@ function FeedbackPanel({
6896
7211
  onClick: onClose,
6897
7212
  "aria-label": "Close feedback",
6898
7213
  className: "-mt-0.5 -mr-1 shrink-0 text-muted-foreground",
6899
- children: /* @__PURE__ */ jsx36(X, {})
7214
+ children: /* @__PURE__ */ jsx38(X, {})
6900
7215
  }
6901
7216
  )
6902
7217
  ] }),
6903
- /* @__PURE__ */ jsxs19("div", { className: "grid", children: [
6904
- /* @__PURE__ */ jsx36(Collapse, { isOpen: !isSent, children: /* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-1.5", children: [
6905
- /* @__PURE__ */ jsx36(
7218
+ /* @__PURE__ */ jsxs20("div", { className: "grid", children: [
7219
+ /* @__PURE__ */ jsx38(Collapse, { isOpen: !isSent, children: /* @__PURE__ */ jsxs20("div", { className: "flex flex-col gap-1.5", children: [
7220
+ /* @__PURE__ */ jsx38(
6906
7221
  Textarea,
6907
7222
  {
6908
7223
  rows: 3,
@@ -6910,7 +7225,7 @@ function FeedbackPanel({
6910
7225
  maxLength: NOTE_MAX_LENGTH,
6911
7226
  onChange: (event) => setDraft(event.target.value),
6912
7227
  onKeyDown: handleKeyDown,
6913
- placeholder,
7228
+ placeholder: target.isDropTarget ? "Drop to attach" : placeholder,
6914
7229
  "aria-label": title,
6915
7230
  ...{ [AUTOFOCUS_ATTRIBUTE]: "" },
6916
7231
  className: cn(
@@ -6922,44 +7237,79 @@ function FeedbackPanel({
6922
7237
  )
6923
7238
  }
6924
7239
  ),
6925
- notice && /* @__PURE__ */ jsx36("p", { className: "animate-in px-0.5 text-xs text-destructive fade-in duration-150", children: notice })
7240
+ images.drafts.length > 0 && /* @__PURE__ */ jsx38("div", { className: "flex flex-wrap gap-1.5", children: images.drafts.map((draft2) => /* @__PURE__ */ jsx38(
7241
+ AttachmentDraftChip,
7242
+ {
7243
+ draft: draft2,
7244
+ onRemove: () => images.remove(draft2.id)
7245
+ },
7246
+ draft2.id
7247
+ )) }),
7248
+ notice && /* @__PURE__ */ jsx38("p", { className: "animate-in px-0.5 text-xs text-destructive fade-in duration-150", children: notice })
6926
7249
  ] }) }),
6927
- /* @__PURE__ */ jsx36(Collapse, { isOpen: isSent, children: /* @__PURE__ */ jsxs19("div", { className: "flex items-center justify-center gap-2 py-4 text-sm font-medium", children: [
6928
- /* @__PURE__ */ jsx36("span", { className: "grid size-5 shrink-0 place-items-center rounded-full bg-primary text-primary-foreground", children: /* @__PURE__ */ jsx36(Check, { className: "size-3" }) }),
7250
+ /* @__PURE__ */ jsx38(Collapse, { isOpen: isSent, children: /* @__PURE__ */ jsxs20("div", { className: "flex items-center justify-center gap-2 py-4 text-sm font-medium", children: [
7251
+ /* @__PURE__ */ jsx38("span", { className: "grid size-5 shrink-0 place-items-center rounded-full bg-primary text-primary-foreground", children: /* @__PURE__ */ jsx38(Check, { className: "size-3" }) }),
6929
7252
  "Thanks, we got it."
6930
7253
  ] }) })
6931
7254
  ] }),
6932
- /* @__PURE__ */ jsxs19("div", { className: "flex min-h-8 items-center gap-2", children: [
6933
- showBadge && /* @__PURE__ */ jsx36(PoweredByMedian, { className: "justify-start" }),
6934
- !isSent && /* @__PURE__ */ jsxs19(
6935
- WidgetButton,
6936
- {
6937
- type: "button",
6938
- disabled: !canSend,
6939
- "aria-busy": isSending,
6940
- onClick: () => void send(),
6941
- className: "relative ml-auto shrink-0 rounded-full px-3",
6942
- children: [
6943
- /* @__PURE__ */ jsx36(
6944
- "span",
6945
- {
6946
- className: cn(
6947
- "transition-opacity duration-150 motion-reduce:transition-none",
6948
- isSending && "opacity-0"
6949
- ),
6950
- children: "Submit feedback"
6951
- }
6952
- ),
6953
- isSending && /* @__PURE__ */ jsx36(
6954
- ArrowsClockwise,
6955
- {
6956
- "aria-hidden": true,
6957
- className: "absolute inset-0 m-auto animate-spin motion-reduce:animate-none"
6958
- }
6959
- )
6960
- ]
6961
- }
6962
- )
7255
+ /* @__PURE__ */ jsxs20("div", { className: "flex min-h-8 items-center gap-2", children: [
7256
+ showBadge && /* @__PURE__ */ jsx38(PoweredByMedian, { className: "justify-start" }),
7257
+ !isSent && /* @__PURE__ */ jsxs20(Fragment29, { children: [
7258
+ /* @__PURE__ */ jsx38(
7259
+ "input",
7260
+ {
7261
+ ref: fileInputRef,
7262
+ type: "file",
7263
+ accept: "image/*",
7264
+ multiple: true,
7265
+ tabIndex: -1,
7266
+ onChange: handlePick,
7267
+ className: "sr-only"
7268
+ }
7269
+ ),
7270
+ /* @__PURE__ */ jsx38(
7271
+ WidgetButton,
7272
+ {
7273
+ type: "button",
7274
+ variant: "ghost",
7275
+ size: "icon",
7276
+ disabled: images.isFull,
7277
+ onClick: () => fileInputRef.current?.click(),
7278
+ "aria-label": "Add a picture",
7279
+ className: "ml-auto shrink-0 rounded-full text-muted-foreground",
7280
+ children: /* @__PURE__ */ jsx38(ImageSquare, {})
7281
+ }
7282
+ ),
7283
+ /* @__PURE__ */ jsxs20(
7284
+ WidgetButton,
7285
+ {
7286
+ type: "button",
7287
+ disabled: !canSend,
7288
+ "aria-busy": isSending,
7289
+ onClick: () => void send(),
7290
+ className: "relative shrink-0 rounded-full px-3",
7291
+ children: [
7292
+ /* @__PURE__ */ jsx38(
7293
+ "span",
7294
+ {
7295
+ className: cn(
7296
+ "transition-opacity duration-150 motion-reduce:transition-none",
7297
+ isSending && "opacity-0"
7298
+ ),
7299
+ children: "Submit feedback"
7300
+ }
7301
+ ),
7302
+ isSending && /* @__PURE__ */ jsx38(
7303
+ ArrowsClockwise,
7304
+ {
7305
+ "aria-hidden": true,
7306
+ className: "absolute inset-0 m-auto animate-spin motion-reduce:animate-none"
7307
+ }
7308
+ )
7309
+ ]
7310
+ }
7311
+ )
7312
+ ] })
6963
7313
  ] })
6964
7314
  ]
6965
7315
  }
@@ -7011,7 +7361,7 @@ function useRegisterMedianFeedback() {
7011
7361
 
7012
7362
  // ../../apps/web/src/components/support-widget/sdk/use-feedback-note.ts
7013
7363
  import { useMutation as useMutation2 } from "convex/react";
7014
- import { useCallback as useCallback12, useState as useState21, useSyncExternalStore as useSyncExternalStore12 } from "react";
7364
+ import { useCallback as useCallback14, useState as useState23, useSyncExternalStore as useSyncExternalStore12 } from "react";
7015
7365
  var REFUSALS = {
7016
7366
  off: "This site is not taking feedback right now.",
7017
7367
  empty: "Write something first."
@@ -7025,14 +7375,15 @@ function useFeedbackNote({
7025
7375
  }) {
7026
7376
  const sessionId = useSyncExternalStore12(
7027
7377
  subscribeSession,
7028
- useCallback12(() => getOrCreateSessionId(apiKey), [apiKey]),
7378
+ useCallback14(() => getOrCreateSessionId(apiKey), [apiKey]),
7029
7379
  () => null
7030
7380
  );
7031
7381
  const submitNote = useMutation2(api.feedback.submit);
7382
+ const getUploadUrl = useMutation2(api.widget.generateUploadUrl);
7032
7383
  const takeDiagnostics = useDiagnostics(diagnostics, appState);
7033
- const [notice, setNotice] = useState21(null);
7034
- const submit = useCallback12(
7035
- async (body) => {
7384
+ const [notice, setNotice] = useState23(null);
7385
+ const submit = useCallback14(
7386
+ async (body, images = []) => {
7036
7387
  setNotice(null);
7037
7388
  if (sessionId === null) {
7038
7389
  setNotice("This browser is still waking up. Try again in a moment.");
@@ -7045,6 +7396,10 @@ function useFeedbackNote({
7045
7396
  const page = telemetry ? collectPage() : void 0;
7046
7397
  const collected = takeDiagnostics();
7047
7398
  const { facts, claim } = splitIdentity(user ?? null);
7399
+ const attached = await uploadAttachments(
7400
+ () => getUploadUrl({ apiKey, sessionId }),
7401
+ images
7402
+ );
7048
7403
  const outcome = await submitNote({
7049
7404
  apiKey,
7050
7405
  sessionId,
@@ -7054,7 +7409,8 @@ function useFeedbackNote({
7054
7409
  ...context ? { context } : {},
7055
7410
  ...page ? { page } : {},
7056
7411
  ...collected ? { diagnostics: collected } : {},
7057
- ...custom ? { customData: custom } : {}
7412
+ ...custom ? { customData: custom } : {},
7413
+ ...attached.length > 0 ? { images: attached } : {}
7058
7414
  });
7059
7415
  if (outcome !== "taken") {
7060
7416
  explained = true;
@@ -7070,16 +7426,24 @@ function useFeedbackNote({
7070
7426
  throw caught;
7071
7427
  }
7072
7428
  },
7073
- [apiKey, sessionId, user, telemetry, takeDiagnostics, submitNote]
7429
+ [
7430
+ apiKey,
7431
+ sessionId,
7432
+ user,
7433
+ telemetry,
7434
+ takeDiagnostics,
7435
+ submitNote,
7436
+ getUploadUrl
7437
+ ]
7074
7438
  );
7075
7439
  return { submit, notice, clearNotice: () => setNotice(null) };
7076
7440
  }
7077
7441
 
7078
7442
  // ../../apps/web/src/components/support-widget/sdk/median-feedback.tsx
7079
- import { Fragment as Fragment27, jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
7443
+ import { Fragment as Fragment30, jsx as jsx39, jsxs as jsxs21 } from "react/jsx-runtime";
7080
7444
  var DEFAULT_WIDTH2 = "20rem";
7081
7445
  function MedianFeedback(props) {
7082
- return /* @__PURE__ */ jsx37(MedianErrorBoundary, { children: /* @__PURE__ */ jsx37(FeedbackIdentity, { ...props }) });
7446
+ return /* @__PURE__ */ jsx39(MedianErrorBoundary, { children: /* @__PURE__ */ jsx39(FeedbackIdentity, { ...props }) });
7083
7447
  }
7084
7448
  function FeedbackIdentity({
7085
7449
  apiKey,
@@ -7092,7 +7456,7 @@ function FeedbackIdentity({
7092
7456
  const key = apiKey ?? resolved.apiKey;
7093
7457
  const person = user ?? resolved.user;
7094
7458
  if (key === void 0) return null;
7095
- return /* @__PURE__ */ jsx37(
7459
+ return /* @__PURE__ */ jsx39(
7096
7460
  FeedbackConnection,
7097
7461
  {
7098
7462
  ...rest,
@@ -7111,7 +7475,7 @@ function useApiKeyShapeWarning2(apiKey) {
7111
7475
  }, [apiKey]);
7112
7476
  }
7113
7477
  function FeedbackConnection(props) {
7114
- const [client2] = useState22(() => {
7478
+ const [client2] = useState24(() => {
7115
7479
  if (!MEDIAN_DEPLOYMENT_URL) {
7116
7480
  throw new Error(
7117
7481
  "The Median feedback panel was built without a deployment URL. Set NEXT_PUBLIC_CONVEX_URL."
@@ -7119,7 +7483,7 @@ function FeedbackConnection(props) {
7119
7483
  }
7120
7484
  return new ConvexReactClient2(MEDIAN_DEPLOYMENT_URL);
7121
7485
  });
7122
- return /* @__PURE__ */ jsx37(ConvexProvider2, { client: client2, children: /* @__PURE__ */ jsx37(Feedback, { ...props }) });
7486
+ return /* @__PURE__ */ jsx39(ConvexProvider2, { client: client2, children: /* @__PURE__ */ jsx39(Feedback, { ...props }) });
7123
7487
  }
7124
7488
  function Feedback({
7125
7489
  apiKey,
@@ -7139,7 +7503,7 @@ function Feedback({
7139
7503
  useRegisterMedianFeedback();
7140
7504
  useApiKeyShapeWarning2(apiKey);
7141
7505
  useRememberInstall(apiKey, user);
7142
- const triggerRef = useRef17(null);
7506
+ const triggerRef = useRef18(null);
7143
7507
  const [isOpen, setOpen] = useMedianFeedbackOpenState({
7144
7508
  ...open !== void 0 ? { open } : {},
7145
7509
  ...onOpenChange ? { onOpenChange } : {}
@@ -7151,20 +7515,20 @@ function Feedback({
7151
7515
  ...diagnostics !== void 0 ? { diagnostics } : {},
7152
7516
  ...appState ? { appState } : {}
7153
7517
  });
7154
- const close = useCallback13(() => setOpen(false), [setOpen]);
7155
- const [attempt, setAttempt] = useState22(0);
7156
- const hasSent = useRef17(false);
7518
+ const close = useCallback15(() => setOpen(false), [setOpen]);
7519
+ const [attempt, setAttempt] = useState24(0);
7520
+ const hasSent = useRef18(false);
7157
7521
  useEffect23(() => {
7158
7522
  if (!isOpen || !hasSent.current) return;
7159
7523
  hasSent.current = false;
7160
7524
  setAttempt((count) => count + 1);
7161
7525
  }, [isOpen]);
7162
- return /* @__PURE__ */ jsxs20(Fragment27, { children: [
7526
+ return /* @__PURE__ */ jsxs21(Fragment30, { children: [
7163
7527
  children !== void 0 && // An inline span rather than a clone of whatever was passed: the
7164
7528
  // host's trigger keeps its own props, its own ref and its own
7165
7529
  // styles, and the click is caught on the way past. `display:
7166
7530
  // contents` would lose the rectangle the panel is measured against.
7167
- /* @__PURE__ */ jsx37(
7531
+ /* @__PURE__ */ jsx39(
7168
7532
  "span",
7169
7533
  {
7170
7534
  ref: triggerRef,
@@ -7173,7 +7537,7 @@ function Feedback({
7173
7537
  children
7174
7538
  }
7175
7539
  ),
7176
- /* @__PURE__ */ jsx37(
7540
+ /* @__PURE__ */ jsx39(
7177
7541
  FeedbackPopover,
7178
7542
  {
7179
7543
  isOpen,
@@ -7181,7 +7545,7 @@ function Feedback({
7181
7545
  triggerRef,
7182
7546
  ...anchor !== void 0 ? { anchor } : {},
7183
7547
  width,
7184
- children: /* @__PURE__ */ jsx37(
7548
+ children: /* @__PURE__ */ jsx39(
7185
7549
  FeedbackPanel,
7186
7550
  {
7187
7551
  onSubmit: note.submit,
@@ -7204,7 +7568,7 @@ function Feedback({
7204
7568
 
7205
7569
  // ../../apps/web/src/components/support-widget/sdk/mount-feedback.tsx
7206
7570
  import { createRoot as createRoot2 } from "react-dom/client";
7207
- import { jsx as jsx38 } from "react/jsx-runtime";
7571
+ import { jsx as jsx40 } from "react/jsx-runtime";
7208
7572
  function mountMedianFeedback(options) {
7209
7573
  if (typeof document === "undefined") {
7210
7574
  console.error(
@@ -7221,7 +7585,7 @@ function mountMedianFeedback(options) {
7221
7585
  let current2 = options;
7222
7586
  let mounted = true;
7223
7587
  const render = () => {
7224
- root.render(/* @__PURE__ */ jsx38(MedianFeedback, { ...current2 }));
7588
+ root.render(/* @__PURE__ */ jsx40(MedianFeedback, { ...current2 }));
7225
7589
  };
7226
7590
  render();
7227
7591
  return {