@superinterface/react 2.14.0 → 2.15.1

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
@@ -709,6 +709,7 @@ var AssistantNameContext = createContext4("Assistant");
709
709
  import { Flex as Flex10 } from "@radix-ui/themes";
710
710
  // src/components/threads/Thread/Message/index.tsx
711
711
  import { useMemo as useMemo5, Fragment } from "react";
712
+ import { isEmpty } from "radash";
712
713
  import { Box as Box9 } from "@radix-ui/themes";
713
714
  // src/components/skeletons/StartingContentSkeleton/index.tsx
714
715
  import { Skeleton as Skeleton2 } from "@radix-ui/themes";
@@ -1040,7 +1041,7 @@ var MessageContext = createContext7({
1040
1041
  // src/components/threads/Thread/Message/Provider.tsx
1041
1042
  var Provider = MessageContext.Provider;
1042
1043
  // src/components/threads/Thread/Message/TextContent.tsx
1043
- import { useRemarkSync } from "react-remark";
1044
+ import Markdown from "react-markdown";
1044
1045
  // src/hooks/markdown/useMarkdownContext/index.ts
1045
1046
  import { useContext as useContext6 } from "react";
1046
1047
  // src/contexts/markdown/MarkdownContext/index.ts
@@ -1185,13 +1186,16 @@ var useMarkdownContext = function() {
1185
1186
  return useContext6(MarkdownContext);
1186
1187
  };
1187
1188
  // src/components/threads/Thread/Message/TextContent.tsx
1189
+ import { jsx as jsx30 } from "react/jsx-runtime";
1188
1190
  var TextContent = function(param) {
1189
1191
  var content = param.content;
1190
1192
  var markdownContext = useMarkdownContext();
1191
- return useRemarkSync(content.text.value, markdownContext);
1193
+ return /* @__PURE__ */ jsx30(Markdown, _object_spread_props(_object_spread({}, markdownContext), {
1194
+ children: content.text.value
1195
+ }));
1192
1196
  };
1193
1197
  // src/components/threads/Thread/Message/index.tsx
1194
- import { jsx as jsx30, jsxs as jsxs6 } from "react/jsx-runtime";
1198
+ import { jsx as jsx31, jsxs as jsxs6 } from "react/jsx-runtime";
1195
1199
  var Message = function(param) {
1196
1200
  var message = param.message;
1197
1201
  var _useMemo5 = _sliced_to_array(useMemo5(function() {
@@ -1236,65 +1240,68 @@ var Message = function(param) {
1236
1240
  }, [
1237
1241
  message
1238
1242
  ]);
1239
- return /* @__PURE__ */ jsx30(Provider, {
1243
+ return /* @__PURE__ */ jsx31(Provider, {
1240
1244
  value: {
1241
1245
  message: message
1242
1246
  },
1243
1247
  children: /* @__PURE__ */ jsxs6(Box9, {
1244
1248
  children: [
1245
- /* @__PURE__ */ jsx30(RunSteps, {
1249
+ /* @__PURE__ */ jsx31(RunSteps, {
1246
1250
  runSteps: olderRunSteps
1247
1251
  }),
1248
1252
  /* @__PURE__ */ jsxs6(Box9, {
1249
1253
  children: [
1250
1254
  message.content.map(function(content, index) {
1251
- return /* @__PURE__ */ jsx30(Fragment, {
1252
- children: content.type === "text" && /* @__PURE__ */ jsx30(TextContent, {
1255
+ return /* @__PURE__ */ jsx31(Fragment, {
1256
+ children: content.type === "text" && /* @__PURE__ */ jsx31(TextContent, {
1253
1257
  content: content
1254
1258
  })
1255
1259
  }, index);
1256
1260
  }),
1257
- isInProgress && /* @__PURE__ */ jsx30(StartingContentSkeleton, {})
1261
+ isInProgress && isEmpty(laterRunSteps) && /* @__PURE__ */ jsx31(StartingContentSkeleton, {})
1258
1262
  ]
1259
1263
  }),
1260
- /* @__PURE__ */ jsx30(RunSteps, {
1264
+ /* @__PURE__ */ jsx31(RunSteps, {
1261
1265
  runSteps: laterRunSteps
1266
+ }),
1267
+ isInProgress && !isEmpty(laterRunSteps) && /* @__PURE__ */ jsx31(Box9, {
1268
+ children: /* @__PURE__ */ jsx31(StartingContentSkeleton, {})
1262
1269
  })
1263
1270
  ]
1264
1271
  })
1265
1272
  });
1266
1273
  };
1267
1274
  // src/components/threads/Thread/Messages/Content/MessageGroup/Content/index.tsx
1268
- import { jsx as jsx31 } from "react/jsx-runtime";
1275
+ import { jsx as jsx32 } from "react/jsx-runtime";
1269
1276
  var Content2 = function(param) {
1270
1277
  var messageGroup = param.messageGroup;
1271
- return /* @__PURE__ */ jsx31(Flex10, {
1278
+ return /* @__PURE__ */ jsx32(Flex10, {
1272
1279
  direction: "column-reverse",
1273
1280
  children: messageGroup.messages.map(function(message) {
1274
- return /* @__PURE__ */ jsx31(Message, {
1281
+ return /* @__PURE__ */ jsx32(Message, {
1275
1282
  message: message
1276
1283
  }, message.id);
1277
1284
  })
1278
1285
  });
1279
1286
  };
1280
1287
  // src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx
1281
- import { jsx as jsx32, jsxs as jsxs7 } from "react/jsx-runtime";
1288
+ import { jsx as jsx33, jsxs as jsxs7 } from "react/jsx-runtime";
1282
1289
  var MessageGroup = function(param) {
1283
1290
  var messageGroup = param.messageGroup;
1284
1291
  var assistantNameContext = useContext7(AssistantNameContext);
1285
1292
  return /* @__PURE__ */ jsxs7(MessageGroupBase, {
1286
1293
  children: [
1287
- messageGroup.role === "user" ? /* @__PURE__ */ jsx32(Avatar3, {
1288
- fallback: /* @__PURE__ */ jsx32(PersonIcon, {}),
1294
+ messageGroup.role === "user" ? /* @__PURE__ */ jsx33(Avatar3, {
1295
+ fallback: /* @__PURE__ */ jsx33(PersonIcon, {}),
1289
1296
  size: "1"
1290
- }) : /* @__PURE__ */ jsx32(AssistantAvatar, {}),
1297
+ }) : /* @__PURE__ */ jsx33(AssistantAvatar, {}),
1291
1298
  /* @__PURE__ */ jsxs7(Box10, {
1292
1299
  flexGrow: "1",
1293
1300
  children: [
1294
- /* @__PURE__ */ jsx32(Name, {
1301
+ /* @__PURE__ */ jsx33(Name, {
1295
1302
  children: messageGroup.role === "user" ? "You" : assistantNameContext
1296
1303
  }),
1297
- /* @__PURE__ */ jsx32(Content2, {
1304
+ /* @__PURE__ */ jsx33(Content2, {
1298
1305
  messageGroup: messageGroup
1299
1306
  })
1300
1307
  ]
@@ -1303,7 +1310,7 @@ var MessageGroup = function(param) {
1303
1310
  });
1304
1311
  };
1305
1312
  // src/components/threads/Thread/Messages/Content/index.tsx
1306
- import { Fragment as Fragment2, jsx as jsx33 } from "react/jsx-runtime";
1313
+ import { Fragment as Fragment2, jsx as jsx34 } from "react/jsx-runtime";
1307
1314
  var Content3 = function() {
1308
1315
  var _useMessages = useMessages(), messages2 = _useMessages.messages, isLoading = _useMessages.isLoading, isLoadingError = _useMessages.isLoadingError;
1309
1316
  var addToast = useToasts().addToast;
@@ -1322,11 +1329,11 @@ var Content3 = function() {
1322
1329
  addToast
1323
1330
  ]);
1324
1331
  if (isLoading || isLoadingError) {
1325
- return /* @__PURE__ */ jsx33(MessagesSkeleton, {});
1332
+ return /* @__PURE__ */ jsx34(MessagesSkeleton, {});
1326
1333
  }
1327
- return /* @__PURE__ */ jsx33(Fragment2, {
1334
+ return /* @__PURE__ */ jsx34(Fragment2, {
1328
1335
  children: messageGroups2.map(function(messageGroup) {
1329
- return /* @__PURE__ */ jsx33(MessageGroup, {
1336
+ return /* @__PURE__ */ jsx34(MessageGroup, {
1330
1337
  messageGroup: messageGroup
1331
1338
  }, messageGroup.id);
1332
1339
  })
@@ -1337,20 +1344,20 @@ import { useMemo as useMemo7 } from "react";
1337
1344
  // src/components/skeletons/StartingSkeleton/index.tsx
1338
1345
  import { useContext as useContext8 } from "react";
1339
1346
  import { Box as Box11 } from "@radix-ui/themes";
1340
- import { jsx as jsx34, jsxs as jsxs8 } from "react/jsx-runtime";
1347
+ import { jsx as jsx35, jsxs as jsxs8 } from "react/jsx-runtime";
1341
1348
  var StartingSkeleton = function(param) {
1342
1349
  var children = param.children;
1343
1350
  var assistantNameContext = useContext8(AssistantNameContext);
1344
1351
  return /* @__PURE__ */ jsxs8(MessageGroupBase, {
1345
1352
  children: [
1346
- /* @__PURE__ */ jsx34(AssistantAvatar, {}),
1353
+ /* @__PURE__ */ jsx35(AssistantAvatar, {}),
1347
1354
  /* @__PURE__ */ jsxs8(Box11, {
1348
1355
  children: [
1349
- /* @__PURE__ */ jsx34(Name, {
1356
+ /* @__PURE__ */ jsx35(Name, {
1350
1357
  children: assistantNameContext
1351
1358
  }),
1352
1359
  children,
1353
- /* @__PURE__ */ jsx34(StartingContentSkeleton, {})
1360
+ /* @__PURE__ */ jsx35(StartingContentSkeleton, {})
1354
1361
  ]
1355
1362
  })
1356
1363
  ]
@@ -1375,7 +1382,7 @@ var isOptimistic = function(param) {
1375
1382
  return _4.startsWith(id, "-");
1376
1383
  };
1377
1384
  // src/components/threads/Thread/Messages/Progress/index.tsx
1378
- import { jsx as jsx35 } from "react/jsx-runtime";
1385
+ import { jsx as jsx36 } from "react/jsx-runtime";
1379
1386
  var Progress = function() {
1380
1387
  var latestMessage = useLatestMessage().latestMessage;
1381
1388
  var isMutatingMessage = useIsMutatingMessage();
@@ -1393,7 +1400,7 @@ var Progress = function() {
1393
1400
  isMutatingMessage
1394
1401
  ]);
1395
1402
  if (!isVisible) return null;
1396
- return /* @__PURE__ */ jsx35(StartingSkeleton, {});
1403
+ return /* @__PURE__ */ jsx36(StartingSkeleton, {});
1397
1404
  };
1398
1405
  // src/components/threads/Thread/Messages/Root/index.tsx
1399
1406
  import { Flex as Flex11 } from "@radix-ui/themes";
@@ -1452,7 +1459,7 @@ var useInfiniteScroll = function(param) {
1452
1459
  };
1453
1460
  };
1454
1461
  // src/components/threads/Thread/Messages/Root/index.tsx
1455
- import { jsx as jsx36, jsxs as jsxs9 } from "react/jsx-runtime";
1462
+ import { jsx as jsx37, jsxs as jsxs9 } from "react/jsx-runtime";
1456
1463
  var Root2 = function(param) {
1457
1464
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
1458
1465
  var _useMessages = useMessages(), isFetchingNextPage = _useMessages.isFetchingNextPage, hasNextPage = _useMessages.hasNextPage, fetchNextPage = _useMessages.fetchNextPage;
@@ -1470,10 +1477,10 @@ var Root2 = function(param) {
1470
1477
  }),
1471
1478
  children: [
1472
1479
  children,
1473
- hasNextPage && /* @__PURE__ */ jsx36(Flex11, {
1480
+ hasNextPage && /* @__PURE__ */ jsx37(Flex11, {
1474
1481
  ref: loaderRef
1475
1482
  }),
1476
- /* @__PURE__ */ jsx36(Flex11, {
1483
+ /* @__PURE__ */ jsx37(Flex11, {
1477
1484
  flexShrink: "0",
1478
1485
  flexGrow: "1"
1479
1486
  })
@@ -1481,30 +1488,30 @@ var Root2 = function(param) {
1481
1488
  });
1482
1489
  };
1483
1490
  // src/components/threads/Thread/Messages/NextPageSkeleton.tsx
1484
- import { jsx as jsx37 } from "react/jsx-runtime";
1491
+ import { jsx as jsx38 } from "react/jsx-runtime";
1485
1492
  var NextPageSkeleton = function() {
1486
1493
  var hasNextPage = useMessages().hasNextPage;
1487
1494
  if (!hasNextPage) {
1488
1495
  return null;
1489
1496
  }
1490
- return /* @__PURE__ */ jsx37(MessagesSkeleton, {});
1497
+ return /* @__PURE__ */ jsx38(MessagesSkeleton, {});
1491
1498
  };
1492
1499
  // src/components/threads/Thread/Messages/index.tsx
1493
- import { jsx as jsx38, jsxs as jsxs10 } from "react/jsx-runtime";
1500
+ import { jsx as jsx39, jsxs as jsxs10 } from "react/jsx-runtime";
1494
1501
  var Messages = function(param) {
1495
1502
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
1496
1503
  return /* @__PURE__ */ jsxs10(Root2, {
1497
1504
  style: style,
1498
1505
  children: [
1499
- /* @__PURE__ */ jsx38(Flex12, {
1506
+ /* @__PURE__ */ jsx39(Flex12, {
1500
1507
  flexShrink: "0",
1501
1508
  height: "var(--space-3)"
1502
1509
  }),
1503
- /* @__PURE__ */ jsx38(Progress, {}),
1510
+ /* @__PURE__ */ jsx39(Progress, {}),
1504
1511
  children,
1505
- /* @__PURE__ */ jsx38(Content3, {}),
1506
- /* @__PURE__ */ jsx38(NextPageSkeleton, {}),
1507
- /* @__PURE__ */ jsx38(Flex12, {
1512
+ /* @__PURE__ */ jsx39(Content3, {}),
1513
+ /* @__PURE__ */ jsx39(NextPageSkeleton, {}),
1514
+ /* @__PURE__ */ jsx39(Flex12, {
1508
1515
  flexShrink: "0",
1509
1516
  flexGrow: "1"
1510
1517
  })
@@ -1532,24 +1539,24 @@ var useMessageFormContext = function() {
1532
1539
  return useContext9(MessageFormContext);
1533
1540
  };
1534
1541
  // src/components/threads/Thread/MessageForm/Submit/index.tsx
1535
- import { jsx as jsx39 } from "react/jsx-runtime";
1542
+ import { jsx as jsx40 } from "react/jsx-runtime";
1536
1543
  var Submit = function() {
1537
1544
  var superinterfaceContext = useSuperinterfaceContext();
1538
1545
  var _useMessageFormContext = useMessageFormContext(), isDisabled = _useMessageFormContext.isDisabled, isLoading = _useMessageFormContext.isLoading;
1539
1546
  if (isLoading) {
1540
- return /* @__PURE__ */ jsx39(IconButton, {
1547
+ return /* @__PURE__ */ jsx40(IconButton, {
1541
1548
  type: "button",
1542
1549
  onClick: function() {
1543
1550
  var _superinterfaceContext_createMessageAbortControllerRef_current;
1544
1551
  return (_superinterfaceContext_createMessageAbortControllerRef_current = superinterfaceContext.createMessageAbortControllerRef.current) === null || _superinterfaceContext_createMessageAbortControllerRef_current === void 0 ? void 0 : _superinterfaceContext_createMessageAbortControllerRef_current.abort();
1545
1552
  },
1546
- children: /* @__PURE__ */ jsx39(StopIcon, {})
1553
+ children: /* @__PURE__ */ jsx40(StopIcon, {})
1547
1554
  });
1548
1555
  }
1549
- return /* @__PURE__ */ jsx39(IconButton, {
1556
+ return /* @__PURE__ */ jsx40(IconButton, {
1550
1557
  type: "submit",
1551
1558
  disabled: isDisabled,
1552
- children: /* @__PURE__ */ jsx39(ArrowUpIcon, {})
1559
+ children: /* @__PURE__ */ jsx40(ArrowUpIcon, {})
1553
1560
  });
1554
1561
  };
1555
1562
  // src/components/threads/Thread/MessageForm/Root/index.tsx
@@ -2176,7 +2183,7 @@ var formOptions = {
2176
2183
  resolver: zodResolver(schema)
2177
2184
  };
2178
2185
  // src/components/threads/Thread/MessageForm/Root/index.tsx
2179
- import { jsx as jsx40 } from "react/jsx-runtime";
2186
+ import { jsx as jsx41 } from "react/jsx-runtime";
2180
2187
  var Root3 = function(param) {
2181
2188
  var children = param.children;
2182
2189
  var formProps = useForm(formOptions);
@@ -2248,16 +2255,16 @@ var Root3 = function(param) {
2248
2255
  latestMessage,
2249
2256
  isLoading
2250
2257
  ]);
2251
- return /* @__PURE__ */ jsx40(MessageFormContext.Provider, {
2258
+ return /* @__PURE__ */ jsx41(MessageFormContext.Provider, {
2252
2259
  value: {
2253
2260
  isDisabled: isDisabled,
2254
2261
  isLoading: isLoading
2255
2262
  },
2256
- children: /* @__PURE__ */ jsx40(FormProvider, _object_spread_props(_object_spread({}, formProps), {
2257
- children: /* @__PURE__ */ jsx40(Box12, {
2263
+ children: /* @__PURE__ */ jsx41(FormProvider, _object_spread_props(_object_spread({}, formProps), {
2264
+ children: /* @__PURE__ */ jsx41(Box12, {
2258
2265
  asChild: true,
2259
2266
  flexShrink: "0",
2260
- children: /* @__PURE__ */ jsx40("form", {
2267
+ children: /* @__PURE__ */ jsx41("form", {
2261
2268
  onSubmit: handleSubmit(onSubmit),
2262
2269
  children: children
2263
2270
  })
@@ -2271,15 +2278,15 @@ import { useContext as useContext10, useMemo as useMemo9, useRef as useRef4, use
2271
2278
  // src/components/textareas/TextareaBase/index.tsx
2272
2279
  import { forwardRef as forwardRef3 } from "react";
2273
2280
  import TextareaAutosize from "react-textarea-autosize";
2274
- import { Fragment as Fragment3, jsx as jsx41, jsxs as jsxs11 } from "react/jsx-runtime";
2281
+ import { Fragment as Fragment3, jsx as jsx42, jsxs as jsxs11 } from "react/jsx-runtime";
2275
2282
  var UPSCALE_RATIO = 16 / 14;
2276
2283
  var TextareaBase = forwardRef3(function TextareaBase2(props, ref) {
2277
2284
  return /* @__PURE__ */ jsxs11(Fragment3, {
2278
2285
  children: [
2279
- /* @__PURE__ */ jsx41("style", {
2286
+ /* @__PURE__ */ jsx42("style", {
2280
2287
  children: ".superinterface-textarea { min-height: inherit; height: 30px; }\n.superinterface-textarea::placeholder { color: var(--gray-a10); }"
2281
2288
  }),
2282
- /* @__PURE__ */ jsx41(TextareaAutosize, _object_spread({
2289
+ /* @__PURE__ */ jsx42(TextareaAutosize, _object_spread({
2283
2290
  ref: ref,
2284
2291
  className: "rt-reset superinterface-textarea",
2285
2292
  style: {
@@ -2304,20 +2311,20 @@ var TextareaBase = forwardRef3(function TextareaBase2(props, ref) {
2304
2311
  // src/components/threads/Thread/MessageForm/Field/index.tsx
2305
2312
  import { useFormContext } from "react-hook-form";
2306
2313
  import { Container as Container2, Flex as Flex13 } from "@radix-ui/themes";
2307
- import { jsx as jsx42 } from "react/jsx-runtime";
2314
+ import { jsx as jsx43 } from "react/jsx-runtime";
2308
2315
  var Root4 = function(param) {
2309
2316
  var children = param.children;
2310
2317
  var _useFormContext = useFormContext(), errors = _useFormContext.formState.errors;
2311
- return /* @__PURE__ */ jsx42(Container2, {
2318
+ return /* @__PURE__ */ jsx43(Container2, {
2312
2319
  size: "2",
2313
2320
  flexGrow: "0",
2314
- children: /* @__PURE__ */ jsx42(Flex13, {
2321
+ children: /* @__PURE__ */ jsx43(Flex13, {
2315
2322
  direction: "column",
2316
2323
  flexShrink: "0",
2317
- children: /* @__PURE__ */ jsx42(Flex13, {
2324
+ children: /* @__PURE__ */ jsx43(Flex13, {
2318
2325
  direction: "column",
2319
2326
  flexShrink: "0",
2320
- children: /* @__PURE__ */ jsx42(Flex13, {
2327
+ children: /* @__PURE__ */ jsx43(Flex13, {
2321
2328
  style: _object_spread({
2322
2329
  borderRadius: "var(--radius-2)",
2323
2330
  borderWidth: "1px",
@@ -2357,7 +2364,7 @@ var Control = function() {
2357
2364
  isDisabledPrevious,
2358
2365
  textareaProps
2359
2366
  ]);
2360
- return /* @__PURE__ */ jsx42(TextareaBase, _object_spread_props(_object_spread({
2367
+ return /* @__PURE__ */ jsx43(TextareaBase, _object_spread_props(_object_spread({
2361
2368
  minRows: 1,
2362
2369
  placeholder: "Message ".concat(assistantNameContext, "..."),
2363
2370
  disabled: isDisabled,
@@ -2381,26 +2388,26 @@ var Field = {
2381
2388
  Control: Control
2382
2389
  };
2383
2390
  // src/components/threads/Thread/MessageForm/index.tsx
2384
- import { jsx as jsx43, jsxs as jsxs12 } from "react/jsx-runtime";
2391
+ import { jsx as jsx44, jsxs as jsxs12 } from "react/jsx-runtime";
2385
2392
  var MessageForm = function() {
2386
- return /* @__PURE__ */ jsx43(Root3, {
2393
+ return /* @__PURE__ */ jsx44(Root3, {
2387
2394
  children: /* @__PURE__ */ jsxs12(Field.Root, {
2388
2395
  children: [
2389
- /* @__PURE__ */ jsx43(Text5, {
2396
+ /* @__PURE__ */ jsx44(Text5, {
2390
2397
  size: "2",
2391
2398
  style: {
2392
2399
  flexGrow: 1
2393
2400
  },
2394
- children: /* @__PURE__ */ jsx43(Flex14, {
2401
+ children: /* @__PURE__ */ jsx44(Flex14, {
2395
2402
  flexGrow: "1",
2396
2403
  direction: "column",
2397
- children: /* @__PURE__ */ jsx43(Field.Control, {})
2404
+ children: /* @__PURE__ */ jsx44(Field.Control, {})
2398
2405
  })
2399
2406
  }),
2400
- /* @__PURE__ */ jsx43(Flex14, {
2407
+ /* @__PURE__ */ jsx44(Flex14, {
2401
2408
  flexShrink: "0",
2402
2409
  align: "end",
2403
- children: /* @__PURE__ */ jsx43(Submit, {})
2410
+ children: /* @__PURE__ */ jsx44(Submit, {})
2404
2411
  })
2405
2412
  ]
2406
2413
  })
@@ -2414,13 +2421,13 @@ import { Flex as Flex15 } from "@radix-ui/themes";
2414
2421
  // src/components/threads/Thread/Provider/index.tsx
2415
2422
  var Provider2 = SuperinterfaceProvider;
2416
2423
  // src/components/threads/Thread/Root/index.tsx
2417
- import { jsx as jsx44 } from "react/jsx-runtime";
2424
+ import { jsx as jsx45 } from "react/jsx-runtime";
2418
2425
  var Root5 = function(_param) {
2419
2426
  var children = _param.children, rest = _object_without_properties(_param, [
2420
2427
  "children"
2421
2428
  ]);
2422
- return /* @__PURE__ */ jsx44(Provider2, _object_spread_props(_object_spread({}, rest), {
2423
- children: /* @__PURE__ */ jsx44(Flex15, {
2429
+ return /* @__PURE__ */ jsx45(Provider2, _object_spread_props(_object_spread({}, rest), {
2430
+ children: /* @__PURE__ */ jsx45(Flex15, {
2424
2431
  direction: "column",
2425
2432
  flexGrow: "1",
2426
2433
  children: children
@@ -2428,12 +2435,12 @@ var Root5 = function(_param) {
2428
2435
  }));
2429
2436
  };
2430
2437
  // src/components/threads/Thread/index.tsx
2431
- import { jsx as jsx45, jsxs as jsxs13 } from "react/jsx-runtime";
2438
+ import { jsx as jsx46, jsxs as jsxs13 } from "react/jsx-runtime";
2432
2439
  var Thread = function(props) {
2433
2440
  return /* @__PURE__ */ jsxs13(Root5, _object_spread_props(_object_spread({}, props), {
2434
2441
  children: [
2435
- /* @__PURE__ */ jsx45(Messages, {}),
2436
- /* @__PURE__ */ jsx45(MessageForm, {})
2442
+ /* @__PURE__ */ jsx46(Messages, {}),
2443
+ /* @__PURE__ */ jsx46(MessageForm, {})
2437
2444
  ]
2438
2445
  }));
2439
2446
  };
@@ -2459,12 +2466,12 @@ var useThreadDialogContext = function() {
2459
2466
  return useContext12(ThreadDialogContext);
2460
2467
  };
2461
2468
  // src/components/threads/ThreadDialog/Provider/index.tsx
2462
- import { jsx as jsx46 } from "react/jsx-runtime";
2469
+ import { jsx as jsx47 } from "react/jsx-runtime";
2463
2470
  var Provider3 = function(param) {
2464
2471
  var children = param.children;
2465
2472
  var threadDialogContext = useThreadDialogContext();
2466
2473
  var _useState = _sliced_to_array(useState(threadDialogContext.isOpen), 2), isOpen = _useState[0], setIsOpen = _useState[1];
2467
- return /* @__PURE__ */ jsx46(ThreadDialogContext.Provider, {
2474
+ return /* @__PURE__ */ jsx47(ThreadDialogContext.Provider, {
2468
2475
  value: {
2469
2476
  isOpen: isOpen,
2470
2477
  setIsOpen: setIsOpen
@@ -2479,25 +2486,25 @@ import * as Toast2 from "@radix-ui/react-toast";
2479
2486
  import * as Toast from "@radix-ui/react-toast";
2480
2487
  import { Card, Text as Text6, Flex as Flex16 } from "@radix-ui/themes";
2481
2488
  import { CheckCircledIcon as CheckCircledIcon2, CrossCircledIcon } from "@radix-ui/react-icons";
2482
- import { jsx as jsx47, jsxs as jsxs14 } from "react/jsx-runtime";
2489
+ import { jsx as jsx48, jsxs as jsxs14 } from "react/jsx-runtime";
2483
2490
  var CustomToast = function(param) {
2484
2491
  var toast = param.toast;
2485
- return /* @__PURE__ */ jsx47(Toast.Root, {
2486
- children: /* @__PURE__ */ jsx47(Card, {
2487
- children: /* @__PURE__ */ jsx47(Toast.Title, {
2492
+ return /* @__PURE__ */ jsx48(Toast.Root, {
2493
+ children: /* @__PURE__ */ jsx48(Card, {
2494
+ children: /* @__PURE__ */ jsx48(Toast.Title, {
2488
2495
  children: /* @__PURE__ */ jsxs14(Flex16, {
2489
2496
  children: [
2490
- /* @__PURE__ */ jsx47(Flex16, {
2497
+ /* @__PURE__ */ jsx48(Flex16, {
2491
2498
  pr: "2",
2492
2499
  height: "14px",
2493
2500
  align: "center",
2494
- children: toast.type === "success" ? /* @__PURE__ */ jsx47(CheckCircledIcon2, {
2501
+ children: toast.type === "success" ? /* @__PURE__ */ jsx48(CheckCircledIcon2, {
2495
2502
  color: "var(--accent-9)"
2496
- }) : /* @__PURE__ */ jsx47(CrossCircledIcon, {
2503
+ }) : /* @__PURE__ */ jsx48(CrossCircledIcon, {
2497
2504
  color: "var(--red-9)"
2498
2505
  })
2499
2506
  }),
2500
- /* @__PURE__ */ jsx47(Text6, {
2507
+ /* @__PURE__ */ jsx48(Text6, {
2501
2508
  weight: "medium",
2502
2509
  size: "1",
2503
2510
  children: toast.message
@@ -2509,7 +2516,7 @@ var CustomToast = function(param) {
2509
2516
  });
2510
2517
  };
2511
2518
  // src/components/toasts/ToastsProvider/index.tsx
2512
- import { jsx as jsx48, jsxs as jsxs15 } from "react/jsx-runtime";
2519
+ import { jsx as jsx49, jsxs as jsxs15 } from "react/jsx-runtime";
2513
2520
  var ToastsProvider = function(param) {
2514
2521
  var children = param.children;
2515
2522
  var _useState2 = _sliced_to_array(useState2([]), 2), toasts = _useState2[0], setToasts = _useState2[1];
@@ -2520,7 +2527,7 @@ var ToastsProvider = function(param) {
2520
2527
  ]);
2521
2528
  });
2522
2529
  }, []);
2523
- return /* @__PURE__ */ jsx48(ToastsContext.Provider, {
2530
+ return /* @__PURE__ */ jsx49(ToastsContext.Provider, {
2524
2531
  value: {
2525
2532
  toasts: toasts,
2526
2533
  addToast: addToast
@@ -2529,11 +2536,11 @@ var ToastsProvider = function(param) {
2529
2536
  children: [
2530
2537
  children,
2531
2538
  Array.from(toasts).map(function(toast, index) {
2532
- return /* @__PURE__ */ jsx48(CustomToast, {
2539
+ return /* @__PURE__ */ jsx49(CustomToast, {
2533
2540
  toast: toast
2534
2541
  }, index);
2535
2542
  }),
2536
- /* @__PURE__ */ jsx48(Toast2.Viewport, {
2543
+ /* @__PURE__ */ jsx49(Toast2.Viewport, {
2537
2544
  style: {
2538
2545
  position: "absolute",
2539
2546
  bottom: 0,
@@ -2555,22 +2562,22 @@ var ToastsProvider = function(param) {
2555
2562
  });
2556
2563
  };
2557
2564
  // src/components/threads/ThreadDialog/Root/index.tsx
2558
- import { jsx as jsx49 } from "react/jsx-runtime";
2565
+ import { jsx as jsx50 } from "react/jsx-runtime";
2559
2566
  var Root7 = function(param) {
2560
2567
  var children = param.children;
2561
- return /* @__PURE__ */ jsx49(ToastsProvider, {
2562
- children: /* @__PURE__ */ jsx49(Provider3, {
2568
+ return /* @__PURE__ */ jsx50(ToastsProvider, {
2569
+ children: /* @__PURE__ */ jsx50(Provider3, {
2563
2570
  children: children
2564
2571
  })
2565
2572
  });
2566
2573
  };
2567
2574
  // src/components/threads/ThreadDialog/Trigger/index.tsx
2568
2575
  import { Flex as Flex17 } from "@radix-ui/themes";
2569
- import { jsx as jsx50 } from "react/jsx-runtime";
2576
+ import { jsx as jsx51 } from "react/jsx-runtime";
2570
2577
  var Trigger = function(param) {
2571
2578
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
2572
2579
  var _useThreadDialogContext = useThreadDialogContext(), setIsOpen = _useThreadDialogContext.setIsOpen, isOpen = _useThreadDialogContext.isOpen;
2573
- return /* @__PURE__ */ jsx50(Flex17, {
2580
+ return /* @__PURE__ */ jsx51(Flex17, {
2574
2581
  display: {
2575
2582
  initial: isOpen ? "none" : "flex",
2576
2583
  sm: "flex"
@@ -2596,12 +2603,12 @@ var Trigger = function(param) {
2596
2603
  // src/components/threads/ThreadDialog/Button/index.tsx
2597
2604
  import { IconButton as IconButton2 } from "@radix-ui/themes";
2598
2605
  import { ChatBubbleIcon } from "@radix-ui/react-icons";
2599
- import { jsx as jsx51 } from "react/jsx-runtime";
2606
+ import { jsx as jsx52 } from "react/jsx-runtime";
2600
2607
  var Button2 = function() {
2601
- return /* @__PURE__ */ jsx51(IconButton2, {
2608
+ return /* @__PURE__ */ jsx52(IconButton2, {
2602
2609
  size: "4",
2603
2610
  radius: "full",
2604
- children: /* @__PURE__ */ jsx51(ChatBubbleIcon, {})
2611
+ children: /* @__PURE__ */ jsx52(ChatBubbleIcon, {})
2605
2612
  });
2606
2613
  };
2607
2614
  // src/components/threads/ThreadDialog/Content/index.tsx
@@ -2609,10 +2616,10 @@ import { Card as Card2, Inset, Flex as Flex19 } from "@radix-ui/themes";
2609
2616
  // src/components/threads/ThreadDialog/Close/index.tsx
2610
2617
  import { Cross1Icon } from "@radix-ui/react-icons";
2611
2618
  import { IconButton as IconButton3, Flex as Flex18 } from "@radix-ui/themes";
2612
- import { jsx as jsx52 } from "react/jsx-runtime";
2619
+ import { jsx as jsx53 } from "react/jsx-runtime";
2613
2620
  var Close = function() {
2614
2621
  var _useThreadDialogContext = useThreadDialogContext(), setIsOpen = _useThreadDialogContext.setIsOpen, isOpen = _useThreadDialogContext.isOpen;
2615
- return /* @__PURE__ */ jsx52(Flex18, {
2622
+ return /* @__PURE__ */ jsx53(Flex18, {
2616
2623
  display: {
2617
2624
  initial: isOpen ? "flex" : "none",
2618
2625
  sm: "none"
@@ -2632,20 +2639,20 @@ var Close = function() {
2632
2639
  style: {
2633
2640
  zIndex: 9999999999
2634
2641
  },
2635
- children: /* @__PURE__ */ jsx52(IconButton3, {
2642
+ children: /* @__PURE__ */ jsx53(IconButton3, {
2636
2643
  size: "2",
2637
2644
  variant: "soft",
2638
- children: /* @__PURE__ */ jsx52(Cross1Icon, {})
2645
+ children: /* @__PURE__ */ jsx53(Cross1Icon, {})
2639
2646
  })
2640
2647
  });
2641
2648
  };
2642
2649
  // src/components/threads/ThreadDialog/Content/index.tsx
2643
- import { jsx as jsx53, jsxs as jsxs16 } from "react/jsx-runtime";
2650
+ import { jsx as jsx54, jsxs as jsxs16 } from "react/jsx-runtime";
2644
2651
  var Root8 = function(param) {
2645
2652
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
2646
2653
  var isOpen = useThreadDialogContext().isOpen;
2647
2654
  if (!isOpen) return null;
2648
- return /* @__PURE__ */ jsx53(Flex19, {
2655
+ return /* @__PURE__ */ jsx54(Flex19, {
2649
2656
  direction: "column",
2650
2657
  justify: "end",
2651
2658
  position: "fixed",
@@ -2684,7 +2691,7 @@ var Root8 = function(param) {
2684
2691
  flexGrow: 1
2685
2692
  },
2686
2693
  children: [
2687
- /* @__PURE__ */ jsx53(Inset, {
2694
+ /* @__PURE__ */ jsx54(Inset, {
2688
2695
  clip: "padding-box",
2689
2696
  side: "all",
2690
2697
  pb: "current",
@@ -2694,31 +2701,31 @@ var Root8 = function(param) {
2694
2701
  },
2695
2702
  children: children
2696
2703
  }),
2697
- /* @__PURE__ */ jsx53(Close, {})
2704
+ /* @__PURE__ */ jsx54(Close, {})
2698
2705
  ]
2699
2706
  })
2700
2707
  });
2701
2708
  };
2702
2709
  var Content4 = function(param) {
2703
2710
  var _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
2704
- return /* @__PURE__ */ jsx53(Root8, {
2711
+ return /* @__PURE__ */ jsx54(Root8, {
2705
2712
  style: style,
2706
2713
  children: /* @__PURE__ */ jsxs16(Thread.Root, {
2707
2714
  children: [
2708
- /* @__PURE__ */ jsx53(Thread.Messages, {
2715
+ /* @__PURE__ */ jsx54(Thread.Messages, {
2709
2716
  style: {
2710
2717
  paddingTop: "var(--space-5)",
2711
2718
  paddingRight: "var(--space-5)",
2712
2719
  paddingLeft: "var(--space-5)"
2713
2720
  }
2714
2721
  }),
2715
- /* @__PURE__ */ jsx53(Flex19, {
2722
+ /* @__PURE__ */ jsx54(Flex19, {
2716
2723
  direction: "column",
2717
2724
  pl: "5",
2718
2725
  pr: "5",
2719
2726
  pb: "3",
2720
2727
  flexShrink: "0",
2721
- children: /* @__PURE__ */ jsx53(Thread.MessageForm, {})
2728
+ children: /* @__PURE__ */ jsx54(Thread.MessageForm, {})
2722
2729
  })
2723
2730
  ]
2724
2731
  })
@@ -2726,13 +2733,13 @@ var Content4 = function(param) {
2726
2733
  };
2727
2734
  Content4.Root = Root8;
2728
2735
  // src/components/threads/ThreadDialog/index.tsx
2729
- import { jsx as jsx54, jsxs as jsxs17 } from "react/jsx-runtime";
2736
+ import { jsx as jsx55, jsxs as jsxs17 } from "react/jsx-runtime";
2730
2737
  var ThreadDialog = function() {
2731
2738
  return /* @__PURE__ */ jsxs17(Root7, {
2732
2739
  children: [
2733
- /* @__PURE__ */ jsx54(Content4, {}),
2734
- /* @__PURE__ */ jsx54(Trigger, {
2735
- children: /* @__PURE__ */ jsx54(Button2, {})
2740
+ /* @__PURE__ */ jsx55(Content4, {}),
2741
+ /* @__PURE__ */ jsx55(Trigger, {
2742
+ children: /* @__PURE__ */ jsx55(Button2, {})
2736
2743
  })
2737
2744
  ]
2738
2745
  });
@@ -2995,7 +3002,7 @@ import nlp from "compromise";
2995
3002
  import { Howler } from "howler";
2996
3003
  import { useAudioPlayer as useAudioPlayer2 } from "react-use-audio-player";
2997
3004
  // src/hooks/audioThreads/useMessageAudio/lib/input.ts
2998
- import { isEmpty } from "radash";
3005
+ import { isEmpty as isEmpty2 } from "radash";
2999
3006
  var input = function(param) {
3000
3007
  var message = param.message;
3001
3008
  var textContents = message.content.filter(function(c) {
@@ -3004,7 +3011,7 @@ var input = function(param) {
3004
3011
  var result = textContents.map(function(c) {
3005
3012
  return c.text.value;
3006
3013
  }).join(" ");
3007
- if (isEmpty(result)) return null;
3014
+ if (isEmpty2(result)) return null;
3008
3015
  return result;
3009
3016
  };
3010
3017
  // src/hooks/audioThreads/useMessageAudio/lib/isHtmlAudioSupported.ts
@@ -3180,7 +3187,7 @@ var useMessageAudio = function(param) {
3180
3187
  });
3181
3188
  };
3182
3189
  // src/components/threads/AudioThread/Root/index.tsx
3183
- import { jsx as jsx55 } from "react/jsx-runtime";
3190
+ import { jsx as jsx56 } from "react/jsx-runtime";
3184
3191
  var Root9 = function(param) {
3185
3192
  var children = param.children;
3186
3193
  var createMessageProps = useCreateMessage();
@@ -3238,13 +3245,13 @@ var Root9 = function(param) {
3238
3245
  createMessageProps: createMessageProps,
3239
3246
  messageAudioProps: messageAudioProps
3240
3247
  }).status;
3241
- return /* @__PURE__ */ jsx55(AudioThreadContext.Provider, {
3248
+ return /* @__PURE__ */ jsx56(AudioThreadContext.Provider, {
3242
3249
  value: {
3243
3250
  status: status,
3244
3251
  recorderProps: recorderProps,
3245
3252
  messageAudioProps: messageAudioProps
3246
3253
  },
3247
- children: /* @__PURE__ */ jsx55(Flex20, {
3254
+ children: /* @__PURE__ */ jsx56(Flex20, {
3248
3255
  direction: "column",
3249
3256
  flexGrow: "1",
3250
3257
  p: "9",
@@ -3266,7 +3273,7 @@ import _8 from "lodash";
3266
3273
  import { Flex as Flex21, Grid } from "@radix-ui/themes";
3267
3274
  import { useState as useState5, useEffect as useEffect6, useCallback as useCallback4 } from "react";
3268
3275
  import { cluster } from "radash";
3269
- import { jsx as jsx56 } from "react/jsx-runtime";
3276
+ import { jsx as jsx57 } from "react/jsx-runtime";
3270
3277
  var barCount = 4;
3271
3278
  var BarsVisualizer = function(param) {
3272
3279
  var visualizationAnalyser = param.visualizationAnalyser, backgroundColor = param.backgroundColor, height = param.height, barWidth = param.barWidth;
@@ -3297,7 +3304,7 @@ var BarsVisualizer = function(param) {
3297
3304
  draw,
3298
3305
  visualizationAnalyser
3299
3306
  ]);
3300
- return /* @__PURE__ */ jsx56(Grid, {
3307
+ return /* @__PURE__ */ jsx57(Grid, {
3301
3308
  columns: "".concat(barCount),
3302
3309
  gap: "1",
3303
3310
  width: "auto",
@@ -3306,12 +3313,12 @@ var BarsVisualizer = function(param) {
3306
3313
  gridTemplateColumns: "repeat(4, minmax(0, 1fr))"
3307
3314
  },
3308
3315
  children: barHeights.map(function(barHeight, index) {
3309
- return /* @__PURE__ */ jsx56(Flex21, {
3316
+ return /* @__PURE__ */ jsx57(Flex21, {
3310
3317
  direction: "column",
3311
3318
  align: "center",
3312
3319
  justify: "center",
3313
3320
  height: height,
3314
- children: /* @__PURE__ */ jsx56(Flex21, {
3321
+ children: /* @__PURE__ */ jsx57(Flex21, {
3315
3322
  minHeight: "50%",
3316
3323
  maxHeight: "100%",
3317
3324
  height: "".concat(barHeight + 20, "%"),
@@ -3326,7 +3333,7 @@ var BarsVisualizer = function(param) {
3326
3333
  });
3327
3334
  };
3328
3335
  // src/components/threads/AudioThread/Visualization/index.tsx
3329
- import { jsx as jsx57, jsxs as jsxs18 } from "react/jsx-runtime";
3336
+ import { jsx as jsx58, jsxs as jsxs18 } from "react/jsx-runtime";
3330
3337
  var Visualization = function() {
3331
3338
  var audioThreadContext = useAudioThreadContext();
3332
3339
  var assistantNameContext = useContext14(AssistantNameContext);
@@ -3361,7 +3368,7 @@ var Visualization = function() {
3361
3368
  mb: "3",
3362
3369
  flexGrow: "1",
3363
3370
  children: [
3364
- /* @__PURE__ */ jsx57(Flex22, {
3371
+ /* @__PURE__ */ jsx58(Flex22, {
3365
3372
  align: "center",
3366
3373
  justify: "center",
3367
3374
  height: "200px",
@@ -3371,7 +3378,7 @@ var Visualization = function() {
3371
3378
  borderRadius: "9999px",
3372
3379
  scale: scale
3373
3380
  },
3374
- children: /* @__PURE__ */ jsx57(BarsVisualizer, {
3381
+ children: /* @__PURE__ */ jsx58(BarsVisualizer, {
3375
3382
  visualizationAnalyser: audioThreadContext.messageAudioProps.visualizationAnalyser,
3376
3383
  backgroundColor: audioThreadContext.status === "playing" ? "var(--accent-11)" : "var(--gray-11)",
3377
3384
  height: "40px",
@@ -3383,8 +3390,8 @@ var Visualization = function() {
3383
3390
  gap: "3",
3384
3391
  pt: "5",
3385
3392
  children: [
3386
- /* @__PURE__ */ jsx57(AssistantAvatar, {}),
3387
- /* @__PURE__ */ jsx57(Name, {
3393
+ /* @__PURE__ */ jsx58(AssistantAvatar, {}),
3394
+ /* @__PURE__ */ jsx58(Name, {
3388
3395
  children: assistantNameContext
3389
3396
  })
3390
3397
  ]
@@ -3394,7 +3401,7 @@ var Visualization = function() {
3394
3401
  };
3395
3402
  // src/components/threads/AudioThread/Status/StatusMessages.tsx
3396
3403
  import { Flex as Flex23, Text as Text7 } from "@radix-ui/themes";
3397
- import { jsx as jsx58, jsxs as jsxs19 } from "react/jsx-runtime";
3404
+ import { jsx as jsx59, jsxs as jsxs19 } from "react/jsx-runtime";
3398
3405
  var html = function(param) {
3399
3406
  var texts = param.texts;
3400
3407
  return "\n .status-messages-texts:after {\n content: '".concat(texts[0], "';\n animation: texts ").concat(texts.length * 5, "s linear infinite;\n }\n\n @keyframes texts {\n ").concat(texts.map(function(_10, i) {
@@ -3407,13 +3414,13 @@ var StatusMessages = function(param) {
3407
3414
  justify: "center",
3408
3415
  pb: "5",
3409
3416
  children: [
3410
- /* @__PURE__ */ jsx58(Text7, {
3417
+ /* @__PURE__ */ jsx59(Text7, {
3411
3418
  size: "2",
3412
3419
  weight: "regular",
3413
3420
  color: "gray",
3414
3421
  className: "status-messages-texts"
3415
3422
  }),
3416
- /* @__PURE__ */ jsx58("style", {
3423
+ /* @__PURE__ */ jsx59("style", {
3417
3424
  dangerouslySetInnerHTML: {
3418
3425
  __html: html({
3419
3426
  texts: texts
@@ -3424,11 +3431,11 @@ var StatusMessages = function(param) {
3424
3431
  });
3425
3432
  };
3426
3433
  // src/components/threads/AudioThread/Status/index.tsx
3427
- import { jsx as jsx59 } from "react/jsx-runtime";
3434
+ import { jsx as jsx60 } from "react/jsx-runtime";
3428
3435
  var Status = function() {
3429
3436
  var audioThreadContext = useAudioThreadContext();
3430
3437
  if (audioThreadContext.status === "recording") {
3431
- return /* @__PURE__ */ jsx59(StatusMessages, {
3438
+ return /* @__PURE__ */ jsx60(StatusMessages, {
3432
3439
  texts: [
3433
3440
  "Start speaking",
3434
3441
  "Listening",
@@ -3442,20 +3449,20 @@ var Status = function() {
3442
3449
  "idle",
3443
3450
  "playerPaused"
3444
3451
  ].includes(audioThreadContext.status)) {
3445
- return /* @__PURE__ */ jsx59(StatusMessages, {
3452
+ return /* @__PURE__ */ jsx60(StatusMessages, {
3446
3453
  texts: [
3447
3454
  "Click the button below to activate"
3448
3455
  ]
3449
3456
  });
3450
3457
  }
3451
3458
  if (audioThreadContext.status === "playing") {
3452
- return /* @__PURE__ */ jsx59(StatusMessages, {
3459
+ return /* @__PURE__ */ jsx60(StatusMessages, {
3453
3460
  texts: [
3454
3461
  "Click the button below to interrupt"
3455
3462
  ]
3456
3463
  });
3457
3464
  }
3458
- return /* @__PURE__ */ jsx59(StatusMessages, {
3465
+ return /* @__PURE__ */ jsx60(StatusMessages, {
3459
3466
  texts: [
3460
3467
  "Thinking"
3461
3468
  ]
@@ -3464,9 +3471,9 @@ var Status = function() {
3464
3471
  // src/components/threads/AudioThread/Form/index.tsx
3465
3472
  import { Flex as Flex25 } from "@radix-ui/themes";
3466
3473
  // src/components/threads/AudioThread/Form/MicIcon.tsx
3467
- import { jsx as jsx60 } from "react/jsx-runtime";
3474
+ import { jsx as jsx61 } from "react/jsx-runtime";
3468
3475
  var MicIcon = function(props) {
3469
- return /* @__PURE__ */ jsx60("svg", _object_spread_props(_object_spread({
3476
+ return /* @__PURE__ */ jsx61("svg", _object_spread_props(_object_spread({
3470
3477
  xmlns: "http://www.w3.org/2000/svg",
3471
3478
  fill: "currentColor",
3472
3479
  stroke: "currentColor",
@@ -3475,7 +3482,7 @@ var MicIcon = function(props) {
3475
3482
  height: "15",
3476
3483
  width: "15"
3477
3484
  }, props), {
3478
- children: /* @__PURE__ */ jsx60("path", {
3485
+ children: /* @__PURE__ */ jsx61("path", {
3479
3486
  stroke: "none",
3480
3487
  d: "M192 0c-53 0-96 43-96 96v160c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464h-48c-13.3 0-24 10.7-24 24s10.7 24 24 24h144c13.3 0 24-10.7 24-24s-10.7-24-24-24h-48v-33.6c85.8-11.7 152-85.3 152-174.4v-40c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128S64 326.7 64 256v-40z"
3481
3488
  })
@@ -3484,7 +3491,7 @@ var MicIcon = function(props) {
3484
3491
  // src/components/threads/AudioThread/Form/ActionButton/index.tsx
3485
3492
  import { Flex as Flex24, IconButton as IconButton4 } from "@radix-ui/themes";
3486
3493
  import { StopIcon as StopIcon2, PauseIcon, ArrowUpIcon as ArrowUpIcon2, ResumeIcon } from "@radix-ui/react-icons";
3487
- import { jsx as jsx61, jsxs as jsxs20 } from "react/jsx-runtime";
3494
+ import { jsx as jsx62, jsxs as jsxs20 } from "react/jsx-runtime";
3488
3495
  var ActionButton = function() {
3489
3496
  var audioThreadContext = useAudioThreadContext();
3490
3497
  var superinterfaceContext = useSuperinterfaceContext();
@@ -3492,37 +3499,37 @@ var ActionButton = function() {
3492
3499
  return /* @__PURE__ */ jsxs20(Flex24, {
3493
3500
  align: "center",
3494
3501
  children: [
3495
- /* @__PURE__ */ jsx61(Flex24, {
3502
+ /* @__PURE__ */ jsx62(Flex24, {
3496
3503
  mr: "3",
3497
3504
  ml: "-7",
3498
- children: /* @__PURE__ */ jsx61(IconButton4, {
3505
+ children: /* @__PURE__ */ jsx62(IconButton4, {
3499
3506
  onClick: audioThreadContext.recorderProps.pause,
3500
3507
  color: "gray",
3501
3508
  variant: "soft",
3502
3509
  size: "1",
3503
- children: /* @__PURE__ */ jsx61(PauseIcon, {})
3510
+ children: /* @__PURE__ */ jsx62(PauseIcon, {})
3504
3511
  })
3505
3512
  }),
3506
- /* @__PURE__ */ jsx61(IconButton4, {
3513
+ /* @__PURE__ */ jsx62(IconButton4, {
3507
3514
  onClick: audioThreadContext.recorderProps.stop,
3508
3515
  highContrast: true,
3509
3516
  variant: "soft",
3510
3517
  size: "4",
3511
- children: /* @__PURE__ */ jsx61(ArrowUpIcon2, {})
3518
+ children: /* @__PURE__ */ jsx62(ArrowUpIcon2, {})
3512
3519
  })
3513
3520
  ]
3514
3521
  });
3515
3522
  }
3516
3523
  if (audioThreadContext.status === "recorderPaused") {
3517
- return /* @__PURE__ */ jsx61(IconButton4, {
3524
+ return /* @__PURE__ */ jsx62(IconButton4, {
3518
3525
  onClick: audioThreadContext.recorderProps.resume,
3519
3526
  color: "red",
3520
3527
  size: "4",
3521
- children: /* @__PURE__ */ jsx61(ResumeIcon, {})
3528
+ children: /* @__PURE__ */ jsx62(ResumeIcon, {})
3522
3529
  });
3523
3530
  }
3524
3531
  if (audioThreadContext.status === "idle") {
3525
- return /* @__PURE__ */ jsx61(IconButton4, {
3532
+ return /* @__PURE__ */ jsx62(IconButton4, {
3526
3533
  onClick: function() {
3527
3534
  return audioThreadContext.recorderProps.start();
3528
3535
  },
@@ -3531,7 +3538,7 @@ var ActionButton = function() {
3531
3538
  });
3532
3539
  }
3533
3540
  if (audioThreadContext.status === "playing") {
3534
- return /* @__PURE__ */ jsx61(IconButton4, {
3541
+ return /* @__PURE__ */ jsx62(IconButton4, {
3535
3542
  onClick: function() {
3536
3543
  var _superinterfaceContext_createMessageAbortControllerRef_current;
3537
3544
  audioThreadContext.messageAudioProps.stop();
@@ -3541,26 +3548,26 @@ var ActionButton = function() {
3541
3548
  size: "4",
3542
3549
  color: "gray",
3543
3550
  variant: "soft",
3544
- children: /* @__PURE__ */ jsx61(StopIcon2, {})
3551
+ children: /* @__PURE__ */ jsx62(StopIcon2, {})
3545
3552
  });
3546
3553
  }
3547
3554
  if (audioThreadContext.status === "playerPaused") {
3548
- return /* @__PURE__ */ jsx61(IconButton4, {
3555
+ return /* @__PURE__ */ jsx62(IconButton4, {
3549
3556
  onClick: function() {
3550
3557
  return audioThreadContext.messageAudioProps.play();
3551
3558
  },
3552
3559
  size: "4",
3553
- children: /* @__PURE__ */ jsx61(ResumeIcon, {})
3560
+ children: /* @__PURE__ */ jsx62(ResumeIcon, {})
3554
3561
  });
3555
3562
  }
3556
- return /* @__PURE__ */ jsx61(IconButton4, {
3563
+ return /* @__PURE__ */ jsx62(IconButton4, {
3557
3564
  size: "4",
3558
3565
  variant: "soft",
3559
3566
  disabled: true
3560
3567
  });
3561
3568
  };
3562
3569
  // src/components/threads/AudioThread/Form/index.tsx
3563
- import { jsx as jsx62, jsxs as jsxs21 } from "react/jsx-runtime";
3570
+ import { jsx as jsx63, jsxs as jsxs21 } from "react/jsx-runtime";
3564
3571
  var Form = function() {
3565
3572
  var audioThreadContext = useAudioThreadContext();
3566
3573
  return /* @__PURE__ */ jsxs21(Flex25, {
@@ -3571,24 +3578,24 @@ var Form = function() {
3571
3578
  pb: "3",
3572
3579
  align: "center",
3573
3580
  children: [
3574
- /* @__PURE__ */ jsx62(Flex25, {
3581
+ /* @__PURE__ */ jsx63(Flex25, {
3575
3582
  ml: "-22.5px",
3576
3583
  mr: "2",
3577
3584
  align: "center",
3578
- children: /* @__PURE__ */ jsx62(MicIcon, {
3585
+ children: /* @__PURE__ */ jsx63(MicIcon, {
3579
3586
  style: {
3580
3587
  color: audioThreadContext.status === "recording" ? "var(--accent-11)" : "var(--gray-11)"
3581
3588
  }
3582
3589
  })
3583
3590
  }),
3584
- /* @__PURE__ */ jsx62(Flex25, {
3591
+ /* @__PURE__ */ jsx63(Flex25, {
3585
3592
  px: "2",
3586
3593
  py: "1",
3587
3594
  style: {
3588
3595
  backgroundColor: audioThreadContext.status === "recording" ? "var(--accent-4)" : "var(--gray-4)",
3589
3596
  borderRadius: "var(--radius-6)"
3590
3597
  },
3591
- children: /* @__PURE__ */ jsx62(BarsVisualizer, {
3598
+ children: /* @__PURE__ */ jsx63(BarsVisualizer, {
3592
3599
  visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser,
3593
3600
  backgroundColor: audioThreadContext.status === "recording" ? "var(--accent-11)" : "var(--gray-11)",
3594
3601
  height: "20px",
@@ -3597,18 +3604,18 @@ var Form = function() {
3597
3604
  })
3598
3605
  ]
3599
3606
  }),
3600
- /* @__PURE__ */ jsx62(ActionButton, {})
3607
+ /* @__PURE__ */ jsx63(ActionButton, {})
3601
3608
  ]
3602
3609
  });
3603
3610
  };
3604
3611
  // src/components/threads/AudioThread/index.tsx
3605
- import { jsx as jsx63, jsxs as jsxs22 } from "react/jsx-runtime";
3612
+ import { jsx as jsx64, jsxs as jsxs22 } from "react/jsx-runtime";
3606
3613
  var AudioThread = function(props) {
3607
3614
  return /* @__PURE__ */ jsxs22(Root9, _object_spread_props(_object_spread({}, props), {
3608
3615
  children: [
3609
- /* @__PURE__ */ jsx63(Visualization, {}),
3610
- /* @__PURE__ */ jsx63(Status, {}),
3611
- /* @__PURE__ */ jsx63(Form, {})
3616
+ /* @__PURE__ */ jsx64(Visualization, {}),
3617
+ /* @__PURE__ */ jsx64(Status, {}),
3618
+ /* @__PURE__ */ jsx64(Form, {})
3612
3619
  ]
3613
3620
  }));
3614
3621
  };
@@ -3616,15 +3623,15 @@ AudioThread.Root = Root9;
3616
3623
  AudioThread.Visualization = Visualization;
3617
3624
  AudioThread.Form = Form;
3618
3625
  // src/components/threads/AudioThreadDialog/index.tsx
3619
- import { jsx as jsx64, jsxs as jsxs23 } from "react/jsx-runtime";
3626
+ import { jsx as jsx65, jsxs as jsxs23 } from "react/jsx-runtime";
3620
3627
  var AudioThreadDialog = function() {
3621
3628
  return /* @__PURE__ */ jsxs23(Root7, {
3622
3629
  children: [
3623
- /* @__PURE__ */ jsx64(Content4.Root, {
3624
- children: /* @__PURE__ */ jsx64(AudioThread, {})
3630
+ /* @__PURE__ */ jsx65(Content4.Root, {
3631
+ children: /* @__PURE__ */ jsx65(AudioThread, {})
3625
3632
  }),
3626
- /* @__PURE__ */ jsx64(Trigger, {
3627
- children: /* @__PURE__ */ jsx64(Button2, {})
3633
+ /* @__PURE__ */ jsx65(Trigger, {
3634
+ children: /* @__PURE__ */ jsx65(Button2, {})
3628
3635
  })
3629
3636
  ]
3630
3637
  });
@@ -3637,17 +3644,17 @@ AudioThreadDialog.Content = Content4;
3637
3644
  import { useMemo as useMemo14 } from "react";
3638
3645
  // src/components/suggestions/Suggestions/Content.tsx
3639
3646
  import { useMemo as useMemo13 } from "react";
3640
- import { isEmpty as isEmpty2 } from "radash";
3647
+ import { isEmpty as isEmpty3 } from "radash";
3641
3648
  import { onlyText } from "react-children-utilities";
3642
3649
  import { Flex as Flex26 } from "@radix-ui/themes";
3643
3650
  // src/components/suggestions/Suggestions/Item.tsx
3644
3651
  import { ArrowUpIcon as ArrowUpIcon3 } from "@radix-ui/react-icons";
3645
3652
  import { Text as Text8, Button as Button3, Spinner } from "@radix-ui/themes";
3646
- import { jsx as jsx65, jsxs as jsxs24 } from "react/jsx-runtime";
3653
+ import { jsx as jsx66, jsxs as jsxs24 } from "react/jsx-runtime";
3647
3654
  var Item = function(param) {
3648
3655
  var suggestion = param.suggestion, isDisabled = param.isDisabled;
3649
3656
  var _useCreateMessage = useCreateMessage(), createMessage = _useCreateMessage.createMessage, isPending = _useCreateMessage.isPending;
3650
- return /* @__PURE__ */ jsx65(Content5, {
3657
+ return /* @__PURE__ */ jsx66(Content5, {
3651
3658
  onClick: function() {
3652
3659
  createMessage({
3653
3660
  // @ts-ignore-next-line
@@ -3671,14 +3678,14 @@ var Content5 = function(param) {
3671
3678
  flexShrink: 1
3672
3679
  },
3673
3680
  children: [
3674
- /* @__PURE__ */ jsx65(Text8, {
3681
+ /* @__PURE__ */ jsx66(Text8, {
3675
3682
  size: "1",
3676
3683
  weight: "regular",
3677
3684
  children: children
3678
3685
  }),
3679
- /* @__PURE__ */ jsx65(Spinner, {
3686
+ /* @__PURE__ */ jsx66(Spinner, {
3680
3687
  loading: isPending,
3681
- children: /* @__PURE__ */ jsx65(ArrowUpIcon3, {
3688
+ children: /* @__PURE__ */ jsx66(ArrowUpIcon3, {
3682
3689
  style: {
3683
3690
  flexShrink: 0
3684
3691
  }
@@ -3689,26 +3696,26 @@ var Content5 = function(param) {
3689
3696
  };
3690
3697
  Item.Content = Content5;
3691
3698
  // src/components/suggestions/Suggestions/Content.tsx
3692
- import { jsx as jsx66 } from "react/jsx-runtime";
3699
+ import { jsx as jsx67 } from "react/jsx-runtime";
3693
3700
  var Content6 = function(param) {
3694
3701
  var children = param.children;
3695
3702
  var isMutatingMessage = useIsMutatingMessage();
3696
3703
  var suggestions = useMemo13(function() {
3697
3704
  return onlyText(children).split(/\r?\n/).filter(function(c) {
3698
- return !isEmpty2(c);
3705
+ return !isEmpty3(c);
3699
3706
  }).map(function(c) {
3700
3707
  return c.trim();
3701
3708
  });
3702
3709
  }, [
3703
3710
  children
3704
3711
  ]);
3705
- if (isEmpty2(suggestions)) return null;
3706
- return /* @__PURE__ */ jsx66(Flex26, {
3712
+ if (isEmpty3(suggestions)) return null;
3713
+ return /* @__PURE__ */ jsx67(Flex26, {
3707
3714
  gap: "2",
3708
3715
  py: "2",
3709
3716
  wrap: "wrap",
3710
3717
  children: suggestions.map(function(suggestion) {
3711
- return /* @__PURE__ */ jsx66(Item, {
3718
+ return /* @__PURE__ */ jsx67(Item, {
3712
3719
  suggestion: suggestion,
3713
3720
  isDisabled: isMutatingMessage
3714
3721
  }, suggestion);
@@ -3716,7 +3723,7 @@ var Content6 = function(param) {
3716
3723
  });
3717
3724
  };
3718
3725
  // src/components/suggestions/Suggestions/index.tsx
3719
- import { jsx as jsx67 } from "react/jsx-runtime";
3726
+ import { jsx as jsx68 } from "react/jsx-runtime";
3720
3727
  var Suggestions = function(param) {
3721
3728
  var children = param.children;
3722
3729
  var latestMessageProps = useLatestMessage();
@@ -3729,14 +3736,14 @@ var Suggestions = function(param) {
3729
3736
  ]);
3730
3737
  if (latestMessageProps.isLoading) return null;
3731
3738
  if (isDisabled) return null;
3732
- return /* @__PURE__ */ jsx67(Content6, {
3739
+ return /* @__PURE__ */ jsx68(Content6, {
3733
3740
  children: children
3734
3741
  });
3735
3742
  };
3736
3743
  Suggestions.Item = Item;
3737
3744
  // src/components/markdown/MarkdownProvider/index.tsx
3738
3745
  import { useMemo as useMemo15 } from "react";
3739
- import { jsx as jsx68 } from "react/jsx-runtime";
3746
+ import { jsx as jsx69 } from "react/jsx-runtime";
3740
3747
  var MarkdownProvider = function(_param) {
3741
3748
  var children = _param.children, rest = _object_without_properties(_param, [
3742
3749
  "children"
@@ -3748,7 +3755,7 @@ var MarkdownProvider = function(_param) {
3748
3755
  rest,
3749
3756
  prevMarkdownContext
3750
3757
  ]);
3751
- return /* @__PURE__ */ jsx68(MarkdownContext.Provider, {
3758
+ return /* @__PURE__ */ jsx69(MarkdownContext.Provider, {
3752
3759
  value: value,
3753
3760
  children: children
3754
3761
  });
@@ -3761,7 +3768,7 @@ var useComponents = function() {
3761
3768
  return useContext15(ComponentsContext);
3762
3769
  };
3763
3770
  // src/components/components/ComponentsProvider.tsx
3764
- import { jsx as jsx69 } from "react/jsx-runtime";
3771
+ import { jsx as jsx70 } from "react/jsx-runtime";
3765
3772
  var ComponentsProvider = function(_param) {
3766
3773
  var children = _param.children, rest = _object_without_properties(_param, [
3767
3774
  "children"
@@ -3773,7 +3780,7 @@ var ComponentsProvider = function(_param) {
3773
3780
  rest,
3774
3781
  prevComponents
3775
3782
  ]);
3776
- return /* @__PURE__ */ jsx69(ComponentsContext.Provider, {
3783
+ return /* @__PURE__ */ jsx70(ComponentsContext.Provider, {
3777
3784
  value: value,
3778
3785
  children: children
3779
3786
  });