@midas-ds/components 1.0.2

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 (243) hide show
  1. package/Breadcrumbs.css +1 -0
  2. package/Button-CCevm2s3.js +183 -0
  3. package/Button.css +1 -0
  4. package/ButtonGroup.css +1 -0
  5. package/CHANGELOG.md +76 -0
  6. package/Card.css +1 -0
  7. package/Checkbox-CllWDBxF.js +405 -0
  8. package/Checkbox.css +1 -0
  9. package/Collection-B3xUVWPF.js +483 -0
  10. package/ComboBox.css +1 -0
  11. package/DatePicker.css +1 -0
  12. package/Dialog-CLTyYwkS.js +1889 -0
  13. package/DragAndDrop-OTN7La7U.js +42 -0
  14. package/Dropdown.css +1 -0
  15. package/FileUpload.css +1 -0
  16. package/Flex.css +1 -0
  17. package/Flex.module-CpoxBzQX.js +37 -0
  18. package/FocusScope-BR0SJ-cZ.js +512 -0
  19. package/Form-DXLoQL91.js +240 -0
  20. package/Grid.css +1 -0
  21. package/Grid.module-Ia0e9Dix.js +36 -0
  22. package/Group-DPMuN3h8.js +44 -0
  23. package/Hidden-BQWDvze4.js +37 -0
  24. package/InfoBanner.css +1 -0
  25. package/Label-C18A_4Z5.js +69 -0
  26. package/Layout.css +1 -0
  27. package/Link-BU1h3K2a.js +77 -0
  28. package/Link.css +1 -0
  29. package/LinkButton.css +1 -0
  30. package/ListBox-D21tdwTs.js +463 -0
  31. package/ListKeyboardDelegate-DxMjfMsI.js +172 -0
  32. package/Logo.css +1 -0
  33. package/Modal.css +1 -0
  34. package/MultiSelect.css +1 -0
  35. package/PressResponder-DP8ZDNGy.js +31 -0
  36. package/README.md +7 -0
  37. package/RSPContexts-EOiWkKOf.js +11 -0
  38. package/Radio.css +1 -0
  39. package/SearchField.css +1 -0
  40. package/Select.css +1 -0
  41. package/SelectionManager-D4WtKtey.js +988 -0
  42. package/Separator-DLUHK9vv.js +48 -0
  43. package/Spinner.css +1 -0
  44. package/Table.css +1 -0
  45. package/Tabs.css +1 -0
  46. package/Tag-CEd6WWSc.js +725 -0
  47. package/Tag.css +1 -0
  48. package/Text-DGLaY3HR.js +17 -0
  49. package/TextArea.css +1 -0
  50. package/TextField-C_hq9WeT.js +226 -0
  51. package/TextField.css +1 -0
  52. package/TextField.module-Cwq1FAm7.js +141 -0
  53. package/Toast.css +1 -0
  54. package/VisuallyHidden-B_XzVvlX.js +39 -0
  55. package/accordion/Accordion.d.ts +13 -0
  56. package/accordion/AccordionContent.d.ts +3 -0
  57. package/accordion/AccordionItem.d.ts +3 -0
  58. package/accordion/AccordionTagContext.d.ts +3 -0
  59. package/accordion/AccordionTrigger.d.ts +3 -0
  60. package/accordion/index.d.ts +5 -0
  61. package/breadcrumbs/Breadcrumbs.d.ts +9 -0
  62. package/breadcrumbs/index.d.ts +1 -0
  63. package/button/Button.d.ts +41 -0
  64. package/button/ButtonGroup.d.ts +12 -0
  65. package/button/index.d.ts +2 -0
  66. package/card/Card.d.ts +34 -0
  67. package/card/index.d.ts +1 -0
  68. package/checkbox/Checkbox.d.ts +2 -0
  69. package/checkbox/CheckboxGroup.d.ts +10 -0
  70. package/checkbox/index.d.ts +2 -0
  71. package/chevron-down-Cd1bkzXT.js +13 -0
  72. package/chevron-right-DBMc9VMi.js +23 -0
  73. package/clsx-OuTLNxxd.js +16 -0
  74. package/combobox/ComboBox.d.ts +12 -0
  75. package/combobox/index.d.ts +1 -0
  76. package/context-ScOIq_Gu.js +80 -0
  77. package/createLucideIcon-DeWljiyi.js +79 -0
  78. package/date-picker/DatePicker.d.ts +14 -0
  79. package/date-picker/index.d.ts +2 -0
  80. package/dropdown/Dropdown.d.ts +8 -0
  81. package/dropdown/index.d.ts +1 -0
  82. package/file-upload/FileUpload.d.ts +11 -0
  83. package/file-upload/index.d.ts +1 -0
  84. package/flex/Flex.d.ts +17 -0
  85. package/flex/FlexItem.d.ts +15 -0
  86. package/flex/index.d.ts +2 -0
  87. package/grid/Grid.d.ts +16 -0
  88. package/grid/GridItem.d.ts +7 -0
  89. package/grid/index.d.ts +2 -0
  90. package/index-CEg5vZQH.js +132 -0
  91. package/index-CgfokhRq.js +674 -0
  92. package/index-CorR1LBD.js +3122 -0
  93. package/index-Dl1Q-tbj.js +26984 -0
  94. package/index.css +1 -0
  95. package/index.d.ts +29 -0
  96. package/index.js +114 -0
  97. package/index10.js +4 -0
  98. package/index11.js +5 -0
  99. package/index12.js +4 -0
  100. package/index13.js +4 -0
  101. package/index14.js +4 -0
  102. package/index15.js +6 -0
  103. package/index16.js +6 -0
  104. package/index17.js +6 -0
  105. package/index18.js +4 -0
  106. package/index19.js +6 -0
  107. package/index2.js +8 -0
  108. package/index20.js +6 -0
  109. package/index21.js +4 -0
  110. package/index22.js +5 -0
  111. package/index23.js +5 -0
  112. package/index24.js +5 -0
  113. package/index25.js +6 -0
  114. package/index26.js +6 -0
  115. package/index27.js +6 -0
  116. package/index28.js +4 -0
  117. package/index29.js +12 -0
  118. package/index3.js +8 -0
  119. package/index30.js +20 -0
  120. package/index31.js +22 -0
  121. package/index32.js +14 -0
  122. package/index33.js +11 -0
  123. package/index34.js +31 -0
  124. package/index35.js +8 -0
  125. package/index36.js +9 -0
  126. package/index37.js +19 -0
  127. package/index38.js +9 -0
  128. package/index39.js +9 -0
  129. package/index4.js +4 -0
  130. package/index40.js +16 -0
  131. package/index41.js +16 -0
  132. package/index42.js +31 -0
  133. package/index43.js +16 -0
  134. package/index44.js +6 -0
  135. package/index45.js +53 -0
  136. package/index46.js +18 -0
  137. package/index47.js +27 -0
  138. package/index48.js +18 -0
  139. package/index49.js +21 -0
  140. package/index5.js +5 -0
  141. package/index50.js +49 -0
  142. package/index51.js +5 -0
  143. package/index52.js +25 -0
  144. package/index53.js +18 -0
  145. package/index54.js +9 -0
  146. package/index55.js +25 -0
  147. package/index56.js +18 -0
  148. package/index57.js +11 -0
  149. package/index58.js +12 -0
  150. package/index59.js +15 -0
  151. package/index6.js +4 -0
  152. package/index60.js +9 -0
  153. package/index61.js +9 -0
  154. package/index62.js +19 -0
  155. package/index63.js +22 -0
  156. package/index64.js +61 -0
  157. package/index65.js +15 -0
  158. package/index66.js +11 -0
  159. package/index67.js +63 -0
  160. package/index68.js +85 -0
  161. package/index69.js +74 -0
  162. package/index7.js +9 -0
  163. package/index70.js +24 -0
  164. package/index71.js +69 -0
  165. package/index72.js +80 -0
  166. package/index73.js +140 -0
  167. package/index74.js +70 -0
  168. package/index75.js +42 -0
  169. package/index76.js +82 -0
  170. package/index77.js +71 -0
  171. package/index78.js +104 -0
  172. package/index79.js +274 -0
  173. package/index8.js +4 -0
  174. package/index80.js +724 -0
  175. package/index81.js +491 -0
  176. package/index82.js +317 -0
  177. package/index83.js +391 -0
  178. package/index84.js +254 -0
  179. package/index85.js +1364 -0
  180. package/index86.js +1009 -0
  181. package/index87.js +388 -0
  182. package/index88.js +2105 -0
  183. package/index89.js +2371 -0
  184. package/index9.js +5 -0
  185. package/index90.js +6834 -0
  186. package/index91.js +17 -0
  187. package/index92.js +14 -0
  188. package/index93.js +6 -0
  189. package/index94.js +9 -0
  190. package/info-banner/InfoBanner.d.ts +21 -0
  191. package/info-banner/index.d.ts +1 -0
  192. package/intlStrings-Cd44R5hT.js +278 -0
  193. package/layout/Layout.d.ts +51 -0
  194. package/layout/index.d.ts +1 -0
  195. package/link/Link.d.ts +13 -0
  196. package/link/index.d.ts +1 -0
  197. package/link-button/LinkButton.d.ts +18 -0
  198. package/link-button/index.d.ts +1 -0
  199. package/logo/Logo.d.ts +16 -0
  200. package/logo/index.d.ts +1 -0
  201. package/modal/Modal.d.ts +13 -0
  202. package/modal/index.d.ts +1 -0
  203. package/multi-select/MultiSelect.d.ts +28 -0
  204. package/multi-select/index.d.ts +1 -0
  205. package/package.json +29 -0
  206. package/radio/Radio.d.ts +20 -0
  207. package/radio/index.d.ts +1 -0
  208. package/react.esm-D8HpDGKP.js +11060 -0
  209. package/search-field/SearchField.d.ts +13 -0
  210. package/search-field/index.d.ts +1 -0
  211. package/select/Select.d.ts +11 -0
  212. package/select/index.d.ts +1 -0
  213. package/spinner/Spinner.d.ts +11 -0
  214. package/spinner/index.d.ts +1 -0
  215. package/table/Table.d.ts +12 -0
  216. package/table/index.d.ts +1 -0
  217. package/tabs/Tabs.d.ts +12 -0
  218. package/tabs/index.d.ts +1 -0
  219. package/tag/Tag.d.ts +11 -0
  220. package/tag/index.d.ts +1 -0
  221. package/textarea/TextArea.d.ts +20 -0
  222. package/textarea/index.d.ts +1 -0
  223. package/textfield/TextField.d.ts +16 -0
  224. package/textfield/index.d.ts +3 -0
  225. package/theme/index.d.ts +138 -0
  226. package/theme/tokens.d.ts +135 -0
  227. package/toast/Toast.d.ts +25 -0
  228. package/toast/index.d.ts +1 -0
  229. package/tokens-CjXmpXTi.js +160 -0
  230. package/triangle-alert-1OYl9KWz.js +56 -0
  231. package/useControlledState-S_TYcV_c.js +45 -0
  232. package/useDescription-D4_zk_sA.js +32 -0
  233. package/useFilter-BnJDBCkt.js +35 -0
  234. package/useFocusRing-D97-G3fT.js +1324 -0
  235. package/useFocusable-C-N9wcwm.js +56 -0
  236. package/useGridSelectionCheckbox-i1rsjlC-.js +22 -0
  237. package/useHasTabbableChild-DeuCnGGv.js +34 -0
  238. package/useHighlightSelectionDescription-JVx2MW_e.js +552 -0
  239. package/useListState-DSOTbsL3.js +119 -0
  240. package/useLocalizedStringFormatter-DVCAZqcL.js +96 -0
  241. package/useSingleSelectListState-CmX9_L5H.js +34 -0
  242. package/useUpdateEffect-Dtz-i14F.js +12 -0
  243. package/x-JK7i-TQC.js +14 -0
