@opengovsg/oui 0.0.0-snapshot-20251002073151 → 0.0.0-snapshot-20251201075851

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 (141) hide show
  1. package/dist/cjs/badge/badge.cjs +4 -4
  2. package/dist/cjs/badge/use-badge.cjs +6 -6
  3. package/dist/cjs/banner/banner.cjs +10 -5
  4. package/dist/cjs/button/button.cjs +3 -3
  5. package/dist/cjs/calendar/calendar-bottom-content.cjs +3 -3
  6. package/dist/cjs/calendar/calendar-header.cjs +2 -2
  7. package/dist/cjs/calendar/calendar-month-day-selector.cjs +4 -3
  8. package/dist/cjs/calendar/calendar.cjs +4 -4
  9. package/dist/cjs/calendar/hooks/use-calendar-selectors.cjs +4 -4
  10. package/dist/cjs/calendar/utils.cjs +3 -3
  11. package/dist/cjs/combo-box/combo-box-fuzzy.cjs +6 -6
  12. package/dist/cjs/combo-box/combo-box-item.cjs +2 -2
  13. package/dist/cjs/combo-box/combo-box.cjs +3 -3
  14. package/dist/cjs/date-field/date-field.cjs +15 -6
  15. package/dist/cjs/date-picker/date-picker.cjs +36 -11
  16. package/dist/cjs/date-range-picker/date-range-picker.cjs +3 -3
  17. package/dist/cjs/field/field.cjs +20 -6
  18. package/dist/cjs/field/index.cjs +1 -0
  19. package/dist/cjs/file-dropzone/contexts.cjs +18 -0
  20. package/dist/cjs/file-dropzone/file-dropzone.cjs +311 -0
  21. package/dist/cjs/file-dropzone/file-info.cjs +146 -0
  22. package/dist/cjs/file-dropzone/index.cjs +13 -0
  23. package/dist/cjs/file-dropzone/types.cjs +3 -0
  24. package/dist/cjs/file-dropzone/utils.cjs +31 -0
  25. package/dist/cjs/govt-banner/govt-banner.cjs +3 -3
  26. package/dist/cjs/hooks/use-callback-ref.cjs +4 -4
  27. package/dist/cjs/hooks/use-controllable-state.cjs +2 -2
  28. package/dist/cjs/index.cjs +10 -0
  29. package/dist/cjs/input/input.cjs +2 -2
  30. package/dist/cjs/menu/menu.cjs +6 -6
  31. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/Icon.cjs +4 -4
  32. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/createLucideIcon.cjs +3 -3
  33. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/plus.cjs +22 -0
  34. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/trash-2.cjs +25 -0
  35. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/upload.cjs +23 -0
  36. package/dist/cjs/number-field/index.cjs +8 -0
  37. package/dist/cjs/number-field/number-field.cjs +136 -0
  38. package/dist/cjs/pagination/hooks/use-pagination.cjs +7 -7
  39. package/dist/cjs/pagination/pagination.cjs +6 -6
  40. package/dist/cjs/pagination/use-pagination-item.cjs +7 -8
  41. package/dist/cjs/pagination/use-pagination.cjs +8 -8
  42. package/dist/cjs/range-calendar/range-calendar.cjs +6 -6
  43. package/dist/cjs/ripple/use-ripple.cjs +4 -4
  44. package/dist/cjs/select/select.cjs +2 -2
  45. package/dist/cjs/spinner/use-spinner.cjs +3 -3
  46. package/dist/cjs/system/react-utils/context.cjs +3 -3
  47. package/dist/cjs/system/react-utils/refs.cjs +3 -3
  48. package/dist/cjs/system/utils.cjs +3 -3
  49. package/dist/cjs/tabs/tabs.cjs +2 -2
  50. package/dist/cjs/tag-field/tag-field-item.cjs +2 -2
  51. package/dist/cjs/tag-field/tag-field-list.cjs +4 -4
  52. package/dist/cjs/tag-field/tag-field-root.cjs +14 -14
  53. package/dist/cjs/tag-field/tag-field-state-context.cjs +2 -2
  54. package/dist/cjs/tag-field/tag-field-tag-list.cjs +3 -3
  55. package/dist/cjs/tag-field/tag-field-trigger.cjs +2 -2
  56. package/dist/cjs/tag-field/tag-field.cjs +2 -2
  57. package/dist/cjs/tag-field/use-tag-field-state.cjs +6 -6
  58. package/dist/cjs/tag-field/use-tag-field.cjs +4 -4
  59. package/dist/cjs/text-area/text-area.cjs +2 -2
  60. package/dist/cjs/toggle/toggle.cjs +3 -3
  61. package/dist/esm/banner/banner.js +7 -2
  62. package/dist/esm/calendar/calendar-month-day-selector.js +2 -1
  63. package/dist/esm/date-field/date-field.js +12 -3
  64. package/dist/esm/date-picker/date-picker.js +34 -9
  65. package/dist/esm/field/field.js +20 -7
  66. package/dist/esm/field/index.js +1 -1
  67. package/dist/esm/file-dropzone/contexts.js +13 -0
  68. package/dist/esm/file-dropzone/file-dropzone.js +309 -0
  69. package/dist/esm/file-dropzone/file-info.js +144 -0
  70. package/dist/esm/file-dropzone/index.js +4 -0
  71. package/dist/esm/file-dropzone/types.js +1 -0
  72. package/dist/esm/file-dropzone/utils.js +28 -0
  73. package/dist/esm/index.js +5 -1
  74. package/dist/esm/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/plus.js +17 -0
  75. package/dist/esm/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/trash-2.js +20 -0
  76. package/dist/esm/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/upload.js +18 -0
  77. package/dist/esm/number-field/index.js +2 -0
  78. package/dist/esm/number-field/number-field.js +134 -0
  79. package/dist/esm/pagination/use-pagination-item.js +5 -6
  80. package/dist/types/banner/banner.d.ts +1 -1
  81. package/dist/types/banner/banner.d.ts.map +1 -1
  82. package/dist/types/calendar/calendar-month-day-selector.d.ts.map +1 -1
  83. package/dist/types/date-field/date-field.d.ts +1 -0
  84. package/dist/types/date-field/date-field.d.ts.map +1 -1
  85. package/dist/types/date-picker/date-picker.d.ts +5 -2
  86. package/dist/types/date-picker/date-picker.d.ts.map +1 -1
  87. package/dist/types/field/field.d.ts +4 -1
  88. package/dist/types/field/field.d.ts.map +1 -1
  89. package/dist/types/file-dropzone/contexts.d.ts +4 -0
  90. package/dist/types/file-dropzone/contexts.d.ts.map +1 -0
  91. package/dist/types/file-dropzone/file-dropzone.d.ts +82 -0
  92. package/dist/types/file-dropzone/file-dropzone.d.ts.map +1 -0
  93. package/dist/types/file-dropzone/file-info.d.ts +9 -0
  94. package/dist/types/file-dropzone/file-info.d.ts.map +1 -0
  95. package/dist/types/file-dropzone/index.d.ts +7 -0
  96. package/dist/types/file-dropzone/index.d.ts.map +1 -0
  97. package/dist/types/file-dropzone/types.d.ts +24 -0
  98. package/dist/types/file-dropzone/types.d.ts.map +1 -0
  99. package/dist/types/file-dropzone/utils.d.ts +8 -0
  100. package/dist/types/file-dropzone/utils.d.ts.map +1 -0
  101. package/dist/types/index.d.mts +2 -0
  102. package/dist/types/index.d.ts +2 -0
  103. package/dist/types/index.d.ts.map +1 -1
  104. package/dist/types/menu/menu.d.ts.map +1 -1
  105. package/dist/types/number-field/index.d.ts +3 -0
  106. package/dist/types/number-field/index.d.ts.map +1 -0
  107. package/dist/types/number-field/number-field.d.ts +24 -0
  108. package/dist/types/number-field/number-field.d.ts.map +1 -0
  109. package/package.json +12 -8
  110. package/dist/cjs/node_modules/.pnpm/@react-aria_focus@3.20.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/focus/dist/useFocusRing.cjs +0 -45
  111. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/context.cjs +0 -21
  112. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/textSelection.cjs +0 -72
  113. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useFocus.cjs +0 -60
  114. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useFocusVisible.cjs +0 -210
  115. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useFocusWithin.cjs +0 -100
  116. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useHover.cjs +0 -152
  117. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/usePress.cjs +0 -676
  118. package/dist/cjs/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/utils.cjs +0 -160
  119. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_check_private_redeclaration.cjs +0 -9
  120. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.cjs +0 -9
  121. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.cjs +0 -16
  122. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.cjs +0 -9
  123. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_get.cjs +0 -11
  124. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_init.cjs +0 -10
  125. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_set.cjs +0 -12
  126. package/dist/esm/node_modules/.pnpm/@react-aria_focus@3.20.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/focus/dist/useFocusRing.js +0 -43
  127. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/context.js +0 -19
  128. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/textSelection.js +0 -69
  129. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useFocus.js +0 -58
  130. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useFocusVisible.js +0 -205
  131. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useFocusWithin.js +0 -98
  132. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useHover.js +0 -150
  133. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/usePress.js +0 -674
  134. package/dist/esm/node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/utils.js +0 -155
  135. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_check_private_redeclaration.js +0 -7
  136. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.js +0 -7
  137. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.js +0 -14
  138. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.js +0 -7
  139. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_get.js +0 -9
  140. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_init.js +0 -8
  141. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_set.js +0 -10
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var $670gB$react = require('react');
5
+ var react = require('react');
6
6
  var defaultAttributes = require('./defaultAttributes.cjs');
