ics-ui-kit 0.1.0-alpha.12 → 0.1.0-alpha.13

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 (227) hide show
  1. package/dist/Button-DQtBfU9y.js +57 -0
  2. package/dist/Button-DQtBfU9y.js.map +1 -0
  3. package/dist/{Button-DhfE69q0.js → ButtonBase-BEM8SNmT.js} +27 -56
  4. package/dist/ButtonBase-BEM8SNmT.js.map +1 -0
  5. package/dist/CarouselItem-pSHe0ufN.js +1500 -0
  6. package/dist/CarouselItem-pSHe0ufN.js.map +1 -0
  7. package/dist/CheckboxField-i_-dPpFM.js +370 -0
  8. package/dist/CheckboxField-i_-dPpFM.js.map +1 -0
  9. package/dist/Divider-C0Ss5GJT.js +47 -0
  10. package/dist/{Divider-D3NvaU8c.js.map → Divider-C0Ss5GJT.js.map} +1 -1
  11. package/dist/Field-3XJNFTql.js +78 -0
  12. package/dist/Field-3XJNFTql.js.map +1 -0
  13. package/dist/FieldLabel-CAbVan3E.js +97 -0
  14. package/dist/FieldLabel-CAbVan3E.js.map +1 -0
  15. package/dist/FormBody-4HptEjhb.js +103 -0
  16. package/dist/FormBody-4HptEjhb.js.map +1 -0
  17. package/dist/{IconButton-BUPs2kEo.js → IconButton-BkBsOIf5.js} +15 -15
  18. package/dist/{IconButton-BUPs2kEo.js.map → IconButton-BkBsOIf5.js.map} +1 -1
  19. package/dist/ImagePlaceholder-CNAKQWTh.js +45 -0
  20. package/dist/ImagePlaceholder-CNAKQWTh.js.map +1 -0
  21. package/dist/ImagePreview-DHi7A8md.js +156 -0
  22. package/dist/ImagePreview-DHi7A8md.js.map +1 -0
  23. package/dist/ImageUploader-46sxdmt5.js +123 -0
  24. package/dist/ImageUploader-46sxdmt5.js.map +1 -0
  25. package/dist/IsolatedStylesWrapper-WgaoHh7y.js +179 -0
  26. package/dist/IsolatedStylesWrapper-WgaoHh7y.js.map +1 -0
  27. package/dist/Modal-D33MSQot.js +125 -0
  28. package/dist/Modal-D33MSQot.js.map +1 -0
  29. package/dist/ScrollShadowContainer-ByNH68Kg.js +636 -0
  30. package/dist/ScrollShadowContainer-ByNH68Kg.js.map +1 -0
  31. package/dist/Toggle-7AlEmn8A.js +104 -0
  32. package/dist/Toggle-7AlEmn8A.js.map +1 -0
  33. package/dist/ToggleGroup-CT453MNp.js +200 -0
  34. package/dist/ToggleGroup-CT453MNp.js.map +1 -0
  35. package/dist/Tooltip-C4BbGF2_.js +372 -0
  36. package/dist/Tooltip-C4BbGF2_.js.map +1 -0
  37. package/dist/{bundle-mjs-D6wdQkGI.js → bundle-mjs-LhQum_e3.js} +676 -425
  38. package/dist/bundle-mjs-LhQum_e3.js.map +1 -0
  39. package/dist/check-C-TqZgvb.js.map +1 -1
  40. package/dist/chevron-right-CobOebzi.js.map +1 -1
  41. package/dist/components/badge.js +1 -1
  42. package/dist/components/button/icon-button/IconButton.stories.d.ts +330 -2
  43. package/dist/components/button/loading-button/LoadingButton.d.ts +249 -0
  44. package/dist/components/button/loading-button/LoadingButton.stories.d.ts +219 -0
  45. package/dist/components/button.js +6 -5
  46. package/dist/components/button.js.map +1 -1
  47. package/dist/components/carousel.js +65 -1532
  48. package/dist/components/carousel.js.map +1 -1
  49. package/dist/components/checkbox.js +1 -1
  50. package/dist/components/divider/content-divider/ContentDivider.d.ts +14 -0
  51. package/dist/components/divider/content-divider/ContentDivider.stories.d.ts +7 -0
  52. package/dist/components/divider/index.d.ts +1 -0
  53. package/dist/components/divider.js +45 -2
  54. package/dist/components/divider.js.map +1 -1
  55. package/dist/components/drawer/templates/drawer-footer-template/DrawerFooterTemplate.d.ts +3 -0
  56. package/dist/components/drawer.js +450 -447
  57. package/dist/components/drawer.js.map +1 -1
  58. package/dist/components/dropdown.js +37 -33
  59. package/dist/components/dropdown.js.map +1 -1
  60. package/dist/components/empty-state/EmptyState.d.ts +2 -2
  61. package/dist/components/empty-state.js +1 -1
  62. package/dist/components/empty-state.js.map +1 -1
  63. package/dist/components/field/Field.d.ts +35 -0
  64. package/dist/components/field.js +1 -1
  65. package/dist/components/form/components/form-header/FormHeader.d.ts +2 -2
  66. package/dist/components/form.js +289 -288
  67. package/dist/components/form.js.map +1 -1
  68. package/dist/components/gallery/Gallery.d.ts +21 -0
  69. package/dist/components/gallery/Gallery.stories.d.ts +26 -0
  70. package/dist/components/gallery/index.d.ts +1 -0
  71. package/dist/components/gallery.d.ts +2 -0
  72. package/dist/components/gallery.js +130 -0
  73. package/dist/components/gallery.js.map +1 -0
  74. package/dist/components/icon-tooltip/IconTooltip.d.ts +2 -1
  75. package/dist/components/image-placeholder.js +2 -42
  76. package/dist/components/image-placeholder.js.map +1 -1
  77. package/dist/components/image-preview/ImagePreview.d.ts +6 -6
  78. package/dist/components/image-preview.js +2 -136
  79. package/dist/components/image-preview.js.map +1 -1
  80. package/dist/components/image-uploader.js +2 -118
  81. package/dist/components/image-uploader.js.map +1 -1
  82. package/dist/components/input/file-input/FileInput.d.ts +3 -1
  83. package/dist/components/input-otp.js +1 -1
  84. package/dist/components/input-otp.js.map +1 -1
  85. package/dist/components/input.js +176 -195
  86. package/dist/components/input.js.map +1 -1
  87. package/dist/components/isolated-styles-wrapper/IsolatedStylesWrapper.d.ts +1 -1
  88. package/dist/components/label/Label.stories.d.ts +0 -2
  89. package/dist/components/label/field-label/FieldLabel.d.ts +11 -0
  90. package/dist/components/label/field-label/FieldLabel.stories.d.ts +1 -0
  91. package/dist/components/label/field-label/components/RequiredIcon.d.ts +5 -0
  92. package/dist/components/label.js +1 -1
  93. package/dist/components/loading/Loading.d.ts +4 -4
  94. package/dist/components/loading.js +2 -2
  95. package/dist/components/loading.js.map +1 -1
  96. package/dist/components/modal.js +12 -122
  97. package/dist/components/modal.js.map +1 -1
  98. package/dist/components/option-group.js +1 -1
  99. package/dist/components/popover.js +34 -31
  100. package/dist/components/popover.js.map +1 -1
  101. package/dist/components/scheduler.js +11 -11
  102. package/dist/components/scheduler.js.map +1 -1
  103. package/dist/components/scroll-shadow-container/ScrollShadowContainer.d.ts +1 -0
  104. package/dist/components/scroll-shadow-container.js +1 -1
  105. package/dist/components/select.js +487 -519
  106. package/dist/components/select.js.map +1 -1
  107. package/dist/components/shortcut/Shortcut.d.ts +14 -14
  108. package/dist/components/shortcut/Shortcut.stories.d.ts +7 -7
  109. package/dist/components/shortcut.js +16 -16
  110. package/dist/components/shortcut.js.map +1 -1
  111. package/dist/components/skeleton/Skeleton.d.ts +1 -0
  112. package/dist/components/skeleton/Skeleton.stories.d.ts +7 -0
  113. package/dist/components/skeleton/index.d.ts +1 -0
  114. package/dist/components/skeleton.d.ts +2 -0
  115. package/dist/components/skeleton.js +33 -0
  116. package/dist/components/skeleton.js.map +1 -0
  117. package/dist/components/switch.js +147 -126
  118. package/dist/components/switch.js.map +1 -1
  119. package/dist/components/tabs.js +9 -8
  120. package/dist/components/tabs.js.map +1 -1
  121. package/dist/components/tag.js +3 -3
  122. package/dist/components/toast.js +4 -4
  123. package/dist/components/toast.js.map +1 -1
  124. package/dist/components/toggle-group.js +1 -1
  125. package/dist/components/toggle.js +1 -1
  126. package/dist/components/tooltip/Tooltip.stories.d.ts +7 -0
  127. package/dist/components/tooltip/index.d.ts +1 -0
  128. package/dist/components/tooltip.d.ts +2 -0
  129. package/dist/components/tooltip.js +8 -0
  130. package/dist/components/tooltip.js.map +1 -0
  131. package/dist/createLucideIcon-DgrNxRV5.js.map +1 -1
  132. package/dist/design-tokens.source.json +1 -1
  133. package/dist/download-CVOGyQ0e.js.map +1 -1
  134. package/dist/downloadFile-yZV-aaO2.js +15 -0
  135. package/dist/downloadFile-yZV-aaO2.js.map +1 -0
  136. package/dist/index-B6K06mzp.js +67 -0
  137. package/dist/index-B6K06mzp.js.map +1 -0
  138. package/dist/index-BCZIl2rL.js +68 -0
  139. package/dist/index-BCZIl2rL.js.map +1 -0
  140. package/dist/index-BZPx6jYI.js.map +1 -1
  141. package/dist/index-Bj6ZBhqh.js +105 -0
  142. package/dist/index-Bj6ZBhqh.js.map +1 -0
  143. package/dist/index-ByaXH_ih.js.map +1 -1
  144. package/dist/index-CACw01gt.js +702 -0
  145. package/dist/index-CACw01gt.js.map +1 -0
  146. package/dist/index-COBL2CQB.js +14 -0
  147. package/dist/index-COBL2CQB.js.map +1 -0
  148. package/dist/index-CR-odn5-.js.map +1 -1
  149. package/dist/{index-BjbwEU_d.js → index-ClwWa5fz.js} +20 -20
  150. package/dist/index-ClwWa5fz.js.map +1 -0
  151. package/dist/{index-DwbC6luJ.js → index-Cx4x7Bv2.js} +52 -50
  152. package/dist/index-Cx4x7Bv2.js.map +1 -0
  153. package/dist/index-CzNelU6n.js +55 -0
  154. package/dist/index-CzNelU6n.js.map +1 -0
  155. package/dist/index-DBsc8nMF.js +43 -0
  156. package/dist/index-DBsc8nMF.js.map +1 -0
  157. package/dist/index-Mbnk_gHS.js +102 -0
  158. package/dist/index-Mbnk_gHS.js.map +1 -0
  159. package/dist/index-bhXb51Q1.js +215 -0
  160. package/dist/index-bhXb51Q1.js.map +1 -0
  161. package/dist/index-n71RB2rx.js +1592 -0
  162. package/dist/index-n71RB2rx.js.map +1 -0
  163. package/dist/index-rKs9bXHr.js +7 -0
  164. package/dist/index-rKs9bXHr.js.map +1 -0
  165. package/dist/lib/utils/file/downloadFile.d.ts +2 -0
  166. package/dist/lib/utils/image/imageConverter.d.ts +23 -0
  167. package/dist/styles-scoped.css +72 -18
  168. package/dist/styles.css +72 -18
  169. package/dist/{utils-DGzAmwok.js → utils-BK4mPzkB.js} +2 -2
  170. package/dist/utils-BK4mPzkB.js.map +1 -0
  171. package/dist/x-JgjNP5oH.js.map +1 -1
  172. package/package.json +1 -1
  173. package/dist/Button-DhfE69q0.js.map +0 -1
  174. package/dist/CheckboxField-CL1Tc7P4.js +0 -257
  175. package/dist/CheckboxField-CL1Tc7P4.js.map +0 -1
  176. package/dist/Divider-D3NvaU8c.js +0 -46
  177. package/dist/Field-COOo8o9f.js +0 -80
  178. package/dist/Field-COOo8o9f.js.map +0 -1
  179. package/dist/FieldLabel-BGxT_RaE.js +0 -64
  180. package/dist/FieldLabel-BGxT_RaE.js.map +0 -1
  181. package/dist/FormBody-DM52shm4.js +0 -101
  182. package/dist/FormBody-DM52shm4.js.map +0 -1
  183. package/dist/IsolatedStylesWrapper-B_Qu75eR.js +0 -555
  184. package/dist/IsolatedStylesWrapper-B_Qu75eR.js.map +0 -1
  185. package/dist/ScrollShadowContainer-DSKr3_fV.js +0 -690
  186. package/dist/ScrollShadowContainer-DSKr3_fV.js.map +0 -1
  187. package/dist/Toggle-BuYtICWv.js +0 -129
  188. package/dist/Toggle-BuYtICWv.js.map +0 -1
  189. package/dist/ToggleGroup-CMyUAz04.js +0 -467
  190. package/dist/ToggleGroup-CMyUAz04.js.map +0 -1
  191. package/dist/bundle-mjs-D6wdQkGI.js.map +0 -1
  192. package/dist/floating-ui.react-dom-CWfR7VfF.js +0 -1346
  193. package/dist/floating-ui.react-dom-CWfR7VfF.js.map +0 -1
  194. package/dist/index-0WznJ1QS.js +0 -276
  195. package/dist/index-0WznJ1QS.js.map +0 -1
  196. package/dist/index-BjbwEU_d.js.map +0 -1
  197. package/dist/index-BqriTm0o.js +0 -47
  198. package/dist/index-BqriTm0o.js.map +0 -1
  199. package/dist/index-C6bvrqL8.js +0 -563
  200. package/dist/index-C6bvrqL8.js.map +0 -1
  201. package/dist/index-C6t9z3on.js +0 -97
  202. package/dist/index-C6t9z3on.js.map +0 -1
  203. package/dist/index-CaQG3DzJ.js +0 -64
  204. package/dist/index-CaQG3DzJ.js.map +0 -1
  205. package/dist/index-ChTGHCkY.js +0 -255
  206. package/dist/index-ChTGHCkY.js.map +0 -1
  207. package/dist/index-D808y1pT.js +0 -178
  208. package/dist/index-D808y1pT.js.map +0 -1
  209. package/dist/index-DE3fiSzl.js +0 -28
  210. package/dist/index-DE3fiSzl.js.map +0 -1
  211. package/dist/index-DPws5oAn.js +0 -90
  212. package/dist/index-DPws5oAn.js.map +0 -1
  213. package/dist/index-DeUgDpdG.js +0 -80
  214. package/dist/index-DeUgDpdG.js.map +0 -1
  215. package/dist/index-DvquTpxI.js +0 -140
  216. package/dist/index-DvquTpxI.js.map +0 -1
  217. package/dist/index-DwbC6luJ.js.map +0 -1
  218. package/dist/index-Ncxt32Wo.js +0 -174
  219. package/dist/index-Ncxt32Wo.js.map +0 -1
  220. package/dist/index-U7y6nBZR.js +0 -179
  221. package/dist/index-U7y6nBZR.js.map +0 -1
  222. package/dist/index-pysSAa5G.js +0 -57
  223. package/dist/index-pysSAa5G.js.map +0 -1
  224. package/dist/tooltip-DI3_ZKNk.js +0 -365
  225. package/dist/tooltip-DI3_ZKNk.js.map +0 -1
  226. package/dist/utils-DGzAmwok.js.map +0 -1
  227. /package/dist/components/{ui/tooltip.d.ts → tooltip/Tooltip.d.ts} +0 -0
