@superinterface/react 2.23.0 → 2.24.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.cjs CHANGED
@@ -569,9 +569,9 @@ var SuperinterfaceProvider = function(param) {
569
569
  });
570
570
  };
571
571
  // src/components/threads/Thread/Messages/index.tsx
572
- var import_themes35 = require("@radix-ui/themes");
572
+ var import_themes42 = require("@radix-ui/themes");
573
573
  // src/components/threads/Thread/Messages/Content/index.tsx
574
- var import_react26 = require("react");
574
+ var import_react33 = require("react");
575
575
  // src/hooks/messages/useMessages/index.tsx
576
576
  var import_react4 = require("react");
577
577
  var import_react_query2 = require("@tanstack/react-query");
@@ -882,8 +882,8 @@ var useToasts = function() {
882
882
  return (0, import_react9.useContext)(ToastsContext);
883
883
  };
884
884
  // src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx
885
- var import_react25 = require("react");
886
- var import_themes32 = require("@radix-ui/themes");
885
+ var import_react32 = require("react");
886
+ var import_themes39 = require("@radix-ui/themes");
887
887
  // src/components/messageGroups/MessageGroupBase/AssistantAvatar.tsx
888
888
  var import_react11 = require("react");
889
889
  var import_themes5 = require("@radix-ui/themes");
@@ -942,11 +942,11 @@ var UserAvatar = function() {
942
942
  });
943
943
  };
944
944
  // src/components/threads/Thread/Messages/Content/MessageGroup/Content/index.tsx
945
- var import_themes31 = require("@radix-ui/themes");
945
+ var import_themes38 = require("@radix-ui/themes");
946
946
  // src/components/threads/Thread/Message/index.tsx
947
- var import_react24 = require("react");
947
+ var import_react31 = require("react");
948
948
  var import_radash4 = require("radash");
949
- var import_themes30 = require("@radix-ui/themes");
949
+ var import_themes37 = require("@radix-ui/themes");
950
950
  // src/components/skeletons/StartingContentSkeleton/index.tsx
951
951
  var import_themes8 = require("@radix-ui/themes");
952
952
  var import_jsx_runtime9 = require("react/jsx-runtime");
@@ -1368,11 +1368,11 @@ var Provider = MessageContext.Provider;
1368
1368
  // src/components/threads/Thread/Message/TextContent.tsx
1369
1369
  var import_react_markdown = __toESM(require("react-markdown"), 1);
1370
1370
  // src/hooks/markdown/useMarkdownContext/index.ts
1371
- var import_react23 = require("react");
1371
+ var import_react30 = require("react");
1372
1372
  // src/contexts/markdown/MarkdownContext/index.ts
1373
- var import_react22 = require("react");
1373
+ var import_react29 = require("react");
1374
1374
  // src/contexts/markdown/MarkdownContext/lib/components/index.tsx
1375
- var import_themes28 = require("@radix-ui/themes");
1375
+ var import_themes35 = require("@radix-ui/themes");
1376
1376
  // src/contexts/markdown/MarkdownContext/lib/components/Paragraph.tsx
1377
1377
  var import_themes18 = require("@radix-ui/themes");
1378
1378
  var import_jsx_runtime26 = require("react/jsx-runtime");
@@ -1477,13 +1477,250 @@ var Code3 = function(param) {
1477
1477
  children: children
1478
1478
  });
1479
1479
  };
1480
- // src/contexts/markdown/MarkdownContext/lib/components/Img.tsx
1480
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isVideoSrc.ts
1481
+ var import_video_extensions = __toESM(require("video-extensions"), 1);
1482
+ var isVideoSrc = function(param) {
1483
+ var src = param.src;
1484
+ return import_video_extensions.default.includes(src.split(".").pop() || "");
1485
+ };
1486
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isAudioSrc.ts
1487
+ var isAudioSrc = function(param) {
1488
+ var src = param.src;
1489
+ return src.endsWith(".mp3") || src.endsWith(".wav");
1490
+ };
1491
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx
1492
+ var import_themes31 = require("@radix-ui/themes");
1493
+ var import_base = require("@vidstack/react/player/styles/base.css");
1494
+ var import_react27 = require("@vidstack/react");
1495
+ // src/components/media/PlayButton.tsx
1496
+ var import_react22 = require("@vidstack/react");
1481
1497
  var import_themes26 = require("@radix-ui/themes");
1498
+ var import_react_icons5 = require("@radix-ui/react-icons");
1482
1499
  var import_jsx_runtime34 = require("react/jsx-runtime");
1483
- var Img = function(props) {
1484
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_themes26.Box, {
1500
+ var PlayButton = function() {
1501
+ var isPaused = (0, import_react22.useMediaState)("paused");
1502
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_themes26.IconButton, {
1503
+ variant: "ghost",
1504
+ asChild: true,
1505
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react22.PlayButton, {
1506
+ children: isPaused ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react_icons5.PlayIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react_icons5.PauseIcon, {})
1507
+ })
1508
+ });
1509
+ };
1510
+ // src/components/media/VolumeButton.tsx
1511
+ var import_react23 = require("@vidstack/react");
1512
+ var import_themes27 = require("@radix-ui/themes");
1513
+ var import_react_icons6 = require("@radix-ui/react-icons");
1514
+ var import_jsx_runtime35 = require("react/jsx-runtime");
1515
+ var VolumeButton = function() {
1516
+ var volume = (0, import_react23.useMediaState)("volume");
1517
+ var isMuted = (0, import_react23.useMediaState)("muted");
1518
+ var remote = (0, import_react23.useMediaRemote)();
1519
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_themes27.HoverCard.Root, {
1520
+ children: [
1521
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.HoverCard.Trigger, {
1522
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.IconButton, {
1523
+ variant: "ghost",
1524
+ asChild: true,
1525
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_react23.MuteButton, {
1526
+ children: isMuted || volume === 0 ? /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_react_icons6.SpeakerOffIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_react_icons6.SpeakerModerateIcon, {})
1527
+ })
1528
+ })
1529
+ }),
1530
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.HoverCard.Content, {
1531
+ size: "1",
1532
+ side: "top",
1533
+ height: "100px",
1534
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.Slider, {
1535
+ size: "1",
1536
+ variant: "soft",
1537
+ orientation: "vertical",
1538
+ value: [
1539
+ volume * 100
1540
+ ],
1541
+ onValueChange: function(param) {
1542
+ var _param = _sliced_to_array(param, 1), value = _param[0];
1543
+ return remote.changeVolume(value / 100);
1544
+ }
1545
+ })
1546
+ })
1547
+ ]
1548
+ });
1549
+ };
1550
+ // src/components/media/Time.tsx
1551
+ var import_react24 = require("react");
1552
+ var import_react25 = require("@vidstack/react");
1553
+ var import_themes28 = require("@radix-ui/themes");
1554
+ var import_jsx_runtime36 = require("react/jsx-runtime");
1555
+ var Time = function() {
1556
+ var time = (0, import_react25.useMediaState)("currentTime");
1557
+ var duration = (0, import_react25.useMediaState)("duration");
1558
+ var seeking = (0, import_react25.useMediaState)("seeking");
1559
+ var canSeek = (0, import_react25.useMediaState)("canSeek");
1560
+ var remote = (0, import_react25.useMediaRemote)();
1561
+ var _ref = _sliced_to_array((0, import_react24.useState)(0), 2), value = _ref[0], setValue = _ref[1];
1562
+ (0, import_react24.useEffect)(function() {
1563
+ if (seeking) return;
1564
+ setValue(time / duration * 100);
1565
+ }, [
1566
+ time,
1567
+ duration,
1568
+ seeking
1569
+ ]);
1570
+ var step = (0, import_react24.useMemo)(function() {
1571
+ return 1 / duration * 100;
1572
+ }, [
1573
+ duration
1574
+ ]);
1575
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_themes28.Slider, {
1576
+ size: "1",
1577
+ variant: "soft",
1578
+ value: [
1579
+ value
1580
+ ],
1581
+ disabled: !canSeek,
1582
+ step: Number.isFinite(step) ? step : 1,
1583
+ onValueChange: function(param) {
1584
+ var _param = _sliced_to_array(param, 1), value2 = _param[0];
1585
+ setValue(value2);
1586
+ remote.seeking(value2 / 100 * duration);
1587
+ },
1588
+ onValueCommit: function(param) {
1589
+ var _param = _sliced_to_array(param, 1), value2 = _param[0];
1590
+ remote.seek(value2 / 100 * duration);
1591
+ }
1592
+ });
1593
+ };
1594
+ // src/components/media/MediaContainer.tsx
1595
+ var import_themes29 = require("@radix-ui/themes");
1596
+ var import_jsx_runtime37 = require("react/jsx-runtime");
1597
+ var MediaContainer = function(param) {
1598
+ var children = param.children;
1599
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_themes29.Card, {
1600
+ mb: "3",
1601
+ children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_themes29.Inset, {
1602
+ clip: "padding-box",
1603
+ style: {
1604
+ display: "flex",
1605
+ flexDirection: "column"
1606
+ },
1607
+ children: children
1608
+ })
1609
+ });
1610
+ };
1611
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/Video/FullscreenButton.tsx
1612
+ var import_react26 = require("@vidstack/react");
1613
+ var import_themes30 = require("@radix-ui/themes");
1614
+ var import_react_icons7 = require("@radix-ui/react-icons");
1615
+ var import_jsx_runtime38 = require("react/jsx-runtime");
1616
+ var FullscreenButton = function() {
1617
+ var isFullscreen = (0, import_react26.useMediaState)("fullscreen");
1618
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_themes30.IconButton, {
1619
+ variant: "ghost",
1620
+ asChild: true,
1621
+ children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_react26.FullscreenButton, {
1622
+ children: isFullscreen ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_react_icons7.ExitFullScreenIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_react_icons7.EnterFullScreenIcon, {})
1623
+ })
1624
+ });
1625
+ };
1626
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx
1627
+ var import_jsx_runtime39 = require("react/jsx-runtime");
1628
+ var Video = function(param) {
1629
+ var src = param.src;
1630
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(MediaContainer, {
1631
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_react27.MediaPlayer, {
1632
+ src: src,
1633
+ playsInline: true,
1634
+ hideControlsOnMouseLeave: true,
1635
+ crossOrigin: true,
1636
+ children: [
1637
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_react27.MediaProvider, {}),
1638
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("style", {
1639
+ children: "\n .superinterface-video-controls {\n opacity: 0;\n transition: opacity 0.2s ease-out;\n }\n\n .superinterface-video-controls[data-visible] {\n opacity: 1;\n }\n "
1640
+ }),
1641
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_themes31.Flex, {
1642
+ asChild: true,
1643
+ position: "absolute",
1644
+ bottom: "0",
1645
+ left: "0",
1646
+ right: "0",
1647
+ className: "superinterface-video-controls",
1648
+ p: "3",
1649
+ style: {
1650
+ zIndex: 10,
1651
+ background: "var(--accent-4)"
1652
+ },
1653
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_react27.Controls.Root, {
1654
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_themes31.Flex, {
1655
+ asChild: true,
1656
+ align: "center",
1657
+ gap: "3",
1658
+ flexGrow: "1",
1659
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_react27.Controls.Group, {
1660
+ children: [
1661
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(PlayButton, {}),
1662
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Time, {}),
1663
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(VolumeButton, {}),
1664
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(FullscreenButton, {})
1665
+ ]
1666
+ })
1667
+ })
1668
+ })
1669
+ })
1670
+ ]
1671
+ })
1672
+ });
1673
+ };
1674
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/Audio/index.tsx
1675
+ var import_themes32 = require("@radix-ui/themes");
1676
+ var import_base2 = require("@vidstack/react/player/styles/base.css");
1677
+ var import_react28 = require("@vidstack/react");
1678
+ var import_jsx_runtime40 = require("react/jsx-runtime");
1679
+ var Audio = function(param) {
1680
+ var src = param.src;
1681
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(MediaContainer, {
1682
+ children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_react28.MediaPlayer, {
1683
+ src: src,
1684
+ viewType: "audio",
1685
+ crossOrigin: true,
1686
+ playsInline: true,
1687
+ children: [
1688
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_react28.MediaProvider, {}),
1689
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_themes32.Flex, {
1690
+ asChild: true,
1691
+ p: "3",
1692
+ flexGrow: "1",
1693
+ style: {
1694
+ zIndex: 10,
1695
+ background: "var(--accent-4)"
1696
+ },
1697
+ children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_react28.Controls.Root, {
1698
+ children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_themes32.Flex, {
1699
+ asChild: true,
1700
+ align: "center",
1701
+ gap: "3",
1702
+ flexGrow: "1",
1703
+ children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_react28.Controls.Group, {
1704
+ children: [
1705
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(PlayButton, {}),
1706
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Time, {}),
1707
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(VolumeButton, {})
1708
+ ]
1709
+ })
1710
+ })
1711
+ })
1712
+ })
1713
+ ]
1714
+ })
1715
+ });
1716
+ };
1717
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/ImageComponent.tsx
1718
+ var import_themes33 = require("@radix-ui/themes");
1719
+ var import_jsx_runtime41 = require("react/jsx-runtime");
1720
+ var ImageComponent = function(props) {
1721
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_themes33.Box, {
1485
1722
  pb: "3",
1486
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("img", _object_spread_props(_object_spread({}, props), {
1723
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("img", _object_spread_props(_object_spread({}, props), {
1487
1724
  style: {
1488
1725
  maxWidth: "100%",
1489
1726
  height: "auto"
@@ -1491,28 +1728,49 @@ var Img = function(props) {
1491
1728
  }))
1492
1729
  });
1493
1730
  };
1731
+ // src/contexts/markdown/MarkdownContext/lib/components/Img/index.tsx
1732
+ var import_jsx_runtime42 = require("react/jsx-runtime");
1733
+ var Img = function(props) {
1734
+ if (!props.src) {
1735
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ImageComponent, _object_spread({}, props));
1736
+ } else if (isVideoSrc({
1737
+ src: props.src
1738
+ })) {
1739
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Video, {
1740
+ src: props.src
1741
+ });
1742
+ } else if (isAudioSrc({
1743
+ src: props.src
1744
+ })) {
1745
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Audio, {
1746
+ src: props.src
1747
+ });
1748
+ } else {
1749
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ImageComponent, _object_spread({}, props));
1750
+ }
1751
+ };
1494
1752
  // src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx
1495
- var import_react_icons5 = require("@radix-ui/react-icons");
1753
+ var import_react_icons8 = require("@radix-ui/react-icons");
1496
1754
  // src/contexts/markdown/MarkdownContext/lib/components/Annotation/AnnotationBase.tsx
