@carbon/react 0.16.2 → 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 (668) 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/lib/_virtual/ResizeObserver.es.js +17 -0
  334. package/lib/_virtual/_commonjsHelpers.js +35 -0
  335. package/lib/_virtual/_rollupPluginBabelHelpers.js +383 -0
  336. package/lib/{prefix.js → _virtual/index.js} +4 -2
  337. package/lib/_virtual/rangePlugin.js +14 -0
  338. package/lib/components/Accordion/Accordion.Skeleton.js +113 -0
  339. package/lib/components/Accordion/Accordion.js +97 -0
  340. package/lib/components/Accordion/AccordionItem.js +191 -0
  341. package/lib/components/Accordion/index.js +16 -0
  342. package/lib/components/AccordionItem/index.js +16 -0
  343. package/lib/components/AspectRatio/AspectRatio.js +77 -0
  344. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +55 -0
  345. package/lib/components/Breadcrumb/Breadcrumb.js +68 -0
  346. package/lib/components/Breadcrumb/BreadcrumbItem.js +104 -0
  347. package/lib/components/Button/Button.Skeleton.js +100 -0
  348. package/lib/components/Button/Button.js +380 -0
  349. package/lib/components/ButtonSet/ButtonSet.js +58 -0
  350. package/lib/components/Checkbox/Checkbox.Skeleton.js +46 -0
  351. package/lib/components/Checkbox/Checkbox.js +146 -0
  352. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +68 -0
  353. package/lib/components/CodeSnippet/CodeSnippet.js +383 -0
  354. package/lib/components/ComboBox/ComboBox.js +543 -0
  355. package/lib/components/ComboBox/tools/filter.js +24 -0
  356. package/lib/components/ComposedModal/ComposedModal.js +643 -0
  357. package/lib/components/ComposedModal/index.js +45 -0
  358. package/lib/components/ComposedModal/next/ComposedModal.js +234 -0
  359. package/lib/components/ComposedModal/next/ModalFooter.js +223 -0
  360. package/lib/components/ComposedModal/next/ModalHeader.js +137 -0
  361. package/lib/components/ContentSwitcher/ContentSwitcher.js +195 -0
  362. package/lib/components/ContextMenu/useContextMenu.js +61 -0
  363. package/lib/components/Copy/Copy.js +154 -0
  364. package/lib/components/CopyButton/CopyButton.js +77 -0
  365. package/lib/components/DangerButton/DangerButton.js +28 -0
  366. package/lib/components/DataTable/DataTable.js +667 -0
  367. package/lib/components/DataTable/Table.js +120 -0
  368. package/lib/components/DataTable/TableActionList.js +21 -0
  369. package/lib/components/DataTable/TableBatchAction.js +54 -0
  370. package/lib/components/DataTable/TableBatchActions.js +120 -0
  371. package/lib/components/DataTable/TableBody.js +46 -0
  372. package/lib/components/DataTable/TableCell.js +20 -0
  373. package/lib/components/DataTable/TableContainer.js +76 -0
  374. package/lib/components/DataTable/TableExpandHeader.js +96 -0
  375. package/lib/components/DataTable/TableExpandRow.js +103 -0
  376. package/lib/components/DataTable/TableExpandedRow.js +85 -0
  377. package/lib/components/DataTable/TableHead.js +20 -0
  378. package/lib/components/DataTable/TableHeader.js +197 -0
  379. package/lib/components/DataTable/TableRow.js +52 -0
  380. package/lib/components/DataTable/TableSelectAll.js +94 -0
  381. package/lib/components/DataTable/TableSelectRow.js +107 -0
  382. package/lib/components/DataTable/TableToolbar.js +77 -0
  383. package/lib/components/DataTable/TableToolbarAction.js +40 -0
  384. package/lib/components/DataTable/TableToolbarContent.js +21 -0
  385. package/lib/components/DataTable/TableToolbarMenu.js +71 -0
  386. package/lib/components/DataTable/TableToolbarSearch.js +252 -0
  387. package/lib/components/DataTable/index.js +76 -0
  388. package/lib/components/DataTable/state/getDerivedStateFromProps.js +56 -0
  389. package/lib/components/DataTable/state/sortStates.js +23 -0
  390. package/lib/components/DataTable/state/sorting.js +100 -0
  391. package/lib/components/DataTable/tools/cells.js +25 -0
  392. package/lib/components/DataTable/tools/denormalize.js +47 -0
  393. package/lib/components/DataTable/tools/filter.js +46 -0
  394. package/lib/components/DataTable/tools/instanceId.js +25 -0
  395. package/lib/components/DataTable/tools/normalize.js +82 -0
  396. package/lib/components/DataTable/tools/sorting.js +117 -0
  397. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +143 -0
  398. package/lib/components/DatePicker/DatePicker.Skeleton.js +79 -0
  399. package/lib/components/DatePicker/DatePicker.js +633 -0
  400. package/lib/components/DatePicker/index.js +39 -0
  401. package/lib/components/DatePicker/next/DatePicker.js +569 -0
  402. package/lib/components/DatePicker/plugins/appendToPlugin.js +62 -0
  403. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +93 -0
  404. package/lib/components/DatePicker/plugins/rangePlugin.js +55 -0
  405. package/lib/components/DatePickerInput/DatePickerInput.js +281 -0
  406. package/lib/components/DatePickerInput/index.js +39 -0
  407. package/lib/components/DatePickerInput/next/DatePickerInput.js +279 -0
  408. package/lib/components/Dropdown/Dropdown.Skeleton.js +65 -0
  409. package/lib/components/Dropdown/Dropdown.js +337 -0
  410. package/lib/components/ErrorBoundary/ErrorBoundary.js +105 -0
  411. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +20 -0
  412. package/lib/components/ExpandableSearch/ExpandableSearch.js +76 -0
  413. package/lib/components/ExpandableSearch/index.js +16 -0
  414. package/lib/components/FeatureFlags/index.js +181 -0
  415. package/lib/components/FileUploader/FileUploader.Skeleton.js +53 -0
  416. package/lib/components/FileUploader/FileUploader.js +313 -0
  417. package/lib/components/FileUploader/FileUploaderButton.js +227 -0
  418. package/lib/components/FileUploader/FileUploaderDropContainer.js +233 -0
  419. package/lib/components/FileUploader/FileUploaderItem.js +159 -0
  420. package/lib/components/FileUploader/Filename.js +91 -0
  421. package/lib/components/FileUploader/index.js +38 -0
  422. package/lib/components/FluidForm/FluidForm.js +56 -0
  423. package/lib/components/FluidForm/FormContext.js +18 -0
  424. package/lib/components/Form/Form.js +51 -0
  425. package/lib/components/FormGroup/FormGroup.js +107 -0
  426. package/lib/components/FormItem/FormItem.js +51 -0
  427. package/lib/components/FormLabel/FormLabel.js +77 -0
  428. package/lib/components/Grid/CSSGrid.js +149 -0
  429. package/lib/components/Grid/Column.js +392 -0
  430. package/lib/components/Grid/ColumnHang.js +61 -0
  431. package/lib/components/Grid/FlexGrid.js +86 -0
  432. package/lib/components/Grid/Grid.js +72 -0
  433. package/lib/components/Grid/GridContext.js +88 -0
  434. package/lib/components/Grid/Row.js +75 -0
  435. package/lib/components/Heading/index.js +72 -0
  436. package/lib/components/Icon/Icon.Skeleton.js +55 -0
  437. package/lib/components/IconButton/index.js +98 -0
  438. package/lib/components/InlineCheckbox/InlineCheckbox.js +131 -0
  439. package/lib/components/InlineLoading/InlineLoading.js +128 -0
  440. package/lib/components/Layer/LayerContext.js +20 -0
  441. package/lib/components/Layer/index.js +72 -0
  442. package/lib/components/Link/Link.js +105 -0
  443. package/lib/components/ListBox/ListBox.js +139 -0
  444. package/lib/components/ListBox/ListBoxField.js +71 -0
  445. package/lib/components/ListBox/ListBoxMenu.js +65 -0
  446. package/lib/components/ListBox/ListBoxMenuIcon.js +72 -0
  447. package/lib/components/ListBox/ListBoxMenuItem.js +97 -0
  448. package/lib/components/ListBox/ListBoxPropTypes.js +42 -0
  449. package/lib/components/ListBox/ListBoxSelection.js +159 -0
  450. package/lib/components/ListBox/index.js +25 -0
  451. package/lib/components/ListBox/next/ListBoxSelection.js +166 -0
  452. package/lib/components/ListBox/next/ListBoxTrigger.js +79 -0
  453. package/lib/components/ListItem/ListItem.js +51 -0
  454. package/lib/components/Loading/Loading.js +112 -0
  455. package/lib/components/Menu/Menu.js +339 -0
  456. package/lib/components/Menu/MenuDivider.js +27 -0
  457. package/lib/components/Menu/MenuGroup.js +43 -0
  458. package/lib/components/Menu/MenuItem.js +67 -0
  459. package/lib/components/Menu/MenuOption.js +260 -0
  460. package/lib/components/Menu/MenuRadioGroup.js +59 -0
  461. package/lib/components/Menu/MenuRadioGroupOptions.js +73 -0
  462. package/lib/components/Menu/MenuSelectableItem.js +66 -0
  463. package/lib/components/Menu/_utils.js +191 -0
  464. package/lib/components/Menu/index.js +30 -0
  465. package/lib/components/Modal/Modal.js +353 -0
  466. package/lib/components/Modal/index.js +39 -0
  467. package/lib/components/Modal/next/Modal.js +287 -0
  468. package/lib/components/ModalWrapper/ModalWrapper.js +173 -0
  469. package/lib/components/MultiSelect/FilterableMultiSelect.js +588 -0
  470. package/lib/components/MultiSelect/MultiSelect.js +480 -0
  471. package/lib/components/MultiSelect/MultiSelectPropTypes.js +49 -0
  472. package/lib/components/MultiSelect/index.js +47 -0
  473. package/lib/components/MultiSelect/next/FilterableMultiSelect.js +544 -0
  474. package/lib/components/MultiSelect/tools/itemToString.js +32 -0
  475. package/lib/components/MultiSelect/tools/sorting.js +58 -0
  476. package/lib/components/Notification/Notification.js +544 -0
  477. package/lib/components/Notification/index.js +51 -0
  478. package/lib/components/Notification/next/Notification.js +698 -0
  479. package/lib/components/NumberInput/NumberInput.Skeleton.js +54 -0
  480. package/lib/components/NumberInput/NumberInput.js +546 -0
  481. package/lib/components/OrderedList/OrderedList.js +76 -0
  482. package/lib/components/OverflowMenu/OverflowMenu.js +547 -0
  483. package/lib/components/OverflowMenu/index.js +38 -0
  484. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +250 -0
  485. package/lib/components/OverflowMenuItem/index.js +16 -0
  486. package/lib/components/OverflowMenuV2/index.js +147 -0
  487. package/lib/components/Pagination/Pagination.Skeleton.js +58 -0
  488. package/lib/components/Pagination/Pagination.js +430 -0
  489. package/lib/components/Pagination/experimental/PageSelector.js +91 -0
  490. package/lib/components/Pagination/experimental/Pagination.js +310 -0
  491. package/lib/components/Pagination/index.js +38 -0
  492. package/lib/components/Pagination/next/Pagination.js +411 -0
  493. package/lib/components/PaginationNav/PaginationNav.js +465 -0
  494. package/lib/components/Popover/index.js +129 -0
  495. package/lib/components/PrimaryButton/PrimaryButton.js +28 -0
  496. package/lib/components/ProgressBar/ProgressBar.js +120 -0
  497. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +60 -0
  498. package/lib/components/ProgressIndicator/ProgressIndicator.js +334 -0
  499. package/lib/components/ProgressIndicator/index.js +39 -0
  500. package/lib/components/ProgressIndicator/next/ProgressIndicator.js +127 -0
  501. package/lib/components/RadioButton/RadioButton.Skeleton.js +47 -0
  502. package/lib/components/RadioButton/RadioButton.js +183 -0
  503. package/lib/components/RadioButton/index.js +39 -0
  504. package/lib/components/RadioButton/next/RadioButton.js +138 -0
  505. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +200 -0
  506. package/lib/components/RadioButtonGroup/index.js +39 -0
  507. package/lib/components/RadioButtonGroup/next/RadioButtonGroup.js +151 -0
  508. package/lib/components/RadioTile/RadioTile.js +157 -0
  509. package/lib/components/Search/Search.Skeleton.js +60 -0
  510. package/lib/components/Search/Search.js +299 -0
  511. package/lib/components/Search/index.js +39 -0
  512. package/lib/components/Search/next/Search.js +273 -0
  513. package/lib/components/SearchFilterButton/SearchFilterButton.js +70 -0
  514. package/lib/components/SearchLayoutButton/SearchLayoutButton.js +160 -0
  515. package/lib/components/SecondaryButton/SecondaryButton.js +28 -0
  516. package/lib/components/Select/Select.Skeleton.js +56 -0
  517. package/lib/components/Select/Select.js +240 -0
  518. package/lib/components/SelectItem/SelectItem.js +80 -0
  519. package/lib/components/SelectItemGroup/SelectItemGroup.js +89 -0
  520. package/lib/components/SkeletonIcon/SkeletonIcon.js +52 -0
  521. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +47 -0
  522. package/lib/components/SkeletonText/SkeletonText.js +124 -0
  523. package/lib/components/Slider/Slider.Skeleton.js +66 -0
  524. package/lib/components/Slider/Slider.js +679 -0
  525. package/lib/components/Slider/index.js +38 -0
  526. package/lib/components/Stack/Stack.js +112 -0
  527. package/lib/components/Stack/index.js +35 -0
  528. package/lib/components/StructuredList/StructuredList.Skeleton.js +92 -0
  529. package/lib/components/StructuredList/StructuredList.js +322 -0
  530. package/lib/components/StructuredList/index.js +52 -0
  531. package/lib/components/StructuredList/next/StructuredList.js +345 -0
  532. package/lib/components/Switch/Switch.js +134 -0
  533. package/lib/components/Tab/Tab.js +220 -0
  534. package/lib/components/Tab/index.js +39 -0
  535. package/lib/components/TabContent/TabContent.js +87 -0
  536. package/lib/components/Tabs/Tabs.Skeleton.js +63 -0
  537. package/lib/components/Tabs/Tabs.js +629 -0
  538. package/lib/components/Tabs/index.js +47 -0
  539. package/lib/components/Tabs/next/Tabs.Skeleton.js +63 -0
  540. package/lib/components/Tabs/next/Tabs.js +664 -0
  541. package/lib/components/Tabs/next/usePressable.js +149 -0
  542. package/lib/components/Tag/Tag.Skeleton.js +50 -0
  543. package/lib/components/Tag/Tag.js +156 -0
  544. package/lib/components/Text/Text.js +107 -0
  545. package/lib/components/Text/TextDirectionContext.js +16 -0
  546. package/lib/components/Text/createTextComponent.js +41 -0
  547. package/lib/components/Text/index.js +17 -0
  548. package/lib/components/TextArea/TextArea.Skeleton.js +54 -0
  549. package/lib/components/TextArea/TextArea.js +230 -0
  550. package/lib/components/TextInput/ControlledPasswordInput.js +244 -0
  551. package/lib/components/TextInput/PasswordInput.js +315 -0
  552. package/lib/components/TextInput/TextInput.Skeleton.js +54 -0
  553. package/lib/components/TextInput/TextInput.js +268 -0
  554. package/lib/components/TextInput/index.js +25 -0
  555. package/lib/components/TextInput/util.js +37 -0
  556. package/lib/components/Theme/index.js +116 -0
  557. package/lib/components/Tile/Tile.js +782 -0
  558. package/lib/components/Tile/index.js +48 -0
  559. package/lib/components/Tile/next/Tile.js +662 -0
  560. package/lib/components/TileGroup/TileGroup.js +173 -0
  561. package/lib/components/TimePicker/TimePicker.js +266 -0
  562. package/lib/components/TimePicker/index.js +39 -0
  563. package/lib/components/TimePicker/next/TimePicker.js +228 -0
  564. package/lib/components/TimePickerSelect/TimePickerSelect.js +92 -0
  565. package/lib/components/TimePickerSelect/index.js +39 -0
  566. package/lib/components/TimePickerSelect/next/TimePickerSelect.js +87 -0
  567. package/lib/components/Toggle/Toggle.Skeleton.js +84 -0
  568. package/lib/components/Toggle/Toggle.js +130 -0
  569. package/lib/components/Toggle/index.js +23 -0
  570. package/lib/components/Toggle/next/Toggle.js +169 -0
  571. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +81 -0
  572. package/lib/components/ToggleSmall/ToggleSmall.js +114 -0
  573. package/lib/components/Toolbar/Toolbar.js +135 -0
  574. package/lib/components/ToolbarSearch/ToolbarSearch.js +178 -0
  575. package/lib/components/Tooltip/next/DefinitionTooltip.js +132 -0
  576. package/lib/components/Tooltip/next/Tooltip.js +164 -0
  577. package/lib/components/TooltipDefinition/TooltipDefinition.js +178 -0
  578. package/lib/components/TooltipIcon/TooltipIcon.js +245 -0
  579. package/lib/components/TreeView/TreeNode.js +335 -0
  580. package/lib/components/TreeView/TreeView.js +281 -0
  581. package/lib/components/TreeView/index.js +18 -0
  582. package/lib/components/UIShell/Content.js +60 -0
  583. package/lib/components/UIShell/Header.js +47 -0
  584. package/lib/components/UIShell/HeaderContainer.js +53 -0
  585. package/lib/components/UIShell/HeaderGlobalAction.js +97 -0
  586. package/lib/components/UIShell/HeaderGlobalBar.js +24 -0
  587. package/lib/components/UIShell/HeaderMenu.js +250 -0
  588. package/lib/components/UIShell/HeaderMenuButton.js +79 -0
  589. package/lib/components/UIShell/HeaderMenuItem.js +83 -0
  590. package/lib/components/UIShell/HeaderName.js +72 -0
  591. package/lib/components/UIShell/HeaderNavigation.js +110 -0
  592. package/lib/components/UIShell/HeaderPanel.js +62 -0
  593. package/lib/components/UIShell/HeaderSideNavItems.js +60 -0
  594. package/lib/components/UIShell/Link.js +59 -0
  595. package/lib/components/UIShell/SideNav.js +237 -0
  596. package/lib/components/UIShell/SideNavDetails.js +56 -0
  597. package/lib/components/UIShell/SideNavDivider.js +40 -0
  598. package/lib/components/UIShell/SideNavFooter.js +88 -0
  599. package/lib/components/UIShell/SideNavHeader.js +60 -0
  600. package/lib/components/UIShell/SideNavIcon.js +59 -0
  601. package/lib/components/UIShell/SideNavItem.js +57 -0
  602. package/lib/components/UIShell/SideNavItems.js +66 -0
  603. package/lib/components/UIShell/SideNavLink.js +84 -0
  604. package/lib/components/UIShell/SideNavLinkText.js +51 -0
  605. package/lib/components/UIShell/SideNavMenu.js +209 -0
  606. package/lib/components/UIShell/SideNavMenuItem.js +67 -0
  607. package/lib/components/UIShell/SideNavSwitcher.js +90 -0
  608. package/lib/components/UIShell/SkipToContent.js +67 -0
  609. package/lib/components/UIShell/Switcher.js +55 -0
  610. package/lib/components/UIShell/SwitcherDivider.js +45 -0
  611. package/lib/components/UIShell/SwitcherItem.js +72 -0
  612. package/lib/components/UIShell/_utils.js +14 -0
  613. package/lib/components/UIShell/index.js +42 -0
  614. package/lib/components/UIShell/next/HeaderNavigation.js +62 -0
  615. package/lib/components/UIShell/next/SideNavMenu.js +170 -0
  616. package/lib/components/UnorderedList/UnorderedList.js +69 -0
  617. package/lib/index.js +409 -858
  618. package/lib/internal/ClickListener.js +110 -0
  619. package/lib/internal/ComponentToggle.js +50 -0
  620. package/lib/internal/FeatureFlags.js +56 -0
  621. package/lib/internal/FloatingMenu.js +498 -0
  622. package/lib/internal/OptimizedResize.js +73 -0
  623. package/lib/internal/Selection.js +254 -0
  624. package/lib/internal/createClassWrapper.js +39 -0
  625. package/lib/internal/deprecateFieldOnObject.js +30 -0
  626. package/lib/internal/environment.js +19 -0
  627. package/lib/internal/focus/index.js +20 -0
  628. package/lib/internal/keyboard/keys.js +79 -0
  629. package/lib/internal/keyboard/match.js +87 -0
  630. package/lib/internal/keyboard/navigation.js +69 -0
  631. package/lib/internal/useControllableState.js +90 -0
  632. package/lib/internal/useDelayedState.js +58 -0
  633. package/lib/internal/useEffectOnce.js +35 -0
  634. package/lib/internal/useId.js +64 -0
  635. package/lib/internal/useIsomorphicEffect.js +17 -0
  636. package/lib/internal/useMatchMedia.js +55 -0
  637. package/lib/internal/useMergedRefs.js +35 -0
  638. package/lib/internal/useNoInteractiveChildren.js +97 -0
  639. package/lib/internal/useNormalizedInputProps.js +96 -0
  640. package/lib/internal/usePrefix.js +24 -0
  641. package/lib/internal/useSavedCallback.js +36 -0
  642. package/lib/internal/warning.js +32 -0
  643. package/lib/internal/wrapFocus.js +84 -0
  644. package/lib/node_modules/flatpickr/dist/l10n/index.js +1427 -0
  645. package/lib/node_modules/flatpickr/dist/plugins/rangePlugin.js +200 -0
  646. package/lib/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +1116 -0
  647. package/lib/node_modules/use-resize-observer/polyfilled.js +120 -0
  648. package/lib/prop-types/AriaPropTypes.js +24 -0
  649. package/lib/prop-types/deprecate.js +37 -0
  650. package/lib/prop-types/isRequiredOneOf.js +51 -0
  651. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +33 -0
  652. package/lib/prop-types/requiredIfValueExists.js +36 -0
  653. package/lib/prop-types/types.js +14 -0
  654. package/lib/tools/array.js +36 -0
  655. package/lib/tools/createPropAdapter.js +67 -0
  656. package/lib/tools/events.js +39 -0
  657. package/lib/tools/mergeRefs.js +35 -0
  658. package/lib/tools/setupGetInstanceId.js +23 -0
  659. package/lib/tools/toggleClass.js +18 -0
  660. package/lib/tools/uniqueId.js +19 -0
  661. package/lib/tools/wrapComponent.js +52 -0
  662. package/package.json +50 -20
  663. package/scss/grid/_css-grid.scss +9 -0
  664. package/scss/grid/{_config.scss → _mixins.scss} +1 -1
  665. package/icons/es/icon-helpers/es/index.js +0 -141
  666. package/icons/es/icons-react/next/index.esm.js +0 -14
  667. package/icons/lib/icon-helpers/es/index.js +0 -146
  668. package/icons/lib/icons-react/next/index.esm.js +0 -1973