@@ -0,0 +1,215 @@
1
+ var Z = Object.defineProperty, $ = Object.defineProperties;
2
+ var ee = Object.getOwnPropertyDescriptors;
3
+ var h = Object.getOwnPropertySymbols;
4
+ var L = Object.prototype.hasOwnProperty, U = Object.prototype.propertyIsEnumerable;
5
+ var k = (e, o, t) => o in e ? Z(e, o, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[o] = t, F = (e, o) => {
6
+ for (var t in o || (o = {}))
7
+ L.call(o, t) && k(e, t, o[t]);
8
+ if (h)
9
+ for (var t of h(o))
10
+ U.call(o, t) && k(e, t, o[t]);
11
+ return e;
12
+ }, A = (e, o) => $(e, ee(o));
13
+ var x = (e, o) => {
14
+ var t = {};
15
+ for (var r in e)
16
+ L.call(e, r) && o.indexOf(r) < 0 && (t[r] = e[r]);
17
+ if (e != null && h)
18
+ for (var r of h(e))
19
+ o.indexOf(r) < 0 && U.call(e, r) && (t[r] = e[r]);
20
+ return t;
21
+ };
22
+ import * as c from "react";
23
+ import { P as B, c as p } from "./index-B6K06mzp.js";
24
+ import { c as oe } from "./index-BCZIl2rL.js";
25
+ import { u as te } from "./index-Bj6ZBhqh.js";
26
+ import { c as re, u as ne } from "./index-Mbnk_gHS.js";
27
+ import { u as se } from "./index-COBL2CQB.js";
28
+ import { u as ce } from "./index-CzNelU6n.js";
29
+ import { u as ae } from "./index-ByaXH_ih.js";
30
+ import { jsx as d } from "react/jsx-runtime";
31
+ var G = "rovingFocusGroup.onEntryFocus", ue = { bubbles: !1, cancelable: !0 }, g = "RovingFocusGroup", [N, Y, ie] = oe(g), [le, _e] = re(
32
+ g,
33
+ [ie]
34
+ ), [fe, de] = le(g), H = c.forwardRef(
35
+ (e, o) => /* @__PURE__ */ d(N.Provider, { scope: e.__scopeRovingFocusGroup, children: /* @__PURE__ */ d(N.Slot, { scope: e.__scopeRovingFocusGroup, children: /* @__PURE__ */ d(me, A(F({}, e), { ref: o })) }) })
36
+ );
37
+ H.displayName = g;
38
+ var me = c.forwardRef((e, o) => {
39
+ const K = e, {
40
+ __scopeRovingFocusGroup: t,
41
+ orientation: r,
42
+ loop: _ = !1,
43
+ dir: y,
44
+ currentTabStopId: v,
45
+ defaultCurrentTabStopId: I,
46
+ onCurrentTabStopIdChange: P,
47
+ onEntryFocus: m,
48
+ preventScrollOnEntryFocus: a = !1
49
+ } = K, R = x(K, [
50
+ "__scopeRovingFocusGroup",
51
+ "orientation",
52
+ "loop",
53
+ "dir",
54
+ "currentTabStopId",
55
+ "defaultCurrentTabStopId",
56
+ "onCurrentTabStopIdChange",
57
+ "onEntryFocus",
58
+ "preventScrollOnEntryFocus"
59
+ ]), E = c.useRef(null), w = te(o, E), T = ae(y), [C, b] = ce({
60
+ prop: v,
61
+ defaultProp: I != null ? I : null,
62
+ onChange: P,
63
+ caller: g
64
+ }), [n, l] = c.useState(!1), S = ne(m), i = Y(t), u = c.useRef(!1), [q, O] = c.useState(0);
65
+ return c.useEffect(() => {
66
+ const s = E.current;
67
+ if (s)
68
+ return s.addEventListener(G, S), () => s.removeEventListener(G, S);
69
+ }, [S]), /* @__PURE__ */ d(
70
+ fe,
71
+ {
72
+ scope: t,
73
+ orientation: r,
74
+ dir: T,
75
+ loop: _,
76
+ currentTabStopId: C,
77
+ onItemFocus: c.useCallback(
78
+ (s) => b(s),
79
+ [b]
80
+ ),
81
+ onItemShiftTab: c.useCallback(() => l(!0), []),
82
+ onFocusableItemAdd: c.useCallback(
83
+ () => O((s) => s + 1),
84
+ []
85
+ ),
86
+ onFocusableItemRemove: c.useCallback(
87
+ () => O((s) => s - 1),
88
+ []
89
+ ),
90
+ children: /* @__PURE__ */ d(
91
+ B.div,
92
+ A(F({
93
+ tabIndex: n || q === 0 ? -1 : 0,
94
+ "data-orientation": r
95
+ }, R), {
96
+ ref: w,
97
+ style: F({ outline: "none" }, e.style),
98
+ onMouseDown: p(e.onMouseDown, () => {
99
+ u.current = !0;
100
+ }),
101
+ onFocus: p(e.onFocus, (s) => {
102
+ const J = !u.current;
103
+ if (s.target === s.currentTarget && J && !n) {
104
+ const M = new CustomEvent(G, ue);
105
+ if (s.currentTarget.dispatchEvent(M), !M.defaultPrevented) {
106
+ const D = i().filter((f) => f.focusable), Q = D.find((f) => f.active), W = D.find((f) => f.id === C), X = [Q, W, ...D].filter(
107
+ Boolean
108
+ ).map((f) => f.ref.current);
109
+ z(X, a);
110
+ }
111
+ }
112
+ u.current = !1;
113
+ }),
114
+ onBlur: p(e.onBlur, () => l(!1))
115
+ })
116
+ )
117
+ }
118
+ );
119
+ }), V = "RovingFocusGroupItem", j = c.forwardRef(
120
+ (e, o) => {
121
+ const b = e, {
122
+ __scopeRovingFocusGroup: t,
123
+ focusable: r = !0,
124
+ active: _ = !1,
125
+ tabStopId: y,
126
+ children: v
127
+ } = b, I = x(b, [
128
+ "__scopeRovingFocusGroup",
129
+ "focusable",
130
+ "active",
131
+ "tabStopId",
132
+ "children"
133
+ ]), P = se(), m = y || P, a = de(V, t), R = a.currentTabStopId === m, E = Y(t), { onFocusableItemAdd: w, onFocusableItemRemove: T, currentTabStopId: C } = a;
134
+ return c.useEffect(() => {
135
+ if (r)
136
+ return w(), () => T();
137
+ }, [r, w, T]), /* @__PURE__ */ d(
138
+ N.ItemSlot,
139
+ {
140
+ scope: t,
141
+ id: m,
142
+ focusable: r,
143
+ active: _,
144
+ children: /* @__PURE__ */ d(
145
+ B.span,
146
+ A(F({
147
+ tabIndex: R ? 0 : -1,
148
+ "data-orientation": a.orientation
149
+ }, I), {
150
+ ref: o,
151
+ onMouseDown: p(e.onMouseDown, (n) => {
152
+ r ? a.onItemFocus(m) : n.preventDefault();
153
+ }),
154
+ onFocus: p(e.onFocus, () => a.onItemFocus(m)),
155
+ onKeyDown: p(e.onKeyDown, (n) => {
156
+ if (n.key === "Tab" && n.shiftKey) {
157
+ a.onItemShiftTab();
158
+ return;
159
+ }
160
+ if (n.target !== n.currentTarget) return;
161
+ const l = Ie(n, a.orientation, a.dir);
162
+ if (l !== void 0) {
163
+ if (n.metaKey || n.ctrlKey || n.altKey || n.shiftKey) return;
164
+ n.preventDefault();
165
+ let i = E().filter((u) => u.focusable).map((u) => u.ref.current);
166
+ if (l === "last") i.reverse();
167
+ else if (l === "prev" || l === "next") {
168
+ l === "prev" && i.reverse();
169
+ const u = i.indexOf(n.currentTarget);
170
+ i = a.loop ? be(i, u + 1) : i.slice(u + 1);
171
+ }
172
+ setTimeout(() => z(i));
173
+ }
174
+ }),
175
+ children: typeof v == "function" ? v({ isCurrentTabStop: R, hasTabStop: C != null }) : v
176
+ })
177
+ )
178
+ }
179
+ );
180
+ }
181
+ );
182
+ j.displayName = V;
183
+ var pe = {
184
+ ArrowLeft: "prev",
185
+ ArrowUp: "prev",
186
+ ArrowRight: "next",
187
+ ArrowDown: "next",
188
+ PageUp: "first",
189
+ Home: "first",
190
+ PageDown: "last",
191
+ End: "last"
192
+ };
193
+ function ve(e, o) {
194
+ return o !== "rtl" ? e : e === "ArrowLeft" ? "ArrowRight" : e === "ArrowRight" ? "ArrowLeft" : e;
195
+ }
196
+ function Ie(e, o, t) {
197
+ const r = ve(e.key, t);
198
+ if (!(o === "vertical" && ["ArrowLeft", "ArrowRight"].includes(r)) && !(o === "horizontal" && ["ArrowUp", "ArrowDown"].includes(r)))
199
+ return pe[r];
200
+ }
201
+ function z(e, o = !1) {
202
+ const t = document.activeElement;
203
+ for (const r of e)
204
+ if (r === t || (r.focus({ preventScroll: o }), document.activeElement !== t)) return;
205
+ }
206
+ function be(e, o) {
207
+ return e.map((t, r) => e[(o + r) % e.length]);
208
+ }
209
+ var ye = H, Pe = j;
210
+ export {
211
+ Pe as I,
212
+ ye as R,
213
+ _e as c
214
+ };
215
+ //# sourceMappingURL=index-bhXb51Q1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-bhXb51Q1.js","sources":["../node_modules/@radix-ui/react-roving-focus/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId ?? null,\n onChange: onCurrentTabStopIdChange,\n caller: GROUP_NAME\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n children,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove, currentTabStopId } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n }),\n children: typeof children === \"function\" ? children({ isCurrentTabStop, hasTabStop: currentTabStopId != null }) : children\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["ENTRY_FOCUS","EVENT_OPTIONS","GROUP_NAME","Collection","useCollection","createCollectionScope","createCollection","createRovingFocusGroupContext","createRovingFocusGroupScope","createContextScope","RovingFocusProvider","useRovingFocusContext","RovingFocusGroup","React","props","forwardedRef","jsx","RovingFocusGroupImpl","__spreadProps","__spreadValues","_a","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","preventScrollOnEntryFocus","groupProps","__objRest","ref","composedRefs","useComposedRefs","direction","useDirection","currentTabStopId","setCurrentTabStopId","useControllableState","isTabbingBackOut","setIsTabbingBackOut","handleEntryFocus","useCallbackRef","getItems","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","node","tabStopId","prevCount","Primitive","composeEventHandlers","event","isKeyboardFocus","entryFocusEvent","items","item","activeItem","currentItem","candidateNodes","focusFirst","ITEM_NAME","RovingFocusGroupItem","focusable","active","children","itemProps","autoId","useId","id","context","isCurrentTabStop","onFocusableItemAdd","onFocusableItemRemove","focusIntent","getFocusIntent","currentIndex","wrapArray","MAP_KEY_TO_FOCUS_INTENT","getDirectionAwareKey","key","candidates","preventScroll","PREVIOUSLY_FOCUSED_ELEMENT","candidate","array","startIndex","_","index","Root","Item"],"mappings":"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","x_google_ignoreList":[0]}