1497
- var import_themes27 = require("@radix-ui/themes");
1498
- var import_jsx_runtime35 = require("react/jsx-runtime");
1755
+ var import_themes34 = require("@radix-ui/themes");
1756
+ var import_jsx_runtime43 = require("react/jsx-runtime");
1499
1757
  var AnnotationBase = function(param) {
1500
1758
  var icon = param.icon, content = param.content;
1501
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_themes27.Popover.Root, {
1759
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(import_themes34.Popover.Root, {
1502
1760
  children: [
1503
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.Popover.Trigger, {
1504
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.IconButton, {
1761
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_themes34.Popover.Trigger, {
1762
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_themes34.IconButton, {
1505
1763
  variant: "soft",
1506
1764
  color: "gray",
1507
1765
  size: "1",
1508
1766
  children: icon
1509
1767
  })
1510
1768
  }),
1511
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.Popover.Content, {
1769
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_themes34.Popover.Content, {
1512
1770
  size: "1",
1513
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.Flex, {
1771
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_themes34.Flex, {
1514
1772
  direction: "column",
1515
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_themes27.Text, {
1773
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_themes34.Text, {
1516
1774
  size: "1",
1517
1775
  color: "gray",
1518
1776
  children: content
@@ -1523,12 +1781,12 @@ var AnnotationBase = function(param) {
1523
1781
  });
1524
1782
  };
1525
1783
  // src/contexts/markdown/MarkdownContext/lib/components/Annotation/FilePathAnnotation.tsx
1526
- var import_jsx_runtime36 = require("react/jsx-runtime");
1784
+ var import_jsx_runtime44 = require("react/jsx-runtime");
1527
1785
  var FilePathAnnotation = function(param) {
1528
1786
  var annotation = param.annotation, children = param.children;
1529
1787
  var superinterfaceContext = useSuperinterfaceContext();
1530
1788
  var nextSearchParams = new URLSearchParams(superinterfaceContext.variables);
1531
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Link, {
1789
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Link, {
1532
1790
  href: "".concat(superinterfaceContext.baseUrl, "/files/").concat(annotation.file_path.file_id, "/contents?").concat(nextSearchParams),
1533
1791
  target: "_self",
1534
1792
  download: true,
@@ -1536,16 +1794,16 @@ var FilePathAnnotation = function(param) {
1536
1794
  });
1537
1795
  };
1538
1796
  // src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx
1539
- var import_jsx_runtime37 = require("react/jsx-runtime");
1797
+ var import_jsx_runtime45 = require("react/jsx-runtime");
1540
1798
  var Annotation = function(param) {
1541
1799
  var annotation = param.annotation, children = param.children;
1542
1800
  if (annotation.type === "file_citation") {
1543
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(AnnotationBase, {
1544
- icon: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_react_icons5.QuoteIcon, {}),
1801
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(AnnotationBase, {
1802
+ icon: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_react_icons8.QuoteIcon, {}),
1545
1803
  content: "File cited."
1546
1804
  });
1547
1805
  } else if (annotation.type === "file_path") {
1548
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(FilePathAnnotation, {
1806
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(FilePathAnnotation, {
1549
1807
  annotation: annotation,
1550
1808
  children: children
1551
1809
  });
@@ -1553,7 +1811,7 @@ var Annotation = function(param) {
1553
1811
  return null;
1554
1812
  };
1555
1813
  // src/contexts/markdown/MarkdownContext/lib/components/index.tsx
1556
- var import_jsx_runtime38 = require("react/jsx-runtime");
1814
+ var import_jsx_runtime46 = require("react/jsx-runtime");
1557
1815
  var components = {
1558
1816
  p: Paragraph,
1559
1817
  a: Link,
@@ -1566,47 +1824,60 @@ var components = {
1566
1824
  img: Img,
1567
1825
  annotation: Annotation,
1568
1826
  h1: function(props) {
1569
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_themes28.Heading, {
1827
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_themes35.Heading, {
1570
1828
  as: "h1",
1571
1829
  children: props.children
1572
1830
  });
1573
1831
  },
1574
1832
  h2: function(props) {
1575
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_themes28.Heading, {
1833
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_themes35.Heading, {
1576
1834
  as: "h2",
1577
1835
  size: "5",
1578
1836
  children: props.children
1579
1837
  });
1580
1838
  },
1581
1839
  h3: function(props) {
1582
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_themes28.Heading, {
1840
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_themes35.Heading, {
1583
1841
  as: "h3",
1584
1842
  size: "4",
1585
1843
  children: props.children
1586
1844
  });
1587
1845
  },
1588
1846
  h4: function(props) {
1589
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_themes28.Heading, {
1847
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_themes35.Heading, {
1590
1848
  as: "h4",
1591
1849
  size: "3",
1592
1850
  children: props.children
1593
1851
  });
1594
1852
  },
1595
1853
  h5: function(props) {
1596
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_themes28.Heading, {
1854
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_themes35.Heading, {
1597
1855
  as: "h5",
1598
1856
  size: "3",
1599
1857
  children: props.children
1600
1858
  });
1601
1859
  },
1602
1860
  h6: function(props) {
1603
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_themes28.Heading, {
1861
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_themes35.Heading, {
1604
1862
  as: "h6",
1605
1863
  size: "3",
1606
1864
  children: props.children
1607
1865
  });
1608
- }
1866
+ },
1867
+ table: function(props) {
1868
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_themes35.Table.Root, _object_spread_props(_object_spread({}, props), {
1869
+ variant: "surface",
1870
+ mb: "3"
1871
+ }));
1872
+ },
1873
+ thead: import_themes35.Table.Header,
1874
+ tbody: import_themes35.Table.Body,
1875
+ tr: import_themes35.Table.Row,
1876
+ td: import_themes35.Table.Cell,
1877
+ th: import_themes35.Table.ColumnHeaderCell
1609
1878
  };
1879
+ // src/contexts/markdown/MarkdownContext/lib/getRemarkPlugins.ts
1880
+ var import_remark_gfm = __toESM(require("remark-gfm"), 1);
1610
1881
  // src/lib/remark/remarkAnnotation.ts
1611
1882
  var import_radash3 = require("radash");
1612
1883
  var import_unist_util_flatmap = __toESM(require("unist-util-flatmap"), 1);
@@ -1773,26 +2044,27 @@ var getRemarkPlugins = function(param) {
1773
2044
  return [
1774
2045
  remarkAnnotation({
1775
2046
  content: content
1776
- })
2047
+ }),
2048
+ import_remark_gfm.default
1777
2049
  ];
1778
2050
  };
1779
2051
  // src/contexts/markdown/MarkdownContext/index.ts
1780
- var MarkdownContext = (0, import_react22.createContext)({
2052
+ var MarkdownContext = (0, import_react29.createContext)({
1781
2053
  components: components,
1782
2054
  getRemarkPlugins: getRemarkPlugins
1783
2055
  });
1784
2056
  // src/hooks/markdown/useMarkdownContext/index.ts
1785
2057
  var useMarkdownContext = function() {
1786
- return (0, import_react23.useContext)(MarkdownContext);
2058
+ return (0, import_react30.useContext)(MarkdownContext);
1787
2059
  };
1788
2060
  // src/components/threads/Thread/Message/TextContent.tsx
1789
- var import_jsx_runtime39 = require("react/jsx-runtime");
2061
+ var import_jsx_runtime47 = require("react/jsx-runtime");
1790
2062
  var TextContent = function(param) {
1791
2063
  var content = param.content;
1792
2064
  var _useMarkdownContext = useMarkdownContext(), getRemarkPlugins2 = _useMarkdownContext.getRemarkPlugins, rest = _object_without_properties(_useMarkdownContext, [
1793
2065
  "getRemarkPlugins"
1794
2066
  ]);
1795
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_react_markdown.default, _object_spread_props(_object_spread({}, rest), {
2067
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_react_markdown.default, _object_spread_props(_object_spread({}, rest), {
1796
2068
  remarkPlugins: getRemarkPlugins2({
1797
2069
  content: content
1798
2070
  }),
@@ -1800,21 +2072,21 @@ var TextContent = function(param) {
1800
2072
  }));
1801
2073
  };
1802
2074
  // src/components/threads/Thread/Message/Attachments/index.tsx
1803
- var import_themes29 = require("@radix-ui/themes");
1804
- var import_react_icons6 = require("@radix-ui/react-icons");
1805
- var import_jsx_runtime40 = require("react/jsx-runtime");
2075
+ var import_themes36 = require("@radix-ui/themes");
2076
+ var import_react_icons9 = require("@radix-ui/react-icons");
2077
+ var import_jsx_runtime48 = require("react/jsx-runtime");
1806
2078
  var Attachments = function(param) {
1807
2079
  var message = param.message;
1808
2080
  var _message_attachments;
1809
2081
  if (!((_message_attachments = message.attachments) === null || _message_attachments === void 0 ? void 0 : _message_attachments.length)) return null;
1810
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_themes29.Flex, {
2082
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_themes36.Flex, {
1811
2083
  align: "start",
1812
2084
  pb: "1",
1813
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_themes29.Badge, {
2085
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(import_themes36.Badge, {
1814
2086
  color: "gray",
1815
2087
  variant: "surface",
1816
2088
  children: [
1817
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_react_icons6.FileIcon, {}),
2089
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_react_icons9.FileIcon, {}),
1818
2090
  message.attachments.length,
1819
2091
  " file",
1820
2092
  message.attachments.length > 1 ? "s" : ""
@@ -1823,10 +2095,10 @@ var Attachments = function(param) {
1823
2095
  });
1824
2096
  };
1825
2097
  // src/components/threads/Thread/Message/index.tsx
1826
- var import_jsx_runtime41 = require("react/jsx-runtime");
2098
+ var import_jsx_runtime49 = require("react/jsx-runtime");
1827
2099
  var Message = function(param) {
1828
2100
  var message = param.message;
1829
- var _ref = _sliced_to_array((0, import_react24.useMemo)(function() {
2101
+ var _ref = _sliced_to_array((0, import_react31.useMemo)(function() {
1830
2102
  if (!message.runSteps.length) return [
1831
2103
  [],
1832
2104
  []
@@ -1859,7 +2131,7 @@ var Message = function(param) {
1859
2131
  message
1860
2132
  ]), 2), olderRunSteps = _ref[0], laterRunSteps = _ref[1];
1861
2133
  var isMutatingMessage = useIsMutatingMessage();
1862
- var isInProgress = (0, import_react24.useMemo)(function() {
2134
+ var isInProgress = (0, import_react31.useMemo)(function() {
1863
2135
  if (!isMutatingMessage) return false;
1864
2136
  if (message.status === "in_progress") return true;
1865
2137
  return message.runSteps.some(function(rs) {
@@ -1868,68 +2140,68 @@ var Message = function(param) {
1868
2140
  }, [
1869
2141
  message
1870
2142
  ]);
1871
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Provider, {
2143
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(Provider, {
1872
2144
  value: {
1873
2145
  message: message
1874
2146
  },
1875
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_themes30.Box, {
2147
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_themes37.Box, {
1876
2148
  children: [
1877
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(RunSteps, {
2149
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(RunSteps, {
1878
2150
  runSteps: olderRunSteps
1879
2151
  }),
1880
- /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_themes30.Box, {
2152
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_themes37.Box, {
1881
2153
  children: [
1882
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Attachments, {
2154
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(Attachments, {
1883
2155
  message: message
1884
2156
  }),
1885
2157
  message.content.map(function(content, index) {
1886
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_react24.Fragment, {
1887
- children: content.type === "text" && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(TextContent, {
2158
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_react31.Fragment, {
2159
+ children: content.type === "text" && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(TextContent, {
1888
2160
  content: content
1889
2161
  })
1890
2162
  }, index);
1891
2163
  }),
1892
- isInProgress && (0, import_radash4.isEmpty)(laterRunSteps) && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(StartingContentSkeleton, {})
2164
+ isInProgress && (0, import_radash4.isEmpty)(laterRunSteps) && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(StartingContentSkeleton, {})
1893
2165
  ]
1894
2166
  }),
1895
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(RunSteps, {
2167
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(RunSteps, {
1896
2168
  runSteps: laterRunSteps
1897
2169
  }),
1898
- isInProgress && !(0, import_radash4.isEmpty)(laterRunSteps) && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_themes30.Box, {
1899
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(StartingContentSkeleton, {})
2170
+ isInProgress && !(0, import_radash4.isEmpty)(laterRunSteps) && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_themes37.Box, {
2171
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(StartingContentSkeleton, {})
1900
2172
  })
1901
2173
  ]
1902
2174
  })
1903
2175
  });
1904
2176
  };
1905
2177
  // src/components/threads/Thread/Messages/Content/MessageGroup/Content/index.tsx
1906
- var import_jsx_runtime42 = require("react/jsx-runtime");
2178
+ var import_jsx_runtime50 = require("react/jsx-runtime");
1907
2179
  var Content3 = function(param) {
1908
2180
  var messageGroup = param.messageGroup;
1909
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_themes31.Flex, {
2181
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_themes38.Flex, {
1910
2182
  direction: "column-reverse",
1911
2183
  children: messageGroup.messages.map(function(message) {
1912
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Message, {
2184
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Message, {
1913
2185
  message: message
1914
2186
  }, message.id);
1915
2187
  })
1916
2188
  });
1917
2189
  };
1918
2190
  // src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx
1919
- var import_jsx_runtime43 = require("react/jsx-runtime");
2191
+ var import_jsx_runtime51 = require("react/jsx-runtime");
1920
2192
  var MessageGroup = function(param) {
1921
2193
  var messageGroup = param.messageGroup;
1922
- var assistantNameContext = (0, import_react25.useContext)(AssistantNameContext);
1923
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(MessageGroupBase, {
2194
+ var assistantNameContext = (0, import_react32.useContext)(AssistantNameContext);
2195
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(MessageGroupBase, {
1924
2196
  children: [
1925
- messageGroup.role === "user" ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(UserAvatar, {}) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(AssistantAvatar, {}),
1926
- /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(import_themes32.Box, {
2197
+ messageGroup.role === "user" ? /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(UserAvatar, {}) : /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(AssistantAvatar, {}),
2198
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(import_themes39.Box, {
1927
2199
  flexGrow: "1",
1928
2200
  children: [
1929
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Name, {
2201
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Name, {
1930
2202
  children: messageGroup.role === "user" ? "You" : assistantNameContext
1931
2203
  }),
1932
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Content3, {
2204
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Content3, {
1933
2205
  messageGroup: messageGroup
1934
2206
  })
1935
2207
  ]
@@ -1938,14 +2210,14 @@ var MessageGroup = function(param) {
1938
2210
  });
1939
2211
  };
1940
2212
  // src/components/threads/Thread/Messages/Content/index.tsx
1941
- var import_jsx_runtime44 = require("react/jsx-runtime");
2213
+ var import_jsx_runtime52 = require("react/jsx-runtime");
1942
2214
  var Content4 = function() {
1943
2215
  var _useMessages = useMessages(), messages2 = _useMessages.messages, isLoading = _useMessages.isLoading, isLoadingError = _useMessages.isLoadingError;
1944
2216
  var addToast = useToasts().addToast;
1945
2217
  var _useMessageGroups = useMessageGroups({
1946
2218
  messages: messages2
1947
2219
  }), messageGroups2 = _useMessageGroups.messageGroups;
1948
- (0, import_react26.useEffect)(function() {
2220
+ (0, import_react33.useEffect)(function() {
1949
2221
  if (isLoadingError) {
1950
2222
  addToast({
1951
2223
  type: "error",
@@ -1957,45 +2229,45 @@ var Content4 = function() {
1957
2229
  addToast
1958
2230
  ]);
1959
2231
  if (isLoading || isLoadingError) {
1960
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(MessagesSkeleton, {});
2232
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(MessagesSkeleton, {});
1961
2233
  }
1962
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_jsx_runtime44.Fragment, {
2234
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_jsx_runtime52.Fragment, {
1963
2235
  children: messageGroups2.map(function(messageGroup) {
1964
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(MessageGroup, {
2236
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(MessageGroup, {
1965
2237
  messageGroup: messageGroup
1966
2238
  }, messageGroup.id);
1967
2239
  })
1968
2240
  });
1969
2241
  };
1970
2242
  // src/components/threads/Thread/Messages/Progress/index.tsx
1971
- var import_react29 = require("react");
2243
+ var import_react36 = require("react");
1972
2244
  // src/components/skeletons/StartingSkeleton/index.tsx
1973
- var import_react27 = require("react");
1974
- var import_themes33 = require("@radix-ui/themes");
1975
- var import_jsx_runtime45 = require("react/jsx-runtime");
2245
+ var import_react34 = require("react");
2246
+ var import_themes40 = require("@radix-ui/themes");
2247
+ var import_jsx_runtime53 = require("react/jsx-runtime");
1976
2248
  var StartingSkeleton = function(param) {
1977
2249
  var children = param.children;
1978
- var assistantNameContext = (0, import_react27.useContext)(AssistantNameContext);
1979
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(MessageGroupBase, {
2250
+ var assistantNameContext = (0, import_react34.useContext)(AssistantNameContext);
2251
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(MessageGroupBase, {
1980
2252
  children: [
1981
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(AssistantAvatar, {}),
1982
- /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_themes33.Box, {
2253
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(AssistantAvatar, {}),
2254
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(import_themes40.Box, {
1983
2255
  children: [
1984
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Name, {
2256
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Name, {
1985
2257
  children: assistantNameContext
1986
2258
  }),
1987
2259
  children,
1988
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(StartingContentSkeleton, {})
2260
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(StartingContentSkeleton, {})
1989
2261
  ]
1990
2262
  })
1991
2263
  ]
1992
2264
  });
1993
2265
  };
1994
2266
  // src/hooks/messages/useLatestMessage/index.ts
1995
- var import_react28 = require("react");
2267
+ var import_react35 = require("react");
1996
2268
  var useLatestMessage = function() {
1997
2269
  var props = useMessages();
1998
- return (0, import_react28.useMemo)(function() {
2270
+ return (0, import_react35.useMemo)(function() {
1999
2271
  return _object_spread_props(_object_spread({}, props), {
2000
2272
  latestMessage: props.messages[0] || null
2001
2273
  });
@@ -2010,11 +2282,11 @@ var isOptimistic = function(param) {
2010
2282
  return import_lodash4.default.startsWith(id, "-");
2011
2283
  };
2012
2284
  // src/components/threads/Thread/Messages/Progress/index.tsx
2013
- var import_jsx_runtime46 = require("react/jsx-runtime");
2285
+ var import_jsx_runtime54 = require("react/jsx-runtime");
2014
2286
  var Progress = function() {
2015
2287
  var latestMessage = useLatestMessage().latestMessage;
2016
2288
  var isMutatingMessage = useIsMutatingMessage();
2017
- var isVisible = (0, import_react29.useMemo)(function() {
2289
+ var isVisible = (0, import_react36.useMemo)(function() {
2018
2290
  if (!latestMessage) return false;
2019
2291
  if (latestMessage.role !== "user") return false;
2020
2292
  if (latestMessage.status === "in_progress") return false;
@@ -2028,20 +2300,20 @@ var Progress = function() {
2028
2300
  isMutatingMessage
2029
2301
  ]);
2030
2302
  if (!isVisible) return null;
2031
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(StartingSkeleton, {});
2303
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(StartingSkeleton, {});
2032
2304
  };
2033
2305
  // src/components/threads/Thread/Messages/Root/index.tsx
2034
- var import_themes34 = require("@radix-ui/themes");
2306
+ var import_themes41 = require("@radix-ui/themes");
2035
2307
  // src/hooks/misc/useInfiniteScroll/index.tsx
2036
- var import_react31 = require("react");
2308
+ var import_react38 = require("react");
2037
2309
  var import_react_intersection_observer = require("react-intersection-observer");
2038
2310
  // src/hooks/misc/useThrottledEffect/index.tsx
2039
2311
  var import_lodash5 = __toESM(require("lodash"), 1);
2040
- var import_react30 = require("react");
2312
+ var import_react37 = require("react");
2041
2313
  var useThrottledEffect = function(cb, delay, additionalDeps) {
2042
2314
  var _cbRef;
2043
- var cbRef = (0, import_react30.useRef)(cb);
2044
- var throttledCb = (0, import_react30.useCallback)(import_lodash5.default.throttle(function() {
2315
+ var cbRef = (0, import_react37.useRef)(cb);
2316
+ var throttledCb = (0, import_react37.useCallback)(import_lodash5.default.throttle(function() {
2045
2317
  for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
2046
2318
  args[_key] = arguments[_key];
2047
2319
  }
@@ -2052,17 +2324,17 @@ var useThrottledEffect = function(cb, delay, additionalDeps) {
2052
2324
  }), [
2053
2325
  delay
2054
2326
  ]);
2055
- (0, import_react30.useEffect)(function() {
2327
+ (0, import_react37.useEffect)(function() {
2056
2328
  cbRef.current = cb;
2057
2329
  });
2058
- (0, import_react30.useEffect)(throttledCb, [
2330
+ (0, import_react37.useEffect)(throttledCb, [
2059
2331
  throttledCb
2060
2332
  ].concat(_to_consumable_array(additionalDeps)));
2061
2333
  };
2062
2334
  // src/hooks/misc/useInfiniteScroll/index.tsx
2063
2335
  var useInfiniteScroll = function(param) {
2064
2336
  var isFetchingNextPage = param.isFetchingNextPage, hasNextPage = param.hasNextPage, fetchNextPage = param.fetchNextPage;
2065
- var containerRef = (0, import_react31.useRef)(null);
2337
+ var containerRef = (0, import_react38.useRef)(null);
2066
2338
  var _ref = (0, import_react_intersection_observer.useInView)({
2067
2339
  root: containerRef.current,
2068
2340
  rootMargin: "0px",
@@ -2086,7 +2358,7 @@ var useInfiniteScroll = function(param) {
2086
2358
  };
2087
2359
  };
2088
2360
  // src/components/threads/Thread/Messages/Root/index.tsx
2089
- var import_jsx_runtime47 = require("react/jsx-runtime");
2361
+ var import_jsx_runtime55 = require("react/jsx-runtime");
2090
2362
  var Root2 = function(param) {
2091
2363
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
2092
2364
  var _useMessages = useMessages(), isFetchingNextPage = _useMessages.isFetchingNextPage, hasNextPage = _useMessages.hasNextPage, fetchNextPage = _useMessages.fetchNextPage;
@@ -2095,7 +2367,7 @@ var Root2 = function(param) {
2095
2367
  hasNextPage: hasNextPage,
2096
2368
  fetchNextPage: fetchNextPage
2097
2369
  }), containerRef = _useInfiniteScroll.containerRef, loaderRef = _useInfiniteScroll.loaderRef;
2098
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_themes34.Flex, {
2370
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(import_themes41.Flex, {
2099
2371
  ref: containerRef,
2100
2372
  direction: "column-reverse",
2101
2373
  flexGrow: "1",
@@ -2104,10 +2376,10 @@ var Root2 = function(param) {
2104
2376
  }),
2105
2377
  children: [
2106
2378
  children,
2107
- hasNextPage && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_themes34.Flex, {
2379
+ hasNextPage && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_themes41.Flex, {
2108
2380
  ref: loaderRef
2109
2381
  }),
2110
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_themes34.Flex, {
2382
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_themes41.Flex, {
2111
2383
  flexShrink: "0",
2112
2384
  flexGrow: "1"
2113
2385
  })
@@ -2115,30 +2387,30 @@ var Root2 = function(param) {
2115
2387
  });
2116
2388
  };
2117
2389
  // src/components/threads/Thread/Messages/NextPageSkeleton.tsx
2118
- var import_jsx_runtime48 = require("react/jsx-runtime");
2390
+ var import_jsx_runtime56 = require("react/jsx-runtime");
2119
2391
  var NextPageSkeleton = function() {
2120
2392
  var hasNextPage = useMessages().hasNextPage;
2121
2393
  if (!hasNextPage) {
2122
2394
  return null;
2123
2395
  }
2124
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(MessagesSkeleton, {});
2396
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(MessagesSkeleton, {});
2125
2397
  };
2126
2398
  // src/components/threads/Thread/Messages/index.tsx
2127
- var import_jsx_runtime49 = require("react/jsx-runtime");
2399
+ var import_jsx_runtime57 = require("react/jsx-runtime");
2128
2400
  var Messages = function(param) {
2129
2401
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
2130
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(Root2, {
2402
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(Root2, {
2131
2403
  style: style,
2132
2404
  children: [
2133
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_themes35.Flex, {
2405
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_themes42.Flex, {
2134
2406
  flexShrink: "0",
2135
2407
  height: "var(--space-3)"
2136
2408
  }),
2137
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(Progress, {}),
2409
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Progress, {}),
2138
2410
  children,
2139
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(Content4, {}),
2140
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(NextPageSkeleton, {}),
2141
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_themes35.Flex, {
2411
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Content4, {}),
2412
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(NextPageSkeleton, {}),
2413
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_themes42.Flex, {
2142
2414
  flexShrink: "0",
2143
2415
  flexGrow: "1",
2144
2416
  minHeight: "var(--space-5)"
@@ -2150,13 +2422,13 @@ Messages.Root = Root2;
2150
2422
  Messages.Message = Message;
2151
2423
  Messages.NextPageSkeleton = NextPageSkeleton;
2152
2424
  // src/components/threads/Thread/MessageForm/Submit/index.tsx
2153
- var import_react_icons7 = require("@radix-ui/react-icons");
2154
- var import_themes36 = require("@radix-ui/themes");
2425
+ var import_react_icons10 = require("@radix-ui/react-icons");
2426
+ var import_themes43 = require("@radix-ui/themes");
2155
2427
  // src/hooks/messages/useMessageFormContext/index.ts
2156
- var import_react33 = require("react");
2428
+ var import_react40 = require("react");
2157
2429
  // src/contexts/messages/MessageFormContext/index.ts
2158
- var import_react32 = require("react");
2159
- var MessageFormContext = (0, import_react32.createContext)({
2430
+ var import_react39 = require("react");
2431
+ var MessageFormContext = (0, import_react39.createContext)({
2160
2432
  content: "",
2161
2433
  isDisabled: false,
2162
2434
  isLoading: false,
@@ -2166,13 +2438,13 @@ var MessageFormContext = (0, import_react32.createContext)({
2166
2438
  });
2167
2439
  // src/hooks/messages/useMessageFormContext/index.ts
2168
2440
  var useMessageFormContext = function() {
2169
- return (0, import_react33.useContext)(MessageFormContext);
2441
+ return (0, import_react40.useContext)(MessageFormContext);
2170
2442
  };
2171
2443
  // src/components/threads/Thread/MessageForm/Submit/index.tsx
2172
- var import_jsx_runtime50 = require("react/jsx-runtime");
2444
+ var import_jsx_runtime58 = require("react/jsx-runtime");
2173
2445
  var Root3 = function(param) {
2174
2446
  var children = param.children;
2175
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_themes36.Flex, {
2447
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_themes43.Flex, {
2176
2448
  flexShrink: "0",
2177
2449
  align: "end",
2178
2450
  children: children
@@ -2182,33 +2454,33 @@ var Button2 = function() {
2182
2454
  var superinterfaceContext = useSuperinterfaceContext();
2183
2455
  var _useMessageFormContext = useMessageFormContext(), isDisabled = _useMessageFormContext.isDisabled, isLoading = _useMessageFormContext.isLoading, isFileLoading = _useMessageFormContext.isFileLoading;
2184
2456
  if (isLoading) {
2185
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_themes36.IconButton, {
2457
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_themes43.IconButton, {
2186
2458
  type: "button",
2187
2459
  onClick: function() {
2188
2460
  var _superinterfaceContext_createMessageAbortControllerRef_current;
2189
2461
  return (_superinterfaceContext_createMessageAbortControllerRef_current = superinterfaceContext.createMessageAbortControllerRef.current) === null || _superinterfaceContext_createMessageAbortControllerRef_current === void 0 ? void 0 : _superinterfaceContext_createMessageAbortControllerRef_current.abort();
2190
2462
  },
2191
- children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_react_icons7.StopIcon, {})
2463
+ children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_icons10.StopIcon, {})
2192
2464
  });
2193
2465
  }
2194
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_themes36.IconButton, {
2466
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_themes43.IconButton, {
2195
2467
  type: "submit",
2196
2468
  disabled: isDisabled || isFileLoading,
2197
- children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_react_icons7.ArrowUpIcon, {})
2469
+ children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_icons10.ArrowUpIcon, {})
2198
2470
  });
2199
2471
  };
2200
2472
  var Submit = function() {
2201
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Root3, {
2202
- children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Button2, {})
2473
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Root3, {
2474
+ children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Button2, {})
2203
2475
  });
2204
2476
  };
2205
2477
  Submit.Root = Root3;
2206
2478
  Submit.Button = Button2;
2207
2479
  // src/components/threads/Thread/MessageForm/Root/index.tsx
2208
2480
  var import_react_query5 = require("@tanstack/react-query");
2209
- var import_react34 = require("react");
2481
+ var import_react41 = require("react");
2210
2482
  var import_react_hook_form = require("react-hook-form");
2211
- var import_themes37 = require("@radix-ui/themes");
2483
+ var import_themes44 = require("@radix-ui/themes");
2212
2484
  // src/hooks/messages/useCreateMessage/index.ts
2213
2485
  var import_radash13 = require("radash");
2214
2486
  var import_react_query4 = require("@tanstack/react-query");
@@ -2976,10 +3248,10 @@ var createMessageDefaultOnError = function(param) {
2976
3248
  };
2977
3249
  };
2978
3250
  // src/components/threads/Thread/MessageForm/Root/index.tsx
2979
- var import_jsx_runtime51 = require("react/jsx-runtime");
3251
+ var import_jsx_runtime59 = require("react/jsx-runtime");
2980
3252
  var Root4 = function(param) {
2981
3253
  var children = param.children, onSubmitArg = param.onSubmit, isDisabledArg = param.isDisabled;
2982
- var _ref = _sliced_to_array((0, import_react34.useState)([]), 2), files = _ref[0], setFiles = _ref[1];
3254
+ var _ref = _sliced_to_array((0, import_react41.useState)([]), 2), files = _ref[0], setFiles = _ref[1];
2983
3255
  var formProps = (0, import_react_hook_form.useForm)(formOptions);
2984
3256
  var handleSubmit = formProps.handleSubmit, isSubmitting = formProps.formState.isSubmitting, reset = formProps.reset, watch = formProps.watch;
2985
3257
  var addToast = useToasts().addToast;
@@ -2993,7 +3265,7 @@ var Root4 = function(param) {
2993
3265
  })
2994
3266
  }).createMessage;
2995
3267
  var isMutatingMessage = useIsMutatingMessage();
2996
- var isFileLoading = (0, import_react34.useMemo)(function() {
3268
+ var isFileLoading = (0, import_react41.useMemo)(function() {
2997
3269
  return files.some(function(file) {
2998
3270
  return isOptimistic({
2999
3271
  id: file.id
@@ -3002,14 +3274,14 @@ var Root4 = function(param) {
3002
3274
  }, [
3003
3275
  files
3004
3276
  ]);
3005
- var isLoading = (0, import_react34.useMemo)(function() {
3277
+ var isLoading = (0, import_react41.useMemo)(function() {
3006
3278
  return isMutatingMessage || isSubmitting;
3007
3279
  }, [
3008
3280
  isMutatingMessage,
3009
3281
  isSubmitting
3010
3282
  ]);
3011
3283
  var latestMessage = useLatestMessage().latestMessage;
3012
- var isDisabled = (0, import_react34.useMemo)(function() {
3284
+ var isDisabled = (0, import_react41.useMemo)(function() {
3013
3285
  var // @ts-ignore-next-line
3014
3286
  _latestMessage_metadata;
3015
3287
  return (latestMessage === null || latestMessage === void 0 ? void 0 : (_latestMessage_metadata = latestMessage.metadata) === null || _latestMessage_metadata === void 0 ? void 0 : _latestMessage_metadata.isBlocking) || isDisabledArg;
@@ -3069,7 +3341,7 @@ var Root4 = function(param) {
3069
3341
  };
3070
3342
  }();
3071
3343
  var content = watch("content");
3072
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(MessageFormContext.Provider, {
3344
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(MessageFormContext.Provider, {
3073
3345
  value: {
3074
3346
  isDisabled: isDisabled,
3075
3347
  isLoading: isLoading,
@@ -3078,11 +3350,11 @@ var Root4 = function(param) {
3078
3350
  isFileLoading: isFileLoading,
3079
3351
  content: content
3080
3352
  },
3081
- children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react_hook_form.FormProvider, _object_spread_props(_object_spread({}, formProps), {
3082
- children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_themes37.Box, {
3353
+ children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_react_hook_form.FormProvider, _object_spread_props(_object_spread({}, formProps), {
3354
+ children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_themes44.Box, {
3083
3355
  asChild: true,
3084
3356
  flexShrink: "0",
3085
- children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("form", {
3357
+ children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("form", {
3086
3358
  onSubmit: handleSubmit(onSubmit),
3087
3359
  children: children
3088
3360
  })
@@ -3092,32 +3364,32 @@ var Root4 = function(param) {
3092
3364
  };
3093
3365
  // src/components/threads/Thread/MessageForm/Field/index.tsx
3094
3366
  var import_react_hook_form3 = require("react-hook-form");
3095
- var import_themes41 = require("@radix-ui/themes");
3367
+ var import_themes48 = require("@radix-ui/themes");
3096
3368
  // src/components/threads/Thread/MessageForm/Field/Control.tsx
3097
- var import_themes38 = require("@radix-ui/themes");
3369
+ var import_themes45 = require("@radix-ui/themes");
3098
3370
  var import_react_hook_form2 = require("react-hook-form");
3099
3371
  // src/hooks/misc/usePrevious.ts
3100
- var import_react35 = require("react");
3372
+ var import_react42 = require("react");
3101
3373
  var usePrevious = function(state) {
3102
- var ref = (0, import_react35.useRef)();
3103
- (0, import_react35.useEffect)(function() {
3374
+ var ref = (0, import_react42.useRef)();
3375
+ (0, import_react42.useEffect)(function() {
3104
3376
  ref.current = state;
3105
3377
  });
3106
3378
  return ref.current;
3107
3379
  };
3108
3380
  // src/components/threads/Thread/MessageForm/Field/Control.tsx
3109
- var import_react37 = require("react");
3381
+ var import_react44 = require("react");
3110
3382
  // src/components/textareas/TextareaBase/index.tsx
3111
- var import_react36 = require("react");
3383
+ var import_react43 = require("react");
3112
3384
  var import_react_textarea_autosize = __toESM(require("react-textarea-autosize"), 1);
3113
- var import_jsx_runtime52 = require("react/jsx-runtime");
3114
- var TextareaBase = (0, import_react36.forwardRef)(function TextareaBase2(props, ref) {
3115
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(import_jsx_runtime52.Fragment, {
3385
+ var import_jsx_runtime60 = require("react/jsx-runtime");
3386
+ var TextareaBase = (0, import_react43.forwardRef)(function TextareaBase2(props, ref) {
3387
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_jsx_runtime60.Fragment, {
3116
3388
  children: [
3117
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("style", {
3389
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("style", {
3118
3390
  children: ".superinterface-textarea { min-height: inherit; height: 30px; }\n.superinterface-textarea::placeholder { color: var(--gray-a10); }"
3119
3391
  }),
3120
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react_textarea_autosize.default, _object_spread({
3392
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_react_textarea_autosize.default, _object_spread({
3121
3393
  ref: ref,
3122
3394
  className: "rt-reset superinterface-textarea",
3123
3395
  style: {
@@ -3134,29 +3406,29 @@ var TextareaBase = (0, import_react36.forwardRef)(function TextareaBase2(props,
3134
3406
  });
3135
3407
  });
3136
3408
  // src/components/threads/Thread/MessageForm/Field/Control.tsx
3137
- var import_jsx_runtime53 = require("react/jsx-runtime");
3409
+ var import_jsx_runtime61 = require("react/jsx-runtime");
3138
3410
  var Root5 = function(param) {
3139
3411
  var children = param.children;
3140
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_themes38.Flex, {
3412
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_themes45.Flex, {
3141
3413
  flexGrow: "1",
3142
3414
  pt: "4px",
3143
3415
  children: children
3144
3416
  });
3145
3417
  };
3146
3418
  var Input = function() {
3147
- var assistantNameContext = (0, import_react37.useContext)(AssistantNameContext);
3419
+ var assistantNameContext = (0, import_react44.useContext)(AssistantNameContext);
3148
3420
  var register = (0, import_react_hook_form2.useFormContext)().register;
3149
3421
  var _useMessageFormContext = useMessageFormContext(), isDisabled = _useMessageFormContext.isDisabled, isLoading = _useMessageFormContext.isLoading;
3150
- var isSubmitDisabled = (0, import_react37.useMemo)(function() {
3422
+ var isSubmitDisabled = (0, import_react44.useMemo)(function() {
3151
3423
  return isDisabled || isLoading;
3152
3424
  }, [
3153
3425
  isDisabled,
3154
3426
  isLoading
3155
3427
  ]);
3156
3428
  var isDisabledPrevious = usePrevious(isDisabled);
3157
- var textareaRef = (0, import_react37.useRef)(null);
3429
+ var textareaRef = (0, import_react44.useRef)(null);
3158
3430
  var textareaProps = register("content");
3159
- (0, import_react37.useEffect)(function() {
3431
+ (0, import_react44.useEffect)(function() {
3160
3432
  if (isDisabled) return;
3161
3433
  if (!isDisabledPrevious) return;
3162
3434
  if (!textareaRef.current) return;
@@ -3166,7 +3438,7 @@ var Input = function() {
3166
3438
  isDisabledPrevious,
3167
3439
  textareaProps
3168
3440
  ]);
3169
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(TextareaBase, _object_spread_props(_object_spread({
3441
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(TextareaBase, _object_spread_props(_object_spread({
3170
3442
  minRows: 1,
3171
3443
  placeholder: "Message ".concat(assistantNameContext, "..."),
3172
3444
  disabled: isDisabled,
@@ -3186,51 +3458,51 @@ var Input = function() {
3186
3458
  }));
3187
3459
  };
3188
3460
  var Control = function() {
3189
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Root5, {
3190
- children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Input, {})
3461
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Root5, {
3462
+ children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Input, {})
3191
3463
  });
3192
3464
  };
3193
3465
  Control.Root = Root5;
3194
3466
  Control.Input = Input;
3195
3467
  // src/components/threads/Thread/MessageForm/Field/Files/Preview.tsx
3196
- var import_themes39 = require("@radix-ui/themes");
3197
- var import_react_icons8 = require("@radix-ui/react-icons");
3198
- var import_jsx_runtime54 = require("react/jsx-runtime");
3468
+ var import_themes46 = require("@radix-ui/themes");
3469
+ var import_react_icons11 = require("@radix-ui/react-icons");
3470
+ var import_jsx_runtime62 = require("react/jsx-runtime");
3199
3471
  var Preview = function() {
3200
3472
  var _useMessageFormContext = useMessageFormContext(), files = _useMessageFormContext.files, setFiles = _useMessageFormContext.setFiles;
3201
3473
  if (!files.length) {
3202
3474
  return null;
3203
3475
  }
3204
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_themes39.Flex, {
3476
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes46.Flex, {
3205
3477
  flexBasis: "100%",
3206
3478
  direction: "column",
3207
3479
  pb: "2",
3208
3480
  gap: "1",
3209
3481
  children: files.map(function(file) {
3210
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_themes39.Card, {
3482
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes46.Card, {
3211
3483
  variant: "ghost",
3212
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(import_themes39.Flex, {
3484
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_themes46.Flex, {
3213
3485
  align: "center",
3214
3486
  justify: "between",
3215
3487
  gap: "1",
3216
3488
  children: [
3217
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(import_themes39.Flex, {
3489
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_themes46.Flex, {
3218
3490
  align: "center",
3219
3491
  gap: "1",
3220
3492
  flexShrink: "1",
3221
3493
  minWidth: "0",
3222
3494
  maxWidth: "250px",
3223
3495
  children: [
3224
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_themes39.Flex, {
3496
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes46.Flex, {
3225
3497
  flexShrink: "0",
3226
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_themes39.Spinner, {
3498
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes46.Spinner, {
3227
3499
  loading: isOptimistic({
3228
3500
  id: file.id
3229
3501
  }),
3230
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_react_icons8.FileIcon, {})
3502
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_react_icons11.FileIcon, {})
3231
3503
  })
3232
3504
  }),
3233
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_themes39.Text, {
3505
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes46.Text, {
3234
3506
  size: "2",
3235
3507
  truncate: true,
3236
3508
  wrap: "nowrap",
@@ -3238,9 +3510,9 @@ var Preview = function() {
3238
3510
  })
3239
3511
  ]
3240
3512
  }),
3241
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_themes39.Flex, {
3513
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes46.Flex, {
3242
3514
  flexShrink: "0",
3243
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_themes39.IconButton, {
3515
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_themes46.IconButton, {
3244
3516
  onClick: function() {
3245
3517
  return setFiles(function(prev) {
3246
3518
  return prev.filter(function(prevFile) {
@@ -3251,7 +3523,7 @@ var Preview = function() {
3251
3523
  color: "gray",
3252
3524
  variant: "ghost",
3253
3525
  size: "1",
3254
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_react_icons8.Cross2Icon, {})
3526
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_react_icons11.Cross2Icon, {})
3255
3527
  })
3256
3528
  })
3257
3529
  ]
@@ -3261,11 +3533,11 @@ var Preview = function() {
3261
3533
  });
3262
3534
  };
3263
3535
  // src/components/threads/Thread/MessageForm/Field/Files/Control.tsx
3264
- var import_react38 = require("react");
3536
+ var import_react45 = require("react");
3265
3537
  var import_radash15 = require("radash");
3266
3538
  var import_dayjs2 = __toESM(require("dayjs"), 1);
3267
- var import_react_icons9 = require("@radix-ui/react-icons");
3268
- var import_themes40 = require("@radix-ui/themes");
3539
+ var import_react_icons12 = require("@radix-ui/react-icons");
3540
+ var import_themes47 = require("@radix-ui/themes");
3269
3541
  // src/hooks/files/useCreateFile/index.ts
3270
3542
  var import_react_query6 = require("@tanstack/react-query");
3271
3543
  // src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/formData.ts
@@ -3376,13 +3648,13 @@ var useCreateFile = function() {
3376
3648
  });
3377
3649
  };
3378
3650
  // src/components/threads/Thread/MessageForm/Field/Files/Control.tsx
3379
- var import_jsx_runtime55 = require("react/jsx-runtime");
3651
+ var import_jsx_runtime63 = require("react/jsx-runtime");
3380
3652
  var accept = ".c,text/x-c,\n.cs,text/x-csharp,\n.cpp,text/x-c++,\n.doc,application/msword,\n.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document,\n.html,text/html,\n.java,text/x-java,\n.json,application/json,\n.md,text/markdown,\n.pdf,application/pdf,\n.php,text/x-php,\n.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation,\n.py,text/x-python,\n.py,text/x-script.python,\n.rb,text/x-ruby,\n.tex,text/x-tex,\n.txt,text/plain,\n.css,text/css,\n.js,text/javascript,\n.sh,application/x-sh,\n.ts,application/typescript";
3381
3653
  var Control2 = function() {
3382
3654
  var _useMessageFormContext = useMessageFormContext(), isDisabled = _useMessageFormContext.isDisabled, isLoading = _useMessageFormContext.isLoading, setFiles = _useMessageFormContext.setFiles;
3383
3655
  var createFile = useCreateFile().createFile;
3384
3656
  var addToast = useToasts().addToast;
3385
- var onChange = (0, import_react38.useCallback)(function() {
3657
+ var onChange = (0, import_react45.useCallback)(function() {
3386
3658
  var _ref = _async_to_generator(function(event) {
3387
3659
  var fileObjects, newFiles, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _loop, _iterator, _step, err;
3388
3660
  return _ts_generator(this, function(_state) {
@@ -3550,11 +3822,11 @@ var Control2 = function() {
3550
3822
  createFile,
3551
3823
  setFiles
3552
3824
  ]);
3553
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_themes40.Flex, {
3825
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_themes47.Flex, {
3554
3826
  pt: "2",
3555
3827
  pr: "2",
3556
3828
  flexGrow: "0",
3557
- children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(import_themes40.IconButton, {
3829
+ children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_themes47.IconButton, {
3558
3830
  type: "button",
3559
3831
  variant: "ghost",
3560
3832
  color: "gray",
@@ -3564,8 +3836,8 @@ var Control2 = function() {
3564
3836
  overflow: "hidden"
3565
3837
  },
3566
3838
  children: [
3567
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react_icons9.FilePlusIcon, {}),
3568
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("input", {
3839
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react_icons12.FilePlusIcon, {}),
3840
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("input", {
3569
3841
  type: "file",
3570
3842
  multiple: true,
3571
3843
  accept: accept,
@@ -3590,20 +3862,20 @@ var Files = {
3590
3862
  Control: Control2
3591
3863
  };
3592
3864
  // src/components/threads/Thread/MessageForm/Field/index.tsx
3593
- var import_jsx_runtime56 = require("react/jsx-runtime");
3865
+ var import_jsx_runtime64 = require("react/jsx-runtime");
3594
3866
  var Root6 = function(param) {
3595
3867
  var children = param.children;
3596
3868
  var _ref = (0, import_react_hook_form3.useFormContext)(), errors = _ref.formState.errors;
3597
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_themes41.Container, {
3869
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_themes48.Container, {
3598
3870
  size: "2",
3599
3871
  flexGrow: "0",
3600
- children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_themes41.Flex, {
3872
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_themes48.Flex, {
3601
3873
  direction: "column",
3602
3874
  flexShrink: "0",
3603
- children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_themes41.Flex, {
3875
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_themes48.Flex, {
3604
3876
  direction: "column",
3605
3877
  flexShrink: "0",
3606
- children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_themes41.Flex, {
3878
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_themes48.Flex, {
3607
3879
  style: _object_spread({
3608
3880
  borderRadius: "var(--radius-2)",
3609
3881
  borderWidth: "1px",
@@ -3627,13 +3899,13 @@ var Field = {
3627
3899
  Files: Files
3628
3900
  };
3629
3901
  // src/components/threads/Thread/MessageForm/index.tsx
3630
- var import_jsx_runtime57 = require("react/jsx-runtime");
3902
+ var import_jsx_runtime65 = require("react/jsx-runtime");
3631
3903
  var MessageForm = function() {
3632
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Root4, {
3633
- children: /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(Field.Root, {
3904
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Root4, {
3905
+ children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(Field.Root, {
3634
3906
  children: [
3635
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Field.Control, {}),
3636
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Submit, {})
3907
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Field.Control, {}),
3908
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Submit, {})
3637
3909
  ]
3638
3910
  })
3639
3911
  });
@@ -3642,35 +3914,35 @@ MessageForm.Root = Root4;
3642
3914
  MessageForm.Field = Field;
3643
3915
  MessageForm.Submit = Submit;
3644
3916
  // src/components/threads/Thread/Root/index.tsx
3645
- var import_themes43 = require("@radix-ui/themes");
3917
+ var import_themes50 = require("@radix-ui/themes");
3646
3918
  // src/components/threads/Thread/Provider/index.tsx
3647
3919
  var Provider2 = SuperinterfaceProvider;
3648
3920
  // src/components/toasts/ToastsProvider/index.tsx
3649
- var import_react39 = require("react");
3921
+ var import_react46 = require("react");
3650
3922
  var Toast2 = __toESM(require("@radix-ui/react-toast"), 1);
3651
3923
  // src/components/toasts/ToastsProvider/CustomToast.tsx
3652
3924
  var Toast = __toESM(require("@radix-ui/react-toast"), 1);
3653
- var import_themes42 = require("@radix-ui/themes");
3654
- var import_react_icons10 = require("@radix-ui/react-icons");
3655
- var import_jsx_runtime58 = require("react/jsx-runtime");
3925
+ var import_themes49 = require("@radix-ui/themes");
3926
+ var import_react_icons13 = require("@radix-ui/react-icons");
3927
+ var import_jsx_runtime66 = require("react/jsx-runtime");
3656
3928
  var CustomToast = function(param) {
3657
3929
  var toast = param.toast;
3658
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Toast.Root, {
3659
- children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_themes42.Card, {
3660
- children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Toast.Title, {
3661
- children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(import_themes42.Flex, {
3930
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Toast.Root, {
3931
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_themes49.Card, {
3932
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Toast.Title, {
3933
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_themes49.Flex, {
3662
3934
  children: [
3663
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_themes42.Flex, {
3935
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_themes49.Flex, {
3664
3936
  pr: "2",
3665
3937
  height: "14px",
3666
3938
  align: "center",
3667
- children: toast.type === "success" ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_icons10.CheckCircledIcon, {
3939
+ children: toast.type === "success" ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react_icons13.CheckCircledIcon, {
3668
3940
  color: "var(--accent-9)"
3669
- }) : /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_icons10.CrossCircledIcon, {
3941
+ }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react_icons13.CrossCircledIcon, {
3670
3942
  color: "var(--red-9)"
3671
3943
  })
3672
3944
  }),
3673
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_themes42.Text, {
3945
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_themes49.Text, {
3674
3946
  weight: "medium",
3675
3947
  size: "1",
3676
3948
  children: toast.message
@@ -3682,31 +3954,31 @@ var CustomToast = function(param) {
3682
3954
  });
3683
3955
  };
3684
3956
  // src/components/toasts/ToastsProvider/index.tsx
3685
- var import_jsx_runtime59 = require("react/jsx-runtime");
3957
+ var import_jsx_runtime67 = require("react/jsx-runtime");
3686
3958
  var ToastsProvider = function(param) {
3687
3959
  var children = param.children, _param_bottom = param.bottom, bottom = _param_bottom === void 0 ? 0 : _param_bottom;
3688
- var _ref = _sliced_to_array((0, import_react39.useState)([]), 2), toasts = _ref[0], setToasts = _ref[1];
3689
- var addToast = (0, import_react39.useCallback)(function(toast) {
3960
+ var _ref = _sliced_to_array((0, import_react46.useState)([]), 2), toasts = _ref[0], setToasts = _ref[1];
3961
+ var addToast = (0, import_react46.useCallback)(function(toast) {
3690
3962
  return setToasts(function(prevToasts) {
3691
3963
  return _to_consumable_array(prevToasts).concat([
3692
3964
  toast
3693
3965
  ]);
3694
3966
  });
3695
3967
  }, []);
3696
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(ToastsContext.Provider, {
3968
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ToastsContext.Provider, {
3697
3969
  value: {
3698
3970
  toasts: toasts,
3699
3971
  addToast: addToast
3700
3972
  },
3701
- children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(Toast2.Provider, {
3973
+ children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(Toast2.Provider, {
3702
3974
  children: [
3703
3975
  children,
3704
3976
  Array.from(toasts).map(function(toast, index) {
3705
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(CustomToast, {
3977
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(CustomToast, {
3706
3978
  toast: toast
3707
3979
  }, index);
3708
3980
  }),
3709
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(Toast2.Viewport, {
3981
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Toast2.Viewport, {
3710
3982
  style: {
3711
3983
  position: "absolute",
3712
3984
  bottom: bottom,
@@ -3728,15 +4000,15 @@ var ToastsProvider = function(param) {
3728
4000
  });
3729
4001
  };
3730
4002
  // src/components/threads/Thread/Root/index.tsx
3731
- var import_jsx_runtime60 = require("react/jsx-runtime");
4003
+ var import_jsx_runtime68 = require("react/jsx-runtime");
3732
4004
  var Root8 = function(_param) {
3733
4005
  var children = _param.children, rest = _object_without_properties(_param, [
3734
4006
  "children"
3735
4007
  ]);
3736
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(ToastsProvider, {
4008
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ToastsProvider, {
3737
4009
  bottom: "var(--space-9)",
3738
- children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(Provider2, _object_spread_props(_object_spread({}, rest), {
3739
- children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_themes43.Flex, {
4010
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Provider2, _object_spread_props(_object_spread({}, rest), {
4011
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_themes50.Flex, {
3740
4012
  direction: "column",
3741
4013
  flexGrow: "1",
3742
4014
  children: children
@@ -3745,12 +4017,12 @@ var Root8 = function(_param) {
3745
4017
  });
3746
4018
  };
3747
4019
  // src/components/threads/Thread/index.tsx
3748
- var import_jsx_runtime61 = require("react/jsx-runtime");
4020
+ var import_jsx_runtime69 = require("react/jsx-runtime");
3749
4021
  var Thread = function(props) {
3750
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(Root8, _object_spread_props(_object_spread({}, props), {
4022
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(Root8, _object_spread_props(_object_spread({}, props), {
3751
4023
  children: [
3752
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Messages, {}),
3753
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(MessageForm, {})
4024
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(Messages, {}),
4025
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(MessageForm, {})
3754
4026
  ]
3755
4027
  }));
3756
4028
  };
@@ -3758,12 +4030,12 @@ Thread.Root = Root8;
3758
4030
  Thread.Messages = Messages;
3759
4031
  Thread.MessageForm = MessageForm;
3760
4032
  // src/hooks/messages/useMessageContext/index.ts
3761
- var import_react40 = require("react");
4033
+ var import_react47 = require("react");
3762
4034
  var useMessageContext = function() {
3763
- return (0, import_react40.useContext)(MessageContext);
4035
+ return (0, import_react47.useContext)(MessageContext);
3764
4036
  };
3765
4037
  // src/hooks/assistants/useAssistant/index.ts
3766
- var import_react41 = require("react");
4038
+ var import_react48 = require("react");
3767
4039
  var import_react_query8 = require("@tanstack/react-query");
3768
4040
  // src/hooks/assistants/useAssistant/lib/queryOptions/index.ts
3769
4041
  var import_react_query7 = require("@tanstack/react-query");
@@ -3852,7 +4124,7 @@ var useAssistant = function(param) {
3852
4124
  assistantId: assistantId,
3853
4125
  superinterfaceContext: superinterfaceContext
3854
4126
  }));
3855
- return (0, import_react41.useMemo)(function() {
4127
+ return (0, import_react48.useMemo)(function() {
3856
4128
  return _object_spread_props(_object_spread({}, props), {
3857
4129
  assistant: props.data ? props.data.assistant : null
3858
4130
  });
@@ -3861,25 +4133,25 @@ var useAssistant = function(param) {
3861
4133
  ]);
3862
4134
  };
3863
4135
  // src/components/threads/ThreadDialog/Provider/index.tsx
3864
- var import_react44 = require("react");
4136
+ var import_react51 = require("react");
3865
4137
  // src/contexts/threads/ThreadDialogContext/index.ts
3866
- var import_react42 = require("react");
3867
- var ThreadDialogContext = (0, import_react42.createContext)({
4138
+ var import_react49 = require("react");
4139
+ var ThreadDialogContext = (0, import_react49.createContext)({
3868
4140
  isOpen: false,
3869
4141
  setIsOpen: function() {}
3870
4142
  });
3871
4143
  // src/hooks/threads/useThreadDialogContext/index.ts
3872
- var import_react43 = require("react");
4144
+ var import_react50 = require("react");
3873
4145
  var useThreadDialogContext = function() {
3874
- return (0, import_react43.useContext)(ThreadDialogContext);
4146
+ return (0, import_react50.useContext)(ThreadDialogContext);
3875
4147
  };
3876
4148
  // src/components/threads/ThreadDialog/Provider/index.tsx
3877
- var import_jsx_runtime62 = require("react/jsx-runtime");
4149
+ var import_jsx_runtime70 = require("react/jsx-runtime");
3878
4150
  var Provider4 = function(param) {
3879
4151
  var children = param.children;
3880
4152
  var threadDialogContext = useThreadDialogContext();
3881
- var _ref = _sliced_to_array((0, import_react44.useState)(threadDialogContext.isOpen), 2), isOpen = _ref[0], setIsOpen = _ref[1];
3882
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(ThreadDialogContext.Provider, {
4153
+ var _ref = _sliced_to_array((0, import_react51.useState)(threadDialogContext.isOpen), 2), isOpen = _ref[0], setIsOpen = _ref[1];
4154
+ return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(ThreadDialogContext.Provider, {
3883
4155
  value: {
3884
4156
  isOpen: isOpen,
3885
4157
  setIsOpen: setIsOpen
@@ -3888,32 +4160,32 @@ var Provider4 = function(param) {
3888
4160
  });
3889
4161
  };
3890
4162
  // src/components/threads/ThreadDialog/Root/index.tsx
3891
- var import_jsx_runtime63 = require("react/jsx-runtime");
4163
+ var import_jsx_runtime71 = require("react/jsx-runtime");
3892
4164
  var Root9 = function(param) {
3893
4165
  var children = param.children;
3894
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Provider4, {
4166
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(Provider4, {
3895
4167
  children: children
3896
4168
  });
3897
4169
  };
3898
4170
  // src/components/threads/ThreadDialog/Trigger/index.tsx
3899
- var import_themes45 = require("@radix-ui/themes");
4171
+ var import_themes52 = require("@radix-ui/themes");
3900
4172
  // src/components/threads/ThreadDialog/Trigger/Button.tsx
3901
- var import_themes44 = require("@radix-ui/themes");
3902
- var import_react_icons11 = require("@radix-ui/react-icons");
3903
- var import_jsx_runtime64 = require("react/jsx-runtime");
4173
+ var import_themes51 = require("@radix-ui/themes");
4174
+ var import_react_icons14 = require("@radix-ui/react-icons");
4175
+ var import_jsx_runtime72 = require("react/jsx-runtime");
3904
4176
  var Button3 = function() {
3905
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_themes44.IconButton, {
4177
+ return /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_themes51.IconButton, {
3906
4178
  size: "4",
3907
4179
  radius: "full",
3908
- children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_react_icons11.ChatBubbleIcon, {})
4180
+ children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react_icons14.ChatBubbleIcon, {})
3909
4181
  });
3910
4182
  };
3911
4183
  // src/components/threads/ThreadDialog/Trigger/index.tsx
3912
- var import_jsx_runtime65 = require("react/jsx-runtime");
4184
+ var import_jsx_runtime73 = require("react/jsx-runtime");
3913
4185
  var Root10 = function(param) {
3914
4186
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
3915
4187
  var _useThreadDialogContext = useThreadDialogContext(), setIsOpen = _useThreadDialogContext.setIsOpen, isOpen = _useThreadDialogContext.isOpen;
3916
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_themes45.Flex, {
4188
+ return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_themes52.Flex, {
3917
4189
  display: {
3918
4190
  initial: isOpen ? "none" : "flex",
3919
4191
  sm: "flex"
@@ -3937,21 +4209,21 @@ var Root10 = function(param) {
3937
4209
  });
3938
4210
  };
3939
4211
  var Trigger = function(args) {
3940
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Root10, _object_spread_props(_object_spread({}, args), {
3941
- children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button3, {})
4212
+ return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Root10, _object_spread_props(_object_spread({}, args), {
4213
+ children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Button3, {})
3942
4214
  }));
3943
4215
  };
3944
4216
  Trigger.Root = Root10;
3945
4217
  Trigger.Button = Button3;
3946
4218
  // src/components/threads/ThreadDialog/Content/index.tsx
3947
- var import_themes47 = require("@radix-ui/themes");
4219
+ var import_themes54 = require("@radix-ui/themes");
3948
4220
  // src/components/threads/ThreadDialog/Close/index.tsx
3949
- var import_react_icons12 = require("@radix-ui/react-icons");
3950
- var import_themes46 = require("@radix-ui/themes");
3951
- var import_jsx_runtime66 = require("react/jsx-runtime");
4221
+ var import_react_icons15 = require("@radix-ui/react-icons");
4222
+ var import_themes53 = require("@radix-ui/themes");
4223
+ var import_jsx_runtime74 = require("react/jsx-runtime");
3952
4224
  var Close = function() {
3953
4225
  var _useThreadDialogContext = useThreadDialogContext(), setIsOpen = _useThreadDialogContext.setIsOpen, isOpen = _useThreadDialogContext.isOpen;
3954
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_themes46.Flex, {
4226
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_themes53.Flex, {
3955
4227
  display: {
3956
4228
  initial: isOpen ? "flex" : "none",
3957
4229
  sm: "none"
@@ -3971,20 +4243,20 @@ var Close = function() {
3971
4243
  style: {
3972
4244
  zIndex: 9999999999
3973
4245
  },
3974
- children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_themes46.IconButton, {
4246
+ children: /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_themes53.IconButton, {
3975
4247
  size: "2",
3976
4248
  variant: "soft",
3977
- children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react_icons12.Cross1Icon, {})
4249
+ children: /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_react_icons15.Cross1Icon, {})
3978
4250
  })
3979
4251
  });
3980
4252
  };
3981
4253
  // src/components/threads/ThreadDialog/Content/index.tsx
3982
- var import_jsx_runtime67 = require("react/jsx-runtime");
4254
+ var import_jsx_runtime75 = require("react/jsx-runtime");
3983
4255
  var Root11 = function(param) {
3984
4256
  var children = param.children, _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
3985
4257
  var isOpen = useThreadDialogContext().isOpen;
3986
4258
  if (!isOpen) return null;
3987
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_themes47.Flex, {
4259
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes54.Flex, {
3988
4260
  direction: "column",
3989
4261
  justify: "end",
3990
4262
  position: "fixed",
@@ -4012,7 +4284,7 @@ var Root11 = function(param) {
4012
4284
  style: _object_spread({
4013
4285
  zIndex: 9999999999
4014
4286
  }, style),
4015
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_themes47.Card, {
4287
+ children: /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)(import_themes54.Card, {
4016
4288
  mb: {
4017
4289
  initial: void 0,
4018
4290
  sm: "3"
@@ -4023,7 +4295,7 @@ var Root11 = function(param) {
4023
4295
  flexGrow: 1
4024
4296
  },
4025
4297
  children: [
4026
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_themes47.Inset, {
4298
+ /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes54.Inset, {
4027
4299
  clip: "padding-box",
4028
4300
  side: "all",
4029
4301
  pb: "current",
@@ -4033,13 +4305,13 @@ var Root11 = function(param) {
4033
4305
  },
4034
4306
  children: children
4035
4307
  }),
4036
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Close, {})
4308
+ /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Close, {})
4037
4309
  ]
4038
4310
  })
4039
4311
  });
4040
4312
  };
4041
4313
  var Messages2 = function() {
4042
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Thread.Messages, {
4314
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Thread.Messages, {
4043
4315
  style: {
4044
4316
  paddingTop: "var(--space-5)",
4045
4317
  paddingRight: "var(--space-5)",
@@ -4049,7 +4321,7 @@ var Messages2 = function() {
4049
4321
  };
4050
4322
  var FormContainer = function(param) {
4051
4323
  var children = param.children;
4052
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_themes47.Flex, {
4324
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes54.Flex, {
4053
4325
  direction: "column",
4054
4326
  pl: "5",
4055
4327
  pr: "5",
@@ -4060,13 +4332,13 @@ var FormContainer = function(param) {
4060
4332
  };
4061
4333
  var Content5 = function(param) {
4062
4334
  var _param_style = param.style, style = _param_style === void 0 ? {} : _param_style;
4063
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Root11, {
4335
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Root11, {
4064
4336
  style: style,
4065
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(Thread.Root, {
4337
+ children: /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)(Thread.Root, {
4066
4338
  children: [
4067
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Messages2, {}),
4068
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(FormContainer, {
4069
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Thread.MessageForm, {})
4339
+ /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Messages2, {}),
4340
+ /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(FormContainer, {
4341
+ children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Thread.MessageForm, {})
4070
4342
  })
4071
4343
  ]
4072
4344
  })
@@ -4076,12 +4348,12 @@ Content5.Root = Root11;
4076
4348
  Content5.Messages = Messages2;
4077
4349
  Content5.FormContainer = FormContainer;
4078
4350
  // src/components/threads/ThreadDialog/index.tsx
4079
- var import_jsx_runtime68 = require("react/jsx-runtime");
4351
+ var import_jsx_runtime76 = require("react/jsx-runtime");
4080
4352
  var ThreadDialog = function() {
4081
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(Root9, {
4353
+ return /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(Root9, {
4082
4354
  children: [
4083
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Content5, {}),
4084
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Trigger, {})
4355
+ /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Content5, {}),
4356
+ /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Trigger, {})
4085
4357
  ]
4086
4358
  });
4087
4359
  };
@@ -4089,10 +4361,10 @@ ThreadDialog.Root = Root9;
4089
4361
  ThreadDialog.Trigger = Trigger;
4090
4362
  ThreadDialog.Content = Content5;
4091
4363
  // src/components/threads/AudioThread/Root/index.tsx
4092
- var import_themes48 = require("@radix-ui/themes");
4364
+ var import_themes55 = require("@radix-ui/themes");
4093
4365
  // src/contexts/threads/AudioThreadContext/index.ts
4094
- var import_react45 = require("react");
4095
- var AudioThreadContext = (0, import_react45.createContext)({
4366
+ var import_react52 = require("react");
4367
+ var AudioThreadContext = (0, import_react52.createContext)({
4096
4368
  status: "idle",
4097
4369
  recorderProps: {
4098
4370
  status: "idle",
@@ -4148,7 +4420,7 @@ var AudioThreadContext = (0, import_react45.createContext)({
4148
4420
  }
4149
4421
  });
4150
4422
  // src/hooks/misc/usePermission/index.ts
4151
- var import_react46 = require("react");
4423
+ var import_react53 = require("react");
4152
4424
  // src/hooks/misc/usePermission/util.ts
4153
4425
  var noop = function() {};
4154
4426
  function on(obj) {
@@ -4171,8 +4443,8 @@ function off(obj) {
4171
4443
  }
4172
4444
  // src/hooks/misc/usePermission/index.ts
4173
4445
  var usePermission = function(permissionDesc) {
4174
- var _ref = _sliced_to_array((0, import_react46.useState)(""), 2), state = _ref[0], setState = _ref[1];
4175
- (0, import_react46.useEffect)(function() {
4446
+ var _ref = _sliced_to_array((0, import_react53.useState)(""), 2), state = _ref[0], setState = _ref[1];
4447
+ (0, import_react53.useEffect)(function() {
4176
4448
  var mounted = true;
4177
4449
  var permissionStatus = null;
4178
4450
  var onChange = function() {
@@ -4210,11 +4482,11 @@ var blobToData = function(blob) {
4210
4482
  });
4211
4483
  };
4212
4484
  // src/hooks/audioThreads/useStatus/index.ts
4213
- var import_react47 = require("react");
4485
+ var import_react54 = require("react");
4214
4486
  var useStatus = function(param) {
4215
4487
  var messageAudioProps = param.messageAudioProps, recorderProps = param.recorderProps, createMessageProps = param.createMessageProps;
4216
4488
  var latestMessageProps = useLatestMessage();
4217
- var status = (0, import_react47.useMemo)(function() {
4489
+ var status = (0, import_react54.useMemo)(function() {
4218
4490
  var _latestMessageProps_latestMessage;
4219
4491
  if (recorderProps.status === "recording") return "recording";
4220
4492
  if (createMessageProps.isPending) return "creatingMessage";
@@ -4238,16 +4510,16 @@ var useStatus = function(param) {
4238
4510
  // src/hooks/audioThreads/useRecorder/index.ts
4239
4511
  var import_dayjs3 = __toESM(require("dayjs"), 1);
4240
4512
  var import_use_audio_capture = require("use-audio-capture");
4241
- var import_react49 = require("react");
4513
+ var import_react56 = require("react");
4242
4514
  var import_react_use_audio_player = require("react-use-audio-player");
4243
4515
  // src/hooks/misc/useInterval.ts
4244
- var import_react48 = require("react");
4516
+ var import_react55 = require("react");
4245
4517
  var useInterval = function(callback, delay) {
4246
- var savedCallback = (0, import_react48.useRef)(function() {});
4247
- (0, import_react48.useEffect)(function() {
4518
+ var savedCallback = (0, import_react55.useRef)(function() {});
4519
+ (0, import_react55.useEffect)(function() {
4248
4520
  savedCallback.current = callback;
4249
4521
  });
4250
- (0, import_react48.useEffect)(function() {
4522
+ (0, import_react55.useEffect)(function() {
4251
4523
  if (delay !== null) {
4252
4524
  var interval = setInterval(function() {
4253
4525
  return savedCallback.current();
@@ -4264,14 +4536,14 @@ var useInterval = function(callback, delay) {
4264
4536
  // src/hooks/audioThreads/useRecorder/index.ts
4265
4537
  var useRecorder = function(param) {
4266
4538
  var isStopOnSilence = param.isStopOnSilence, onStart = param.onStart, onStop = param.onStop;
4267
- var _ref = _sliced_to_array((0, import_react49.useState)(null), 2), silenceStart = _ref[0], setSilenceStart = _ref[1];
4268
- var _ref1 = _sliced_to_array((0, import_react49.useState)(null), 2), noiseStart = _ref1[0], setNoiseStart = _ref1[1];
4269
- var _ref2 = _sliced_to_array((0, import_react49.useState)(null), 2), mediaStream = _ref2[0], setMediaStream = _ref2[1];
4270
- var _ref3 = _sliced_to_array((0, import_react49.useState)("idle"), 2), status = _ref3[0], setStatus = _ref3[1];
4539
+ var _ref = _sliced_to_array((0, import_react56.useState)(null), 2), silenceStart = _ref[0], setSilenceStart = _ref[1];
4540
+ var _ref1 = _sliced_to_array((0, import_react56.useState)(null), 2), noiseStart = _ref1[0], setNoiseStart = _ref1[1];
4541
+ var _ref2 = _sliced_to_array((0, import_react56.useState)(null), 2), mediaStream = _ref2[0], setMediaStream = _ref2[1];
4542
+ var _ref3 = _sliced_to_array((0, import_react56.useState)("idle"), 2), status = _ref3[0], setStatus = _ref3[1];
4271
4543
  var startAudioPlayer = (0, import_react_use_audio_player.useAudioPlayer)();
4272
4544
  var endAudioPlayer = (0, import_react_use_audio_player.useAudioPlayer)();
4273
- var _ref4 = _sliced_to_array((0, import_react49.useState)(false), 2), isLoaded = _ref4[0], setIsLoaded = _ref4[1];
4274
- (0, import_react49.useEffect)(function() {
4545
+ var _ref4 = _sliced_to_array((0, import_react56.useState)(false), 2), isLoaded = _ref4[0], setIsLoaded = _ref4[1];
4546
+ (0, import_react56.useEffect)(function() {
4275
4547
  if (isLoaded) return;
4276
4548
  setIsLoaded(true);
4277
4549
  }, [
@@ -4329,9 +4601,9 @@ var useRecorder = function(param) {
4329
4601
  setNoiseStart(null);
4330
4602
  }
4331
4603
  });
4332
- var _ref5 = _sliced_to_array((0, import_react49.useState)(null), 2), audioEngine = _ref5[0], setAudioEngine = _ref5[1];
4333
- var isInited = (0, import_react49.useRef)(false);
4334
- (0, import_react49.useEffect)(function() {
4604
+ var _ref5 = _sliced_to_array((0, import_react56.useState)(null), 2), audioEngine = _ref5[0], setAudioEngine = _ref5[1];
4605
+ var isInited = (0, import_react56.useRef)(false);
4606
+ (0, import_react56.useEffect)(function() {
4335
4607
  if (!mediaStream) return;
4336
4608
  if (isInited.current) return;
4337
4609
  isInited.current = true;
@@ -4344,7 +4616,7 @@ var useRecorder = function(param) {
4344
4616
  isInited,
4345
4617
  mediaStream
4346
4618
  ]);
4347
- var visualizationAnalyser = (0, import_react49.useMemo)(function() {
4619
+ var visualizationAnalyser = (0, import_react56.useMemo)(function() {
4348
4620
  if (!audioEngine) return null;
4349
4621
  var result = audioEngine.audioContext.createAnalyser();
4350
4622
  audioEngine.source.connect(result);
@@ -4352,7 +4624,7 @@ var useRecorder = function(param) {
4352
4624
  }, [
4353
4625
  audioEngine
4354
4626
  ]);
4355
- var silenceAnalyser = (0, import_react49.useMemo)(function() {
4627
+ var silenceAnalyser = (0, import_react56.useMemo)(function() {
4356
4628
  if (!audioEngine) return null;
4357
4629
  var result = audioEngine.audioContext.createAnalyser();
4358
4630
  result.minDecibels = -60;
@@ -4361,7 +4633,7 @@ var useRecorder = function(param) {
4361
4633
  }, [
4362
4634
  audioEngine
4363
4635
  ]);
4364
- var handleSilence = (0, import_react49.useCallback)(function() {
4636
+ var handleSilence = (0, import_react56.useCallback)(function() {
4365
4637
  if (!silenceAnalyser) return;
4366
4638
  var frequencyData = new Uint8Array(silenceAnalyser.frequencyBinCount);
4367
4639
  silenceAnalyser.getByteFrequencyData(frequencyData);
@@ -4384,7 +4656,7 @@ var useRecorder = function(param) {
4384
4656
  setNoiseStart,
4385
4657
  setSilenceStart
4386
4658
  ]);
4387
- (0, import_react49.useEffect)(function() {
4659
+ (0, import_react56.useEffect)(function() {
4388
4660
  if (!isStopOnSilence) return;
4389
4661
  requestAnimationFrame(function() {
4390
4662
  return handleSilence();
@@ -4407,7 +4679,7 @@ var useRecorder = function(param) {
4407
4679
  });
4408
4680
  };
4409
4681
  // src/hooks/audioThreads/useMessageAudio/index.ts
4410
- var import_react50 = require("react");
4682
+ var import_react57 = require("react");
4411
4683
  var import_compromise = __toESM(require("compromise"), 1);
4412
4684
  var import_howler = require("howler");
4413
4685
  var import_react_use_audio_player2 = require("react-use-audio-player");
@@ -4445,15 +4717,15 @@ var getMessageSentences = function(param) {
4445
4717
  };
4446
4718
  var useMessageAudio = function(param) {
4447
4719
  var onEnd = param.onEnd;
4448
- var _ref = _sliced_to_array((0, import_react50.useState)(false), 2), isAudioPlayed = _ref[0], setIsAudioPlayed = _ref[1];
4449
- var _ref1 = _sliced_to_array((0, import_react50.useState)([]), 2), stoppedMessageIds = _ref1[0], setStoppedMessageIds = _ref1[1];
4450
- var _ref2 = _sliced_to_array((0, import_react50.useState)([]), 2), playedMessageSentences = _ref2[0], setPlayedMessageSentences = _ref2[1];
4720
+ var _ref = _sliced_to_array((0, import_react57.useState)(false), 2), isAudioPlayed = _ref[0], setIsAudioPlayed = _ref[1];
4721
+ var _ref1 = _sliced_to_array((0, import_react57.useState)([]), 2), stoppedMessageIds = _ref1[0], setStoppedMessageIds = _ref1[1];
4722
+ var _ref2 = _sliced_to_array((0, import_react57.useState)([]), 2), playedMessageSentences = _ref2[0], setPlayedMessageSentences = _ref2[1];
4451
4723
  var audioPlayer = (0, import_react_use_audio_player2.useAudioPlayer)();
4452
4724
  var nextAudioPlayer = (0, import_react_use_audio_player2.useAudioPlayer)();
4453
4725
  var superinterfaceContext = useSuperinterfaceContext();
4454
- var _ref3 = _sliced_to_array((0, import_react50.useState)(false), 2), isPlaying = _ref3[0], setIsPlaying = _ref3[1];
4726
+ var _ref3 = _sliced_to_array((0, import_react57.useState)(false), 2), isPlaying = _ref3[0], setIsPlaying = _ref3[1];
4455
4727
  var latestMessageProps = useLatestMessage();
4456
- var unplayedMessageSentences = (0, import_react50.useMemo)(function() {
4728
+ var unplayedMessageSentences = (0, import_react57.useMemo)(function() {
4457
4729
  if (!latestMessageProps.latestMessage) return [];
4458
4730
  if (latestMessageProps.latestMessage.role !== "assistant") return [];
4459
4731
  if (stoppedMessageIds.includes(latestMessageProps.latestMessage.id)) return [];
@@ -4474,7 +4746,7 @@ var useMessageAudio = function(param) {
4474
4746
  latestMessageProps,
4475
4747
  playedMessageSentences
4476
4748
  ]);
4477
- (0, import_react50.useEffect)(function() {
4749
+ (0, import_react57.useEffect)(function() {
4478
4750
  if (isPlaying) return;
4479
4751
  if (audioPlayer.playing) return;
4480
4752
  if (!latestMessageProps.latestMessage) return;
@@ -4542,7 +4814,7 @@ var useMessageAudio = function(param) {
4542
4814
  playedMessageSentences,
4543
4815
  onEnd
4544
4816
  ]);
4545
- (0, import_react50.useEffect)(function() {
4817
+ (0, import_react57.useEffect)(function() {
4546
4818
  if (isHtmlAudioSupported) {
4547
4819
  var _import_howler_Howler__howls___sounds_, _import_howler_Howler__howls_, _import_howler_Howler;
4548
4820
  if (!((_import_howler_Howler = import_howler.Howler) === null || _import_howler_Howler === void 0 ? void 0 : (_import_howler_Howler__howls_ = _import_howler_Howler._howls[0]) === null || _import_howler_Howler__howls_ === void 0 ? void 0 : (_import_howler_Howler__howls___sounds_ = _import_howler_Howler__howls_._sounds[0]) === null || _import_howler_Howler__howls___sounds_ === void 0 ? void 0 : _import_howler_Howler__howls___sounds_._node)) return;
@@ -4551,9 +4823,9 @@ var useMessageAudio = function(param) {
4551
4823
  }, [
4552
4824
  audioPlayer
4553
4825
  ]);
4554
- var _ref4 = _sliced_to_array((0, import_react50.useState)(null), 2), audioEngine = _ref4[0], setAudioEngine = _ref4[1];
4555
- var isAudioEngineInited = (0, import_react50.useRef)(false);
4556
- (0, import_react50.useEffect)(function() {
4826
+ var _ref4 = _sliced_to_array((0, import_react57.useState)(null), 2), audioEngine = _ref4[0], setAudioEngine = _ref4[1];
4827
+ var isAudioEngineInited = (0, import_react57.useRef)(false);
4828
+ (0, import_react57.useEffect)(function() {
4557
4829
  if (!audioPlayer.playing) return;
4558
4830
  if (isAudioEngineInited.current) return;
4559
4831
  isAudioEngineInited.current = true;
@@ -4574,7 +4846,7 @@ var useMessageAudio = function(param) {
4574
4846
  audioPlayer,
4575
4847
  isAudioEngineInited
4576
4848
  ]);
4577
- var visualizationAnalyser = (0, import_react50.useMemo)(function() {
4849
+ var visualizationAnalyser = (0, import_react57.useMemo)(function() {
4578
4850
  if (!audioEngine) return null;
4579
4851
  var result = audioEngine.audioContext.createAnalyser();
4580
4852
  audioEngine.source.connect(audioEngine.audioContext.destination);
@@ -4583,7 +4855,7 @@ var useMessageAudio = function(param) {
4583
4855
  }, [
4584
4856
  audioEngine
4585
4857
  ]);
4586
- var isPending = (0, import_react50.useMemo)(function() {
4858
+ var isPending = (0, import_react57.useMemo)(function() {
4587
4859
  return isPlaying || unplayedMessageSentences.length > 0;
4588
4860
  }, [
4589
4861
  isPlaying,
@@ -4598,7 +4870,7 @@ var useMessageAudio = function(param) {
4598
4870
  };
4599
4871
  // src/components/threads/AudioThread/Root/index.tsx
4600
4872
  var import_react_query9 = require("@tanstack/react-query");
4601
- var import_jsx_runtime69 = require("react/jsx-runtime");
4873
+ var import_jsx_runtime77 = require("react/jsx-runtime");
4602
4874
  var Content6 = function(param) {
4603
4875
  var children = param.children;
4604
4876
  var addToast = useToasts().addToast;
@@ -4668,13 +4940,13 @@ var Content6 = function(param) {
4668
4940
  createMessageProps: createMessageProps,
4669
4941
  messageAudioProps: messageAudioProps
4670
4942
  }).status;
4671
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(AudioThreadContext.Provider, {
4943
+ return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(AudioThreadContext.Provider, {
4672
4944
  value: {
4673
4945
  status: status,
4674
4946
  recorderProps: recorderProps,
4675
4947
  messageAudioProps: messageAudioProps
4676
4948
  },
4677
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_themes48.Flex, {
4949
+ children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_themes55.Flex, {
4678
4950
  direction: "column",
4679
4951
  flexGrow: "1",
4680
4952
  p: "9",
@@ -4684,32 +4956,32 @@ var Content6 = function(param) {
4684
4956
  };
4685
4957
  var Root12 = function(param) {
4686
4958
  var children = param.children;
4687
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(ToastsProvider, {
4688
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(Content6, {
4959
+ return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(ToastsProvider, {
4960
+ children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Content6, {
4689
4961
  children: children
4690
4962
  })
4691
4963
  });
4692
4964
  };
4693
4965
  // src/components/threads/AudioThread/Visualization/index.tsx
4694
- var import_react53 = require("react");
4966
+ var import_react60 = require("react");
4695
4967
  var import_lodash9 = __toESM(require("lodash"), 1);
4696
- var import_themes50 = require("@radix-ui/themes");
4968
+ var import_themes57 = require("@radix-ui/themes");
4697
4969
  // src/hooks/threads/useAudioThreadContext/index.ts
4698
- var import_react51 = require("react");
4970
+ var import_react58 = require("react");
4699
4971
  var useAudioThreadContext = function() {
4700
- return (0, import_react51.useContext)(AudioThreadContext);
4972
+ return (0, import_react58.useContext)(AudioThreadContext);
4701
4973
  };
4702
4974
  // src/components/threads/AudioThread/BarsVisualizer/index.tsx
4703
4975
  var import_lodash8 = __toESM(require("lodash"), 1);
4704
- var import_themes49 = require("@radix-ui/themes");
4705
- var import_react52 = require("react");
4976
+ var import_themes56 = require("@radix-ui/themes");
4977
+ var import_react59 = require("react");
4706
4978
  var import_radash17 = require("radash");
4707
- var import_jsx_runtime70 = require("react/jsx-runtime");
4979
+ var import_jsx_runtime78 = require("react/jsx-runtime");
4708
4980
  var barCount = 4;
4709
4981
  var BarsVisualizer = function(param) {
4710
4982
  var visualizationAnalyser = param.visualizationAnalyser, backgroundColor = param.backgroundColor, height = param.height, barWidth = param.barWidth;
4711
- var _ref = _sliced_to_array((0, import_react52.useState)([]), 2), barHeights = _ref[0], setBarHeights = _ref[1];
4712
- var draw = (0, import_react52.useCallback)(function(param) {
4983
+ var _ref = _sliced_to_array((0, import_react59.useState)([]), 2), barHeights = _ref[0], setBarHeights = _ref[1];
4984
+ var draw = (0, import_react59.useCallback)(function(param) {
4713
4985
  var visualizationAnalyser2 = param.visualizationAnalyser;
4714
4986
  if (!visualizationAnalyser2) {
4715
4987
  setBarHeights(Array(barCount).fill(0));
@@ -4727,7 +4999,7 @@ var BarsVisualizer = function(param) {
4727
4999
  });
4728
5000
  });
4729
5001
  }, []);
4730
- (0, import_react52.useEffect)(function() {
5002
+ (0, import_react59.useEffect)(function() {
4731
5003
  draw({
4732
5004
  visualizationAnalyser: visualizationAnalyser
4733
5005
  });
@@ -4735,7 +5007,7 @@ var BarsVisualizer = function(param) {
4735
5007
  draw,
4736
5008
  visualizationAnalyser
4737
5009
  ]);
4738
- return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_themes49.Grid, {
5010
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_themes56.Grid, {
4739
5011
  columns: "".concat(barCount),
4740
5012
  gap: "1",
4741
5013
  width: "auto",
@@ -4744,12 +5016,12 @@ var BarsVisualizer = function(param) {
4744
5016
  gridTemplateColumns: "repeat(4, minmax(0, 1fr))"
4745
5017
  },
4746
5018
  children: barHeights.map(function(barHeight, index) {
4747
- return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_themes49.Flex, {
5019
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_themes56.Flex, {
4748
5020
  direction: "column",
4749
5021
  align: "center",
4750
5022
  justify: "center",
4751
5023
  height: height,
4752
- children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_themes49.Flex, {
5024
+ children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_themes56.Flex, {
4753
5025
  minHeight: "50%",
4754
5026
  maxHeight: "100%",
4755
5027
  height: "".concat(barHeight + 20, "%"),
@@ -4764,12 +5036,12 @@ var BarsVisualizer = function(param) {
4764
5036
  });
4765
5037
  };
4766
5038
  // src/components/threads/AudioThread/Visualization/index.tsx
4767
- var import_jsx_runtime71 = require("react/jsx-runtime");
5039
+ var import_jsx_runtime79 = require("react/jsx-runtime");
4768
5040
  var Visualization = function() {
4769
5041
  var audioThreadContext = useAudioThreadContext();
4770
- var assistantNameContext = (0, import_react53.useContext)(AssistantNameContext);
4771
- var _ref = _sliced_to_array((0, import_react53.useState)(0), 2), scale = _ref[0], setScale = _ref[1];
4772
- var draw = (0, import_react53.useCallback)(function(param) {
5042
+ var assistantNameContext = (0, import_react60.useContext)(AssistantNameContext);
5043
+ var _ref = _sliced_to_array((0, import_react60.useState)(0), 2), scale = _ref[0], setScale = _ref[1];
5044
+ var draw = (0, import_react60.useCallback)(function(param) {
4773
5045
  var visualizationAnalyser = param.visualizationAnalyser;
4774
5046
  if (!visualizationAnalyser) {
4775
5047
  setScale(1);
@@ -4784,7 +5056,7 @@ var Visualization = function() {
4784
5056
  });
4785
5057
  });
4786
5058
  }, []);
4787
- (0, import_react53.useEffect)(function() {
5059
+ (0, import_react60.useEffect)(function() {
4788
5060
  draw({
4789
5061
  visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser
4790
5062
  });
@@ -4792,14 +5064,14 @@ var Visualization = function() {
4792
5064
  draw,
4793
5065
  audioThreadContext
4794
5066
  ]);
4795
- return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_themes50.Flex, {
5067
+ return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_themes57.Flex, {
4796
5068
  direction: "column",
4797
5069
  align: "center",
4798
5070
  justify: "center",
4799
5071
  mb: "3",
4800
5072
  flexGrow: "1",
4801
5073
  children: [
4802
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_themes50.Flex, {
5074
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_themes57.Flex, {
4803
5075
  align: "center",
4804
5076
  justify: "center",
4805
5077
  height: "200px",
@@ -4809,20 +5081,20 @@ var Visualization = function() {
4809
5081
  borderRadius: "9999px",
4810
5082
  scale: scale
4811
5083
  },
4812
- children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(BarsVisualizer, {
5084
+ children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(BarsVisualizer, {
4813
5085
  visualizationAnalyser: audioThreadContext.messageAudioProps.visualizationAnalyser,
4814
5086
  backgroundColor: audioThreadContext.status === "playing" ? "var(--accent-11)" : "var(--gray-11)",
4815
5087
  height: "40px",
4816
5088
  barWidth: "24px"
4817
5089
  })
4818
5090
  }),
4819
- /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_themes50.Flex, {
5091
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_themes57.Flex, {
4820
5092
  ml: "-22.5px",
4821
5093
  gap: "3",
4822
5094
  pt: "5",
4823
5095
  children: [
4824
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(AssistantAvatar, {}),
4825
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(Name, {
5096
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(AssistantAvatar, {}),
5097
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(Name, {
4826
5098
  children: assistantNameContext
4827
5099
  })
4828
5100
  ]
@@ -4831,8 +5103,8 @@ var Visualization = function() {
4831
5103
  });
4832
5104
  };
4833
5105
  // src/components/threads/AudioThread/Status/StatusMessages.tsx
4834
- var import_themes51 = require("@radix-ui/themes");
4835
- var import_jsx_runtime72 = require("react/jsx-runtime");
5106
+ var import_themes58 = require("@radix-ui/themes");
5107
+ var import_jsx_runtime80 = require("react/jsx-runtime");
4836
5108
  var html = function(param) {
4837
5109
  var texts = param.texts;
4838
5110
  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) {
@@ -4841,17 +5113,17 @@ var html = function(param) {
4841
5113
  };
4842
5114
  var StatusMessages = function(param) {
4843
5115
  var texts = param.texts;
4844
- return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(import_themes51.Flex, {
5116
+ return /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(import_themes58.Flex, {
4845
5117
  justify: "center",
4846
5118
  pb: "5",
4847
5119
  children: [
4848
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_themes51.Text, {
5120
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_themes58.Text, {
4849
5121
  size: "2",
4850
5122
  weight: "regular",
4851
5123
  color: "gray",
4852
5124
  className: "status-messages-texts"
4853
5125
  }),
4854
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("style", {
5126
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("style", {
4855
5127
  dangerouslySetInnerHTML: {
4856
5128
  __html: html({
4857
5129
  texts: texts
@@ -4862,11 +5134,11 @@ var StatusMessages = function(param) {
4862
5134
  });
4863
5135
  };
4864
5136
  // src/components/threads/AudioThread/Status/index.tsx
4865
- var import_jsx_runtime73 = require("react/jsx-runtime");
5137
+ var import_jsx_runtime81 = require("react/jsx-runtime");
4866
5138
  var Status = function() {
4867
5139
  var audioThreadContext = useAudioThreadContext();
4868
5140
  if (audioThreadContext.status === "recording") {
4869
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(StatusMessages, {
5141
+ return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(StatusMessages, {
4870
5142
  texts: [
4871
5143
  "Start speaking",
4872
5144
  "Listening",
@@ -4880,31 +5152,31 @@ var Status = function() {
4880
5152
  "idle",
4881
5153
  "playerPaused"
4882
5154
  ].includes(audioThreadContext.status)) {
4883
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(StatusMessages, {
5155
+ return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(StatusMessages, {
4884
5156
  texts: [
4885
5157
  "Click the button below to activate"
4886
5158
  ]
4887
5159
  });
4888
5160
  }
4889
5161
  if (audioThreadContext.status === "playing") {
4890
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(StatusMessages, {
5162
+ return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(StatusMessages, {
4891
5163
  texts: [
4892
5164
  "Click the button below to interrupt"
4893
5165
  ]
4894
5166
  });
4895
5167
  }
4896
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(StatusMessages, {
5168
+ return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(StatusMessages, {
4897
5169
  texts: [
4898
5170
  "Thinking"
4899
5171
  ]
4900
5172
  });
4901
5173
  };
4902
5174
  // src/components/threads/AudioThread/Form/index.tsx
4903
- var import_themes53 = require("@radix-ui/themes");
5175
+ var import_themes60 = require("@radix-ui/themes");
4904
5176
  // src/components/threads/AudioThread/Form/MicIcon.tsx
4905
- var import_jsx_runtime74 = require("react/jsx-runtime");
5177
+ var import_jsx_runtime82 = require("react/jsx-runtime");
4906
5178
  var MicIcon = function(props) {
4907
- return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("svg", _object_spread_props(_object_spread({
5179
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("svg", _object_spread_props(_object_spread({
4908
5180
  xmlns: "http://www.w3.org/2000/svg",
4909
5181
  fill: "currentColor",
4910
5182
  stroke: "currentColor",
@@ -4913,54 +5185,54 @@ var MicIcon = function(props) {
4913
5185
  height: "15",
4914
5186
  width: "15"
4915
5187
  }, props), {
4916
- children: /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("path", {
5188
+ children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("path", {
4917
5189
  stroke: "none",
4918
5190
  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"
4919
5191
  })
4920
5192
  }));
4921
5193
  };
4922
5194
  // src/components/threads/AudioThread/Form/ActionButton/index.tsx
4923
- var import_themes52 = require("@radix-ui/themes");
4924
- var import_react_icons13 = require("@radix-ui/react-icons");
4925
- var import_jsx_runtime75 = require("react/jsx-runtime");
5195
+ var import_themes59 = require("@radix-ui/themes");
5196
+ var import_react_icons16 = require("@radix-ui/react-icons");
5197
+ var import_jsx_runtime83 = require("react/jsx-runtime");
4926
5198
  var ActionButton = function() {
4927
5199
  var audioThreadContext = useAudioThreadContext();
4928
5200
  var superinterfaceContext = useSuperinterfaceContext();
4929
5201
  if (audioThreadContext.status === "recording") {
4930
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)(import_themes52.Flex, {
5202
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)(import_themes59.Flex, {
4931
5203
  align: "center",
4932
5204
  children: [
4933
- /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.Flex, {
5205
+ /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.Flex, {
4934
5206
  mr: "3",
4935
5207
  ml: "-7",
4936
- children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.IconButton, {
5208
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.IconButton, {
4937
5209
  onClick: audioThreadContext.recorderProps.pause,
4938
5210
  color: "gray",
4939
5211
  variant: "soft",
4940
5212
  size: "1",
4941
- children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react_icons13.PauseIcon, {})
5213
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_react_icons16.PauseIcon, {})
4942
5214
  })
4943
5215
  }),
4944
- /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.IconButton, {
5216
+ /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.IconButton, {
4945
5217
  onClick: audioThreadContext.recorderProps.stop,
4946
5218
  highContrast: true,
4947
5219
  variant: "soft",
4948
5220
  size: "4",
4949
- children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react_icons13.ArrowUpIcon, {})
5221
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_react_icons16.ArrowUpIcon, {})
4950
5222
  })
4951
5223
  ]
4952
5224
  });
4953
5225
  }
4954
5226
  if (audioThreadContext.status === "recorderPaused") {
4955
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.IconButton, {
5227
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.IconButton, {
4956
5228
  onClick: audioThreadContext.recorderProps.resume,
4957
5229
  color: "red",
4958
5230
  size: "4",
4959
- children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react_icons13.ResumeIcon, {})
5231
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_react_icons16.ResumeIcon, {})
4960
5232
  });
4961
5233
  }
4962
5234
  if (audioThreadContext.status === "idle") {
4963
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.IconButton, {
5235
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.IconButton, {
4964
5236
  onClick: function() {
4965
5237
  return audioThreadContext.recorderProps.start();
4966
5238
  },
@@ -4969,7 +5241,7 @@ var ActionButton = function() {
4969
5241
  });
4970
5242
  }
4971
5243
  if (audioThreadContext.status === "playing") {
4972
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.IconButton, {
5244
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.IconButton, {
4973
5245
  onClick: function() {
4974
5246
  var _superinterfaceContext_createMessageAbortControllerRef_current;
4975
5247
  audioThreadContext.messageAudioProps.stop();
@@ -4979,54 +5251,54 @@ var ActionButton = function() {
4979
5251
  size: "4",
4980
5252
  color: "gray",
4981
5253
  variant: "soft",
4982
- children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react_icons13.StopIcon, {})
5254
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_react_icons16.StopIcon, {})
4983
5255
  });
4984
5256
  }
4985
5257
  if (audioThreadContext.status === "playerPaused") {
4986
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.IconButton, {
5258
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.IconButton, {
4987
5259
  onClick: function() {
4988
5260
  return audioThreadContext.messageAudioProps.play();
4989
5261
  },
4990
5262
  size: "4",
4991
- children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react_icons13.ResumeIcon, {})
5263
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_react_icons16.ResumeIcon, {})
4992
5264
  });
4993
5265
  }
4994
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_themes52.IconButton, {
5266
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes59.IconButton, {
4995
5267
  size: "4",
4996
5268
  variant: "soft",
4997
5269
  disabled: true
4998
5270
  });
4999
5271
  };
5000
5272
  // src/components/threads/AudioThread/Form/index.tsx
5001
- var import_jsx_runtime76 = require("react/jsx-runtime");
5273
+ var import_jsx_runtime84 = require("react/jsx-runtime");
5002
5274
  var Form = function() {
5003
5275
  var audioThreadContext = useAudioThreadContext();
5004
- return /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(import_themes53.Flex, {
5276
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_themes60.Flex, {
5005
5277
  direction: "column",
5006
5278
  align: "center",
5007
5279
  children: [
5008
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(import_themes53.Flex, {
5280
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_themes60.Flex, {
5009
5281
  pb: "3",
5010
5282
  align: "center",
5011
5283
  children: [
5012
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_themes53.Flex, {
5284
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_themes60.Flex, {
5013
5285
  ml: "-22.5px",
5014
5286
  mr: "2",
5015
5287
  align: "center",
5016
- children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(MicIcon, {
5288
+ children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(MicIcon, {
5017
5289
  style: {
5018
5290
  color: audioThreadContext.status === "recording" ? "var(--accent-11)" : "var(--gray-11)"
5019
5291
  }
5020
5292
  })
5021
5293
  }),
5022
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_themes53.Flex, {
5294
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_themes60.Flex, {
5023
5295
  px: "2",
5024
5296
  py: "1",
5025
5297
  style: {
5026
5298
  backgroundColor: audioThreadContext.status === "recording" ? "var(--accent-4)" : "var(--gray-4)",
5027
5299
  borderRadius: "var(--radius-6)"
5028
5300
  },
5029
- children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(BarsVisualizer, {
5301
+ children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(BarsVisualizer, {
5030
5302
  visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser,
5031
5303
  backgroundColor: audioThreadContext.status === "recording" ? "var(--accent-11)" : "var(--gray-11)",
5032
5304
  height: "20px",
@@ -5035,33 +5307,34 @@ var Form = function() {
5035
5307
  })
5036
5308
  ]
5037
5309
  }),
5038
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(ActionButton, {})
5310
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(ActionButton, {})
5039
5311
  ]
5040
5312
  });
5041
5313
  };
5042
5314
  // src/components/threads/AudioThread/index.tsx
5043
- var import_jsx_runtime77 = require("react/jsx-runtime");
5315
+ var import_jsx_runtime85 = require("react/jsx-runtime");
5044
5316
  var AudioThread = function(props) {
5045
- return /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(Root12, _object_spread_props(_object_spread({}, props), {
5317
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(Root12, _object_spread_props(_object_spread({}, props), {
5046
5318
  children: [
5047
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Visualization, {}),
5048
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Status, {}),
5049
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Form, {})
5319
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Visualization, {}),
5320
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Status, {}),
5321
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Form, {})
5050
5322
  ]
5051
5323
  }));
5052
5324
  };
5053
5325
  AudioThread.Root = Root12;
5054
5326
  AudioThread.Visualization = Visualization;
5327
+ AudioThread.Status = Status;
5055
5328
  AudioThread.Form = Form;
5056
5329
  // src/components/threads/AudioThreadDialog/index.tsx
5057
- var import_jsx_runtime78 = require("react/jsx-runtime");
5330
+ var import_jsx_runtime86 = require("react/jsx-runtime");
5058
5331
  var AudioThreadDialog = function() {
5059
- return /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)(Root9, {
5332
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Root9, {
5060
5333
  children: [
5061
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(Content5.Root, {
5062
- children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(AudioThread, {})
5334
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Content5.Root, {
5335
+ children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(AudioThread, {})
5063
5336
  }),
5064
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(Trigger, {})
5337
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Trigger, {})
5065
5338
  ]
5066
5339
  });
5067
5340
  };
@@ -5069,17 +5342,17 @@ AudioThreadDialog.Root = Root9;
5069
5342
  AudioThreadDialog.Trigger = Trigger;
5070
5343
  AudioThreadDialog.Content = Content5;
5071
5344
  // src/components/suggestions/Suggestions/index.tsx
5072
- var import_react55 = require("react");
5345
+ var import_react62 = require("react");
5073
5346
  // src/components/suggestions/Suggestions/Content.tsx
5074
- var import_react54 = require("react");
5347
+ var import_react61 = require("react");
5075
5348
  var import_radash18 = require("radash");
5076
5349
  var import_react_children_utilities = require("react-children-utilities");
5077
- var import_themes55 = require("@radix-ui/themes");
5350
+ var import_themes62 = require("@radix-ui/themes");
5078
5351
  // src/components/suggestions/Suggestions/Item.tsx
5079
- var import_react_icons14 = require("@radix-ui/react-icons");
5080
- var import_themes54 = require("@radix-ui/themes");
5352
+ var import_react_icons17 = require("@radix-ui/react-icons");
5353
+ var import_themes61 = require("@radix-ui/themes");
5081
5354
  var import_react_query10 = require("@tanstack/react-query");
5082
- var import_jsx_runtime79 = require("react/jsx-runtime");
5355
+ var import_jsx_runtime87 = require("react/jsx-runtime");
5083
5356
  var Item = function(param) {
5084
5357
  var suggestion = param.suggestion, isDisabled = param.isDisabled;
5085
5358
  var addToast = useToasts().addToast;
@@ -5092,7 +5365,7 @@ var Item = function(param) {
5092
5365
  threadContext: threadContext
5093
5366
  })
5094
5367
  }), createMessage = _useCreateMessage.createMessage, isPending = _useCreateMessage.isPending;
5095
- return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(Content7, {
5368
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Content7, {
5096
5369
  onClick: function() {
5097
5370
  createMessage({
5098
5371
  // @ts-ignore-next-line
@@ -5106,7 +5379,7 @@ var Item = function(param) {
5106
5379
  };
5107
5380
  var Content7 = function(param) {
5108
5381
  var onClick = param.onClick, isDisabled = param.isDisabled, isPending = param.isPending, children = param.children;
5109
- return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_themes54.Button, {
5382
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(import_themes61.Button, {
5110
5383
  variant: "soft",
5111
5384
  onClick: onClick,
5112
5385
  disabled: isDisabled,
@@ -5116,14 +5389,14 @@ var Content7 = function(param) {
5116
5389
  flexShrink: 1
5117
5390
  },
5118
5391
  children: [
5119
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_themes54.Text, {
5392
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_themes61.Text, {
5120
5393
  size: "1",
5121
5394
  weight: "regular",
5122
5395
  children: children
5123
5396
  }),
5124
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_themes54.Spinner, {
5397
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_themes61.Spinner, {
5125
5398
  loading: isPending,
5126
- children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_react_icons14.ArrowUpIcon, {
5399
+ children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_react_icons17.ArrowUpIcon, {
5127
5400
  style: {
5128
5401
  flexShrink: 0
5129
5402
  }
@@ -5134,11 +5407,11 @@ var Content7 = function(param) {
5134
5407
  };
5135
5408
  Item.Content = Content7;
5136
5409
  // src/components/suggestions/Suggestions/Content.tsx
5137
- var import_jsx_runtime80 = require("react/jsx-runtime");
5410
+ var import_jsx_runtime88 = require("react/jsx-runtime");
5138
5411
  var Content8 = function(param) {
5139
5412
  var children = param.children;
5140
5413
  var isMutatingMessage = useIsMutatingMessage();
5141
- var suggestions = (0, import_react54.useMemo)(function() {
5414
+ var suggestions = (0, import_react61.useMemo)(function() {
5142
5415
  return (0, import_react_children_utilities.onlyText)(children).split(/\r?\n/).filter(function(c) {
5143
5416
  return !(0, import_radash18.isEmpty)(c);
5144
5417
  }).map(function(c) {
@@ -5148,12 +5421,12 @@ var Content8 = function(param) {
5148
5421
  children
5149
5422
  ]);
5150
5423
  if ((0, import_radash18.isEmpty)(suggestions)) return null;
5151
- return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_themes55.Flex, {
5424
+ return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_themes62.Flex, {
5152
5425
  gap: "2",
5153
5426
  py: "2",
5154
5427
  wrap: "wrap",
5155
5428
  children: suggestions.map(function(suggestion) {
5156
- return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Item, {
5429
+ return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Item, {
5157
5430
  suggestion: suggestion,
5158
5431
  isDisabled: isMutatingMessage
5159
5432
  }, suggestion);
@@ -5161,11 +5434,11 @@ var Content8 = function(param) {
5161
5434
  });
5162
5435
  };
5163
5436
  // src/components/suggestions/Suggestions/index.tsx
5164
- var import_jsx_runtime81 = require("react/jsx-runtime");
5437
+ var import_jsx_runtime89 = require("react/jsx-runtime");
5165
5438
  var Suggestions = function(param) {
5166
5439
  var children = param.children;
5167
5440
  var latestMessageProps = useLatestMessage();
5168
- var isDisabled = (0, import_react55.useMemo)(function() {
5441
+ var isDisabled = (0, import_react62.useMemo)(function() {
5169
5442
  var // @ts-ignore-next-line
5170
5443
  _latestMessageProps_latestMessage_metadata, _latestMessageProps_latestMessage;
5171
5444
  return (_latestMessageProps_latestMessage = latestMessageProps.latestMessage) === null || _latestMessageProps_latestMessage === void 0 ? void 0 : (_latestMessageProps_latestMessage_metadata = _latestMessageProps_latestMessage.metadata) === null || _latestMessageProps_latestMessage_metadata === void 0 ? void 0 : _latestMessageProps_latestMessage_metadata.isBlocking;
@@ -5174,34 +5447,34 @@ var Suggestions = function(param) {
5174
5447
  ]);
5175
5448
  if (latestMessageProps.isLoading) return null;
5176
5449
  if (isDisabled) return null;
5177
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(Content8, {
5450
+ return /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Content8, {
5178
5451
  children: children
5179
5452
  });
5180
5453
  };
5181
5454
  Suggestions.Item = Item;
5182
5455
  // src/components/markdown/MarkdownProvider/index.tsx
5183
- var import_react56 = require("react");
5184
- var import_jsx_runtime82 = require("react/jsx-runtime");
5456
+ var import_react63 = require("react");
5457
+ var import_jsx_runtime90 = require("react/jsx-runtime");
5185
5458
  var MarkdownProvider = function(_param) {
5186
5459
  var children = _param.children, rest = _object_without_properties(_param, [
5187
5460
  "children"
5188
5461
  ]);
5189
5462
  var prevMarkdownContext = useMarkdownContext();
5190
- var value = (0, import_react56.useMemo)(function() {
5463
+ var value = (0, import_react63.useMemo)(function() {
5191
5464
  return merge(prevMarkdownContext, rest);
5192
5465
  }, [
5193
5466
  rest,
5194
5467
  prevMarkdownContext
5195
5468
  ]);
5196
- return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(MarkdownContext.Provider, {
5469
+ return /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(MarkdownContext.Provider, {
5197
5470
  value: value,
5198
5471
  children: children
5199
5472
  });
5200
5473
  };
5201
5474
  // src/components/avatars/Avatar.tsx
5202
- var import_themes58 = require("@radix-ui/themes");
5475
+ var import_themes65 = require("@radix-ui/themes");
5203
5476
  // src/components/imageAvatars/ImageAvatar/index.tsx
5204
- var import_themes56 = require("@radix-ui/themes");
5477
+ var import_themes63 = require("@radix-ui/themes");
5205
5478
  // src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/path.ts
5206
5479
  var width = function(param) {
5207
5480
  var size = param.size;
@@ -5252,11 +5525,11 @@ var optimizedSrc = function(param) {
5252
5525
  }));
5253
5526
  };
5254
5527
  // src/components/imageAvatars/ImageAvatar/index.tsx
5255
- var import_jsx_runtime83 = require("react/jsx-runtime");
5528
+ var import_jsx_runtime91 = require("react/jsx-runtime");
5256
5529
  var ImageAvatar = function(param) {
5257
5530
  var imageAvatar = param.imageAvatar, size = param.size;
5258
5531
  var superinterfaceContext = useSuperinterfaceContext();
5259
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_themes56.Avatar, {
5532
+ return /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_themes63.Avatar, {
5260
5533
  fallback: "",
5261
5534
  src: optimizedSrc({
5262
5535
  imageAvatar: imageAvatar,
@@ -5267,84 +5540,84 @@ var ImageAvatar = function(param) {
5267
5540
  });
5268
5541
  };
5269
5542
  // src/components/iconAvatars/IconAvatar.tsx
5270
- var import_react57 = require("react");
5271
- var import_themes57 = require("@radix-ui/themes");
5543
+ var import_react64 = require("react");
5544
+ var import_themes64 = require("@radix-ui/themes");
5272
5545
  // src/lib/iconAvatars/iconAvatarComponents.ts
5273
- var import_react_icons15 = require("@radix-ui/react-icons");
5546
+ var import_react_icons18 = require("@radix-ui/react-icons");
5274
5547
  var _obj;
5275
- var iconAvatarComponents = (_obj = {}, _define_property(_obj, "BACKPACK" /* BACKPACK */ , import_react_icons15.BackpackIcon), _define_property(_obj, "ROCKET" /* ROCKET */ , import_react_icons15.RocketIcon), _define_property(_obj, "MAGIC_WAND" /* MAGIC_WAND */ , import_react_icons15.MagicWandIcon), _define_property(_obj, "CUBE" /* CUBE */ , import_react_icons15.CubeIcon), _define_property(_obj, "TARGET" /* TARGET */ , import_react_icons15.TargetIcon), _define_property(_obj, "DISC" /* DISC */ , import_react_icons15.DiscIcon), _define_property(_obj, "GLOBE" /* GLOBE */ , import_react_icons15.GlobeIcon), _define_property(_obj, "STAR" /* STAR */ , import_react_icons15.StarIcon), _define_property(_obj, "LIGHTNING_BOLT" /* LIGHTNING_BOLT */ , import_react_icons15.LightningBoltIcon), _define_property(_obj, "FACE" /* FACE */ , import_react_icons15.FaceIcon), _define_property(_obj, "PERSON" /* PERSON */ , import_react_icons15.PersonIcon), _define_property(_obj, "HEART" /* HEART */ , import_react_icons15.HeartIcon), _obj);
5548
+ var iconAvatarComponents = (_obj = {}, _define_property(_obj, "BACKPACK" /* BACKPACK */ , import_react_icons18.BackpackIcon), _define_property(_obj, "ROCKET" /* ROCKET */ , import_react_icons18.RocketIcon), _define_property(_obj, "MAGIC_WAND" /* MAGIC_WAND */ , import_react_icons18.MagicWandIcon), _define_property(_obj, "CUBE" /* CUBE */ , import_react_icons18.CubeIcon), _define_property(_obj, "TARGET" /* TARGET */ , import_react_icons18.TargetIcon), _define_property(_obj, "DISC" /* DISC */ , import_react_icons18.DiscIcon), _define_property(_obj, "GLOBE" /* GLOBE */ , import_react_icons18.GlobeIcon), _define_property(_obj, "STAR" /* STAR */ , import_react_icons18.StarIcon), _define_property(_obj, "LIGHTNING_BOLT" /* LIGHTNING_BOLT */ , import_react_icons18.LightningBoltIcon), _define_property(_obj, "FACE" /* FACE */ , import_react_icons18.FaceIcon), _define_property(_obj, "PERSON" /* PERSON */ , import_react_icons18.PersonIcon), _define_property(_obj, "HEART" /* HEART */ , import_react_icons18.HeartIcon), _obj);
5276
5549
  // src/components/iconAvatars/IconAvatar.tsx
5277
- var import_jsx_runtime84 = require("react/jsx-runtime");
5550
+ var import_jsx_runtime92 = require("react/jsx-runtime");
5278
5551
  var IconAvatar = function(param) {
5279
5552
  var iconAvatar = param.iconAvatar, size = param.size;
5280
- var Component = (0, import_react57.useMemo)(function() {
5553
+ var Component = (0, import_react64.useMemo)(function() {
5281
5554
  return iconAvatarComponents[iconAvatar.name];
5282
5555
  }, [
5283
5556
  iconAvatar
5284
5557
  ]);
5285
- return /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_themes57.Avatar, {
5558
+ return /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(import_themes64.Avatar, {
5286
5559
  size: size,
5287
- fallback: Component ? /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(Component, {}) : ""
5560
+ fallback: Component ? /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Component, {}) : ""
5288
5561
  });
5289
5562
  };
5290
5563
  // src/components/avatars/Avatar.tsx
5291
- var import_jsx_runtime85 = require("react/jsx-runtime");
5564
+ var import_jsx_runtime93 = require("react/jsx-runtime");
5292
5565
  var Avatar6 = function(param) {
5293
5566
  var avatar = param.avatar, _param_size = param.size, size = _param_size === void 0 ? "1" : _param_size;
5294
5567
  if (avatar) {
5295
5568
  if (avatar.type === "IMAGE" /* IMAGE */ && avatar.imageAvatar) {
5296
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ImageAvatar, {
5569
+ return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(ImageAvatar, {
5297
5570
  imageAvatar: avatar.imageAvatar,
5298
5571
  size: size
5299
5572
  });
5300
5573
  }
5301
5574
  if (avatar.type === "ICON" /* ICON */ && avatar.iconAvatar) {
5302
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(IconAvatar, {
5575
+ return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(IconAvatar, {
5303
5576
  iconAvatar: avatar.iconAvatar,
5304
5577
  size: size
5305
5578
  });
5306
5579
  }
5307
5580
  }
5308
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_themes58.Avatar, {
5581
+ return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_themes65.Avatar, {
5309
5582
  fallback: "",
5310
5583
  size: size
5311
5584
  });
5312
5585
  };
5313
5586
  // src/components/components/ComponentsProvider.tsx
5314
- var import_react59 = require("react");
5587
+ var import_react66 = require("react");
5315
5588
  // src/hooks/components/useComponents.ts
5316
- var import_react58 = require("react");
5589
+ var import_react65 = require("react");
5317
5590
  var useComponents = function() {
5318
- return (0, import_react58.useContext)(ComponentsContext);
5591
+ return (0, import_react65.useContext)(ComponentsContext);
5319
5592
  };
5320
5593
  // src/components/components/ComponentsProvider.tsx
5321
- var import_jsx_runtime86 = require("react/jsx-runtime");
5594
+ var import_jsx_runtime94 = require("react/jsx-runtime");
5322
5595
  var ComponentsProvider = function(_param) {
5323
5596
  var children = _param.children, rest = _object_without_properties(_param, [
5324
5597
  "children"
5325
5598
  ]);
5326
5599
  var prevComponents = useComponents();
5327
- var value = (0, import_react59.useMemo)(function() {
5600
+ var value = (0, import_react66.useMemo)(function() {
5328
5601
  return merge(prevComponents, rest);
5329
5602
  }, [
5330
5603
  rest,
5331
5604
  prevComponents
5332
5605
  ]);
5333
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(ComponentsContext.Provider, {
5606
+ return /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(ComponentsContext.Provider, {
5334
5607
  value: value,
5335
5608
  children: children
5336
5609
  });
5337
5610
  };
5338
5611
  // src/components/assistants/AssistantProvider/index.tsx
5339
- var import_react61 = require("react");
5340
- var import_themes59 = require("@radix-ui/themes");
5612
+ var import_react68 = require("react");
5613
+ var import_themes66 = require("@radix-ui/themes");
5341
5614
  // src/components/assistants/AssistantProvider/Code.tsx
5342
- var import_react60 = require("react");
5343
- var import_jsx_runtime87 = require("react/jsx-runtime");
5615
+ var import_react67 = require("react");
5616
+ var import_jsx_runtime95 = require("react/jsx-runtime");
5344
5617
  var Code4 = function(param) {
5345
5618
  var children = param.children, className = param.className, markdownContext = param.markdownContext;
5346
5619
  var messageContext = useMessageContext();
5347
- var isAssistantMessage = (0, import_react60.useMemo)(function() {
5620
+ var isAssistantMessage = (0, import_react67.useMemo)(function() {
5348
5621
  var _messageContext_message;
5349
5622
  return ((_messageContext_message = messageContext.message) === null || _messageContext_message === void 0 ? void 0 : _messageContext_message.role) === "assistant";
5350
5623
  }, [
@@ -5356,12 +5629,12 @@ var Code4 = function(param) {
5356
5629
  className: className
5357
5630
  });
5358
5631
  }
5359
- return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Suggestions, {
5632
+ return /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Suggestions, {
5360
5633
  children: children
5361
5634
  });
5362
5635
  };
5363
5636
  // src/components/assistants/AssistantProvider/index.tsx
5364
- var import_jsx_runtime88 = // @ts-ignore-next-line
5637
+ var import_jsx_runtime96 = // @ts-ignore-next-line
5365
5638
  require("react/jsx-runtime");
5366
5639
  var AssistantProvider = function(param) {
5367
5640
  var children = param.children;
@@ -5370,10 +5643,10 @@ var AssistantProvider = function(param) {
5370
5643
  assistantId: superinterfaceContext.variables.assistantId
5371
5644
  }).assistant;
5372
5645
  var markdownContext = useMarkdownContext();
5373
- var components2 = (0, import_react61.useMemo)(function() {
5646
+ var components2 = (0, import_react68.useMemo)(function() {
5374
5647
  return {
5375
5648
  code: function(props) {
5376
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Code4, _object_spread_props(_object_spread({}, props), {
5649
+ return /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(Code4, _object_spread_props(_object_spread({}, props), {
5377
5650
  markdownContext: markdownContext
5378
5651
  }));
5379
5652
  }
@@ -5384,7 +5657,7 @@ var AssistantProvider = function(param) {
5384
5657
  if (!assistant) {
5385
5658
  return null;
5386
5659
  }
5387
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_themes59.Theme, {
5660
+ return /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_themes66.Theme, {
5388
5661
  accentColor: assistant.theme.accentColor,
5389
5662
  grayColor: assistant.theme.grayColor,
5390
5663
  radius: assistant.theme.radius,
@@ -5392,13 +5665,13 @@ var AssistantProvider = function(param) {
5392
5665
  scaling: assistant.theme.scaling,
5393
5666
  panelBackground: "solid",
5394
5667
  hasBackground: false,
5395
- children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(AssistantNameContext.Provider, {
5668
+ children: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(AssistantNameContext.Provider, {
5396
5669
  value: assistant.name,
5397
- children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(AssistantAvatarContext.Provider, {
5398
- value: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Avatar6, {
5670
+ children: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(AssistantAvatarContext.Provider, {
5671
+ value: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(Avatar6, {
5399
5672
  avatar: assistant.avatar
5400
5673
  }),
5401
- children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(MarkdownProvider, {
5674
+ children: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(MarkdownProvider, {
5402
5675
  components: components2,
5403
5676
  children: children
5404
5677
  })