@@ -0,0 +1,62 @@
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, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import React__default from 'react';
10
+ import PropTypes from 'prop-types';
11
+ import cx from 'classnames';
12
+ import { usePrefix } from '../../internal/usePrefix.js';
13
+ import { LayerContext } from './LayerContext.js';
14
+
15
+ var _excluded = ["as", "className", "children", "level"];
16
+ var levels = ['one', 'two', 'three'];
17
+ var MAX_LEVEL = levels.length - 1;
18
+ function Layer(_ref) {
19
+ var _ref$as = _ref.as,
20
+ BaseComponent = _ref$as === void 0 ? 'div' : _ref$as,
21
+ customClassName = _ref.className,
22
+ children = _ref.children,
23
+ overrideLevel = _ref.level,
24
+ rest = _objectWithoutProperties(_ref, _excluded);
25
+
26
+ var contextLevel = React__default.useContext(LayerContext);
27
+ var level = overrideLevel !== null && overrideLevel !== void 0 ? overrideLevel : contextLevel;
28
+ var prefix = usePrefix();
29
+ var className = cx("".concat(prefix, "--layer-").concat(levels[level]), customClassName); // The level should be between 0 and MAX_LEVEL
30
+
31
+ var value = Math.max(0, Math.min(level + 1, MAX_LEVEL));
32
+ return /*#__PURE__*/React__default.createElement(LayerContext.Provider, {
33
+ value: value
34
+ }, /*#__PURE__*/React__default.createElement(BaseComponent, _extends({}, rest, {
35
+ className: className
36
+ }), children));
37
+ }
38
+ Layer.propTypes = {
39
+ /**
40
+ * Specify a custom component or element to be rendered as the top-level
41
+ * element in the component
42
+ */
43
+ as: PropTypes.oneOfType([PropTypes.func, PropTypes.string, PropTypes.elementType]),
44
+
45
+ /**
46
+ * Provide child elements to be rendered inside of `Theme`
47
+ */
48
+ children: PropTypes.node,
49
+
50
+ /**
51
+ * Provide a custom class name to be used on the outermost element rendered by
52
+ * the component
53
+ */
54
+ className: PropTypes.string,
55
+
56
+ /**
57
+ * Specify the layer level and override any existing levels based on hierarchy
58
+ */
59
+ level: PropTypes.oneOf([0, 1, 2])
60
+ };
61
+
62
+ export { Layer };
@@ -0,0 +1,95 @@
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, 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 from 'react';
12
+ import { usePrefix } from '../../internal/usePrefix.js';
13
+
14
+ var _excluded = ["children", "className", "href", "disabled", "inline", "visited", "renderIcon", "size"];
15
+ var Link = /*#__PURE__*/React__default.forwardRef(function Link(_ref, ref) {
16
+ var _cx;
17
+
18
+ var children = _ref.children,
19
+ customClassName = _ref.className,
20
+ href = _ref.href,
21
+ disabled = _ref.disabled,
22
+ inline = _ref.inline,
23
+ visited = _ref.visited,
24
+ Icon = _ref.renderIcon,
25
+ size = _ref.size,
26
+ rest = _objectWithoutProperties(_ref, _excluded);
27
+
28
+ var prefix = usePrefix();
29
+ var className = cx("".concat(prefix, "--link"), customClassName, (_cx = {}, _defineProperty(_cx, "".concat(prefix, "--link--disabled"), disabled), _defineProperty(_cx, "".concat(prefix, "--link--inline"), inline), _defineProperty(_cx, "".concat(prefix, "--link--visited"), visited), _defineProperty(_cx, "".concat(prefix, "--link--").concat(size), size), _cx));
30
+ var rel = rest.target === '_blank' ? 'noopener' : null;
31
+ var linkProps = {
32
+ className: className,
33
+ rel: rel
34
+ }; // Reference for disabled links:
35
+ // https://www.scottohara.me/blog/2021/05/28/disabled-links.html
36
+
37
+ if (!disabled) {
38
+ linkProps.href = href;
39
+ } else {
40
+ linkProps.role = 'link';
41
+ linkProps['aria-disabled'] = true;
42
+ }
43
+
44
+ return /*#__PURE__*/React__default.createElement("a", _extends({
45
+ ref: ref
46
+ }, linkProps, rest), children, !inline && Icon && /*#__PURE__*/React__default.createElement("div", {
47
+ className: "".concat(prefix, "--link__icon")
48
+ }, /*#__PURE__*/React__default.createElement(Icon, null)));
49
+ });
50
+ Link.displayName = 'Link';
51
+ Link.propTypes = {
52
+ /**
53
+ * Provide the content for the Link
54
+ */
55
+ children: PropTypes.node,
56
+
57
+ /**
58
+ * Provide a custom className to be applied to the containing `<a>` node
59
+ */
60
+ className: PropTypes.string,
61
+
62
+ /**
63
+ * Specify if the control should be disabled, or not
64
+ */
65
+ disabled: PropTypes.bool,
66
+
67
+ /**
68
+ * Provide the `href` attribute for the `<a>` node
69
+ */
70
+ href: PropTypes.string,
71
+
72
+ /**
73
+ * Specify whether you want the inline version of this control
74
+ */
75
+ inline: PropTypes.bool,
76
+
77
+ /**
78
+ * Optional prop to render an icon next to the link.
79
+ * Can be a React component class
80
+ */
81
+ renderIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
82
+
83
+ /**
84
+ * Specify the size of the Link. Currently supports either `sm`, 'md' (default) or 'lg` as an option.
85
+ */
86
+ size: PropTypes.oneOf(['sm', 'md', 'lg']),
87
+
88
+ /**
89
+ * Specify whether you want the link to receive visited styles after the link has been clicked
90
+ */
91
+ visited: PropTypes.bool
92
+ };
93
+ var Link$1 = Link;
94
+
95
+ export { Link$1 as default };
@@ -0,0 +1,129 @@
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, defineProperty as _defineProperty, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import cx from 'classnames';
10
+ import React__default from 'react';
11
+ import PropTypes from 'prop-types';
12
+ import { ListBoxSize, ListBoxType } from './ListBoxPropTypes.js';
13
+ import { usePrefix } from '../../internal/usePrefix.js';
14
+
15
+ var _excluded = ["children", "className", "disabled", "type", "size", "invalid", "invalidText", "warn", "warnText", "light", "isOpen"];
16
+
17
+ var handleOnKeyDown = function handleOnKeyDown(event) {
18
+ if (event.keyCode === 27) {
19
+ event.stopPropagation();
20
+ }
21
+ };
22
+
23
+ var handleClick = function handleClick(event) {
24
+ event.preventDefault();
25
+ event.stopPropagation();
26
+ };
27
+ /**
28
+ * `ListBox` is a generic container component that handles creating the
29
+ * container class name in response to certain props.
30
+ */
31
+
32
+
33
+ var ListBox = /*#__PURE__*/React__default.forwardRef(function ListBox(_ref, ref) {
34
+ var _cx;
35
+
36
+ var children = _ref.children,
37
+ containerClassName = _ref.className,
38
+ disabled = _ref.disabled,
39
+ type = _ref.type,
40
+ size = _ref.size,
41
+ invalid = _ref.invalid,
42
+ invalidText = _ref.invalidText,
43
+ warn = _ref.warn,
44
+ warnText = _ref.warnText,
45
+ light = _ref.light,
46
+ isOpen = _ref.isOpen,
47
+ rest = _objectWithoutProperties(_ref, _excluded);
48
+
49
+ var prefix = usePrefix();
50
+ var showWarning = !invalid && warn;
51
+ var className = cx((_cx = {}, _defineProperty(_cx, containerClassName, !!containerClassName), _defineProperty(_cx, "".concat(prefix, "--list-box"), true), _defineProperty(_cx, "".concat(prefix, "--list-box--").concat(size), size), _defineProperty(_cx, "".concat(prefix, "--list-box--inline"), type === 'inline'), _defineProperty(_cx, "".concat(prefix, "--list-box--disabled"), disabled), _defineProperty(_cx, "".concat(prefix, "--list-box--light"), light), _defineProperty(_cx, "".concat(prefix, "--list-box--expanded"), isOpen), _defineProperty(_cx, "".concat(prefix, "--list-box--warning"), showWarning), _cx));
52
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", _extends({}, rest, {
53
+ className: className,
54
+ ref: ref,
55
+ onKeyDown: handleOnKeyDown,
56
+ onClick: handleClick,
57
+ "data-invalid": invalid || undefined
58
+ }), children), invalid ? /*#__PURE__*/React__default.createElement("div", {
59
+ className: "".concat(prefix, "--form-requirement")
60
+ }, invalidText) : null, showWarning ? /*#__PURE__*/React__default.createElement("div", {
61
+ className: "".concat(prefix, "--form-requirement")
62
+ }, warnText) : null);
63
+ });
64
+ ListBox.displayName = 'ListBox';
65
+ ListBox.propTypes = {
66
+ /**
67
+ * Provide the contents of your ListBox
68
+ */
69
+ children: PropTypes.node,
70
+
71
+ /**
72
+ * Specify a class name to be applied on the containing list box node
73
+ */
74
+ className: PropTypes.string,
75
+
76
+ /**
77
+ * Specify whether the ListBox is currently disabled
78
+ */
79
+ disabled: PropTypes.bool.isRequired,
80
+
81
+ /**
82
+ * Specify whether the control is currently invalid
83
+ */
84
+ invalid: PropTypes.bool,
85
+
86
+ /**
87
+ * Specify the text to be displayed when the control is invalid
88
+ */
89
+ invalidText: PropTypes.node,
90
+
91
+ /**
92
+ * Specify if the control should render open
93
+ */
94
+ isOpen: PropTypes.bool,
95
+
96
+ /**
97
+ * `true` to use the light version. For use on $ui-01 backgrounds only.
98
+ * Don't use this to make tile background color same as container background color.
99
+ */
100
+ light: PropTypes.bool,
101
+
102
+ /**
103
+ * Specify the size of the ListBox. Currently supports either `sm`, `md` or `lg` as an option.
104
+ */
105
+ size: ListBoxSize,
106
+
107
+ /**
108
+ * Specify the "type" of the ListBox. Currently supports either `default` or
109
+ * `inline` as an option.
110
+ */
111
+ type: ListBoxType.isRequired,
112
+
113
+ /**
114
+ * Specify whether the control is currently in warning state
115
+ */
116
+ warn: PropTypes.bool,
117
+
118
+ /**
119
+ * Provide the text that is displayed when the control is in warning state
120
+ */
121
+ warnText: PropTypes.node
122
+ };
123
+ ListBox.defaultProps = {
124
+ disabled: false,
125
+ type: 'default'
126
+ };
127
+ var ListBox$1 = ListBox;
128
+
129
+ export { ListBox$1 as default };
@@ -0,0 +1,62 @@
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, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import React__default from 'react';
10
+ import PropTypes from 'prop-types';
11
+ import { usePrefix } from '../../internal/usePrefix.js';
12
+
13
+ var _excluded = ["children", "disabled", "tabIndex"];
14
+ /**
15
+ * `ListBoxField` is responsible for creating the containing node for valid
16
+ * elements inside of a field. It also provides a11y-related attributes like
17
+ * `role` to make sure a user can focus the given field.
18
+ */
19
+
20
+ function ListBoxField(_ref) {
21
+ var children = _ref.children,
22
+ disabled = _ref.disabled,
23
+ tabIndex = _ref.tabIndex,
24
+ rest = _objectWithoutProperties(_ref, _excluded);
25
+
26
+ var prefix = usePrefix();
27
+ return /*#__PURE__*/React__default.createElement("div", _extends({
28
+ className: "".concat(prefix, "--list-box__field"),
29
+ tabIndex: !disabled && tabIndex || -1
30
+ }, rest), children);
31
+ }
32
+
33
+ ListBoxField.propTypes = {
34
+ /**
35
+ * Typically set by `getToggleButtonProps`, this should specify whether the
36
+ * field has a popup.
37
+ */
38
+ 'aria-haspopup': PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
39
+
40
+ /**
41
+ * Provide the contents of your ListBoxField
42
+ */
43
+ children: PropTypes.node,
44
+
45
+ /**
46
+ * Specify if the parent <ListBox> is disabled
47
+ */
48
+ disabled: PropTypes.bool,
49
+
50
+ /**
51
+ * The role for the component, should be set by `getToggleButtonProps` coming
52
+ * from Downshift
53
+ */
54
+ role: PropTypes.string,
55
+
56
+ /**
57
+ * Optional prop to specify the tabIndex of the <ListBox> trigger button
58
+ */
59
+ tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
60
+ };
61
+
62
+ export { ListBoxField as default };
@@ -0,0 +1,56 @@
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, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import React__default from 'react';
10
+ import { usePrefix } from '../../internal/usePrefix.js';
11
+ import PropTypes from 'prop-types';
12
+ import ListBoxMenuItem from './ListBoxMenuItem.js';
13
+
14
+ var _excluded = ["children", "id"];
15
+ /**
16
+ * `ListBoxMenu` is a simple container node that isolates the `list-box__menu`
17
+ * class into a single component. It is also being used to validate given
18
+ * `children` components.
19
+ */
20
+
21
+ var ListBoxMenu = /*#__PURE__*/React__default.forwardRef(function ListBoxMenu(_ref, ref) {
22
+ var children = _ref.children,
23
+ id = _ref.id,
24
+ rest = _objectWithoutProperties(_ref, _excluded);
25
+
26
+ var prefix = usePrefix();
27
+ return /*#__PURE__*/React__default.createElement("div", _extends({
28
+ ref: ref,
29
+ id: id,
30
+ className: "".concat(prefix, "--list-box__menu"),
31
+ role: "listbox"
32
+ }, rest), children);
33
+ });
34
+ ListBoxMenu.displayName = 'ListBoxMenu';
35
+ ListBoxMenu.propTypes = {
36
+ /**
37
+ * Provide the contents of your ListBoxMenu
38
+ */
39
+ children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(ListBoxMenuItem),
40
+ /**
41
+ * allow single item using the workaround for functional components
42
+ * https://github.com/facebook/react/issues/2979#issuecomment-222379916
43
+ */
44
+ PropTypes.shape({
45
+ type: PropTypes.oneOf([ListBoxMenuItem])
46
+ }), PropTypes.bool // used in Dropdown for closed state
47
+ ]),
48
+
49
+ /**
50
+ * Specify a custom `id`
51
+ */
52
+ id: PropTypes.string.isRequired
53
+ };
54
+ var ListBoxMenu$1 = ListBoxMenu;
55
+
56
+ export { ListBoxMenu$1 as default };
@@ -0,0 +1,61 @@
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 { defineProperty as _defineProperty } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import cx from 'classnames';
10
+ import React__default from 'react';
11
+ import PropTypes from 'prop-types';
12
+ import { ChevronDown } from '@carbon/icons-react';
13
+ import { usePrefix } from '../../internal/usePrefix.js';
14
+
15
+ var _defaultTranslations;
16
+ var translationIds = {
17
+ 'close.menu': 'close.menu',
18
+ 'open.menu': 'open.menu'
19
+ };
20
+ var defaultTranslations = (_defaultTranslations = {}, _defineProperty(_defaultTranslations, translationIds['close.menu'], 'Close menu'), _defineProperty(_defaultTranslations, translationIds['open.menu'], 'Open menu'), _defaultTranslations);
21
+ /**
22
+ * `ListBoxMenuIcon` is used to orient the icon up or down depending on the
23
+ * state of the menu for a given `ListBox`
24
+ */
25
+
26
+ var ListBoxMenuIcon = function ListBoxMenuIcon(_ref) {
27
+ var isOpen = _ref.isOpen,
28
+ t = _ref.translateWithId;
29
+ var prefix = usePrefix();
30
+ var className = cx("".concat(prefix, "--list-box__menu-icon"), _defineProperty({}, "".concat(prefix, "--list-box__menu-icon--open"), isOpen));
31
+ var description = isOpen ? t('close.menu') : t('open.menu');
32
+ return /*#__PURE__*/React__default.createElement("div", {
33
+ className: className
34
+ }, /*#__PURE__*/React__default.createElement(ChevronDown, {
35
+ name: "chevron--down",
36
+ "aria-label": description
37
+ }, /*#__PURE__*/React__default.createElement("title", null, description)));
38
+ };
39
+
40
+ ListBoxMenuIcon.propTypes = {
41
+ /**
42
+ * Specify whether the menu is currently open, which will influence the
43
+ * direction of the menu icon
44
+ */
45
+ isOpen: PropTypes.bool.isRequired,
46
+
47
+ /**
48
+ * i18n hook used to provide the appropriate description for the given menu
49
+ * icon. This function takes in an id defined in `translationIds` and should
50
+ * return a string message for that given message id.
51
+ */
52
+ translateWithId: PropTypes.func.isRequired
53
+ };
54
+ ListBoxMenuIcon.defaultProps = {
55
+ translateWithId: function translateWithId(id) {
56
+ return defaultTranslations[id];
57
+ }
58
+ };
59
+ var ListBoxMenuIcon$1 = ListBoxMenuIcon;
60
+
61
+ export { ListBoxMenuIcon$1 as default, translationIds };
@@ -0,0 +1,87 @@
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, defineProperty as _defineProperty, extends as _extends, slicedToArray as _slicedToArray } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import cx from 'classnames';
10
+ import React__default, { useRef, useState, useEffect } from 'react';
11
+ import PropTypes from 'prop-types';
12
+ import { usePrefix } from '../../internal/usePrefix.js';
13
+
14
+ var _excluded = ["children", "isActive", "isHighlighted", "title"];
15
+
16
+ function useIsTruncated(ref) {
17
+ var _useState = useState(false),
18
+ _useState2 = _slicedToArray(_useState, 2),
19
+ isTruncated = _useState2[0],
20
+ setIsTruncated = _useState2[1];
21
+
22
+ useEffect(function () {
23
+ var _ref$current = ref.current,
24
+ offsetWidth = _ref$current.offsetWidth,
25
+ scrollWidth = _ref$current.scrollWidth;
26
+ setIsTruncated(offsetWidth < scrollWidth);
27
+ }, [ref, setIsTruncated]);
28
+ return isTruncated;
29
+ }
30
+ /**
31
+ * `ListBoxMenuItem` is a helper component for managing the container class
32
+ * name, alongside any classes for any corresponding states, for a generic list
33
+ * box menu item.
34
+ */
35
+
36
+
37
+ var ListBoxMenuItem = /*#__PURE__*/React__default.forwardRef(function ListBoxMenuItem(_ref, forwardedRef) {
38
+ var _cx;
39
+
40
+ var children = _ref.children,
41
+ isActive = _ref.isActive,
42
+ isHighlighted = _ref.isHighlighted,
43
+ title = _ref.title,
44
+ rest = _objectWithoutProperties(_ref, _excluded);
45
+
46
+ var prefix = usePrefix();
47
+ var ref = useRef(null);
48
+ var isTruncated = useIsTruncated((forwardedRef === null || forwardedRef === void 0 ? void 0 : forwardedRef.menuItemOptionRef) || ref);
49
+ var className = cx("".concat(prefix, "--list-box__menu-item"), (_cx = {}, _defineProperty(_cx, "".concat(prefix, "--list-box__menu-item--active"), isActive), _defineProperty(_cx, "".concat(prefix, "--list-box__menu-item--highlighted"), isHighlighted), _cx));
50
+ return /*#__PURE__*/React__default.createElement("div", _extends({}, rest, {
51
+ className: className,
52
+ title: isTruncated ? title : undefined
53
+ }), /*#__PURE__*/React__default.createElement("div", {
54
+ className: "".concat(prefix, "--list-box__menu-item__option"),
55
+ ref: (forwardedRef === null || forwardedRef === void 0 ? void 0 : forwardedRef.menuItemOptionRef) || ref
56
+ }, children));
57
+ });
58
+ ListBoxMenuItem.displayName = 'ListBoxMenuItem';
59
+ ListBoxMenuItem.propTypes = {
60
+ /**
61
+ * Specify any children nodes that should be rendered inside of the ListBox
62
+ * Menu Item
63
+ */
64
+ children: PropTypes.node,
65
+
66
+ /**
67
+ * Specify whether the current menu item is "active".
68
+ */
69
+ isActive: PropTypes.bool.isRequired,
70
+
71
+ /**
72
+ * Specify whether the current menu item is "highlighted".
73
+ */
74
+ isHighlighted: PropTypes.bool.isRequired,
75
+
76
+ /**
77
+ * Provide an optional tooltip for the ListBoxMenuItem
78
+ */
79
+ title: PropTypes.string
80
+ };
81
+ ListBoxMenuItem.defaultProps = {
82
+ isActive: false,
83
+ isHighlighted: false
84
+ };
85
+ var ListBoxMenuItem$1 = ListBoxMenuItem;
86
+
87
+ export { ListBoxMenuItem$1 as default };
@@ -0,0 +1,14 @@
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 PropTypes from 'prop-types';
9
+ import * as FeatureFlags from '@carbon/feature-flags';
10
+
11
+ var ListBoxType = PropTypes.oneOf(['default', 'inline']);
12
+ var ListBoxSize = FeatureFlags.enabled('enable-v11-release') ? PropTypes.oneOf(['sm', 'md', 'lg']) : PropTypes.oneOf(['sm', 'md', 'lg', 'xl']);
13
+
14
+ export { ListBoxSize, ListBoxType };