7
7
  var utils = require('./shared/src/utils.cjs');
8
8
 
@@ -14,7 +14,7 @@ var utils = require('./shared/src/utils.cjs');
14
14
  */
15
15
 
16
16
 
17
- const Icon = $670gB$react.forwardRef(
17
+ const Icon = react.forwardRef(
18
18
  ({
19
19
  color = "currentColor",
20
20
  size = 24,
@@ -25,7 +25,7 @@ const Icon = $670gB$react.forwardRef(
25
25
  iconNode,
26
26
  ...rest
27
27
  }, ref) => {
28
- return $670gB$react.createElement(
28
+ return react.createElement(
29
29
  "svg",
30
30
  {
31
31
  ref,
@@ -38,7 +38,7 @@ const Icon = $670gB$react.forwardRef(
38
38
  ...rest
39
39
  },
40
40
  [
41
- ...iconNode.map(([tag, attrs]) => $670gB$react.createElement(tag, attrs)),
41
+ ...iconNode.map(([tag, attrs]) => react.createElement(tag, attrs)),
42
42
  ...Array.isArray(children) ? children : [children]
43
43
  ]
44
44
  );
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var $670gB$react = require('react');
5
+ var react = require('react');
6
6
  var utils = require('./shared/src/utils.cjs');
7
7
  var Icon = require('./Icon.cjs');
8
8
 
@@ -15,8 +15,8 @@ var Icon = require('./Icon.cjs');
15
15
 
16
16
 
17
17
  const createLucideIcon = (iconName, iconNode) => {
18
- const Component = $670gB$react.forwardRef(
19
- ({ className, ...props }, ref) => $670gB$react.createElement(Icon.default, {
18
+ const Component = react.forwardRef(
19
+ ({ className, ...props }, ref) => react.createElement(Icon.default, {
20
20
  ref,
21
21
  iconNode,
22
22
  className: utils.mergeClasses(`lucide-${utils.toKebabCase(iconName)}`, className),
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var createLucideIcon = require('../createLucideIcon.cjs');
6
+
7
+ /**
8
+ * @license lucide-react v0.475.0 - ISC
9
+ *
10
+ * This source code is licensed under the ISC license.
11
+ * See the LICENSE file in the root directory of this source tree.
12
+ */
13
+
14
+
15
+ const __iconNode = [
16
+ ["path", { d: "M5 12h14", key: "1ays0h" }],
17
+ ["path", { d: "M12 5v14", key: "s699le" }]
18
+ ];
19
+ const Plus = createLucideIcon.default("Plus", __iconNode);
20
+
21
+ exports.__iconNode = __iconNode;
22
+ exports.default = Plus;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var createLucideIcon = require('../createLucideIcon.cjs');
6
+
7
+ /**
8
+ * @license lucide-react v0.475.0 - ISC
9
+ *
10
+ * This source code is licensed under the ISC license.
11
+ * See the LICENSE file in the root directory of this source tree.
12
+ */
13
+
14
+
15
+ const __iconNode = [
16
+ ["path", { d: "M3 6h18", key: "d0wm0j" }],
17
+ ["path", { d: "M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6", key: "4alrt4" }],
18
+ ["path", { d: "M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2", key: "v07s0e" }],
19
+ ["line", { x1: "10", x2: "10", y1: "11", y2: "17", key: "1uufr5" }],
20
+ ["line", { x1: "14", x2: "14", y1: "11", y2: "17", key: "xtxkd" }]
21
+ ];
22
+ const Trash2 = createLucideIcon.default("Trash2", __iconNode);
23
+
24
+ exports.__iconNode = __iconNode;
25
+ exports.default = Trash2;
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var createLucideIcon = require('../createLucideIcon.cjs');
6
+
7
+ /**
8
+ * @license lucide-react v0.475.0 - ISC
9
+ *
10
+ * This source code is licensed under the ISC license.
11
+ * See the LICENSE file in the root directory of this source tree.
12
+ */
13
+
14
+
15
+ const __iconNode = [
16
+ ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
17
+ ["polyline", { points: "17 8 12 3 7 8", key: "t8dd8p" }],
18
+ ["line", { x1: "12", x2: "12", y1: "3", y2: "15", key: "widbto" }]
19
+ ];
20
+ const Upload = createLucideIcon.default("Upload", __iconNode);
21
+
22
+ exports.__iconNode = __iconNode;
23
+ exports.default = Upload;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ 'use strict';
3
+
4
+ var numberField = require('./number-field.cjs');
5
+
6
+
7
+
8
+ exports.NumberField = numberField.NumberField;
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ "use client";
3
+ 'use strict';
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var reactAriaComponents = require('react-aria-components');
7
+ var ouiTheme = require('@opengovsg/oui-theme');
8
+ var utils = require('../system/utils.cjs');
9
+ var minus = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/minus.cjs');
10
+ var plus = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/plus.cjs');
11
+ var field = require('../field/field.cjs');
12
+ var input = require('../input/input.cjs');
13
+ var button = require('../button/button.cjs');
14
+
15
+ function NumberField(originalProps) {
16
+ const [
17
+ {
18
+ label,
19
+ description,
20
+ errorMessage,
21
+ classNames,
22
+ inputProps,
23
+ startContent,
24
+ endContent,
25
+ hideSteppers,
26
+ ...props
27
+ },
28
+ variantProps
29
+ ] = utils.mapPropsVariants(originalProps, ouiTheme.numberFieldStyles.variantKeys);
30
+ const styles = ouiTheme.numberFieldStyles(variantProps);
31
+ return /* @__PURE__ */ jsxRuntime.jsxs(
32
+ reactAriaComponents.NumberField,
33
+ {
34
+ ...props,
35
+ "data-hide-steppers": ouiTheme.dataAttr(!!hideSteppers),
36
+ "data-has-start-content": ouiTheme.dataAttr(!!startContent),
37
+ "data-has-end-content": ouiTheme.dataAttr(!!endContent),
38
+ className: ouiTheme.composeTailwindRenderProps(
39
+ props.className,
40
+ styles.base({
41
+ className: classNames?.base
42
+ })
43
+ ),
44
+ children: [
45
+ label && /* @__PURE__ */ jsxRuntime.jsx(
46
+ field.Label,
47
+ {
48
+ className: styles.label({ className: classNames?.label }),
49
+ size: variantProps.size,
50
+ children: label
51
+ }
52
+ ),
53
+ /* @__PURE__ */ jsxRuntime.jsx(field.FieldGroup, { className: styles.field({ className: classNames?.field }), children: (renderProps) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
54
+ startContent,
55
+ /* @__PURE__ */ jsxRuntime.jsx(
56
+ input.Input,
57
+ {
58
+ size: variantProps.size,
59
+ variant: "unstyled",
60
+ className: styles.input({
61
+ className: classNames?.input
62
+ }),
63
+ ...inputProps
64
+ }
65
+ ),
66
+ endContent,
67
+ !hideSteppers && /* @__PURE__ */ jsxRuntime.jsxs(
68
+ "div",
69
+ {
70
+ className: ouiTheme.fieldBorderStyles({
71
+ ...renderProps,
72
+ className: ouiTheme.cn(
73
+ styles.stepperContainer({
74
+ className: classNames?.stepperContainer
75
+ })
76
+ )
77
+ }),
78
+ children: [
79
+ /* @__PURE__ */ jsxRuntime.jsx(
80
+ button.Button,
81
+ {
82
+ className: styles.decrement({
83
+ className: classNames?.decrement
84
+ }),
85
+ size: variantProps.size,
86
+ isIconOnly: true,
87
+ variant: "clear",
88
+ color: "neutral",
89
+ slot: "decrement",
90
+ children: /* @__PURE__ */ jsxRuntime.jsx(minus.default, { "aria-hidden": true })
91
+ }
92
+ ),
93
+ /* @__PURE__ */ jsxRuntime.jsx(
94
+ button.Button,
95
+ {
96
+ className: styles.increment({
97
+ className: classNames?.increment
98
+ }),
99
+ size: variantProps.size,
100
+ isIconOnly: true,
101
+ variant: "clear",
102
+ color: "neutral",
103
+ slot: "increment",
104
+ children: /* @__PURE__ */ jsxRuntime.jsx(plus.default, { "aria-hidden": true })
105
+ }
106
+ )
107
+ ]
108
+ }
109
+ )
110
+ ] }) }),
111
+ description && /* @__PURE__ */ jsxRuntime.jsx(
112
+ field.Description,
113
+ {
114
+ className: styles.description({
115
+ className: classNames?.description
116
+ }),
117
+ size: variantProps.size,
118
+ children: description
119
+ }
120
+ ),
121
+ /* @__PURE__ */ jsxRuntime.jsx(
122
+ field.FieldError,
123
+ {
124
+ className: styles.error({
125
+ className: classNames?.error
126
+ }),
127
+ size: variantProps.size,
128
+ children: errorMessage
129
+ }
130
+ )
131
+ ]
132
+ }
133
+ );
134
+ }
135
+
136
+ exports.NumberField = NumberField;
@@ -2,7 +2,7 @@
2
2
  "use client";
3
3
  'use strict';
4
4
 
5
- var $670gB$react = require('react');
5
+ var react = require('react');
6
6
  var i18n = require('@react-aria/i18n');
7
7
 
8
8
  var PaginationItemType = /* @__PURE__ */ ((PaginationItemType2) => {
@@ -25,22 +25,22 @@ function usePagination(props) {
25
25
  showControls = false,
26
26
  onChange
27
27
  } = props;
28
- const [activePage, setActivePage] = $670gB$react.useState(page || initialPage);
28
+ const [activePage, setActivePage] = react.useState(page || initialPage);
29
29
  const { direction } = i18n.useLocale();
30
30
  const isRTL = direction === "rtl";
31
- const onChangeActivePage = $670gB$react.useCallback(
31
+ const onChangeActivePage = react.useCallback(
32
32
  (newPage) => {
33
33
  setActivePage(newPage);
34
34
  onChange?.(newPage);
35
35
  },
36
36
  [onChange]
37
37
  );
38
- $670gB$react.useEffect(() => {
38
+ react.useEffect(() => {
39
39
  if (page && page !== activePage) {
40
40
  setActivePage(page);
41
41
  }
42
42
  }, [activePage, page]);
43
- const setPage = $670gB$react.useCallback(
43
+ const setPage = react.useCallback(
44
44
  (pageNumber) => {
45
45
  if (pageNumber <= 0) {
46
46
  onChangeActivePage(1);
@@ -56,7 +56,7 @@ function usePagination(props) {
56
56
  const previous = () => setPage(activePage - 1);
57
57
  const first = () => setPage(1);
58
58
  const last = () => setPage(total);
59
- const formatRange = $670gB$react.useCallback(
59
+ const formatRange = react.useCallback(
60
60
  (range2) => {
61
61
  if (showControls) {
62
62
  return ["prev" /* PREV */, ...range2, "next" /* NEXT */];
@@ -66,7 +66,7 @@ function usePagination(props) {
66
66
  // eslint-disable-next-line react-hooks/exhaustive-deps
67
67
  [isRTL, showControls]
68
68
  );
69
- const paginationRange = $670gB$react.useMemo(() => {
69
+ const paginationRange = react.useMemo(() => {
70
70
  const totalPageNumbers = siblings * 2 + 3 + boundaries * 2;
71
71
  if (totalPageNumbers >= total) {
72
72
  return formatRange(range(1, total));
@@ -3,7 +3,7 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var $670gB$react = require('react');
6
+ var react = require('react');
7
7
  var i18n = require('@react-aria/i18n');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
9
  var utils = require('../system/utils.cjs');
@@ -40,7 +40,7 @@ const Pagination = utils.forwardRef((props, ref) => {
40
40
  } = usePagination.usePagination({ ...props, ref });
41
41
  const { direction } = i18n.useLocale();
42
42
  const isRTL = direction === "rtl";
43
- const renderChevronIcon = $670gB$react.useCallback(
43
+ const renderChevronIcon = react.useCallback(
44
44
  (key) => {
45
45
  if (key === usePagination$1.PaginationItemType.PREV && !isRTL || key === usePagination$1.PaginationItemType.NEXT && isRTL) {
46
46
  return /* @__PURE__ */ jsxRuntime.jsx(chevronLeft.default, {});
@@ -56,7 +56,7 @@ const Pagination = utils.forwardRef((props, ref) => {
56
56
  },
57
57
  [isRTL, slots, classNames?.chevronNext]
58
58
  );
59
- const renderPrevItem = $670gB$react.useCallback(() => {
59
+ const renderPrevItem = react.useCallback(() => {
60
60
  return /* @__PURE__ */ jsxRuntime.jsx(
61
61
  paginationItem.PaginationItem,
62
62
  {
@@ -82,7 +82,7 @@ const Pagination = utils.forwardRef((props, ref) => {
82
82
  onPrevious,
83
83
  renderChevronIcon
84
84
  ]);
85
- const renderNextItem = $670gB$react.useCallback(() => {
85
+ const renderNextItem = react.useCallback(() => {
86
86
  return /* @__PURE__ */ jsxRuntime.jsx(
87
87
  paginationItem.PaginationItem,
88
88
  {
@@ -109,7 +109,7 @@ const Pagination = utils.forwardRef((props, ref) => {
109
109
  onNext,
110
110
  renderChevronIcon
111
111
  ]);
112
- const renderItem = $670gB$react.useCallback(
112
+ const renderItem = react.useCallback(
113
113
  (value, index) => {
114
114
  const isBefore = index < range.indexOf(activePage);
115
115
  if (renderItemProp && typeof renderItemProp === "function") {
@@ -209,7 +209,7 @@ const Pagination = utils.forwardRef((props, ref) => {
209
209
  usePagination$1.PaginationItemType.DOTS + isBefore
210
210
  );
211
211
  }
212
- return /* @__PURE__ */ $670gB$react.createElement(
212
+ return /* @__PURE__ */ react.createElement(
213
213
  paginationItem.PaginationItem,
214
214
  {
215
215
  ...getItemProps({ value }),
@@ -2,11 +2,10 @@
2
2
  "use client";
3
3
  'use strict';
4
4
 
5
- var $670gB$react = require('react');
6
- var useFocusRing = require('../node_modules/.pnpm/@react-aria_focus@3.20.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/focus/dist/useFocusRing.cjs');
5
+ var react = require('react');
6
+ var focus = require('@react-aria/focus');
7
+ var interactions = require('@react-aria/interactions');
7
8
  var utils = require('@react-aria/utils');
8
- var useHover = require('../node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/useHover.cjs');
9
- var usePress = require('../node_modules/.pnpm/@react-aria_interactions@3.25.3_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@react-aria/interactions/dist/usePress.cjs');
10
9
  var ouiTheme = require('@opengovsg/oui-theme');
11
10
  var filterDomProps = require('../system/react-utils/filter-dom-props.cjs');
12
11
  var refs = require('../system/react-utils/refs.cjs');
@@ -30,16 +29,16 @@ function usePaginationItem(props) {
30
29
  const shouldFilterDOMProps = typeof Component === "string";
31
30
  const domRef = refs.useDomRef(ref);
32
31
  const router = utils.useRouter();
33
- const ariaLabel = $670gB$react.useMemo(
32
+ const ariaLabel = react.useMemo(
34
33
  () => isActive ? `${getAriaLabel?.(value)} active` : getAriaLabel?.(value),
35
34
  [isActive, getAriaLabel, value]
36
35
  );
37
- const { isPressed, pressProps } = usePress.usePress({
36
+ const { isPressed, pressProps } = interactions.usePress({
38
37
  isDisabled,
39
38
  onPress
40
39
  });
41
- const { focusProps, isFocused, isFocusVisible } = useFocusRing.useFocusRing({});
42
- const { isHovered, hoverProps } = useHover.useHover({ isDisabled });
40
+ const { focusProps, isFocused, isFocusVisible } = focus.useFocusRing({});
41
+ const { isHovered, hoverProps } = interactions.useHover({ isDisabled });
43
42
  const getItemProps = (props2 = {}) => {
44
43
  return {
45
44
  ref: domRef,
@@ -2,7 +2,7 @@
2
2
  "use client";
3
3
  'use strict';
4
4
 
5
- var $670gB$react = require('react');
5
+ var react = require('react');
6
6
  var scrollIntoView = require('scroll-into-view-if-needed');
7
7
  var useDeepCompare = require('use-deep-compare');
8
8
  var usehooksTs = require('usehooks-ts');
@@ -37,9 +37,9 @@ function usePagination(originalProps) {
37
37
  } = props;
38
38
  const Component = as || "nav";
39
39
  const domRef = refs.useDomRef(ref);
40
- const cursorRef = $670gB$react.useRef(null);
41
- const itemsRef = $670gB$react.useRef(null);
42
- const cursorTimer = $670gB$react.useRef(null);
40
+ const cursorRef = react.useRef(null);
41
+ const itemsRef = react.useRef(null);
42
+ const cursorTimer = react.useRef(null);
43
43
  const disableAnimation = originalProps?.disableAnimation ?? false;
44
44
  const disableCursorAnimation = originalProps?.disableCursorAnimation ?? disableAnimation ?? false;
45
45
  function getItemsRefMap() {
@@ -56,7 +56,7 @@ function usePagination(originalProps) {
56
56
  map.delete(value);
57
57
  }
58
58
  }
59
- const scrollTo = $670gB$react.useCallback(
59
+ const scrollTo = react.useCallback(
60
60
  (value, skipAnimation) => {
61
61
  const map = getItemsRefMap();
62
62
  const node = map.get(value);
@@ -103,13 +103,13 @@ function usePagination(originalProps) {
103
103
  onChange
104
104
  });
105
105
  const [setRef, isVisible] = usehooksTs.useIntersectionObserver();
106
- $670gB$react.useEffect(() => {
106
+ react.useEffect(() => {
107
107
  if (domRef.current) {
108
108
  setRef(domRef.current);
109
109
  }
110
110
  }, [domRef, setRef]);
111
- const activePageRef = $670gB$react.useRef(activePage);
112
- $670gB$react.useEffect(() => {
111
+ const activePageRef = react.useRef(activePage);
112
+ react.useEffect(() => {
113
113
  if (activePage && !disableAnimation && isVisible) {
114
114
  scrollTo(activePage, activePage === activePageRef.current);
115
115
  }
@@ -3,7 +3,7 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var $670gB$react = require('react');
6
+ var react = require('react');
7
7
  var date = require('@internationalized/date');
8
8
  var reactAriaComponents = require('react-aria-components');
9
9
  var useDeepCompare = require('use-deep-compare');
@@ -36,7 +36,7 @@ const RangeCalendar = utils.forwardRefGeneric(function RangeCalendar2(originalPr
36
36
  () => ouiTheme.calendarStyles({ ...variantProps, isRange: true }),
37
37
  [variantProps]
38
38
  );
39
- const context = $670gB$react.useMemo(
39
+ const context = react.useMemo(
40
40
  () => ({
41
41
  slots,
42
42
  classNames,
@@ -46,7 +46,7 @@ const RangeCalendar = utils.forwardRefGeneric(function RangeCalendar2(originalPr
46
46
  [className, classNames, slots, variantProps.size]
47
47
  );
48
48
  const numberOfVisibleMonths = props.visibleDuration?.months ?? 1;
49
- const dateToHighlight = $670gB$react.useMemo(() => {
49
+ const dateToHighlight = react.useMemo(() => {
50
50
  if (props.defaultFocusedValue !== void 0) {
51
51
  return props.defaultFocusedValue;
52
52
  }
@@ -140,7 +140,7 @@ const RangeCalendar = utils.forwardRefGeneric(function RangeCalendar2(originalPr
140
140
  const RangeCalendarStateWrapper = ({
141
141
  children
142
142
  }) => {
143
- const state = $670gB$react.useContext(reactAriaComponents.RangeCalendarStateContext);
143
+ const state = react.useContext(reactAriaComponents.RangeCalendarStateContext);
144
144
  return /* @__PURE__ */ jsxRuntime.jsx(reactAriaComponents.Provider, { values: [[agnosticCalendarStateContext.AgnosticCalendarStateContext, state]], children });
145
145
  };
146
146
  const RangeCalendarCell = ({
@@ -150,9 +150,9 @@ const RangeCalendarCell = ({
150
150
  firstDayOfWeek
151
151
  }) => {
152
152
  const { classNames, slots } = calendarStyleContext.useCalendarStyleContext();
153
- const state = $670gB$react.useContext(agnosticCalendarStateContext.AgnosticCalendarStateContext);
153
+ const state = react.useContext(agnosticCalendarStateContext.AgnosticCalendarStateContext);
154
154
  const { locale } = reactAriaComponents.useLocale();
155
- const dataAttributes = $670gB$react.useMemo(() => {
155
+ const dataAttributes = react.useMemo(() => {
156
156
  const isDateHighlighted = dateToHighlight ? date$1.compare(dateToHighlight) === 0 : false;
157
157
  const isSelected = state.isSelected(date$1);
158
158
  const isDisabled = state.isCellDisabled(date$1);
@@ -2,12 +2,12 @@
2
2
  "use client";
3
3
  'use strict';
4
4
 
5
- var $670gB$react = require('react');
5
+ var react = require('react');
6
6
  var nanoid = require('nanoid');
7
7
 
8
8
  const useRipple = () => {
9
- const [ripples, setRipples] = $670gB$react.useState([]);
10
- const onPress = $670gB$react.useCallback((event) => {
9
+ const [ripples, setRipples] = react.useState([]);
10
+ const onPress = react.useCallback((event) => {
11
11
  const trigger = event.target;
12
12
  const size = Math.max(trigger.clientWidth, trigger.clientHeight);
13
13
  setRipples((prevRipples) => [
@@ -20,7 +20,7 @@ const useRipple = () => {
20
20
  }
21
21
  ]);
22
22
  }, []);
23
- const onClear = $670gB$react.useCallback((key) => {
23
+ const onClear = react.useCallback((key) => {
24
24
  setRipples((prevState) => prevState.filter((ripple) => ripple.key !== key));
25
25
  }, []);
26
26
  return { ripples, onPress, onClear };
@@ -3,7 +3,7 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var $670gB$react = require('react');
6
+ var react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
9
  var utils = require('../system/utils.cjs');
@@ -36,7 +36,7 @@ function Select({
36
36
  );
37
37
  const { items, children, listLayoutOptions, ...props } = _props;
38
38
  const styles = ouiTheme.selectStyles(variantProps);
39
- const layoutOptions = $670gB$react.useMemo(() => {
39
+ const layoutOptions = react.useMemo(() => {
40
40
  return {
41
41
  estimatedRowHeight: calculateEstimatedRowHeight(
42
42
  variantProps.size ?? "md"
@@ -2,7 +2,7 @@
2
2
  "use client";
3
3
  'use strict';
4
4
 
5
- var $670gB$react = require('react');
5
+ var react = require('react');
6
6
  var useDeepCompare = require('use-deep-compare');
7
7
  var ouiTheme = require('@opengovsg/oui-theme');
8
8
  var utils = require('../system/utils.cjs');
@@ -18,10 +18,10 @@ const useSpinner = (originalProps) => {
18
18
  [variantProps]
19
19
  );
20
20
  const baseStyles = ouiTheme.cn(classNames?.base, className);
21
- const ariaLabel = $670gB$react.useMemo(() => {
21
+ const ariaLabel = react.useMemo(() => {
22
22
  return !otherProps["aria-label"] ? "Loading" : "";
23
23
  }, [otherProps["aria-label"]]);
24
- const getSpinnerProps = $670gB$react.useCallback(
24
+ const getSpinnerProps = react.useCallback(
25
25
  () => ({
26
26
  "aria-label": ariaLabel,
27
27
  role: "progressbar",
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var $670gB$react = require('react');
4
+ var react = require('react');
5
5
 
6
6
  function createContext(options = {}) {
7
7
  const {
@@ -10,10 +10,10 @@ function createContext(options = {}) {
10
10
  name,
11
11
  defaultValue
12
12
  } = options;
13
- const Context = $670gB$react.createContext(defaultValue);
13
+ const Context = react.createContext(defaultValue);
14
14
  Context.displayName = name;
15
15
  function useContext() {
16
- const context = $670gB$react.useContext(Context);
16
+ const context = react.useContext(Context);
17
17
  if (!context && strict) {
18
18
  const error = new Error(errorMessage);
19
19
  error.name = "ContextError";
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var $670gB$react = require('react');
4
+ var react = require('react');
5
5
 
6
6
  function useDomRef(ref) {
7
- const domRef = $670gB$react.useRef(null);
8
- $670gB$react.useImperativeHandle(ref, () => domRef.current);
7
+ const domRef = react.useRef(null);
8
+ react.useImperativeHandle(ref, () => domRef.current);
9
9
  return domRef;
10
10
  }
11
11
 
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var $670gB$react = require('react');
4
+ var react = require('react');
5
5
 
6
6
  function forwardRef(component) {
7
- return $670gB$react.forwardRef(component);
7
+ return react.forwardRef(component);
8
8
  }
9
9
  function forwardRefGeneric(render) {
10
10
  return forwardRef(render);
@@ -38,7 +38,7 @@ function useRenderProps(props) {
38
38
  defaultStyle,
39
39
  values
40
40
  } = props;
41
- return $670gB$react.useMemo(() => {
41
+ return react.useMemo(() => {
42
42
  let computedClassName;
43
43
  let computedStyle;
44
44
  let computedChildren;
@@ -3,7 +3,7 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var $670gB$react = require('react');
6
+ var react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
9
  var utils = require('../system/utils.cjs');
@@ -51,7 +51,7 @@ const TabList = utils.forwardRefGeneric(function TabList2(originalProps, ref) {
51
51
  }
52
52
  );
53
53
  });
54
- const Tab = $670gB$react.forwardRef(function Tab2(originalProps, ref) {
54
+ const Tab = react.forwardRef(function Tab2(originalProps, ref) {
55
55
  [originalProps, ref] = reactAriaComponents.useContextProps(
56
56
  originalProps,
57
57
  ref,