@carbon/react 0.17.0 → 1.0.0-rc.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.
Files changed (765) hide show
  1. package/README.md +1 -1
  2. package/es/_virtual/ResizeObserver.es.js +13 -0
  3. package/es/_virtual/_commonjsHelpers.js +29 -0
  4. package/es/_virtual/_rollupPluginBabelHelpers.js +354 -0
  5. package/es/{prefix.js → _virtual/index.js} +2 -2
  6. package/es/_virtual/rangePlugin.js +10 -0
  7. package/es/components/Accordion/Accordion.Skeleton.js +103 -0
  8. package/es/components/Accordion/Accordion.js +68 -0
  9. package/es/components/Accordion/AccordionItem.js +181 -0
  10. package/es/components/Accordion/index.js +9 -0
  11. package/es/components/AccordionItem/index.js +11 -0
  12. package/es/components/AspectRatio/AspectRatio.js +67 -0
  13. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +45 -0
  14. package/es/components/Breadcrumb/Breadcrumb.js +58 -0
  15. package/es/components/Breadcrumb/BreadcrumbItem.js +94 -0
  16. package/es/components/Button/Button.Skeleton.js +71 -0
  17. package/es/components/Button/Button.js +351 -0
  18. package/es/components/ButtonSet/ButtonSet.js +48 -0
  19. package/es/components/Checkbox/Checkbox.Skeleton.js +36 -0
  20. package/es/components/Checkbox/Checkbox.js +136 -0
  21. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +58 -0
  22. package/es/components/CodeSnippet/CodeSnippet.js +372 -0
  23. package/es/components/ComboBox/ComboBox.js +532 -0
  24. package/es/components/ComboBox/tools/filter.js +20 -0
  25. package/es/components/ComposedModal/ComposedModal.js +630 -0
  26. package/es/components/ComposedModal/index.js +19 -0
  27. package/es/components/ComposedModal/next/ComposedModal.js +223 -0
  28. package/es/components/ComposedModal/next/ModalFooter.js +213 -0
  29. package/es/components/ComposedModal/next/ModalHeader.js +127 -0
  30. package/es/components/ContentSwitcher/ContentSwitcher.js +185 -0
  31. package/es/components/ContextMenu/useContextMenu.js +57 -0
  32. package/es/components/Copy/Copy.js +124 -0
  33. package/es/components/CopyButton/CopyButton.js +67 -0
  34. package/es/components/DangerButton/DangerButton.js +20 -0
  35. package/es/components/DataTable/DataTable.js +638 -0
  36. package/es/components/DataTable/Table.js +90 -0
  37. package/es/components/DataTable/TableActionList.js +17 -0
  38. package/es/components/DataTable/TableBatchAction.js +45 -0
  39. package/es/components/DataTable/TableBatchActions.js +110 -0
  40. package/es/components/DataTable/TableBody.js +37 -0
  41. package/es/components/DataTable/TableCell.js +16 -0
  42. package/es/components/DataTable/TableContainer.js +66 -0
  43. package/es/components/DataTable/TableExpandHeader.js +86 -0
  44. package/es/components/DataTable/TableExpandRow.js +93 -0
  45. package/es/components/DataTable/TableExpandedRow.js +75 -0
  46. package/es/components/DataTable/TableHead.js +16 -0
  47. package/es/components/DataTable/TableHeader.js +187 -0
  48. package/es/components/DataTable/TableRow.js +41 -0
  49. package/es/components/DataTable/TableSelectAll.js +84 -0
  50. package/es/components/DataTable/TableSelectRow.js +97 -0
  51. package/es/components/DataTable/TableToolbar.js +48 -0
  52. package/es/components/DataTable/TableToolbarAction.js +31 -0
  53. package/es/components/DataTable/TableToolbarContent.js +17 -0
  54. package/es/components/DataTable/TableToolbarMenu.js +61 -0
  55. package/es/components/DataTable/TableToolbarSearch.js +242 -0
  56. package/es/components/DataTable/index.js +72 -0
  57. package/es/components/DataTable/state/getDerivedStateFromProps.js +52 -0
  58. package/es/components/DataTable/state/sortStates.js +19 -0
  59. package/es/components/DataTable/state/sorting.js +93 -0
  60. package/es/components/DataTable/tools/cells.js +21 -0
  61. package/es/components/DataTable/tools/denormalize.js +43 -0
  62. package/es/components/DataTable/tools/filter.js +42 -0
  63. package/es/components/DataTable/tools/instanceId.js +21 -0
  64. package/es/components/DataTable/tools/normalize.js +78 -0
  65. package/es/components/DataTable/tools/sorting.js +110 -0
  66. package/es/components/DataTableSkeleton/DataTableSkeleton.js +133 -0
  67. package/es/components/DatePicker/DatePicker.Skeleton.js +69 -0
  68. package/es/components/DatePicker/DatePicker.js +622 -0
  69. package/es/components/DatePicker/index.js +15 -0
  70. package/es/components/DatePicker/next/DatePicker.js +558 -0
  71. package/es/components/DatePicker/plugins/appendToPlugin.js +58 -0
  72. package/es/components/DatePicker/plugins/fixEventsPlugin.js +89 -0
  73. package/es/components/DatePicker/plugins/rangePlugin.js +51 -0
  74. package/es/components/DatePickerInput/DatePickerInput.js +271 -0
  75. package/es/components/DatePickerInput/index.js +15 -0
  76. package/es/components/DatePickerInput/next/DatePickerInput.js +269 -0
  77. package/es/components/Dropdown/Dropdown.Skeleton.js +55 -0
  78. package/es/components/Dropdown/Dropdown.js +327 -0
  79. package/es/components/ErrorBoundary/ErrorBoundary.js +96 -0
  80. package/es/components/ErrorBoundary/ErrorBoundaryContext.js +16 -0
  81. package/es/components/ExpandableSearch/ExpandableSearch.js +67 -0
  82. package/es/components/ExpandableSearch/index.js +9 -0
  83. package/es/components/FeatureFlags/index.js +169 -0
  84. package/es/components/FileUploader/FileUploader.Skeleton.js +43 -0
  85. package/es/components/FileUploader/FileUploader.js +284 -0
  86. package/es/components/FileUploader/FileUploaderButton.js +198 -0
  87. package/es/components/FileUploader/FileUploaderDropContainer.js +223 -0
  88. package/es/components/FileUploader/FileUploaderItem.js +130 -0
  89. package/es/components/FileUploader/Filename.js +82 -0
  90. package/es/components/FileUploader/index.js +14 -0
  91. package/es/components/FluidForm/FluidForm.js +46 -0
  92. package/es/components/FluidForm/FormContext.js +14 -0
  93. package/es/components/Form/Form.js +41 -0
  94. package/es/components/FormGroup/FormGroup.js +97 -0
  95. package/es/components/FormItem/FormItem.js +41 -0
  96. package/es/components/FormLabel/FormLabel.js +48 -0
  97. package/es/components/Grid/CSSGrid.js +139 -0
  98. package/es/components/Grid/Column.js +363 -0
  99. package/es/components/Grid/ColumnHang.js +51 -0
  100. package/es/components/Grid/FlexGrid.js +76 -0
  101. package/es/components/Grid/Grid.js +63 -0
  102. package/es/components/Grid/GridContext.js +60 -0
  103. package/es/components/Grid/Row.js +65 -0
  104. package/es/components/Heading/index.js +62 -0
  105. package/es/components/Icon/Icon.Skeleton.js +45 -0
  106. package/es/components/IconButton/index.js +89 -0
  107. package/es/components/InlineCheckbox/InlineCheckbox.js +122 -0
  108. package/es/components/InlineLoading/InlineLoading.js +118 -0
  109. package/es/components/Layer/LayerContext.js +12 -0
  110. package/es/components/Layer/index.js +62 -0
  111. package/es/components/Link/Link.js +95 -0
  112. package/es/components/ListBox/ListBox.js +129 -0
  113. package/es/components/ListBox/ListBoxField.js +62 -0
  114. package/es/components/ListBox/ListBoxMenu.js +56 -0
  115. package/es/components/ListBox/ListBoxMenuIcon.js +61 -0
  116. package/es/components/ListBox/ListBoxMenuItem.js +87 -0
  117. package/es/components/ListBox/ListBoxPropTypes.js +14 -0
  118. package/es/components/ListBox/ListBoxSelection.js +148 -0
  119. package/es/components/ListBox/index.js +20 -0
  120. package/es/components/ListBox/next/ListBoxSelection.js +155 -0
  121. package/es/components/ListBox/next/ListBoxTrigger.js +68 -0
  122. package/es/components/ListItem/ListItem.js +41 -0
  123. package/es/components/Loading/Loading.js +102 -0
  124. package/es/components/Menu/Menu.js +328 -0
  125. package/es/components/Menu/MenuDivider.js +19 -0
  126. package/es/components/Menu/MenuGroup.js +34 -0
  127. package/es/components/Menu/MenuItem.js +58 -0
  128. package/es/components/Menu/MenuOption.js +250 -0
  129. package/es/components/Menu/MenuRadioGroup.js +50 -0
  130. package/es/components/Menu/MenuRadioGroupOptions.js +64 -0
  131. package/es/components/Menu/MenuSelectableItem.js +57 -0
  132. package/es/components/Menu/_utils.js +177 -0
  133. package/es/components/Menu/index.js +25 -0
  134. package/es/components/Modal/Modal.js +343 -0
  135. package/es/components/Modal/index.js +15 -0
  136. package/es/components/Modal/next/Modal.js +277 -0
  137. package/es/components/ModalWrapper/ModalWrapper.js +164 -0
  138. package/es/components/MultiSelect/FilterableMultiSelect.js +576 -0
  139. package/es/components/MultiSelect/MultiSelect.js +468 -0
  140. package/es/components/MultiSelect/MultiSelectPropTypes.js +41 -0
  141. package/es/components/MultiSelect/index.js +23 -0
  142. package/es/components/MultiSelect/next/FilterableMultiSelect.js +532 -0
  143. package/es/components/MultiSelect/tools/itemToString.js +24 -0
  144. package/es/components/MultiSelect/tools/sorting.js +53 -0
  145. package/es/components/Notification/Notification.js +530 -0
  146. package/es/components/Notification/index.js +42 -0
  147. package/es/components/Notification/next/Notification.js +684 -0
  148. package/es/components/NumberInput/NumberInput.Skeleton.js +44 -0
  149. package/es/components/NumberInput/NumberInput.js +515 -0
  150. package/es/components/OrderedList/OrderedList.js +66 -0
  151. package/es/components/OverflowMenu/OverflowMenu.js +516 -0
  152. package/es/components/OverflowMenu/index.js +14 -0
  153. package/es/components/OverflowMenuItem/OverflowMenuItem.js +221 -0
  154. package/es/components/OverflowMenuItem/index.js +12 -0
  155. package/es/components/OverflowMenuV2/index.js +137 -0
  156. package/es/components/Pagination/Pagination.Skeleton.js +48 -0
  157. package/es/components/Pagination/Pagination.js +420 -0
  158. package/es/components/Pagination/experimental/PageSelector.js +81 -0
  159. package/es/components/Pagination/experimental/Pagination.js +281 -0
  160. package/es/components/Pagination/index.js +14 -0
  161. package/es/components/Pagination/next/Pagination.js +401 -0
  162. package/es/components/PaginationNav/PaginationNav.js +436 -0
  163. package/es/components/Popover/index.js +118 -0
  164. package/es/components/PrimaryButton/PrimaryButton.js +20 -0
  165. package/es/components/ProgressBar/ProgressBar.js +110 -0
  166. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +50 -0
  167. package/es/components/ProgressIndicator/ProgressIndicator.js +323 -0
  168. package/es/components/ProgressIndicator/index.js +15 -0
  169. package/es/components/ProgressIndicator/next/ProgressIndicator.js +117 -0
  170. package/es/components/RadioButton/RadioButton.Skeleton.js +37 -0
  171. package/es/components/RadioButton/RadioButton.js +172 -0
  172. package/es/components/RadioButton/index.js +15 -0
  173. package/es/components/RadioButton/next/RadioButton.js +128 -0
  174. package/es/components/RadioButtonGroup/RadioButtonGroup.js +190 -0
  175. package/es/components/RadioButtonGroup/index.js +15 -0
  176. package/es/components/RadioButtonGroup/next/RadioButtonGroup.js +141 -0
  177. package/es/components/RadioTile/RadioTile.js +147 -0
  178. package/es/components/Search/Search.Skeleton.js +50 -0
  179. package/es/components/Search/Search.js +289 -0
  180. package/es/components/Search/index.js +15 -0
  181. package/es/components/Search/next/Search.js +263 -0
  182. package/es/components/SearchFilterButton/SearchFilterButton.js +61 -0
  183. package/es/components/SearchLayoutButton/SearchLayoutButton.js +151 -0
  184. package/es/components/SecondaryButton/SecondaryButton.js +20 -0
  185. package/es/components/Select/Select.Skeleton.js +46 -0
  186. package/es/components/Select/Select.js +211 -0
  187. package/es/components/SelectItem/SelectItem.js +70 -0
  188. package/es/components/SelectItemGroup/SelectItemGroup.js +60 -0
  189. package/es/components/SkeletonIcon/SkeletonIcon.js +42 -0
  190. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +37 -0
  191. package/es/components/SkeletonText/SkeletonText.js +114 -0
  192. package/es/components/Slider/Slider.Skeleton.js +56 -0
  193. package/es/components/Slider/Slider.js +649 -0
  194. package/es/components/Slider/index.js +14 -0
  195. package/es/components/Stack/Stack.js +102 -0
  196. package/es/components/Stack/index.js +26 -0
  197. package/es/components/StructuredList/StructuredList.Skeleton.js +82 -0
  198. package/es/components/StructuredList/StructuredList.js +307 -0
  199. package/es/components/StructuredList/index.js +43 -0
  200. package/es/components/StructuredList/next/StructuredList.js +330 -0
  201. package/es/components/Switch/Switch.js +124 -0
  202. package/es/components/Tab/Tab.js +191 -0
  203. package/es/components/Tab/index.js +15 -0
  204. package/es/components/TabContent/TabContent.js +77 -0
  205. package/es/components/Tabs/Tabs.Skeleton.js +53 -0
  206. package/es/components/Tabs/Tabs.js +618 -0
  207. package/es/components/Tabs/index.js +19 -0
  208. package/es/components/Tabs/next/Tabs.Skeleton.js +53 -0
  209. package/es/components/Tabs/next/Tabs.js +648 -0
  210. package/es/components/Tabs/next/usePressable.js +145 -0
  211. package/es/components/Tag/Tag.Skeleton.js +40 -0
  212. package/es/components/Tag/Tag.js +146 -0
  213. package/es/components/Text/Text.js +98 -0
  214. package/es/components/Text/TextDirectionContext.js +12 -0
  215. package/es/components/Text/createTextComponent.js +33 -0
  216. package/es/components/Text/index.js +13 -0
  217. package/es/components/TextArea/TextArea.Skeleton.js +44 -0
  218. package/es/components/TextArea/TextArea.js +220 -0
  219. package/es/components/TextInput/ControlledPasswordInput.js +234 -0
  220. package/es/components/TextInput/PasswordInput.js +286 -0
  221. package/es/components/TextInput/TextInput.Skeleton.js +44 -0
  222. package/es/components/TextInput/TextInput.js +239 -0
  223. package/es/components/TextInput/index.js +20 -0
  224. package/es/components/TextInput/util.js +33 -0
  225. package/es/components/Theme/index.js +103 -0
  226. package/es/components/Tile/Tile.js +767 -0
  227. package/es/components/Tile/index.js +19 -0
  228. package/es/components/Tile/next/Tile.js +647 -0
  229. package/es/components/TileGroup/TileGroup.js +164 -0
  230. package/es/components/TimePicker/TimePicker.js +256 -0
  231. package/es/components/TimePicker/index.js +15 -0
  232. package/es/components/TimePicker/next/TimePicker.js +218 -0
  233. package/es/components/TimePickerSelect/TimePickerSelect.js +82 -0
  234. package/es/components/TimePickerSelect/index.js +15 -0
  235. package/es/components/TimePickerSelect/next/TimePickerSelect.js +77 -0
  236. package/es/components/Toggle/Toggle.Skeleton.js +74 -0
  237. package/es/components/Toggle/Toggle.js +120 -0
  238. package/es/components/Toggle/index.js +19 -0
  239. package/es/components/Toggle/next/Toggle.js +158 -0
  240. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +71 -0
  241. package/es/components/ToggleSmall/ToggleSmall.js +104 -0
  242. package/es/components/Toolbar/Toolbar.js +121 -0
  243. package/es/components/ToolbarSearch/ToolbarSearch.js +168 -0
  244. package/es/components/Tooltip/next/DefinitionTooltip.js +122 -0
  245. package/es/components/Tooltip/next/Tooltip.js +154 -0
  246. package/es/components/TooltipDefinition/TooltipDefinition.js +167 -0
  247. package/es/components/TooltipIcon/TooltipIcon.js +235 -0
  248. package/es/components/TreeView/TreeNode.js +325 -0
  249. package/es/components/TreeView/TreeView.js +252 -0
  250. package/es/components/TreeView/index.js +13 -0
  251. package/es/components/UIShell/Content.js +50 -0
  252. package/es/components/UIShell/Header.js +37 -0
  253. package/es/components/UIShell/HeaderContainer.js +44 -0
  254. package/es/components/UIShell/HeaderGlobalAction.js +87 -0
  255. package/es/components/UIShell/HeaderGlobalBar.js +20 -0
  256. package/es/components/UIShell/HeaderMenu.js +240 -0
  257. package/es/components/UIShell/HeaderMenuButton.js +69 -0
  258. package/es/components/UIShell/HeaderMenuItem.js +73 -0
  259. package/es/components/UIShell/HeaderName.js +62 -0
  260. package/es/components/UIShell/HeaderNavigation.js +100 -0
  261. package/es/components/UIShell/HeaderPanel.js +52 -0
  262. package/es/components/UIShell/HeaderSideNavItems.js +50 -0
  263. package/es/components/UIShell/Link.js +49 -0
  264. package/es/components/UIShell/SideNav.js +227 -0
  265. package/es/components/UIShell/SideNavDetails.js +46 -0
  266. package/es/components/UIShell/SideNavDivider.js +30 -0
  267. package/es/components/UIShell/SideNavFooter.js +78 -0
  268. package/es/components/UIShell/SideNavHeader.js +50 -0
  269. package/es/components/UIShell/SideNavIcon.js +49 -0
  270. package/es/components/UIShell/SideNavItem.js +47 -0
  271. package/es/components/UIShell/SideNavItems.js +56 -0
  272. package/es/components/UIShell/SideNavLink.js +74 -0
  273. package/es/components/UIShell/SideNavLinkText.js +41 -0
  274. package/es/components/UIShell/SideNavMenu.js +198 -0
  275. package/es/components/UIShell/SideNavMenuItem.js +57 -0
  276. package/es/components/UIShell/SideNavSwitcher.js +80 -0
  277. package/es/components/UIShell/SkipToContent.js +57 -0
  278. package/es/components/UIShell/Switcher.js +45 -0
  279. package/es/components/UIShell/SwitcherDivider.js +35 -0
  280. package/es/components/UIShell/SwitcherItem.js +62 -0
  281. package/es/components/UIShell/_utils.js +10 -0
  282. package/es/components/UIShell/index.js +17 -0
  283. package/es/components/UIShell/next/HeaderNavigation.js +52 -0
  284. package/es/components/UIShell/next/SideNavMenu.js +160 -0
  285. package/es/components/UnorderedList/UnorderedList.js +59 -0
  286. package/es/index.js +190 -2
  287. package/es/internal/ClickListener.js +101 -0
  288. package/es/internal/ComponentToggle.js +42 -0
  289. package/es/internal/FeatureFlags.js +52 -0
  290. package/es/internal/FloatingMenu.js +483 -0
  291. package/es/internal/OptimizedResize.js +65 -0
  292. package/es/internal/Selection.js +243 -0
  293. package/es/internal/createClassWrapper.js +31 -0
  294. package/es/internal/deprecateFieldOnObject.js +26 -0
  295. package/es/internal/environment.js +15 -0
  296. package/es/internal/focus/index.js +16 -0
  297. package/es/internal/keyboard/keys.js +65 -0
  298. package/es/internal/keyboard/match.js +82 -0
  299. package/es/internal/keyboard/navigation.js +61 -0
  300. package/es/internal/useControllableState.js +86 -0
  301. package/es/internal/useDelayedState.js +54 -0
  302. package/es/internal/useEffectOnce.js +31 -0
  303. package/es/internal/useId.js +59 -0
  304. package/es/internal/useIsomorphicEffect.js +13 -0
  305. package/es/internal/useMatchMedia.js +51 -0
  306. package/es/internal/useMergedRefs.js +31 -0
  307. package/es/internal/useNoInteractiveChildren.js +92 -0
  308. package/es/internal/useNormalizedInputProps.js +88 -0
  309. package/es/internal/usePrefix.js +15 -0
  310. package/es/internal/useSavedCallback.js +32 -0
  311. package/es/internal/warning.js +28 -0
  312. package/es/internal/wrapFocus.js +75 -0
  313. package/es/node_modules/flatpickr/dist/l10n/index.js +1423 -0
  314. package/es/node_modules/flatpickr/dist/plugins/rangePlugin.js +196 -0
  315. package/es/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +1112 -0
  316. package/es/node_modules/use-resize-observer/polyfilled.js +112 -0
  317. package/es/prop-types/AriaPropTypes.js +16 -0
  318. package/es/prop-types/deprecate.js +33 -0
  319. package/es/prop-types/isRequiredOneOf.js +47 -0
  320. package/es/prop-types/requiredIfGivenPropIsTruthy.js +29 -0
  321. package/es/prop-types/requiredIfValueExists.js +32 -0
  322. package/es/prop-types/types.js +10 -0
  323. package/es/tools/array.js +32 -0
  324. package/es/tools/createPropAdapter.js +63 -0
  325. package/es/tools/events.js +35 -0
  326. package/es/tools/mergeRefs.js +31 -0
  327. package/es/tools/setupGetInstanceId.js +19 -0
  328. package/es/tools/toggleClass.js +14 -0
  329. package/es/tools/uniqueId.js +15 -0
  330. package/es/tools/wrapComponent.js +42 -0
  331. package/icons/es/index.js +1 -1
  332. package/icons/lib/index.js +7 -1952
  333. package/index.scss +1 -0
  334. package/lib/_virtual/ResizeObserver.es.js +17 -0
  335. package/lib/_virtual/_commonjsHelpers.js +35 -0
  336. package/lib/_virtual/_rollupPluginBabelHelpers.js +383 -0
  337. package/lib/{prefix.js → _virtual/index.js} +4 -2
  338. package/lib/_virtual/rangePlugin.js +14 -0
  339. package/lib/components/Accordion/Accordion.Skeleton.js +113 -0
  340. package/lib/components/Accordion/Accordion.js +97 -0
  341. package/lib/components/Accordion/AccordionItem.js +191 -0
  342. package/lib/components/Accordion/index.js +16 -0
  343. package/lib/components/AccordionItem/index.js +16 -0
  344. package/lib/components/AspectRatio/AspectRatio.js +77 -0
  345. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +55 -0
  346. package/lib/components/Breadcrumb/Breadcrumb.js +68 -0
  347. package/lib/components/Breadcrumb/BreadcrumbItem.js +104 -0
  348. package/lib/components/Button/Button.Skeleton.js +100 -0
  349. package/lib/components/Button/Button.js +380 -0
  350. package/lib/components/ButtonSet/ButtonSet.js +58 -0
  351. package/lib/components/Checkbox/Checkbox.Skeleton.js +46 -0
  352. package/lib/components/Checkbox/Checkbox.js +146 -0
  353. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +68 -0
  354. package/lib/components/CodeSnippet/CodeSnippet.js +383 -0
  355. package/lib/components/ComboBox/ComboBox.js +543 -0
  356. package/lib/components/ComboBox/tools/filter.js +24 -0
  357. package/lib/components/ComposedModal/ComposedModal.js +643 -0
  358. package/lib/components/ComposedModal/index.js +45 -0
  359. package/lib/components/ComposedModal/next/ComposedModal.js +234 -0
  360. package/lib/components/ComposedModal/next/ModalFooter.js +223 -0
  361. package/lib/components/ComposedModal/next/ModalHeader.js +137 -0
  362. package/lib/components/ContentSwitcher/ContentSwitcher.js +195 -0
  363. package/lib/components/ContextMenu/useContextMenu.js +61 -0
  364. package/lib/components/Copy/Copy.js +154 -0
  365. package/lib/components/CopyButton/CopyButton.js +77 -0
  366. package/lib/components/DangerButton/DangerButton.js +28 -0
  367. package/lib/components/DataTable/DataTable.js +667 -0
  368. package/lib/components/DataTable/Table.js +120 -0
  369. package/lib/components/DataTable/TableActionList.js +21 -0
  370. package/lib/components/DataTable/TableBatchAction.js +54 -0
  371. package/lib/components/DataTable/TableBatchActions.js +120 -0
  372. package/lib/components/DataTable/TableBody.js +46 -0
  373. package/lib/components/DataTable/TableCell.js +20 -0
  374. package/lib/components/DataTable/TableContainer.js +76 -0
  375. package/lib/components/DataTable/TableExpandHeader.js +96 -0
  376. package/lib/components/DataTable/TableExpandRow.js +103 -0
  377. package/lib/components/DataTable/TableExpandedRow.js +85 -0
  378. package/lib/components/DataTable/TableHead.js +20 -0
  379. package/lib/components/DataTable/TableHeader.js +197 -0
  380. package/lib/components/DataTable/TableRow.js +52 -0
  381. package/lib/components/DataTable/TableSelectAll.js +94 -0
  382. package/lib/components/DataTable/TableSelectRow.js +107 -0
  383. package/lib/components/DataTable/TableToolbar.js +77 -0
  384. package/lib/components/DataTable/TableToolbarAction.js +40 -0
  385. package/lib/components/DataTable/TableToolbarContent.js +21 -0
  386. package/lib/components/DataTable/TableToolbarMenu.js +71 -0
  387. package/lib/components/DataTable/TableToolbarSearch.js +252 -0
  388. package/lib/components/DataTable/index.js +76 -0
  389. package/lib/components/DataTable/state/getDerivedStateFromProps.js +56 -0
  390. package/lib/components/DataTable/state/sortStates.js +23 -0
  391. package/lib/components/DataTable/state/sorting.js +100 -0
  392. package/lib/components/DataTable/tools/cells.js +25 -0
  393. package/lib/components/DataTable/tools/denormalize.js +47 -0
  394. package/lib/components/DataTable/tools/filter.js +46 -0
  395. package/lib/components/DataTable/tools/instanceId.js +25 -0
  396. package/lib/components/DataTable/tools/normalize.js +82 -0
  397. package/lib/components/DataTable/tools/sorting.js +117 -0
  398. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +143 -0
  399. package/lib/components/DatePicker/DatePicker.Skeleton.js +79 -0
  400. package/lib/components/DatePicker/DatePicker.js +633 -0
  401. package/lib/components/DatePicker/index.js +39 -0
  402. package/lib/components/DatePicker/next/DatePicker.js +569 -0
  403. package/lib/components/DatePicker/plugins/appendToPlugin.js +62 -0
  404. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +93 -0
  405. package/lib/components/DatePicker/plugins/rangePlugin.js +55 -0
  406. package/lib/components/DatePickerInput/DatePickerInput.js +281 -0
  407. package/lib/components/DatePickerInput/index.js +39 -0
  408. package/lib/components/DatePickerInput/next/DatePickerInput.js +279 -0
  409. package/lib/components/Dropdown/Dropdown.Skeleton.js +65 -0
  410. package/lib/components/Dropdown/Dropdown.js +337 -0
  411. package/lib/components/ErrorBoundary/ErrorBoundary.js +105 -0
  412. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +20 -0
  413. package/lib/components/ExpandableSearch/ExpandableSearch.js +76 -0
  414. package/lib/components/ExpandableSearch/index.js +16 -0
  415. package/lib/components/FeatureFlags/index.js +181 -0
  416. package/lib/components/FileUploader/FileUploader.Skeleton.js +53 -0
  417. package/lib/components/FileUploader/FileUploader.js +313 -0
  418. package/lib/components/FileUploader/FileUploaderButton.js +227 -0
  419. package/lib/components/FileUploader/FileUploaderDropContainer.js +233 -0
  420. package/lib/components/FileUploader/FileUploaderItem.js +159 -0
  421. package/lib/components/FileUploader/Filename.js +91 -0
  422. package/lib/components/FileUploader/index.js +38 -0
  423. package/lib/components/FluidForm/FluidForm.js +56 -0
  424. package/lib/components/FluidForm/FormContext.js +18 -0
  425. package/lib/components/Form/Form.js +51 -0
  426. package/lib/components/FormGroup/FormGroup.js +107 -0
  427. package/lib/components/FormItem/FormItem.js +51 -0
  428. package/lib/components/FormLabel/FormLabel.js +77 -0
  429. package/lib/components/Grid/CSSGrid.js +149 -0
  430. package/lib/components/Grid/Column.js +392 -0
  431. package/lib/components/Grid/ColumnHang.js +61 -0
  432. package/lib/components/Grid/FlexGrid.js +86 -0
  433. package/lib/components/Grid/Grid.js +72 -0
  434. package/lib/components/Grid/GridContext.js +88 -0
  435. package/lib/components/Grid/Row.js +75 -0
  436. package/lib/components/Heading/index.js +72 -0
  437. package/lib/components/Icon/Icon.Skeleton.js +55 -0
  438. package/lib/components/IconButton/index.js +98 -0
  439. package/lib/components/InlineCheckbox/InlineCheckbox.js +131 -0
  440. package/lib/components/InlineLoading/InlineLoading.js +128 -0
  441. package/lib/components/Layer/LayerContext.js +20 -0
  442. package/lib/components/Layer/index.js +72 -0
  443. package/lib/components/Link/Link.js +105 -0
  444. package/lib/components/ListBox/ListBox.js +139 -0
  445. package/lib/components/ListBox/ListBoxField.js +71 -0
  446. package/lib/components/ListBox/ListBoxMenu.js +65 -0
  447. package/lib/components/ListBox/ListBoxMenuIcon.js +72 -0
  448. package/lib/components/ListBox/ListBoxMenuItem.js +97 -0
  449. package/lib/components/ListBox/ListBoxPropTypes.js +42 -0
  450. package/lib/components/ListBox/ListBoxSelection.js +159 -0
  451. package/lib/components/ListBox/index.js +25 -0
  452. package/lib/components/ListBox/next/ListBoxSelection.js +166 -0
  453. package/lib/components/ListBox/next/ListBoxTrigger.js +79 -0
  454. package/lib/components/ListItem/ListItem.js +51 -0
  455. package/lib/components/Loading/Loading.js +112 -0
  456. package/lib/components/Menu/Menu.js +339 -0
  457. package/lib/components/Menu/MenuDivider.js +27 -0
  458. package/lib/components/Menu/MenuGroup.js +43 -0
  459. package/lib/components/Menu/MenuItem.js +67 -0
  460. package/lib/components/Menu/MenuOption.js +260 -0
  461. package/lib/components/Menu/MenuRadioGroup.js +59 -0
  462. package/lib/components/Menu/MenuRadioGroupOptions.js +73 -0
  463. package/lib/components/Menu/MenuSelectableItem.js +66 -0
  464. package/lib/components/Menu/_utils.js +191 -0
  465. package/lib/components/Menu/index.js +30 -0
  466. package/lib/components/Modal/Modal.js +353 -0
  467. package/lib/components/Modal/index.js +39 -0
  468. package/lib/components/Modal/next/Modal.js +287 -0
  469. package/lib/components/ModalWrapper/ModalWrapper.js +173 -0
  470. package/lib/components/MultiSelect/FilterableMultiSelect.js +588 -0
  471. package/lib/components/MultiSelect/MultiSelect.js +480 -0
  472. package/lib/components/MultiSelect/MultiSelectPropTypes.js +49 -0
  473. package/lib/components/MultiSelect/index.js +47 -0
  474. package/lib/components/MultiSelect/next/FilterableMultiSelect.js +544 -0
  475. package/lib/components/MultiSelect/tools/itemToString.js +32 -0
  476. package/lib/components/MultiSelect/tools/sorting.js +58 -0
  477. package/lib/components/Notification/Notification.js +544 -0
  478. package/lib/components/Notification/index.js +51 -0
  479. package/lib/components/Notification/next/Notification.js +698 -0
  480. package/lib/components/NumberInput/NumberInput.Skeleton.js +54 -0
  481. package/lib/components/NumberInput/NumberInput.js +546 -0
  482. package/lib/components/OrderedList/OrderedList.js +76 -0
  483. package/lib/components/OverflowMenu/OverflowMenu.js +547 -0
  484. package/lib/components/OverflowMenu/index.js +38 -0
  485. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +250 -0
  486. package/lib/components/OverflowMenuItem/index.js +16 -0
  487. package/lib/components/OverflowMenuV2/index.js +147 -0
  488. package/lib/components/Pagination/Pagination.Skeleton.js +58 -0
  489. package/lib/components/Pagination/Pagination.js +430 -0
  490. package/lib/components/Pagination/experimental/PageSelector.js +91 -0
  491. package/lib/components/Pagination/experimental/Pagination.js +310 -0
  492. package/lib/components/Pagination/index.js +38 -0
  493. package/lib/components/Pagination/next/Pagination.js +411 -0
  494. package/lib/components/PaginationNav/PaginationNav.js +465 -0
  495. package/lib/components/Popover/index.js +129 -0
  496. package/lib/components/PrimaryButton/PrimaryButton.js +28 -0
  497. package/lib/components/ProgressBar/ProgressBar.js +120 -0
  498. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +60 -0
  499. package/lib/components/ProgressIndicator/ProgressIndicator.js +334 -0
  500. package/lib/components/ProgressIndicator/index.js +39 -0
  501. package/lib/components/ProgressIndicator/next/ProgressIndicator.js +127 -0
  502. package/lib/components/RadioButton/RadioButton.Skeleton.js +47 -0
  503. package/lib/components/RadioButton/RadioButton.js +183 -0
  504. package/lib/components/RadioButton/index.js +39 -0
  505. package/lib/components/RadioButton/next/RadioButton.js +138 -0
  506. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +200 -0
  507. package/lib/components/RadioButtonGroup/index.js +39 -0
  508. package/lib/components/RadioButtonGroup/next/RadioButtonGroup.js +151 -0
  509. package/lib/components/RadioTile/RadioTile.js +157 -0
  510. package/lib/components/Search/Search.Skeleton.js +60 -0
  511. package/lib/components/Search/Search.js +299 -0
  512. package/lib/components/Search/index.js +39 -0
  513. package/lib/components/Search/next/Search.js +273 -0
  514. package/lib/components/SearchFilterButton/SearchFilterButton.js +70 -0
  515. package/lib/components/SearchLayoutButton/SearchLayoutButton.js +160 -0
  516. package/lib/components/SecondaryButton/SecondaryButton.js +28 -0
  517. package/lib/components/Select/Select.Skeleton.js +56 -0
  518. package/lib/components/Select/Select.js +240 -0
  519. package/lib/components/SelectItem/SelectItem.js +80 -0
  520. package/lib/components/SelectItemGroup/SelectItemGroup.js +89 -0
  521. package/lib/components/SkeletonIcon/SkeletonIcon.js +52 -0
  522. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +47 -0
  523. package/lib/components/SkeletonText/SkeletonText.js +124 -0
  524. package/lib/components/Slider/Slider.Skeleton.js +66 -0
  525. package/lib/components/Slider/Slider.js +679 -0
  526. package/lib/components/Slider/index.js +38 -0
  527. package/lib/components/Stack/Stack.js +112 -0
  528. package/lib/components/Stack/index.js +35 -0
  529. package/lib/components/StructuredList/StructuredList.Skeleton.js +92 -0
  530. package/lib/components/StructuredList/StructuredList.js +322 -0
  531. package/lib/components/StructuredList/index.js +52 -0
  532. package/lib/components/StructuredList/next/StructuredList.js +345 -0
  533. package/lib/components/Switch/Switch.js +134 -0
  534. package/lib/components/Tab/Tab.js +220 -0
  535. package/lib/components/Tab/index.js +39 -0
  536. package/lib/components/TabContent/TabContent.js +87 -0
  537. package/lib/components/Tabs/Tabs.Skeleton.js +63 -0
  538. package/lib/components/Tabs/Tabs.js +629 -0
  539. package/lib/components/Tabs/index.js +47 -0
  540. package/lib/components/Tabs/next/Tabs.Skeleton.js +63 -0
  541. package/lib/components/Tabs/next/Tabs.js +664 -0
  542. package/lib/components/Tabs/next/usePressable.js +149 -0
  543. package/lib/components/Tag/Tag.Skeleton.js +50 -0
  544. package/lib/components/Tag/Tag.js +156 -0
  545. package/lib/components/Text/Text.js +107 -0
  546. package/lib/components/Text/TextDirectionContext.js +16 -0
  547. package/lib/components/Text/createTextComponent.js +41 -0
  548. package/lib/components/Text/index.js +17 -0
  549. package/lib/components/TextArea/TextArea.Skeleton.js +54 -0
  550. package/lib/components/TextArea/TextArea.js +230 -0
  551. package/lib/components/TextInput/ControlledPasswordInput.js +244 -0
  552. package/lib/components/TextInput/PasswordInput.js +315 -0
  553. package/lib/components/TextInput/TextInput.Skeleton.js +54 -0
  554. package/lib/components/TextInput/TextInput.js +268 -0
  555. package/lib/components/TextInput/index.js +25 -0
  556. package/lib/components/TextInput/util.js +37 -0
  557. package/lib/components/Theme/index.js +116 -0
  558. package/lib/components/Tile/Tile.js +782 -0
  559. package/lib/components/Tile/index.js +48 -0
  560. package/lib/components/Tile/next/Tile.js +662 -0
  561. package/lib/components/TileGroup/TileGroup.js +173 -0
  562. package/lib/components/TimePicker/TimePicker.js +266 -0
  563. package/lib/components/TimePicker/index.js +39 -0
  564. package/lib/components/TimePicker/next/TimePicker.js +228 -0
  565. package/lib/components/TimePickerSelect/TimePickerSelect.js +92 -0
  566. package/lib/components/TimePickerSelect/index.js +39 -0
  567. package/lib/components/TimePickerSelect/next/TimePickerSelect.js +87 -0
  568. package/lib/components/Toggle/Toggle.Skeleton.js +84 -0
  569. package/lib/components/Toggle/Toggle.js +130 -0
  570. package/lib/components/Toggle/index.js +23 -0
  571. package/lib/components/Toggle/next/Toggle.js +169 -0
  572. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +81 -0
  573. package/lib/components/ToggleSmall/ToggleSmall.js +114 -0
  574. package/lib/components/Toolbar/Toolbar.js +135 -0
  575. package/lib/components/ToolbarSearch/ToolbarSearch.js +178 -0
  576. package/lib/components/Tooltip/next/DefinitionTooltip.js +132 -0
  577. package/lib/components/Tooltip/next/Tooltip.js +164 -0
  578. package/lib/components/TooltipDefinition/TooltipDefinition.js +178 -0
  579. package/lib/components/TooltipIcon/TooltipIcon.js +245 -0
  580. package/lib/components/TreeView/TreeNode.js +335 -0
  581. package/lib/components/TreeView/TreeView.js +281 -0
  582. package/lib/components/TreeView/index.js +18 -0
  583. package/lib/components/UIShell/Content.js +60 -0
  584. package/lib/components/UIShell/Header.js +47 -0
  585. package/lib/components/UIShell/HeaderContainer.js +53 -0
  586. package/lib/components/UIShell/HeaderGlobalAction.js +97 -0
  587. package/lib/components/UIShell/HeaderGlobalBar.js +24 -0
  588. package/lib/components/UIShell/HeaderMenu.js +250 -0
  589. package/lib/components/UIShell/HeaderMenuButton.js +79 -0
  590. package/lib/components/UIShell/HeaderMenuItem.js +83 -0
  591. package/lib/components/UIShell/HeaderName.js +72 -0
  592. package/lib/components/UIShell/HeaderNavigation.js +110 -0
  593. package/lib/components/UIShell/HeaderPanel.js +62 -0
  594. package/lib/components/UIShell/HeaderSideNavItems.js +60 -0
  595. package/lib/components/UIShell/Link.js +59 -0
  596. package/lib/components/UIShell/SideNav.js +237 -0
  597. package/lib/components/UIShell/SideNavDetails.js +56 -0
  598. package/lib/components/UIShell/SideNavDivider.js +40 -0
  599. package/lib/components/UIShell/SideNavFooter.js +88 -0
  600. package/lib/components/UIShell/SideNavHeader.js +60 -0
  601. package/lib/components/UIShell/SideNavIcon.js +59 -0
  602. package/lib/components/UIShell/SideNavItem.js +57 -0
  603. package/lib/components/UIShell/SideNavItems.js +66 -0
  604. package/lib/components/UIShell/SideNavLink.js +84 -0
  605. package/lib/components/UIShell/SideNavLinkText.js +51 -0
  606. package/lib/components/UIShell/SideNavMenu.js +209 -0
  607. package/lib/components/UIShell/SideNavMenuItem.js +67 -0
  608. package/lib/components/UIShell/SideNavSwitcher.js +90 -0
  609. package/lib/components/UIShell/SkipToContent.js +67 -0
  610. package/lib/components/UIShell/Switcher.js +55 -0
  611. package/lib/components/UIShell/SwitcherDivider.js +45 -0
  612. package/lib/components/UIShell/SwitcherItem.js +72 -0
  613. package/lib/components/UIShell/_utils.js +14 -0
  614. package/lib/components/UIShell/index.js +42 -0
  615. package/lib/components/UIShell/next/HeaderNavigation.js +62 -0
  616. package/lib/components/UIShell/next/SideNavMenu.js +170 -0
  617. package/lib/components/UnorderedList/UnorderedList.js +69 -0
  618. package/lib/index.js +409 -858
  619. package/lib/internal/ClickListener.js +110 -0
  620. package/lib/internal/ComponentToggle.js +50 -0
  621. package/lib/internal/FeatureFlags.js +56 -0
  622. package/lib/internal/FloatingMenu.js +498 -0
  623. package/lib/internal/OptimizedResize.js +73 -0
  624. package/lib/internal/Selection.js +254 -0
  625. package/lib/internal/createClassWrapper.js +39 -0
  626. package/lib/internal/deprecateFieldOnObject.js +30 -0
  627. package/lib/internal/environment.js +19 -0
  628. package/lib/internal/focus/index.js +20 -0
  629. package/lib/internal/keyboard/keys.js +79 -0
  630. package/lib/internal/keyboard/match.js +87 -0
  631. package/lib/internal/keyboard/navigation.js +69 -0
  632. package/lib/internal/useControllableState.js +90 -0
  633. package/lib/internal/useDelayedState.js +58 -0
  634. package/lib/internal/useEffectOnce.js +35 -0
  635. package/lib/internal/useId.js +64 -0
  636. package/lib/internal/useIsomorphicEffect.js +17 -0
  637. package/lib/internal/useMatchMedia.js +55 -0
  638. package/lib/internal/useMergedRefs.js +35 -0
  639. package/lib/internal/useNoInteractiveChildren.js +97 -0
  640. package/lib/internal/useNormalizedInputProps.js +96 -0
  641. package/lib/internal/usePrefix.js +24 -0
  642. package/lib/internal/useSavedCallback.js +36 -0
  643. package/lib/internal/warning.js +32 -0
  644. package/lib/internal/wrapFocus.js +84 -0
  645. package/lib/node_modules/flatpickr/dist/l10n/index.js +1427 -0
  646. package/lib/node_modules/flatpickr/dist/plugins/rangePlugin.js +200 -0
  647. package/lib/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +1116 -0
  648. package/lib/node_modules/use-resize-observer/polyfilled.js +120 -0
  649. package/lib/prop-types/AriaPropTypes.js +24 -0
  650. package/lib/prop-types/deprecate.js +37 -0
  651. package/lib/prop-types/isRequiredOneOf.js +51 -0
  652. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +33 -0
  653. package/lib/prop-types/requiredIfValueExists.js +36 -0
  654. package/lib/prop-types/types.js +14 -0
  655. package/lib/tools/array.js +36 -0
  656. package/lib/tools/createPropAdapter.js +67 -0
  657. package/lib/tools/events.js +39 -0
  658. package/lib/tools/mergeRefs.js +35 -0
  659. package/lib/tools/setupGetInstanceId.js +23 -0
  660. package/lib/tools/toggleClass.js +18 -0
  661. package/lib/tools/uniqueId.js +19 -0
  662. package/lib/tools/wrapComponent.js +52 -0
  663. package/package.json +49 -18
  664. package/scss/{grid/_config.scss → components/_index.scss} +1 -1
  665. package/scss/components/accordion/_accordion.scss +9 -0
  666. package/scss/components/aspect-ratio/_aspect-ratio.scss +9 -0
  667. package/scss/components/breadcrumb/_breadcrumb.scss +9 -0
  668. package/scss/components/button/_button.scss +9 -0
  669. package/scss/components/button/_tokens.scss +9 -0
  670. package/scss/components/checkbox/_checkbox.scss +9 -0
  671. package/scss/components/code-snippet/_code-snippet.scss +9 -0
  672. package/scss/components/combo-box/_combo-box.scss +9 -0
  673. package/scss/components/content-switcher/_content-switcher.scss +9 -0
  674. package/scss/components/copy-button/_copy-button.scss +9 -0
  675. package/scss/components/data-table/_data-table.scss +9 -0
  676. package/scss/components/data-table/action/_data-table-action.scss +9 -0
  677. package/scss/components/data-table/action/_index.scss +9 -0
  678. package/scss/components/data-table/expandable/_data-table-expandable.scss +9 -0
  679. package/scss/components/data-table/expandable/_index.scss +9 -0
  680. package/scss/components/data-table/skeleton/_data-table-skeleton.scss +9 -0
  681. package/scss/components/data-table/skeleton/_index.scss +9 -0
  682. package/scss/components/data-table/sort/_data-table-sort.scss +9 -0
  683. package/scss/components/data-table/sort/_index.scss +9 -0
  684. package/scss/components/date-picker/_date-picker.scss +9 -0
  685. package/scss/components/dropdown/_dropdown.scss +9 -0
  686. package/scss/components/file-uploader/_file-uploader.scss +9 -0
  687. package/scss/components/form/_form.scss +9 -0
  688. package/scss/components/inline-loading/_inline-loading.scss +9 -0
  689. package/scss/components/link/_link.scss +9 -0
  690. package/scss/components/list/_list.scss +9 -0
  691. package/scss/components/list-box/_index.scss +9 -0
  692. package/scss/components/list-box/_list-box.scss +9 -0
  693. package/scss/components/loading/_loading.scss +9 -0
  694. package/scss/components/menu/_menu.scss +9 -0
  695. package/scss/components/modal/_modal.scss +9 -0
  696. package/scss/components/multiselect/_multiselect.scss +9 -0
  697. package/scss/components/notification/_actionable-notification.scss +9 -0
  698. package/scss/components/notification/_inline-notification.scss +9 -0
  699. package/scss/components/notification/_toast-notification.scss +9 -0
  700. package/scss/components/notification/_tokens.scss +9 -0
  701. package/scss/components/number-input/_number-input.scss +9 -0
  702. package/scss/components/overflow-menu/_overflow-menu.scss +9 -0
  703. package/scss/components/pagination/_pagination.scss +9 -0
  704. package/scss/components/pagination/_unstable_pagination.scss +9 -0
  705. package/scss/components/pagination-nav/_pagination-nav.scss +9 -0
  706. package/scss/components/popover/_index.scss +9 -0
  707. package/scss/components/popover/_popover.scss +9 -0
  708. package/scss/components/progress-bar/_index.scss +9 -0
  709. package/scss/components/progress-bar/_progress-bar.scss +9 -0
  710. package/scss/components/progress-indicator/_progress-indicator.scss +9 -0
  711. package/scss/components/radio-button/_radio-button.scss +9 -0
  712. package/scss/components/search/_search.scss +9 -0
  713. package/scss/components/select/_select.scss +9 -0
  714. package/scss/components/skeleton-styles/_index.scss +9 -0
  715. package/scss/components/skeleton-styles/_skeleton-styles.scss +9 -0
  716. package/scss/components/slider/_slider.scss +9 -0
  717. package/scss/components/stack/_stack.scss +9 -0
  718. package/scss/components/structured-list/_structured-list.scss +9 -0
  719. package/scss/components/tabs/_tabs.scss +9 -0
  720. package/scss/components/tag/_tag.scss +9 -0
  721. package/scss/components/tag/_tokens.scss +9 -0
  722. package/scss/components/text-area/_text-area.scss +9 -0
  723. package/scss/components/text-input/_text-input.scss +9 -0
  724. package/scss/components/tile/_tile.scss +9 -0
  725. package/scss/components/time-picker/_time-picker.scss +9 -0
  726. package/scss/components/toggle/_toggle.scss +9 -0
  727. package/scss/components/toggletip/_index.scss +9 -0
  728. package/scss/components/toggletip/_toggletip.scss +9 -0
  729. package/scss/components/tooltip/_tooltip.scss +9 -0
  730. package/scss/components/treeview/_treeview.scss +9 -0
  731. package/scss/components/ui-shell/_ui-shell.scss +9 -0
  732. package/scss/components/ui-shell/content/_content.scss +9 -0
  733. package/scss/components/ui-shell/content/_index.scss +9 -0
  734. package/scss/components/ui-shell/header/_header.scss +9 -0
  735. package/scss/components/ui-shell/header/_index.scss +9 -0
  736. package/scss/components/ui-shell/header-panel/_header-panel.scss +9 -0
  737. package/scss/components/ui-shell/header-panel/_index.scss +9 -0
  738. package/scss/components/ui-shell/side-nav/_index.scss +9 -0
  739. package/scss/components/ui-shell/side-nav/_side-nav.scss +9 -0
  740. package/scss/components/ui-shell/switcher/_index.scss +9 -0
  741. package/scss/components/ui-shell/switcher/_switcher.scss +9 -0
  742. package/scss/fonts/_src.scss +9 -0
  743. package/scss/grid/_css-grid.scss +9 -0
  744. package/scss/grid/_mixins.scss +9 -0
  745. package/scss/type/_index.scss +9 -0
  746. package/scss/type/_reset.scss +9 -0
  747. package/scss/utilities/_box-shadow.scss +9 -0
  748. package/scss/utilities/_button-reset.scss +9 -0
  749. package/scss/utilities/_component-reset.scss +9 -0
  750. package/scss/utilities/_component-tokens.scss +9 -0
  751. package/scss/utilities/_custom-property.scss +9 -0
  752. package/scss/utilities/_focus-outline.scss +9 -0
  753. package/scss/utilities/_high-contrast-mode.scss +9 -0
  754. package/scss/utilities/_index.scss +9 -0
  755. package/scss/utilities/_keyframes.scss +9 -0
  756. package/scss/utilities/_placeholder-colors.scss +9 -0
  757. package/scss/utilities/_rotate.scss +9 -0
  758. package/scss/utilities/_skeleton.scss +9 -0
  759. package/scss/utilities/_text-overflow.scss +9 -0
  760. package/scss/utilities/_text-truncate.scss +9 -0
  761. package/scss/utilities/_visually-hidden.scss +9 -0
  762. package/icons/es/icon-helpers/es/index.js +0 -141
  763. package/icons/es/icons-react/next/index.esm.js +0 -14
  764. package/icons/lib/icon-helpers/es/index.js +0 -146
  765. package/icons/lib/icons-react/next/index.esm.js +0 -1973
