@carbon/ibm-products 1.0.0-rc.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (479) hide show
  1. package/README.md +19 -18
  2. package/css/index-full-carbon.css +33427 -0
  3. package/css/index-full-carbon.css.map +1 -0
  4. package/css/index-full-carbon.min.css +9 -0
  5. package/css/index-without-carbon-released-only.css +7831 -0
  6. package/css/index-without-carbon-released-only.css.map +1 -0
  7. package/css/index-without-carbon-released-only.min.css +9 -0
  8. package/css/index-without-carbon.css +9841 -0
  9. package/css/index-without-carbon.css.map +1 -0
  10. package/css/index-without-carbon.min.css +9 -0
  11. package/css/index.css +22317 -0
  12. package/css/index.css.map +1 -0
  13. package/css/index.min.css +9 -0
  14. package/es/components/APIKeyModal/APIKeyDownloader.js +103 -0
  15. package/es/components/APIKeyModal/APIKeyModal.js +593 -0
  16. package/es/components/APIKeyModal/index.js +7 -0
  17. package/es/components/AboutModal/AboutModal.js +202 -0
  18. package/es/components/AboutModal/index.js +7 -0
  19. package/es/components/ActionBar/ActionBar.js +274 -0
  20. package/es/components/ActionBar/ActionBarItem.js +99 -0
  21. package/es/components/ActionBar/ActionBarOverflowItems.js +70 -0
  22. package/es/components/ActionBar/index.js +8 -0
  23. package/es/components/ActionSet/ActionSet.js +195 -0
  24. package/es/components/ActionSet/actions.js +48 -0
  25. package/es/components/ActionSet/index.js +7 -0
  26. package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +349 -0
  27. package/es/components/BreadcrumbWithOverflow/index.js +8 -0
  28. package/es/components/ButtonMenu/ButtonMenu.js +108 -0
  29. package/es/components/ButtonMenu/ButtonMenuItem.js +30 -0
  30. package/es/components/ButtonMenu/index.js +8 -0
  31. package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +231 -0
  32. package/es/components/ButtonSetWithOverflow/index.js +7 -0
  33. package/es/components/Card/Card.js +242 -0
  34. package/es/components/Card/CardFooter.js +72 -0
  35. package/es/components/Card/CardHeader.js +53 -0
  36. package/es/components/Card/index.js +9 -0
  37. package/es/components/Cascade/Cascade.js +88 -0
  38. package/es/components/Cascade/index.js +1 -0
  39. package/es/components/ComboButton/ComboButton.js +110 -0
  40. package/es/components/ComboButton/ComboButtonItem/index.js +39 -0
  41. package/es/components/ComboButton/index.js +8 -0
  42. package/es/components/CreateFullPage/CreateFullPage.js +454 -0
  43. package/es/components/CreateFullPage/CreateFullPageSection.js +53 -0
  44. package/es/components/CreateFullPage/CreateFullPageStep.js +112 -0
  45. package/es/components/CreateFullPage/constants.js +8 -0
  46. package/es/components/CreateFullPage/index.js +9 -0
  47. package/es/components/CreateInfluencer/CreateInfluencer.js +273 -0
  48. package/es/components/CreateInfluencer/index.js +7 -0
  49. package/es/components/CreateModal/CreateModal.js +152 -0
  50. package/es/components/CreateModal/index.js +8 -0
  51. package/es/components/CreateSidePanel/CreateSidePanel.js +175 -0
  52. package/es/components/CreateSidePanel/index.js +7 -0
  53. package/es/components/CreateTearsheet/CreateTearsheet.js +371 -0
  54. package/es/components/CreateTearsheet/CreateTearsheetDivider.js +33 -0
  55. package/es/components/CreateTearsheet/CreateTearsheetSection.js +83 -0
  56. package/es/components/CreateTearsheet/CreateTearsheetStep.js +129 -0
  57. package/es/components/CreateTearsheet/constants.js +8 -0
  58. package/es/components/CreateTearsheet/index.js +10 -0
  59. package/es/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +244 -0
  60. package/es/components/CreateTearsheet/preview-components/MultiStepWithIntro.js +295 -0
  61. package/es/components/CreateTearsheet/preview-components/MultiStepWithSectionsTearsheet.js +327 -0
  62. package/es/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +174 -0
  63. package/es/components/CreateTearsheetNarrow/index.js +7 -0
  64. package/es/components/EditSidePanel/EditSidePanel.js +209 -0
  65. package/es/components/EditSidePanel/index.js +7 -0
  66. package/es/components/EmptyStates/EmptyState.js +118 -0
  67. package/es/components/EmptyStates/EmptyStateContent.js +85 -0
  68. package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +113 -0
  69. package/es/components/EmptyStates/ErrorEmptyState/index.js +7 -0
  70. package/es/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +113 -0
  71. package/es/components/EmptyStates/NoDataEmptyState/index.js +7 -0
  72. package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +113 -0
  73. package/es/components/EmptyStates/NoTagsEmptyState/index.js +7 -0
  74. package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +113 -0
  75. package/es/components/EmptyStates/NotFoundEmptyState/index.js +7 -0
  76. package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +113 -0
  77. package/es/components/EmptyStates/NotificationsEmptyState/index.js +7 -0
  78. package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +113 -0
  79. package/es/components/EmptyStates/UnauthorizedEmptyState/index.js +7 -0
  80. package/es/components/EmptyStates/assets/ErrorIllustration.js +217 -0
  81. package/es/components/EmptyStates/assets/NoDataIllustration.js +180 -0
  82. package/es/components/EmptyStates/assets/NoTagsIllustration.js +488 -0
  83. package/es/components/EmptyStates/assets/NotFoundIllustration.js +365 -0
  84. package/es/components/EmptyStates/assets/NotificationsIllustration.js +336 -0
  85. package/es/components/EmptyStates/assets/UnauthorizedIllustration.js +309 -0
  86. package/es/components/EmptyStates/index.js +13 -0
  87. package/es/components/ExampleComponent/ExampleComponent.js +160 -0
  88. package/es/components/ExampleComponent/index.js +7 -0
  89. package/es/components/ExportModal/ExportModal.js +276 -0
  90. package/es/components/ExportModal/index.js +7 -0
  91. package/es/components/ExpressiveCard/ExpressiveCard.js +138 -0
  92. package/es/components/ExpressiveCard/index.js +7 -0
  93. package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +87 -0
  94. package/es/components/HTTPErrors/HTTPError403/index.js +7 -0
  95. package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +87 -0
  96. package/es/components/HTTPErrors/HTTPError404/index.js +7 -0
  97. package/es/components/HTTPErrors/HTTPErrorContent.js +84 -0
  98. package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +87 -0
  99. package/es/components/HTTPErrors/HTTPErrorOther/index.js +7 -0
  100. package/es/components/HTTPErrors/assets/HTTPErrorSvg403.js +1238 -0
  101. package/es/components/HTTPErrors/assets/HTTPErrorSvg404.js +1037 -0
  102. package/es/components/HTTPErrors/assets/HTTPErrorSvgOther.js +1088 -0
  103. package/es/components/HTTPErrors/index.js +9 -0
  104. package/es/components/ImportModal/ImportModal.js +421 -0
  105. package/es/components/ImportModal/index.js +7 -0
  106. package/es/components/LoadingBar/LoadingBar.js +160 -0
  107. package/es/components/LoadingBar/index.js +7 -0
  108. package/es/components/ModifiedTabs/ModifiedTabLabelNew.js +34 -0
  109. package/es/components/ModifiedTabs/ModifiedTabLabelWithClose.js +54 -0
  110. package/es/components/ModifiedTabs/ModifiedTabs.js +113 -0
  111. package/es/components/ModifiedTabs/index.js +1 -0
  112. package/es/components/NotificationsPanel/NotificationsPanel.js +547 -0
  113. package/es/components/NotificationsPanel/NotificationsPanel_data.js +134 -0
  114. package/es/components/NotificationsPanel/index.js +7 -0
  115. package/es/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +49 -0
  116. package/es/components/NotificationsPanel/utils.js +56 -0
  117. package/es/components/OptionsTile/OptionsTile.js +306 -0
  118. package/es/components/OptionsTile/index.js +7 -0
  119. package/es/components/PageHeader/PageHeader.js +779 -0
  120. package/es/components/PageHeader/PageHeaderDemo.data.js +614 -0
  121. package/es/components/PageHeader/PageHeaderTitle.js +49 -0
  122. package/es/components/PageHeader/PageHeaderUtils.js +187 -0
  123. package/es/components/PageHeader/index.js +7 -0
  124. package/es/components/ProductiveCard/ProductiveCard.js +118 -0
  125. package/es/components/ProductiveCard/index.js +7 -0
  126. package/es/components/RemoveModal/RemoveModal.js +189 -0
  127. package/es/components/RemoveModal/index.js +7 -0
  128. package/es/components/Saving/Saving.js +156 -0
  129. package/es/components/Saving/index.js +7 -0
  130. package/es/components/SidePanel/SidePanel.js +643 -0
  131. package/es/components/SidePanel/constants.js +13 -0
  132. package/es/components/SidePanel/index.js +7 -0
  133. package/es/components/StatusIcon/StatusIcon.js +132 -0
  134. package/es/components/StatusIcon/index.js +7 -0
  135. package/es/components/TagSet/TagSet.js +326 -0
  136. package/es/components/TagSet/TagSetModal.js +118 -0
  137. package/es/components/TagSet/TagSetOverflow.js +121 -0
  138. package/es/components/TagSet/index.js +7 -0
  139. package/es/components/Tearsheet/Tearsheet.js +180 -0
  140. package/es/components/Tearsheet/TearsheetNarrow.js +148 -0
  141. package/es/components/Tearsheet/TearsheetShell.js +390 -0
  142. package/es/components/Tearsheet/index.js +8 -0
  143. package/es/components/Toolbar/Toolbar.js +54 -0
  144. package/es/components/Toolbar/ToolbarButton.js +55 -0
  145. package/es/components/Toolbar/ToolbarGroup.js +37 -0
  146. package/es/components/Toolbar/index.js +9 -0
  147. package/es/components/UserProfileImage/UserProfileImage.js +136 -0
  148. package/es/components/UserProfileImage/index.js +8 -0
  149. package/es/components/WebTerminal/WebTerminal.js +168 -0
  150. package/es/components/WebTerminal/index.js +1 -0
  151. package/es/components/WebTerminal/preview-components/Navigation.js +31 -0
  152. package/es/components/WebTerminal/preview-components/documentationLinks.js +25 -0
  153. package/es/components/WebTerminal/preview-components/index.js +5 -0
  154. package/es/components/_Canary/Canary.js +48 -0
  155. package/es/components/_Canary/index.js +7 -0
  156. package/es/components/index.js +37 -0
  157. package/es/generated/feature-flags/feature-flags.js +15 -0
  158. package/es/global/js/hooks/index.js +14 -0
  159. package/es/global/js/hooks/useClickOutside.js +21 -0
  160. package/es/global/js/hooks/useCreateComponentFocus.js +37 -0
  161. package/es/global/js/hooks/useCreateComponentStepChange.js +250 -0
  162. package/es/global/js/hooks/usePreviousValue.js +19 -0
  163. package/es/global/js/hooks/useResetCreateComponent.js +40 -0
  164. package/es/global/js/hooks/useValidCreateStepCount.js +23 -0
  165. package/es/global/js/hooks/useWindowResize.js +67 -0
  166. package/es/global/js/hooks/useWindowScroll.js +80 -0
  167. package/es/global/js/package-settings.js +161 -0
  168. package/es/global/js/utils/ClickListener.js +70 -0
  169. package/es/global/js/utils/Wrap.js +85 -0
  170. package/es/global/js/utils/devtools.js +20 -0
  171. package/es/global/js/utils/getFocusableElements.js +14 -0
  172. package/es/global/js/utils/hasValidType.js +94 -0
  173. package/es/global/js/utils/keyboardNavigation.js +34 -0
  174. package/es/global/js/utils/pconsole.js +36 -0
  175. package/es/global/js/utils/props-helper.js +272 -0
  176. package/es/global/js/utils/scrollableAncestor.js +40 -0
  177. package/es/global/js/utils/story-helper.js +75 -0
  178. package/es/global/js/utils/test-helper.js +296 -0
  179. package/es/global/js/utils/unwrap-if-fragment.js +71 -0
  180. package/es/global/js/utils/uuidv4.js +12 -0
  181. package/es/global/js/utils/uuidv4.spec.js +23 -0
  182. package/es/global/js/utils/wait.js +8 -0
  183. package/es/global/js/utils/wrapFocus.js +74 -0
  184. package/es/index.js +8 -0
  185. package/es/settings.js +73 -0
  186. package/lib/components/APIKeyModal/APIKeyDownloader.js +127 -0
  187. package/lib/components/APIKeyModal/APIKeyModal.js +619 -0
  188. package/lib/components/APIKeyModal/index.js +13 -0
  189. package/lib/components/AboutModal/AboutModal.js +222 -0
  190. package/lib/components/AboutModal/index.js +13 -0
  191. package/lib/components/ActionBar/ActionBar.js +294 -0
  192. package/lib/components/ActionBar/ActionBarItem.js +107 -0
  193. package/lib/components/ActionBar/ActionBarOverflowItems.js +94 -0
  194. package/lib/components/ActionBar/index.js +21 -0
  195. package/lib/components/ActionSet/ActionSet.js +205 -0
  196. package/lib/components/ActionSet/actions.js +60 -0
  197. package/lib/components/ActionSet/index.js +13 -0
  198. package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +366 -0
  199. package/lib/components/BreadcrumbWithOverflow/index.js +13 -0
  200. package/lib/components/ButtonMenu/ButtonMenu.js +115 -0
  201. package/lib/components/ButtonMenu/ButtonMenuItem.js +44 -0
  202. package/lib/components/ButtonMenu/index.js +21 -0
  203. package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +255 -0
  204. package/lib/components/ButtonSetWithOverflow/index.js +13 -0
  205. package/lib/components/Card/Card.js +260 -0
  206. package/lib/components/Card/CardFooter.js +90 -0
  207. package/lib/components/Card/CardHeader.js +70 -0
  208. package/lib/components/Card/index.js +29 -0
  209. package/lib/components/Cascade/Cascade.js +109 -0
  210. package/lib/components/Cascade/index.js +13 -0
  211. package/lib/components/ComboButton/ComboButton.js +129 -0
  212. package/lib/components/ComboButton/ComboButtonItem/index.js +49 -0
  213. package/lib/components/ComboButton/index.js +21 -0
  214. package/lib/components/CreateFullPage/CreateFullPage.js +478 -0
  215. package/lib/components/CreateFullPage/CreateFullPageSection.js +74 -0
  216. package/lib/components/CreateFullPage/CreateFullPageStep.js +134 -0
  217. package/lib/components/CreateFullPage/constants.js +16 -0
  218. package/lib/components/CreateFullPage/index.js +29 -0
  219. package/lib/components/CreateInfluencer/CreateInfluencer.js +304 -0
  220. package/lib/components/CreateInfluencer/index.js +13 -0
  221. package/lib/components/CreateModal/CreateModal.js +161 -0
  222. package/lib/components/CreateModal/index.js +13 -0
  223. package/lib/components/CreateSidePanel/CreateSidePanel.js +187 -0
  224. package/lib/components/CreateSidePanel/index.js +13 -0
  225. package/lib/components/CreateTearsheet/CreateTearsheet.js +397 -0
  226. package/lib/components/CreateTearsheet/CreateTearsheetDivider.js +48 -0
  227. package/lib/components/CreateTearsheet/CreateTearsheetSection.js +105 -0
  228. package/lib/components/CreateTearsheet/CreateTearsheetStep.js +151 -0
  229. package/lib/components/CreateTearsheet/constants.js +17 -0
  230. package/lib/components/CreateTearsheet/index.js +37 -0
  231. package/lib/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +268 -0
  232. package/lib/components/CreateTearsheet/preview-components/MultiStepWithIntro.js +320 -0
  233. package/lib/components/CreateTearsheet/preview-components/MultiStepWithSectionsTearsheet.js +354 -0
  234. package/lib/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +184 -0
  235. package/lib/components/CreateTearsheetNarrow/index.js +13 -0
  236. package/lib/components/EditSidePanel/EditSidePanel.js +220 -0
  237. package/lib/components/EditSidePanel/index.js +13 -0
  238. package/lib/components/EmptyStates/EmptyState.js +134 -0
  239. package/lib/components/EmptyStates/EmptyStateContent.js +94 -0
  240. package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +128 -0
  241. package/lib/components/EmptyStates/ErrorEmptyState/index.js +13 -0
  242. package/lib/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +128 -0
  243. package/lib/components/EmptyStates/NoDataEmptyState/index.js +13 -0
  244. package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +128 -0
  245. package/lib/components/EmptyStates/NoTagsEmptyState/index.js +13 -0
  246. package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +128 -0
  247. package/lib/components/EmptyStates/NotFoundEmptyState/index.js +13 -0
  248. package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +128 -0
  249. package/lib/components/EmptyStates/NotificationsEmptyState/index.js +13 -0
  250. package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +128 -0
  251. package/lib/components/EmptyStates/UnauthorizedEmptyState/index.js +13 -0
  252. package/lib/components/EmptyStates/assets/ErrorIllustration.js +226 -0
  253. package/lib/components/EmptyStates/assets/NoDataIllustration.js +189 -0
  254. package/lib/components/EmptyStates/assets/NoTagsIllustration.js +497 -0
  255. package/lib/components/EmptyStates/assets/NotFoundIllustration.js +374 -0
  256. package/lib/components/EmptyStates/assets/NotificationsIllustration.js +345 -0
  257. package/lib/components/EmptyStates/assets/UnauthorizedIllustration.js +318 -0
  258. package/lib/components/EmptyStates/index.js +61 -0
  259. package/lib/components/ExampleComponent/ExampleComponent.js +169 -0
  260. package/lib/components/ExampleComponent/index.js +13 -0
  261. package/lib/components/ExportModal/ExportModal.js +298 -0
  262. package/lib/components/ExportModal/index.js +13 -0
  263. package/lib/components/ExpressiveCard/ExpressiveCard.js +161 -0
  264. package/lib/components/ExpressiveCard/index.js +13 -0
  265. package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +98 -0
  266. package/lib/components/HTTPErrors/HTTPError403/index.js +13 -0
  267. package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +98 -0
  268. package/lib/components/HTTPErrors/HTTPError404/index.js +13 -0
  269. package/lib/components/HTTPErrors/HTTPErrorContent.js +90 -0
  270. package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +98 -0
  271. package/lib/components/HTTPErrors/HTTPErrorOther/index.js +13 -0
  272. package/lib/components/HTTPErrors/assets/HTTPErrorSvg403.js +1251 -0
  273. package/lib/components/HTTPErrors/assets/HTTPErrorSvg404.js +1050 -0
  274. package/lib/components/HTTPErrors/assets/HTTPErrorSvgOther.js +1101 -0
  275. package/lib/components/HTTPErrors/index.js +29 -0
  276. package/lib/components/ImportModal/ImportModal.js +443 -0
  277. package/lib/components/ImportModal/index.js +13 -0
  278. package/lib/components/LoadingBar/LoadingBar.js +174 -0
  279. package/lib/components/LoadingBar/index.js +13 -0
  280. package/lib/components/ModifiedTabs/ModifiedTabLabelNew.js +48 -0
  281. package/lib/components/ModifiedTabs/ModifiedTabLabelWithClose.js +68 -0
  282. package/lib/components/ModifiedTabs/ModifiedTabs.js +137 -0
  283. package/lib/components/ModifiedTabs/index.js +13 -0
  284. package/lib/components/NotificationsPanel/NotificationsPanel.js +569 -0
  285. package/lib/components/NotificationsPanel/NotificationsPanel_data.js +146 -0
  286. package/lib/components/NotificationsPanel/index.js +13 -0
  287. package/lib/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +58 -0
  288. package/lib/components/NotificationsPanel/utils.js +65 -0
  289. package/lib/components/OptionsTile/OptionsTile.js +327 -0
  290. package/lib/components/OptionsTile/index.js +13 -0
  291. package/lib/components/PageHeader/PageHeader.js +812 -0
  292. package/lib/components/PageHeader/PageHeaderDemo.data.js +623 -0
  293. package/lib/components/PageHeader/PageHeaderTitle.js +63 -0
  294. package/lib/components/PageHeader/PageHeaderUtils.js +205 -0
  295. package/lib/components/PageHeader/index.js +13 -0
  296. package/lib/components/ProductiveCard/ProductiveCard.js +141 -0
  297. package/lib/components/ProductiveCard/index.js +13 -0
  298. package/lib/components/RemoveModal/RemoveModal.js +210 -0
  299. package/lib/components/RemoveModal/index.js +13 -0
  300. package/lib/components/Saving/Saving.js +175 -0
  301. package/lib/components/Saving/index.js +13 -0
  302. package/lib/components/SidePanel/SidePanel.js +668 -0
  303. package/lib/components/SidePanel/constants.js +21 -0
  304. package/lib/components/SidePanel/index.js +13 -0
  305. package/lib/components/StatusIcon/StatusIcon.js +145 -0
  306. package/lib/components/StatusIcon/index.js +13 -0
  307. package/lib/components/TagSet/TagSet.js +352 -0
  308. package/lib/components/TagSet/TagSetModal.js +139 -0
  309. package/lib/components/TagSet/TagSetOverflow.js +147 -0
  310. package/lib/components/TagSet/index.js +13 -0
  311. package/lib/components/Tearsheet/Tearsheet.js +192 -0
  312. package/lib/components/Tearsheet/TearsheetNarrow.js +160 -0
  313. package/lib/components/Tearsheet/TearsheetShell.js +420 -0
  314. package/lib/components/Tearsheet/index.js +21 -0
  315. package/lib/components/Toolbar/Toolbar.js +72 -0
  316. package/lib/components/Toolbar/ToolbarButton.js +72 -0
  317. package/lib/components/Toolbar/ToolbarGroup.js +52 -0
  318. package/lib/components/Toolbar/index.js +29 -0
  319. package/lib/components/UserProfileImage/UserProfileImage.js +146 -0
  320. package/lib/components/UserProfileImage/index.js +13 -0
  321. package/lib/components/WebTerminal/WebTerminal.js +186 -0
  322. package/lib/components/WebTerminal/index.js +13 -0
  323. package/lib/components/WebTerminal/preview-components/Navigation.js +44 -0
  324. package/lib/components/WebTerminal/preview-components/documentationLinks.js +32 -0
  325. package/lib/components/WebTerminal/preview-components/index.js +15 -0
  326. package/lib/components/_Canary/Canary.js +54 -0
  327. package/lib/components/_Canary/index.js +13 -0
  328. package/lib/components/index.js +343 -0
  329. package/lib/generated/feature-flags/feature-flags.js +22 -0
  330. package/lib/global/js/hooks/index.js +75 -0
  331. package/lib/global/js/hooks/useClickOutside.js +31 -0
  332. package/lib/global/js/hooks/useCreateComponentFocus.js +48 -0
  333. package/lib/global/js/hooks/useCreateComponentStepChange.js +263 -0
  334. package/lib/global/js/hooks/usePreviousValue.js +29 -0
  335. package/lib/global/js/hooks/useResetCreateComponent.js +50 -0
  336. package/lib/global/js/hooks/useValidCreateStepCount.js +33 -0
  337. package/lib/global/js/hooks/useWindowResize.js +79 -0
  338. package/lib/global/js/hooks/useWindowScroll.js +91 -0
  339. package/lib/global/js/package-settings.js +166 -0
  340. package/lib/global/js/utils/ClickListener.js +89 -0
  341. package/lib/global/js/utils/Wrap.js +93 -0
  342. package/lib/global/js/utils/devtools.js +31 -0
  343. package/lib/global/js/utils/getFocusableElements.js +25 -0
  344. package/lib/global/js/utils/hasValidType.js +110 -0
  345. package/lib/global/js/utils/keyboardNavigation.js +45 -0
  346. package/lib/global/js/utils/pconsole.js +53 -0
  347. package/lib/global/js/utils/props-helper.js +304 -0
  348. package/lib/global/js/utils/scrollableAncestor.js +48 -0
  349. package/lib/global/js/utils/story-helper.js +100 -0
  350. package/lib/global/js/utils/test-helper.js +342 -0
  351. package/lib/global/js/utils/unwrap-if-fragment.js +82 -0
  352. package/lib/global/js/utils/uuidv4.js +20 -0
  353. package/lib/global/js/utils/uuidv4.spec.js +28 -0
  354. package/lib/global/js/utils/wait.js +16 -0
  355. package/lib/global/js/utils/wrapFocus.js +84 -0
  356. package/lib/index.js +30 -0
  357. package/lib/settings.js +92 -0
  358. package/package.json +9 -8
  359. package/scss/components/APIKeyModal/_api-key-modal.scss +63 -0
  360. package/scss/components/APIKeyModal/_index.scss +10 -0
  361. package/scss/components/APIKeyModal/_storybook-styles.scss +33 -0
  362. package/scss/components/AboutModal/_about-modal.scss +116 -0
  363. package/scss/components/AboutModal/_index.scss +8 -0
  364. package/scss/components/AboutModal/_storybook-styles.scss +15 -0
  365. package/scss/components/ActionBar/_action-bar.scss +67 -0
  366. package/scss/components/ActionBar/_index.scss +8 -0
  367. package/scss/components/ActionSet/_action-set.scss +114 -0
  368. package/scss/components/ActionSet/_index.scss +8 -0
  369. package/scss/components/ActionSet/_storybook-styles.scss +38 -0
  370. package/scss/components/BreadcrumbWithOverflow/_breadcrumb-with-overflow.scss +86 -0
  371. package/scss/components/BreadcrumbWithOverflow/_index.scss +8 -0
  372. package/scss/components/ButtonMenu/_button-menu.scss +36 -0
  373. package/scss/components/ButtonMenu/_index.scss +8 -0
  374. package/scss/components/ButtonMenu/_storybook-styles.scss +6 -0
  375. package/scss/components/ButtonSetWithOverflow/_button-set-with-overflow.scss +52 -0
  376. package/scss/components/ButtonSetWithOverflow/_index.scss +8 -0
  377. package/scss/components/Card/_card.scss +121 -0
  378. package/scss/components/Card/_index.scss +10 -0
  379. package/scss/components/Card/_storybook-styles.scss +12 -0
  380. package/scss/components/Cascade/_cascade.scss +50 -0
  381. package/scss/components/Cascade/_index.scss +10 -0
  382. package/scss/components/Cascade/_storybook-styles.scss +32 -0
  383. package/scss/components/ComboButton/_combo-button.scss +64 -0
  384. package/scss/components/ComboButton/_index.scss +10 -0
  385. package/scss/components/CreateFullPage/_create-full-page.scss +187 -0
  386. package/scss/components/CreateFullPage/_index.scss +8 -0
  387. package/scss/components/CreateFullPage/_storybook-styles.scss +51 -0
  388. package/scss/components/CreateInfluencer/_create-influencer.scss +89 -0
  389. package/scss/components/CreateInfluencer/_index.scss +8 -0
  390. package/scss/components/CreateModal/_create-modal.scss +81 -0
  391. package/scss/components/CreateModal/_index.scss +8 -0
  392. package/scss/components/CreateModal/_storybook-styles.scss +50 -0
  393. package/scss/components/CreateSidePanel/_create-side-panel.scss +99 -0
  394. package/scss/components/CreateSidePanel/_index.scss +8 -0
  395. package/scss/components/CreateSidePanel/_storybook-styles.scss +27 -0
  396. package/scss/components/CreateTearsheet/_create-tearsheet.scss +136 -0
  397. package/scss/components/CreateTearsheet/_index.scss +8 -0
  398. package/scss/components/CreateTearsheet/_storybook-styles.scss +53 -0
  399. package/scss/components/CreateTearsheetNarrow/_create-tearsheet-narrow.scss +68 -0
  400. package/scss/components/CreateTearsheetNarrow/_index.scss +8 -0
  401. package/scss/components/CreateTearsheetNarrow/_storybook-styles.scss +32 -0
  402. package/scss/components/EditSidePanel/_edit-side-panel.scss +66 -0
  403. package/scss/components/EditSidePanel/_index.scss +8 -0
  404. package/scss/components/EditSidePanel/_storybook-styles.scss +35 -0
  405. package/scss/components/EmptyStates/_empty-state.scss +62 -0
  406. package/scss/components/EmptyStates/_index.scss +8 -0
  407. package/scss/components/EmptyStates/_storybook-styles.scss +6 -0
  408. package/scss/components/ExampleComponent/_example-component.scss +39 -0
  409. package/scss/components/ExampleComponent/_index.scss +8 -0
  410. package/scss/components/ExampleComponent/_storybook-styles.scss +6 -0
  411. package/scss/components/ExportModal/_export-modal.scss +61 -0
  412. package/scss/components/ExportModal/_index.scss +10 -0
  413. package/scss/components/ExportModal/_storybook-styles.scss +6 -0
  414. package/scss/components/ExpressiveCard/_expressive-card.scss +25 -0
  415. package/scss/components/ExpressiveCard/_index.scss +10 -0
  416. package/scss/components/ExpressiveCard/_storybook-styles.scss +25 -0
  417. package/scss/components/HTTPErrors/_http-errors.scss +72 -0
  418. package/scss/components/HTTPErrors/_index.scss +8 -0
  419. package/scss/components/HTTPErrors/_storybook-styles.scss +6 -0
  420. package/scss/components/ImportModal/_import-modal.scss +88 -0
  421. package/scss/components/ImportModal/_index.scss +8 -0
  422. package/scss/components/ImportModal/_storybook-styles.scss +6 -0
  423. package/scss/components/LoadingBar/_index.scss +8 -0
  424. package/scss/components/LoadingBar/_loading-bar.scss +211 -0
  425. package/scss/components/LoadingBar/_storybook-styles.scss +19 -0
  426. package/scss/components/ModifiedTabs/_index.scss +1 -0
  427. package/scss/components/ModifiedTabs/_modified-tabs.scss +72 -0
  428. package/scss/components/ModifiedTabs/_storybook-styles.scss +6 -0
  429. package/scss/components/NotificationsPanel/_index.scss +8 -0
  430. package/scss/components/NotificationsPanel/_notifications-panel.scss +285 -0
  431. package/scss/components/NotificationsPanel/_storybook-styles.scss +6 -0
  432. package/scss/components/OptionsTile/_index.scss +8 -0
  433. package/scss/components/OptionsTile/_options-tile.scss +221 -0
  434. package/scss/components/OptionsTile/_storybook-styles.scss +33 -0
  435. package/scss/components/PageHeader/_index.scss +10 -0
  436. package/scss/components/PageHeader/_page-header.scss +641 -0
  437. package/scss/components/PageHeader/_storybook-styles.scss +76 -0
  438. package/scss/components/ProductiveCard/_index.scss +10 -0
  439. package/scss/components/ProductiveCard/_productive-card.scss +71 -0
  440. package/scss/components/ProductiveCard/_storybook-styles.scss +22 -0
  441. package/scss/components/RemoveModal/_index.scss +10 -0
  442. package/scss/components/RemoveModal/_remove-modal.scss +40 -0
  443. package/scss/components/RemoveModal/_storybook-styles.scss +6 -0
  444. package/scss/components/Saving/_index.scss +10 -0
  445. package/scss/components/Saving/_saving.scss +42 -0
  446. package/scss/components/Saving/_storybook-styles.scss +12 -0
  447. package/scss/components/SidePanel/_index.scss +8 -0
  448. package/scss/components/SidePanel/_side-panel-variables.scss +14 -0
  449. package/scss/components/SidePanel/_side-panel.scss +496 -0
  450. package/scss/components/SidePanel/_storybook-styles.scss +38 -0
  451. package/scss/components/StatusIcon/_index.scss +8 -0
  452. package/scss/components/StatusIcon/_status-icon.scss +139 -0
  453. package/scss/components/StatusIcon/_storybook-styles.scss +6 -0
  454. package/scss/components/TagSet/_index.scss +8 -0
  455. package/scss/components/TagSet/_tag-set.scss +162 -0
  456. package/scss/components/Tearsheet/_index.scss +8 -0
  457. package/scss/components/Tearsheet/_storybook-styles.scss +24 -0
  458. package/scss/components/Tearsheet/_tearsheet.scss +308 -0
  459. package/scss/components/Toolbar/_index.scss +8 -0
  460. package/scss/components/Toolbar/_toolbar.scss +78 -0
  461. package/scss/components/UserProfileImage/_color-map.scss +39 -0
  462. package/scss/components/UserProfileImage/_index.scss +8 -0
  463. package/scss/components/UserProfileImage/_storybook.scss +6 -0
  464. package/scss/components/UserProfileImage/_user-profile-image.scss +137 -0
  465. package/scss/components/WebTerminal/_index.scss +1 -0
  466. package/scss/components/WebTerminal/_storybook-styles.scss +14 -0
  467. package/scss/components/WebTerminal/_web-terminal.scss +70 -0
  468. package/scss/components/_Canary/_canary.scss +9 -0
  469. package/scss/components/_index-released-only.scss +34 -0
  470. package/scss/components/_index.scss +44 -0
  471. package/scss/generated/feature-flags/_feature-flags.scss +19 -0
  472. package/scss/global/styles/_generate-carbon-modules.scss +14 -0
  473. package/scss/global/styles/_imported-carbon-modules.scss +25 -0
  474. package/scss/global/styles/_mixins.scss +22 -0
  475. package/scss/global/styles/_project-settings.scss +22 -0
  476. package/scss/index-full-carbon.scss +11 -0
  477. package/scss/index-without-carbon-released-only.scss +13 -0
  478. package/scss/index-without-carbon.scss +13 -0
  479. package/scss/index.scss +10 -0
