@dmsi/wedgekit-react 0.0.26 → 0.0.27

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 (217) hide show
  1. package/dist/{chunk-KDEPZ6I7.js → chunk-2S2Z3L56.js} +5 -1
  2. package/dist/{chunk-TU55CHXU.js → chunk-4JLU7TAC.js} +3 -1
  3. package/dist/{chunk-Z2LOGSGE.js → chunk-4N2PED4P.js} +15 -3
  4. package/dist/{chunk-U42SKNR6.js → chunk-57WRM337.js} +68 -30
  5. package/dist/{chunk-ZFGGZXB6.js → chunk-AY7ELVQY.js} +5 -2
  6. package/dist/{chunk-I2UVVKQI.js → chunk-CHTO7PW4.js} +3 -2
  7. package/dist/{chunk-WIDBAFBU.js → chunk-FWPJ73IK.js} +3 -1
  8. package/dist/{chunk-5TLFMKSR.js → chunk-INYI65WW.js} +15 -5
  9. package/dist/{chunk-TJ44JJCB.js → chunk-J6LETUNM.js} +5 -2
  10. package/dist/{chunk-T6HZARR7.js → chunk-MZJS2ZAU.js} +6 -3
  11. package/dist/{chunk-ZCBSLV7U.js → chunk-O4M2GISS.js} +5 -2
  12. package/dist/{chunk-OUTEIXV4.js → chunk-OUSNH76S.js} +11 -3
  13. package/dist/{chunk-YDREJNAS.js → chunk-PDDZ5PMY.js} +18 -4
  14. package/dist/{chunk-4RD5ZF2V.js → chunk-QBIEU25R.js} +10 -4
  15. package/dist/chunk-QUPHLL7D.js +61 -0
  16. package/dist/{chunk-OISE6NMA.js → chunk-QV2EFOYF.js} +17 -6
  17. package/dist/{chunk-YZQNTOIF.js → chunk-QZGUMB7T.js} +10 -5
  18. package/dist/{chunk-S7R37IUP.js → chunk-S5K22XTH.js} +5 -2
  19. package/dist/{chunk-GCPJH5R6.js → chunk-S5KPS4IQ.js} +22 -7
  20. package/dist/{chunk-VELXLFMJ.js → chunk-SAMX4YGM.js} +4 -1
  21. package/dist/{chunk-TWP6YSFO.js → chunk-SKHSGGO3.js} +14 -6
  22. package/dist/chunk-TVDFTRGL.js +57 -0
  23. package/dist/{chunk-N32PXOA5.js → chunk-UT7XCBZF.js} +9 -4
  24. package/dist/{chunk-L4UM372R.js → chunk-VC3R5EUH.js} +3 -0
  25. package/dist/{chunk-UIQ733QP.js → chunk-VG4EPHJA.js} +7 -3
  26. package/dist/components/Breadcrumbs.cjs +29 -9
  27. package/dist/components/Breadcrumbs.js +29 -9
  28. package/dist/components/Button.cjs +6 -3
  29. package/dist/components/Button.js +1 -1
  30. package/dist/components/CalendarRange.cjs +11 -3
  31. package/dist/components/CalendarRange.js +1 -1
  32. package/dist/components/Caption.cjs +53 -9
  33. package/dist/components/Caption.js +53 -9
  34. package/dist/components/Checkbox.cjs +15 -6
  35. package/dist/components/Checkbox.js +2 -2
  36. package/dist/components/ContentTab.cjs +20 -7
  37. package/dist/components/ContentTab.js +2 -2
  38. package/dist/components/ContentTabs.cjs +32 -18
  39. package/dist/components/ContentTabs.js +14 -13
  40. package/dist/components/DMSiLogo.cjs +22 -4
  41. package/dist/components/DMSiLogo.js +9 -5
  42. package/dist/components/DataGrid.cjs +374 -243
  43. package/dist/components/DataGrid.js +283 -226
  44. package/dist/components/DataGridCell.cjs +79 -21
  45. package/dist/components/DataGridCell.js +7 -7
  46. package/dist/components/DataTable.cjs +197 -139
  47. package/dist/components/DataTable.js +197 -139
  48. package/dist/components/DateInput.cjs +36 -10
  49. package/dist/components/DateInput.js +7 -3
  50. package/dist/components/DateRangeInput.cjs +36 -10
  51. package/dist/components/DateRangeInput.js +7 -3
  52. package/dist/components/DebugJson.cjs +21 -13
  53. package/dist/components/DebugJson.js +21 -13
  54. package/dist/components/Display.cjs +5 -2
  55. package/dist/components/Display.js +1 -1
  56. package/dist/components/EditingContext.cjs +4 -1
  57. package/dist/components/EditingContext.js +4 -1
  58. package/dist/components/FilterGroup.cjs +102 -32
  59. package/dist/components/FilterGroup.js +41 -17
  60. package/dist/components/FullViewportBox.cjs +10 -2
  61. package/dist/components/FullViewportBox.js +10 -2
  62. package/dist/components/Grid.cjs +3 -1
  63. package/dist/components/Grid.js +3 -1
  64. package/dist/components/Heading.cjs +5 -2
  65. package/dist/components/Heading.js +1 -1
  66. package/dist/components/HorizontalDivider.cjs +2 -2
  67. package/dist/components/HorizontalDivider.js +2 -2
  68. package/dist/components/Input.cjs +21 -7
  69. package/dist/components/Input.js +2 -2
  70. package/dist/components/InputGroup.cjs +13 -6
  71. package/dist/components/InputGroup.js +9 -5
  72. package/dist/components/Label.cjs +5 -2
  73. package/dist/components/Label.js +1 -1
  74. package/dist/components/List.cjs +3 -2
  75. package/dist/components/List.js +3 -2
  76. package/dist/components/LogoAgilityTopBar.cjs +22 -4
  77. package/dist/components/LogoAgilityTopBar.js +9 -5
  78. package/dist/components/LogoDMSiTopBar.cjs +22 -4
  79. package/dist/components/LogoDMSiTopBar.js +1 -1
  80. package/dist/components/LogoMillworkTopBar.cjs +22 -4
  81. package/dist/components/LogoMillworkTopBar.js +9 -5
  82. package/dist/components/MainBar.cjs +2 -0
  83. package/dist/components/MainBar.js +2 -0
  84. package/dist/components/Menu.cjs +3 -0
  85. package/dist/components/Menu.js +1 -1
  86. package/dist/components/MenuOption.cjs +28 -7
  87. package/dist/components/MenuOption.js +3 -3
  88. package/dist/components/MobileDataGrid.cjs +101 -46
  89. package/dist/components/MobileDataGrid.js +23 -11
  90. package/dist/components/Modal.cjs +96 -51
  91. package/dist/components/Modal.js +19 -7
  92. package/dist/components/ModalButtons.cjs +43 -26
  93. package/dist/components/ModalButtons.js +2 -2
  94. package/dist/components/ModalContent.cjs +3 -1
  95. package/dist/components/ModalContent.js +1 -1
  96. package/dist/components/ModalHeader.cjs +40 -25
  97. package/dist/components/ModalHeader.js +3 -3
  98. package/dist/components/ModalScrim.cjs +3 -1
  99. package/dist/components/ModalScrim.js +1 -1
  100. package/dist/components/NavigationTab.cjs +9 -3
  101. package/dist/components/NavigationTab.js +2 -2
  102. package/dist/components/NavigationTabs.cjs +15 -7
  103. package/dist/components/NavigationTabs.js +8 -6
  104. package/dist/components/NestedMenu.cjs +28 -7
  105. package/dist/components/NestedMenu.js +3 -3
  106. package/dist/components/Notification.cjs +84 -38
  107. package/dist/components/Notification.js +8 -4
  108. package/dist/components/OptionPill.cjs +24 -6
  109. package/dist/components/OptionPill.js +3 -3
  110. package/dist/components/Paragraph.cjs +7 -3
  111. package/dist/components/Paragraph.js +1 -1
  112. package/dist/components/Password.cjs +33 -11
  113. package/dist/components/Password.js +14 -6
  114. package/dist/components/ProjectBar.cjs +3 -1
  115. package/dist/components/ProjectBar.js +3 -1
  116. package/dist/components/Radio.cjs +13 -7
  117. package/dist/components/Radio.js +7 -5
  118. package/dist/components/Search.cjs +34 -12
  119. package/dist/components/Search.js +3 -3
  120. package/dist/components/Select.cjs +25 -7
  121. package/dist/components/Select.js +3 -3
  122. package/dist/components/SideMenu.cjs +6 -1
  123. package/dist/components/SideMenu.js +6 -1
  124. package/dist/components/SideMenuGroup.cjs +96 -49
  125. package/dist/components/SideMenuGroup.js +31 -19
  126. package/dist/components/SideMenuItem.cjs +99 -43
  127. package/dist/components/SideMenuItem.js +32 -12
  128. package/dist/components/Stack.cjs +91 -30
  129. package/dist/components/Stack.js +1 -1
  130. package/dist/components/StatusPill.cjs +13 -6
  131. package/dist/components/StatusPill.js +9 -5
  132. package/dist/components/Stepper.cjs +35 -17
  133. package/dist/components/Stepper.js +11 -10
  134. package/dist/components/Subheader.cjs +5 -2
  135. package/dist/components/Subheader.js +1 -1
  136. package/dist/components/Surface.cjs +5 -2
  137. package/dist/components/Surface.js +5 -2
  138. package/dist/components/Swatch.cjs +1544 -1308
  139. package/dist/components/Swatch.js +1469 -1275
  140. package/dist/components/Textarea.cjs +5 -2
  141. package/dist/components/Textarea.js +5 -2
  142. package/dist/components/Theme.cjs +3 -2
  143. package/dist/components/Theme.js +1 -1
  144. package/dist/components/Time.cjs +98 -40
  145. package/dist/components/Time.js +18 -6
  146. package/dist/components/Toast.cjs +38 -15
  147. package/dist/components/Toast.js +23 -10
  148. package/dist/components/Tooltip.cjs +5 -4
  149. package/dist/components/Tooltip.js +1 -1
  150. package/dist/components/TopBar.cjs +16 -8
  151. package/dist/components/TopBar.js +12 -5
  152. package/package.json +1 -1
  153. package/src/components/Breadcrumbs.tsx +24 -15
  154. package/src/components/Button.tsx +7 -3
  155. package/src/components/CalendarRange.tsx +9 -0
  156. package/src/components/Caption.tsx +36 -6
  157. package/src/components/Checkbox.tsx +7 -2
  158. package/src/components/ContentTab.tsx +13 -3
  159. package/src/components/ContentTabs.tsx +11 -8
  160. package/src/components/DMSiLogo.tsx +2 -1
  161. package/src/components/DataGrid.tsx +85 -23
  162. package/src/components/DataGridCell.tsx +15 -2
  163. package/src/components/DataTable.tsx +64 -14
  164. package/src/components/DateInput.tsx +5 -1
  165. package/src/components/DateRangeInput.tsx +5 -1
  166. package/src/components/DebugJson.tsx +7 -3
  167. package/src/components/Display.tsx +3 -0
  168. package/src/components/EditingContext.tsx +8 -6
  169. package/src/components/FilterGroup.tsx +23 -3
  170. package/src/components/FullViewportBox.tsx +6 -1
  171. package/src/components/Grid.tsx +3 -0
  172. package/src/components/Heading.tsx +3 -0
  173. package/src/components/HorizontalDivider.tsx +4 -2
  174. package/src/components/Input.tsx +19 -10
  175. package/src/components/InputGroup.tsx +8 -4
  176. package/src/components/Label.tsx +3 -0
  177. package/src/components/Link.tsx +1 -0
  178. package/src/components/List.tsx +7 -1
  179. package/src/components/LogoAgilityTopBar.tsx +2 -1
  180. package/src/components/LogoDMSiTopBar.tsx +2 -1
  181. package/src/components/LogoMillworkTopBar.tsx +2 -1
  182. package/src/components/MainBar.tsx +3 -0
  183. package/src/components/Menu.tsx +3 -0
  184. package/src/components/MenuOption.tsx +72 -58
  185. package/src/components/MobileDataGrid.tsx +15 -4
  186. package/src/components/Modal.tsx +10 -1
  187. package/src/components/ModalButtons.tsx +12 -1
  188. package/src/components/ModalContent.tsx +3 -0
  189. package/src/components/ModalHeader.tsx +16 -6
  190. package/src/components/ModalScrim.tsx +3 -0
  191. package/src/components/NavigationTab.tsx +6 -3
  192. package/src/components/NavigationTabs.tsx +5 -2
  193. package/src/components/Notification.tsx +4 -0
  194. package/src/components/OptionPill.tsx +9 -1
  195. package/src/components/Paragraph.tsx +3 -0
  196. package/src/components/Password.tsx +9 -3
  197. package/src/components/ProjectBar.tsx +3 -0
  198. package/src/components/Radio.tsx +3 -2
  199. package/src/components/Search.tsx +56 -41
  200. package/src/components/Select.tsx +6 -1
  201. package/src/components/SideMenu.tsx +7 -1
  202. package/src/components/SideMenuGroup.tsx +13 -2
  203. package/src/components/SideMenuItem.tsx +15 -2
  204. package/src/components/Stack.tsx +8 -3
  205. package/src/components/StatusPill.tsx +4 -2
  206. package/src/components/Stepper.tsx +5 -5
  207. package/src/components/Subheader.tsx +3 -0
  208. package/src/components/Surface.tsx +3 -0
  209. package/src/components/Swatch.tsx +415 -140
  210. package/src/components/Textarea.tsx +6 -3
  211. package/src/components/Theme.tsx +3 -1
  212. package/src/components/Time.tsx +21 -5
  213. package/src/components/Toast.tsx +29 -14
  214. package/src/components/Tooltip.tsx +46 -32
  215. package/src/components/TopBar.tsx +7 -3
  216. package/dist/chunk-DBYSGYST.js +0 -47
  217. package/dist/chunk-UK3WG7HQ.js +0 -48
