@opengovsg/oui 0.0.32 → 0.0.34

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 (42) hide show
  1. package/dist/cjs/accordion/accordion.cjs +189 -0
  2. package/dist/cjs/accordion/index.cjs +13 -0
  3. package/dist/cjs/button/button.cjs +13 -10
  4. package/dist/cjs/calendar/calendar-month-day-selector.cjs +2 -2
  5. package/dist/cjs/combo-box/combo-box.cjs +1 -1
  6. package/dist/cjs/date-picker/date-picker.cjs +1 -1
  7. package/dist/cjs/date-range-picker/date-range-picker.cjs +2 -2
  8. package/dist/cjs/file-dropzone/file-dropzone.cjs +1 -1
  9. package/dist/cjs/index.cjs +67 -60
  10. package/dist/cjs/menu/menu.cjs +1 -1
  11. package/dist/cjs/number-field/number-field.cjs +1 -1
  12. package/dist/cjs/select/select.cjs +1 -1
  13. package/dist/cjs/system/react-utils/children.cjs +7 -0
  14. package/dist/cjs/tag-field/tag-field.cjs +2 -2
  15. package/dist/cjs/toast/toast.cjs +1 -1
  16. package/dist/esm/accordion/accordion.js +182 -0
  17. package/dist/esm/accordion/index.js +2 -0
  18. package/dist/esm/button/button.js +13 -10
  19. package/dist/esm/calendar/calendar-month-day-selector.js +2 -2
  20. package/dist/esm/combo-box/combo-box.js +1 -1
  21. package/dist/esm/date-picker/date-picker.js +1 -1
  22. package/dist/esm/date-range-picker/date-range-picker.js +2 -2
  23. package/dist/esm/file-dropzone/file-dropzone.js +1 -1
  24. package/dist/esm/index.js +21 -20
  25. package/dist/esm/menu/menu.js +1 -1
  26. package/dist/esm/number-field/number-field.js +1 -1
  27. package/dist/esm/select/select.js +1 -1
  28. package/dist/esm/system/react-utils/children.js +7 -1
  29. package/dist/esm/tag-field/tag-field.js +2 -2
  30. package/dist/esm/toast/toast.js +1 -1
  31. package/dist/types/accordion/accordion.d.ts +50 -0
  32. package/dist/types/accordion/accordion.d.ts.map +1 -0
  33. package/dist/types/accordion/index.d.ts +2 -0
  34. package/dist/types/accordion/index.d.ts.map +1 -0
  35. package/dist/types/button/button.d.ts +12 -6
  36. package/dist/types/button/button.d.ts.map +1 -1
  37. package/dist/types/index.d.mts +1 -0
  38. package/dist/types/index.d.ts +1 -0
  39. package/dist/types/index.d.ts.map +1 -1
  40. package/dist/types/system/react-utils/children.d.ts +3 -0
  41. package/dist/types/system/react-utils/children.d.ts.map +1 -1
  42. package/package.json +3 -3
