@marimo-team/islands 0.25.3-dev209 → 0.25.3-dev210

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/dist/{ConnectedDataExplorerComponent-ApTYh0V3.js → ConnectedDataExplorerComponent-D6RHJV8D.js} +114 -112
  2. package/dist/{ErrorBoundary-B1QlXN-y.js → ErrorBoundary-VruaQLnK.js} +10 -10
  3. package/dist/{abnfDiagram-VCTEODGH-uo9xhZY0.js → abnfDiagram-VCTEODGH-0q7Lbmii.js} +2 -2
  4. package/dist/{any-language-editor-BVFHDDQ3.js → any-language-editor-jGaR0EAo.js} +5 -5
  5. package/dist/{architectureDiagram-5GKGNRK7-Hz6eyeOD.js → architectureDiagram-5GKGNRK7-1PydKPmE.js} +1 -1
  6. package/dist/{button-BQRdqQi1.js → button-B6RjDKJx.js} +54 -51
  7. package/dist/{capabilities-C2QUNRXi.js → capabilities-CkVzWJEX.js} +1 -1
  8. package/dist/{chat-ui-BTA1I5i1.js → chat-ui-B5pH_aXk.js} +414 -413
  9. package/dist/{check-C9Mp9eCK.js → check-Z_vtI3OL.js} +1 -1
  10. package/dist/{chunk-IMKFNOWR-DBM2i23k.js → chunk-IMKFNOWR-DEzZZ1Zc.js} +1 -1
  11. package/dist/{chunk-SHT3W25Y-L8KQLLBy.js → chunk-SHT3W25Y-CuHj-hnn.js} +1 -1
  12. package/dist/{chunk-SVP7TREG-BOUJKJEP.js → chunk-SVP7TREG-BPiZK2bA.js} +1 -1
  13. package/dist/{chunk-TICWLB2K-DY3CzFjX.js → chunk-TICWLB2K-DF6XcIjM.js} +1 -1
  14. package/dist/{classDiagram-ZZMXUADV-s9iwW-q4.js → classDiagram-ZZMXUADV-CMdR-cP4.js} +2 -2
  15. package/dist/{classDiagram-v2-VYDZK3BY-2GI5CjGB.js → classDiagram-v2-VYDZK3BY-DRvc3_7Y.js} +2 -2
  16. package/dist/{code-visibility-CCGlDSq4.js → code-visibility-BdFhHfIC.js} +28 -28
  17. package/dist/{common-C1PmVtVW.js → common-Ce1SgsX1.js} +8034 -8027
  18. package/dist/{toDate-BZZ64K_m.js → config-DbjzjwxX.js} +98 -164
  19. package/dist/{copy-icon-De584pZ4.js → copy-icon-CG57cxwb.js} +3 -3
  20. package/dist/createReducer-DePYJ0F3.js +63 -0
  21. package/dist/{cynefinDiagram-5FMLGOSQ-DOxnhBK2.js → cynefinDiagram-5FMLGOSQ-BkBjEY9l.js} +1 -1
  22. package/dist/{dagre-GXQ25YYZ-D1AhEfpM.js → dagre-GXQ25YYZ-D-HEaW4I.js} +1 -1
  23. package/dist/{data-grid-overlay-editor-B3KXkZvo.js → data-grid-overlay-editor-Bps1p6jQ.js} +1 -1
  24. package/dist/{diagram-S7CK7UJ4-DV_GebF_.js → diagram-S7CK7UJ4-Bn-oF-rB.js} +1 -1
  25. package/dist/{diagram-UQ7AKVKN-6dNzGFfD.js → diagram-UQ7AKVKN-BpzzXWBj.js} +1 -1
  26. package/dist/{diagram-VX7I27RA-DUh9jsfi.js → diagram-VX7I27RA-COOtvfBP.js} +1 -1
  27. package/dist/{diagram-Z3DM3KII-Cug-qcQ8.js → diagram-Z3DM3KII-K5cXvbrl.js} +1 -1
  28. package/dist/{dialog-DVRfQuhD.js → dialog-DsZ49mmU.js} +26 -26
  29. package/dist/{dist-BJtmSgcE.js → dist-11T5wq3_.js} +41 -40
  30. package/dist/{dist-B1M0bGO3.js → dist-17ugwGZc.js} +59 -58
  31. package/dist/{dist-D7mrh5sO.js → dist-7cRjf--y.js} +135 -134
  32. package/dist/{dist-Ck_C32ye.js → dist-B8pkfkzc.js} +31 -30
  33. package/dist/{dist-Ba2VIn1K.js → dist-B9UoM_wq.js} +54 -53
  34. package/dist/{dist-KN80qWCP.js → dist-BGuMTs1i.js} +118 -117
  35. package/dist/{dist-T5rh6JvL.js → dist-BHW11fni.js} +18 -17
  36. package/dist/dist-BLY4m1Wi.js +850 -0
  37. package/dist/{dist-Bj4bmwUm.js → dist-BNlcVoxs.js} +31 -30
  38. package/dist/{dist-BA13RJj5.js → dist-BQYe5Bju.js} +47 -46
  39. package/dist/{dist-OUle2RT7.js → dist-BX1mn8na.js} +297 -297
  40. package/dist/{dist-CTi5FTiV.js → dist-Bh0PTKUW.js} +108 -107
  41. package/dist/{dist-D9Q3xjiP.js → dist-CKaXK92p.js} +56 -55
  42. package/dist/{dist-DYXM73-k.js → dist-CLhwfhpJ.js} +58 -57
  43. package/dist/{dist-BmS-ZGjl.js → dist-CYeqK4Xw.js} +1854 -2702
  44. package/dist/{dist-D1fnFp1J.js → dist-Cxlp3WH6.js} +16 -15
  45. package/dist/{dist-DVVwOfrD.js → dist-DSJPGj42.js} +64 -63
  46. package/dist/{dist-Bzogh7CW.js → dist-DU9ICsWZ.js} +93 -92
  47. package/dist/{dist-DjeybPOb.js → dist-DWv0ALBi.js} +47 -46
  48. package/dist/{dist-D3x9__Fu.js → dist-DiBpWEsB.js} +39 -38
  49. package/dist/{dist-DtGn9N4h.js → dist-DiLFTlnl.js} +165 -165
  50. package/dist/{dist-DTv9KkpW.js → dist-cVDV5IuI.js} +26 -25
  51. package/dist/{dist-DP60Ubh8.js → dist-fRfaOoq8.js} +44 -43
  52. package/dist/{dist-O0qFpEJh.js → dist-gTTI-9Px.js} +66 -65
  53. package/dist/{dropdown-menu-dlEm41Bt.js → dropdown-menu-CSNdPSnS.js} +2886 -1529
  54. package/dist/{ebnfDiagram-PWID7BFC-d5LKx7Vb.js → ebnfDiagram-PWID7BFC-BI1ZmjVm.js} +2 -2
  55. package/dist/{erDiagram-RLTQ6QDP-BwvlkcID.js → erDiagram-RLTQ6QDP-BtWjj9xy.js} +1 -1
  56. package/dist/{error-banner-DxJ3s8YO.js → error-banner-IsonnvA0.js} +47 -46
  57. package/dist/error-entries-CRPfxMqm.js +2505 -0
  58. package/dist/{esm-Bbw_Njjx.js → esm-BgKjMvWw.js} +389 -388
  59. package/dist/{esm-mDQNEFe_.js → esm-CHjVSexr.js} +305 -306
  60. package/dist/{feedback-button-UsovT9sL.js → feedback-button-2ycmR9GG.js} +112 -112
  61. package/dist/{flowDiagram-HODETNUW-CJcSoFer.js → flowDiagram-HODETNUW-DQvZh96A.js} +2 -2
  62. package/dist/{formats-Ry7c-aIV.js → formats-BK4VefeF.js} +6 -6
  63. package/dist/{glide-data-editor-CRd8kBSp.js → glide-data-editor-Buj2OZjL.js} +99 -99
  64. package/dist/{glide-utils-D98laidb.js → glide-utils-CQddGpa-.js} +3 -3
  65. package/dist/{globals-BDWrOstF.js → globals-B-14fUeb.js} +3 -3
  66. package/dist/{error-entries-CVUHA5r_.js → html-to-image-CgAnxFi8.js} +26314 -25474
  67. package/dist/{infoDiagram-27XIBGKW-Cezgppw3.js → infoDiagram-27XIBGKW-BdAObnc_.js} +1 -1
  68. package/dist/{ishikawaDiagram-5VMMS53U-BahZQwJz.js → ishikawaDiagram-5VMMS53U-DP-jE8dw.js} +1 -1
  69. package/dist/{kanban-definition-UXKFOSKX-Cvfn_Obm.js → kanban-definition-UXKFOSKX-BkMgPjfm.js} +1 -1
  70. package/dist/{loader-DOVB0Syl.js → loader-BisjOLiW.js} +1 -1
  71. package/dist/main.js +2996 -2992
  72. package/dist/{mermaid-BrdwbArF.js → mermaid-B-OFqheA.js} +36 -36
  73. package/dist/{mindmap-definition-YA3MSWOX-uB4B2d-J.js → mindmap-definition-YA3MSWOX-Du7toAZX.js} +1 -1
  74. package/dist/{number-overlay-editor-Bp9a4z5Q.js → number-overlay-editor-ZVFcJ7_u.js} +1 -1
  75. package/dist/{dist-CThPVKaP.js → objectWithoutPropertiesLoose-ai5NUqGa.js} +1139 -1120
  76. package/dist/{pegDiagram-XKGWAZYB-CYaIwAmH.js → pegDiagram-XKGWAZYB-CX_729j0.js} +2 -2
  77. package/dist/{pieDiagram-E7YTZNPT-BJ1oUxVv.js → pieDiagram-E7YTZNPT-dtTFJcVI.js} +1 -1
  78. package/dist/{process-output-SjJxB1wh.js → process-output-Bmev5azU.js} +5 -5
  79. package/dist/{railroadDiagram-O6MQD6OU-BqKSaBux.js → railroadDiagram-O6MQD6OU-Dsc2Cf4c.js} +2 -2
  80. package/dist/{requirementDiagram-BXWQKSXE-DwFhgDhH.js → requirementDiagram-BXWQKSXE-D3g0c60I.js} +1 -1
  81. package/dist/{reveal-component-ov3pS-oO.js → reveal-component-BWz1KjWe.js} +725 -725
  82. package/dist/schemas-CdscWNy_.js +4747 -0
  83. package/dist/select-BSxlITBo.js +1200 -0
  84. package/dist/{sequenceDiagram-WJ2MYXX4-L7ENjfKF.js → sequenceDiagram-WJ2MYXX4-w1pWbIpk.js} +1 -1
  85. package/dist/{spec-BcJ9ncAY.js → spec-Dq8RNplp.js} +4 -4
  86. package/dist/{stateDiagram-D77RDMKH-CVf88u-p.js → stateDiagram-D77RDMKH-BCv7kP4H.js} +2 -2
  87. package/dist/{stateDiagram-v2-MP3YSRHH-DvpkQ1V6.js → stateDiagram-v2-MP3YSRHH-D1cTOt0x.js} +2 -2
  88. package/dist/static-state-BldGd99T.js +72 -0
  89. package/dist/strings-BGW-fXVJ.js +507 -0
  90. package/dist/{swimlanes-42K2YHIH-DIuFHbVE.js → swimlanes-42K2YHIH-DNO6jDnd.js} +1 -1
  91. package/dist/{swimlanesDiagram-VR7AAH4N-CAqHAziW.js → swimlanesDiagram-VR7AAH4N-CkSWsxYJ.js} +2 -2
  92. package/dist/{swiper-component-BVfnhbnt.js → swiper-component-Dir1o8ml.js} +2 -2
  93. package/dist/{timeline-definition-24CTP7MA-xO4EQqBm.js → timeline-definition-24CTP7MA-DQvqGFM9.js} +1 -1
  94. package/dist/toast-BWIPi3aF.js +491 -0
  95. package/dist/{tooltip-s4zZxwKe.js → tooltip-C3UnvsRe.js} +58 -58
  96. package/dist/use-restore-focus-BWO0z1lo.js +1672 -0
  97. package/dist/{useAsyncData-Dqw22wZQ.js → useAsyncData-DsZMvNXn.js} +1 -1
  98. package/dist/{useDateFormatter-D3Tkfzej.js → useDateFormatter-ChB4eyim.js} +2 -2
  99. package/dist/{useDeepCompareMemoize-D3gozcjJ.js → useDeepCompareMemoize-KMBBux8C.js} +1 -1
  100. package/dist/{useIframeCapabilities-6a_yDNXp.js → useIframeCapabilities-cMNQ80CK.js} +1 -1
  101. package/dist/useLifecycle-BquH9ET-.js +112 -0
  102. package/dist/useTheme-B9C1JIy9.js +307 -0
  103. package/dist/utils-DXkj82sK.js +813 -0
  104. package/dist/{vega-component-Blvspl7v.js → vega-component-9NOEITbg.js} +55 -54
  105. package/dist/{vennDiagram-4TSXK5OY-DzCi-lRh.js → vennDiagram-4TSXK5OY-BfzXp4SH.js} +1 -1
  106. package/dist/{wardleyDiagram-VM6X3IG4-CW48xa0n.js → wardleyDiagram-VM6X3IG4-CiqEE8eq.js} +1 -1
  107. package/dist/{xychartDiagram-S5SC5T6Z-UPxGGI2B.js → xychartDiagram-S5SC5T6Z-BTIHCVOI.js} +1 -1
  108. package/package.json +1 -1
  109. package/src/components/editor/cell/__tests__/StagedAICell.test.tsx +1 -1
  110. package/src/components/editor/cell/code/cell-editor.tsx +13 -36
  111. package/src/components/editor/chrome/wrapper/__tests__/pending-ai-cells.test.tsx +1 -1
  112. package/src/components/editor/errors/__tests__/send-error-report-button.test.tsx +11 -5
  113. package/src/components/editor/notebook-cell.tsx +0 -1
  114. package/src/components/scratchpad/scratchpad.test.tsx +3 -11
  115. package/src/components/scratchpad/scratchpad.tsx +24 -22
  116. package/src/components/scratchpad/state.ts +7 -0
  117. package/src/core/ai/__tests__/staged-cells.test.ts +6 -8
  118. package/src/core/ai/staged-cells.ts +4 -2
  119. package/src/core/cells/__tests__/cells.test.ts +44 -60
  120. package/src/core/cells/__tests__/document.test.ts +1 -139
  121. package/src/core/cells/__tests__/notebook-outline.test.ts +8 -6
  122. package/src/core/cells/actions.ts +39 -0
  123. package/src/core/cells/cells.ts +15 -35
  124. package/src/core/cells/document.ts +9 -84
  125. package/src/core/codemirror/__tests__/format.test.ts +0 -34
  126. package/src/core/codemirror/cells/extensions.ts +20 -18
  127. package/src/core/codemirror/cells/state.ts +0 -5
  128. package/src/core/codemirror/format.ts +1 -19
  129. package/src/core/codemirror/misc/__tests__/paste.test.ts +3 -1
  130. package/src/core/codemirror/misc/paste.ts +1 -1
  131. package/src/core/notebook/document/__tests__/codemirror.test.ts +172 -0
  132. package/src/stories/layout/vertical/one-column.stories.tsx +26 -18
  133. package/dist/html-to-image--E3uFbJ9.js +0 -3348
  134. package/dist/label-Qvw1E97W.js +0 -281
  135. package/dist/objectWithoutPropertiesLoose-BRDcTsfB.js +0 -23
  136. package/dist/select-2KOiReNY.js +0 -1423
  137. package/dist/toast-B5t9o6s_.js +0 -1848
  138. package/dist/use-restore-focus-BgDTd2tc.js +0 -6418
  139. package/dist/useLifecycle-CaZi4wTw.js +0 -172
  140. package/dist/useTheme-TzPgWXwB.js +0 -1114