package/index82.js ADDED
@@ -0,0 +1,317 @@
1
+ import { jsx as I } from "react/jsx-runtime";
2
+ import { $ as L } from "./Group-DPMuN3h8.js";
3
+ import { m as q, e as P, n as w, f as E, k as G, a as _, u as N, v as T, d as M, x as W, i as A, H, w as j, c as K, b as U } from "./useFocusRing-D97-G3fT.js";
4
+ import { a as z, b as J, $ as Q, c as X, d as Y } from "./Form-DXLoQL91.js";
5
+ import { $ as Z, a as ee } from "./Label-C18A_4Z5.js";
6
+ import { $ as ae } from "./Text-DGLaY3HR.js";
7
+ import D, { useMemo as ie, useState as de, forwardRef as S, createContext as F } from "react";
8
+ import { $ as re } from "./useControlledState-S_TYcV_c.js";
9
+ import { $ as le } from "./FocusScope-BR0SJ-cZ.js";
10
+ import { $ as se } from "./context-ScOIq_Gu.js";
11
+ import { $ as te } from "./useFocusable-C-N9wcwm.js";
12
+ import { a as oe } from "./VisuallyHidden-B_XzVvlX.js";
13
+ import { I as ne } from "./TextField-C_hq9WeT.js";
14
+ import './Radio.css';const C = /* @__PURE__ */ new WeakMap();
15
+ function ce(e, a, l) {
16
+ let { value: d, children: r, "aria-label": f, "aria-labelledby": i } = e;
17
+ const s = e.isDisabled || a.isDisabled;
18
+ let u = r != null, o = f != null || i != null;
19
+ !u && !o && console.warn("If you do not provide children, you must specify an aria-label for accessibility");
20
+ let n = a.selectedValue === d, v = (B) => {
21
+ B.stopPropagation(), a.setSelectedValue(d);
22
+ }, { pressProps: p, isPressed: x } = q({
23
+ isDisabled: s
24
+ }), { pressProps: $, isPressed: h } = q({
25
+ isDisabled: s,
26
+ onPress() {
27
+ a.setSelectedValue(d);
28
+ }
29
+ }), { focusableProps: y } = te(P(e, {
30
+ onFocus: () => a.setLastFocusedValue(d)
31
+ }), l), R = P(p, y), g = w(e, {
32
+ labelable: !0
33
+ }), V = -1;
34
+ a.selectedValue != null ? a.selectedValue === d && (V = 0) : (a.lastFocusedValue === d || a.lastFocusedValue == null) && (V = 0), s && (V = void 0);
35
+ let { name: b, descriptionId: t, errorMessageId: m, validationBehavior: c } = C.get(a);
36
+ return z(l, a.selectedValue, a.setSelectedValue), J({
37
+ validationBehavior: c
38
+ }, a, l), {
39
+ labelProps: P($, {
40
+ onClick: (B) => B.preventDefault()
41
+ }),
42
+ inputProps: P(g, {
43
+ ...R,
44
+ type: "radio",
45
+ name: b,
46
+ tabIndex: V,
47
+ disabled: s,
48
+ required: a.isRequired && c === "native",
49
+ checked: n,
50
+ value: d,
51
+ onChange: v,
52
+ "aria-describedby": [
53
+ e["aria-describedby"],
54
+ a.isInvalid ? m : null,
55
+ t
56
+ ].filter(Boolean).join(" ") || void 0
57
+ }),
58
+ isDisabled: s,
59
+ isSelected: n,
60
+ isPressed: x || h
61
+ };
62
+ }
63
+ function fe(e, a) {
64
+ let { name: l, isReadOnly: d, isRequired: r, isDisabled: f, orientation: i = "vertical", validationBehavior: s = "aria" } = e, { direction: u } = se(), { isInvalid: o, validationErrors: n, validationDetails: v } = a.displayValidation, { labelProps: p, fieldProps: x, descriptionProps: $, errorMessageProps: h } = Z({
65
+ ...e,
66
+ // Radio group is not an HTML input element so it
67
+ // shouldn't be labeled by a <label> element.
68
+ labelElementType: "span",
69
+ isInvalid: a.isInvalid,
70
+ errorMessage: e.errorMessage || n
71
+ }), y = w(e, {
72
+ labelable: !0
73
+ }), { focusWithinProps: R } = E({
74
+ onBlurWithin(b) {
75
+ var t;
76
+ (t = e.onBlur) === null || t === void 0 || t.call(e, b), a.selectedValue || a.setLastFocusedValue(null);
77
+ },
78
+ onFocusWithin: e.onFocus,
79
+ onFocusWithinChange: e.onFocusChange
80
+ }), g = (b) => {
81
+ let t;
82
+ switch (b.key) {
83
+ case "ArrowRight":
84
+ u === "rtl" && i !== "vertical" ? t = "prev" : t = "next";
85
+ break;
86
+ case "ArrowLeft":
87
+ u === "rtl" && i !== "vertical" ? t = "next" : t = "prev";
88
+ break;
89
+ case "ArrowDown":
90
+ t = "next";
91
+ break;
92
+ case "ArrowUp":
93
+ t = "prev";
94
+ break;
95
+ default:
96
+ return;
97
+ }
98
+ b.preventDefault();
99
+ let m = le(b.currentTarget, {
100
+ from: b.target
101
+ }), c;
102
+ t === "next" ? (c = m.nextNode(), c || (m.currentNode = b.currentTarget, c = m.firstChild())) : (c = m.previousNode(), c || (m.currentNode = b.currentTarget, c = m.lastChild())), c && (c.focus(), a.setSelectedValue(c.value));
103
+ }, V = G(l);
104
+ return C.set(a, {
105
+ name: V,
106
+ descriptionId: $.id,
107
+ errorMessageId: h.id,
108
+ validationBehavior: s
109
+ }), {
110
+ radioGroupProps: P(y, {
111
+ // https://www.w3.org/TR/wai-aria-1.2/#radiogroup
112
+ role: "radiogroup",
113
+ onKeyDown: g,
114
+ "aria-invalid": a.isInvalid || void 0,
115
+ "aria-errormessage": e["aria-errormessage"],
116
+ "aria-readonly": d || void 0,
117
+ "aria-required": r || void 0,
118
+ "aria-disabled": f || void 0,
119
+ "aria-orientation": i,
120
+ ...x,
121
+ ...R
122
+ }),
123
+ labelProps: p,
124
+ descriptionProps: $,
125
+ errorMessageProps: h,
126
+ isInvalid: o,
127
+ validationErrors: n,
128
+ validationDetails: v
129
+ };
130
+ }
131
+ let ue = Math.round(Math.random() * 1e10), be = 0;
132
+ function $e(e) {
133
+ let a = ie(() => e.name || `radio-group-${ue}-${++be}`, [
134
+ e.name
135
+ ]);
136
+ var l;
137
+ let [d, r] = re(e.value, (l = e.defaultValue) !== null && l !== void 0 ? l : null, e.onChange), [f, i] = de(null), s = Q({
138
+ ...e,
139
+ value: d
140
+ }), u = (n) => {
141
+ !e.isReadOnly && !e.isDisabled && (r(n), s.commitValidation());
142
+ }, o = s.displayValidation.isInvalid;
143
+ return {
144
+ ...s,
145
+ name: a,
146
+ selectedValue: d,
147
+ setSelectedValue: u,
148
+ lastFocusedValue: f,
149
+ setLastFocusedValue: i,
150
+ isDisabled: e.isDisabled || !1,
151
+ isReadOnly: e.isReadOnly || !1,
152
+ isRequired: e.isRequired || !1,
153
+ validationState: e.validationState || (o ? "invalid" : null),
154
+ isInvalid: o
155
+ };
156
+ }
157
+ const ve = /* @__PURE__ */ F(null), pe = /* @__PURE__ */ F(null), O = /* @__PURE__ */ F(null);
158
+ function me(e, a) {
159
+ [e, a] = _(e, a, ve);
160
+ let { validationBehavior: l } = N(X) || {};
161
+ var d, r;
162
+ let f = (r = (d = e.validationBehavior) !== null && d !== void 0 ? d : l) !== null && r !== void 0 ? r : "native", i = $e({
163
+ ...e,
164
+ validationBehavior: f
165
+ }), [s, u] = T(), { radioGroupProps: o, labelProps: n, descriptionProps: v, errorMessageProps: p, ...x } = fe({
166
+ ...e,
167
+ label: u,
168
+ validationBehavior: f
169
+ }, i), $ = M({
170
+ ...e,
171
+ values: {
172
+ orientation: e.orientation || "vertical",
173
+ isDisabled: i.isDisabled,
174
+ isReadOnly: i.isReadOnly,
175
+ isRequired: i.isRequired,
176
+ isInvalid: i.isInvalid,
177
+ state: i
178
+ },
179
+ defaultClassName: "react-aria-RadioGroup"
180
+ });
181
+ return /* @__PURE__ */ D.createElement("div", {
182
+ ...o,
183
+ ...$,
184
+ ref: a,
185
+ slot: e.slot || void 0,
186
+ "data-orientation": e.orientation || "vertical",
187
+ "data-invalid": i.isInvalid || void 0,
188
+ "data-disabled": i.isDisabled || void 0,
189
+ "data-readonly": i.isReadOnly || void 0,
190
+ "data-required": i.isRequired || void 0
191
+ }, /* @__PURE__ */ D.createElement(W, {
192
+ values: [
193
+ [
194
+ O,
195
+ i
196
+ ],
197
+ [
198
+ ee,
199
+ {
200
+ ...n,
201
+ ref: s,
202
+ elementType: "span"
203
+ }
204
+ ],
205
+ [
206
+ ae,
207
+ {
208
+ slots: {
209
+ description: v,
210
+ errorMessage: p
211
+ }
212
+ }
213
+ ],
214
+ [
215
+ Y,
216
+ x
217
+ ]
218
+ ]
219
+ }, $.children));
220
+ }
221
+ function xe(e, a) {
222
+ let { inputRef: l = null, ...d } = e;
223
+ [e, a] = _(d, a, pe);
224
+ let r = D.useContext(O), f = A(H(l, e.inputRef !== void 0 ? e.inputRef : null)), { labelProps: i, inputProps: s, isSelected: u, isDisabled: o, isPressed: n } = ce({
225
+ ...j(e),
226
+ // ReactNode type doesn't allow function children.
227
+ children: typeof e.children == "function" ? !0 : e.children
228
+ }, r, f), { isFocused: v, isFocusVisible: p, focusProps: x } = K(), $ = o || r.isReadOnly, { hoverProps: h, isHovered: y } = U({
229
+ ...e,
230
+ isDisabled: $
231
+ }), R = M({
232
+ ...e,
233
+ defaultClassName: "react-aria-Radio",
234
+ values: {
235
+ isSelected: u,
236
+ isPressed: n,
237
+ isHovered: y,
238
+ isFocused: v,
239
+ isFocusVisible: p,
240
+ isDisabled: o,
241
+ isReadOnly: r.isReadOnly,
242
+ isInvalid: r.isInvalid,
243
+ isRequired: r.isRequired
244
+ }
245
+ }), g = w(e);
246
+ return delete g.id, /* @__PURE__ */ D.createElement("label", {
247
+ ...P(g, i, h, R),
248
+ ref: a,
249
+ "data-selected": u || void 0,
250
+ "data-pressed": n || void 0,
251
+ "data-hovered": y || void 0,
252
+ "data-focused": v || void 0,
253
+ "data-focus-visible": p || void 0,
254
+ "data-disabled": o || void 0,
255
+ "data-readonly": r.isReadOnly || void 0,
256
+ "data-invalid": r.isInvalid || void 0,
257
+ "data-required": r.isRequired || void 0
258
+ }, /* @__PURE__ */ D.createElement(oe, {
259
+ elementType: "span"
260
+ }, /* @__PURE__ */ D.createElement("input", {
261
+ ...P(s, x),
262
+ ref: f
263
+ })), R.children);
264
+ }
265
+ const Pe = /* @__PURE__ */ S(me), he = /* @__PURE__ */ S(xe), ye = '"../theme/tokens.css"', Re = '"Inter", sans-serif', ge = "undefined", Ve = "#1f1f1f", De = "#000000", Ie = "#143c50", Be = "#bfbfbf", ke = "#b3b3b3", we = "#ffdfdf", Fe = "#e62323", qe = "undefined", _e = "#1f1f1f", Me = "undefined", Se = "(max-width: 767px)", Ce = "0 0 0 2px #ffffff, 0 0 0 4px #000000", Oe = "(min-width: 768px)", Le = "#b3b3b3", Ee = "_radioGroup_1vn0q_4", Ge = "_wrap_1vn0q_17", Ne = "_radio_1vn0q_4", k = {
266
+ tokens: ye,
267
+ display: Re,
268
+ inputLabel: ge,
269
+ inputText: Ve,
270
+ black: De,
271
+ blue150: Ie,
272
+ gray50: Be,
273
+ gray60: ke,
274
+ signalRed10: we,
275
+ signalRed100: Fe,
276
+ medium: qe,
277
+ gray150: _e,
278
+ regular: Me,
279
+ smBreakpoint: Se,
280
+ focus: Ce,
281
+ mdBreakpoint: Oe,
282
+ borderSecondary: Le,
283
+ radioGroup: Ee,
284
+ wrap: Ge,
285
+ radio: Ne
286
+ }, ea = ({
287
+ label: e,
288
+ description: a,
289
+ errorMessage: l,
290
+ children: d,
291
+ ...r
292
+ }) => /* @__PURE__ */ I(
293
+ Pe,
294
+ {
295
+ ...r,
296
+ className: k.radioGroup,
297
+ children: /* @__PURE__ */ I(
298
+ ne,
299
+ {
300
+ label: e,
301
+ description: a,
302
+ errorMessage: l,
303
+ children: /* @__PURE__ */ I(L, { className: k.wrap, children: d })
304
+ }
305
+ )
306
+ }
307
+ ), aa = (e) => /* @__PURE__ */ I(
308
+ he,
309
+ {
310
+ className: k.radio,
311
+ ...e
312
+ }
313
+ );
314
+ export {
315
+ aa as Radio,
316
+ ea as RadioGroup
317
+ };
package/index83.js ADDED
@@ -0,0 +1,391 @@
1
+ import { jsxs as A, jsx as F } from "react/jsx-runtime";
2
+ import * as w from "react";
3
+ import f, { useMemo as S, useRef as H, useEffect as B, forwardRef as M, useContext as p, createContext as T } from "react";
4
+ import { $ as O, c as z, d as _, a as W, f as q } from "./Collection-B3xUVWPF.js";
5
+ import { n as g, p as j, e as v, k as U, i as E, c as C, b as G, d as K, a as J, x as N, u as Q } from "./useFocusRing-D97-G3fT.js";
6
+ import { $ as X } from "./Hidden-BQWDvze4.js";
7
+ import { f as Y, d as Z } from "./SelectionManager-D4WtKtey.js";
8
+ import { a as R } from "./useControlledState-S_TYcV_c.js";
9
+ import { $ as ee } from "./useHasTabbableChild-DeuCnGGv.js";
10
+ import { $ as te } from "./context-ScOIq_Gu.js";
11
+ import { $ as ie } from "./useSingleSelectListState-CmX9_L5H.js";
12
+ import './Tabs.css';const k = /* @__PURE__ */ new WeakMap();
13
+ function x(t, e, i) {
14
+ return t ? (typeof e == "string" && (e = e.replace(/\s+/g, "")), `${k.get(t)}-${i}-${e}`) : "";
15
+ }
16
+ function ae(t, e, i) {
17
+ let { key: a, isDisabled: s, shouldSelectOnPressUp: o } = t, { selectionManager: l, selectedKey: r } = e, n = a === r, d = s || e.isDisabled || e.selectionManager.isDisabled(a), { itemProps: c, isPressed: u } = Y({
18
+ selectionManager: l,
19
+ key: a,
20
+ ref: i,
21
+ isDisabled: d,
22
+ shouldSelectOnPressUp: o,
23
+ linkBehavior: "selection"
24
+ }), h = x(e, a, "tab"), m = x(e, a, "tabpanel"), { tabIndex: D } = c, b = e.collection.getItem(a), L = g(b == null ? void 0 : b.props, {
25
+ labelable: !0
26
+ });
27
+ delete L.id;
28
+ let V = j(b == null ? void 0 : b.props);
29
+ return {
30
+ tabProps: v(L, V, c, {
31
+ id: h,
32
+ "aria-selected": n,
33
+ "aria-disabled": d || void 0,
34
+ "aria-controls": n ? m : void 0,
35
+ tabIndex: d ? void 0 : D,
36
+ role: "tab"
37
+ }),
38
+ isSelected: n,
39
+ isDisabled: d,
40
+ isPressed: u
41
+ };
42
+ }
43
+ function se(t, e, i) {
44
+ let a = ee(i) ? void 0 : 0;
45
+ var s;
46
+ const o = x(e, (s = t.id) !== null && s !== void 0 ? s : e == null ? void 0 : e.selectedKey, "tabpanel"), l = R({
47
+ ...t,
48
+ id: o,
49
+ "aria-labelledby": x(e, e == null ? void 0 : e.selectedKey, "tab")
50
+ });
51
+ return {
52
+ tabPanelProps: v(l, {
53
+ tabIndex: a,
54
+ role: "tabpanel",
55
+ "aria-describedby": t["aria-describedby"],
56
+ "aria-details": t["aria-details"]
57
+ })
58
+ };
59
+ }
60
+ class le {
61
+ getKeyLeftOf(e) {
62
+ return this.flipDirection ? this.getNextKey(e) : this.getPreviousKey(e);
63
+ }
64
+ getKeyRightOf(e) {
65
+ return this.flipDirection ? this.getPreviousKey(e) : this.getNextKey(e);
66
+ }
67
+ isDisabled(e) {
68
+ var i, a;
69
+ return this.disabledKeys.has(e) || !!(!((a = this.collection.getItem(e)) === null || a === void 0 || (i = a.props) === null || i === void 0) && i.isDisabled);
70
+ }
71
+ getFirstKey() {
72
+ let e = this.collection.getFirstKey();
73
+ return e != null && this.isDisabled(e) && (e = this.getNextKey(e)), e;
74
+ }
75
+ getLastKey() {
76
+ let e = this.collection.getLastKey();
77
+ return e != null && this.isDisabled(e) && (e = this.getPreviousKey(e)), e;
78
+ }
79
+ getKeyAbove(e) {
80
+ return this.tabDirection ? null : this.getPreviousKey(e);
81
+ }
82
+ getKeyBelow(e) {
83
+ return this.tabDirection ? null : this.getNextKey(e);
84
+ }
85
+ getNextKey(e) {
86
+ do
87
+ e = this.collection.getKeyAfter(e), e == null && (e = this.collection.getFirstKey());
88
+ while (this.isDisabled(e));
89
+ return e;
90
+ }
91
+ getPreviousKey(e) {
92
+ do
93
+ e = this.collection.getKeyBefore(e), e == null && (e = this.collection.getLastKey());
94
+ while (this.isDisabled(e));
95
+ return e;
96
+ }
97
+ constructor(e, i, a, s = /* @__PURE__ */ new Set()) {
98
+ this.collection = e, this.flipDirection = i === "rtl" && a === "horizontal", this.disabledKeys = s, this.tabDirection = a === "horizontal";
99
+ }
100
+ }
101
+ function ne(t, e, i) {
102
+ let { orientation: a = "horizontal", keyboardActivation: s = "automatic" } = t, { collection: o, selectionManager: l, disabledKeys: r } = e, { direction: n } = te(), d = S(() => new le(o, n, a, r), [
103
+ o,
104
+ r,
105
+ a,
106
+ n
107
+ ]), { collectionProps: c } = Z({
108
+ ref: i,
109
+ selectionManager: l,
110
+ keyboardDelegate: d,
111
+ selectOnFocus: s === "automatic",
112
+ disallowEmptySelection: !0,
113
+ scrollRef: i,
114
+ linkBehavior: "selection"
115
+ }), u = U();
116
+ k.set(e, u);
117
+ let h = R({
118
+ ...t,
119
+ id: u
120
+ });
121
+ return {
122
+ tabListProps: {
123
+ ...v(c, h),
124
+ role: "tablist",
125
+ "aria-orientation": a,
126
+ tabIndex: void 0
127
+ }
128
+ };
129
+ }
130
+ function oe(t) {
131
+ var e, i;
132
+ let a = ie({
133
+ ...t,
134
+ suppressTextValueWarning: !0,
135
+ defaultSelectedKey: (i = (e = t.defaultSelectedKey) !== null && e !== void 0 ? e : I(t.collection, t.disabledKeys ? new Set(t.disabledKeys) : /* @__PURE__ */ new Set())) !== null && i !== void 0 ? i : void 0
136
+ }), { selectionManager: s, collection: o, selectedKey: l } = a, r = H(l);
137
+ return B(() => {
138
+ let n = l;
139
+ (s.isEmpty || n == null || !o.getItem(n)) && (n = I(o, a.disabledKeys), n != null && s.setSelectedKeys([
140
+ n
141
+ ])), (n != null && s.focusedKey == null || !s.isFocused && n !== r.current) && s.setFocusedKey(n), r.current = n;
142
+ }), {
143
+ ...a,
144
+ isDisabled: t.isDisabled || !1
145
+ };
146
+ }
147
+ function I(t, e) {
148
+ let i = null;
149
+ if (t) {
150
+ var a, s, o, l;
151
+ for (i = t.getFirstKey(); i != null && (e.has(i) || !((s = t.getItem(i)) === null || s === void 0 || (a = s.props) === null || a === void 0) && a.isDisabled) && i !== t.getLastKey(); ) i = t.getKeyAfter(i);
152
+ i != null && (e.has(i) || !((l = t.getItem(i)) === null || l === void 0 || (o = l.props) === null || o === void 0) && o.isDisabled) && i === t.getLastKey() && (i = t.getFirstKey());
153
+ }
154
+ return i;
155
+ }
156
+ const P = /* @__PURE__ */ T(null), $ = /* @__PURE__ */ T(null);
157
+ function re(t, e) {
158
+ [t, e] = J(t, e, P);
159
+ let { children: i, orientation: a = "horizontal" } = t;
160
+ return i = S(() => typeof i == "function" ? i({
161
+ orientation: a,
162
+ defaultChildren: null
163
+ }) : i, [
164
+ i,
165
+ a
166
+ ]), /* @__PURE__ */ f.createElement(z, {
167
+ content: i
168
+ }, (s) => /* @__PURE__ */ f.createElement(de, {
169
+ props: t,
170
+ collection: s,
171
+ tabsRef: e
172
+ }));
173
+ }
174
+ function de({ props: t, tabsRef: e, collection: i }) {
175
+ let { orientation: a = "horizontal" } = t, s = oe({
176
+ ...t,
177
+ collection: i,
178
+ children: void 0
179
+ }), { focusProps: o, isFocused: l, isFocusVisible: r } = C({
180
+ within: !0
181
+ }), n = S(() => ({
182
+ orientation: a,
183
+ isFocusWithin: l,
184
+ isFocusVisible: r
185
+ }), [
186
+ a,
187
+ l,
188
+ r
189
+ ]), d = K({
190
+ ...t,
191
+ defaultClassName: "react-aria-Tabs",
192
+ values: n
193
+ });
194
+ return /* @__PURE__ */ f.createElement("div", {
195
+ ...g(t),
196
+ ...o,
197
+ ...d,
198
+ ref: e,
199
+ slot: t.slot || void 0,
200
+ "data-focused": l || void 0,
201
+ "data-orientation": a,
202
+ "data-focus-visible": r || void 0,
203
+ "data-disabled": s.isDisabled || void 0
204
+ }, /* @__PURE__ */ f.createElement(N, {
205
+ values: [
206
+ [
207
+ P,
208
+ t
209
+ ],
210
+ [
211
+ $,
212
+ s
213
+ ]
214
+ ]
215
+ }, d.children));
216
+ }
217
+ const ce = /* @__PURE__ */ M(re);
218
+ function fe(t, e) {
219
+ return p($) ? /* @__PURE__ */ f.createElement(ue, {
220
+ props: t,
221
+ forwardedRef: e
222
+ }) : /* @__PURE__ */ f.createElement(_, t);
223
+ }
224
+ function ue({ props: t, forwardedRef: e }) {
225
+ let i = p($), { CollectionRoot: a } = p(W), { orientation: s = "horizontal", keyboardActivation: o = "automatic" } = Q(P), l = E(e), { tabListProps: r } = ne({
226
+ ...t,
227
+ orientation: s,
228
+ keyboardActivation: o
229
+ }, i, l), n = K({
230
+ ...t,
231
+ children: null,
232
+ defaultClassName: "react-aria-TabList",
233
+ values: {
234
+ orientation: s,
235
+ state: i
236
+ }
237
+ }), d = g(t);
238
+ return delete d.id, /* @__PURE__ */ f.createElement("div", {
239
+ ...d,
240
+ ...r,
241
+ ref: l,
242
+ ...n,
243
+ "data-orientation": s || void 0
244
+ }, /* @__PURE__ */ f.createElement(a, {
245
+ collection: i.collection,
246
+ persistedKeys: q(i.selectionManager.focusedKey)
247
+ }));
248
+ }
249
+ const be = /* @__PURE__ */ M(fe), $e = /* @__PURE__ */ O("item", (t, e, i) => {
250
+ let a = p($), s = E(e), { tabProps: o, isSelected: l, isDisabled: r, isPressed: n } = ae({
251
+ key: i.key,
252
+ ...t
253
+ }, a, s), { focusProps: d, isFocused: c, isFocusVisible: u } = C(), { hoverProps: h, isHovered: m } = G({
254
+ isDisabled: r,
255
+ onHoverStart: t.onHoverStart,
256
+ onHoverEnd: t.onHoverEnd,
257
+ onHoverChange: t.onHoverChange
258
+ }), D = K({
259
+ ...t,
260
+ id: void 0,
261
+ defaultClassName: "react-aria-Tab",
262
+ values: {
263
+ isSelected: l,
264
+ isDisabled: r,
265
+ isFocused: c,
266
+ isFocusVisible: u,
267
+ isPressed: n,
268
+ isHovered: m
269
+ }
270
+ }), b = i.props.href ? "a" : "div";
271
+ return /* @__PURE__ */ f.createElement(b, {
272
+ ...v(o, d, h, D),
273
+ ref: s,
274
+ "data-selected": l || void 0,
275
+ "data-disabled": r || void 0,
276
+ "data-focused": c || void 0,
277
+ "data-focus-visible": u || void 0,
278
+ "data-pressed": n || void 0,
279
+ "data-hovered": m || void 0
280
+ });
281
+ });
282
+ function he(t, e) {
283
+ const i = p($);
284
+ let a = E(e), { tabPanelProps: s } = se(t, i, a), { focusProps: o, isFocused: l, isFocusVisible: r } = C(), n = i.selectedKey === t.id, d = K({
285
+ ...t,
286
+ defaultClassName: "react-aria-TabPanel",
287
+ values: {
288
+ isFocused: l,
289
+ isFocusVisible: r,
290
+ isInert: !n,
291
+ state: i
292
+ }
293
+ });
294
+ if (!n && !t.shouldForceMount) return null;
295
+ let c = g(t);
296
+ delete c.id;
297
+ let u = n ? v(c, s, o, d) : d;
298
+ return /* @__PURE__ */ f.createElement("div", {
299
+ ...u,
300
+ ref: a,
301
+ "data-focused": l || void 0,
302
+ "data-focus-visible": r || void 0,
303
+ // @ts-ignore
304
+ inert: n ? void 0 : "true",
305
+ "data-inert": n ? void 0 : "true"
306
+ }, /* @__PURE__ */ f.createElement(N, {
307
+ values: [
308
+ [
309
+ P,
310
+ null
311
+ ],
312
+ [
313
+ $,
314
+ null
315
+ ]
316
+ ]
317
+ }, d.children));
318
+ }
319
+ const pe = /* @__PURE__ */ X(he), ve = '"../theme/tokens.css"', me = '"Inter", sans-serif', ye = "#bfbfbf", xe = "600", ge = "#25607f", Ke = "0 0 0 2px #ffffff, 0 0 0 4px #000000", Pe = "(max-width: 767px)", De = "_container_a0kqi_4", Fe = "_list_a0kqi_8", we = "_listItem_a0kqi_14", Se = "_panel_a0kqi_42", y = {
320
+ tokens: ve,
321
+ display: me,
322
+ gray50: ye,
323
+ semiBoldWeight: xe,
324
+ blue130: ge,
325
+ focus: Ke,
326
+ smBreakpoint: Pe,
327
+ container: De,
328
+ list: Fe,
329
+ listItem: we,
330
+ panel: Se
331
+ }, Ae = ({
332
+ tabs: t,
333
+ label: e,
334
+ defaultSelected: i,
335
+ children: a
336
+ }) => {
337
+ const s = w.Children.toArray(a);
338
+ if (s.length !== t.length)
339
+ throw new Error(
340
+ `The number of children must match the number of tabs. Children: ${s.length} Tabs: ${t.length}`
341
+ );
342
+ const o = s.reduce(
343
+ (l, r, n) => {
344
+ var d;
345
+ if (w.isValidElement(r)) {
346
+ const c = (d = t[n]) == null ? void 0 : d.toLowerCase();
347
+ c && (l[c] = w.cloneElement(r, { id: c }));
348
+ }
349
+ return l;
350
+ },
351
+ {}
352
+ );
353
+ return /* @__PURE__ */ A(
354
+ ce,
355
+ {
356
+ orientation: "vertical",
357
+ defaultSelectedKey: i && i.toLowerCase(),
358
+ className: y.container,
359
+ children: [
360
+ /* @__PURE__ */ F(
361
+ be,
362
+ {
363
+ "aria-label": e,
364
+ className: y.list,
365
+ children: t.map((l) => /* @__PURE__ */ F(
366
+ $e,
367
+ {
368
+ id: l.toLowerCase(),
369
+ className: y.listItem,
370
+ children: l
371
+ },
372
+ l
373
+ ))
374
+ }
375
+ ),
376
+ t.map((l) => /* @__PURE__ */ F(
377
+ pe,
378
+ {
379
+ id: l.toLowerCase(),
380
+ className: y.panel,
381
+ children: o[l.toLowerCase()]
382
+ },
383
+ l
384
+ ))
385
+ ]
386
+ }
387
+ );
388
+ };
389
+ export {
390
+ Ae as Tabs
391
+ };