@@ -0,0 +1,189 @@
1
+ "use strict";
2
+ "use client";
3
+ 'use strict';
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var $670gB$react = require('react');
7
+ var reactAriaComponents = require('react-aria-components');
8
+ var ouiTheme = require('@opengovsg/oui-theme');
9
+ var children = require('../system/react-utils/children.cjs');
10
+ var utils = require('../system/utils.cjs');
11
+ var context = require('../system/react-utils/context.cjs');
12
+ var chevronDown = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-down.cjs');
13
+
14
+ const [AccordionStyleContext, useAccordionStyleContext] = context.createContext({
15
+ name: "AccordionStyleContext",
16
+ strict: true
17
+ });
18
+ const AccordionItem = utils.forwardRef(
19
+ ({ classNames, className, children, ...props }, ref) => {
20
+ const { slots } = $670gB$react.useContext(AccordionStyleContext);
21
+ return /* @__PURE__ */ jsxRuntime.jsx(
22
+ reactAriaComponents.Disclosure,
23
+ {
24
+ ...props,
25
+ ref,
26
+ className: reactAriaComponents.composeRenderProps(
27
+ className,
28
+ (className2, renderProps) => slots.item({
29
+ ...renderProps,
30
+ className: ouiTheme.cn(classNames?.item, className2)
31
+ })
32
+ ),
33
+ children
34
+ }
35
+ );
36
+ }
37
+ );
38
+ AccordionItem.displayName = "AccordionItem";
39
+ function AccordionHeader({
40
+ children: children$1,
41
+ classNames,
42
+ indicator,
43
+ startContent,
44
+ endContent,
45
+ hideIndicator = false
46
+ }) {
47
+ const { slots, classNames: contextClassNames } = $670gB$react.useContext(
48
+ AccordionStyleContext
49
+ );
50
+ const { isExpanded } = $670gB$react.useContext(reactAriaComponents.DisclosureStateContext);
51
+ return /* @__PURE__ */ jsxRuntime.jsx(
52
+ reactAriaComponents.Heading,
53
+ {
54
+ className: slots.heading({
55
+ className: ouiTheme.cn(contextClassNames?.heading, classNames?.heading)
56
+ }),
57
+ children: /* @__PURE__ */ jsxRuntime.jsx(
58
+ reactAriaComponents.Button,
59
+ {
60
+ slot: "trigger",
61
+ className: slots.trigger({
62
+ className: ouiTheme.cn(contextClassNames?.trigger, classNames?.trigger)
63
+ }),
64
+ children: (buttonRenderProps) => {
65
+ const headerRenderProps = { ...buttonRenderProps, isExpanded };
66
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
67
+ startContent && /* @__PURE__ */ jsxRuntime.jsx(
68
+ "div",
69
+ {
70
+ className: slots.startContentWrapper({
71
+ className: ouiTheme.cn(
72
+ contextClassNames?.startContentWrapper,
73
+ classNames?.startContentWrapper
74
+ )
75
+ }),
76
+ children: children.renderChildren(headerRenderProps, startContent)
77
+ }
78
+ ),
79
+ /* @__PURE__ */ jsxRuntime.jsx(
80
+ "span",
81
+ {
82
+ className: slots.title({
83
+ className: ouiTheme.cn(contextClassNames?.title, classNames?.title)
84
+ }),
85
+ children: children.renderChildren(headerRenderProps, children$1)
86
+ }
87
+ ),
88
+ !hideIndicator && /* @__PURE__ */ jsxRuntime.jsx(
89
+ "span",
90
+ {
91
+ "aria-hidden": true,
92
+ className: slots.indicator({
93
+ isExpanded,
94
+ className: ouiTheme.cn(
95
+ contextClassNames?.indicator,
96
+ classNames?.indicator
97
+ )
98
+ }),
99
+ children: children.renderChildren(
100
+ headerRenderProps,
101
+ indicator ?? /* @__PURE__ */ jsxRuntime.jsx(chevronDown.default, {})
102
+ )
103
+ }
104
+ ),
105
+ endContent && /* @__PURE__ */ jsxRuntime.jsx(
106
+ "div",
107
+ {
108
+ className: slots.endContentWrapper({
109
+ className: ouiTheme.cn(
110
+ contextClassNames?.endContentWrapper,
111
+ classNames?.endContentWrapper
112
+ )
113
+ }),
114
+ children: children.renderChildren(headerRenderProps, endContent)
115
+ }
116
+ )
117
+ ] });
118
+ }
119
+ }
120
+ )
121
+ }
122
+ );
123
+ }
124
+ function AccordionContent({
125
+ children,
126
+ classNames,
127
+ ...props
128
+ }) {
129
+ const { slots, classNames: contextClassNames } = $670gB$react.useContext(
130
+ AccordionStyleContext
131
+ );
132
+ return /* @__PURE__ */ jsxRuntime.jsx(
133
+ reactAriaComponents.DisclosurePanel,
134
+ {
135
+ ...props,
136
+ className: ouiTheme.composeTailwindRenderProps(
137
+ props.className,
138
+ slots.panel({
139
+ className: ouiTheme.cn(contextClassNames?.panel, classNames?.panel)
140
+ })
141
+ ),
142
+ children: /* @__PURE__ */ jsxRuntime.jsx(
143
+ "div",
144
+ {
145
+ className: slots.content({
146
+ className: ouiTheme.cn(contextClassNames?.content, classNames?.content)
147
+ }),
148
+ children
149
+ }
150
+ )
151
+ }
152
+ );
153
+ }
154
+ const Accordion = utils.forwardRef(
155
+ (originalProps, ref) => {
156
+ const [
157
+ { classNames, className, ...props },
158
+ { size = "md", ...variantProps }
159
+ ] = utils.mapPropsVariants(originalProps, ouiTheme.accordionStyles.variantKeys);
160
+ const slots = ouiTheme.accordionStyles({ size, ...variantProps });
161
+ return /* @__PURE__ */ jsxRuntime.jsx(
162
+ AccordionStyleContext.Provider,
163
+ {
164
+ value: {
165
+ slots,
166
+ classNames
167
+ },
168
+ children: /* @__PURE__ */ jsxRuntime.jsx(
169
+ reactAriaComponents.DisclosureGroup,
170
+ {
171
+ className: slots.base({
172
+ className: ouiTheme.cn(classNames?.base, className)
173
+ }),
174
+ ...props,
175
+ ref
176
+ }
177
+ )
178
+ }
179
+ );
180
+ }
181
+ );
182
+ Accordion.displayName = "Accordion";
183
+
184
+ exports.Accordion = Accordion;
185
+ exports.AccordionContent = AccordionContent;
186
+ exports.AccordionHeader = AccordionHeader;
187
+ exports.AccordionItem = AccordionItem;
188
+ exports.AccordionStyleContext = AccordionStyleContext;
189
+ exports.useAccordionStyleContext = useAccordionStyleContext;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ 'use strict';
3
+
4
+ var accordion = require('./accordion.cjs');
5
+
6
+
7
+
8
+ exports.Accordion = accordion.Accordion;
9
+ exports.AccordionContent = accordion.AccordionContent;
10
+ exports.AccordionHeader = accordion.AccordionHeader;
11
+ exports.AccordionItem = accordion.AccordionItem;
12
+ exports.AccordionStyleContext = accordion.AccordionStyleContext;
13
+ exports.useAccordionStyleContext = accordion.useAccordionStyleContext;
@@ -7,9 +7,10 @@ var $670gB$react = require('react');
7
7
  var utils = require('@react-aria/utils');