@@ -0,0 +1,491 @@
1
+ import { a as e } from "./rolldown-runtime-Cb76FRpK.js";
2
+ import { h as t, p as n, s as r } from "./button-B6RjDKJx.js";
3
+ import { t as i } from "./react-sHtZdjeP.js";
4
+ import { t as a } from "./compiler-runtime-CldRdSsv.js";
5
+ import { p as o } from "./tooltip-C3UnvsRe.js";
6
+ import { a as s, s as c } from "./strings-BGW-fXVJ.js";
7
+ import { t as l } from "./react-dom-DUmH0GXv.js";
8
+ import { t as u } from "./jsx-runtime-3BD1kT0s.js";
9
+ import { D as d, F as f, I as p, L as m, M as h, N as g, O as _, P as v, S as y, j as b, k as x } from "./use-restore-focus-BWO0z1lo.js";
10
+ //#region ../node_modules/.pnpm/@radix-ui+react-toast@1.3.1_@types+react-dom@19.3.0_@types+react@19.3.0__@types+react@1_9e7c08a11157ed276bff36e462c11a8f/node_modules/@radix-ui/react-toast/dist/index.mjs
11
+ var S = /* @__PURE__ */ e(i(), 1), ee = /* @__PURE__ */ e(l(), 1), C = u(), w = Object.defineProperty, T = (e, t) => w(e, "name", {
12
+ value: t,
13
+ configurable: !0
14
+ }), E = S.startTransition || (() => void 0), D = "ToastProvider", [O, te, k] = s("Toast"), A = {
15
+ Up: "up",
16
+ Down: "down",
17
+ Left: "left",
18
+ Right: "right"
19
+ }, ne = {
20
+ Foreground: "foreground",
21
+ Background: "background"
22
+ }, [j, M] = f("Toast", [k]), [N, P] = j(D);
23
+ function F(e) {
24
+ typeof E == "function" ? E(e) : e();
25
+ }
26
+ T(F, "scheduleUpdate");
27
+ var I = /* @__PURE__ */ T((e) => {
28
+ let { __scopeToast: t, label: n = "Notification", duration: r = 5e3, swipeDirection: i = A.Right, swipeThreshold: a = 50, announcerContainer: o, children: s } = e, [c, l] = S.useState(null), [u, d] = S.useState(0), f = S.useRef(!1), p = S.useCallback((e) => {
29
+ F(() => l(e));
30
+ }, []), m = S.useCallback(() => {
31
+ F(() => d((e) => e + 1));
32
+ }, []), h = S.useCallback(() => {
33
+ F(() => d((e) => e - 1));
34
+ }, []);
35
+ return n.trim() || console.error(`Invalid prop \`label\` supplied to \`${D}\`. Expected non-empty \`string\`.`), /* @__PURE__ */ (0, C.jsx)(O.Provider, {
36
+ scope: t,
37
+ children: /* @__PURE__ */ (0, C.jsx)(N, {
38
+ scope: t,
39
+ label: n,
40
+ duration: r,
41
+ swipeDirection: i,
42
+ swipeThreshold: a,
43
+ toastCount: u,
44
+ viewport: c,
45
+ onViewportChange: p,
46
+ onToastAdd: m,
47
+ onToastRemove: h,
48
+ isClosePausedRef: f,
49
+ announcerContainer: o,
50
+ children: s
51
+ })
52
+ });
53
+ }, "ToastProvider"), L = "ToastViewport", R = ["F8"], z = "toast.viewportPause", B = "toast.viewportResume", V = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
54
+ let { __scopeToast: r, hotkey: i = R, label: a = "Notifications ({hotkey})", ...o } = e, s = P(L, r), c = te(r), l = S.useRef(null), u = S.useRef(null), d = S.useRef(null), f = S.useRef(null), m = n(t, f, s.onViewportChange), h = i.join("+").replace(/Key/g, "").replace(/Digit/g, ""), g = s.toastCount > 0;
55
+ S.useEffect(() => {
56
+ let e = /* @__PURE__ */ T((e) => {
57
+ i.length !== 0 && i.every((t) => e[t] || e.code === t) && f.current?.focus();
58
+ }, "handleKeyDown");
59
+ return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
60
+ }, [i]), S.useEffect(() => {
61
+ let e = l.current, t = f.current;
62
+ if (g && e && t) {
63
+ let n = /* @__PURE__ */ T(() => {
64
+ if (!s.isClosePausedRef.current) {
65
+ let e = new CustomEvent(z);
66
+ t.dispatchEvent(e), s.isClosePausedRef.current = !0;
67
+ }
68
+ }, "handlePause"), r = /* @__PURE__ */ T(() => {
69
+ if (s.isClosePausedRef.current) {
70
+ let e = new CustomEvent(B);
71
+ t.dispatchEvent(e), s.isClosePausedRef.current = !1;
72
+ }
73
+ }, "handleResume"), i = /* @__PURE__ */ T((t) => {
74
+ e.contains(t.relatedTarget) || r();
75
+ }, "handleFocusOutResume"), a = /* @__PURE__ */ T(() => {
76
+ e.contains(document.activeElement) || r();
77
+ }, "handlePointerLeaveResume");
78
+ return e.addEventListener("focusin", n), e.addEventListener("focusout", i), e.addEventListener("pointermove", n), e.addEventListener("pointerleave", a), window.addEventListener("blur", n), window.addEventListener("focus", r), () => {
79
+ e.removeEventListener("focusin", n), e.removeEventListener("focusout", i), e.removeEventListener("pointermove", n), e.removeEventListener("pointerleave", a), window.removeEventListener("blur", n), window.removeEventListener("focus", r);
80
+ };
81
+ }
82
+ }, [g, s.isClosePausedRef]);
83
+ let v = S.useCallback(({ tabbingDirection: e }) => {
84
+ let t = c().map((t) => {
85
+ let n = t.ref.current, r = [n, ..._e(n)];
86
+ return e === "forwards" ? r : r.reverse();
87
+ });
88
+ return (e === "forwards" ? t.reverse() : t).flat();
89
+ }, [c]);
90
+ return S.useEffect(() => {
91
+ let e = f.current;
92
+ if (e) {
93
+ let t = /* @__PURE__ */ T((t) => {
94
+ let n = t.altKey || t.ctrlKey || t.metaKey;
95
+ if (t.key === "Tab" && !n) {
96
+ let n = document.activeElement, r = t.shiftKey;
97
+ if (t.target === e && r) {
98
+ u.current?.focus();
99
+ return;
100
+ }
101
+ let i = v({ tabbingDirection: r ? "backwards" : "forwards" }), a = i.findIndex((e) => e === n);
102
+ Q(i.slice(a + 1)) ? t.preventDefault() : r ? u.current?.focus() : d.current?.focus();
103
+ }
104
+ }, "handleKeyDown");
105
+ return e.addEventListener("keydown", t), () => e.removeEventListener("keydown", t);
106
+ }
107
+ }, [c, v]), /* @__PURE__ */ (0, C.jsxs)(_, {
108
+ ref: l,
109
+ role: "region",
110
+ "aria-label": a.replace("{hotkey}", h),
111
+ tabIndex: -1,
112
+ style: { pointerEvents: g ? void 0 : "none" },
113
+ children: [
114
+ g && /* @__PURE__ */ (0, C.jsx)(U, {
115
+ ref: u,
116
+ onFocusFromOutsideViewport: () => {
117
+ Q(v({ tabbingDirection: "forwards" }));
118
+ }
119
+ }),
120
+ /* @__PURE__ */ (0, C.jsx)(O.Slot, {
121
+ scope: r,
122
+ children: /* @__PURE__ */ (0, C.jsx)(p.ol, {
123
+ tabIndex: -1,
124
+ ...o,
125
+ ref: m
126
+ })
127
+ }),
128
+ g && /* @__PURE__ */ (0, C.jsx)(U, {
129
+ ref: d,
130
+ onFocusFromOutsideViewport: () => {
131
+ Q(v({ tabbingDirection: "backwards" }));
132
+ }
133
+ })
134
+ ]
135
+ });
136
+ }, "ToastViewport")), H = "ToastFocusProxy", U = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
137
+ let { __scopeToast: n, onFocusFromOutsideViewport: r, ...i } = e, a = P(H, n);
138
+ return /* @__PURE__ */ (0, C.jsx)(o, {
139
+ tabIndex: 0,
140
+ ...i,
141
+ ref: t,
142
+ style: { position: "fixed" },
143
+ onFocus: (e) => {
144
+ let t = e.relatedTarget;
145
+ a.viewport?.contains(t) || r();
146
+ }
147
+ });
148
+ }, "ToastFocusProxy")), W = "Toast", re = "toast.swipeStart", ie = "toast.swipeMove", ae = "toast.swipeCancel", oe = "toast.swipeEnd", G = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
149
+ let { forceMount: n, open: r, defaultOpen: i, onOpenChange: a, ...o } = e, [s, c] = h({
150
+ prop: r,
151
+ defaultProp: i ?? !0,
152
+ onChange: a,
153
+ caller: W
154
+ });
155
+ return /* @__PURE__ */ (0, C.jsx)(b, {
156
+ present: n || s,
157
+ children: /* @__PURE__ */ (0, C.jsx)(le, {
158
+ open: s,
159
+ ...o,
160
+ ref: t,
161
+ onClose: () => c(!1),
162
+ onPause: x(e.onPause),
163
+ onResume: x(e.onResume),
164
+ onSwipeStart: g(e.onSwipeStart, (e) => {
165
+ e.currentTarget.setAttribute("data-swipe", "start");
166
+ }),
167
+ onSwipeMove: g(e.onSwipeMove, (e) => {
168
+ let { x: t, y: n } = e.detail.delta;
169
+ e.currentTarget.setAttribute("data-swipe", "move"), e.currentTarget.style.setProperty("--radix-toast-swipe-move-x", `${t}px`), e.currentTarget.style.setProperty("--radix-toast-swipe-move-y", `${n}px`);
170
+ }),
171
+ onSwipeCancel: g(e.onSwipeCancel, (e) => {
172
+ e.currentTarget.setAttribute("data-swipe", "cancel"), e.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"), e.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"), e.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"), e.currentTarget.style.removeProperty("--radix-toast-swipe-end-y");
173
+ }),
174
+ onSwipeEnd: g(e.onSwipeEnd, (e) => {
175
+ let { x: t, y: n } = e.detail.delta;
176
+ e.currentTarget.setAttribute("data-swipe", "end"), e.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"), e.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"), e.currentTarget.style.setProperty("--radix-toast-swipe-end-x", `${t}px`), e.currentTarget.style.setProperty("--radix-toast-swipe-end-y", `${n}px`), c(!1);
177
+ })
178
+ })
179
+ });
180
+ }, "Toast")), [se, ce] = j(W, { onClose() {} }), le = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
181
+ let { __scopeToast: r, type: i = ne.Foreground, duration: a, open: o, onClose: s, onEscapeKeyDown: c, onPause: l, onResume: u, onSwipeStart: f, onSwipeMove: m, onSwipeCancel: h, onSwipeEnd: _, ...v } = e, y = P(W, r), b = te(r), [w, E] = S.useState(null), D = n(t, E), k = S.useRef(null), A = S.useRef(null), j = a || y.duration, M = S.useRef(0), N = S.useRef(j), F = S.useRef(0), { onToastAdd: I, onToastRemove: L } = y, R = x(() => {
182
+ w?.contains(document.activeElement) && y.viewport?.focus(), s();
183
+ }), V = S.useCallback((e) => {
184
+ !e || e === Infinity || (window.clearTimeout(F.current), M.current = (/* @__PURE__ */ new Date()).getTime(), F.current = window.setTimeout(R, e));
185
+ }, [R]);
186
+ S.useEffect(() => {
187
+ let e = y.viewport;
188
+ if (e) {
189
+ let t = /* @__PURE__ */ T(() => {
190
+ V(N.current), u?.();
191
+ }, "handleResume"), n = /* @__PURE__ */ T(() => {
192
+ let e = (/* @__PURE__ */ new Date()).getTime() - M.current;
193
+ N.current -= e, window.clearTimeout(F.current), l?.();
194
+ }, "handlePause");
195
+ return e.addEventListener(z, n), e.addEventListener(B, t), () => {
196
+ e.removeEventListener(z, n), e.removeEventListener(B, t);
197
+ };
198
+ }
199
+ }, [
200
+ y.viewport,
201
+ j,
202
+ l,
203
+ u,
204
+ V
205
+ ]), S.useEffect(() => {
206
+ N.current = j, o && !y.isClosePausedRef.current && V(j);
207
+ }, [
208
+ o,
209
+ j,
210
+ y.isClosePausedRef,
211
+ V
212
+ ]), S.useEffect(() => () => {
213
+ window.clearTimeout(F.current);
214
+ }, []), S.useEffect(() => (I(), () => L()), [I, L]);
215
+ let H = S.useMemo(() => w ? X(w) : null, [w]);
216
+ return y.viewport ? /* @__PURE__ */ (0, C.jsxs)(C.Fragment, { children: [H && /* @__PURE__ */ (0, C.jsx)(ue, {
217
+ __scopeToast: r,
218
+ role: "status",
219
+ "aria-live": i === ne.Foreground ? "assertive" : "polite",
220
+ children: H
221
+ }), /* @__PURE__ */ (0, C.jsx)(se, {
222
+ scope: r,
223
+ onClose: R,
224
+ children: ee.createPortal(/* @__PURE__ */ (0, C.jsx)(O.ItemSlot, {
225
+ scope: r,
226
+ children: /* @__PURE__ */ (0, C.jsx)(d, {
227
+ asChild: !0,
228
+ onEscapeKeyDown: g(c, (e) => {
229
+ b().some((t) => t.ref.current?.contains(e.target)) || R();
230
+ }),
231
+ children: /* @__PURE__ */ (0, C.jsx)(p.li, {
232
+ tabIndex: 0,
233
+ "data-state": o ? "open" : "closed",
234
+ "data-swipe-direction": y.swipeDirection,
235
+ ...v,
236
+ ref: D,
237
+ style: {
238
+ userSelect: "none",
239
+ touchAction: "none",
240
+ ...e.style
241
+ },
242
+ onKeyDown: g(e.onKeyDown, (e) => {
243
+ e.key === "Escape" && (c?.(e.nativeEvent), e.nativeEvent.defaultPrevented || R());
244
+ }),
245
+ onPointerDown: g(e.onPointerDown, (e) => {
246
+ e.button === 0 && (k.current = {
247
+ x: e.clientX,
248
+ y: e.clientY
249
+ });
250
+ }),
251
+ onPointerMove: g(e.onPointerMove, (e) => {
252
+ if (!k.current) return;
253
+ let t = e.clientX - k.current.x, n = e.clientY - k.current.y, r = !!A.current, i = ["left", "right"].includes(y.swipeDirection), a = ["left", "up"].includes(y.swipeDirection) ? Math.min : Math.max, o = i ? a(0, t) : 0, s = i ? 0 : a(0, n), c = e.pointerType === "touch" ? 10 : 2, l = {
254
+ x: o,
255
+ y: s
256
+ }, u = {
257
+ originalEvent: e,
258
+ delta: l
259
+ };
260
+ r ? (A.current = l, Z(ie, m, u, { discrete: !1 })) : me(l, y.swipeDirection, c) ? (A.current = l, Z(re, f, u, { discrete: !1 }), e.target.setPointerCapture(e.pointerId)) : (Math.abs(t) > c || Math.abs(n) > c) && (k.current = null);
261
+ }),
262
+ onPointerUp: g(e.onPointerUp, (e) => {
263
+ let t = A.current, n = e.target;
264
+ if (n.hasPointerCapture(e.pointerId) && n.releasePointerCapture(e.pointerId), A.current = null, k.current = null, t) {
265
+ let n = e.currentTarget, r = {
266
+ originalEvent: e,
267
+ delta: t
268
+ };
269
+ me(t, y.swipeDirection, y.swipeThreshold) ? Z(oe, _, r, { discrete: !0 }) : Z(ae, h, r, { discrete: !0 }), n.addEventListener("click", (e) => e.preventDefault(), { once: !0 });
270
+ }
271
+ })
272
+ })
273
+ })
274
+ }), y.viewport)
275
+ })] }) : null;
276
+ }, "ToastImpl")), ue = /* @__PURE__ */ T((e) => {
277
+ let { __scopeToast: t, children: n, ...r } = e, i = P(W, t), [a, s] = S.useState(!1), [c, l] = S.useState(!1);
278
+ return he(() => s(!0)), S.useEffect(() => {
279
+ let e = window.setTimeout(() => l(!0), 1e3);
280
+ return () => window.clearTimeout(e);
281
+ }, []), c ? null : /* @__PURE__ */ (0, C.jsx)(y, {
282
+ asChild: !0,
283
+ container: i.announcerContainer || void 0,
284
+ children: /* @__PURE__ */ (0, C.jsx)(o, {
285
+ ...r,
286
+ children: a && /* @__PURE__ */ (0, C.jsxs)(C.Fragment, { children: [
287
+ i.label,
288
+ " ",
289
+ n
290
+ ] })
291
+ })
292
+ });
293
+ }, "ToastAnnounce"), K = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
294
+ let { __scopeToast: n, ...r } = e;
295
+ return /* @__PURE__ */ (0, C.jsx)(p.div, {
296
+ ...r,
297
+ ref: t
298
+ });
299
+ }, "ToastTitle")), q = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
300
+ let { __scopeToast: n, ...r } = e;
301
+ return /* @__PURE__ */ (0, C.jsx)(p.div, {
302
+ ...r,
303
+ ref: t
304
+ });
305
+ }, "ToastDescription")), de = "ToastAction", J = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
306
+ let { altText: n, ...r } = e;
307
+ return n.trim() ? /* @__PURE__ */ (0, C.jsx)(pe, {
308
+ altText: n,
309
+ asChild: !0,
310
+ children: /* @__PURE__ */ (0, C.jsx)(Y, {
311
+ ...r,
312
+ ref: t
313
+ })
314
+ }) : (console.error(`Invalid prop \`altText\` supplied to \`${de}\`. Expected non-empty \`string\`.`), null);
315
+ }, "ToastAction")), fe = "ToastClose", Y = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
316
+ let { __scopeToast: n, ...r } = e, i = ce(fe, n);
317
+ return /* @__PURE__ */ (0, C.jsx)(pe, {
318
+ asChild: !0,
319
+ children: /* @__PURE__ */ (0, C.jsx)(p.button, {
320
+ type: "button",
321
+ ...r,
322
+ ref: t,
323
+ onClick: g(e.onClick, i.onClose)
324
+ })
325
+ });
326
+ }, "ToastClose")), pe = /* @__PURE__ */ S.forwardRef(/* @__PURE__ */ T(function(e, t) {
327
+ let { __scopeToast: n, altText: r, ...i } = e;
328
+ return /* @__PURE__ */ (0, C.jsx)(p.div, {
329
+ "data-radix-toast-announce-exclude": "",
330
+ "data-radix-toast-announce-alt": r || void 0,
331
+ ...i,
332
+ ref: t
333
+ });
334
+ }, "ToastAnnounceExclude"));
335
+ function X(e) {
336
+ let t = [];
337
+ return Array.from(e.childNodes).forEach((e) => {
338
+ if (e.nodeType === e.TEXT_NODE && e.textContent && t.push(e.textContent), ge(e)) {
339
+ let n = e.ariaHidden || e.hidden || e.style.display === "none", r = e.dataset.radixToastAnnounceExclude === "";
340
+ if (!n) {
341
+ if (r) {
342
+ let n = e.dataset.radixToastAnnounceAlt;
343
+ n && t.push(n);
344
+ } else t.push(...X(e));
345
+ }
346
+ }
347
+ }), t;
348
+ }
349
+ T(X, "getAnnounceTextContent");
350
+ function Z(e, t, n, { discrete: r }) {
351
+ let i = n.originalEvent.currentTarget, a = new CustomEvent(e, {
352
+ bubbles: !0,
353
+ cancelable: !0,
354
+ detail: n
355
+ });
356
+ t && i.addEventListener(e, t, { once: !0 }), r ? m(i, a) : i.dispatchEvent(a);
357
+ }
358
+ T(Z, "handleAndDispatchCustomEvent");
359
+ var me = /* @__PURE__ */ T((e, t, n = 0) => {
360
+ let r = Math.abs(e.x), i = Math.abs(e.y), a = r > i;
361
+ return t === A.Left || t === A.Right ? a && r > n : !a && i > n;
362
+ }, "isDeltaInDirection");
363
+ function he(e = () => {}) {
364
+ let t = x(e);
365
+ v(() => {
366
+ let e = 0, n = 0;
367
+ return e = window.requestAnimationFrame(() => n = window.requestAnimationFrame(t)), () => {
368
+ window.cancelAnimationFrame(e), window.cancelAnimationFrame(n);
369
+ };
370
+ }, [t]);
371
+ }
372
+ T(he, "useNextFrame");
373
+ function ge(e) {
374
+ return e.nodeType === e.ELEMENT_NODE;
375
+ }
376
+ T(ge, "isHTMLElement");
377
+ function _e(e) {
378
+ let t = [], n = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, { acceptNode: /* @__PURE__ */ T((e) => {
379
+ let t = e.tagName === "INPUT" && e.type === "hidden";
380
+ return e.disabled || e.hidden || t ? NodeFilter.FILTER_SKIP : e.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
381
+ }, "acceptNode") });
382
+ for (; n.nextNode();) t.push(n.currentNode);
383
+ return t;
384
+ }
385
+ T(_e, "getTabbableCandidates");
386
+ function Q(e) {
387
+ let t = document.activeElement;
388
+ return e.some((e) => e === t || (e.focus(), document.activeElement !== t));
389
+ }
390
+ T(Q, "focusFirst");
391
+ //#endregion
392
+ //#region src/components/ui/toast.tsx
393
+ var $ = a(), ve = I, ye = S.forwardRef((e, n) => {
394
+ let r = (0, $.c)(9), i, a;
395
+ r[0] === e ? (i = r[1], a = r[2]) : ({className: i, ...a} = e, r[0] = e, r[1] = i, r[2] = a);
396
+ let o;
397
+ r[3] === i ? o = r[4] : (o = t("fixed top-0 z-100 flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:w-fit md:max-w-[420px]", "print:hidden", i), r[3] = i, r[4] = o);
398
+ let s;
399
+ return r[5] !== a || r[6] !== n || r[7] !== o ? (s = /* @__PURE__ */ (0, C.jsx)(V, {
400
+ ref: n,
401
+ className: o,
402
+ ...a
403
+ }), r[5] = a, r[6] = n, r[7] = o, r[8] = s) : s = r[8], s;
404
+ });
405
+ ye.displayName = V.displayName;
406
+ var be = {
407
+ default: "bg-background border forced-colors:border-[CanvasText] forced-colors:bg-[Canvas] forced-colors:text-[CanvasText]",
408
+ danger: "group destructive text-error border-destructive bg-(--red-1) shadow-md-solid shadow-error forced-colors:border-[CanvasText] forced-colors:bg-[Canvas] forced-colors:text-[CanvasText]"
409
+ }, xe = r("data-[swipe=move]:transition-none group relative pointer-events-auto flex w-full items-start justify-between gap-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=move]:translate-x-(--radix-toast-swipe-move-x) data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-(--radix-toast-swipe-end-x) data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=open]:slide-in-from-top-full sm:data-[state=open]:slide-in-from-bottom-full data-[state=closed]:slide-out-to-right-full forced-color-adjust-none", {
410
+ variants: { variant: be },
411
+ defaultVariants: { variant: "default" }
412
+ });
413
+ function Se(e) {
414
+ return typeof e == "string" && e in be;
415
+ }
416
+ var Ce = S.forwardRef((e, n) => {
417
+ let r = (0, $.c)(11), i, a, o;
418
+ r[0] === e ? (i = r[1], a = r[2], o = r[3]) : ({className: i, variant: o, ...a} = e, r[0] = e, r[1] = i, r[2] = a, r[3] = o);
419
+ let s = Se(o) ? o : "default", c;
420
+ r[4] !== i || r[5] !== s ? (c = t(xe({ variant: s }), "print:hidden", i), r[4] = i, r[5] = s, r[6] = c) : c = r[6];
421
+ let l;
422
+ return r[7] !== a || r[8] !== n || r[9] !== c ? (l = /* @__PURE__ */ (0, C.jsx)(G, {
423
+ ref: n,
424
+ className: c,
425
+ ...a
426
+ }), r[7] = a, r[8] = n, r[9] = c, r[10] = l) : l = r[10], l;
427
+ });
428
+ Ce.displayName = G.displayName;
429
+ var we = S.forwardRef((e, n) => {
430
+ let r = (0, $.c)(9), i, a;
431
+ r[0] === e ? (i = r[1], a = r[2]) : ({className: i, ...a} = e, r[0] = e, r[1] = i, r[2] = a);
432
+ let o;
433
+ r[3] === i ? o = r[4] : (o = t("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-destructive/30 hover:group-[.destructive]:border-destructive/30 hover:group-[.destructive]:bg-destructive hover:group-[.destructive]:text-destructive-foreground focus-visible:group-[.destructive]:ring-destructive", "forced-color-adjust-none forced-colors:border-[ButtonText] forced-colors:bg-[ButtonFace] forced-colors:text-[ButtonText] forced-colors:hover:bg-[Highlight] forced-colors:hover:text-[HighlightText] forced-colors:disabled:border-[GrayText] forced-colors:disabled:text-[GrayText]", i), r[3] = i, r[4] = o);
434
+ let s;
435
+ return r[5] !== a || r[6] !== n || r[7] !== o ? (s = /* @__PURE__ */ (0, C.jsx)(J, {
436
+ ref: n,
437
+ className: o,
438
+ ...a
439
+ }), r[5] = a, r[6] = n, r[7] = o, r[8] = s) : s = r[8], s;
440
+ });
441
+ we.displayName = J.displayName;
442
+ var Te = S.forwardRef((e, n) => {
443
+ let r = (0, $.c)(10), i, a;
444
+ r[0] === e ? (i = r[1], a = r[2]) : ({className: i, ...a} = e, r[0] = e, r[1] = i, r[2] = a);
445
+ let o;
446
+ r[3] === i ? o = r[4] : (o = t("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus-visible:outline-hidden focus-visible:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 hover:group-[.destructive]:text-red-500 focus-visible:group-[.destructive]:ring-red-400 focus-visible:group-[.destructive]:ring-offset-red-600", "forced-colors:text-[CanvasText] forced-colors:hover:text-[CanvasText] forced-colors:group-[.destructive]:text-[CanvasText] forced-colors:hover:group-[.destructive]:text-[CanvasText]", i), r[3] = i, r[4] = o);
447
+ let s;
448
+ r[5] === Symbol.for("react.memo_cache_sentinel") ? (s = /* @__PURE__ */ (0, C.jsx)(c, { className: "h-4 w-4" }), r[5] = s) : s = r[5];
449
+ let l;
450
+ return r[6] !== a || r[7] !== n || r[8] !== o ? (l = /* @__PURE__ */ (0, C.jsx)(Y, {
451
+ ref: n,
452
+ className: o,
453
+ "toast-close": "",
454
+ ...a,
455
+ children: s
456
+ }), r[6] = a, r[7] = n, r[8] = o, r[9] = l) : l = r[9], l;
457
+ });
458
+ Te.displayName = Y.displayName;
459
+ var Ee = S.forwardRef((e, n) => {
460
+ let r = (0, $.c)(9), i, a;
461
+ r[0] === e ? (i = r[1], a = r[2]) : ({className: i, ...a} = e, r[0] = e, r[1] = i, r[2] = a);
462
+ let o;
463
+ r[3] === i ? o = r[4] : (o = t("text-sm font-semibold", i), r[3] = i, r[4] = o);
464
+ let s;
465
+ return r[5] !== a || r[6] !== n || r[7] !== o ? (s = /* @__PURE__ */ (0, C.jsx)(K, {
466
+ ref: n,
467
+ className: o,
468
+ ...a
469
+ }), r[5] = a, r[6] = n, r[7] = o, r[8] = s) : s = r[8], s;
470
+ });
471
+ Ee.displayName = K.displayName;
472
+ var De = S.forwardRef((e, n) => {
473
+ let r = (0, $.c)(13), i, a, o;
474
+ r[0] === e ? (i = r[1], a = r[2], o = r[3]) : ({className: i, onPointerDown: a, ...o} = e, r[0] = e, r[1] = i, r[2] = a, r[3] = o);
475
+ let s;
476
+ r[4] === i ? s = r[5] : (s = t("max-h-48 overflow-auto text-sm opacity-90 whitespace-pre-wrap wrap-break-word select-text cursor-text", i), r[4] = i, r[5] = s);
477
+ let c;
478
+ r[6] === a ? c = r[7] : (c = (e) => {
479
+ e.stopPropagation(), a?.(e);
480
+ }, r[6] = a, r[7] = c);
481
+ let l;
482
+ return r[8] !== o || r[9] !== n || r[10] !== s || r[11] !== c ? (l = /* @__PURE__ */ (0, C.jsx)(q, {
483
+ ref: n,
484
+ className: s,
485
+ onPointerDown: c,
486
+ ...o
487
+ }), r[8] = o, r[9] = n, r[10] = s, r[11] = c, r[12] = l) : l = r[12], l;
488
+ });
489
+ De.displayName = q.displayName;
490
+ //#endregion
491
+ export { ve as a, De as i, we as n, Ee as o, Te as r, ye as s, Ce as t };