@opengovsg/oui 0.0.0-snapshot-20250919051751 → 0.0.0-snapshot-20251002072708

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 (44) hide show
  1. package/dist/cjs/banner/banner.cjs +1 -1
  2. package/dist/cjs/button/button.cjs +1 -1
  3. package/dist/cjs/calendar/calendar-bottom-content.cjs +10 -4
  4. package/dist/cjs/calendar/calendar.cjs +3 -1
  5. package/dist/cjs/checkbox/checkbox.cjs +1 -1
  6. package/dist/cjs/combo-box/combo-box.cjs +2 -2
  7. package/dist/cjs/date-field/date-field.cjs +1 -1
  8. package/dist/cjs/date-picker/date-picker.cjs +5 -4
  9. package/dist/cjs/date-range-picker/date-range-picker.cjs +5 -5
  10. package/dist/cjs/index.cjs +20 -20
  11. package/dist/cjs/menu/menu.cjs +1 -1
  12. package/dist/cjs/range-calendar/range-calendar.cjs +4 -2
  13. package/dist/cjs/select/select.cjs +3 -3
  14. package/dist/cjs/tag-field/tag-field.cjs +3 -3
  15. package/dist/cjs/text-area-field/text-area-field.cjs +1 -1
  16. package/dist/cjs/text-field/text-field.cjs +1 -1
  17. package/dist/cjs/toggle/toggle.cjs +3 -1
  18. package/dist/esm/banner/banner.js +1 -1
  19. package/dist/esm/button/button.js +1 -1
  20. package/dist/esm/calendar/calendar-bottom-content.js +11 -5
  21. package/dist/esm/calendar/calendar.js +3 -1
  22. package/dist/esm/checkbox/checkbox.js +1 -1
  23. package/dist/esm/combo-box/combo-box.js +2 -2
  24. package/dist/esm/date-field/date-field.js +1 -1
  25. package/dist/esm/date-picker/date-picker.js +5 -4
  26. package/dist/esm/date-range-picker/date-range-picker.js +5 -5
  27. package/dist/esm/index.js +8 -8
  28. package/dist/esm/menu/menu.js +1 -1
  29. package/dist/esm/range-calendar/range-calendar.js +4 -2
  30. package/dist/esm/select/select.js +3 -3
  31. package/dist/esm/tag-field/tag-field.js +3 -3
  32. package/dist/esm/text-area-field/text-area-field.js +1 -1
  33. package/dist/esm/text-field/text-field.js +1 -1
  34. package/dist/esm/toggle/toggle.js +3 -1
  35. package/dist/types/calendar/calendar-bottom-content.d.ts +3 -1
  36. package/dist/types/calendar/calendar-bottom-content.d.ts.map +1 -1
  37. package/dist/types/calendar/calendar.d.ts.map +1 -1
  38. package/dist/types/calendar/types.d.ts +5 -0
  39. package/dist/types/calendar/types.d.ts.map +1 -1
  40. package/dist/types/range-calendar/range-calendar.d.ts +5 -0
  41. package/dist/types/range-calendar/range-calendar.d.ts.map +1 -1
  42. package/dist/types/toggle/toggle.d.ts +6 -1
  43. package/dist/types/toggle/toggle.d.ts.map +1 -1
  44. package/package.json +3 -3
@@ -7,9 +7,9 @@ var $670gB$react = require('react');
7
7
  var reactAria = require('react-aria');
8
8
  var reactStately = require('react-stately');
9
9
  var ouiTheme = require('@opengovsg/oui-theme');
10
+ var button = require('../button/button.cjs');
10
11
  var circleAlert = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/circle-alert.cjs');
11
12
  var info = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/info.cjs');
12
- var button = require('../button/button.cjs');
13
13
  var x = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/x.cjs');
14
14
 
15
15
  const i18nStrings = {
@@ -7,9 +7,9 @@ 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
13
 
14
14
  const Button = $670gB$react.forwardRef(
15
15
  ({
@@ -12,11 +12,19 @@ var useCalendarI18n = require('./hooks/use-calendar-i18n.cjs');
12
12
 
13
13
  const CalendarBottomContent = ({
14
14
  bottomContent,
15
- showTodayButton
15
+ showTodayButton,
16
+ shouldSetDateOnTodayButtonClick
16
17
  }) => {
17
18
  const state = $670gB$react.useContext(agnosticCalendarStateContext.AgnosticCalendarStateContext);
18
19
  const { slots, classNames, size } = calendarStyleContext.useCalendarStyleContext();
19
20
  const formatMessage = useCalendarI18n.useCalendarI18n();
21
+ const handleTodayClick = $670gB$react.useCallback(() => {
22
+ const todayDate = date.today(date.getLocalTimeZone());
23
+ state.setFocusedDate(todayDate);
24
+ if (shouldSetDateOnTodayButtonClick) {
25
+ state.selectDate(todayDate);
26
+ }
27
+ }, [shouldSetDateOnTodayButtonClick, state]);
20
28
  if (bottomContent) {
21
29
  return bottomContent;
22
30
  }
@@ -38,9 +46,7 @@ const CalendarBottomContent = ({
38
46
  size,
39
47
  slot: null,
40
48
  className: slots.todayButton({ className: classNames?.todayButton }),
41
- onPress: () => {
42
- state.setFocusedDate(date.today(date.getLocalTimeZone()));
43
- },
49
+ onPress: handleTodayClick,
44
50
  children: formatMessage("today")
45
51
  }
46
52
  )
@@ -28,6 +28,7 @@ const Calendar = utils.forwardRefGeneric(function Calendar2(originalProps, ref)
28
28
  maxValue = new date.CalendarDate(2100, 12, 31),
29
29
  bottomContent,
30
30
  showTodayButton = true,
31
+ shouldSetDateOnTodayButtonClick,
31
32
  errorMessage,
32
33
  ...restProps
33
34
  } = props;
@@ -126,7 +127,8 @@ const Calendar = utils.forwardRefGeneric(function Calendar2(originalProps, ref)
126
127
  calendarBottomContent.CalendarBottomContent,
127
128
  {
128
129
  bottomContent,
129
- showTodayButton
130
+ showTodayButton,
131
+ shouldSetDateOnTodayButtonClick
130
132
  }
131
133
  )
132
134
  ] }) }),
@@ -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 field = require('../field/field.cjs');
8
9
  var utils = require('../system/utils.cjs');
9
10
  var checkboxGroupStyleContext = require('./checkbox-group-style-context.cjs');
10
11
  var minus = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/minus.cjs');
