@carbon/react 1.102.0 → 1.103.0
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.
- package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +1011 -1011
- package/es/components/Breadcrumb/BreadcrumbItem.js +1 -1
- package/es/components/Button/Button.Skeleton.js +2 -1
- package/es/components/Button/Button.d.ts +4 -4
- package/es/components/Button/Button.js +4 -4
- package/es/components/Button/index.js +1 -1
- package/es/components/ButtonSet/ButtonSet.js +1 -1
- package/es/components/Checkbox/index.js +1 -1
- package/es/components/ComboBox/ComboBox.js +2 -2
- package/es/components/ComposedModal/ComposedModal.js +0 -3
- package/es/components/ComposedModal/ComposedModalPresence.d.ts +9 -1
- package/es/components/ComposedModal/ComposedModalPresence.js +14 -1
- package/es/components/ComposedModal/index.d.ts +1 -1
- package/es/components/ContainedList/index.js +1 -1
- package/es/components/DataTable/TableHeader.js +1 -1
- package/es/components/DataTable/TableRow.js +1 -1
- package/es/components/DataTable/TableToolbarMenu.js +1 -1
- package/es/components/DatePicker/DatePicker.Skeleton.d.ts +8 -5
- package/es/components/DatePicker/DatePicker.Skeleton.js +2 -2
- package/es/components/DatePicker/DatePicker.d.ts +4 -2
- package/es/components/DatePicker/DatePicker.js +9 -6
- package/es/components/DatePicker/index.js +1 -1
- package/es/components/DatePicker/plugins/rangePlugin.d.ts +1 -1
- package/es/components/DatePicker/plugins/rangePlugin.js +2 -1
- package/es/components/{UIShell/_utils.d.ts → DatePicker/utils.d.ts} +2 -2
- package/es/components/{UIShell/_utils.js → DatePicker/utils.js} +2 -2
- package/es/components/DatePickerInput/DatePickerInput.js +1 -1
- package/es/components/Dialog/Dialog.js +1 -1
- package/es/components/Dropdown/index.js +1 -1
- package/es/components/ExpandableSearch/ExpandableSearch.js +1 -1
- package/es/components/FeatureFlags/index.d.ts +8 -18
- package/es/components/FeatureFlags/index.js +23 -103
- package/es/components/FileUploader/FileUploader.Skeleton.js +1 -1
- package/es/components/FileUploader/FileUploaderButton.d.ts +1 -1
- package/es/components/FileUploader/FileUploaderButton.js +3 -7
- package/es/components/Icon/Icon.Skeleton.js +1 -1
- package/es/components/IconIndicator/index.js +1 -1
- package/es/components/Menu/MenuItem.js +1 -1
- package/es/components/Modal/ModalPresence.d.ts +9 -1
- package/es/components/Modal/ModalPresence.js +14 -1
- package/es/components/Modal/index.d.ts +2 -2
- package/es/components/MultiSelect/MultiSelect.js +9 -10
- package/es/components/Notification/Notification.js +1 -1
- package/es/components/NumberInput/NumberInput.js +15 -13
- package/es/components/OverflowMenu/OverflowMenu.d.ts +1 -1
- package/es/components/OverflowMenu/OverflowMenu.js +3 -5
- package/es/components/OverflowMenuV2/index.js +1 -1
- package/es/components/PageHeader/PageHeader.js +2 -23
- package/es/components/Pagination/Pagination.Skeleton.js +1 -1
- package/es/components/Pagination/Pagination.d.ts +4 -0
- package/es/components/Pagination/Pagination.js +6 -1
- package/es/components/Pagination/experimental/Pagination.js +12 -1
- package/es/components/Popover/index.js +1 -1
- package/es/components/RadioButton/RadioButton.Skeleton.js +1 -1
- package/es/components/Search/index.js +1 -1
- package/es/components/Select/index.js +1 -1
- package/es/components/ShapeIndicator/index.js +1 -1
- package/es/components/Slider/Slider.js +230 -249
- package/es/components/Slider/SliderHandles.js +65 -53
- package/es/components/Switch/IconSwitch.js +1 -1
- package/es/components/Tabs/Tabs.js +10 -12
- package/es/components/Tag/Tag.Skeleton.js +1 -1
- package/es/components/TextArea/TextArea.js +1 -1
- package/es/components/TextArea/index.js +1 -1
- package/es/components/TextInput/index.js +1 -1
- package/es/components/Tile/Tile.d.ts +2 -2
- package/es/components/Tile/Tile.js +7 -2
- package/es/components/Toggle/Toggle.Skeleton.js +1 -1
- package/es/components/Toggletip/index.js +1 -1
- package/es/components/UIShell/HeaderMenu.js +1 -1
- package/es/components/UIShell/SideNav.d.ts +1 -4
- package/es/components/UIShell/SideNav.js +10 -25
- package/es/components/UIShell/SideNavContext.d.ts +17 -0
- package/es/components/UIShell/SideNavContext.js +24 -0
- package/es/components/UIShell/SideNavItems.d.ts +1 -1
- package/es/components/UIShell/SideNavItems.js +12 -16
- package/es/components/UIShell/SideNavLink.js +8 -4
- package/es/components/UIShell/SideNavMenu.js +7 -5
- package/es/index.js +30 -30
- package/es/internal/useNoInteractiveChildren.js +25 -30
- package/es/internal/usePresence.d.ts +1 -1
- package/es/internal/usePresence.js +14 -17
- package/lib/components/Button/Button.Skeleton.js +2 -1
- package/lib/components/Button/Button.d.ts +4 -4
- package/lib/components/Button/Button.js +4 -4
- package/lib/components/Button/index.js +1 -1
- package/lib/components/ButtonSet/ButtonSet.js +1 -1
- package/lib/components/Checkbox/index.js +1 -1
- package/lib/components/ComboBox/ComboBox.js +2 -2
- package/lib/components/ComposedModal/ComposedModal.js +0 -3
- package/lib/components/ComposedModal/ComposedModalPresence.d.ts +9 -1
- package/lib/components/ComposedModal/ComposedModalPresence.js +14 -0
- package/lib/components/ComposedModal/index.d.ts +1 -1
- package/lib/components/ContainedList/index.js +0 -3
- package/lib/components/DataTable/TableToolbarMenu.js +1 -1
- package/lib/components/DatePicker/DatePicker.Skeleton.d.ts +8 -5
- package/lib/components/DatePicker/DatePicker.Skeleton.js +2 -2
- package/lib/components/DatePicker/DatePicker.d.ts +4 -2
- package/lib/components/DatePicker/DatePicker.js +9 -6
- package/lib/components/DatePicker/index.js +1 -1
- package/lib/components/DatePicker/plugins/rangePlugin.d.ts +1 -1
- package/lib/components/DatePicker/plugins/rangePlugin.js +2 -1
- package/lib/components/{UIShell/_utils.d.ts → DatePicker/utils.d.ts} +2 -2
- package/lib/components/{UIShell/_utils.js → DatePicker/utils.js} +2 -2
- package/lib/components/Dropdown/index.js +1 -1
- package/lib/components/FeatureFlags/index.d.ts +8 -18
- package/lib/components/FeatureFlags/index.js +21 -102
- package/lib/components/FileUploader/FileUploader.Skeleton.js +1 -1
- package/lib/components/FileUploader/FileUploaderButton.d.ts +1 -1
- package/lib/components/FileUploader/FileUploaderButton.js +2 -6
- package/lib/components/Icon/Icon.Skeleton.js +0 -3
- package/lib/components/IconIndicator/index.js +0 -3
- package/lib/components/Modal/ModalPresence.d.ts +9 -1
- package/lib/components/Modal/ModalPresence.js +14 -0
- package/lib/components/Modal/index.d.ts +2 -2
- package/lib/components/MultiSelect/MultiSelect.js +8 -9
- package/lib/components/NumberInput/NumberInput.js +14 -12
- package/lib/components/OverflowMenu/OverflowMenu.d.ts +1 -1
- package/lib/components/OverflowMenu/OverflowMenu.js +2 -7
- package/lib/components/OverflowMenuV2/index.js +1 -1
- package/lib/components/PageHeader/PageHeader.js +2 -23
- package/lib/components/Pagination/Pagination.Skeleton.js +0 -3
- package/lib/components/Pagination/Pagination.d.ts +4 -0
- package/lib/components/Pagination/Pagination.js +6 -1
- package/lib/components/Pagination/experimental/Pagination.js +12 -1
- package/lib/components/RadioButton/RadioButton.Skeleton.js +0 -3
- package/lib/components/Search/index.js +1 -1
- package/lib/components/Select/index.js +1 -1
- package/lib/components/ShapeIndicator/index.js +0 -3
- package/lib/components/Slider/Slider.js +229 -248
- package/lib/components/Slider/SliderHandles.js +64 -52
- package/lib/components/Tabs/Tabs.js +9 -11
- package/lib/components/Tag/Tag.Skeleton.js +0 -3
- package/lib/components/TextArea/index.js +1 -1
- package/lib/components/TextInput/index.js +1 -1
- package/lib/components/Tile/Tile.d.ts +2 -2
- package/lib/components/Tile/Tile.js +6 -1
- package/lib/components/Toggle/Toggle.Skeleton.js +0 -3
- package/lib/components/Toggletip/index.js +0 -3
- package/lib/components/UIShell/SideNav.d.ts +1 -4
- package/lib/components/UIShell/SideNav.js +8 -24
- package/lib/components/UIShell/SideNavContext.d.ts +17 -0
- package/lib/components/UIShell/SideNavContext.js +27 -0
- package/lib/components/UIShell/SideNavItems.d.ts +1 -1
- package/lib/components/UIShell/SideNavItems.js +11 -15
- package/lib/components/UIShell/SideNavLink.js +7 -3
- package/lib/components/UIShell/SideNavMenu.js +8 -6
- package/lib/index.js +102 -100
- package/lib/internal/useNoInteractiveChildren.js +25 -30
- package/lib/internal/usePresence.d.ts +1 -1
- package/lib/internal/usePresence.js +13 -16
- package/package.json +5 -5
- package/telemetry.yml +2 -1
package/es/index.js
CHANGED
|
@@ -9,24 +9,24 @@
|
|
|
9
9
|
import './feature-flags.js';
|
|
10
10
|
export { default as Accordion } from './components/Accordion/Accordion.js';
|
|
11
11
|
export { default as AccordionItem } from './components/Accordion/AccordionItem.js';
|
|
12
|
-
export {
|
|
12
|
+
export { AccordionSkeleton } from './components/Accordion/Accordion.Skeleton.js';
|
|
13
13
|
export { default as AspectRatio } from './components/AspectRatio/AspectRatio.js';
|
|
14
14
|
export { default as Breadcrumb } from './components/Breadcrumb/Breadcrumb.js';
|
|
15
15
|
export { default as BreadcrumbItem } from './components/Breadcrumb/BreadcrumbItem.js';
|
|
16
|
-
export {
|
|
16
|
+
export { BreadcrumbSkeleton } from './components/Breadcrumb/Breadcrumb.Skeleton.js';
|
|
17
17
|
export { default as Button, ButtonKinds, ButtonSizes, ButtonTooltipAlignments, ButtonTooltipPositions } from './components/Button/Button.js';
|
|
18
|
-
export {
|
|
18
|
+
export { ButtonSkeleton } from './components/Button/Button.Skeleton.js';
|
|
19
19
|
export { default as ButtonSet } from './components/ButtonSet/ButtonSet.js';
|
|
20
20
|
export { default as Checkbox } from './components/Checkbox/Checkbox.js';
|
|
21
|
-
export {
|
|
21
|
+
export { CheckboxSkeleton } from './components/Checkbox/Checkbox.Skeleton.js';
|
|
22
22
|
export { default as CheckboxGroup } from './components/CheckboxGroup/CheckboxGroup.js';
|
|
23
23
|
export { ClassPrefix } from './components/ClassPrefix/index.js';
|
|
24
24
|
export { default as CodeSnippet } from './components/CodeSnippet/CodeSnippet.js';
|
|
25
|
-
export {
|
|
25
|
+
export { CodeSnippetSkeleton } from './components/CodeSnippet/CodeSnippet.Skeleton.js';
|
|
26
26
|
export { default as ComboBox } from './components/ComboBox/ComboBox.js';
|
|
27
27
|
export { ComboButton } from './components/ComboButton/index.js';
|
|
28
28
|
export { default as ComposedModal, ModalBody } from './components/ComposedModal/ComposedModal.js';
|
|
29
|
-
export { ComposedModalPresence } from './components/ComposedModal/ComposedModalPresence.js';
|
|
29
|
+
export { ComposedModalPresence, withComposedModalPresence } from './components/ComposedModal/ComposedModalPresence.js';
|
|
30
30
|
export { ModalHeader } from './components/ComposedModal/ModalHeader.js';
|
|
31
31
|
export { ModalFooter } from './components/ComposedModal/ModalFooter.js';
|
|
32
32
|
import './components/ContainedList/index.js';
|
|
@@ -60,17 +60,17 @@ export { default as TableToolbarSearch } from './components/DataTable/TableToolb
|
|
|
60
60
|
export { default as TableToolbarMenu } from './components/DataTable/TableToolbarMenu.js';
|
|
61
61
|
export { default as DataTableSkeleton } from './components/DataTableSkeleton/DataTableSkeleton.js';
|
|
62
62
|
export { default as DatePicker } from './components/DatePicker/DatePicker.js';
|
|
63
|
-
export {
|
|
63
|
+
export { DatePickerSkeleton } from './components/DatePicker/DatePicker.Skeleton.js';
|
|
64
64
|
export { default as DatePickerInput } from './components/DatePickerInput/DatePickerInput.js';
|
|
65
65
|
export { default as Dropdown } from './components/Dropdown/Dropdown.js';
|
|
66
|
-
export {
|
|
66
|
+
export { DropdownSkeleton } from './components/Dropdown/Dropdown.Skeleton.js';
|
|
67
67
|
export { default as ErrorBoundary } from './components/ErrorBoundary/ErrorBoundary.js';
|
|
68
68
|
export { ErrorBoundaryContext } from './components/ErrorBoundary/ErrorBoundaryContext.js';
|
|
69
69
|
export { default as ExpandableSearch } from './components/ExpandableSearch/ExpandableSearch.js';
|
|
70
70
|
export { FeatureFlags, FeatureFlags as preview_FeatureFlags, useFeatureFlag as preview_useFeatureFlag, useFeatureFlags as preview_useFeatureFlags, FeatureFlags as unstable_FeatureFlags, useFeatureFlag as unstable_useFeatureFlag, useFeatureFlags as unstable_useFeatureFlags, useFeatureFlag, useFeatureFlags } from './components/FeatureFlags/index.js';
|
|
71
71
|
export { default as FileUploader } from './components/FileUploader/FileUploader.js';
|
|
72
72
|
export { default as Filename } from './components/FileUploader/Filename.js';
|
|
73
|
-
export {
|
|
73
|
+
export { FileUploaderSkeleton } from './components/FileUploader/FileUploader.Skeleton.js';
|
|
74
74
|
export { default as FileUploaderButton } from './components/FileUploader/FileUploaderButton.js';
|
|
75
75
|
export { default as FileUploaderDropContainer } from './components/FileUploader/FileUploaderDropContainer.js';
|
|
76
76
|
export { default as FileUploaderItem } from './components/FileUploader/FileUploaderItem.js';
|
|
@@ -86,7 +86,7 @@ export { default as Row } from './components/Grid/Row.js';
|
|
|
86
86
|
export { default as Column } from './components/Grid/Column.js';
|
|
87
87
|
export { ColumnHang } from './components/Grid/ColumnHang.js';
|
|
88
88
|
export { GridSettings } from './components/Grid/GridContext.js';
|
|
89
|
-
export {
|
|
89
|
+
export { IconSkeleton } from './components/Icon/Icon.Skeleton.js';
|
|
90
90
|
export { IdPrefix } from './components/IdPrefix/index.js';
|
|
91
91
|
export { default as InlineLoading } from './components/InlineLoading/InlineLoading.js';
|
|
92
92
|
export { default as Link } from './components/Link/Link.js';
|
|
@@ -96,7 +96,7 @@ export { Menu } from './components/Menu/Menu.js';
|
|
|
96
96
|
export { MenuItem, MenuItemDivider, MenuItemGroup, MenuItemRadioGroup, MenuItemSelectable } from './components/Menu/MenuItem.js';
|
|
97
97
|
export { MenuButton } from './components/MenuButton/index.js';
|
|
98
98
|
export { default as Modal } from './components/Modal/Modal.js';
|
|
99
|
-
export { ModalPresence } from './components/Modal/ModalPresence.js';
|
|
99
|
+
export { ModalPresence, withModalPresence } from './components/Modal/ModalPresence.js';
|
|
100
100
|
export { default as ModalWrapper } from './components/ModalWrapper/ModalWrapper.js';
|
|
101
101
|
export { FilterableMultiSelect } from './components/MultiSelect/FilterableMultiSelect.js';
|
|
102
102
|
export { MultiSelect } from './components/MultiSelect/MultiSelect.js';
|
|
@@ -104,30 +104,30 @@ export { ActionableNotification, Callout, InlineNotification, NotificationAction
|
|
|
104
104
|
export { default as NumberInputSkeleton } from './components/NumberInput/NumberInput.Skeleton.js';
|
|
105
105
|
export { NumberInput, validateNumberSeparators } from './components/NumberInput/NumberInput.js';
|
|
106
106
|
export { default as OrderedList } from './components/OrderedList/OrderedList.js';
|
|
107
|
-
export {
|
|
107
|
+
export { OverflowMenu } from './components/OverflowMenu/index.js';
|
|
108
108
|
export { default as OverflowMenuItem } from './components/OverflowMenuItem/OverflowMenuItem.js';
|
|
109
|
-
import * as index from './components/PageHeader/index.js';
|
|
110
|
-
export { index as preview__PageHeader };
|
|
111
|
-
export { index as unstable__PageHeader };
|
|
112
|
-
import * as index
|
|
113
|
-
export { index
|
|
109
|
+
import * as index$1 from './components/PageHeader/index.js';
|
|
110
|
+
export { index$1 as preview__PageHeader };
|
|
111
|
+
export { index$1 as unstable__PageHeader };
|
|
112
|
+
import * as index from './components/Dialog/index.js';
|
|
113
|
+
export { index as preview__Dialog };
|
|
114
114
|
export { default as Pagination } from './components/Pagination/Pagination.js';
|
|
115
|
-
export {
|
|
115
|
+
export { PaginationSkeleton } from './components/Pagination/Pagination.Skeleton.js';
|
|
116
116
|
export { default as PaginationNav } from './components/PaginationNav/PaginationNav.js';
|
|
117
117
|
export { default as ControlledPasswordInput } from './components/TextInput/ControlledPasswordInput.js';
|
|
118
118
|
export { default as PasswordInput } from './components/TextInput/PasswordInput.js';
|
|
119
119
|
export { default as PrimaryButton } from './components/PrimaryButton/PrimaryButton.js';
|
|
120
|
-
export {
|
|
120
|
+
export { ProgressIndicatorSkeleton } from './components/ProgressIndicator/ProgressIndicator.Skeleton.js';
|
|
121
121
|
export { ProgressIndicator, ProgressStep } from './components/ProgressIndicator/ProgressIndicator.js';
|
|
122
122
|
export { default as RadioButton } from './components/RadioButton/RadioButton.js';
|
|
123
|
-
export {
|
|
123
|
+
export { RadioButtonSkeleton } from './components/RadioButton/RadioButton.Skeleton.js';
|
|
124
124
|
export { default as RadioButtonGroup } from './components/RadioButtonGroup/RadioButtonGroup.js';
|
|
125
125
|
export { default as RadioTile } from './components/RadioTile/RadioTile.js';
|
|
126
126
|
export { default as Search } from './components/Search/Search.js';
|
|
127
|
-
export {
|
|
127
|
+
export { SearchSkeleton } from './components/Search/Search.Skeleton.js';
|
|
128
128
|
export { default as SecondaryButton } from './components/SecondaryButton/SecondaryButton.js';
|
|
129
129
|
export { default as Select } from './components/Select/Select.js';
|
|
130
|
-
export {
|
|
130
|
+
export { SelectSkeleton } from './components/Select/Select.Skeleton.js';
|
|
131
131
|
export { default as SelectItem } from './components/SelectItem/SelectItem.js';
|
|
132
132
|
export { default as SelectItemGroup } from './components/SelectItemGroup/SelectItemGroup.js';
|
|
133
133
|
export { default as SkeletonIcon } from './components/SkeletonIcon/SkeletonIcon.js';
|
|
@@ -144,22 +144,22 @@ export { default as Switch } from './components/Switch/Switch.js';
|
|
|
144
144
|
export { default as IconSwitch } from './components/Switch/IconSwitch.js';
|
|
145
145
|
export { IconTab, Tab, TabList, TabListVertical, TabPanel, TabPanels, Tabs, TabsVertical } from './components/Tabs/Tabs.js';
|
|
146
146
|
export { default as TabContent } from './components/TabContent/TabContent.js';
|
|
147
|
-
export {
|
|
147
|
+
export { TabsSkeleton } from './components/Tabs/Tabs.Skeleton.js';
|
|
148
148
|
export { default as Tag } from './components/Tag/Tag.js';
|
|
149
149
|
export { default as DismissibleTag } from './components/Tag/DismissibleTag.js';
|
|
150
150
|
export { default as OperationalTag } from './components/Tag/OperationalTag.js';
|
|
151
151
|
export { default as SelectableTag } from './components/Tag/SelectableTag.js';
|
|
152
|
-
export {
|
|
152
|
+
export { TagSkeleton } from './components/Tag/Tag.Skeleton.js';
|
|
153
153
|
export { default as TextArea } from './components/TextArea/TextArea.js';
|
|
154
|
-
export {
|
|
154
|
+
export { TextAreaSkeleton } from './components/TextArea/TextArea.Skeleton.js';
|
|
155
155
|
export { default as TextInput } from './components/TextInput/TextInput.js';
|
|
156
|
-
export {
|
|
156
|
+
export { TextInputSkeleton } from './components/TextInput/TextInput.Skeleton.js';
|
|
157
157
|
export { ClickableTile, ExpandableTile, SelectableTile, Tile, TileAboveTheFoldContent, TileBelowTheFoldContent } from './components/Tile/Tile.js';
|
|
158
158
|
export { TileGroup } from './components/TileGroup/TileGroup.js';
|
|
159
159
|
export { default as TimePicker } from './components/TimePicker/TimePicker.js';
|
|
160
160
|
export { default as TimePickerSelect } from './components/TimePickerSelect/TimePickerSelect.js';
|
|
161
161
|
export { Toggle } from './components/Toggle/Toggle.js';
|
|
162
|
-
export {
|
|
162
|
+
export { ToggleSkeleton } from './components/Toggle/Toggle.Skeleton.js';
|
|
163
163
|
export { ToggleSmallSkeleton } from './components/ToggleSmall/ToggleSmall.Skeleton.js';
|
|
164
164
|
export { Toggletip, ToggletipActions, ToggletipButton, ToggletipContent, ToggletipLabel } from './components/Toggletip/index.js';
|
|
165
165
|
export { default as TreeNode } from './components/TreeView/TreeNode.js';
|
|
@@ -190,7 +190,7 @@ export { default as SideNavItem } from './components/UIShell/SideNavItem.js';
|
|
|
190
190
|
export { default as SideNavItems } from './components/UIShell/SideNavItems.js';
|
|
191
191
|
export { default as SideNavLink } from './components/UIShell/SideNavLink.js';
|
|
192
192
|
export { default as SideNavLinkText } from './components/UIShell/SideNavLinkText.js';
|
|
193
|
-
export {
|
|
193
|
+
export { SideNavMenu } from './components/UIShell/SideNavMenu.js';
|
|
194
194
|
export { default as SideNavMenuItem } from './components/UIShell/SideNavMenuItem.js';
|
|
195
195
|
export { default as SideNavSwitcher } from './components/UIShell/SideNavSwitcher.js';
|
|
196
196
|
export { default as UnorderedList } from './components/UnorderedList/UnorderedList.js';
|
|
@@ -242,7 +242,7 @@ import 'react';
|
|
|
242
242
|
export { GlobalTheme, Theme, ThemeContext, usePrefersDarkScheme, useTheme } from './components/Theme/index.js';
|
|
243
243
|
export { PrefixContext, usePrefix } from './internal/usePrefix.js';
|
|
244
244
|
export { useIdPrefix } from './internal/useIdPrefix.js';
|
|
245
|
+
export { default as ContainedList } from './components/ContainedList/ContainedList.js';
|
|
246
|
+
export { default as ContainedListItem } from './components/ContainedList/ContainedListItem/ContainedListItem.js';
|
|
245
247
|
export { default as preview_PageSelector, default as unstable_PageSelector } from './components/Pagination/experimental/PageSelector.js';
|
|
246
248
|
export { default as preview_Pagination, default as unstable_Pagination } from './components/Pagination/experimental/Pagination.js';
|
|
247
|
-
export { default as ContainedListItem } from './components/ContainedList/ContainedListItem/ContainedListItem.js';
|
|
248
|
-
export { default as ContainedList } from './components/ContainedList/ContainedList.js';
|
|
@@ -8,38 +8,31 @@
|
|
|
8
8
|
import { useEffect } from 'react';
|
|
9
9
|
|
|
10
10
|
const useNoInteractiveChildren = (ref, message = 'component should have no interactive child nodes') => {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps -- https://github.com/carbon-design-system/carbon/issues/20452
|
|
26
|
-
}, []);
|
|
27
|
-
}
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
if (process.env.NODE_ENV === 'production') return;
|
|
13
|
+
const {
|
|
14
|
+
current
|
|
15
|
+
} = ref;
|
|
16
|
+
const node = current ? getInteractiveContent(current) : null;
|
|
17
|
+
if (node) {
|
|
18
|
+
const errorMessage = `Error: ${message}.\n\nInstead found: ${node.outerHTML}`;
|
|
19
|
+
// eslint-disable-next-line no-console -- https://github.com/carbon-design-system/carbon/issues/20452
|
|
20
|
+
console.error(errorMessage);
|
|
21
|
+
throw new Error(errorMessage);
|
|
22
|
+
}
|
|
23
|
+
}, [message, ref]);
|
|
28
24
|
};
|
|
29
25
|
const useInteractiveChildrenNeedDescription = (ref, message = `interactive child node(s) should have an \`aria-describedby\` property`) => {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
if (process.env.NODE_ENV === 'production') return;
|
|
28
|
+
const {
|
|
29
|
+
current
|
|
30
|
+
} = ref;
|
|
31
|
+
const node = current ? getInteractiveContent(current) : null;
|
|
32
|
+
if (node && !node.hasAttribute('aria-describedby')) {
|
|
33
|
+
throw new Error(`Error: ${message}.\n\nInstead found: ${node.outerHTML}`);
|
|
34
|
+
}
|
|
35
|
+
}, [message, ref]);
|
|
43
36
|
};
|
|
44
37
|
|
|
45
38
|
/**
|
|
@@ -50,6 +43,7 @@ const useInteractiveChildrenNeedDescription = (ref, message = `interactive child
|
|
|
50
43
|
* @returns The interactive node, or `null` if none is found.
|
|
51
44
|
*/
|
|
52
45
|
const getInteractiveContent = node => {
|
|
46
|
+
// TODO: This check shouldn't be necessary. Investigate deleting it.
|
|
53
47
|
if (!node || !node.childNodes) {
|
|
54
48
|
return null;
|
|
55
49
|
}
|
|
@@ -75,6 +69,7 @@ const getInteractiveContent = node => {
|
|
|
75
69
|
* @returns The node with a `role`, or `null` if none is found.
|
|
76
70
|
*/
|
|
77
71
|
const getRoleContent = node => {
|
|
72
|
+
// TODO: This check shouldn't be necessary. Investigate deleting it.
|
|
78
73
|
if (!node || !node.childNodes) {
|
|
79
74
|
return null;
|
|
80
75
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
import { useState
|
|
8
|
+
import { useState } from 'react';
|
|
9
9
|
import { usePrefix } from './usePrefix.js';
|
|
10
10
|
import useIsomorphicEffect from './useIsomorphicEffect.js';
|
|
11
11
|
|
|
@@ -13,25 +13,22 @@ const usePresence = (ref, isOpen) => {
|
|
|
13
13
|
const prefix = usePrefix();
|
|
14
14
|
const [exitState, setExitState] = useState(isOpen ? 'idle' : 'finished');
|
|
15
15
|
const isExiting = exitState === 'active';
|
|
16
|
+
useIsomorphicEffect(() => {
|
|
17
|
+
setExitState(prev => {
|
|
18
|
+
// element is exiting
|
|
19
|
+
if (!isOpen && prev === 'idle') return 'active';
|
|
16
20
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
// element exit was interrupted
|
|
23
|
-
if (isOpen && exitState !== 'idle') {
|
|
24
|
-
setExitState('idle');
|
|
25
|
-
}
|
|
26
|
-
const handleAnimationEnd = useCallback(() => {
|
|
27
|
-
setExitState('finished');
|
|
28
|
-
}, []);
|
|
21
|
+
// element exit was interrupted
|
|
22
|
+
if (isOpen && prev !== 'idle') return 'idle';
|
|
23
|
+
return prev;
|
|
24
|
+
});
|
|
25
|
+
}, [isOpen]);
|
|
29
26
|
useIsomorphicEffect(() => {
|
|
30
27
|
if (!ref.current || !isExiting) return;
|
|
31
28
|
|
|
32
29
|
// resolve for JSDOM
|
|
33
30
|
if (!('getAnimations' in ref.current)) {
|
|
34
|
-
|
|
31
|
+
setExitState('finished');
|
|
35
32
|
return;
|
|
36
33
|
}
|
|
37
34
|
|
|
@@ -40,18 +37,18 @@ const usePresence = (ref, isOpen) => {
|
|
|
40
37
|
subtree: true
|
|
41
38
|
}).filter(animation => animation instanceof CSSAnimation && animation.animationName.startsWith(`${prefix}--presence`));
|
|
42
39
|
if (!animations.length) {
|
|
43
|
-
|
|
40
|
+
setExitState('finished');
|
|
44
41
|
return;
|
|
45
42
|
}
|
|
46
43
|
let cancelled = false;
|
|
47
44
|
Promise.all(animations.map(animation => animation.finished)).finally(() => {
|
|
48
45
|
if (cancelled) return;
|
|
49
|
-
|
|
46
|
+
setExitState('finished');
|
|
50
47
|
});
|
|
51
48
|
return () => {
|
|
52
49
|
cancelled = true;
|
|
53
50
|
};
|
|
54
|
-
}, [ref, isExiting, prefix
|
|
51
|
+
}, [ref, isExiting, prefix]);
|
|
55
52
|
return {
|
|
56
53
|
/**
|
|
57
54
|
* Indicates whether the ref object is supposed to be mounted
|
|
@@ -31,7 +31,8 @@ const ButtonSkeleton = ({
|
|
|
31
31
|
[`${prefix}--btn--md`]: size === 'md',
|
|
32
32
|
[`${prefix}--btn--lg`]: size === 'lg',
|
|
33
33
|
[`${prefix}--btn--xl`]: size === 'xl',
|
|
34
|
-
[`${prefix}--btn--2xl`]: size === '2xl'
|
|
34
|
+
[`${prefix}--btn--2xl`]: size === '2xl',
|
|
35
|
+
[`${prefix}--layout--size-${size}`]: size
|
|
35
36
|
});
|
|
36
37
|
const commonProps = {
|
|
37
38
|
className: buttonClasses,
|
|
@@ -17,7 +17,7 @@ export declare const ButtonTooltipPositions: string[];
|
|
|
17
17
|
export type ButtonTooltipPosition = (typeof ButtonTooltipPositions)[number];
|
|
18
18
|
export interface ButtonBaseProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
19
19
|
/**
|
|
20
|
-
* Specify the message read by screen readers for the danger button
|
|
20
|
+
* Specify the message read by screen readers for the danger button variants
|
|
21
21
|
*/
|
|
22
22
|
dangerDescription?: string;
|
|
23
23
|
/**
|
|
@@ -38,7 +38,7 @@ export interface ButtonBaseProps extends React.ButtonHTMLAttributes<HTMLButtonEl
|
|
|
38
38
|
*/
|
|
39
39
|
isExpressive?: boolean;
|
|
40
40
|
/**
|
|
41
|
-
* Specify whether the Button is currently selected. Only applies to the Ghost variant.
|
|
41
|
+
* Specify whether the Button is currently selected. Only applies to the icon only Ghost variant.
|
|
42
42
|
*/
|
|
43
43
|
isSelected?: boolean;
|
|
44
44
|
/**
|
|
@@ -63,7 +63,7 @@ export interface ButtonBaseProps extends React.ButtonHTMLAttributes<HTMLButtonEl
|
|
|
63
63
|
target?: React.AnchorHTMLAttributes<HTMLAnchorElement>['target'];
|
|
64
64
|
/**
|
|
65
65
|
* Specify the alignment of the tooltip to the icon-only button.
|
|
66
|
-
* Can be one of: start
|
|
66
|
+
* Can be one of: `start`, `center`, or `end`.
|
|
67
67
|
*/
|
|
68
68
|
tooltipAlignment?: ButtonTooltipAlignment;
|
|
69
69
|
/**
|
|
@@ -77,7 +77,7 @@ export interface ButtonBaseProps extends React.ButtonHTMLAttributes<HTMLButtonEl
|
|
|
77
77
|
tooltipHighContrast?: boolean;
|
|
78
78
|
/**
|
|
79
79
|
* Specify the direction of the tooltip for icon-only buttons.
|
|
80
|
-
* Can be either top
|
|
80
|
+
* Can be either `top`, `right`, `bottom`, or `left`.
|
|
81
81
|
*/
|
|
82
82
|
tooltipPosition?: ButtonTooltipPosition;
|
|
83
83
|
}
|
|
@@ -131,7 +131,7 @@ Button.propTypes = {
|
|
|
131
131
|
*/
|
|
132
132
|
className: PropTypes.string,
|
|
133
133
|
/**
|
|
134
|
-
* Specify the message read by screen readers for the danger button
|
|
134
|
+
* Specify the message read by screen readers for the danger button variants
|
|
135
135
|
*/
|
|
136
136
|
dangerDescription: PropTypes.string,
|
|
137
137
|
/**
|
|
@@ -161,7 +161,7 @@ Button.propTypes = {
|
|
|
161
161
|
*/
|
|
162
162
|
isExpressive: PropTypes.bool,
|
|
163
163
|
/**
|
|
164
|
-
* Specify whether the Button is currently selected. Only applies to the Ghost variant.
|
|
164
|
+
* Specify whether the Button is currently selected. Only applies to the icon only Ghost variant.
|
|
165
165
|
*/
|
|
166
166
|
isSelected: PropTypes.bool,
|
|
167
167
|
/**
|
|
@@ -231,7 +231,7 @@ Button.propTypes = {
|
|
|
231
231
|
target: PropTypes.string,
|
|
232
232
|
/**
|
|
233
233
|
* Specify the alignment of the tooltip to the icon-only button.
|
|
234
|
-
* Can be one of: start
|
|
234
|
+
* Can be one of: `start`, `center`, or `end`.
|
|
235
235
|
*/
|
|
236
236
|
tooltipAlignment: PropTypes.oneOf(['start', 'center', 'end']),
|
|
237
237
|
/**
|
|
@@ -245,7 +245,7 @@ Button.propTypes = {
|
|
|
245
245
|
tooltipHighContrast: PropTypes.bool,
|
|
246
246
|
/**
|
|
247
247
|
* Specify the direction of the tooltip for icon-only buttons.
|
|
248
|
-
* Can be either top
|
|
248
|
+
* Can be either `top`, `right`, `bottom`, or `left`.
|
|
249
249
|
*/
|
|
250
250
|
tooltipPosition: PropTypes.oneOf(['top', 'right', 'bottom', 'left']),
|
|
251
251
|
/**
|
|
@@ -20,4 +20,4 @@ exports.ButtonSizes = Button.ButtonSizes;
|
|
|
20
20
|
exports.ButtonTooltipAlignments = Button.ButtonTooltipAlignments;
|
|
21
21
|
exports.ButtonTooltipPositions = Button.ButtonTooltipPositions;
|
|
22
22
|
exports.default = Button.default;
|
|
23
|
-
exports.ButtonSkeleton = Button_Skeleton.
|
|
23
|
+
exports.ButtonSkeleton = Button_Skeleton.ButtonSkeleton;
|
|
@@ -66,7 +66,7 @@ const ButtonSet = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
66
66
|
});
|
|
67
67
|
resizeObserver.observe(fluidInnerRef.current);
|
|
68
68
|
return () => resizeObserver.disconnect();
|
|
69
|
-
}, [
|
|
69
|
+
}, [fluid, stacked]);
|
|
70
70
|
React.useEffect(() => {
|
|
71
71
|
const newSortedChildren = React.Children.toArray(children);
|
|
72
72
|
newSortedChildren.sort((a, b) => {
|
|
@@ -287,8 +287,8 @@ const ComboBox = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
287
287
|
if (isMatchingSelection) {
|
|
288
288
|
return changes;
|
|
289
289
|
}
|
|
290
|
-
const nextSelectedItem = items.find(item => itemToString(item) === inputValue) ?? inputValue;
|
|
291
|
-
const isCustomSelection = typeof nextSelectedItem === 'string' && !items.some(item => isEqual(item, nextSelectedItem));
|
|
290
|
+
const nextSelectedItem = inputValue === '' ? null : items.find(item => itemToString(item) === inputValue) ?? inputValue;
|
|
291
|
+
const isCustomSelection = typeof nextSelectedItem === 'string' && nextSelectedItem !== '' && !items.some(item => isEqual(item, nextSelectedItem));
|
|
292
292
|
if (!isEqual(currentSelectedItem, nextSelectedItem) && onChange) {
|
|
293
293
|
onChange({
|
|
294
294
|
selectedItem: nextSelectedItem,
|
|
@@ -261,9 +261,6 @@ const ComposedModalDialog = /*#__PURE__*/React.forwardRef(function ComposedModal
|
|
|
261
261
|
const containerClass = cx(`${prefix}--modal-container`, size && `${prefix}--modal-container--${size}`, isFullWidth && `${prefix}--modal-container--full-width`, containerClassName);
|
|
262
262
|
|
|
263
263
|
// Generate aria-label based on Modal Header label if one is not provided (L253)
|
|
264
|
-
//
|
|
265
|
-
// TODO: Confirm whether `ModalHeader` `label` should allow `ReactNode`. If
|
|
266
|
-
// so, define how to derive a string for `aria-label`.
|
|
267
264
|
let generatedAriaLabel;
|
|
268
265
|
const childrenWithProps = React.Children.toArray(children).map(child => {
|
|
269
266
|
if (utils.isComponentElement(child, ModalHeader.ModalHeader)) {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
import React, { type PropsWithChildren } from 'react';
|
|
7
|
+
import React, { type ComponentType, type PropsWithChildren } from 'react';
|
|
8
8
|
import { type PresenceContext } from '../../internal/usePresenceContext';
|
|
9
9
|
import { useComposedModalState } from './useComposedModalState';
|
|
10
10
|
export interface ComposedModalPresenceProps {
|
|
@@ -31,4 +31,12 @@ export declare const ComposedModalPresenceContext: React.Context<ComposedModalPr
|
|
|
31
31
|
* Handles occurrences where only a single composed modal must consume a context.
|
|
32
32
|
*/
|
|
33
33
|
export declare const useExclusiveComposedModalPresenceContext: (id: string) => ComposedModalPresenceContextProps | undefined;
|
|
34
|
+
type WithComposedModalPresenceProps = Pick<ComposedModalPresenceProps, 'open'>;
|
|
35
|
+
/**
|
|
36
|
+
* Higher-order function that wraps a component with ComposedModalPresence
|
|
37
|
+
*/
|
|
38
|
+
export declare const withComposedModalPresence: <TProps extends object>(Component: ComponentType<TProps>) => {
|
|
39
|
+
({ open, ...componentProps }: TProps & WithComposedModalPresenceProps): import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
displayName: string;
|
|
41
|
+
};
|
|
34
42
|
export {};
|
|
@@ -40,7 +40,21 @@ const useExclusiveComposedModalPresenceContext = id => {
|
|
|
40
40
|
const ctx = React.useContext(ComposedModalPresenceContext);
|
|
41
41
|
return ctx?.isPresenceExclusive(id) ? ctx : undefined;
|
|
42
42
|
};
|
|
43
|
+
/**
|
|
44
|
+
* Higher-order function that wraps a component with ComposedModalPresence
|
|
45
|
+
*/
|
|
46
|
+
const withComposedModalPresence = Component => {
|
|
47
|
+
const WithComposedModalPresence = ({
|
|
48
|
+
open,
|
|
49
|
+
...componentProps
|
|
50
|
+
}) => /*#__PURE__*/React.createElement(ComposedModalPresence, {
|
|
51
|
+
open: open
|
|
52
|
+
}, /*#__PURE__*/React.createElement(Component, componentProps));
|
|
53
|
+
WithComposedModalPresence.displayName = `withComposedModalPresence(${Component.displayName || Component.name || 'Component'})`;
|
|
54
|
+
return WithComposedModalPresence;
|
|
55
|
+
};
|
|
43
56
|
|
|
44
57
|
exports.ComposedModalPresence = ComposedModalPresence;
|
|
45
58
|
exports.ComposedModalPresenceContext = ComposedModalPresenceContext;
|
|
46
59
|
exports.useExclusiveComposedModalPresenceContext = useExclusiveComposedModalPresenceContext;
|
|
60
|
+
exports.withComposedModalPresence = withComposedModalPresence;
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import ComposedModal from './ComposedModal';
|
|
8
8
|
export { default as ComposedModal, type ComposedModalProps, ModalBody, type ModalBodyProps, } from './ComposedModal';
|
|
9
|
-
export { ComposedModalPresence, type ComposedModalPresenceProps, } from './ComposedModalPresence';
|
|
9
|
+
export { ComposedModalPresence, withComposedModalPresence, type ComposedModalPresenceProps, } from './ComposedModalPresence';
|
|
10
10
|
export { ModalHeader, type ModalHeaderProps } from './ModalHeader';
|
|
11
11
|
export { ModalFooter, type ModalFooterProps } from './ModalFooter';
|
|
12
12
|
export default ComposedModal;
|
|
@@ -7,8 +7,6 @@
|
|
|
7
7
|
|
|
8
8
|
'use strict';
|
|
9
9
|
|
|
10
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
11
|
-
|
|
12
10
|
var deprecateFieldOnObject = require('../../internal/deprecateFieldOnObject.js');
|
|
13
11
|
var ContainedList = require('./ContainedList.js');
|
|
14
12
|
var ContainedListItem = require('./ContainedListItem/ContainedListItem.js');
|
|
@@ -22,5 +20,4 @@ if (process.env.NODE_ENV !== 'production') {
|
|
|
22
20
|
}
|
|
23
21
|
|
|
24
22
|
exports.ContainedList = ContainedList.default;
|
|
25
|
-
exports.default = ContainedList.default;
|
|
26
23
|
exports.ContainedListItem = ContainedListItem.default;
|
|
@@ -29,7 +29,7 @@ const TableToolbarMenu = ({
|
|
|
29
29
|
const prefix = usePrefix.usePrefix();
|
|
30
30
|
const toolbarActionClasses = cx(className, `${prefix}--toolbar-action ${prefix}--overflow-menu`);
|
|
31
31
|
const menuOptionsClasses = cx(menuOptionsClass, `${prefix}--toolbar-action__menu`);
|
|
32
|
-
return /*#__PURE__*/React.createElement(index.
|
|
32
|
+
return /*#__PURE__*/React.createElement(index.OverflowMenu, _rollupPluginBabelHelpers.extends({
|
|
33
33
|
renderIcon: renderIcon,
|
|
34
34
|
className: toolbarActionClasses,
|
|
35
35
|
title: iconDescription,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright IBM Corp. 2016,
|
|
2
|
+
* Copyright IBM Corp. 2016, 2026
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -7,11 +7,14 @@
|
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import { type HTMLAttributes } from 'react';
|
|
9
9
|
export interface DatePickerSkeletonProps extends HTMLAttributes<HTMLDivElement> {
|
|
10
|
-
range?: boolean;
|
|
11
10
|
/**
|
|
12
|
-
* Specify whether the label
|
|
11
|
+
* Specify whether to hide the label.
|
|
13
12
|
*/
|
|
14
13
|
hideLabel?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Specify whether to render the range skeleton variant.
|
|
16
|
+
*/
|
|
17
|
+
range?: boolean;
|
|
15
18
|
}
|
|
16
19
|
declare const DatePickerSkeleton: {
|
|
17
20
|
({ range, id, hideLabel, className, ...rest }: DatePickerSkeletonProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -21,7 +24,7 @@ declare const DatePickerSkeleton: {
|
|
|
21
24
|
*/
|
|
22
25
|
className: PropTypes.Requireable<string>;
|
|
23
26
|
/**
|
|
24
|
-
* Specify whether the label
|
|
27
|
+
* Specify whether to hide the label.
|
|
25
28
|
*/
|
|
26
29
|
hideLabel: PropTypes.Requireable<boolean>;
|
|
27
30
|
/**
|
|
@@ -29,7 +32,7 @@ declare const DatePickerSkeleton: {
|
|
|
29
32
|
*/
|
|
30
33
|
id: PropTypes.Requireable<string>;
|
|
31
34
|
/**
|
|
32
|
-
* Specify whether
|
|
35
|
+
* Specify whether to render the range skeleton variant.
|
|
33
36
|
*/
|
|
34
37
|
range: PropTypes.Requireable<boolean>;
|
|
35
38
|
};
|
|
@@ -50,7 +50,7 @@ DatePickerSkeleton.propTypes = {
|
|
|
50
50
|
*/
|
|
51
51
|
className: PropTypes.string,
|
|
52
52
|
/**
|
|
53
|
-
* Specify whether the label
|
|
53
|
+
* Specify whether to hide the label.
|
|
54
54
|
*/
|
|
55
55
|
hideLabel: PropTypes.bool,
|
|
56
56
|
/**
|
|
@@ -58,7 +58,7 @@ DatePickerSkeleton.propTypes = {
|
|
|
58
58
|
*/
|
|
59
59
|
id: PropTypes.string,
|
|
60
60
|
/**
|
|
61
|
-
* Specify whether
|
|
61
|
+
* Specify whether to render the range skeleton variant.
|
|
62
62
|
*/
|
|
63
63
|
range: PropTypes.bool
|
|
64
64
|
};
|
|
@@ -11,8 +11,10 @@ import { type SupportedLocale } from './DatePickerLocales';
|
|
|
11
11
|
export type DatePickerTypes = 'simple' | 'single' | 'range';
|
|
12
12
|
export interface DatePickerProps {
|
|
13
13
|
/**
|
|
14
|
-
* Flatpickr prop passthrough enables direct date input, and when set to
|
|
15
|
-
* we must clear dates manually by resetting the value prop to
|
|
14
|
+
* Flatpickr prop passthrough enables direct date input, and when set to
|
|
15
|
+
* false, we must clear dates manually by resetting the value prop to an empty
|
|
16
|
+
* value (such as `""`, `null`, or `undefined`) or an array of all empty
|
|
17
|
+
* values, making it a controlled input.
|
|
16
18
|
*/
|
|
17
19
|
allowInput?: boolean;
|
|
18
20
|
/**
|