8
8
  var reactAriaComponents = require('react-aria-components');
9
9
  var ouiTheme = require('@opengovsg/oui-theme');
10
+ var ripple = require('../ripple/ripple.cjs');
10
11
  var useRipple = require('../ripple/use-ripple.cjs');
11
12
  var spinner = require('../spinner/spinner.cjs');
12
- var ripple = require('../ripple/ripple.cjs');
13
+ var children = require('../system/react-utils/children.cjs');
13
14
 
14
15
  const Button = $670gB$react.forwardRef(
15
16
  ({
@@ -23,8 +24,9 @@ const Button = $670gB$react.forwardRef(
23
24
  size = "md",
24
25
  spinnerPlacement = "start",
25
26
  loadingText,
27
+ pendingElement,
26
28
  onPress,
27
- children,
29
+ children: children$1,
28
30
  disableRipple,
29
31
  isPending,
30
32
  spinner: spinnerProp,
@@ -49,7 +51,7 @@ const Button = $670gB$react.forwardRef(
49
51
  const spinnerSize = buttonSpinnerSizeMap[size];
50
52
  return /* @__PURE__ */ jsxRuntime.jsx(spinner.Spinner, { size: spinnerSize });
51
53
  }, [size, spinnerProp]);
52
- return /* @__PURE__ */ jsxRuntime.jsxs(
54
+ return /* @__PURE__ */ jsxRuntime.jsx(
53
55
  reactAriaComponents.Button,
54
56
  {
55
57
  ...props,
@@ -70,15 +72,16 @@ const Button = $670gB$react.forwardRef(
70
72
  isPending,
71
73
  onPress: utils.chain(onPress, onPressRipple),
72
74
  ref,
73
- children: [
74
- startContent,
75
- isPending && spinnerPlacement === "start" ? spinner$1 : null,
76
- isPending ? null : children,
75
+ children: (renderProps) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
76
+ children.renderChildren(renderProps, startContent),
77
+ isPending && spinnerPlacement === "start" ? children.renderChildren(renderProps, spinner$1) : null,
78
+ isPending ? null : children.renderChildren(renderProps, children$1),
77
79
  isPending && loadingText ? loadingText : null,
78
- isPending && spinnerPlacement === "end" ? spinner$1 : null,
79
- endContent,
80
+ isPending && pendingElement ? children.renderChildren(renderProps, pendingElement) : null,
81
+ isPending && spinnerPlacement === "end" ? children.renderChildren(renderProps, spinner$1) : null,
82
+ children.renderChildren(renderProps, endContent),
80
83
  !disableRipple && /* @__PURE__ */ jsxRuntime.jsx(ripple.Ripple, { onClear: onClearRipple, ripples })
81
- ]
84
+ ] })
82
85
  }
83
86
  );
84
87
  }
@@ -6,11 +6,11 @@ var jsxRuntime = require('react/jsx-runtime');
6
6
  var $670gB$react = require('react');
7
7
  var date = require('@internationalized/date');
8
8
  var reactAriaComponents = require('react-aria-components');
9
+ var select = require('../select/select.cjs');
10
+ var selectItem = require('../select/select-item.cjs');
9
11
  var agnosticCalendarStateContext = require('./agnostic-calendar-state-context.cjs');
10
12
  var calendarStyleContext = require('./calendar-style-context.cjs');
11
13
  var useCalendarSelectors = require('./hooks/use-calendar-selectors.cjs');
12
- var select = require('../select/select.cjs');
13
- var selectItem = require('../select/select-item.cjs');
14
14
  var useCalendarI18n = require('./hooks/use-calendar-i18n.cjs');
15
15
 
16
16
  const CalendarMonthDaySelector = () => {
@@ -7,13 +7,13 @@ var $670gB$react = require('react');
7
7
  var reactAria = require('react-aria');
8
8
  var reactAriaComponents = require('react-aria-components');
9
9
  var ouiTheme = require('@opengovsg/oui-theme');
10
+ var popover = require('../popover/popover.cjs');
10
11
  var utils = require('../system/utils.cjs');
11
12
  var comboBoxVariantContext = require('./combo-box-variant-context.cjs');
12
13
  var field = require('../field/field.cjs');
13
14
  var chevronUp = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-up.cjs');
14
15
  var chevronDown = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-down.cjs');
15
16
  var x = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/x.cjs');
16
- var popover = require('../popover/popover.cjs');
17
17
 
18
18
  const calculateEstimatedRowHeight = (size) => {
19
19
  switch (size) {
@@ -6,13 +6,13 @@ var jsxRuntime = require('react/jsx-runtime');
6
6
  var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
+ var popover = require('../popover/popover.cjs');
9
10
  var utils = require('../system/utils.cjs');
10
11
  var dateField = require('../date-field/date-field.cjs');
11
12
  var calendar = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/calendar.cjs');
12
13
  var calendar$1 = require('../calendar/calendar.cjs');
13
14
  var field = require('../field/field.cjs');
14
15
  var button = require('../button/button.cjs');
15
- var popover = require('../popover/popover.cjs');
16
16
 
17
17
  function DatePicker(originalProps) {
18
18
  const [
@@ -7,13 +7,13 @@ var $670gB$react = require('react');
7
7
  var date = require('@internationalized/date');
8
8
  var reactAriaComponents = require('react-aria-components');
9
9
  var ouiTheme = require('@opengovsg/oui-theme');
10
+ var popover = require('../popover/popover.cjs');
11
+ var rangeCalendar = require('../range-calendar/range-calendar.cjs');
10
12
  var utils = require('../system/utils.cjs');
11
13
  var calendar = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/calendar.cjs');
12
- var rangeCalendar = require('../range-calendar/range-calendar.cjs');
13
14
  var field = require('../field/field.cjs');
14
15
  var dateField = require('../date-field/date-field.cjs');
15
16
  var button = require('../button/button.cjs');
16
- var popover = require('../popover/popover.cjs');
17
17
 
18
18
  function DateRangePicker(originalProps) {
19
19
  const [
@@ -9,11 +9,11 @@ var reactAria = require('react-aria');
9
9
  var reactAriaComponents = require('react-aria-components');
10
10
  var reactDropzone = require('react-dropzone');
11
11
  var ouiTheme = require('@opengovsg/oui-theme');
12
+ var useControllableState = require('../hooks/use-controllable-state.cjs');
12
13
  var utils = require('../system/utils.cjs');
13
14
  var contexts = require('./contexts.cjs');
14
15
  var fileInfo = require('./file-info.cjs');
15
16
  var utils$1 = require('./utils.cjs');
16
- var useControllableState = require('../hooks/use-controllable-state.cjs');
17
17
  var upload = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/upload.cjs');
18
18
  var field = require('../field/field.cjs');
19
19
 
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var index = require('./avatar/index.cjs');
5
4
  var useControllableState = require('./hooks/use-controllable-state.cjs');
6
5
  var useDraggable = require('./hooks/use-draggable.cjs');
7
- var button = require('./button/button.cjs');
8
6
  var govtBanner = require('./govt-banner/govt-banner.cjs');
9
7
  var ripple = require('./ripple/ripple.cjs');
10
8
  var useRipple = require('./ripple/use-ripple.cjs');
@@ -14,37 +12,21 @@ var toggle = require('./toggle/toggle.cjs');
14
12
  var skipNavLink = require('./skip-nav-link/skip-nav-link.cjs');
15
13
  var input = require('./input/input.cjs');
16
14
  var textField = require('./text-field/text-field.cjs');
17
- var field = require('./field/field.cjs');
18
15
  var textArea = require('./text-area/text-area.cjs');
19
16
  var textAreaField = require('./text-area-field/text-area-field.cjs');
20
- var comboBox = require('./combo-box/combo-box.cjs');
21
- var comboBoxFuzzy = require('./combo-box/combo-box-fuzzy.cjs');
22
- var comboBoxItem = require('./combo-box/combo-box-item.cjs');
23
- var comboBoxVariantContext = require('./combo-box/combo-box-variant-context.cjs');
24
- var banner = require('./banner/banner.cjs');
25
17
  var tagField = require('./tag-field/tag-field.cjs');
26
18
  var tagFieldItem = require('./tag-field/tag-field-item.cjs');
27
19
  var select = require('./select/select.cjs');
28
20
  var selectItem = require('./select/select-item.cjs');
29
21
  var selectVariantContext = require('./select/select-variant-context.cjs');
30
- var badge = require('./badge/badge.cjs');
31
- var date = require('@internationalized/date');
32
- var calendar = require('./calendar/calendar.cjs');
33
- var calendarStyleContext = require('./calendar/calendar-style-context.cjs');
34
- var utils = require('./calendar/utils.cjs');
35
22
  var rangeCalendar = require('./range-calendar/range-calendar.cjs');
36
23
  var menu = require('./menu/menu.cjs');
37
24
  var popover = require('./popover/popover.cjs');
38
25
  var tabs = require('./tabs/tabs.cjs');
39
- var dateField = require('./date-field/date-field.cjs');
40
- var datePicker = require('./date-picker/date-picker.cjs');
41
- var dateRangePicker = require('./date-range-picker/date-range-picker.cjs');
42
- var checkbox = require('./checkbox/checkbox.cjs');
43
- var checkboxGroupStyleContext = require('./checkbox/checkbox-group-style-context.cjs');
44
- var usePagination = require('./pagination/hooks/use-pagination.cjs');
45
26
  var pagination = require('./pagination/pagination.cjs');
46
27
  var paginationCursor = require('./pagination/pagination-cursor.cjs');
47
28
  var paginationItem = require('./pagination/pagination-item.cjs');
29
+ var usePagination = require('./pagination/hooks/use-pagination.cjs');
48
30
  var usePagination$1 = require('./pagination/use-pagination.cjs');
49
31
  var fileDropzone = require('./file-dropzone/file-dropzone.cjs');
50
32
  var fileInfo = require('./file-dropzone/file-info.cjs');
@@ -57,7 +39,6 @@ var modalBody = require('./modal/modal-body.cjs');
57
39
  var modalHeader = require('./modal/modal-header.cjs');
58
40
  var modalVariantContext = require('./modal/modal-variant-context.cjs');
59
41
  var toast = require('./toast/toast.cjs');
60
- var sonner = require('sonner');
61
42
  var navbar = require('./navbar/navbar.cjs');
62
43
  var navbarBrand = require('./navbar/navbar-brand.cjs');
63
44
  var navbarContent = require('./navbar/navbar-content.cjs');
@@ -67,17 +48,35 @@ var toggle$1 = require('./navbar/navbar-menu/toggle.cjs');
67
48
  var navbarItem = require('./navbar/navbar-item.cjs');
68
49
  var useNavbar = require('./navbar/use-navbar.cjs');
69
50
  var navbarContext = require('./navbar/navbar-context.cjs');
51
+ var index = require('./avatar/index.cjs');
52
+ var button = require('./button/button.cjs');
53
+ var field = require('./field/field.cjs');
54
+ var comboBox = require('./combo-box/combo-box.cjs');
55
+ var comboBoxFuzzy = require('./combo-box/combo-box-fuzzy.cjs');
56
+ var comboBoxItem = require('./combo-box/combo-box-item.cjs');
57
+ var comboBoxVariantContext = require('./combo-box/combo-box-variant-context.cjs');
58
+ var banner = require('./banner/banner.cjs');
59
+ var badge = require('./badge/badge.cjs');
60
+ var date = require('@internationalized/date');
61
+ var calendar = require('./calendar/calendar.cjs');
62
+ var calendarStyleContext = require('./calendar/calendar-style-context.cjs');
63
+ var utils = require('./calendar/utils.cjs');
64
+ var dateField = require('./date-field/date-field.cjs');
65
+ var datePicker = require('./date-picker/date-picker.cjs');
66
+ var dateRangePicker = require('./date-range-picker/date-range-picker.cjs');
67
+ var checkbox = require('./checkbox/checkbox.cjs');
68
+ var checkboxGroupStyleContext = require('./checkbox/checkbox-group-style-context.cjs');
69
+ var sonner = require('sonner');
70
70
  var avatarContext = require('./avatar/avatar-context.cjs');
71
71
  var avatarGroup = require('./avatar/avatar-group.cjs');
72
72
  var avatarGroupContext = require('./avatar/avatar-group-context.cjs');
73
73
  var avatar = require('./avatar/avatar.cjs');
74
+ var accordion = require('./accordion/accordion.cjs');
74
75
 
75
76
 
76
77
 
77
- exports.Avatar = index.Avatar;
78
78
  exports.useControllableState = useControllableState.useControllableState;
79
79
  exports.useDraggable = useDraggable.useDraggable;
80
- exports.Button = button.Button;
81
80
  exports.GovtBanner = govtBanner.GovtBanner;
82
81
  exports.Ripple = ripple.Ripple;
83
82
  exports.useRipple = useRipple.useRipple;
@@ -87,39 +86,14 @@ exports.Toggle = toggle.Toggle;
87
86
  exports.SkipNavLink = skipNavLink.SkipNavLink;
88
87
  exports.Input = input.Input;
89
88
  exports.TextField = textField.TextField;
90
- exports.Description = field.Description;
91
- exports.FieldError = field.FieldError;
92
- exports.FieldErrorIcon = field.FieldErrorIcon;
93
- exports.FieldGroup = field.FieldGroup;
94
- exports.Label = field.Label;
95
89
  exports.TextArea = textArea.TextArea;
96
90
  exports.TextAreaField = textAreaField.TextAreaField;
97
- exports.ComboBox = comboBox.ComboBox;
98
- exports.ComboBoxEmptyState = comboBox.ComboBoxEmptyState;
99
- exports.ComboBoxFuzzy = comboBoxFuzzy.ComboBoxFuzzy;
100
- exports.ComboBoxItem = comboBoxItem.ComboBoxItem;
101
- exports.ComboBoxVariantContext = comboBoxVariantContext.ComboBoxVariantContext;
102
- exports.useComboBoxVariantContext = comboBoxVariantContext.useComboBoxVariantContext;
103
- exports.Banner = banner.Banner;
104
91
  exports.TagField = tagField.TagField;
105
92
  exports.TagFieldItem = tagFieldItem.TagFieldItem;
106
93
  exports.Select = select.Select;
107
94
  exports.SelectItem = selectItem.SelectItem;
108
95
  exports.SelectVariantContext = selectVariantContext.SelectVariantContext;
109
96
  exports.useSelectVariantContext = selectVariantContext.useSelectVariantContext;
110
- exports.Badge = badge.Badge;
111
- Object.defineProperty(exports, "CalendarDate", {
112
- enumerable: true,
113
- get: function () { return date.CalendarDate; }
114
- });
115
- exports.Calendar = calendar.Calendar;
116
- exports.CalendarStateWrapper = calendar.CalendarStateWrapper;
117
- exports.CalendarStyleContext = calendarStyleContext.CalendarStyleContext;
118
- exports.useCalendarStyleContext = calendarStyleContext.useCalendarStyleContext;
119
- exports.getEraFormat = utils.getEraFormat;
120
- exports.useGenerateLocalizedMonths = utils.useGenerateLocalizedMonths;
121
- exports.useGenerateLocalizedYears = utils.useGenerateLocalizedYears;
122
- exports.useLocalizedMonthYear = utils.useLocalizedMonthYear;
123
97
  exports.RangeCalendar = rangeCalendar.RangeCalendar;
124
98
  exports.RangeCalendarCell = rangeCalendar.RangeCalendarCell;
125
99
  exports.RangeCalendarStateWrapper = rangeCalendar.RangeCalendarStateWrapper;
@@ -138,18 +112,10 @@ exports.TabPanel = tabs.TabPanel;
138
112
  exports.Tabs = tabs.Tabs;
139
113
  exports.TabsVariantContext = tabs.TabsVariantContext;
140
114
  exports.useTabsVariantContext = tabs.useTabsVariantContext;
141
- exports.DateField = dateField.DateField;
142
- exports.DateInput = dateField.DateInput;
143
- exports.DatePicker = datePicker.DatePicker;
144
- exports.DateRangePicker = dateRangePicker.DateRangePicker;
145
- exports.Checkbox = checkbox.Checkbox;
146
- exports.CheckboxGroup = checkbox.CheckboxGroup;
147
- exports.CheckboxGroupStyleContext = checkboxGroupStyleContext.CheckboxGroupStyleContext;
148
- exports.useCheckboxGroupStyleContext = checkboxGroupStyleContext.useCheckboxGroupStyleContext;
149
- exports.PaginationItemType = usePagination.PaginationItemType;
150
115
  exports.Pagination = pagination.Pagination;
151
116
  exports.PaginationCursor = paginationCursor.PaginationCursor;
152
117
  exports.PaginationItem = paginationItem.PaginationItem;
118
+ exports.PaginationItemType = usePagination.PaginationItemType;
153
119
  exports.CURSOR_TRANSITION_TIMEOUT = usePagination$1.CURSOR_TRANSITION_TIMEOUT;
154
120
  exports.usePagination = usePagination$1.usePagination;
155
121
  exports.FileDropzone = fileDropzone.FileDropzone;
@@ -165,10 +131,6 @@ exports.ModalHeader = modalHeader.ModalHeader;
165
131
  exports.ModalVariantContext = modalVariantContext.ModalVariantContext;
166
132
  exports.useModalVariantContext = modalVariantContext.useModalVariantContext;
167
133
  exports.Toaster = toast.Toaster;
168
- Object.defineProperty(exports, "toast", {
169
- enumerable: true,
170
- get: function () { return sonner.toast; }
171
- });
172
134
  exports.Navbar = navbar.Navbar;
173
135
  exports.NavbarBrand = navbarBrand.NavbarBrand;
174
136
  exports.NavbarContent = navbarContent.NavbarContent;
@@ -179,6 +141,45 @@ exports.NavbarItem = navbarItem.NavbarItem;
179
141
  exports.useNavbar = useNavbar.useNavbar;
180
142
  exports.NavbarProvider = navbarContext.NavbarProvider;
181
143
  exports.useNavbarContext = navbarContext.useNavbarContext;
144
+ exports.Avatar = index.Avatar;
145
+ exports.Button = button.Button;
146
+ exports.Description = field.Description;
147
+ exports.FieldError = field.FieldError;
148
+ exports.FieldErrorIcon = field.FieldErrorIcon;
149
+ exports.FieldGroup = field.FieldGroup;
150
+ exports.Label = field.Label;
151
+ exports.ComboBox = comboBox.ComboBox;
152
+ exports.ComboBoxEmptyState = comboBox.ComboBoxEmptyState;
153
+ exports.ComboBoxFuzzy = comboBoxFuzzy.ComboBoxFuzzy;
154
+ exports.ComboBoxItem = comboBoxItem.ComboBoxItem;
155
+ exports.ComboBoxVariantContext = comboBoxVariantContext.ComboBoxVariantContext;
156
+ exports.useComboBoxVariantContext = comboBoxVariantContext.useComboBoxVariantContext;
157
+ exports.Banner = banner.Banner;
158
+ exports.Badge = badge.Badge;
159
+ Object.defineProperty(exports, "CalendarDate", {
160
+ enumerable: true,
161
+ get: function () { return date.CalendarDate; }
162
+ });
163
+ exports.Calendar = calendar.Calendar;
164
+ exports.CalendarStateWrapper = calendar.CalendarStateWrapper;
165
+ exports.CalendarStyleContext = calendarStyleContext.CalendarStyleContext;
166
+ exports.useCalendarStyleContext = calendarStyleContext.useCalendarStyleContext;
167
+ exports.getEraFormat = utils.getEraFormat;
168
+ exports.useGenerateLocalizedMonths = utils.useGenerateLocalizedMonths;
169
+ exports.useGenerateLocalizedYears = utils.useGenerateLocalizedYears;
170
+ exports.useLocalizedMonthYear = utils.useLocalizedMonthYear;
171
+ exports.DateField = dateField.DateField;
172
+ exports.DateInput = dateField.DateInput;
173
+ exports.DatePicker = datePicker.DatePicker;
174
+ exports.DateRangePicker = dateRangePicker.DateRangePicker;
175
+ exports.Checkbox = checkbox.Checkbox;
176
+ exports.CheckboxGroup = checkbox.CheckboxGroup;
177
+ exports.CheckboxGroupStyleContext = checkboxGroupStyleContext.CheckboxGroupStyleContext;
178
+ exports.useCheckboxGroupStyleContext = checkboxGroupStyleContext.useCheckboxGroupStyleContext;
179
+ Object.defineProperty(exports, "toast", {
180
+ enumerable: true,
181
+ get: function () { return sonner.toast; }
182
+ });
182
183
  exports.AvatarContext = avatarContext.AvatarContext;
183
184
  exports.useAvatarContext = avatarContext.useAvatarContext;
184
185
  exports.AvatarGroup = avatarGroup.AvatarGroup;
@@ -187,3 +188,9 @@ exports.useAvatarGroup = avatarGroupContext.useAvatarGroup;
187
188
  exports.AvatarFallback = avatar.AvatarFallback;
188
189
  exports.AvatarImage = avatar.AvatarImage;
189
190
  exports.AvatarRoot = avatar.AvatarRoot;
191
+ exports.Accordion = accordion.Accordion;
192
+ exports.AccordionContent = accordion.AccordionContent;
193
+ exports.AccordionHeader = accordion.AccordionHeader;
194
+ exports.AccordionItem = accordion.AccordionItem;
195
+ exports.AccordionStyleContext = accordion.AccordionStyleContext;
196
+ exports.useAccordionStyleContext = accordion.useAccordionStyleContext;
@@ -6,11 +6,11 @@ var jsxRuntime = require('react/jsx-runtime');
6
6
  var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
+ var popover = require('../popover/popover.cjs');
9
10
  var utils = require('../system/utils.cjs');
10
11
  var context = require('../system/react-utils/context.cjs');
11
12
  var check = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/check.cjs');
12
13
  var chevronRight = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-right.cjs');
13
- var popover = require('../popover/popover.cjs');
14
14
 
15
15
  const [MenuVariantContext, useMenuVariantContext] = context.createContext({
16
16
  name: "MenuVariantContext",
@@ -5,11 +5,11 @@
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var reactAriaComponents = require('react-aria-components');
7
7
  var ouiTheme = require('@opengovsg/oui-theme');
8
+ var input = require('../input/input.cjs');
8
9
  var utils = require('../system/utils.cjs');
9
10
  var minus = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/minus.cjs');
10
11
  var plus = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/plus.cjs');
11
12
  var field = require('../field/field.cjs');
12
- var input = require('../input/input.cjs');
13
13
  var button = require('../button/button.cjs');
14
14
 
15
15
  function NumberField(originalProps) {
@@ -7,11 +7,11 @@ var $670gB$react = require('react');
7
7
  var reactAria = require('react-aria');
8
8
  var reactAriaComponents = require('react-aria-components');
9
9
  var ouiTheme = require('@opengovsg/oui-theme');
10
+ var popover = require('../popover/popover.cjs');
10
11
  var utils = require('../system/utils.cjs');
11
12
  var selectVariantContext = require('./select-variant-context.cjs');
12
13
  var field = require('../field/field.cjs');
13
14
  var chevronDown = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-down.cjs');
14
- var popover = require('../popover/popover.cjs');
15
15
  var button = require('../button/button.cjs');
16
16
 
17
17
  const i18nStrings = {
@@ -21,6 +21,13 @@ const pickChildren = (children, targetChild) => {
21
21
  const targetChildren = target.length >= 0 ? target : void 0;
22
22
  return [withoutTargetChildren, targetChildren];
23
23
  };
24
+ const renderChildren = (renderProps, children) => {
25
+ if (typeof children === "function") {
26
+ return children(renderProps);
27
+ }
28
+ return children;
29
+ };
24
30
 
25
31
  exports.getValidChildren = getValidChildren;
26
32
  exports.pickChildren = pickChildren;
33
+ exports.renderChildren = renderChildren;
@@ -6,6 +6,8 @@ var jsxRuntime = require('react/jsx-runtime');
6
6
  var $670gB$react = require('react');
7
7
  var reactAriaComponents = require('react-aria-components');
8
8
  var ouiTheme = require('@opengovsg/oui-theme');
9
+ var input = require('../input/input.cjs');
10
+ var popover = require('../popover/popover.cjs');
9
11
  var tagFieldItem = require('./tag-field-item.cjs');
10
12
  var tagFieldList = require('./tag-field-list.cjs');
11
13
  var tagFieldRoot = require('./tag-field-root.cjs');
@@ -13,8 +15,6 @@ var tagFieldTagList = require('./tag-field-tag-list.cjs');
13
15
  var tagFieldTrigger = require('./tag-field-trigger.cjs');
14
16
  var chevronDown = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-down.cjs');
15
17
  var field = require('../field/field.cjs');
16
- var input = require('../input/input.cjs');
17
- var popover = require('../popover/popover.cjs');
18
18
 
19
19
  function TagField({
20
20
  classNames,
@@ -5,9 +5,9 @@
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var sonner = require('sonner');
7
7
  var ouiTheme = require('@opengovsg/oui-theme');
8
+ var spinner = require('../spinner/spinner.cjs');
8
9
  var utils = require('../system/utils.cjs');
9
10
  var x = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/x.cjs');
10
- var spinner = require('../spinner/spinner.cjs');
11
11
 
12
12
  function Toaster(originalProps) {
13
13
  const [{ toastOptions, closeButton = true, ...props }, variantProps] = utils.mapPropsVariants(originalProps, ouiTheme.toastStyles.variantKeys);