@@ -0,0 +1,136 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["backgroundColor", "className", "kind", "initials", "image", "imageDescription", "size", "theme", "tooltipText"];
4
+
5
+ /**
6
+ * Copyright IBM Corp. 2021, 2021
7
+ *
8
+ * This source code is licensed under the Apache-2.0 license found in the
9
+ * LICENSE file in the root directory of this source tree.
10
+ */
11
+ // Import portions of React that are needed.
12
+ import React from 'react'; // Other standard imports.
13
+
14
+ import PropTypes from 'prop-types';
15
+ import cx from 'classnames';
16
+ import { getDevtoolsProps } from '../../global/js/utils/devtools';
17
+ import '../../global/js/utils/props-helper';
18
+ import { pkg } from '../../settings'; // Carbon and package components we use.
19
+
20
+ import { User20, User24, User32, Group20, Group24, Group32 } from '@carbon/icons-react';
21
+ import { TooltipIcon } from 'carbon-components-react'; // The block part of our conventional BEM class names (blockClass__E--M).
22
+
23
+ var blockClass = "".concat(pkg.prefix, "--user-profile-image");
24
+ var componentName = 'UserProfileImage'; // NOTE: the component SCSS is not imported here: it is rolled up separately.
25
+
26
+ /**
27
+ * This is a user profile image component which displays an image, or initials or icon for a user.
28
+ */
29
+
30
+ export var UserProfileImage = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
31
+ var backgroundColor = _ref.backgroundColor,
32
+ className = _ref.className,
33
+ kind = _ref.kind,
34
+ initials = _ref.initials,
35
+ image = _ref.image,
36
+ imageDescription = _ref.imageDescription,
37
+ size = _ref.size,
38
+ theme = _ref.theme,
39
+ tooltipText = _ref.tooltipText,
40
+ rest = _objectWithoutProperties(_ref, _excluded);
41
+
42
+ var icons = {
43
+ user: {
44
+ md: User20,
45
+ lg: User24,
46
+ xlg: User32
47
+ },
48
+ group: {
49
+ md: Group20,
50
+ lg: Group24,
51
+ xlg: Group32
52
+ }
53
+ };
54
+
55
+ var formatInitials = function formatInitials() {
56
+ if (initials.length === 2) {
57
+ return initials;
58
+ } // RegEx takes in the display name and returns the first and last initials. Thomas Watson and Thomas J. Watson
59
+ // both return JW.
60
+
61
+
62
+ return initials.match(/(^\S\S?|\b\S)?/g).join('').match(/(^\S|\S$)?/g).join('').toUpperCase();
63
+ };
64
+
65
+ var FillItem = image ? function () {
66
+ return /*#__PURE__*/React.createElement("img", {
67
+ alt: imageDescription,
68
+ src: image,
69
+ className: "".concat(blockClass, "__photo ").concat(blockClass, "__photo--").concat(size)
70
+ });
71
+ } : initials ? formatInitials : kind && size && icons[kind][size];
72
+
73
+ var renderUserProfileImage = function renderUserProfileImage() {
74
+ return /*#__PURE__*/React.createElement("div", _extends({}, rest, {
75
+ ref: ref,
76
+ className: cx([blockClass, className, "".concat(blockClass, "--").concat(size), "".concat(blockClass, "--").concat(theme), "".concat(blockClass, "--").concat(backgroundColor)])
77
+ }, getDevtoolsProps(componentName)), /*#__PURE__*/React.createElement(FillItem, null));
78
+ };
79
+
80
+ return FillItem && (tooltipText ? /*#__PURE__*/React.createElement(TooltipIcon, {
81
+ tooltipText: tooltipText
82
+ }, renderUserProfileImage()) : renderUserProfileImage());
83
+ }); // Return a placeholder if not released and not enabled by feature flag
84
+
85
+ UserProfileImage = pkg.checkComponentEnabled(UserProfileImage, componentName);
86
+ UserProfileImage.displayName = componentName;
87
+ UserProfileImage.propTypes = {
88
+ /**
89
+ * The background color passed should match one of the background colors in the library documentation:
90
+ * https://pages.github.ibm.com/cdai-design/pal/patterns/user-profile-images/
91
+ */
92
+ backgroundColor: PropTypes.oneOf(['light-cyan', 'dark-cyan', 'light-gray', 'dark-gray', 'light-green', 'dark-green', 'light-magenta', 'dark-magenta', 'light-purple', 'dark-purple', 'light-teal', 'dark-teal']),
93
+
94
+ /**
95
+ * Provide an optional class to be applied to the containing node.
96
+ */
97
+ className: PropTypes.string,
98
+
99
+ /**
100
+ * When passing the image prop, supply a full path to the image to be displayed.
101
+ */
102
+ image: PropTypes.string,
103
+
104
+ /**
105
+ * When passing the image prop use the imageDescription prop to describe the image for screen reader.
106
+ */
107
+ imageDescription: PropTypes.string.isRequired.if(function (_ref2) {
108
+ var image = _ref2.image;
109
+ return image;
110
+ }),
111
+
112
+ /**
113
+ * When passing the initials prop, either send the initials to be used or the user's display name. The first two capital letters of the display name will be used as the initials.
114
+ */
115
+ initials: PropTypes.string,
116
+
117
+ /**
118
+ * When passing the kind prop, use either "user" or "group". The values match up to the Carbon Library icons.
119
+ */
120
+ kind: PropTypes.oneOf(['user', 'group']),
121
+
122
+ /**
123
+ * Set the size of the avatar circle
124
+ */
125
+ size: PropTypes.oneOf(['xlg', 'lg', 'md']).isRequired,
126
+
127
+ /**
128
+ * Set theme in which the component will be rendered
129
+ */
130
+ theme: PropTypes.oneOf(['light', 'dark']).isRequired,
131
+
132
+ /**
133
+ * Pass in the display name to have it shown on hover
134
+ */
135
+ tooltipText: PropTypes.string
136
+ };
@@ -0,0 +1,8 @@
1
+ //
2
+ // Copyright IBM Corp. 2021, 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
+ // NOTE: An index file is most useful when you have multiple components
8
+ export { UserProfileImage } from './UserProfileImage';
@@ -0,0 +1,168 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
+ var _excluded = ["children", "className", "closeTerminal", "documentationLinks", "documentationLinksIconDescription", "open", "actions", "closeIconDescription"];
6
+
7
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
8
+
9
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
10
+
11
+ /**
12
+ * Copyright IBM Corp. 2020, 2021
13
+ *
14
+ * This source code is licensed under the Apache-2.0 license found in the
15
+ * LICENSE file in the root directory of this source tree.
16
+ */
17
+ // Import portions of React that are needed.
18
+ import React, { useMemo, useState, useEffect } from 'react'; // Other standard imports.
19
+
20
+ import PropTypes from 'prop-types';
21
+ import cx from 'classnames';
22
+ import { pkg } from '../../settings'; // Carbon and package components we use.
23
+
24
+ import { Close16 as Close, Help16 as Help } from '@carbon/icons-react';
25
+ import { Button, OverflowMenu, OverflowMenuItem } from 'carbon-components-react'; // The block part of our conventional BEM class names (blockClass__E--M).
26
+
27
+ var componentName = 'WebTerminal';
28
+ var blockClass = "".concat(pkg.prefix, "--web-terminal");
29
+ export var WebTerminal = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
30
+ var _ref2;
31
+
32
+ var children = _ref.children,
33
+ className = _ref.className,
34
+ closeTerminal = _ref.closeTerminal,
35
+ documentationLinks = _ref.documentationLinks,
36
+ documentationLinksIconDescription = _ref.documentationLinksIconDescription,
37
+ open = _ref.open,
38
+ actions = _ref.actions,
39
+ closeIconDescription = _ref.closeIconDescription,
40
+ rest = _objectWithoutProperties(_ref, _excluded);
41
+
42
+ var _useState = useState(open),
43
+ _useState2 = _slicedToArray(_useState, 2),
44
+ shouldRender = _useState2[0],
45
+ setRender = _useState2[1];
46
+
47
+ var showDocumentationLinks = useMemo(function () {
48
+ return documentationLinks.length > 0;
49
+ }, [documentationLinks]);
50
+ useEffect(function () {
51
+ if (open) {
52
+ setRender(true);
53
+ }
54
+ }, [open]);
55
+
56
+ var onAnimationEnd = function onAnimationEnd() {
57
+ if (!open) {
58
+ setRender(false);
59
+ }
60
+ };
61
+
62
+ return shouldRender ? /*#__PURE__*/React.createElement("div", _extends({}, rest, {
63
+ ref: ref,
64
+ className: cx([blockClass, (_ref2 = {}, _defineProperty(_ref2, "".concat(blockClass, "--open"), open), _defineProperty(_ref2, "".concat(blockClass, "--closed"), !open), _defineProperty(_ref2, className, className), _ref2)]),
65
+ style: {
66
+ animation: "".concat(open ? 'webTerminalEntrance 250ms' : 'webTerminalExit 250ms')
67
+ },
68
+ onAnimationEnd: onAnimationEnd
69
+ }), /*#__PURE__*/React.createElement("header", {
70
+ className: "".concat(blockClass, "__bar")
71
+ }, /*#__PURE__*/React.createElement("div", {
72
+ className: "".concat(blockClass, "__actions")
73
+ }, showDocumentationLinks && /*#__PURE__*/React.createElement(OverflowMenu, {
74
+ renderIcon: Help,
75
+ iconDescription: documentationLinksIconDescription,
76
+ menuOptionsClass: "".concat(blockClass, "__documentation-overflow"),
77
+ size: "lg"
78
+ }, documentationLinks.map(function (_ref3, i) {
79
+ var rest = _extends({}, _ref3);
80
+
81
+ return /*#__PURE__*/React.createElement(OverflowMenuItem, _extends({
82
+ key: i
83
+ }, rest));
84
+ })), actions.map(function (_ref4) {
85
+ var renderIcon = _ref4.renderIcon,
86
+ onClick = _ref4.onClick,
87
+ iconDescription = _ref4.iconDescription;
88
+ return /*#__PURE__*/React.createElement(Button, {
89
+ key: iconDescription,
90
+ hasIconOnly: true,
91
+ renderIcon: renderIcon,
92
+ onClick: onClick,
93
+ iconDescription: iconDescription,
94
+ kind: "ghost"
95
+ });
96
+ })), /*#__PURE__*/React.createElement(Button, {
97
+ hasIconOnly: true,
98
+ renderIcon: Close,
99
+ kind: "ghost",
100
+ iconDescription: closeIconDescription,
101
+ onClick: closeTerminal
102
+ })), /*#__PURE__*/React.createElement("div", {
103
+ className: "".concat(blockClass, "__body")
104
+ }, children)) : null;
105
+ }); // Return a placeholder if not released and not enabled by feature flag
106
+
107
+ WebTerminal = pkg.checkComponentEnabled(WebTerminal, componentName); // The display name of the component, used by React. Note that displayName
108
+ // is used in preference to relying on function.name.
109
+
110
+ WebTerminal.displayName = componentName; // The types and DocGen commentary for the component props,
111
+ // in alphabetical order (for consistency).
112
+ // See https://www.npmjs.com/package/prop-types#usage.
113
+
114
+ WebTerminal.propTypes = {
115
+ /**
116
+ * An array of actions to be displayed in the web terminal header bar
117
+ */
118
+ actions: PropTypes.arrayOf(PropTypes.shape({
119
+ renderIcon: PropTypes.object.isRequired,
120
+ onClick: PropTypes.func.isRequired,
121
+ iconDescription: PropTypes.string.isRequired
122
+ })),
123
+
124
+ /**
125
+ * Provide your own terminal component as children to show up in the web terminal
126
+ */
127
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,
128
+
129
+ /**
130
+ * Custom classname for additional styling of the web terminal
131
+ */
132
+ className: PropTypes.string,
133
+
134
+ /**
135
+ * Icon description for the close button
136
+ */
137
+ closeIconDescription: PropTypes.string.isRequired,
138
+
139
+ /**
140
+ * Function that should set the open prop to false
141
+ */
142
+ closeTerminal: PropTypes.func.isRequired,
143
+
144
+ /**
145
+ * Array of objects for each documentation link. Each documentation link uses the prop types of OverflowMenuItems. See more: https://react.carbondesignsystem.com/?path=/docs/components-overflowmenu--default
146
+ */
147
+ documentationLinks: PropTypes.arrayOf(PropTypes.shape(_objectSpread({}, OverflowMenuItem.propTypes))),
148
+
149
+ /**
150
+ * Icon description for the documentation link overflow menu
151
+ */
152
+ documentationLinksIconDescription: PropTypes.string,
153
+
154
+ /**
155
+ * Boolean that determines if the web terminal is opened or closed
156
+ */
157
+ open: PropTypes.bool.isRequired
158
+ }; // Default values for component props. Default values are not required for
159
+ // props that are required, nor for props where the component can apply
160
+ // 'undefined' values reasonably. Default values should be provided when the
161
+ // component needs to make a choice or assumption when a prop is not supplied.
162
+
163
+ WebTerminal.defaultProps = {
164
+ actions: [],
165
+ documentationLinks: [],
166
+ documentationLinksIconDescription: 'Show documentation links',
167
+ className: ''
168
+ };
@@ -0,0 +1 @@
1
+ export { WebTerminal } from './WebTerminal';
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ import { Header, HeaderName, HeaderGlobalAction, HeaderGlobalBar } from 'carbon-components-react';
3
+ import { Terminal20 as Terminal, Search20 as Search, User20 as User } from '@carbon/icons-react';
4
+ import PropTypes from 'prop-types';
5
+
6
+ var Navigation = function Navigation(_ref) {
7
+ var openTerminal = _ref.openTerminal;
8
+ return /*#__PURE__*/React.createElement(Header, {
9
+ "aria-label": "IBM Platform Name"
10
+ }, /*#__PURE__*/React.createElement(HeaderName, {
11
+ href: "#",
12
+ prefix: "IBM"
13
+ }, "[Platform]"), /*#__PURE__*/React.createElement(HeaderGlobalBar, null, /*#__PURE__*/React.createElement(HeaderGlobalAction, {
14
+ "aria-label": "Web terminal",
15
+ onClick: openTerminal
16
+ }, /*#__PURE__*/React.createElement(Terminal, null)), /*#__PURE__*/React.createElement(HeaderGlobalAction, {
17
+ "aria-label": "Search",
18
+ onClick: function onClick() {}
19
+ }, /*#__PURE__*/React.createElement(Search, null)), /*#__PURE__*/React.createElement(HeaderGlobalAction, {
20
+ "aria-label": "User",
21
+ onClick: function onClick() {}
22
+ }, /*#__PURE__*/React.createElement(User, null))));
23
+ };
24
+
25
+ Navigation.propTypes = {
26
+ /**
27
+ * Opens the terminal
28
+ */
29
+ openTerminal: PropTypes.func.isRequired
30
+ };
31
+ export default Navigation;
@@ -0,0 +1,25 @@
1
+ export var documentationLinks = [{
2
+ itemText: 'BX/ICP docs',
3
+ href: '#',
4
+ onClick: function onClick() {
5
+ return console.log('clicked');
6
+ }
7
+ }, {
8
+ itemText: 'Kubernetes docs',
9
+ href: '#',
10
+ onClick: function onClick() {
11
+ return console.log('clicked');
12
+ }
13
+ }, {
14
+ itemText: 'Docker docs',
15
+ href: '#',
16
+ onClick: function onClick() {
17
+ return console.log('clicked');
18
+ }
19
+ }, {
20
+ itemText: 'Helm docs',
21
+ href: '#',
22
+ onClick: function onClick() {
23
+ return console.log('clicked');
24
+ }
25
+ }];
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Preview components are components only to be used
3
+ * in the context of storybook.
4
+ */
5
+ export { default as Navigation } from './Navigation';
@@ -0,0 +1,48 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["className", "componentName"];
4
+
5
+ /**
6
+ * Copyright IBM Corp. 2020, 2021
7
+ *
8
+ * This source code is licensed under the Apache-2.0 license found in the
9
+ * LICENSE file in the root directory of this source tree.
10
+ */
11
+ // Import portions of React that are needed.
12
+ import React from 'react'; // Other standard imports.
13
+
14
+ import PropTypes from 'prop-types';
15
+ import cx from 'classnames'; // load the package settings direct, because Canary is used by settings.js
16
+
17
+ import pkg from '../../global/js/package-settings'; // Carbon and package components we use.
18
+
19
+ import { CodeSnippet } from 'carbon-components-react'; // The block part of our conventional BEM class names (blockClass__E--M).
20
+
21
+ var blockClass = "".concat(pkg.prefix, "--canary");
22
+ /**
23
+ * Canary component used when the component requested is not yet production
24
+ */
25
+
26
+ export var Canary = function Canary(_ref
27
+ /*, originalArgs*/
28
+ ) {
29
+ var className = _ref.className,
30
+ componentName = _ref.componentName,
31
+ rest = _objectWithoutProperties(_ref, _excluded);
32
+
33
+ var instructions = "\nimport { pkg } from '@carbon/ibm-products';\n// NOTE: must happen before component is first used\npkg.component.".concat(componentName, " = true;\n");
34
+ return /*#__PURE__*/React.createElement("div", _extends({}, rest, {
35
+ className: cx(blockClass, className)
36
+ }), /*#__PURE__*/React.createElement("h2", null, "This component ", /*#__PURE__*/React.createElement("strong", null, componentName), " is not ready yet."), /*#__PURE__*/React.createElement("p", null, "To enable it, initialize package flags before the component is first used."), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("p", null, "e.g. in main.js"), /*#__PURE__*/React.createElement(CodeSnippet, {
37
+ type: "multi"
38
+ }, instructions), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement("p", null, "View a live example on", ' ', /*#__PURE__*/React.createElement("a", {
39
+ href: "https://codesandbox.io/s/example-component-olif5?file=/src/config.js"
40
+ }, "codesandbox"), "."));
41
+ };
42
+ Canary.propTypes = {
43
+ /** Provide an optional class to be applied to the containing node */
44
+ className: PropTypes.string,
45
+
46
+ /** Name of the component that is not ready yet */
47
+ componentName: PropTypes.string.isRequired
48
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright IBM Corp. 2020, 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
+ export { Canary } from './Canary';
@@ -0,0 +1,37 @@
1
+ //
2
+ // Copyright IBM Corp. 2020, 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
+ export { AboutModal } from './AboutModal';
8
+ export { APIKeyModal } from './APIKeyModal';
9
+ export { Cascade } from './Cascade';
10
+ export { ComboButton, ComboButtonItem } from './ComboButton';
11
+ export { CreateFullPage, CreateFullPageStep } from './CreateFullPage';
12
+ export { CreateModal } from './CreateModal';
13
+ export { CreateSidePanel } from './CreateSidePanel';
14
+ export { CreateTearsheet, CreateTearsheetStep, CreateTearsheetDivider } from './CreateTearsheet';
15
+ export { CreateTearsheetNarrow } from './CreateTearsheetNarrow';
16
+ export { EmptyState, ErrorEmptyState, NoDataEmptyState, NoTagsEmptyState, NotFoundEmptyState, NotificationsEmptyState, UnauthorizedEmptyState } from './EmptyStates';
17
+ export { ExampleComponent } from './ExampleComponent';
18
+ export { ExportModal } from './ExportModal';
19
+ export { ExpressiveCard } from './ExpressiveCard';
20
+ export { HTTPError403, HTTPError404, HTTPErrorOther } from './HTTPErrors';
21
+ export { ImportModal } from './ImportModal';
22
+ export { LoadingBar } from './LoadingBar';
23
+ export { ModifiedTabs } from './ModifiedTabs';
24
+ export { NotificationsPanel } from './NotificationsPanel';
25
+ export { PageHeader } from './PageHeader';
26
+ export { ProductiveCard } from './ProductiveCard';
27
+ export { RemoveModal } from './RemoveModal';
28
+ export { Saving } from './Saving';
29
+ export { SidePanel } from './SidePanel';
30
+ export { StatusIcon } from './StatusIcon';
31
+ export { TagSet } from './TagSet';
32
+ export { Tearsheet, TearsheetNarrow } from './Tearsheet';
33
+ export { Toolbar, ToolbarButton, ToolbarGroup } from './Toolbar';
34
+ export { UserProfileImage } from './UserProfileImage';
35
+ export { WebTerminal } from './WebTerminal';
36
+ export { EditSidePanel } from './EditSidePanel';
37
+ export { OptionsTile } from './OptionsTile';
@@ -0,0 +1,15 @@
1
+ //
2
+ // Copyright IBM Corp. 2020, 2020
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
+ // * ONLY EDIT IN /common-files/feature-flags files elsewhere are copies
10
+ // * created by a pre-commit step
11
+ // *
12
+ // ******************************
13
+ export default {
14
+ 'enable-css-custom-properties': false
15
+ };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright IBM Corp. 2020, 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
+ export { useNearestScroll, useWindowScroll } from './useWindowScroll';
8
+ export { useWindowResize } from './useWindowResize';
9
+ export { useClickOutside } from './useClickOutside';
10
+ export { useCreateComponentFocus } from './useCreateComponentFocus';
11
+ export { useCreateComponentStepChange } from './useCreateComponentStepChange';
12
+ export { usePreviousValue } from './usePreviousValue';
13
+ export { useResetCreateComponent } from './useResetCreateComponent';
14
+ export { useValidCreateStepCount } from './useValidCreateStepCount';
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright IBM Corp. 2020, 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
+ import { useEffect } from 'react';
8
+ export var useClickOutside = function useClickOutside(ref, callback) {
9
+ var handleClick = function handleClick(event) {
10
+ if (ref.current && !ref.current.contains(event.target)) {
11
+ callback();
12
+ }
13
+ };
14
+
15
+ useEffect(function () {
16
+ document.addEventListener('click', handleClick);
17
+ return function () {
18
+ document.removeEventListener('click', handleClick);
19
+ };
20
+ });
21
+ };
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Copyright IBM Corp. 2021, 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
+ import { useEffect } from 'react';
8
+ import { getFocusableElements } from '../utils/getFocusableElements';
9
+ /**
10
+ * Returns the previous state values included in the param
11
+ * @param {object} previousState
12
+ * @param {number} currentStep
13
+ * @param {Function} getCreateComponentSteps
14
+ * @param {string} componentBlockClass
15
+ */
16
+
17
+ export var useCreateComponentFocus = function useCreateComponentFocus(previousState, currentStep, getCreateComponentSteps, componentBlockClass) {
18
+ useEffect(function () {
19
+ if ((previousState === null || previousState === void 0 ? void 0 : previousState.currentStep) !== currentStep && currentStep > 0) {
20
+ var visibleStepInnerContent = document.querySelector(".".concat(componentBlockClass, "__step.").concat(componentBlockClass, "__step--visible-step"));
21
+ var createComponentSteps = getCreateComponentSteps();
22
+ var focusableStepElements = createComponentSteps && createComponentSteps.length && getFocusableElements(visibleStepInnerContent);
23
+ var activeStepComponent = createComponentSteps && createComponentSteps.length && createComponentSteps[currentStep - 1];
24
+
25
+ if (activeStepComponent && activeStepComponent.props.onMount) {
26
+ activeStepComponent.props.onMount();
27
+ }
28
+
29
+ if (focusableStepElements && focusableStepElements.length) {
30
+ focusableStepElements[0].focus();
31
+ } else {
32
+ var nextButton = document.querySelector(".".concat(componentBlockClass, "__create-button"));
33
+ nextButton === null || nextButton === void 0 ? void 0 : nextButton.focus();
34
+ }
35
+ }
36
+ }, [currentStep, getCreateComponentSteps, previousState, componentBlockClass]);
37
+ };