@@ -0,0 +1,242 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, defineProperty as _defineProperty, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import cx from 'classnames';
10
+ import PropTypes from 'prop-types';
11
+ import React__default, { useRef, useState, useMemo, useEffect } from 'react';
12
+ import Search from '../Search/index.js';
13
+ import setupGetInstanceId from './tools/instanceId.js';
14
+ import deprecate from '../../prop-types/deprecate.js';
15
+ import { usePrefix } from '../../internal/usePrefix.js';
16
+
17
+ var _excluded = ["className", "searchContainerClass", "onChange", "onClear", "translateWithId", "placeHolderText", "placeholder", "labelText", "expanded", "defaultExpanded", "defaultValue", "disabled", "onExpand", "persistent", "persistant", "id", "onBlur", "onFocus"];
18
+ var getInstanceId = setupGetInstanceId();
19
+ var translationKeys = {
20
+ 'carbon.table.toolbar.search.label': 'Filter table',
21
+ 'carbon.table.toolbar.search.placeholder': 'Filter table'
22
+ };
23
+
24
+ var translateWithId = function translateWithId(id) {
25
+ return translationKeys[id];
26
+ };
27
+
28
+ var TableToolbarSearch = function TableToolbarSearch(_ref) {
29
+ var _cx;
30
+
31
+ var className = _ref.className,
32
+ searchContainerClass = _ref.searchContainerClass,
33
+ onChangeProp = _ref.onChange,
34
+ onClear = _ref.onClear,
35
+ t = _ref.translateWithId,
36
+ placeHolderText = _ref.placeHolderText,
37
+ placeholder = _ref.placeholder,
38
+ labelText = _ref.labelText,
39
+ expandedProp = _ref.expanded,
40
+ defaultExpanded = _ref.defaultExpanded,
41
+ defaultValue = _ref.defaultValue,
42
+ disabled = _ref.disabled,
43
+ onExpand = _ref.onExpand,
44
+ persistent = _ref.persistent,
45
+ persistant = _ref.persistant,
46
+ id = _ref.id,
47
+ onBlur = _ref.onBlur,
48
+ onFocus = _ref.onFocus,
49
+ rest = _objectWithoutProperties(_ref, _excluded);
50
+
51
+ var _useRef = useRef(expandedProp !== undefined),
52
+ controlled = _useRef.current;
53
+
54
+ var _useState = useState(defaultExpanded || defaultValue),
55
+ _useState2 = _slicedToArray(_useState, 2),
56
+ expandedState = _useState2[0],
57
+ setExpandedState = _useState2[1];
58
+
59
+ var expanded = controlled ? expandedProp : expandedState;
60
+
61
+ var _useState3 = useState(defaultValue || ''),
62
+ _useState4 = _slicedToArray(_useState3, 2),
63
+ value = _useState4[0],
64
+ setValue = _useState4[1];
65
+
66
+ var uniqueId = useMemo(getInstanceId, []);
67
+
68
+ var _useState5 = useState(null),
69
+ _useState6 = _slicedToArray(_useState5, 2),
70
+ focusTarget = _useState6[0],
71
+ setFocusTarget = _useState6[1];
72
+
73
+ var prefix = usePrefix();
74
+ useEffect(function () {
75
+ if (focusTarget) {
76
+ focusTarget.current.querySelector('input').focus();
77
+ setFocusTarget(null);
78
+ }
79
+ }, [focusTarget]);
80
+ useEffect(function () {
81
+ if (defaultValue) {
82
+ onChangeProp('', defaultValue);
83
+ }
84
+ }, //eslint-disable-next-line react-hooks/exhaustive-deps
85
+ []);
86
+ var searchClasses = cx(className, (_cx = {}, _defineProperty(_cx, searchContainerClass, searchContainerClass), _defineProperty(_cx, "".concat(prefix, "--toolbar-search-container-active"), expanded), _defineProperty(_cx, "".concat(prefix, "--toolbar-search-container-disabled"), disabled), _defineProperty(_cx, "".concat(prefix, "--toolbar-search-container-expandable"), !persistent || !persistent && !persistant), _defineProperty(_cx, "".concat(prefix, "--toolbar-search-container-persistent"), persistent || persistant), _cx));
87
+
88
+ var handleExpand = function handleExpand(event) {
89
+ var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !expanded;
90
+
91
+ if (!disabled) {
92
+ if (!controlled && (!persistent || !persistent && !persistant)) {
93
+ setExpandedState(value);
94
+ }
95
+
96
+ if (onExpand) {
97
+ onExpand(event, value);
98
+ }
99
+ }
100
+ };
101
+
102
+ var onChange = function onChange(e) {
103
+ setValue(e.target.value);
104
+
105
+ if (onChangeProp) {
106
+ onChangeProp(e);
107
+ }
108
+ };
109
+
110
+ var handleOnFocus = function handleOnFocus(event) {
111
+ return handleExpand(event, true);
112
+ };
113
+
114
+ var handleOnBlur = function handleOnBlur(event) {
115
+ return !value && handleExpand(event, false);
116
+ };
117
+
118
+ return /*#__PURE__*/React__default.createElement(Search, _extends({
119
+ disabled: disabled,
120
+ className: searchClasses,
121
+ value: value,
122
+ id: typeof id !== 'undefined' ? id : uniqueId.toString(),
123
+ labelText: labelText || t('carbon.table.toolbar.search.label'),
124
+ placeholder: placeHolderText || placeholder || t('carbon.table.toolbar.search.placeholder'),
125
+ onChange: onChange,
126
+ onClear: onClear,
127
+ onFocus: onFocus ? function (event) {
128
+ return onFocus(event, handleExpand);
129
+ } : handleOnFocus,
130
+ onBlur: onBlur ? function (event) {
131
+ return onBlur(event, handleExpand);
132
+ } : handleOnBlur
133
+ }, rest));
134
+ };
135
+
136
+ TableToolbarSearch.propTypes = {
137
+ children: PropTypes.node,
138
+
139
+ /**
140
+ * Provide an optional class name for the search container
141
+ */
142
+ className: PropTypes.string,
143
+
144
+ /**
145
+ * Specifies if the search should initially render in an expanded state
146
+ */
147
+ defaultExpanded: PropTypes.bool,
148
+
149
+ /**
150
+ * Provide an optional default value for the Search component
151
+ */
152
+ defaultValue: PropTypes.string,
153
+
154
+ /**
155
+ * Specifies if the search should be disabled
156
+ */
157
+ disabled: PropTypes.bool,
158
+
159
+ /**
160
+ * Specifies if the search should expand
161
+ */
162
+ expanded: PropTypes.bool,
163
+
164
+ /**
165
+ * Provide an optional id for the search container
166
+ */
167
+ id: PropTypes.string,
168
+
169
+ /**
170
+ * Provide an optional label text for the Search component icon
171
+ */
172
+ labelText: PropTypes.string,
173
+
174
+ /**
175
+ * Provide an optional function to be called when the search input loses focus, this will be
176
+ * passed the event as the first parameter and a function to handle the expanding of the search
177
+ * input as the second
178
+ */
179
+ onBlur: PropTypes.func,
180
+
181
+ /**
182
+ * Provide an optional hook that is called each time the input is updated
183
+ */
184
+ onChange: PropTypes.func,
185
+
186
+ /**
187
+ * Optional callback called when the search value is cleared.
188
+ */
189
+ onClear: PropTypes.func,
190
+
191
+ /**
192
+ * Provide an optional hook that is called each time the input is expanded
193
+ */
194
+ onExpand: PropTypes.func,
195
+
196
+ /**
197
+ * Provide an optional function to be called when the search input gains focus, this will be
198
+ * passed the event as the first parameter and a function to handle the expanding of the search
199
+ * input as the second.
200
+ */
201
+ onFocus: PropTypes.func,
202
+ persistant: deprecate(PropTypes.bool, "\nThe prop `persistant` for TableToolbarSearch has been deprecated in favor of `persistent`. Please use `persistent` instead."),
203
+
204
+ /**
205
+ * Whether the search should be allowed to expand
206
+ */
207
+ persistent: PropTypes.bool,
208
+
209
+ /**
210
+ * Deprecated in favor of `placeholder`
211
+ */
212
+ placeHolderText: deprecate(PropTypes.string, "\nThe prop `placeHolderText` for TableToolbarSearch has been deprecated in favor of `placeholder`. Please use `placeholder` instead."),
213
+
214
+ /**
215
+ * Provide an optional placeholder text for the Search component
216
+ */
217
+ placeholder: PropTypes.string,
218
+
219
+ /**
220
+ * Provide an optional className for the overall container of the Search
221
+ */
222
+ searchContainerClass: PropTypes.string,
223
+
224
+ /**
225
+ * Optional prop to specify the tabIndex of the <Search> (in expanded state) or the container (in collapsed state)
226
+ */
227
+ tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
228
+
229
+ /**
230
+ * Provide custom text for the component for each translation id
231
+ */
232
+ translateWithId: PropTypes.func.isRequired
233
+ };
234
+ TableToolbarSearch.defaultProps = {
235
+ tabIndex: '0',
236
+ translateWithId: translateWithId,
237
+ persistent: false,
238
+ onClear: function onClear() {}
239
+ };
240
+ var TableToolbarSearch$1 = TableToolbarSearch;
241
+
242
+ export { TableToolbarSearch$1 as default };
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import DataTable$1 from './DataTable.js';
9
+ import Table from './Table.js';
10
+ export { default as Table } from './Table.js';
11
+ import TableActionList from './TableActionList.js';
12
+ export { default as TableActionList } from './TableActionList.js';
13
+ import TableBatchAction from './TableBatchAction.js';
14
+ export { default as TableBatchAction } from './TableBatchAction.js';
15
+ import TableBatchActions from './TableBatchActions.js';
16
+ export { default as TableBatchActions } from './TableBatchActions.js';
17
+ import TableBody from './TableBody.js';
18
+ export { default as TableBody } from './TableBody.js';
19
+ import TableCell from './TableCell.js';
20
+ export { default as TableCell } from './TableCell.js';
21
+ import TableContainer from './TableContainer.js';
22
+ export { default as TableContainer } from './TableContainer.js';
23
+ import TableExpandHeader from './TableExpandHeader.js';
24
+ export { default as TableExpandHeader } from './TableExpandHeader.js';
25
+ import TableExpandRow from './TableExpandRow.js';
26
+ export { default as TableExpandRow } from './TableExpandRow.js';
27
+ import TableExpandedRow from './TableExpandedRow.js';
28
+ export { default as TableExpandedRow } from './TableExpandedRow.js';
29
+ import TableHead from './TableHead.js';
30
+ export { default as TableHead } from './TableHead.js';
31
+ import TableHeader from './TableHeader.js';
32
+ export { default as TableHeader } from './TableHeader.js';
33
+ import TableRow from './TableRow.js';
34
+ export { default as TableRow } from './TableRow.js';
35
+ import TableSelectAll from './TableSelectAll.js';
36
+ export { default as TableSelectAll } from './TableSelectAll.js';
37
+ import TableSelectRow from './TableSelectRow.js';
38
+ export { default as TableSelectRow } from './TableSelectRow.js';
39
+ import TableToolbar from './TableToolbar.js';
40
+ export { default as TableToolbar } from './TableToolbar.js';
41
+ import TableToolbarAction from './TableToolbarAction.js';
42
+ export { default as TableToolbarAction } from './TableToolbarAction.js';
43
+ import TableToolbarContent from './TableToolbarContent.js';
44
+ export { default as TableToolbarContent } from './TableToolbarContent.js';
45
+ import TableToolbarSearch from './TableToolbarSearch.js';
46
+ export { default as TableToolbarSearch } from './TableToolbarSearch.js';
47
+ import TableToolbarMenu from './TableToolbarMenu.js';
48
+ export { default as TableToolbarMenu } from './TableToolbarMenu.js';
49
+
50
+ DataTable$1.Table = Table;
51
+ DataTable$1.TableActionList = TableActionList;
52
+ DataTable$1.TableBatchAction = TableBatchAction;
53
+ DataTable$1.TableBatchActions = TableBatchActions;
54
+ DataTable$1.TableBody = TableBody;
55
+ DataTable$1.TableCell = TableCell;
56
+ DataTable$1.TableContainer = TableContainer;
57
+ DataTable$1.TableExpandHeader = TableExpandHeader;
58
+ DataTable$1.TableExpandRow = TableExpandRow;
59
+ DataTable$1.TableExpandedRow = TableExpandedRow;
60
+ DataTable$1.TableHead = TableHead;
61
+ DataTable$1.TableHeader = TableHeader;
62
+ DataTable$1.TableRow = TableRow;
63
+ DataTable$1.TableSelectAll = TableSelectAll;
64
+ DataTable$1.TableSelectRow = TableSelectRow;
65
+ DataTable$1.TableToolbar = TableToolbar;
66
+ DataTable$1.TableToolbarAction = TableToolbarAction;
67
+ DataTable$1.TableToolbarContent = TableToolbarContent;
68
+ DataTable$1.TableToolbarSearch = TableToolbarSearch;
69
+ DataTable$1.TableToolbarMenu = TableToolbarMenu;
70
+ var DataTable = DataTable$1;
71
+
72
+ export { DataTable as default };
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { initialSortState, getSortedState } from './sorting.js';
9
+ import normalize from '../tools/normalize.js';
10
+
11
+ /**
12
+ * Helper to derive the next state from the given props and the
13
+ * prevState. Potential future-facing API hook for React v17.
14
+ *
15
+ * Currently, it's being used as a way to normalize the incoming data that we
16
+ * are receiving for rows
17
+ */
18
+
19
+ var getDerivedStateFromProps = function getDerivedStateFromProps(props, prevState) {
20
+ var _normalize = normalize(props.rows, props.headers, prevState),
21
+ rowIds = _normalize.rowIds,
22
+ rowsById = _normalize.rowsById,
23
+ cellsById = _normalize.cellsById;
24
+
25
+ var state = {
26
+ rowIds: rowIds,
27
+ rowsById: rowsById,
28
+ cellsById: cellsById,
29
+ sortDirection: prevState.sortDirection || initialSortState,
30
+ sortHeaderKey: prevState.sortHeaderKey || null,
31
+ // Copy over rowIds so the reference doesn't mutate the stored
32
+ // `initialRowOrder`
33
+ initialRowOrder: rowIds.slice(),
34
+ filterInputValue: prevState.filterInputValue || null,
35
+ // Optional state field to indicate whether a consumer should show a
36
+ // batch actions menu
37
+ shouldShowBatchActions: prevState.shouldShowBatchActions || false
38
+ };
39
+
40
+ if (prevState.sortDirection && prevState.sortHeaderKey) {
41
+ var _getSortedState = getSortedState(props, state, prevState.sortHeaderKey, prevState.sortDirection),
42
+ _rowIds = _getSortedState.rowIds;
43
+
44
+ state.rowIds = _rowIds;
45
+ }
46
+
47
+ return state;
48
+ };
49
+
50
+ var getDerivedStateFromProps$1 = getDerivedStateFromProps;
51
+
52
+ export { getDerivedStateFromProps$1 as default };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ /**
9
+ * We currently support the following sorting states for DataTable headers,
10
+ * namely: `NONE` for no sorting being applied, and then `DESC` and `ASC` for
11
+ * the corresponding direction of the sorting order.
12
+ */
13
+ var sortStates = {
14
+ NONE: 'NONE',
15
+ DESC: 'DESC',
16
+ ASC: 'ASC'
17
+ };
18
+
19
+ export { sortStates };
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { sortStates } from './sortStates.js';
9
+ export { sortStates } from './sortStates.js';
10
+ import { sortRows } from '../tools/sorting.js';
11
+
12
+ // different initialSortState
13
+
14
+ var initialSortState = sortStates.NONE;
15
+ /**
16
+ * Utility used to get the next sort state given the following pieces of
17
+ * information:
18
+ *
19
+ * @param {string} prevHeader the value of the previous header
20
+ * @param {string} header the value of the currently selected header
21
+ * @param {string} prevState the previous sort state of the table
22
+ * @returns {string}
23
+ */
24
+
25
+ var getNextSortDirection = function getNextSortDirection(prevHeader, header, prevState) {
26
+ // If the previous header is equivalent to the current header, we know that we
27
+ // have to derive the next sort state from the previous sort state
28
+ if (prevHeader === header) {
29
+ // When transitioning, we know that the sequence of states is as follows:
30
+ // NONE -> ASC -> DESC -> NONE
31
+ if (prevState === 'NONE') {
32
+ return sortStates.ASC;
33
+ }
34
+
35
+ if (prevState === 'ASC') {
36
+ return sortStates.DESC;
37
+ }
38
+
39
+ return sortStates.NONE;
40
+ } // Otherwise, we have selected a new header and need to start off by sorting
41
+ // in descending order by default
42
+
43
+
44
+ return sortStates.ASC;
45
+ };
46
+ var getNextSortState = function getNextSortState(props, state, _ref) {
47
+ var key = _ref.key;
48
+ var sortDirection = state.sortDirection,
49
+ sortHeaderKey = state.sortHeaderKey;
50
+ var nextSortDirection = getNextSortDirection(key, sortHeaderKey, sortDirection);
51
+ return getSortedState(props, state, key, nextSortDirection);
52
+ };
53
+ /**
54
+ * Derive the set of sorted state fields from props and state for the given
55
+ * header key and sortDirection
56
+ *
57
+ * @param {object} props
58
+ * @param {string} props.locale The current locale
59
+ * @param {Function} props.sortRows Method to handle sorting a collection of
60
+ * rows
61
+ * @param {object} state
62
+ * @param {Array<string>} state.rowIds Array of row ids
63
+ * @param {object} state.cellsById Lookup object for cells by id
64
+ * @param {Array<string>} state.initialRowOrder Initial row order for the
65
+ * current set of rows
66
+ * @param {string} key The key for the given header we are serving the
67
+ * sorted state for
68
+ * @param {string} sortDirection The sortState that we want to order by
69
+ * @returns {object}
70
+ */
71
+
72
+ var getSortedState = function getSortedState(props, state, key, sortDirection) {
73
+ var rowIds = state.rowIds,
74
+ cellsById = state.cellsById,
75
+ initialRowOrder = state.initialRowOrder;
76
+ var locale = props.locale,
77
+ sortRow = props.sortRow;
78
+ var nextRowIds = sortDirection !== sortStates.NONE ? sortRows({
79
+ rowIds: rowIds,
80
+ cellsById: cellsById,
81
+ sortDirection: sortDirection,
82
+ key: key,
83
+ locale: locale,
84
+ sortRow: sortRow
85
+ }) : initialRowOrder;
86
+ return {
87
+ sortHeaderKey: key,
88
+ sortDirection: sortDirection,
89
+ rowIds: nextRowIds
90
+ };
91
+ };
92
+
93
+ export { getNextSortDirection, getNextSortState, getSortedState, initialSortState };
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ /**
9
+ * Generic helper used to consolidate all call sites for getting a cell id into
10
+ * one method. The strategy currently is that a "cellId" is just the combination
11
+ * of the row id and the header key used to access this field in a row.
12
+ *
13
+ * @param {string} rowId
14
+ * @param {string} header
15
+ * @returns {string}
16
+ */
17
+ var getCellId = function getCellId(rowId, header) {
18
+ return "".concat(rowId, ":").concat(header);
19
+ };
20
+
21
+ export { getCellId };
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { objectSpread2 as _objectSpread2 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
9
+
10
+ /**
11
+ * Copyright IBM Corp. 2016, 2018
12
+ *
13
+ * This source code is licensed under the Apache-2.0 license found in the
14
+ * LICENSE file in the root directory of this source tree.
15
+ */
16
+
17
+ /**
18
+ * Counterpart to `normalize` for a collection of rows. This method unravels the
19
+ * normalization step that we use to build the given parameters in order to
20
+ * return a natural interface to working with rows for a consumer.
21
+ *
22
+ * The default heuristic here is to map through all the row ids and return the
23
+ * value of the row for the given id, in addition to adding a `cells` key that
24
+ * contains the results of mapping over the rows cells and getting individual
25
+ * cell info.
26
+ *
27
+ * @param {Array<string>} rowIds array of row ids in the table
28
+ * @param {object} rowsById object containing lookups for rows by id
29
+ * @param {object} cellsById object containing lookups for cells by id
30
+ */
31
+ var denormalize = function denormalize(rowIds, rowsById, cellsById) {
32
+ return rowIds.map(function (id) {
33
+ return _objectSpread2(_objectSpread2({}, rowsById[id]), {}, {
34
+ cells: rowsById[id].cells.map(function (cellId) {
35
+ return cellsById[cellId];
36
+ })
37
+ });
38
+ });
39
+ };
40
+
41
+ var denormalize$1 = denormalize;
42
+
43
+ export { denormalize$1 as default };
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ /**
9
+ * Default implementation of how we filter rows internally. The idea behind this
10
+ * implementation is to use the given list of row ids and headers to get the
11
+ * individual cell values for a row. Then, we go through each cell value and see
12
+ * if any of them includes the given inputValue.
13
+ *
14
+ * @param {object} config
15
+ * @param {Array<string>} config.rowIds array of all the row ids in the table
16
+ * @param {Array<object>} config.headers
17
+ * @param {object} config.cellsById object containing a map of cell id to cell
18
+ * @param {string} config.inputValue the current input value in the Table Search
19
+ * @param {Function} config.getCellId
20
+ * @returns {Array<string>} rowIds
21
+ */
22
+ var defaultFilterRows = function defaultFilterRows(_ref) {
23
+ var rowIds = _ref.rowIds,
24
+ headers = _ref.headers,
25
+ cellsById = _ref.cellsById,
26
+ inputValue = _ref.inputValue,
27
+ getCellId = _ref.getCellId;
28
+ return rowIds.filter(function (rowId) {
29
+ return headers.some(function (_ref2) {
30
+ var key = _ref2.key;
31
+ var id = getCellId(rowId, key);
32
+
33
+ if (typeof cellsById[id].value === 'boolean') {
34
+ return false;
35
+ }
36
+
37
+ return ('' + cellsById[id].value).toLowerCase().includes(inputValue.toLowerCase());
38
+ });
39
+ });
40
+ };
41
+
42
+ export { defaultFilterRows };
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ /**
9
+ * Generic utility to initialize a method that will return a unique instance id
10
+ * for a component.
11
+ */
12
+ var setupGetInstanceId = function setupGetInstanceId() {
13
+ var instanceId = 0;
14
+ return function getInstanceId() {
15
+ return ++instanceId;
16
+ };
17
+ };
18
+
19
+ var setupGetInstanceId$1 = setupGetInstanceId;
20
+
21
+ export { setupGetInstanceId$1 as default };
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2021
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { getCellId } from './cells.js';
9
+
10
+ /**
11
+ * Normalize a collection of rows with the given headers.
12
+ *
13
+ * @param {Array<object>} rows
14
+ * @param {Array<object>} headers
15
+ * @returns {object}
16
+ */
17
+
18
+ var normalize = function normalize(rows, headers) {
19
+ var prevState = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
20
+ var prevRowsByIds = prevState.rowsById;
21
+ var rowIds = new Array(rows.length);
22
+ var rowsById = {};
23
+ var cellsById = {};
24
+ rows.forEach(function (row, i) {
25
+ rowIds[i] = row.id; // Initialize the row info and state values, namely for selection and
26
+ // expansion
27
+
28
+ var id = row.id,
29
+ _row$isSelected = row.isSelected,
30
+ isSelected = _row$isSelected === void 0 ? false : _row$isSelected,
31
+ _row$isExpanded = row.isExpanded,
32
+ isExpanded = _row$isExpanded === void 0 ? false : _row$isExpanded,
33
+ _row$disabled = row.disabled,
34
+ disabled = _row$disabled === void 0 ? false : _row$disabled;
35
+ rowsById[id] = {
36
+ id: id,
37
+ isSelected: isSelected,
38
+ isExpanded: isExpanded,
39
+ disabled: disabled,
40
+ cells: new Array(headers.length)
41
+ }; // If we have a previous state, and the row existed in that previous state,
42
+ // then we'll set the state values of the row to the previous state values.
43
+
44
+ if (prevRowsByIds && prevRowsByIds[row.id] !== undefined) {
45
+ rowsById[row.id].isSelected = prevRowsByIds[row.id].isSelected;
46
+ rowsById[row.id].isExpanded = prevRowsByIds[row.id].isExpanded;
47
+ }
48
+
49
+ headers.forEach(function (_ref, i) {
50
+ var key = _ref.key;
51
+ var id = getCellId(row.id, key); // Initialize the cell info and state values, namely for editing
52
+
53
+ cellsById[id] = {
54
+ id: id,
55
+ value: row[key],
56
+ isEditable: false,
57
+ isEditing: false,
58
+ isValid: true,
59
+ errors: null,
60
+ info: {
61
+ header: key
62
+ }
63
+ }; // TODO: When working on inline edits, we'll need to derive the state
64
+ // values similarly to rows above.
65
+
66
+ rowsById[row.id].cells[i] = id;
67
+ });
68
+ });
69
+ return {
70
+ rowIds: rowIds,
71
+ rowsById: rowsById,
72
+ cellsById: cellsById
73
+ };
74
+ };
75
+
76
+ var normalize$1 = normalize;
77
+
78
+ export { normalize$1 as default };