@opengovsg/oui 0.0.13 → 0.0.15

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 (145) 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 +3 -3
  4. package/dist/cjs/button/button.cjs +3 -3
  5. package/dist/cjs/calendar/calendar-bottom-content.cjs +2 -2
  6. package/dist/cjs/calendar/calendar-header.cjs +2 -2
  7. package/dist/cjs/calendar/calendar-month-day-selector.cjs +2 -2
  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/checkbox/checkbox-group-style-context.cjs +16 -0
  12. package/dist/cjs/checkbox/checkbox.cjs +94 -0
  13. package/dist/cjs/checkbox/index.cjs +12 -0
  14. package/dist/cjs/combo-box/combo-box-fuzzy.cjs +6 -6
  15. package/dist/cjs/combo-box/combo-box-item.cjs +2 -2
  16. package/dist/cjs/combo-box/combo-box.cjs +3 -3
  17. package/dist/cjs/date-field/date-field.cjs +3 -3
  18. package/dist/cjs/date-picker/date-picker.cjs +5 -4
  19. package/dist/cjs/date-range-picker/date-range-picker.cjs +4 -4
  20. package/dist/cjs/govt-banner/govt-banner.cjs +3 -3
  21. package/dist/cjs/hooks/use-callback-ref.cjs +4 -4
  22. package/dist/cjs/hooks/use-controllable-state.cjs +2 -2
  23. package/dist/cjs/index.cjs +48 -31
  24. package/dist/cjs/input/input.cjs +2 -2
  25. package/dist/cjs/menu/menu.cjs +6 -6
  26. 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 +45 -0
  27. 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 +21 -0
  28. 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 +72 -0
  29. 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 +60 -0
  30. 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 +210 -0
  31. 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 +100 -0
  32. 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 +152 -0
  33. 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 +676 -0
  34. 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 +160 -0
  35. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_check_private_redeclaration.cjs +9 -0
  36. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.cjs +9 -0
  37. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.cjs +16 -0
  38. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.cjs +9 -0
  39. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_get.cjs +11 -0
  40. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_init.cjs +10 -0
  41. package/dist/cjs/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_set.cjs +12 -0
  42. 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
  43. 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
  44. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevrons-right.cjs +22 -0
  45. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/ellipsis.cjs +23 -0
  46. package/dist/cjs/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/minus.cjs +19 -0
  47. package/dist/cjs/pagination/hooks/use-pagination.cjs +117 -0
  48. package/dist/cjs/pagination/index.cjs +17 -0
  49. package/dist/cjs/pagination/pagination-cursor.cjs +18 -0
  50. package/dist/cjs/pagination/pagination-item.cjs +18 -0
  51. package/dist/cjs/pagination/pagination.cjs +263 -0
  52. package/dist/cjs/pagination/use-pagination-item.cjs +87 -0
  53. package/dist/cjs/pagination/use-pagination.cjs +251 -0
  54. package/dist/cjs/range-calendar/range-calendar.cjs +7 -7
  55. package/dist/cjs/ripple/use-ripple.cjs +4 -4
  56. package/dist/cjs/select/select.cjs +4 -4
  57. package/dist/cjs/spinner/use-spinner.cjs +3 -3
  58. package/dist/cjs/system/react-utils/context.cjs +3 -3
  59. package/dist/cjs/system/react-utils/dom-props.cjs +186 -0
  60. package/dist/cjs/system/react-utils/filter-dom-props.cjs +46 -0
  61. package/dist/cjs/system/react-utils/index.cjs +2 -0
  62. package/dist/cjs/system/react-utils/refs.cjs +3 -3
  63. package/dist/cjs/system/utils.cjs +3 -3
  64. package/dist/cjs/tabs/tabs.cjs +2 -2
  65. package/dist/cjs/tag-field/tag-field-item.cjs +2 -2
  66. package/dist/cjs/tag-field/tag-field-list.cjs +4 -4
  67. package/dist/cjs/tag-field/tag-field-root.cjs +14 -14
  68. package/dist/cjs/tag-field/tag-field-state-context.cjs +2 -2
  69. package/dist/cjs/tag-field/tag-field-tag-list.cjs +3 -3
  70. package/dist/cjs/tag-field/tag-field-trigger.cjs +2 -2
  71. package/dist/cjs/tag-field/tag-field.cjs +2 -2
  72. package/dist/cjs/tag-field/use-tag-field-state.cjs +6 -6
  73. package/dist/cjs/tag-field/use-tag-field.cjs +4 -4
  74. package/dist/cjs/text-area/text-area.cjs +2 -2
  75. package/dist/cjs/toggle/toggle.cjs +3 -3
  76. package/dist/esm/checkbox/checkbox-group-style-context.js +13 -0
  77. package/dist/esm/checkbox/checkbox.js +91 -0
  78. package/dist/esm/checkbox/index.js +3 -0
  79. package/dist/esm/date-picker/date-picker.js +3 -2
  80. package/dist/esm/date-range-picker/date-range-picker.js +1 -1
  81. package/dist/esm/index.js +17 -10
  82. 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 +43 -0
  83. 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 +19 -0
  84. 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 +69 -0
  85. 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 +58 -0
  86. 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 +205 -0
  87. 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 +98 -0
  88. 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 +150 -0
  89. 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 +674 -0
  90. 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 +155 -0
  91. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_check_private_redeclaration.js +7 -0
  92. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.js +7 -0
  93. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.js +14 -0
  94. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.js +7 -0
  95. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_get.js +9 -0
  96. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_init.js +8 -0
  97. package/dist/esm/node_modules/.pnpm/@swc_helpers@0.5.17/node_modules/@swc/helpers/esm/_class_private_field_set.js +10 -0
  98. package/dist/esm/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevrons-right.js +17 -0
  99. package/dist/esm/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/ellipsis.js +18 -0
  100. package/dist/esm/node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/minus.js +14 -0
  101. package/dist/esm/pagination/hooks/use-pagination.js +114 -0
  102. package/dist/esm/pagination/index.js +6 -0
  103. package/dist/esm/pagination/pagination-cursor.js +16 -0
  104. package/dist/esm/pagination/pagination-item.js +16 -0
  105. package/dist/esm/pagination/pagination.js +261 -0
  106. package/dist/esm/pagination/use-pagination-item.js +85 -0
  107. package/dist/esm/pagination/use-pagination.js +248 -0
  108. package/dist/esm/range-calendar/range-calendar.js +1 -1
  109. package/dist/esm/select/select.js +2 -2
  110. package/dist/esm/system/react-utils/dom-props.js +183 -0
  111. package/dist/esm/system/react-utils/filter-dom-props.js +44 -0
  112. package/dist/esm/system/react-utils/index.js +1 -0
  113. package/dist/types/badge/badge.d.ts +3 -1
  114. package/dist/types/badge/badge.d.ts.map +1 -1
  115. package/dist/types/checkbox/checkbox-group-style-context.d.ts +6 -0
  116. package/dist/types/checkbox/checkbox-group-style-context.d.ts.map +1 -0
  117. package/dist/types/checkbox/checkbox.d.ts +19 -0
  118. package/dist/types/checkbox/checkbox.d.ts.map +1 -0
  119. package/dist/types/checkbox/index.d.ts +3 -0
  120. package/dist/types/checkbox/index.d.ts.map +1 -0
  121. package/dist/types/index.d.mts +2 -0
  122. package/dist/types/index.d.ts +2 -0
  123. package/dist/types/index.d.ts.map +1 -1
  124. package/dist/types/pagination/hooks/use-pagination.d.ts +51 -0
  125. package/dist/types/pagination/hooks/use-pagination.d.ts.map +1 -0
  126. package/dist/types/pagination/index.d.ts +7 -0
  127. package/dist/types/pagination/index.d.ts.map +1 -0
  128. package/dist/types/pagination/pagination-cursor.d.ts +9 -0
  129. package/dist/types/pagination/pagination-cursor.d.ts.map +1 -0
  130. package/dist/types/pagination/pagination-item.d.ts +5 -0
  131. package/dist/types/pagination/pagination-item.d.ts.map +1 -0
  132. package/dist/types/pagination/pagination.d.ts +5 -0
  133. package/dist/types/pagination/pagination.d.ts.map +1 -0
  134. package/dist/types/pagination/use-pagination-item.d.ts +51 -0
  135. package/dist/types/pagination/use-pagination-item.d.ts.map +1 -0
  136. package/dist/types/pagination/use-pagination.d.ts +353 -0
  137. package/dist/types/pagination/use-pagination.d.ts.map +1 -0
  138. package/dist/types/system/react-utils/context.d.ts.map +1 -1
  139. package/dist/types/system/react-utils/dom-props.d.ts +3 -0
  140. package/dist/types/system/react-utils/dom-props.d.ts.map +1 -0
  141. package/dist/types/system/react-utils/filter-dom-props.d.ts +39 -0
  142. package/dist/types/system/react-utils/filter-dom-props.d.ts.map +1 -0
  143. package/dist/types/system/react-utils/index.d.ts +1 -0
  144. package/dist/types/system/react-utils/index.d.ts.map +1 -1
  145. package/package.json +8 -5