@@ -206,7 +206,8 @@ var Button = (_a) => {
206
206
  children,
207
207
  iconOnly = false,
208
208
  colorClassName,
209
- href
209
+ href,
210
+ id
210
211
  } = _b, props = __objRest(_b, [
211
212
  "variant",
212
213
  "as",
@@ -219,7 +220,8 @@ var Button = (_a) => {
219
220
  "children",
220
221
  "iconOnly",
221
222
  "colorClassName",
222
- "href"
223
+ "href",
224
+ "id"
223
225
  ]);
224
226
  const primaryVariantStyles = variant === "primary" && (0, import_clsx2.default)(
225
227
  (colorClassName == null ? void 0 : colorClassName.trim()) ? colorClassName : "text-text-on-action-primary-normal",
@@ -309,6 +311,7 @@ var Button = (_a) => {
309
311
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
310
312
  Element,
311
313
  __spreadProps(__spreadValues({
314
+ id,
312
315
  type: Element === "button" ? "button" : void 0,
313
316
  className: buttonClasses
314
317
  }, props), {
@@ -316,7 +319,7 @@ var Button = (_a) => {
316
319
  href,
317
320
  children: [
318
321
  leftIcon && leftIcon,
319
- !iconOnly && children && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: labelClasses, children }),
322
+ !iconOnly && children && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { id: id ? `${id}-label` : void 0, className: labelClasses, children }),
320
323
  rightIcon && rightIcon
321
324
  ]
322
325
  })
@@ -333,18 +336,21 @@ var Label = (_a) => {
333
336
  padded,
334
337
  className,
335
338
  color,
336
- align
339
+ align,
340
+ id
337
341
  } = _b, props = __objRest(_b, [
338
342
  "as",
339
343
  "padded",
340
344
  "className",
341
345
  "color",
342
- "align"
346
+ "align",
347
+ "id"
343
348
  ]);
344
349
  const Element = as;
345
350
  return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
346
351
  Element,
347
352
  __spreadProps(__spreadValues({
353
+ id,
348
354
  className: (0, import_clsx3.default)(
349
355
  typography.label,
350
356
  align === "left" && "text-left",
@@ -398,6 +404,7 @@ function Icon(_a) {
398
404
  var import_jsx_runtime4 = require("react/jsx-runtime");
399
405
  var OptionPill = (_a) => {
400
406
  var _b = _a, {
407
+ id,
401
408
  selected = false,
402
409
  onClick,
403
410
  onRemove,
@@ -406,6 +413,7 @@ var OptionPill = (_a) => {
406
413
  children,
407
414
  className
408
415
  } = _b, props = __objRest(_b, [
416
+ "id",
409
417
  "selected",
410
418
  "onClick",
411
419
  "onRemove",
@@ -436,6 +444,7 @@ var OptionPill = (_a) => {
436
444
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
437
445
  "div",
438
446
  __spreadProps(__spreadValues(__spreadValues({
447
+ id,
439
448
  onClick: handleOnClick
440
449
  }, props), additionalAttributes), {
441
450
  className: (0, import_clsx5.default)(
@@ -449,10 +458,19 @@ var OptionPill = (_a) => {
449
458
  textColor
450
459
  ),
451
460
  children: [
452
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Label, { padded: true, className: componentPaddingYUsingComponentGap, children }),
461
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
462
+ Label,
463
+ {
464
+ id: id ? `${id}-label` : void 0,
465
+ padded: true,
466
+ className: componentPaddingYUsingComponentGap,
467
+ children
468
+ }
469
+ ),
453
470
  removable && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
454
471
  Button,
455
472
  {
473
+ id: id ? `${id}-remove-button` : void 0,
456
474
  onClick: handleOnRemove,
457
475
  disabled,
458
476
  className: (0, import_clsx5.default)(
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  OptionPill
3
- } from "../chunk-Z2LOGSGE.js";
4
- import "../chunk-S7R37IUP.js";
5
- import "../chunk-T6HZARR7.js";
3
+ } from "../chunk-4N2PED4P.js";
4
+ import "../chunk-S5K22XTH.js";
5
+ import "../chunk-MZJS2ZAU.js";
6
6
  import "../chunk-IGQVA7SC.js";
7
7
  import "../chunk-RDLEIAQU.js";
8
8
  import "../chunk-ORMEWXMH.js";
@@ -201,7 +201,8 @@ var Paragraph = (_a) => {
201
201
  tall,
202
202
  addOverflow,
203
203
  children,
204
- as = "p"
204
+ as = "p",
205
+ id
205
206
  } = _b, props = __objRest(_b, [
206
207
  "className",
207
208
  "color",
@@ -210,12 +211,15 @@ var Paragraph = (_a) => {
210
211
  "tall",
211
212
  "addOverflow",
212
213
  "children",
213
- "as"
214
+ "as",
215
+ "id"
214
216
  ]);
215
217
  const Element = as;
216
218
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
217
219
  Element,
218
- __spreadProps(__spreadValues({}, props), {
220
+ __spreadProps(__spreadValues({
221
+ id
222
+ }, props), {
219
223
  className: (0, import_clsx2.default)(
220
224
  typography.paragraph,
221
225
  className,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Paragraph
3
- } from "../chunk-UIQ733QP.js";
3
+ } from "../chunk-VG4EPHJA.js";
4
4
  import "../chunk-RDLEIAQU.js";
5
5
  import "../chunk-ORMEWXMH.js";
6
6
  export {
@@ -204,18 +204,21 @@ var Label = (_a) => {
204
204
  padded,
205
205
  className,
206
206
  color,
207
- align
207
+ align,
208
+ id
208
209
  } = _b, props = __objRest(_b, [
209
210
  "as",
210
211
  "padded",
211
212
  "className",
212
213
  "color",
213
- "align"
214
+ "align",
215
+ "id"
214
216
  ]);
215
217
  const Element = as;
216
218
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
217
219
  Element,
218
220
  __spreadProps(__spreadValues({
221
+ id,
219
222
  className: (0, import_clsx2.default)(
220
223
  typography.label,
221
224
  align === "left" && "text-left",
@@ -302,6 +305,7 @@ function formatCurrencyDisplay(value) {
302
305
  var import_jsx_runtime3 = require("react/jsx-runtime");
303
306
  var InputBase = (_a) => {
304
307
  var _b = _a, {
308
+ id,
305
309
  before,
306
310
  after,
307
311
  type,
@@ -318,6 +322,7 @@ var InputBase = (_a) => {
318
322
  wrapperClassName,
319
323
  focus
320
324
  } = _b, props = __objRest(_b, [
325
+ "id",
321
326
  "before",
322
327
  "after",
323
328
  "type",
@@ -339,6 +344,7 @@ var InputBase = (_a) => {
339
344
  "data-focus": focus || null
340
345
  };
341
346
  const inputRef = (0, import_react.useRef)(null);
347
+ const inputId = `${id}-input`;
342
348
  (0, import_react.useEffect)(() => {
343
349
  var _a2;
344
350
  const input = inputRef.current;
@@ -379,6 +385,8 @@ var InputBase = (_a) => {
379
385
  return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
380
386
  "label",
381
387
  {
388
+ id,
389
+ htmlFor: inputId,
382
390
  ref: inputContainerRef,
383
391
  className: (0, import_clsx4.default)(
384
392
  "w-full flex flex-col",
@@ -392,6 +400,7 @@ var InputBase = (_a) => {
392
400
  /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
393
401
  Label,
394
402
  {
403
+ id: id ? `${id}-label` : void 0,
395
404
  className: (0, import_clsx4.default)(
396
405
  props.disabled || props.readOnly ? "cursor-default" : "cursor-pointer"
397
406
  ),
@@ -428,7 +437,7 @@ var InputBase = (_a) => {
428
437
  type,
429
438
  required
430
439
  }, props), attributes), {
431
- id: props.id,
440
+ id: inputId,
432
441
  className: (0, import_clsx4.default)(
433
442
  "flex-1 outline-none w-full max-w-full min-h-6 min-w-0",
434
443
  "[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none",
@@ -446,7 +455,7 @@ var InputBase = (_a) => {
446
455
  ]
447
456
  }
448
457
  ),
449
- caption
458
+ caption && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { id: id ? `${id}-caption` : void 0, children: caption })
450
459
  ]
451
460
  }
452
461
  );
@@ -460,7 +469,8 @@ var Input = (_a) => {
460
469
  value: propValue,
461
470
  onChange,
462
471
  onBlur,
463
- onClear
472
+ onClear,
473
+ id
464
474
  } = _b, props = __objRest(_b, [
465
475
  "variant",
466
476
  "decimals",
@@ -469,7 +479,8 @@ var Input = (_a) => {
469
479
  "value",
470
480
  "onChange",
471
481
  "onBlur",
472
- "onClear"
482
+ "onClear",
483
+ "id"
473
484
  ]);
474
485
  const [internalValue, setInternalValue] = (0, import_react.useState)("");
475
486
  const [displayValue, setDisplayValue] = (0, import_react.useState)("");
@@ -495,7 +506,9 @@ var Input = (_a) => {
495
506
  }, [propValue, decimals, variant]);
496
507
  const getInputProps = () => {
497
508
  var _a2;
498
- const baseProps = __spreadProps(__spreadValues(__spreadValues({}, props), getDecimalPlaceholder(decimals)), {
509
+ const baseProps = __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, props), {
510
+ id
511
+ }), getDecimalPlaceholder(decimals)), {
499
512
  value: propValue
500
513
  });
501
514
  switch (variant) {
@@ -542,6 +555,7 @@ var Input = (_a) => {
542
555
  return hasValue && !props.readOnly ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
543
556
  Icon,
544
557
  {
558
+ id: id ? `${id}-clear-button` : void 0,
545
559
  name: "close",
546
560
  onClick: handleSearchReset,
547
561
  className: "cursor-pointer absolute right-2 bottom-2/4 translate-y-2/4"
@@ -672,21 +686,28 @@ Percentage.displayName = "Percentage";
672
686
  // src/components/Password.tsx
673
687
  var import_jsx_runtime4 = require("react/jsx-runtime");
674
688
  var Password = (_a) => {
675
- var props = __objRest(_a, []);
689
+ var _b = _a, {
690
+ id
691
+ } = _b, props = __objRest(_b, [
692
+ "id"
693
+ ]);
676
694
  const [show, setShow] = (0, import_react2.useState)(false);
677
695
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
678
696
  InputBase,
679
- __spreadProps(__spreadValues({}, props), {
697
+ __spreadProps(__spreadValues({
698
+ id
699
+ }, props), {
680
700
  type: show ? "text" : "password",
681
- after: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(WhichIcon, { show, setShow })
701
+ after: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(WhichIcon, { id, show, setShow })
682
702
  })
683
703
  );
684
704
  };
685
- var WhichIcon = ({ show, setShow }) => {
705
+ var WhichIcon = ({ id, show, setShow }) => {
686
706
  if (show) {
687
707
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
688
708
  Icon,
689
709
  {
710
+ id: id ? `${id}-toggle-visibility` : void 0,
690
711
  name: "visibility_off",
691
712
  className: "cursor-pointer",
692
713
  onClick: () => setShow(false)
@@ -696,6 +717,7 @@ var WhichIcon = ({ show, setShow }) => {
696
717
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
697
718
  Icon,
698
719
  {
720
+ id: id ? `${id}-toggle-visibility` : void 0,
699
721
  name: "visibility",
700
722
  className: "cursor-pointer",
701
723
  onClick: () => setShow(true)
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import {
3
3
  InputBase
4
- } from "../chunk-OISE6NMA.js";
5
- import "../chunk-S7R37IUP.js";
4
+ } from "../chunk-QV2EFOYF.js";
5
+ import "../chunk-S5K22XTH.js";
6
6
  import {
7
7
  Icon
8
8
  } from "../chunk-IGQVA7SC.js";
@@ -17,21 +17,28 @@ import {
17
17
  import { useState } from "react";
18
18
  import { jsx } from "react/jsx-runtime";
19
19
  var Password = (_a) => {
20
- var props = __objRest(_a, []);
20
+ var _b = _a, {
21
+ id
22
+ } = _b, props = __objRest(_b, [
23
+ "id"
24
+ ]);
21
25
  const [show, setShow] = useState(false);
22
26
  return /* @__PURE__ */ jsx(
23
27
  InputBase,
24
- __spreadProps(__spreadValues({}, props), {
28
+ __spreadProps(__spreadValues({
29
+ id
30
+ }, props), {
25
31
  type: show ? "text" : "password",
26
- after: /* @__PURE__ */ jsx(WhichIcon, { show, setShow })
32
+ after: /* @__PURE__ */ jsx(WhichIcon, { id, show, setShow })
27
33
  })
28
34
  );
29
35
  };
30
- var WhichIcon = ({ show, setShow }) => {
36
+ var WhichIcon = ({ id, show, setShow }) => {
31
37
  if (show) {
32
38
  return /* @__PURE__ */ jsx(
33
39
  Icon,
34
40
  {
41
+ id: id ? `${id}-toggle-visibility` : void 0,
35
42
  name: "visibility_off",
36
43
  className: "cursor-pointer",
37
44
  onClick: () => setShow(false)
@@ -41,6 +48,7 @@ var WhichIcon = ({ show, setShow }) => {
41
48
  return /* @__PURE__ */ jsx(
42
49
  Icon,
43
50
  {
51
+ id: id ? `${id}-toggle-visibility` : void 0,
44
52
  name: "visibility",
45
53
  className: "cursor-pointer",
46
54
  onClick: () => setShow(true)
@@ -205,7 +205,8 @@ var ProjectBar = ({
205
205
  left,
206
206
  right,
207
207
  mobileLeft,
208
- mobileRight
208
+ mobileRight,
209
+ id
209
210
  }) => {
210
211
  const isMobile = useMatchesMobile();
211
212
  const tokenOverrides = isMobile ? {
@@ -227,6 +228,7 @@ var ProjectBar = ({
227
228
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
228
229
  "div",
229
230
  {
231
+ id,
230
232
  style: __spreadValues({}, tokenOverrides),
231
233
  className: (0, import_clsx2.default)(
232
234
  "flex items-center justify-between",
@@ -18,7 +18,8 @@ var ProjectBar = ({
18
18
  left,
19
19
  right,
20
20
  mobileLeft,
21
- mobileRight
21
+ mobileRight,
22
+ id
22
23
  }) => {
23
24
  const isMobile = useMatchesMobile();
24
25
  const tokenOverrides = isMobile ? {
@@ -40,6 +41,7 @@ var ProjectBar = ({
40
41
  return /* @__PURE__ */ jsxs(
41
42
  "div",
42
43
  {
44
+ id,
43
45
  style: __spreadValues({}, tokenOverrides),
44
46
  className: clsx(
45
47
  "flex items-center justify-between",
@@ -203,7 +203,8 @@ var Paragraph = (_a) => {
203
203
  tall,
204
204
  addOverflow,
205
205
  children,
206
- as = "p"
206
+ as = "p",
207
+ id
207
208
  } = _b, props = __objRest(_b, [
208
209
  "className",
209
210
  "color",
@@ -212,12 +213,15 @@ var Paragraph = (_a) => {
212
213
  "tall",
213
214
  "addOverflow",
214
215
  "children",
215
- "as"
216
+ "as",
217
+ "id"
216
218
  ]);
217
219
  const Element = as;
218
220
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
219
221
  Element,
220
- __spreadProps(__spreadValues({}, props), {
222
+ __spreadProps(__spreadValues({
223
+ id
224
+ }, props), {
221
225
  className: (0, import_clsx2.default)(
222
226
  typography.paragraph,
223
227
  className,
@@ -246,16 +250,18 @@ var Radio = (_a) => {
246
250
  error,
247
251
  disabled,
248
252
  checked,
249
- readOnly
253
+ readOnly,
254
+ id
250
255
  } = _b, props = __objRest(_b, [
251
256
  "className",
252
257
  "label",
253
258
  "error",
254
259
  "disabled",
255
260
  "checked",
256
- "readOnly"
261
+ "readOnly",
262
+ "id"
257
263
  ]);
258
- const radioId = props.id;
264
+ const radioId = id;
259
265
  const paragraphColor = disabled ? "text-primary-disabled" : error ? "text-primary-error" : "text-primary-normal";
260
266
  const defaultClassName = (0, import_clsx3.default)(
261
267
  !error && !disabled && "border-border-primary-normal peer-hover:border-border-action-hover peer-hover:bg-background-action-secondary-hover peer-focus:border-border-action-hover peer-focus:bg-background-action-secondary-hover peer-active:border-border-action-active peer-active:bg-background-action-secondary-active peer-checked:border-0 peer-checked:bg-background-action-secondary-hover"
@@ -318,7 +324,7 @@ var Radio = (_a) => {
318
324
  }
319
325
  )
320
326
  ] }),
321
- label && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Paragraph, { padded: true, color: paragraphColor, children: label })
327
+ label && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Paragraph, { id: `${radioId}-label`, padded: true, color: paragraphColor, children: label })
322
328
  ]
323
329
  }
324
330
  );
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  Paragraph
4
- } from "../chunk-UIQ733QP.js";
4
+ } from "../chunk-VG4EPHJA.js";
5
5
  import {
6
6
  baseTransition,
7
7
  componentGap
@@ -21,16 +21,18 @@ var Radio = (_a) => {
21
21
  error,
22
22
  disabled,
23
23
  checked,
24
- readOnly
24
+ readOnly,
25
+ id
25
26
  } = _b, props = __objRest(_b, [
26
27
  "className",
27
28
  "label",
28
29
  "error",
29
30
  "disabled",
30
31
  "checked",
31
- "readOnly"
32
+ "readOnly",
33
+ "id"
32
34
  ]);
33
- const radioId = props.id;
35
+ const radioId = id;
34
36
  const paragraphColor = disabled ? "text-primary-disabled" : error ? "text-primary-error" : "text-primary-normal";
35
37
  const defaultClassName = clsx(
36
38
  !error && !disabled && "border-border-primary-normal peer-hover:border-border-action-hover peer-hover:bg-background-action-secondary-hover peer-focus:border-border-action-hover peer-focus:bg-background-action-secondary-hover peer-active:border-border-action-active peer-active:bg-background-action-secondary-active peer-checked:border-0 peer-checked:bg-background-action-secondary-hover"
@@ -93,7 +95,7 @@ var Radio = (_a) => {
93
95
  }
94
96
  )
95
97
  ] }),
96
- label && /* @__PURE__ */ jsx(Paragraph, { padded: true, color: paragraphColor, children: label })
98
+ label && /* @__PURE__ */ jsx(Paragraph, { id: `${radioId}-label`, padded: true, color: paragraphColor, children: label })
97
99
  ]
98
100
  }
99
101
  );
@@ -204,18 +204,21 @@ var Label = (_a) => {
204
204
  padded,
205
205
  className,
206
206
  color,
207
- align
207
+ align,
208
+ id
208
209
  } = _b, props = __objRest(_b, [
209
210
  "as",
210
211
  "padded",
211
212
  "className",
212
213
  "color",
213
- "align"
214
+ "align",
215
+ "id"
214
216
  ]);
215
217
  const Element = as;
216
218
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
217
219
  Element,
218
220
  __spreadProps(__spreadValues({
221
+ id,
219
222
  className: (0, import_clsx2.default)(
220
223
  typography.label,
221
224
  align === "left" && "text-left",
@@ -302,6 +305,7 @@ function formatCurrencyDisplay(value) {
302
305
  var import_jsx_runtime3 = require("react/jsx-runtime");
303
306
  var InputBase = (_a) => {
304
307
  var _b = _a, {
308
+ id,
305
309
  before,
306
310
  after,
307
311
  type,
@@ -318,6 +322,7 @@ var InputBase = (_a) => {
318
322
  wrapperClassName,
319
323
  focus
320
324
  } = _b, props = __objRest(_b, [
325
+ "id",
321
326
  "before",
322
327
  "after",
323
328
  "type",
@@ -339,6 +344,7 @@ var InputBase = (_a) => {
339
344
  "data-focus": focus || null
340
345
  };
341
346
  const inputRef = (0, import_react.useRef)(null);
347
+ const inputId = `${id}-input`;
342
348
  (0, import_react.useEffect)(() => {
343
349
  var _a2;
344
350
  const input = inputRef.current;
@@ -379,6 +385,8 @@ var InputBase = (_a) => {
379
385
  return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
380
386
  "label",
381
387
  {
388
+ id,
389
+ htmlFor: inputId,
382
390
  ref: inputContainerRef,
383
391
  className: (0, import_clsx4.default)(
384
392
  "w-full flex flex-col",
@@ -392,6 +400,7 @@ var InputBase = (_a) => {
392
400
  /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
393
401
  Label,
394
402
  {
403
+ id: id ? `${id}-label` : void 0,
395
404
  className: (0, import_clsx4.default)(
396
405
  props.disabled || props.readOnly ? "cursor-default" : "cursor-pointer"
397
406
  ),
@@ -428,7 +437,7 @@ var InputBase = (_a) => {
428
437
  type,
429
438
  required
430
439
  }, props), attributes), {
431
- id: props.id,
440
+ id: inputId,
432
441
  className: (0, import_clsx4.default)(
433
442
  "flex-1 outline-none w-full max-w-full min-h-6 min-w-0",
434
443
  "[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none",
@@ -446,7 +455,7 @@ var InputBase = (_a) => {
446
455
  ]
447
456
  }
448
457
  ),
449
- caption
458
+ caption && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { id: id ? `${id}-caption` : void 0, children: caption })
450
459
  ]
451
460
  }
452
461
  );
@@ -460,7 +469,8 @@ var Input = (_a) => {
460
469
  value: propValue,
461
470
  onChange,
462
471
  onBlur,
463
- onClear
472
+ onClear,
473
+ id
464
474
  } = _b, props = __objRest(_b, [
465
475
  "variant",
466
476
  "decimals",
@@ -469,7 +479,8 @@ var Input = (_a) => {
469
479
  "value",
470
480
  "onChange",
471
481
  "onBlur",
472
- "onClear"
482
+ "onClear",
483
+ "id"
473
484
  ]);
474
485
  const [internalValue, setInternalValue] = (0, import_react.useState)("");
475
486
  const [displayValue, setDisplayValue] = (0, import_react.useState)("");
@@ -495,7 +506,9 @@ var Input = (_a) => {
495
506
  }, [propValue, decimals, variant]);
496
507
  const getInputProps = () => {
497
508
  var _a2;
498
- const baseProps = __spreadProps(__spreadValues(__spreadValues({}, props), getDecimalPlaceholder(decimals)), {
509
+ const baseProps = __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, props), {
510
+ id
511
+ }), getDecimalPlaceholder(decimals)), {
499
512
  value: propValue
500
513
  });
501
514
  switch (variant) {
@@ -542,6 +555,7 @@ var Input = (_a) => {
542
555
  return hasValue && !props.readOnly ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
543
556
  Icon,
544
557
  {
558
+ id: id ? `${id}-clear-button` : void 0,
545
559
  name: "close",
546
560
  onClick: handleSearchReset,
547
561
  className: "cursor-pointer absolute right-2 bottom-2/4 translate-y-2/4"
@@ -673,23 +687,23 @@ Percentage.displayName = "Percentage";
673
687
  var import_jsx_runtime4 = require("react/jsx-runtime");
674
688
  var Search = (_a) => {
675
689
  var _b = _a, {
690
+ id,
676
691
  label,
677
692
  error,
678
693
  children,
679
694
  readOnly,
680
695
  renderMenu,
681
696
  onClick,
682
- className,
683
697
  wrapperClassName,
684
698
  removeRoundness
685
699
  } = _b, props = __objRest(_b, [
700
+ "id",
686
701
  "label",
687
702
  "error",
688
703
  "children",
689
704
  "readOnly",
690
705
  "renderMenu",
691
706
  "onClick",
692
- "className",
693
707
  "wrapperClassName",
694
708
  "removeRoundness"
695
709
  ]);
@@ -712,6 +726,7 @@ var Search = (_a) => {
712
726
  /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
713
727
  Input,
714
728
  __spreadValues({
729
+ id,
715
730
  variant: "search",
716
731
  inputContainerRef,
717
732
  ref: inputRef,
@@ -735,10 +750,14 @@ var Search = (_a) => {
735
750
  setShow(true);
736
751
  if (["ArrowUp", "ArrowDown"].includes(e.key)) {
737
752
  e.preventDefault();
738
- const menu = document.querySelector(`[data-menu="${searchMenuName}"]`);
753
+ const menu = document.querySelector(
754
+ `[data-menu="${searchMenuName}"]`
755
+ );
739
756
  const selectedMenuOption = menu == null ? void 0 : menu.querySelector("[data-selected]");
740
757
  if (selectedMenuOption) {
741
- const allMenuOptions = Array.from((menu == null ? void 0 : menu.querySelectorAll('[role="menuitem"]')) || []);
758
+ const allMenuOptions = Array.from(
759
+ (menu == null ? void 0 : menu.querySelectorAll('[role="menuitem"]')) || []
760
+ );
742
761
  const currentIndex = allMenuOptions.indexOf(selectedMenuOption);
743
762
  let targetOption;
744
763
  if (e.key === "ArrowDown") {
@@ -748,7 +767,9 @@ var Search = (_a) => {
748
767
  }
749
768
  targetOption == null ? void 0 : targetOption.focus();
750
769
  } else {
751
- const toFocusMenuOption = e.key === "ArrowDown" ? menu == null ? void 0 : menu.querySelector('[role="menuitem"]') : menu == null ? void 0 : menu.querySelector('[role="menuitem"]:last-child');
770
+ const toFocusMenuOption = e.key === "ArrowDown" ? menu == null ? void 0 : menu.querySelector('[role="menuitem"]') : menu == null ? void 0 : menu.querySelector(
771
+ '[role="menuitem"]:last-child'
772
+ );
752
773
  toFocusMenuOption == null ? void 0 : toFocusMenuOption.focus();
753
774
  }
754
775
  }
@@ -760,6 +781,7 @@ var Search = (_a) => {
760
781
  }, props)
761
782
  ),
762
783
  renderMenu ? renderMenu({
784
+ id: `${id}-menu`,
763
785
  positionTo: inputContainerRef,
764
786
  show,
765
787
  setShow,