11
12
  var check = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/check.cjs');
12
- var field = require('../field/field.cjs');
13
13
 
14
14
  const Checkbox = ({
15
15
  classNames,
@@ -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 field = require('../field/field.cjs');
11
+ var popover = require('../popover/popover.cjs');
10
12
  var utils = require('../system/utils.cjs');
11
13
  var comboBoxVariantContext = require('./combo-box-variant-context.cjs');
12
- var field = require('../field/field.cjs');
13
14
  var chevronUp = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/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.0.0/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.0.0/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,8 +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 utils = require('../system/utils.cjs');
10
9
  var field = require('../field/field.cjs');
10
+ var utils = require('../system/utils.cjs');
11
11
 
12
12
  function DateField(originalProps) {
13
13
  const [
@@ -6,13 +6,14 @@ 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 utils = require('../system/utils.cjs');
10
- var dateField = require('../date-field/date-field.cjs');
11
- var calendar = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.cjs');
9
+ var button = require('../button/button.cjs');
12
10
  var calendar$1 = require('../calendar/calendar.cjs');
11
+ require('@internationalized/date');
12
+ var dateField = require('../date-field/date-field.cjs');
13
13
  var field = require('../field/field.cjs');
14
- var button = require('../button/button.cjs');
15
14
  var popover = require('../popover/popover.cjs');
15
+ var utils = require('../system/utils.cjs');
16
+ var calendar = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.cjs');
16
17
 
17
18
  function DatePicker(originalProps) {
18
19
  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 utils = require('../system/utils.cjs');
11
- var calendar = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.cjs');
12
- var rangeCalendar = require('../range-calendar/range-calendar.cjs');
13
- var field = require('../field/field.cjs');
14
- var dateField = require('../date-field/date-field.cjs');
15
10
  var button = require('../button/button.cjs');
11
+ var dateField = require('../date-field/date-field.cjs');
12
+ var field = require('../field/field.cjs');
16
13
  var popover = require('../popover/popover.cjs');
14
+ var rangeCalendar = require('../range-calendar/range-calendar.cjs');
15
+ var utils = require('../system/utils.cjs');
16
+ var calendar = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.cjs');
17
17
 
18
18
  function DateRangePicker(originalProps) {
19
19
  const [
@@ -1,10 +1,6 @@
1
1
  "use strict";
2
2
  'use strict';
3
3
 
4
- var textField = require('./text-field/text-field.cjs');
5
- var select = require('./select/select.cjs');
6
- var selectItem = require('./select/select-item.cjs');
7
- var selectVariantContext = require('./select/select-variant-context.cjs');
8
4
  var useControllableState = require('./hooks/use-controllable-state.cjs');
9
5
  var button = require('./button/button.cjs');
10
6
  var govtBanner = require('./govt-banner/govt-banner.cjs');
@@ -15,6 +11,7 @@ var useSpinner = require('./spinner/use-spinner.cjs');
15
11
  var toggle = require('./toggle/toggle.cjs');
16
12
  var skipNavLink = require('./skip-nav-link/skip-nav-link.cjs');
17
13
  var input = require('./input/input.cjs');
14
+ var textField = require('./text-field/text-field.cjs');
18
15
  var field = require('./field/field.cjs');
19
16
  var textArea = require('./text-area/text-area.cjs');
20
17
  var textAreaField = require('./text-area-field/text-area-field.cjs');
@@ -22,14 +19,15 @@ var comboBox = require('./combo-box/combo-box.cjs');
22
19
  var comboBoxFuzzy = require('./combo-box/combo-box-fuzzy.cjs');
23
20
  var comboBoxItem = require('./combo-box/combo-box-item.cjs');
24
21
  var comboBoxVariantContext = require('./combo-box/combo-box-variant-context.cjs');
25
- var banner = require('./banner/banner.cjs');
26
22
  var tagField = require('./tag-field/tag-field.cjs');
27
23
  var tagFieldItem = require('./tag-field/tag-field-item.cjs');
28
- var badge = require('./badge/badge.cjs');
29
- var date = require('@internationalized/date');
24
+ var select = require('./select/select.cjs');
25
+ var selectItem = require('./select/select-item.cjs');
26
+ var selectVariantContext = require('./select/select-variant-context.cjs');
30
27
  var calendar = require('./calendar/calendar.cjs');
31
28
  var calendarStyleContext = require('./calendar/calendar-style-context.cjs');
32
29
  var utils = require('./calendar/utils.cjs');
30
+ var date = require('@internationalized/date');
33
31
  var rangeCalendar = require('./range-calendar/range-calendar.cjs');
34
32
  var menu = require('./menu/menu.cjs');
35
33
  var popover = require('./popover/popover.cjs');
@@ -39,19 +37,16 @@ var datePicker = require('./date-picker/date-picker.cjs');
39
37
  var dateRangePicker = require('./date-range-picker/date-range-picker.cjs');
40
38
  var checkbox = require('./checkbox/checkbox.cjs');
41
39
  var checkboxGroupStyleContext = require('./checkbox/checkbox-group-style-context.cjs');
42
- var usePagination = require('./pagination/hooks/use-pagination.cjs');
43
40
  var pagination = require('./pagination/pagination.cjs');
44
41
  var paginationCursor = require('./pagination/pagination-cursor.cjs');
45
42
  var paginationItem = require('./pagination/pagination-item.cjs');
43
+ var usePagination = require('./pagination/hooks/use-pagination.cjs');
46
44
  var usePagination$1 = require('./pagination/use-pagination.cjs');
45
+ var banner = require('./banner/banner.cjs');
46
+ var badge = require('./badge/badge.cjs');
47
47
 
48
48
 
49
49
 
50
- exports.TextField = textField.TextField;
51
- exports.Select = select.Select;
52
- exports.SelectItem = selectItem.SelectItem;
53
- exports.SelectVariantContext = selectVariantContext.SelectVariantContext;
54
- exports.useSelectVariantContext = selectVariantContext.useSelectVariantContext;
55
50
  exports.useControllableState = useControllableState.useControllableState;
56
51
  exports.Button = button.Button;
57
52
  exports.GovtBanner = govtBanner.GovtBanner;
@@ -62,6 +57,7 @@ exports.useSpinner = useSpinner.useSpinner;
62
57
  exports.Toggle = toggle.Toggle;
63
58
  exports.SkipNavLink = skipNavLink.SkipNavLink;
64
59
  exports.Input = input.Input;
60
+ exports.TextField = textField.TextField;
65
61
  exports.Description = field.Description;
66
62
  exports.FieldError = field.FieldError;
67
63
  exports.FieldGroup = field.FieldGroup;
@@ -74,14 +70,12 @@ exports.ComboBoxFuzzy = comboBoxFuzzy.ComboBoxFuzzy;
74
70
  exports.ComboBoxItem = comboBoxItem.ComboBoxItem;
75
71
  exports.ComboBoxVariantContext = comboBoxVariantContext.ComboBoxVariantContext;
76
72
  exports.useComboBoxVariantContext = comboBoxVariantContext.useComboBoxVariantContext;
77
- exports.Banner = banner.Banner;
78
73
  exports.TagField = tagField.TagField;
79
74
  exports.TagFieldItem = tagFieldItem.TagFieldItem;
80
- exports.Badge = badge.Badge;
81
- Object.defineProperty(exports, "CalendarDate", {
82
- enumerable: true,
83
- get: function () { return date.CalendarDate; }
84
- });
75
+ exports.Select = select.Select;
76
+ exports.SelectItem = selectItem.SelectItem;
77
+ exports.SelectVariantContext = selectVariantContext.SelectVariantContext;
78
+ exports.useSelectVariantContext = selectVariantContext.useSelectVariantContext;
85
79
  exports.Calendar = calendar.Calendar;
86
80
  exports.CalendarStateWrapper = calendar.CalendarStateWrapper;
87
81
  exports.CalendarStyleContext = calendarStyleContext.CalendarStyleContext;
@@ -90,6 +84,10 @@ exports.getEraFormat = utils.getEraFormat;
90
84
  exports.useGenerateLocalizedMonths = utils.useGenerateLocalizedMonths;
91
85
  exports.useGenerateLocalizedYears = utils.useGenerateLocalizedYears;
92
86
  exports.useLocalizedMonthYear = utils.useLocalizedMonthYear;
87
+ Object.defineProperty(exports, "CalendarDate", {
88
+ enumerable: true,
89
+ get: function () { return date.CalendarDate; }
90
+ });
93
91
  exports.RangeCalendar = rangeCalendar.RangeCalendar;
94
92
  exports.RangeCalendarCell = rangeCalendar.RangeCalendarCell;
95
93
  exports.RangeCalendarStateWrapper = rangeCalendar.RangeCalendarStateWrapper;
@@ -116,9 +114,11 @@ exports.Checkbox = checkbox.Checkbox;
116
114
  exports.CheckboxGroup = checkbox.CheckboxGroup;
117
115
  exports.CheckboxGroupStyleContext = checkboxGroupStyleContext.CheckboxGroupStyleContext;
118
116
  exports.useCheckboxGroupStyleContext = checkboxGroupStyleContext.useCheckboxGroupStyleContext;
119
- exports.PaginationItemType = usePagination.PaginationItemType;
120
117
  exports.Pagination = pagination.Pagination;
121
118
  exports.PaginationCursor = paginationCursor.PaginationCursor;
122
119
  exports.PaginationItem = paginationItem.PaginationItem;
120
+ exports.PaginationItemType = usePagination.PaginationItemType;
123
121
  exports.CURSOR_TRANSITION_TIMEOUT = usePagination$1.CURSOR_TRANSITION_TIMEOUT;
124
122
  exports.usePagination = usePagination$1.usePagination;
123
+ exports.Banner = banner.Banner;
124
+ exports.Badge = badge.Badge;
@@ -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 check = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/check.cjs');
11
12
  var chevronRight = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-right.cjs');
12
13
  var context = require('../system/react-utils/context.cjs');
13
- var popover = require('../popover/popover.cjs');
14
14
 
15
15
  const [MenuVariantContext, useMenuVariantContext] = context.createContext({
16
16
  name: "MenuVariantContext",
@@ -8,12 +8,12 @@ var date = require('@internationalized/date');
8
8
  var reactAriaComponents = require('react-aria-components');
9
9
  var useDeepCompare = require('use-deep-compare');
10
10
  var ouiTheme = require('@opengovsg/oui-theme');
11
+ var calendarStyleContext = require('../calendar/calendar-style-context.cjs');
11
12
  var agnosticCalendarStateContext = require('../calendar/agnostic-calendar-state-context.cjs');
12
13
  var calendarBottomContent = require('../calendar/calendar-bottom-content.cjs');
13
14
  var calendarGridHeader = require('../calendar/calendar-grid-header.cjs');
14
15
  var calendarHeader = require('../calendar/calendar-header.cjs');
15
16
  var utils = require('../system/utils.cjs');
16
- var calendarStyleContext = require('../calendar/calendar-style-context.cjs');
17
17
 
18
18
  const RangeCalendar = utils.forwardRefGeneric(function RangeCalendar2(originalProps, ref) {
19
19
  const [props, variantProps] = utils.mapPropsVariants(
@@ -28,6 +28,7 @@ const RangeCalendar = utils.forwardRefGeneric(function RangeCalendar2(originalPr
28
28
  maxValue = new date.CalendarDate(2100, 12, 31),
29
29
  bottomContent,
30
30
  showTodayButton = true,
31
+ shouldSetDateOnTodayButtonClick,
31
32
  errorMessage,
32
33
  ...restProps
33
34
  } = props;
@@ -117,7 +118,8 @@ const RangeCalendar = utils.forwardRefGeneric(function RangeCalendar2(originalPr
117
118
  calendarBottomContent.CalendarBottomContent,
118
119
  {
119
120
  bottomContent,
120
- showTodayButton
121
+ showTodayButton,
122
+ shouldSetDateOnTodayButtonClick
121
123
  }
122
124
  )
123
125
  ] }) }),
@@ -6,12 +6,12 @@ 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 button = require('../button/button.cjs');
10
+ var field = require('../field/field.cjs');
11
+ var popover = require('../popover/popover.cjs');
9
12
  var utils = require('../system/utils.cjs');
10
13
  var selectVariantContext = require('./select-variant-context.cjs');
11
- var field = require('../field/field.cjs');
12
14
  var chevronDown = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-down.cjs');
13
- var popover = require('../popover/popover.cjs');
14
- var button = require('../button/button.cjs');
15
15
 
16
16
  const calculateEstimatedRowHeight = (size) => {
17
17
  switch (size) {
@@ -6,15 +6,15 @@ 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 field = require('../field/field.cjs');
10
+ var input = require('../input/input.cjs');
11
+ var popover = require('../popover/popover.cjs');
9
12
  var tagFieldItem = require('./tag-field-item.cjs');
10
13
  var tagFieldList = require('./tag-field-list.cjs');
11
14
  var tagFieldRoot = require('./tag-field-root.cjs');
12
15
  var tagFieldTagList = require('./tag-field-tag-list.cjs');
13
16
  var tagFieldTrigger = require('./tag-field-trigger.cjs');
14
17
  var chevronDown = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-down.cjs');
15
- 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,8 +5,8 @@
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 textArea = require('../text-area/text-area.cjs');
9
8
  var field = require('../field/field.cjs');
9
+ var textArea = require('../text-area/text-area.cjs');
10
10
 
11
11
  function TextAreaField({
12
12
  label,
@@ -5,8 +5,8 @@
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');
9
8
  var field = require('../field/field.cjs');
9
+ var input = require('../input/input.cjs');
10
10
 
11
11
  function TextField({
12
12
  label,
@@ -13,6 +13,7 @@ const Toggle = ({
13
13
  children,
14
14
  classNames,
15
15
  thumbIcon,
16
+ labelPlacement = "end",
16
17
  ...originalProps
17
18
  }) => {
18
19
  const [props, variantProps] = utils.mapPropsVariants(
@@ -38,8 +39,9 @@ const Toggle = ({
38
39
  slots.base()
39
40
  ),
40
41
  children: (renderProps) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
42
+ labelPlacement === "start" ? children : null,
41
43
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: slots.track({ className: classNames?.track }), children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: slots.thumb({ className: classNames?.thumb }), children: thumbIcon && clonedThumbIcon(renderProps) }) }),
42
- children
44
+ labelPlacement === "end" ? children : null
43
45
  ] })
44
46
  }
45
47
  );
@@ -5,9 +5,9 @@ import { useMemo, useRef } from 'react';
5
5
  import { useMessageFormatter, useDisclosure } from 'react-aria';
6
6
  import { useDisclosureState } from 'react-stately';
7
7
  import { bannerStyles } from '@opengovsg/oui-theme';
8
+ import { Button } from '../button/button.js';
8
9
  import CircleAlert from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/circle-alert.js';
9
10
  import Info from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/info.js';
10
- import { Button } from '../button/button.js';
11
11
  import X from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/x.js';
12
12
 
13
13
  const i18nStrings = {
@@ -5,9 +5,9 @@ import { forwardRef, useMemo } from 'react';
5
5
  import { chain } from '@react-aria/utils';
6
6
  import { Button as Button$1, composeRenderProps } from 'react-aria-components';
7
7
  import { buttonStyles } from '@opengovsg/oui-theme';
8
+ import { Ripple } from '../ripple/ripple.js';
8
9
  import { useRipple } from '../ripple/use-ripple.js';
9
10
  import { Spinner } from '../spinner/spinner.js';
10
- import { Ripple } from '../ripple/ripple.js';
11
11
 
12
12
  const Button = forwardRef(
13
13
  ({
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  "use client";
3
3
  import { jsx } from 'react/jsx-runtime';
4
- import { useContext } from 'react';
4
+ import { useContext, useCallback } from 'react';
5
5
  import { today, getLocalTimeZone } from '@internationalized/date';
6
6
  import { Button } from '../button/button.js';
7
7
  import { AgnosticCalendarStateContext } from './agnostic-calendar-state-context.js';
@@ -10,11 +10,19 @@ import { useCalendarI18n } from './hooks/use-calendar-i18n.js';
10
10
 
11
11
  const CalendarBottomContent = ({
12
12
  bottomContent,
13
- showTodayButton
13
+ showTodayButton,
14
+ shouldSetDateOnTodayButtonClick
14
15
  }) => {
15
16
  const state = useContext(AgnosticCalendarStateContext);
16
17
  const { slots, classNames, size } = useCalendarStyleContext();
17
18
  const formatMessage = useCalendarI18n();
19
+ const handleTodayClick = useCallback(() => {
20
+ const todayDate = today(getLocalTimeZone());
21
+ state.setFocusedDate(todayDate);
22
+ if (shouldSetDateOnTodayButtonClick) {
23
+ state.selectDate(todayDate);
24
+ }
25
+ }, [shouldSetDateOnTodayButtonClick, state]);
18
26
  if (bottomContent) {
19
27
  return bottomContent;
20
28
  }
@@ -36,9 +44,7 @@ const CalendarBottomContent = ({
36
44
  size,
37
45
  slot: null,
38
46
  className: slots.todayButton({ className: classNames?.todayButton }),
39
- onPress: () => {
40
- state.setFocusedDate(today(getLocalTimeZone()));
41
- },
47
+ onPress: handleTodayClick,
42
48
  children: formatMessage("today")
43
49
  }
44
50
  )
@@ -26,6 +26,7 @@ const Calendar = forwardRefGeneric(function Calendar2(originalProps, ref) {
26
26
  maxValue = new CalendarDate(2100, 12, 31),
27
27
  bottomContent,
28
28
  showTodayButton = true,
29
+ shouldSetDateOnTodayButtonClick,
29
30
  errorMessage,
30
31
  ...restProps
31
32
  } = props;
@@ -124,7 +125,8 @@ const Calendar = forwardRefGeneric(function Calendar2(originalProps, ref) {
124
125
  CalendarBottomContent,
125
126
  {
126
127
  bottomContent,
127
- showTodayButton
128
+ showTodayButton,
129
+ shouldSetDateOnTodayButtonClick
128
130
  }
129
131
  )
130
132
  ] }) }),
@@ -3,11 +3,11 @@
3
3
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
4
4
  import { Checkbox as Checkbox$1, composeRenderProps, Provider, CheckboxGroup as CheckboxGroup$1 } from 'react-aria-components';
5
5
  import { checkboxStyles, checkboxGroupStyles } from '@opengovsg/oui-theme';
6
+ import { Label, Description, FieldError } from '../field/field.js';
6
7
  import { mapPropsVariants } from '../system/utils.js';
7
8
  import { useCheckboxGroupStyleContext, CheckboxGroupStyleContext } from './checkbox-group-style-context.js';
8
9
  import Minus from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/minus.js';
9
10
  import Check from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/check.js';
10
- import { Label, Description, FieldError } from '../field/field.js';
11
11
 
12
12
  const Checkbox = ({
13
13
  classNames,
@@ -5,13 +5,13 @@ import { useMemo, useCallback } from 'react';
5
5
  import { useMessageFormatter } from 'react-aria';
6
6
  import { ListLayout, Provider, ComboBox as ComboBox$1, Input, Button, Virtualizer, ListBox } from 'react-aria-components';
7
7
  import { listBoxItemStyles, cn, comboBoxStyles, composeTailwindRenderProps, composeRenderProps, comboBoxClearButtonStyles } from '@opengovsg/oui-theme';
8
+ import { Label, FieldGroup, Description, FieldError } from '../field/field.js';
9
+ import { Popover } from '../popover/popover.js';
8
10
  import { mapPropsVariants } from '../system/utils.js';
9
11
  import { ComboBoxVariantContext } from './combo-box-variant-context.js';
10
- import { Label, FieldGroup, Description, FieldError } from '../field/field.js';
11
12
  import ChevronUp from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-up.js';
12
13
  import ChevronDown from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-down.js';
13
14
  import X from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/x.js';
14
- import { Popover } from '../popover/popover.js';
15
15
 
16
16
  const calculateEstimatedRowHeight = (size) => {
17
17
  switch (size) {
@@ -4,8 +4,8 @@ import { jsxs, jsx } from 'react/jsx-runtime';
4
4
  import { useMemo } from 'react';
5
5
  import { DateField as DateField$1, DateInput as DateInput$1, DateSegment } from 'react-aria-components';
6
6
  import { dateFieldStyles, composeTailwindRenderProps, dateInputStyles, composeRenderProps } from '@opengovsg/oui-theme';
7
- import { mapPropsVariants } from '../system/utils.js';
8
7
  import { Label, Description, FieldError } from '../field/field.js';
8
+ import { mapPropsVariants } from '../system/utils.js';
9
9
 
10
10
  function DateField(originalProps) {
11
11
  const [
@@ -4,13 +4,14 @@ import { jsxs, jsx } from 'react/jsx-runtime';
4
4
  import { useMemo } from 'react';
5
5
  import { DatePicker as DatePicker$1, Dialog } from 'react-aria-components';
6
6
  import { datePickerStyles, composeTailwindRenderProps } from '@opengovsg/oui-theme';
7
- import { mapPropsVariants } from '../system/utils.js';
8
- import { DateInput } from '../date-field/date-field.js';
9
- import Calendar from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.js';
7
+ import { Button } from '../button/button.js';
10
8
  import { Calendar as Calendar$1 } from '../calendar/calendar.js';
9
+ import '@internationalized/date';
10
+ import { DateInput } from '../date-field/date-field.js';
11
11
  import { Label, FieldGroup, Description, FieldError } from '../field/field.js';
12
- import { Button } from '../button/button.js';
13
12
  import { Popover } from '../popover/popover.js';
13
+ import { mapPropsVariants } from '../system/utils.js';
14
+ import Calendar from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.js';
14
15
 
15
16
  function DatePicker(originalProps) {
16
17
  const [
@@ -5,13 +5,13 @@ import { useMemo } from 'react';
5
5
  import { CalendarDate } from '@internationalized/date';
6
6
  import { DateRangePicker as DateRangePicker$1, Dialog } from 'react-aria-components';
7
7
  import { dateRangePickerStyles, composeTailwindRenderProps } from '@opengovsg/oui-theme';
8
- import { mapPropsVariants } from '../system/utils.js';
9
- import Calendar from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.js';
10
- import { RangeCalendar } from '../range-calendar/range-calendar.js';
11
- import { Label, FieldGroup, Description, FieldError } from '../field/field.js';
12
- import { DateInput } from '../date-field/date-field.js';
13
8
  import { Button } from '../button/button.js';
9
+ import { DateInput } from '../date-field/date-field.js';
10
+ import { Label, FieldGroup, Description, FieldError } from '../field/field.js';
14
11
  import { Popover } from '../popover/popover.js';
12
+ import { RangeCalendar } from '../range-calendar/range-calendar.js';
13
+ import { mapPropsVariants } from '../system/utils.js';
14
+ import Calendar from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/calendar.js';
15
15
 
16
16
  function DateRangePicker(originalProps) {
17
17
  const [
package/dist/esm/index.js CHANGED
@@ -1,8 +1,4 @@
1
1
  "use strict";
2
- export { TextField } from './text-field/text-field.js';
3
- export { Select } from './select/select.js';
4
- export { SelectItem } from './select/select-item.js';
5
- export { SelectVariantContext, useSelectVariantContext } from './select/select-variant-context.js';
6
2
  export { useControllableState } from './hooks/use-controllable-state.js';
7
3
  export { Button } from './button/button.js';
8
4
  export { GovtBanner } from './govt-banner/govt-banner.js';
@@ -13,6 +9,7 @@ export { useSpinner } from './spinner/use-spinner.js';
13
9
  export { Toggle } from './toggle/toggle.js';
14
10
  export { SkipNavLink } from './skip-nav-link/skip-nav-link.js';
15
11
  export { Input } from './input/input.js';
12
+ export { TextField } from './text-field/text-field.js';
16
13
  export { Description, FieldError, FieldGroup, Label } from './field/field.js';
17
14
  export { TextArea } from './text-area/text-area.js';
18
15
  export { TextAreaField } from './text-area-field/text-area-field.js';
@@ -20,14 +17,15 @@ export { ComboBox, ComboBoxEmptyState } from './combo-box/combo-box.js';
20
17
  export { ComboBoxFuzzy } from './combo-box/combo-box-fuzzy.js';
21
18
  export { ComboBoxItem } from './combo-box/combo-box-item.js';
22
19
  export { ComboBoxVariantContext, useComboBoxVariantContext } from './combo-box/combo-box-variant-context.js';
23
- export { Banner } from './banner/banner.js';
24
20
  export { TagField } from './tag-field/tag-field.js';
25
21
  export { TagFieldItem } from './tag-field/tag-field-item.js';
26
- export { Badge } from './badge/badge.js';
27
- export { CalendarDate } from '@internationalized/date';
22
+ export { Select } from './select/select.js';
23
+ export { SelectItem } from './select/select-item.js';
24
+ export { SelectVariantContext, useSelectVariantContext } from './select/select-variant-context.js';
28
25
  export { Calendar, CalendarStateWrapper } from './calendar/calendar.js';
29
26
  export { CalendarStyleContext, useCalendarStyleContext } from './calendar/calendar-style-context.js';
30
27
  export { getEraFormat, useGenerateLocalizedMonths, useGenerateLocalizedYears, useLocalizedMonthYear } from './calendar/utils.js';
28
+ export { CalendarDate } from '@internationalized/date';
31
29
  export { RangeCalendar, RangeCalendarCell, RangeCalendarStateWrapper } from './range-calendar/range-calendar.js';
32
30
  export { Menu, MenuItem, MenuSection, MenuSeparator, MenuTrigger, MenuVariantContext, SubmenuTrigger, useMenuVariantContext } from './menu/menu.js';
33
31
  export { Popover } from './popover/popover.js';
@@ -37,8 +35,10 @@ export { DatePicker } from './date-picker/date-picker.js';
37
35
  export { DateRangePicker } from './date-range-picker/date-range-picker.js';
38
36
  export { Checkbox, CheckboxGroup } from './checkbox/checkbox.js';
39
37
  export { CheckboxGroupStyleContext, useCheckboxGroupStyleContext } from './checkbox/checkbox-group-style-context.js';
40
- export { PaginationItemType } from './pagination/hooks/use-pagination.js';
41
38
  export { Pagination } from './pagination/pagination.js';
42
39
  export { PaginationCursor } from './pagination/pagination-cursor.js';
43
40
  export { PaginationItem } from './pagination/pagination-item.js';
41
+ export { PaginationItemType } from './pagination/hooks/use-pagination.js';
44
42
  export { CURSOR_TRANSITION_TIMEOUT, usePagination } from './pagination/use-pagination.js';
43
+ export { Banner } from './banner/banner.js';
44
+ export { Badge } from './badge/badge.js';
@@ -4,11 +4,11 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
4
4
  import { forwardRef, useMemo, useCallback } from 'react';
5
5
  import { useContextProps, MenuItem as MenuItem$1, composeRenderProps, Provider, Menu as Menu$1, MenuSection as MenuSection$1, Header, Collection, MenuTrigger as MenuTrigger$1, SubmenuTrigger as SubmenuTrigger$1, Separator } from 'react-aria-components';
6
6
  import { listBoxItemStyles, menuItemStyles, menuStyles, menuSectionStyles, menuDividerStyles } from '@opengovsg/oui-theme';
7
+ import { Popover } from '../popover/popover.js';
7
8
  import { forwardRefGeneric, mapPropsVariants } from '../system/utils.js';
8
9
  import Check from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/check.js';
9
10
  import ChevronRight from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-right.js';
10
11
  import { createContext } from '../system/react-utils/context.js';
11
- import { Popover } from '../popover/popover.js';
12
12
 
13
13
  const [MenuVariantContext, useMenuVariantContext] = createContext({
14
14
  name: "MenuVariantContext",
@@ -6,12 +6,12 @@ import { CalendarDate, today, getLocalTimeZone, getDayOfWeek } from '@internatio
6
6
  import { RangeCalendar as RangeCalendar$1, Provider, CalendarGrid, CalendarGridBody, Text, RangeCalendarStateContext, useLocale, CalendarCell } from 'react-aria-components';
7
7
  import { useDeepCompareMemo } from 'use-deep-compare';
8
8
  import { calendarStyles, composeRenderProps, cn, dataAttr } from '@opengovsg/oui-theme';
9
+ import { CalendarStyleContext, useCalendarStyleContext } from '../calendar/calendar-style-context.js';
9
10
  import { AgnosticCalendarStateContext } from '../calendar/agnostic-calendar-state-context.js';
10
11
  import { CalendarBottomContent } from '../calendar/calendar-bottom-content.js';
11
12
  import { CalendarGridHeader } from '../calendar/calendar-grid-header.js';
12
13
  import { CalendarHeader } from '../calendar/calendar-header.js';
13
14
  import { forwardRefGeneric, mapPropsVariants } from '../system/utils.js';
14
- import { CalendarStyleContext, useCalendarStyleContext } from '../calendar/calendar-style-context.js';
15
15
 
16
16
  const RangeCalendar = forwardRefGeneric(function RangeCalendar2(originalProps, ref) {
17
17
  const [props, variantProps] = mapPropsVariants(
@@ -26,6 +26,7 @@ const RangeCalendar = forwardRefGeneric(function RangeCalendar2(originalProps, r
26
26
  maxValue = new CalendarDate(2100, 12, 31),
27
27
  bottomContent,
28
28
  showTodayButton = true,
29
+ shouldSetDateOnTodayButtonClick,
29
30
  errorMessage,
30
31
  ...restProps
31
32
  } = props;
@@ -115,7 +116,8 @@ const RangeCalendar = forwardRefGeneric(function RangeCalendar2(originalProps, r
115
116
  CalendarBottomContent,
116
117
  {
117
118
  bottomContent,
118
- showTodayButton
119
+ showTodayButton,
120
+ shouldSetDateOnTodayButtonClick
119
121
  }
120
122
  )
121
123
  ] }) }),
@@ -4,12 +4,12 @@ import { jsx, jsxs } from 'react/jsx-runtime';
4
4
  import { useMemo } from 'react';
5
5
  import { Provider, Select as Select$1, SelectValue, Virtualizer, ListLayout, ListBox } from 'react-aria-components';
6
6
  import { selectStyles, composeRenderProps } from '@opengovsg/oui-theme';
7
+ import { Button } from '../button/button.js';
8
+ import { Label, Description, FieldError } from '../field/field.js';
9
+ import { Popover } from '../popover/popover.js';
7
10
  import { mapPropsVariants } from '../system/utils.js';
8
11
  import { SelectVariantContext } from './select-variant-context.js';
9
- import { Label, Description, FieldError } from '../field/field.js';
10
12
  import ChevronDown from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-down.js';
11
- import { Popover } from '../popover/popover.js';
12
- import { Button } from '../button/button.js';
13
13
 
14
14
  const calculateEstimatedRowHeight = (size) => {
15
15
  switch (size) {
@@ -4,15 +4,15 @@ import { jsxs, jsx } from 'react/jsx-runtime';
4
4
  import { createElement } from 'react';
5
5
  import { composeRenderProps } from 'react-aria-components';
6
6
  import { tagFieldStyles } from '@opengovsg/oui-theme';
7
+ import { Label, FieldGroup, Description, FieldError } from '../field/field.js';
8
+ import { Input } from '../input/input.js';
9
+ import { Popover } from '../popover/popover.js';
7
10
  import { TagFieldItem } from './tag-field-item.js';
8
11
  import { TagFieldList } from './tag-field-list.js';
9
12
  import { TagFieldRoot } from './tag-field-root.js';
10
13
  import { TagFieldTagList } from './tag-field-tag-list.js';
11
14
  import { TagFieldTrigger } from './tag-field-trigger.js';
12
15
  import ChevronDown from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.0.0/node_modules/lucide-react/dist/esm/icons/chevron-down.js';
13
- import { Label, FieldGroup, Description, FieldError } from '../field/field.js';
14
- import { Input } from '../input/input.js';
15
- import { Popover } from '../popover/popover.js';
16
16
 
17
17
  function TagField({
18
18
  classNames,
@@ -3,8 +3,8 @@
3
3
  import { jsxs, jsx } from 'react/jsx-runtime';
4
4
  import { TextField } from 'react-aria-components';
5
5
  import { composeTailwindRenderProps } from '@opengovsg/oui-theme';
6
- import { TextArea } from '../text-area/text-area.js';
7
6
  import { Label, Description, FieldError } from '../field/field.js';
7
+ import { TextArea } from '../text-area/text-area.js';
8
8
 
9
9
  function TextAreaField({
10
10
  label,
@@ -3,8 +3,8 @@
3
3
  import { jsxs, jsx } from 'react/jsx-runtime';
4
4
  import { TextField as TextField$1 } from 'react-aria-components';
5
5
  import { composeTailwindRenderProps } from '@opengovsg/oui-theme';
6
- import { Input } from '../input/input.js';
7
6
  import { Label, Description, FieldError } from '../field/field.js';
7
+ import { Input } from '../input/input.js';
8
8
 
9
9
  function TextField({
10
10
  label,
@@ -11,6 +11,7 @@ const Toggle = ({
11
11
  children,
12
12
  classNames,
13
13
  thumbIcon,
14
+ labelPlacement = "end",
14
15
  ...originalProps
15
16
  }) => {
16
17
  const [props, variantProps] = mapPropsVariants(
@@ -36,8 +37,9 @@ const Toggle = ({
36
37
  slots.base()
37
38
  ),
38
39
  children: (renderProps) => /* @__PURE__ */ jsxs(Fragment, { children: [
40
+ labelPlacement === "start" ? children : null,
39
41
  /* @__PURE__ */ jsx("div", { className: slots.track({ className: classNames?.track }), children: /* @__PURE__ */ jsx("span", { className: slots.thumb({ className: classNames?.thumb }), children: thumbIcon && clonedThumbIcon(renderProps) }) }),
40
- children
42
+ labelPlacement === "end" ? children : null
41
43
  ] })
42
44
  }
43
45
  );
@@ -1,4 +1,6 @@
1
1
  import type { CalendarDate } from "@internationalized/date";
2
2
  import type { CalendarProps } from "./types";
3
- export declare const CalendarBottomContent: <T extends CalendarDate>({ bottomContent, showTodayButton, }: Pick<CalendarProps<T>, "bottomContent" | "showTodayButton">) => string | number | bigint | true | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null;
3
+ type CalendarBottomContentProps<T extends CalendarDate> = Pick<CalendarProps<T>, "bottomContent" | "showTodayButton" | "shouldSetDateOnTodayButtonClick">;
4
+ export declare const CalendarBottomContent: <T extends CalendarDate>({ bottomContent, showTodayButton, shouldSetDateOnTodayButtonClick, }: CalendarBottomContentProps<T>) => string | number | bigint | true | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null;
5
+ export {};
4
6
  //# sourceMappingURL=calendar-bottom-content.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"calendar-bottom-content.d.ts","sourceRoot":"","sources":["../../../src/calendar/calendar-bottom-content.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAI3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAM5C,eAAO,MAAM,qBAAqB,GAAI,CAAC,SAAS,YAAY,uCAGzD,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,GAAG,iBAAiB,CAAC,6VAkC7D,CAAA"}
1
+ {"version":3,"file":"calendar-bottom-content.d.ts","sourceRoot":"","sources":["../../../src/calendar/calendar-bottom-content.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAI3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAM5C,KAAK,0BAA0B,CAAC,CAAC,SAAS,YAAY,IAAI,IAAI,CAC5D,aAAa,CAAC,CAAC,CAAC,EAChB,eAAe,GAAG,iBAAiB,GAAG,iCAAiC,CACxE,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,CAAC,SAAS,YAAY,wEAIzD,0BAA0B,CAAC,CAAC,CAAC,6VAwC/B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../../src/calendar/calendar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAiBtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAQ5C,eAAO,MAAM,QAAQ,GACnB,CAAC,SAAS,SAAS,8EAqCJ,MAAO,SAuFtB,CAAA;AAEF,eAAO,MAAM,oBAAoB,kBAE9B;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,4CAQA,CAAA"}
1
+ {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../../src/calendar/calendar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAiBtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAQ5C,eAAO,MAAM,QAAQ,GACnB,CAAC,SAAS,SAAS,8EAqCC,MAAO,SAyF3B,CAAA;AAEF,eAAO,MAAM,oBAAoB,kBAE9B;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,4CAQA,CAAA"}
@@ -43,6 +43,11 @@ export interface CalendarProps<T extends DateValue> extends AriaCalendarProps<T>
43
43
  * If `bottomContent is provided, this will be ignored.
44
44
  */
45
45
  showTodayButton?: boolean;
46
+ /**
47
+ * If `true`, clicking on the "Today" button will set the selected date to today.
48
+ * If `false`, it will only move the focus to today's date without changing the selected date.
49
+ */
50
+ shouldSetDateOnTodayButtonClick?: boolean;
46
51
  bottomContent?: ReactNode;
47
52
  }
48
53
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/calendar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EACV,aAAa,IAAI,iBAAiB,EAClC,iBAAiB,EACjB,SAAS,EACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,SAAS,CAChD,SAAQ,iBAAiB,CAAC,CAAC,CAAC,EAC1B,oBAAoB,EACpB,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;IAE1C;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,aAAa,CAAC,EAAE,SAAS,CAAA;CAC1B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/calendar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EACV,aAAa,IAAI,iBAAiB,EAClC,iBAAiB,EACjB,SAAS,EACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,SAAS,CAChD,SAAQ,iBAAiB,CAAC,CAAC,CAAC,EAC1B,oBAAoB,EACpB,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;IAE1C;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;OAGG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;IACzC,aAAa,CAAC,EAAE,SAAS,CAAA;CAC1B"}
@@ -42,6 +42,11 @@ export interface RangeCalendarProps<T extends DateValue> extends CalendarVariant
42
42
  * If `bottomContent is provided, this will be ignored.
43
43
  */
44
44
  showTodayButton?: boolean;
45
+ /**
46
+ * If `true`, clicking on the "Today" button will set the selected date to today.
47
+ * If `false`, it will only move the focus to today's date without changing the selected date.
48
+ */
49
+ shouldSetDateOnTodayButtonClick?: boolean;
45
50
  bottomContent?: React.ReactNode;
46
51
  errorMessage?: string;
47
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"range-calendar.d.ts","sourceRoot":"","sources":["../../../src/range-calendar/range-calendar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,kBAAkB,IAAI,sBAAsB,EAC5C,iBAAiB,EACjB,SAAS,EACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACL,YAAY,EAIb,MAAM,yBAAyB,CAAA;AAahC,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAe7B,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,SAAS,CACrD,SAAQ,oBAAoB,EAC1B,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,EACvC,sBAAsB,CAAC,CAAC,CAAC;IAC3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;IAE1C;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAE/B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,eAAO,MAAM,aAAa,GACxB,CAAC,SAAS,SAAS,mFA7BE,MAAO,SA6I5B,CAAA;AAEF,eAAO,MAAM,yBAAyB,kBAEnC;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,4CAQA,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,YAAY,gEAKrD;IACD,IAAI,EAAE,YAAY,CAAA;IAClB,gBAAgB,EAAE,OAAO,CAAA;IACzB,eAAe,EAAE,SAAS,GAAG,IAAI,CAAA;IACjC,cAAc,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAA;CACzD,4CAuDA,CAAA"}
1
+ {"version":3,"file":"range-calendar.d.ts","sourceRoot":"","sources":["../../../src/range-calendar/range-calendar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,kBAAkB,IAAI,sBAAsB,EAC5C,iBAAiB,EACjB,SAAS,EACV,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACL,YAAY,EAIb,MAAM,yBAAyB,CAAA;AAahC,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAe7B,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,SAAS,CACrD,SAAQ,oBAAoB,EAC1B,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,EACvC,sBAAsB,CAAC,CAAC,CAAC;IAC3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;IAE1C;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;OAGG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;IACzC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAE/B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,eAAO,MAAM,aAAa,GACxB,CAAC,SAAS,SAAS,mFAlCE,MAAO,SAoJ5B,CAAA;AAEF,eAAO,MAAM,yBAAyB,kBAEnC;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,4CAQA,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,YAAY,gEAKrD;IACD,IAAI,EAAE,YAAY,CAAA;IAClB,gBAAgB,EAAE,OAAO,CAAA;IACzB,eAAe,EAAE,SAAS,GAAG,IAAI,CAAA;IACjC,cAAc,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAA;CACzD,4CAuDA,CAAA"}
@@ -10,6 +10,11 @@ interface _ToggleProps extends Omit<AriaSwitchProps, "children">, VariantProps<t
10
10
  * The icon to be displayed inside the thumb.
11
11
  */
12
12
  thumbIcon?: React.ReactElement | ((props: ToggleThumbIconProps) => React.ReactNode);
13
+ /**
14
+ * Where to place the children label.
15
+ * @defaultValue "end"
16
+ */
17
+ labelPlacement?: "start" | "end";
13
18
  }
14
19
  export type ToggleProps = _ToggleProps & ({
15
20
  children: React.ReactNode;
@@ -18,6 +23,6 @@ export type ToggleProps = _ToggleProps & ({
18
23
  children?: never;
19
24
  "aria-label": string;
20
25
  });
21
- export declare const Toggle: ({ children, classNames, thumbIcon, ...originalProps }: ToggleProps) => import("react/jsx-runtime").JSX.Element;
26
+ export declare const Toggle: ({ children, classNames, thumbIcon, labelPlacement, ...originalProps }: ToggleProps) => import("react/jsx-runtime").JSX.Element;
22
27
  export {};
23
28
  //# sourceMappingURL=toggle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/toggle/toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,IAAI,eAAe,EAC9B,iBAAiB,EAClB,MAAM,uBAAuB,CAAA;AAK9B,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACb,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAA8B,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAI/E,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,UAAU,YACR,SAAQ,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,EACvC,YAAY,CAAC,OAAO,YAAY,CAAC;IACnC,UAAU,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;IACxC;;OAEG;IACH,SAAS,CAAC,EACN,KAAK,CAAC,YAAY,GAClB,CAAC,CAAC,KAAK,EAAE,oBAAoB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAA;CACvD;AAED,MAAM,MAAM,WAAW,GAAG,YAAY,GACpC,CACI;IACE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GACD;IACE,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;CACrB,CACJ,CAAA;AAEH,eAAO,MAAM,MAAM,0DAKhB,WAAW,4CAwCb,CAAA"}
1
+ {"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/toggle/toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,IAAI,eAAe,EAC9B,iBAAiB,EAClB,MAAM,uBAAuB,CAAA;AAK9B,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACb,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAA8B,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAI/E,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,UAAU,YACR,SAAQ,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,EACvC,YAAY,CAAC,OAAO,YAAY,CAAC;IACnC,UAAU,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;IACxC;;OAEG;IACH,SAAS,CAAC,EACN,KAAK,CAAC,YAAY,GAClB,CAAC,CAAC,KAAK,EAAE,oBAAoB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAA;IACtD;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,KAAK,CAAA;CACjC;AAED,MAAM,MAAM,WAAW,GAAG,YAAY,GACpC,CACI;IACE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GACD;IACE,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;CACrB,CACJ,CAAA;AAEH,eAAO,MAAM,MAAM,0EAMhB,WAAW,4CAyCb,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengovsg/oui",
3
- "version": "0.0.0-snapshot-20250919051751",
3
+ "version": "0.0.0-snapshot-20251002072708",
4
4
  "sideEffects": false,
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "type": "module",
@@ -49,7 +49,7 @@
49
49
  "storybook": "9.1.6",
50
50
  "tsx": "^4.20.3",
51
51
  "typescript": "5.7.3",
52
- "@opengovsg/oui-theme": "0.0.0-snapshot-20250919051751",
52
+ "@opengovsg/oui-theme": "0.0.0-snapshot-20251002072708",
53
53
  "@oui/chromatic": "0.0.0",
54
54
  "@oui/eslint-config": "0.0.0",
55
55
  "@oui/prettier-config": "0.0.0",
@@ -83,7 +83,7 @@
83
83
  "motion": ">=11.12.0 || >=12.0.0-alpha.1",
84
84
  "react": ">= 18",
85
85
  "react-aria-components": "^1.12.2",
86
- "@opengovsg/oui-theme": "0.0.0-snapshot-20250919051751"
86
+ "@opengovsg/oui-theme": "0.0.0-snapshot-20251002072708"
87
87
  },
88
88
  "scripts": {
89
89
  "build": "tsx ../../tooling/build-scripts/main.ts --dts --clean",