@@ -3,7 +3,7 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var react = require('react');
6
+ var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
9
  var field = require('../field/field.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 = react.useMemo(() => {
39
+ const layoutOptions = $670gB$react.useMemo(() => {
40
40
  return {
41
41
  estimatedRowHeight: calculateEstimatedRowHeight(
42
42
  variantProps.size ?? "md"
@@ -47,11 +47,11 @@ function Select({
47
47
  return /* @__PURE__ */ jsxRuntime.jsx(reactAriaComponents.Provider, { values: [[selectVariantContext.SelectVariantContext, variantProps]], children: /* @__PURE__ */ jsxRuntime.jsxs(
48
48
  reactAriaComponents.Select,
49
49
  {
50
+ ...props,
50
51
  className: ouiTheme.composeRenderProps(
51
- props.className,
52
+ props.className ?? classNames?.base,
52
53
  (className, renderProps) => styles.base({ className, ...renderProps })
53
54
  ),
54
- ...props,
55
55
  children: [
56
56
  label && /* @__PURE__ */ jsxRuntime.jsx(field.Label, { size: variantProps.size, className: classNames?.label, children: label }),
57
57
  /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2,7 +2,7 @@
2
2
  "use client";
3
3
  'use strict';
4
4
 
5
- var react = require('react');
5
+ var $670gB$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 = react.useMemo(() => {
21
+ const ariaLabel = $670gB$react.useMemo(() => {
22
22
  return !otherProps["aria-label"] ? "Loading" : "";
23
23
  }, [otherProps["aria-label"]]);
24
- const getSpinnerProps = react.useCallback(
24
+ const getSpinnerProps = $670gB$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 react = require('react');
4
+ var $670gB$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 = react.createContext(defaultValue);
13
+ const Context = $670gB$react.createContext(defaultValue);
14
14
  Context.displayName = name;
15
15
  function useContext() {
16
- const context = react.useContext(Context);
16
+ const context = $670gB$react.useContext(Context);
17
17
  if (!context && strict) {
18
18
  const error = new Error(errorMessage);
19
19
  error.name = "ContextError";
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ 'use strict';
3
+
4
+ const DOMPropNames = /* @__PURE__ */ new Set([
5
+ "id",
6
+ "type",
7
+ "style",
8
+ "title",
9
+ "role",
10
+ "tabIndex",
11
+ "htmlFor",
12
+ "width",
13
+ "height",
14
+ "abbr",
15
+ "accept",
16
+ "acceptCharset",
17
+ "accessKey",
18
+ "action",
19
+ "allowFullScreen",
20
+ "allowTransparency",
21
+ "alt",
22
+ "async",
23
+ "autoComplete",
24
+ "autoFocus",
25
+ "autoPlay",
26
+ "cellPadding",
27
+ "cellSpacing",
28
+ "challenge",
29
+ "charset",
30
+ "checked",
31
+ "cite",
32
+ "class",
33
+ "className",
34
+ "cols",
35
+ "colSpan",
36
+ "command",
37
+ "content",
38
+ "contentEditable",
39
+ "contextMenu",
40
+ "controls",
41
+ "coords",
42
+ "crossOrigin",
43
+ "data",
44
+ "dateTime",
45
+ "default",
46
+ "defer",
47
+ "dir",
48
+ "disabled",
49
+ "download",
50
+ "draggable",
51
+ "dropzone",
52
+ "encType",
53
+ "enterKeyHint",
54
+ "for",
55
+ "form",
56
+ "formAction",
57
+ "formEncType",
58
+ "formMethod",
59
+ "formNoValidate",
60
+ "formTarget",
61
+ "frameBorder",
62
+ "headers",
63
+ "hidden",
64
+ "high",
65
+ "href",
66
+ "hrefLang",
67
+ "httpEquiv",
68
+ "icon",
69
+ "inputMode",
70
+ "isMap",
71
+ "itemId",
72
+ "itemProp",
73
+ "itemRef",
74
+ "itemScope",
75
+ "itemType",
76
+ "kind",
77
+ "label",
78
+ "lang",
79
+ "list",
80
+ "loop",
81
+ "manifest",
82
+ "max",
83
+ "maxLength",
84
+ "media",
85
+ "mediaGroup",
86
+ "method",
87
+ "min",
88
+ "minLength",
89
+ "multiple",
90
+ "muted",
91
+ "name",
92
+ "noValidate",
93
+ "open",
94
+ "optimum",
95
+ "pattern",
96
+ "ping",
97
+ "placeholder",
98
+ "poster",
99
+ "preload",
100
+ "radioGroup",
101
+ "referrerPolicy",
102
+ "readOnly",
103
+ "rel",
104
+ "required",
105
+ "rows",
106
+ "rowSpan",
107
+ "sandbox",
108
+ "scope",
109
+ "scoped",
110
+ "scrolling",
111
+ "seamless",
112
+ "selected",
113
+ "shape",
114
+ "size",
115
+ "sizes",
116
+ "slot",
117
+ "sortable",
118
+ "span",
119
+ "spellCheck",
120
+ "src",
121
+ "srcDoc",
122
+ "srcSet",
123
+ "start",
124
+ "step",
125
+ "target",
126
+ "translate",
127
+ "typeMustMatch",
128
+ "useMap",
129
+ "value",
130
+ "wmode",
131
+ "wrap"
132
+ ]);
133
+ const DOMEventNames = /* @__PURE__ */ new Set([
134
+ "onCopy",
135
+ "onCut",
136
+ "onPaste",
137
+ "onLoad",
138
+ "onError",
139
+ "onWheel",
140
+ "onScroll",
141
+ "onCompositionEnd",
142
+ "onCompositionStart",
143
+ "onCompositionUpdate",
144
+ "onKeyDown",
145
+ "onKeyPress",
146
+ "onKeyUp",
147
+ "onFocus",
148
+ "onBlur",
149
+ "onChange",
150
+ "onInput",
151
+ "onSubmit",
152
+ "onClick",
153
+ "onContextMenu",
154
+ "onDoubleClick",
155
+ "onDrag",
156
+ "onDragEnd",
157
+ "onDragEnter",
158
+ "onDragExit",
159
+ "onDragLeave",
160
+ "onDragOver",
161
+ "onDragStart",
162
+ "onDrop",
163
+ "onMouseDown",
164
+ "onMouseEnter",
165
+ "onMouseLeave",
166
+ "onMouseMove",
167
+ "onMouseOut",
168
+ "onMouseOver",
169
+ "onMouseUp",
170
+ "onPointerDown",
171
+ "onPointerEnter",
172
+ "onPointerLeave",
173
+ "onPointerUp",
174
+ "onSelect",
175
+ "onTouchCancel",
176
+ "onTouchEnd",
177
+ "onTouchMove",
178
+ "onTouchStart",
179
+ "onAnimationStart",
180
+ "onAnimationEnd",
181
+ "onAnimationIteration",
182
+ "onTransitionEnd"
183
+ ]);
184
+
185
+ exports.DOMEventNames = DOMEventNames;
186
+ exports.DOMPropNames = DOMPropNames;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ 'use strict';
3
+
4
+ var domProps = require('./dom-props.cjs');
5
+
6
+ const propRe = /^(data-.*)$/;
7
+ const ariaRe = /^(aria-.*)$/;
8
+ const funcRe = /^(on[A-Z].*)$/;
9
+ function filterDOMProps(props, opts = {}) {
10
+ const {
11
+ labelable = true,
12
+ enabled = true,
13
+ propNames,
14
+ omitPropNames,
15
+ omitEventNames,
16
+ omitDataProps,
17
+ omitEventProps
18
+ } = opts;
19
+ const filteredProps = {};
20
+ if (!enabled) {
21
+ return props;
22
+ }
23
+ for (const prop in props) {
24
+ if (omitPropNames?.has(prop)) {
25
+ continue;
26
+ }
27
+ if (omitEventNames?.has(prop) && funcRe.test(prop)) {
28
+ continue;
29
+ }
30
+ if (funcRe.test(prop) && !domProps.DOMEventNames.has(prop)) {
31
+ continue;
32
+ }
33
+ if (omitDataProps && propRe.test(prop)) {
34
+ continue;
35
+ }
36
+ if (omitEventProps && funcRe.test(prop)) {
37
+ continue;
38
+ }
39
+ if (Object.prototype.hasOwnProperty.call(props, prop) && (domProps.DOMPropNames.has(prop) || labelable && ariaRe.test(prop) || propNames?.has(prop) || propRe.test(prop)) || funcRe.test(prop)) {
40
+ filteredProps[prop] = props[prop];
41
+ }
42
+ }
43
+ return filteredProps;
44
+ }
45
+
46
+ exports.filterDOMProps = filterDOMProps;
@@ -3,8 +3,10 @@
3
3
 
4
4
  var context = require('./context.cjs');
5
5
  var refs = require('./refs.cjs');
6
+ var filterDomProps = require('./filter-dom-props.cjs');
6
7
 
7
8
 
8
9
 
9
10
  exports.createContext = context.createContext;
10
11
  exports.useDomRef = refs.useDomRef;
12
+ exports.filterDOMProps = filterDomProps.filterDOMProps;
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var react = require('react');
4
+ var $670gB$react = require('react');
5
5
 
6
6
  function useDomRef(ref) {
7
- const domRef = react.useRef(null);
8
- react.useImperativeHandle(ref, () => domRef.current);
7
+ const domRef = $670gB$react.useRef(null);
8
+ $670gB$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 react = require('react');
4
+ var $670gB$react = require('react');
5
5
 
6
6
  function forwardRef(component) {
7
- return react.forwardRef(component);
7
+ return $670gB$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 react.useMemo(() => {
41
+ return $670gB$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 react = require('react');
6
+ var $670gB$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 = react.forwardRef(function Tab2(originalProps, ref) {
54
+ const Tab = $670gB$react.forwardRef(function Tab2(originalProps, ref) {
55
55
  [originalProps, ref] = reactAriaComponents.useContextProps(
56
56
  originalProps,
57
57
  ref,
@@ -3,13 +3,13 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var react = require('react');
6
+ var $670gB$react = require('react');
7
7
  var ouiTheme = require('@opengovsg/oui-theme');
8
8
  var utils = require('../system/utils.cjs');
9
9
  var tagFieldStateContext = require('./tag-field-state-context.cjs');
10
10
 
11
11
  const TagFieldItemInner = ({ item, isHighlighted, classNames, ...itemProps }, ref) => {
12
- const { itemToText, size } = react.useContext(tagFieldStateContext.TagFieldStateContext);
12
+ const { itemToText, size } = $670gB$react.useContext(tagFieldStateContext.TagFieldStateContext);
13
13
  const styles = ouiTheme.listBoxItemStyles({ size });
14
14
  return /* @__PURE__ */ jsxRuntime.jsx(
15
15
  "li",
@@ -3,16 +3,16 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var react = require('react');
6
+ var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var utils = require('../system/utils.cjs');
9
9
  var tagFieldItem = require('./tag-field-item.cjs');
10
10
  var tagFieldStateContext = require('./tag-field-state-context.cjs');
11
11
 
12
- const TagFieldListContext = react.createContext(null);
12
+ const TagFieldListContext = $670gB$react.createContext(null);
13
13
  const TagFieldListInner = (props, ref) => {
14
14
  [props, ref] = reactAriaComponents.useContextProps(props, ref, TagFieldListContext);
15
- const { items, getItemProps, highlightedIndex } = react.useContext(tagFieldStateContext.TagFieldStateContext);
15
+ const { items, getItemProps, highlightedIndex } = $670gB$react.useContext(tagFieldStateContext.TagFieldStateContext);
16
16
  const { slot, rowVirtualizer, itemClassNames, ...rest } = props;
17
17
  return /* @__PURE__ */ jsxRuntime.jsx("ul", { slot: slot ?? void 0, ref, ...rest, children: props.children !== void 0 && typeof props.children !== "function" ? props.children : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
18
18
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -46,7 +46,7 @@ const TagFieldListInner = (props, ref) => {
46
46
  if (typeof props.children === "function") {
47
47
  return props.children({ ...childProps, itemProps });
48
48
  }
49
- return /* @__PURE__ */ react.createElement(
49
+ return /* @__PURE__ */ $670gB$react.createElement(
50
50
  tagFieldItem.TagFieldItem,
51
51
  {
52
52
  ...childProps,
@@ -2,7 +2,7 @@
2
2
  'use strict';
3
3
 
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
- var react = require('react');
5
+ var $670gB$react = require('react');
6
6
  var utils$1 = require('@react-aria/utils');
7
7
  var lodashEs = require('lodash-es');
8
8
  var reactAria = require('react-aria');
@@ -30,26 +30,26 @@ function TagFieldRoot({
30
30
  ...props
31
31
  }) {
32
32
  const { itemToKey: defaultItemToKey, itemToText: defaultItemToText } = props;
33
- const virtualRowHeight = react.useMemo(
33
+ const virtualRowHeight = $670gB$react.useMemo(
34
34
  () => _virtualRowHeight ?? calculateEstimatedRowHeight(props.size ?? "md"),
35
35
  [_virtualRowHeight, props.size]
36
36
  );
37
37
  const { contains } = reactAria.useFilter({ sensitivity: "base" });
38
- const itemToText = react.useCallback(
38
+ const itemToText = $670gB$react.useCallback(
39
39
  (item) => {
40
40
  if (defaultItemToText) return defaultItemToText(item);
41
41
  return String(lodashEs.get(item, "textValue") ?? String(item));
42
42
  },
43
43
  [defaultItemToText]
44
44
  );
45
- const itemToKey = react.useCallback(
45
+ const itemToKey = $670gB$react.useCallback(
46
46
  (item) => {
47
47
  if (defaultItemToKey) return defaultItemToKey(item);
48
48
  return String(lodashEs.get(item, "id") ?? String(item));
49
49
  },
50
50
  [defaultItemToKey]
51
51
  );
52
- const onSelectionChange = react.useCallback(
52
+ const onSelectionChange = $670gB$react.useCallback(
53
53
  (nextItems) => {
54
54
  if (props.onSelectionChange) {
55
55
  props.onSelectionChange(new Set(nextItems.map(itemToKey)));
@@ -66,12 +66,12 @@ function TagFieldRoot({
66
66
  });
67
67
  const { validationBehavior: formValidationBehavior } = reactAriaComponents.useSlottedContext(reactAriaComponents.FormContext) || {};
68
68
  props.validationBehavior ?? formValidationBehavior ?? "native";
69
- const fieldRef = react.useRef(null);
70
- const popoverRef = react.useRef(null);
71
- const listBoxRef = react.useRef(null);
72
- const labelRef = react.useRef(null);
73
- const inputRef = react.useRef(null);
74
- const buttonRef = react.useRef(null);
69
+ const fieldRef = $670gB$react.useRef(null);
70
+ const popoverRef = $670gB$react.useRef(null);
71
+ const listBoxRef = $670gB$react.useRef(null);
72
+ const labelRef = $670gB$react.useRef(null);
73
+ const inputRef = $670gB$react.useRef(null);
74
+ const buttonRef = $670gB$react.useRef(null);
75
75
  const {
76
76
  tagFieldProps,
77
77
  buttonProps,
@@ -94,8 +94,8 @@ function TagFieldRoot({
94
94
  buttonRef},
95
95
  state
96
96
  );
97
- const [menuWidth, setMenuWidth] = react.useState(null);
98
- const onResize = react.useCallback(() => {
97
+ const [menuWidth, setMenuWidth] = $670gB$react.useState(null);
98
+ const onResize = $670gB$react.useCallback(() => {
99
99
  if (fieldRef.current) {
100
100
  const fieldRect = fieldRef.current.getBoundingClientRect();
101
101
  setMenuWidth(fieldRect.right - fieldRect.left + "px");
@@ -105,7 +105,7 @@ function TagFieldRoot({
105
105
  ref: fieldRef,
106
106
  onResize
107
107
  });
108
- const renderPropsState = react.useMemo(
108
+ const renderPropsState = $670gB$react.useMemo(
109
109
  () => ({
110
110
  isOpen: tagFieldProps.isOpen,
111
111
  isDisabled: props.isDisabled || false,
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var react = require('react');
4
+ var $670gB$react = require('react');
5
5
 
6
6
  const TagFieldStateContext = (
7
7
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
8
- react.createContext(null)
8
+ $670gB$react.createContext(null)
9
9
  );
10
10
 
11
11
  exports.TagFieldStateContext = TagFieldStateContext;
@@ -2,7 +2,7 @@
2
2
  'use strict';
3
3
 
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
- var react = require('react');
5
+ var $670gB$react = require('react');
6
6
  var tagFieldStateContext = require('./tag-field-state-context.cjs');
7
7
  var x = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/x.cjs');
8
8
 
@@ -17,8 +17,8 @@ const TagFieldTagList = ({
17
17
  isDisabled,
18
18
  isReadOnly,
19
19
  itemToText
20
- } = react.useContext(tagFieldStateContext.TagFieldStateContext);
21
- const handleRemoveSelectedItem = react.useCallback(
20
+ } = $670gB$react.useContext(tagFieldStateContext.TagFieldStateContext);
21
+ const handleRemoveSelectedItem = $670gB$react.useCallback(
22
22
  (item) => () => {
23
23
  if (isDisabled || isReadOnly) return;
24
24
  removeSelectedItem(item);
@@ -3,11 +3,11 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var react = require('react');
6
+ var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var utils = require('../system/utils.cjs');
9
9
 
10
- const TagFieldTriggerContext = react.createContext({});
10
+ const TagFieldTriggerContext = $670gB$react.createContext({});
11
11
  const TagFieldTrigger = utils.forwardRef(
12
12
  (props, ref) => {
13
13
  [props, ref] = reactAriaComponents.useContextProps(props, ref, TagFieldTriggerContext);
@@ -3,7 +3,7 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var react = require('react');
6
+ var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
9
  var field = require('../field/field.cjs');
@@ -99,7 +99,7 @@ function TagField({
99
99
  {
100
100
  className: styles.list({ className: classNames?.list }),
101
101
  itemClassNames: props.itemClassNames,
102
- children: ({ key, itemProps, ...props2 }) => children ? children({ key, itemProps, ...props2 }) : /* @__PURE__ */ react.createElement(tagFieldItem.TagFieldItem, { ...props2, ...itemProps, key })
102
+ children: ({ key, itemProps, ...props2 }) => children ? children({ key, itemProps, ...props2 }) : /* @__PURE__ */ $670gB$react.createElement(tagFieldItem.TagFieldItem, { ...props2, ...itemProps, key })
103
103
  }
104
104
  ) })
105
105
  ] });
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var react = require('react');
4
+ var $670gB$react = require('react');
5
5
  var form = require('@react-stately/form');
6
6
  var utils = require('@react-stately/utils');
7
7
  var useControllableState = require('../hooks/use-controllable-state.cjs');
8
8
 
9
9
  function useTagFieldState(props) {
10
10
  const { itemToText, itemToKey, defaultFilter } = props;
11
- const itemsByKey = react.useMemo(() => {
11
+ const itemsByKey = $670gB$react.useMemo(() => {
12
12
  const items = props.items ?? props.defaultItems ?? [];
13
13
  return items.reduce(
14
14
  (acc, item) => {
@@ -18,7 +18,7 @@ function useTagFieldState(props) {
18
18
  {}
19
19
  ) ?? {};
20
20
  }, [itemToKey, props.defaultItems, props.items]);
21
- const getSelectedItemsByKey = react.useCallback(
21
+ const getSelectedItemsByKey = $670gB$react.useCallback(
22
22
  (keys) => {
23
23
  if (!keys) return;
24
24
  return [...keys].map((key) => itemsByKey[key]);
@@ -36,13 +36,13 @@ function useTagFieldState(props) {
36
36
  defaultInputValue,
37
37
  props.onInputChange
38
38
  );
39
- const controlledSelectedKeys = react.useMemo(
39
+ const controlledSelectedKeys = $670gB$react.useMemo(
40
40
  () => new Set(selectedItems.map(itemToKey)),
41
41
  [itemToKey, selectedItems]
42
42
  );
43
43
  const validation = form.useFormValidationState({
44
44
  ...props,
45
- value: react.useMemo(
45
+ value: $670gB$react.useMemo(
46
46
  () => ({
47
47
  inputValue,
48
48
  selectedKeys: controlledSelectedKeys
@@ -50,7 +50,7 @@ function useTagFieldState(props) {
50
50
  [controlledSelectedKeys, inputValue]
51
51
  )
52
52
  });
53
- const filteredItems = react.useMemo(
53
+ const filteredItems = $670gB$react.useMemo(
54
54
  () => (
55
55
  // No default filter if items are controlled.
56
56
  !!props.items || !defaultFilter ? props.items ?? [] : filterItems({
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var react = require('react');
4
+ var $670gB$react = require('react');
5
5
  var utils = require('@react-aria/utils');
6
6
  var reactVirtual = require('@tanstack/react-virtual');
7
7
  var downshift = require('downshift');
@@ -23,7 +23,7 @@ function useTagField(props, state) {
23
23
  label,
24
24
  virtualRowHeight = 40
25
25
  } = props;
26
- const backupBtnRef = react.useRef(null);
26
+ const backupBtnRef = $670gB$react.useRef(null);
27
27
  buttonRef = buttonRef ?? backupBtnRef;
28
28
  const {
29
29
  selectedItems,
@@ -48,14 +48,14 @@ function useTagField(props, state) {
48
48
  }
49
49
  }
50
50
  });
51
- const disabledKeysSet = react.useMemo(() => {
51
+ const disabledKeysSet = $670gB$react.useMemo(() => {
52
52
  return new Set(disabledKeys);
53
53
  }, [disabledKeys]);
54
54
  const rowVirtualizer = reactVirtual.useVirtualizer({
55
55
  count: items.length,
56
56
  getScrollElement: () => listBoxRef.current,
57
57
  estimateSize: () => virtualRowHeight,
58
- getItemKey: react.useCallback(
58
+ getItemKey: $670gB$react.useCallback(
59
59
  (index) => itemToKey(items[index]),
60
60
  [itemToKey, items]
61
61
  ),
@@ -3,11 +3,11 @@
3
3
  'use strict';
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var react = require('react');
6
+ var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
9
 
10
- const TextArea = react.forwardRef(
10
+ const TextArea = $670gB$react.forwardRef(
11
11
  ({ size, variant, isDisabled, ...props }, ref) => {
12
12
  return /* @__PURE__ */ jsxRuntime.jsx(
13
13
  reactAriaComponents.TextArea,