superdesk-ui-framework 4.0.46 → 4.0.48

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 (563) hide show
  1. package/.eslintrc.js +0 -1
  2. package/.eslintrc.json +2 -5
  3. package/.github/workflows/test.yml +22 -26
  4. package/.prettierignore +3 -0
  5. package/.prettierrc.js +9 -0
  6. package/.travis.yml +4 -4
  7. package/README.md +14 -1
  8. package/app/styles/form-elements/_forms-general.scss +0 -4
  9. package/app-typescript/components/Alert.tsx +12 -16
  10. package/app-typescript/components/Autocomplete.tsx +53 -42
  11. package/app-typescript/components/Badge.tsx +1 -1
  12. package/app-typescript/components/Button.tsx +5 -11
  13. package/app-typescript/components/ButtonGroup.tsx +15 -10
  14. package/app-typescript/components/Carousel.tsx +25 -26
  15. package/app-typescript/components/CheckButtonGroup.tsx +6 -10
  16. package/app-typescript/components/Checkbox.tsx +16 -10
  17. package/app-typescript/components/CheckboxButton.tsx +22 -13
  18. package/app-typescript/components/ContentDivider.tsx +6 -7
  19. package/app-typescript/components/CreateButton.tsx +8 -6
  20. package/app-typescript/components/DatePicker.tsx +59 -55
  21. package/app-typescript/components/DateTimePicker.tsx +175 -117
  22. package/app-typescript/components/Divider.tsx +2 -4
  23. package/app-typescript/components/DonutChart.tsx +11 -6
  24. package/app-typescript/components/DragHandle.tsx +10 -6
  25. package/app-typescript/components/DragHandleDots.tsx +1 -3
  26. package/app-typescript/components/DropZone.tsx +27 -25
  27. package/app-typescript/components/Dropdown.tsx +61 -102
  28. package/app-typescript/components/DropdownFirst.tsx +57 -69
  29. package/app-typescript/components/DurationInput.tsx +64 -54
  30. package/app-typescript/components/Editor/EditorButton.tsx +4 -3
  31. package/app-typescript/components/EmptyState.tsx +10 -14
  32. package/app-typescript/components/Form/FormGroup.tsx +9 -16
  33. package/app-typescript/components/Form/FormItem.tsx +1 -5
  34. package/app-typescript/components/Form/FormLabel.tsx +0 -1
  35. package/app-typescript/components/Form/FormRow.tsx +12 -19
  36. package/app-typescript/components/Form/FormRowNew.tsx +9 -16
  37. package/app-typescript/components/Form/FormText.tsx +1 -5
  38. package/app-typescript/components/Form/InputBase.tsx +12 -11
  39. package/app-typescript/components/Form/InputNew.tsx +11 -12
  40. package/app-typescript/components/Form/InputWrapper.tsx +9 -18
  41. package/app-typescript/components/Form/index.tsx +9 -9
  42. package/app-typescript/components/FormLabel.tsx +1 -5
  43. package/app-typescript/components/GridItem.tsx +38 -69
  44. package/app-typescript/components/GridList.tsx +2 -6
  45. package/app-typescript/components/HeadingText.tsx +4 -5
  46. package/app-typescript/components/IconButton.tsx +4 -10
  47. package/app-typescript/components/IconLabel.tsx +5 -5
  48. package/app-typescript/components/IconPicker.tsx +128 -126
  49. package/app-typescript/components/IllustrationButton.tsx +2 -8
  50. package/app-typescript/components/Input.tsx +2 -2
  51. package/app-typescript/components/Label.tsx +11 -7
  52. package/app-typescript/components/Layouts/AuthorinInnerSideBar.tsx +1 -5
  53. package/app-typescript/components/Layouts/AuthoringContainer.tsx +4 -6
  54. package/app-typescript/components/Layouts/AuthoringFrame.tsx +4 -20
  55. package/app-typescript/components/Layouts/AuthoringFrameContainer.tsx +1 -5
  56. package/app-typescript/components/Layouts/AuthoringFrameLeftBar.tsx +1 -5
  57. package/app-typescript/components/Layouts/AuthoringFrameMain.tsx +1 -5
  58. package/app-typescript/components/Layouts/AuthoringFrameNavBar.tsx +1 -5
  59. package/app-typescript/components/Layouts/AuthoringFrameOverlay.tsx +1 -5
  60. package/app-typescript/components/Layouts/AuthoringFrameRightBar.tsx +1 -5
  61. package/app-typescript/components/Layouts/AuthoringFrameSidePanel.tsx +1 -5
  62. package/app-typescript/components/Layouts/AuthoringFrameSidePanelOverlay.tsx +1 -3
  63. package/app-typescript/components/Layouts/AuthoringInnerBody.tsx +3 -6
  64. package/app-typescript/components/Layouts/AuthoringInnerHeader.tsx +5 -5
  65. package/app-typescript/components/Layouts/AuthoringMain.tsx +3 -4
  66. package/app-typescript/components/Layouts/AuthoringMainContainer.tsx +1 -5
  67. package/app-typescript/components/Layouts/AuthoringMainContent.tsx +1 -5
  68. package/app-typescript/components/Layouts/AuthoringMainToolBar.tsx +1 -6
  69. package/app-typescript/components/Layouts/BottomBarAction.tsx +8 -10
  70. package/app-typescript/components/Layouts/Container.tsx +13 -8
  71. package/app-typescript/components/Layouts/ContentSplitter.tsx +2 -6
  72. package/app-typescript/components/Layouts/CoreLayout.tsx +5 -12
  73. package/app-typescript/components/Layouts/CoreLayoutContainer.tsx +1 -1
  74. package/app-typescript/components/Layouts/CoreLayoutFooter.tsx +1 -5
  75. package/app-typescript/components/Layouts/CoreLayoutMain.tsx +4 -4
  76. package/app-typescript/components/Layouts/CoreLayoutOverlay.tsx +1 -5
  77. package/app-typescript/components/Layouts/CoreLayoutSlideInMenu.tsx +2 -4
  78. package/app-typescript/components/Layouts/CoreLayoutTopMenu.tsx +8 -9
  79. package/app-typescript/components/Layouts/HamburgerButton.tsx +13 -14
  80. package/app-typescript/components/Layouts/HeaderPanel.tsx +1 -5
  81. package/app-typescript/components/Layouts/Layout.tsx +10 -16
  82. package/app-typescript/components/Layouts/LayoutContainer.tsx +2 -7
  83. package/app-typescript/components/Layouts/LeftPanel.tsx +4 -11
  84. package/app-typescript/components/Layouts/MainMenu.tsx +18 -32
  85. package/app-typescript/components/Layouts/MainPanel.tsx +10 -11
  86. package/app-typescript/components/Layouts/NotificationPanel.tsx +20 -29
  87. package/app-typescript/components/Layouts/OverlayPanel.tsx +3 -5
  88. package/app-typescript/components/Layouts/PageLayout.tsx +4 -21
  89. package/app-typescript/components/Layouts/Panel.tsx +45 -81
  90. package/app-typescript/components/Layouts/index.tsx +39 -39
  91. package/app-typescript/components/LeftMenu.tsx +51 -53
  92. package/app-typescript/components/ListItemLoader.tsx +1 -1
  93. package/app-typescript/components/Lists/BoxedList.tsx +16 -41
  94. package/app-typescript/components/Lists/CalendarWeekDayItem.tsx +2 -10
  95. package/app-typescript/components/Lists/ContentList.tsx +68 -62
  96. package/app-typescript/components/Lists/SimpleList.tsx +13 -12
  97. package/app-typescript/components/Lists/TableList.tsx +169 -217
  98. package/app-typescript/components/Lists/index.tsx +2 -2
  99. package/app-typescript/components/Loader.tsx +1 -3
  100. package/app-typescript/components/Menu.tsx +2 -4
  101. package/app-typescript/components/Modal.tsx +21 -21
  102. package/app-typescript/components/MultiSelect.tsx +6 -6
  103. package/app-typescript/components/NavButton.tsx +10 -8
  104. package/app-typescript/components/Navigation/BottomNav.tsx +21 -17
  105. package/app-typescript/components/Navigation/QuickNavBar.tsx +40 -37
  106. package/app-typescript/components/Navigation/SideBarMenu.tsx +21 -17
  107. package/app-typescript/components/Navigation/SideBarTabs.tsx +13 -19
  108. package/app-typescript/components/Navigation/index.tsx +3 -3
  109. package/app-typescript/components/Popover.tsx +19 -21
  110. package/app-typescript/components/PropsList.tsx +2 -4
  111. package/app-typescript/components/RadioButtonGroup.tsx +48 -45
  112. package/app-typescript/components/RadioGroup.tsx +9 -8
  113. package/app-typescript/components/ResizablePanels.tsx +2 -3
  114. package/app-typescript/components/ResizeObserverComponent.tsx +1 -5
  115. package/app-typescript/components/SearchBar.tsx +53 -45
  116. package/app-typescript/components/Select.tsx +6 -8
  117. package/app-typescript/components/SelectGrid.tsx +32 -40
  118. package/app-typescript/components/SelectPreview.tsx +31 -25
  119. package/app-typescript/components/SelectWithTemplate.tsx +10 -11
  120. package/app-typescript/components/ShowPopup.tsx +30 -46
  121. package/app-typescript/components/SidebarMenu.tsx +19 -18
  122. package/app-typescript/components/Skeleton.tsx +12 -11
  123. package/app-typescript/components/SlidingToolbar.tsx +1 -6
  124. package/app-typescript/components/Spinner.tsx +2 -6
  125. package/app-typescript/components/StrechBar.tsx +1 -5
  126. package/app-typescript/components/SubNav.tsx +10 -8
  127. package/app-typescript/components/SvgIconIllustration.tsx +477 -105
  128. package/app-typescript/components/Switch.tsx +14 -12
  129. package/app-typescript/components/SwitchGroup.tsx +10 -10
  130. package/app-typescript/components/TabCustom.tsx +28 -35
  131. package/app-typescript/components/TabList.tsx +13 -10
  132. package/app-typescript/components/Tag.tsx +21 -24
  133. package/app-typescript/components/TagInput.tsx +4 -11
  134. package/app-typescript/components/Text/Heading.tsx +21 -41
  135. package/app-typescript/components/Text/Text.tsx +16 -12
  136. package/app-typescript/components/Text/Time.tsx +14 -10
  137. package/app-typescript/components/ThemeSelector.tsx +15 -14
  138. package/app-typescript/components/TimePicker.tsx +2 -2
  139. package/app-typescript/components/TimePickerV2.tsx +20 -20
  140. package/app-typescript/components/Toast.tsx +11 -7
  141. package/app-typescript/components/ToastMessage.tsx +3 -14
  142. package/app-typescript/components/ToastText.tsx +30 -32
  143. package/app-typescript/components/ToastWrapper.tsx +76 -74
  144. package/app-typescript/components/ToggleBox/CustomHeaderToggleBox.tsx +30 -45
  145. package/app-typescript/components/ToggleBox/SimpleToggleBox.tsx +31 -33
  146. package/app-typescript/components/ToggleBox/index.tsx +3 -7
  147. package/app-typescript/components/Tooltip.tsx +1 -1
  148. package/app-typescript/components/TreeMenu.tsx +72 -81
  149. package/app-typescript/components/TreeSelect/KeyboardNavigation.tsx +1 -5
  150. package/app-typescript/components/TreeSelect/TreeSelect.tsx +221 -238
  151. package/app-typescript/components/TreeSelect/TreeSelectItem.tsx +20 -24
  152. package/app-typescript/components/TreeSelect/TreeSelectPill.tsx +12 -15
  153. package/app-typescript/components/WithPagination.tsx +34 -39
  154. package/app-typescript/components/WithPopover.tsx +0 -1
  155. package/app-typescript/components/WithPortal.tsx +4 -7
  156. package/app-typescript/components/WithSizeObserver.tsx +2 -6
  157. package/app-typescript/components/_Positioner.tsx +26 -26
  158. package/app-typescript/components/avatar/avatar-action-add.tsx +1 -6
  159. package/app-typescript/components/avatar/avatar-group.tsx +49 -68
  160. package/app-typescript/components/avatar/avatar-image.tsx +18 -12
  161. package/app-typescript/components/avatar/avatar-placeholder.tsx +3 -15
  162. package/app-typescript/components/avatar/avatar-text.tsx +1 -4
  163. package/app-typescript/components/avatar/avatar-wrapper.tsx +18 -30
  164. package/app-typescript/components/avatar/avatar.tsx +5 -8
  165. package/app-typescript/components/with-pagination.spec.tsx +8 -27
  166. package/app-typescript/helpers.tsx +2 -2
  167. package/app-typescript/index.ts +111 -100
  168. package/declarations.d.ts +1 -1
  169. package/dist/components/Alerts.tsx +171 -78
  170. package/dist/components/Autocomplete.tsx +187 -78
  171. package/dist/components/Avatar.tsx +52 -112
  172. package/dist/components/Badges.tsx +111 -67
  173. package/dist/components/BigIconFont.tsx +29 -17
  174. package/dist/components/BoxedList.tsx +244 -114
  175. package/dist/components/ButtonGroups.tsx +213 -147
  176. package/dist/components/Buttons.tsx +409 -137
  177. package/dist/components/Card.tsx +6 -7
  178. package/dist/components/Carousel.tsx +126 -39
  179. package/dist/components/Checkboxs.tsx +446 -105
  180. package/dist/components/Container.tsx +95 -48
  181. package/dist/components/ContentDivider.tsx +110 -63
  182. package/dist/components/ContentList.tsx +577 -253
  183. package/dist/components/CreateButton.tsx +71 -21
  184. package/dist/components/DatePicker.tsx +102 -26
  185. package/dist/components/DateTimePicker.tsx +46 -10
  186. package/dist/components/DragHandleDocs.tsx +56 -26
  187. package/dist/components/DropZone.tsx +67 -29
  188. package/dist/components/Dropdowns.tsx +220 -131
  189. package/dist/components/DurationInput.tsx +92 -32
  190. package/dist/components/EmptyStates.tsx +61 -26
  191. package/dist/components/GridItem.tsx +190 -91
  192. package/dist/components/GridList.tsx +37 -17
  193. package/dist/components/Heading.tsx +81 -35
  194. package/dist/components/IconButtons.tsx +125 -32
  195. package/dist/components/IconFont.tsx +24 -12
  196. package/dist/components/IconLabels.tsx +146 -39
  197. package/dist/components/IconPicker.tsx +30 -13
  198. package/dist/components/IllustrationButton.tsx +40 -20
  199. package/dist/components/Index.tsx +128 -114
  200. package/dist/components/Inputs.tsx +153 -51
  201. package/dist/components/Labels.tsx +191 -117
  202. package/dist/components/LeftNavigations.tsx +327 -100
  203. package/dist/components/ListItems.tsx +8 -9
  204. package/dist/components/Loader.tsx +5 -4
  205. package/dist/components/Menu.tsx +48 -26
  206. package/dist/components/Modal.tsx +298 -104
  207. package/dist/components/MultiSelect.tsx +189 -53
  208. package/dist/components/NavButtons.tsx +86 -30
  209. package/dist/components/Panel.tsx +367 -120
  210. package/dist/components/Popover.tsx +37 -17
  211. package/dist/components/QuickNavigationBar.tsx +222 -86
  212. package/dist/components/RadioGroup.tsx +375 -137
  213. package/dist/components/ResizablePanels.tsx +8 -14
  214. package/dist/components/SelectGrid.tsx +79 -38
  215. package/dist/components/SelectWithTemplate.tsx +23 -14
  216. package/dist/components/Selects.tsx +94 -29
  217. package/dist/components/SimpleList.tsx +91 -41
  218. package/dist/components/SubNav.tsx +57 -37
  219. package/dist/components/Switch.tsx +168 -42
  220. package/dist/components/TableList.tsx +220 -66
  221. package/dist/components/Tabs.tsx +149 -64
  222. package/dist/components/TagInputDocs.tsx +73 -17
  223. package/dist/components/Tags.tsx +104 -73
  224. package/dist/components/Text.tsx +108 -58
  225. package/dist/components/TimePicker.tsx +74 -20
  226. package/dist/components/Toasts.tsx +162 -80
  227. package/dist/components/Togglebox.tsx +164 -62
  228. package/dist/components/Tooltips.tsx +27 -15
  229. package/dist/components/TreeMenu.tsx +95 -59
  230. package/dist/components/TreeSelect.tsx +297 -162
  231. package/dist/components/WithPaginationDocs.tsx +15 -16
  232. package/dist/components/WithSizeObserver.tsx +9 -9
  233. package/dist/components/tree-select/TreeSelect.tsx +126 -77
  234. package/dist/components/tree-select/example-1.tsx +8 -12
  235. package/dist/components/tree-select/example-2.tsx +2 -5
  236. package/dist/components/utilities/BorderRadiusUtilities.tsx +28 -13
  237. package/dist/components/utilities/BorderUtilities.tsx +31 -32
  238. package/dist/components/utilities/DisplayUtilities.tsx +4 -5
  239. package/dist/components/utilities/FlexAndGridUtilities.tsx +38 -38
  240. package/dist/components/utilities/ObjectFitUtilities.tsx +4 -6
  241. package/dist/components/utilities/ObjectPositionUtilities.tsx +3 -4
  242. package/dist/components/utilities/OpacityUtilities.tsx +4 -7
  243. package/dist/components/utilities/OverflowUtilities.tsx +4 -5
  244. package/dist/components/utilities/PositionUtilities.tsx +4 -5
  245. package/dist/components/utilities/ShadowUtilities.tsx +15 -16
  246. package/dist/components/utilities/SpacingUtilities.tsx +483 -178
  247. package/dist/components/utilities/TextUtilities.tsx +109 -60
  248. package/dist/design-patterns/Index.tsx +8 -11
  249. package/dist/design-patterns/ThreePaneLayoutPattern.tsx +92 -76
  250. package/dist/examples.bundle.css +1257 -1155
  251. package/dist/examples.bundle.js +6246 -5620
  252. package/dist/playgrounds/dummy-data/items.ts +9 -8
  253. package/dist/playgrounds/react-playgrounds/CoreLayout.tsx +559 -277
  254. package/dist/playgrounds/react-playgrounds/EditorTest.tsx +387 -204
  255. package/dist/playgrounds/react-playgrounds/FirstPlayground.tsx +74 -52
  256. package/dist/playgrounds/react-playgrounds/Index.tsx +11 -11
  257. package/dist/playgrounds/react-playgrounds/Multiedit.tsx +294 -218
  258. package/dist/playgrounds/react-playgrounds/PageLayoutTest.tsx +151 -105
  259. package/dist/playgrounds/react-playgrounds/PersonalProfile.tsx +481 -261
  260. package/dist/playgrounds/react-playgrounds/RundownEditor.tsx +261 -149
  261. package/dist/playgrounds/react-playgrounds/Rundowns.tsx +757 -395
  262. package/dist/playgrounds/react-playgrounds/SamsPlayground.tsx +173 -91
  263. package/dist/playgrounds/react-playgrounds/TestGround.tsx +1364 -818
  264. package/dist/playgrounds/react-playgrounds/UiPlayground.tsx +178 -86
  265. package/dist/playgrounds/react-playgrounds/components/AuthoringContainer.tsx +6 -7
  266. package/dist/playgrounds/react-playgrounds/components/AuthoringContent.tsx +42 -42
  267. package/dist/playgrounds/react-playgrounds/components/ContentSplitter.tsx +5 -8
  268. package/dist/playgrounds/react-playgrounds/components/GraphicButton.tsx +11 -11
  269. package/dist/playgrounds/react-playgrounds/components/GraphicButtonsGroup.tsx +2 -6
  270. package/dist/playgrounds/react-playgrounds/components/HeaderPanel.tsx +1 -5
  271. package/dist/playgrounds/react-playgrounds/components/Index.tsx +19 -21
  272. package/dist/playgrounds/react-playgrounds/components/Layout.tsx +11 -17
  273. package/dist/playgrounds/react-playgrounds/components/LayoutContainer.tsx +1 -1
  274. package/dist/playgrounds/react-playgrounds/components/MainPanel.tsx +11 -12
  275. package/dist/playgrounds/react-playgrounds/components/OverlayPanel.tsx +3 -5
  276. package/dist/playgrounds/react-playgrounds/components/Panel.tsx +6 -7
  277. package/dist/playgrounds/react-playgrounds/components/PanelContent.tsx +1 -5
  278. package/dist/playgrounds/react-playgrounds/components/PanelContentBlock.tsx +1 -6
  279. package/dist/playgrounds/react-playgrounds/components/PanelHeader.tsx +3 -3
  280. package/dist/playgrounds/react-playgrounds/components/SearchBar.tsx +16 -12
  281. package/dist/playgrounds/react-playgrounds/components/SidebarMenu.tsx +23 -14
  282. package/dist/playgrounds/react-playgrounds/components/SubNav.tsx +1 -5
  283. package/dist/playgrounds/react-playgrounds/components/ThemeDropdown.tsx +14 -11
  284. package/dist/playgrounds/react-playgrounds/tsconfig.json +1 -1
  285. package/dist/superdesk-ui.bundle.css +0 -3
  286. package/dist/superdesk-ui.bundle.js +1791 -1865
  287. package/dist/vendor.bundle.js +2 -2
  288. package/examples/css/docs-page.css +1135 -1116
  289. package/examples/css/reset.css +124 -43
  290. package/examples/css/vendor.css +125 -125
  291. package/examples/index.js +138 -139
  292. package/examples/js/doc.js +41 -40
  293. package/examples/js/react.js +82 -48
  294. package/examples/pages/components/Alerts.tsx +171 -78
  295. package/examples/pages/components/Autocomplete.tsx +187 -78
  296. package/examples/pages/components/Avatar.tsx +52 -112
  297. package/examples/pages/components/Badges.tsx +111 -67
  298. package/examples/pages/components/BigIconFont.tsx +29 -17
  299. package/examples/pages/components/BoxedList.tsx +244 -114
  300. package/examples/pages/components/ButtonGroups.tsx +213 -147
  301. package/examples/pages/components/Buttons.tsx +409 -137
  302. package/examples/pages/components/Card.tsx +6 -7
  303. package/examples/pages/components/Carousel.tsx +126 -39
  304. package/examples/pages/components/Checkboxs.tsx +446 -105
  305. package/examples/pages/components/Container.tsx +95 -48
  306. package/examples/pages/components/ContentDivider.tsx +110 -63
  307. package/examples/pages/components/ContentList.tsx +577 -253
  308. package/examples/pages/components/CreateButton.tsx +71 -21
  309. package/examples/pages/components/DatePicker.tsx +102 -26
  310. package/examples/pages/components/DateTimePicker.tsx +46 -10
  311. package/examples/pages/components/DragHandleDocs.tsx +56 -26
  312. package/examples/pages/components/DropZone.tsx +67 -29
  313. package/examples/pages/components/Dropdowns.tsx +220 -131
  314. package/examples/pages/components/DurationInput.tsx +92 -32
  315. package/examples/pages/components/EmptyStates.tsx +61 -26
  316. package/examples/pages/components/GridItem.tsx +190 -91
  317. package/examples/pages/components/GridList.tsx +37 -17
  318. package/examples/pages/components/Heading.tsx +81 -35
  319. package/examples/pages/components/IconButtons.tsx +125 -32
  320. package/examples/pages/components/IconFont.tsx +24 -12
  321. package/examples/pages/components/IconLabels.tsx +146 -39
  322. package/examples/pages/components/IconPicker.tsx +30 -13
  323. package/examples/pages/components/IllustrationButton.tsx +40 -20
  324. package/examples/pages/components/Index.tsx +128 -114
  325. package/examples/pages/components/Inputs.tsx +153 -51
  326. package/examples/pages/components/Labels.tsx +191 -117
  327. package/examples/pages/components/LeftNavigations.tsx +327 -100
  328. package/examples/pages/components/ListItems.tsx +8 -9
  329. package/examples/pages/components/Loader.tsx +5 -4
  330. package/examples/pages/components/Menu.tsx +48 -26
  331. package/examples/pages/components/Modal.tsx +298 -104
  332. package/examples/pages/components/MultiSelect.tsx +189 -53
  333. package/examples/pages/components/NavButtons.tsx +86 -30
  334. package/examples/pages/components/Panel.tsx +367 -120
  335. package/examples/pages/components/Popover.tsx +37 -17
  336. package/examples/pages/components/QuickNavigationBar.tsx +222 -86
  337. package/examples/pages/components/RadioGroup.tsx +375 -137
  338. package/examples/pages/components/ResizablePanels.tsx +8 -14
  339. package/examples/pages/components/SelectGrid.tsx +79 -38
  340. package/examples/pages/components/SelectWithTemplate.tsx +23 -14
  341. package/examples/pages/components/Selects.tsx +94 -29
  342. package/examples/pages/components/SimpleList.tsx +91 -41
  343. package/examples/pages/components/SubNav.tsx +57 -37
  344. package/examples/pages/components/Switch.tsx +168 -42
  345. package/examples/pages/components/TableList.tsx +220 -66
  346. package/examples/pages/components/Tabs.tsx +149 -64
  347. package/examples/pages/components/TagInputDocs.tsx +73 -17
  348. package/examples/pages/components/Tags.tsx +104 -73
  349. package/examples/pages/components/Text.tsx +108 -58
  350. package/examples/pages/components/TimePicker.tsx +74 -20
  351. package/examples/pages/components/Toasts.tsx +162 -80
  352. package/examples/pages/components/Togglebox.tsx +164 -62
  353. package/examples/pages/components/Tooltips.tsx +27 -15
  354. package/examples/pages/components/TreeMenu.tsx +95 -59
  355. package/examples/pages/components/TreeSelect.tsx +297 -162
  356. package/examples/pages/components/WithPaginationDocs.tsx +15 -16
  357. package/examples/pages/components/WithSizeObserver.tsx +9 -9
  358. package/examples/pages/components/tree-select/TreeSelect.tsx +126 -77
  359. package/examples/pages/components/tree-select/example-1.tsx +8 -12
  360. package/examples/pages/components/tree-select/example-2.tsx +2 -5
  361. package/examples/pages/components/utilities/BorderRadiusUtilities.tsx +28 -13
  362. package/examples/pages/components/utilities/BorderUtilities.tsx +31 -32
  363. package/examples/pages/components/utilities/DisplayUtilities.tsx +4 -5
  364. package/examples/pages/components/utilities/FlexAndGridUtilities.tsx +38 -38
  365. package/examples/pages/components/utilities/ObjectFitUtilities.tsx +4 -6
  366. package/examples/pages/components/utilities/ObjectPositionUtilities.tsx +3 -4
  367. package/examples/pages/components/utilities/OpacityUtilities.tsx +4 -7
  368. package/examples/pages/components/utilities/OverflowUtilities.tsx +4 -5
  369. package/examples/pages/components/utilities/PositionUtilities.tsx +4 -5
  370. package/examples/pages/components/utilities/ShadowUtilities.tsx +15 -16
  371. package/examples/pages/components/utilities/SpacingUtilities.tsx +483 -178
  372. package/examples/pages/components/utilities/TextUtilities.tsx +109 -60
  373. package/examples/pages/design-patterns/Index.tsx +8 -11
  374. package/examples/pages/design-patterns/ThreePaneLayoutPattern.tsx +92 -76
  375. package/examples/pages/playgrounds/dummy-data/items.ts +9 -8
  376. package/examples/pages/playgrounds/react-playgrounds/CoreLayout.tsx +559 -277
  377. package/examples/pages/playgrounds/react-playgrounds/EditorTest.tsx +387 -204
  378. package/examples/pages/playgrounds/react-playgrounds/FirstPlayground.tsx +74 -52
  379. package/examples/pages/playgrounds/react-playgrounds/Index.tsx +11 -11
  380. package/examples/pages/playgrounds/react-playgrounds/Multiedit.tsx +294 -218
  381. package/examples/pages/playgrounds/react-playgrounds/PageLayoutTest.tsx +151 -105
  382. package/examples/pages/playgrounds/react-playgrounds/PersonalProfile.tsx +481 -261
  383. package/examples/pages/playgrounds/react-playgrounds/RundownEditor.tsx +261 -149
  384. package/examples/pages/playgrounds/react-playgrounds/Rundowns.tsx +757 -395
  385. package/examples/pages/playgrounds/react-playgrounds/SamsPlayground.tsx +173 -91
  386. package/examples/pages/playgrounds/react-playgrounds/TestGround.tsx +1364 -818
  387. package/examples/pages/playgrounds/react-playgrounds/UiPlayground.tsx +178 -86
  388. package/examples/pages/playgrounds/react-playgrounds/components/AuthoringContainer.tsx +6 -7
  389. package/examples/pages/playgrounds/react-playgrounds/components/AuthoringContent.tsx +42 -42
  390. package/examples/pages/playgrounds/react-playgrounds/components/ContentSplitter.tsx +5 -8
  391. package/examples/pages/playgrounds/react-playgrounds/components/GraphicButton.tsx +11 -11
  392. package/examples/pages/playgrounds/react-playgrounds/components/GraphicButtonsGroup.tsx +2 -6
  393. package/examples/pages/playgrounds/react-playgrounds/components/HeaderPanel.tsx +1 -5
  394. package/examples/pages/playgrounds/react-playgrounds/components/Index.tsx +19 -21
  395. package/examples/pages/playgrounds/react-playgrounds/components/Layout.tsx +11 -17
  396. package/examples/pages/playgrounds/react-playgrounds/components/LayoutContainer.tsx +1 -1
  397. package/examples/pages/playgrounds/react-playgrounds/components/MainPanel.tsx +11 -12
  398. package/examples/pages/playgrounds/react-playgrounds/components/OverlayPanel.tsx +3 -5
  399. package/examples/pages/playgrounds/react-playgrounds/components/Panel.tsx +6 -7
  400. package/examples/pages/playgrounds/react-playgrounds/components/PanelContent.tsx +1 -5
  401. package/examples/pages/playgrounds/react-playgrounds/components/PanelContentBlock.tsx +1 -6
  402. package/examples/pages/playgrounds/react-playgrounds/components/PanelHeader.tsx +3 -3
  403. package/examples/pages/playgrounds/react-playgrounds/components/SearchBar.tsx +16 -12
  404. package/examples/pages/playgrounds/react-playgrounds/components/SidebarMenu.tsx +23 -14
  405. package/examples/pages/playgrounds/react-playgrounds/components/SubNav.tsx +1 -5
  406. package/examples/pages/playgrounds/react-playgrounds/components/ThemeDropdown.tsx +14 -11
  407. package/examples/pages/playgrounds/react-playgrounds/tsconfig.json +1 -1
  408. package/globals.d.ts +1 -1
  409. package/mocha-setup.ts +3 -3
  410. package/package.json +119 -117
  411. package/react/components/Alert.js +6 -9
  412. package/react/components/Autocomplete.js +15 -23
  413. package/react/components/Badge.js +1 -1
  414. package/react/components/Button.js +4 -6
  415. package/react/components/ButtonGroup.js +1 -1
  416. package/react/components/Carousel.js +3 -3
  417. package/react/components/CheckButtonGroup.js +3 -6
  418. package/react/components/CheckboxButton.js +2 -4
  419. package/react/components/ContentDivider.js +1 -1
  420. package/react/components/DatePicker.js +29 -26
  421. package/react/components/DateTimePicker.d.ts +26 -4
  422. package/react/components/DateTimePicker.js +82 -27
  423. package/react/components/Divider.js +1 -1
  424. package/react/components/DonutChart.js +1 -1
  425. package/react/components/DragHandle.js +1 -1
  426. package/react/components/DragHandleDots.js +1 -1
  427. package/react/components/DropZone.js +6 -8
  428. package/react/components/Dropdown.d.ts +1 -1
  429. package/react/components/Dropdown.js +34 -38
  430. package/react/components/DropdownFirst.d.ts +11 -11
  431. package/react/components/DropdownFirst.js +20 -24
  432. package/react/components/DurationInput.js +37 -34
  433. package/react/components/EmptyState.js +5 -5
  434. package/react/components/Form/FormGroup.js +1 -1
  435. package/react/components/Form/FormItem.js +1 -1
  436. package/react/components/Form/FormRow.js +1 -1
  437. package/react/components/Form/FormRowNew.js +3 -3
  438. package/react/components/Form/FormText.js +1 -1
  439. package/react/components/Form/InputNew.js +3 -3
  440. package/react/components/Form/InputWrapper.js +7 -10
  441. package/react/components/GridItem.d.ts +1 -1
  442. package/react/components/GridItem.js +16 -16
  443. package/react/components/GridList.js +1 -1
  444. package/react/components/HeadingText.js +4 -5
  445. package/react/components/IconLabel.js +3 -5
  446. package/react/components/IconPicker.d.ts +1 -1
  447. package/react/components/IconPicker.js +111 -104
  448. package/react/components/IllustrationButton.js +1 -1
  449. package/react/components/Input.js +1 -1
  450. package/react/components/Layouts/AuthorinInnerSideBar.js +1 -1
  451. package/react/components/Layouts/AuthoringContainer.js +1 -1
  452. package/react/components/Layouts/AuthoringFrame.js +4 -4
  453. package/react/components/Layouts/AuthoringFrameContainer.js +1 -1
  454. package/react/components/Layouts/AuthoringFrameLeftBar.js +1 -1
  455. package/react/components/Layouts/AuthoringFrameMain.js +1 -1
  456. package/react/components/Layouts/AuthoringFrameNavBar.js +1 -1
  457. package/react/components/Layouts/AuthoringFrameOverlay.js +1 -1
  458. package/react/components/Layouts/AuthoringFrameRightBar.js +1 -1
  459. package/react/components/Layouts/AuthoringFrameSidePanel.js +1 -1
  460. package/react/components/Layouts/AuthoringFrameSidePanelOverlay.js +1 -1
  461. package/react/components/Layouts/AuthoringMainContainer.js +1 -1
  462. package/react/components/Layouts/AuthoringMainContent.js +1 -1
  463. package/react/components/Layouts/AuthoringMainToolBar.js +1 -1
  464. package/react/components/Layouts/BottomBarAction.js +2 -2
  465. package/react/components/Layouts/ContentSplitter.js +1 -1
  466. package/react/components/Layouts/CoreLayout.js +2 -2
  467. package/react/components/Layouts/CoreLayoutContainer.js +1 -1
  468. package/react/components/Layouts/CoreLayoutFooter.js +1 -1
  469. package/react/components/Layouts/CoreLayoutOverlay.js +1 -1
  470. package/react/components/Layouts/CoreLayoutSlideInMenu.js +2 -2
  471. package/react/components/Layouts/CoreLayoutTopMenu.js +3 -3
  472. package/react/components/Layouts/HamburgerButton.js +1 -1
  473. package/react/components/Layouts/HeaderPanel.js +1 -1
  474. package/react/components/Layouts/Layout.d.ts +1 -1
  475. package/react/components/Layouts/Layout.js +9 -9
  476. package/react/components/Layouts/LayoutContainer.js +1 -1
  477. package/react/components/Layouts/LeftPanel.js +1 -1
  478. package/react/components/Layouts/MainMenu.js +8 -10
  479. package/react/components/Layouts/MainPanel.js +1 -1
  480. package/react/components/Layouts/NotificationPanel.d.ts +1 -1
  481. package/react/components/Layouts/NotificationPanel.js +7 -7
  482. package/react/components/Layouts/OverlayPanel.js +3 -3
  483. package/react/components/Layouts/PageLayout.js +2 -2
  484. package/react/components/Layouts/Panel.d.ts +1 -1
  485. package/react/components/Layouts/Panel.js +12 -18
  486. package/react/components/LeftMenu.d.ts +3 -3
  487. package/react/components/LeftMenu.js +11 -13
  488. package/react/components/Lists/BoxedList.js +6 -6
  489. package/react/components/Lists/CalendarWeekDayItem.js +2 -2
  490. package/react/components/Lists/ContentList.js +24 -26
  491. package/react/components/Lists/TableList.d.ts +1 -1
  492. package/react/components/Lists/TableList.js +59 -79
  493. package/react/components/Loader.js +1 -1
  494. package/react/components/Menu.js +1 -1
  495. package/react/components/Modal.d.ts +1 -1
  496. package/react/components/MultiSelect.d.ts +1 -1
  497. package/react/components/MultiSelect.js +2 -2
  498. package/react/components/NavButton.js +2 -4
  499. package/react/components/Navigation/BottomNav.js +9 -8
  500. package/react/components/Navigation/QuickNavBar.js +17 -20
  501. package/react/components/Navigation/SideBarMenu.js +11 -9
  502. package/react/components/Navigation/SideBarTabs.js +9 -8
  503. package/react/components/Popover.js +1 -1
  504. package/react/components/RadioButtonGroup.js +15 -23
  505. package/react/components/ResizablePanels.js +1 -3
  506. package/react/components/ResizeObserverComponent.js +1 -3
  507. package/react/components/SearchBar.js +14 -16
  508. package/react/components/Select.js +3 -3
  509. package/react/components/SelectGrid.js +15 -20
  510. package/react/components/SelectPreview.js +13 -13
  511. package/react/components/SelectWithTemplate.js +3 -5
  512. package/react/components/ShowPopup.js +7 -10
  513. package/react/components/Skeleton.js +1 -1
  514. package/react/components/SlidingToolbar.js +1 -1
  515. package/react/components/Spinner.js +1 -1
  516. package/react/components/StrechBar.js +1 -1
  517. package/react/components/SubNav.js +1 -1
  518. package/react/components/Switch.js +4 -6
  519. package/react/components/SwitchGroup.js +1 -1
  520. package/react/components/TabCustom.js +6 -4
  521. package/react/components/TabList.js +4 -8
  522. package/react/components/Tag.js +13 -17
  523. package/react/components/TagInput.js +1 -1
  524. package/react/components/Text/Heading.js +6 -6
  525. package/react/components/ThemeSelector.js +1 -1
  526. package/react/components/TimePickerV2.js +17 -17
  527. package/react/components/Toast.js +3 -3
  528. package/react/components/ToastMessage.d.ts +1 -1
  529. package/react/components/ToastMessage.js +1 -1
  530. package/react/components/ToastText.js +5 -8
  531. package/react/components/ToastWrapper.js +3 -5
  532. package/react/components/ToggleBox/CustomHeaderToggleBox.d.ts +1 -1
  533. package/react/components/ToggleBox/CustomHeaderToggleBox.js +7 -7
  534. package/react/components/ToggleBox/SimpleToggleBox.d.ts +1 -1
  535. package/react/components/ToggleBox/SimpleToggleBox.js +5 -5
  536. package/react/components/ToggleBox/index.js +3 -3
  537. package/react/components/TreeMenu.d.ts +1 -1
  538. package/react/components/TreeMenu.js +38 -44
  539. package/react/components/TreeSelect/TreeSelect.d.ts +2 -2
  540. package/react/components/TreeSelect/TreeSelect.js +105 -127
  541. package/react/components/TreeSelect/TreeSelectItem.d.ts +1 -1
  542. package/react/components/TreeSelect/TreeSelectItem.js +10 -13
  543. package/react/components/TreeSelect/TreeSelectPill.d.ts +1 -1
  544. package/react/components/TreeSelect/TreeSelectPill.js +8 -9
  545. package/react/components/WithPagination.js +18 -21
  546. package/react/components/WithPortal.d.ts +1 -1
  547. package/react/components/WithPortal.js +2 -1
  548. package/react/components/WithSizeObserver.js +1 -3
  549. package/react/components/_Positioner.js +11 -11
  550. package/react/components/avatar/avatar-action-add.js +1 -1
  551. package/react/components/avatar/avatar-group.js +11 -14
  552. package/react/components/avatar/avatar-image.js +6 -4
  553. package/react/components/avatar/avatar-placeholder.js +1 -1
  554. package/react/components/avatar/avatar-wrapper.js +2 -4
  555. package/react/components/avatar/avatar.js +4 -3
  556. package/react/helpers.js +2 -2
  557. package/react/index.d.ts +1 -1
  558. package/tasks/webpack.dev.js +1 -1
  559. package/tasks/webpack.js +5 -5
  560. package/tasks/webpack.prod.js +1 -5
  561. package/tsconfig.json +2 -5
  562. package/tslint.json +6 -12
  563. package/webpack.config.js +2 -5
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { Chart } from '@superdesk/primereact/chart';
3
- import { ChartData, ChartOptions } from 'chart.js';
2
+ import {Chart} from '@superdesk/primereact/chart';
3
+ import {ChartData, ChartOptions} from 'chart.js';
4
4
 
5
5
  interface IProps {
6
6
  data: ChartData; // For more information, please refer to chart.js documentationt
@@ -11,9 +11,14 @@ interface IProps {
11
11
 
12
12
  export class DonutChart extends React.Component<IProps, {}> {
13
13
  render() {
14
- return <Chart type="doughnut" width={this.props.width}
15
- height={this.props.height}
16
- data={this.props.data}
17
- options={this.props.options} />;
14
+ return (
15
+ <Chart
16
+ type="doughnut"
17
+ width={this.props.width}
18
+ height={this.props.height}
19
+ data={this.props.data}
20
+ options={this.props.options}
21
+ />
22
+ );
18
23
  }
19
24
  }
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import classNames from 'classnames';
3
- import { DragHandleDots } from './DragHandleDots';
3
+ import {DragHandleDots} from './DragHandleDots';
4
4
 
5
5
  interface IProps {
6
6
  blank?: boolean;
@@ -14,13 +14,17 @@ const dotSize = 4; // Size of the single dot image (OneDot.svg) that gets repeat
14
14
 
15
15
  export class DragHandle extends React.PureComponent<IProps> {
16
16
  render() {
17
- const classes = classNames('drag-handle-wrapper', {
18
- [`drag-handle-wrapper--boxed`]: !this.props.blank,
19
- 'drag-handle-wrapper--blank': this.props.blank,
20
- }, this.props.className);
17
+ const classes = classNames(
18
+ 'drag-handle-wrapper',
19
+ {
20
+ [`drag-handle-wrapper--boxed`]: !this.props.blank,
21
+ 'drag-handle-wrapper--blank': this.props.blank,
22
+ },
23
+ this.props.className,
24
+ );
21
25
 
22
26
  const calcSize = (numberOfDots: string) => {
23
- return Number(numberOfDots) * dotSize - (dotSize / 2);
27
+ return Number(numberOfDots) * dotSize - dotSize / 2;
24
28
  };
25
29
 
26
30
  return (
@@ -12,8 +12,6 @@ export class DragHandleDots extends React.PureComponent<IProps> {
12
12
  [`drag-handle-dots--${this.props.color}`]: this.props.color,
13
13
  });
14
14
 
15
- return (
16
- <div style={this.props.style} className={classes}></div>
17
- );
15
+ return <div style={this.props.style} className={classes}></div>;
18
16
  }
19
17
  }
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import classNames from 'classnames';
3
- import { Icon } from './Icon';
3
+ import {Icon} from './Icon';
4
4
  // import * as PanelElements from '../../app-typescript/components/Layouts/Panel';
5
5
 
6
6
  interface IProps {
@@ -56,33 +56,35 @@ export class DropZone extends React.PureComponent<IProps, IState> {
56
56
  }
57
57
 
58
58
  render() {
59
- let classes = classNames('sd-dropzone__drop-target', {
60
- 'sd-dropzone__drop-target--ondragover': this.state.dragClass,
61
- 'sd-dropzone__drop-target--ondrop': this.state.dropClass,
62
- [`sd-dropzone__drop-target--${this.props.type}`]: this.props.type,
63
- }, this.props.className);
59
+ let classes = classNames(
60
+ 'sd-dropzone__drop-target',
61
+ {
62
+ 'sd-dropzone__drop-target--ondragover': this.state.dragClass,
63
+ 'sd-dropzone__drop-target--ondrop': this.state.dropClass,
64
+ [`sd-dropzone__drop-target--${this.props.type}`]: this.props.type,
65
+ },
66
+ this.props.className,
67
+ );
64
68
 
65
69
  return (
66
- <div className={classes}
67
- onDragLeave={(event) => this.dragLeave(event)}
68
- onDragEnter={(event) => this.dragEnter(event)}
69
- onDragOver={(event) => this.dragOver(event)}
70
- onDrop={(event) => this.drop(event)}
71
- onDragStart={() => false}
72
- onDragEnd={() => false}
70
+ <div
71
+ className={classes}
72
+ onDragLeave={(event) => this.dragLeave(event)}
73
+ onDragEnter={(event) => this.dragEnter(event)}
74
+ onDragOver={(event) => this.dragOver(event)}
75
+ onDrop={(event) => this.drop(event)}
76
+ onDragStart={() => false}
77
+ onDragEnd={() => false}
73
78
  >
74
- <div className='sd-dropzone__target-border'>
75
- </div>
76
- <input type="file" className='sd-dropzone__input'/>
77
- {this.props.icon ?
78
- <figure className='sd-dropzone__icon' aria-hidden='true'>
79
- <Icon name='upload-alt' size='big' />
80
- </figure> : null
81
- }
82
- {this.props.heading ?
83
- <h4 className='sd-dropzone__heading'>{this.props.heading}</h4> : null
84
- }
85
- <p className='sd-dropzone__description'>{this.props.text}</p>
79
+ <div className="sd-dropzone__target-border"></div>
80
+ <input type="file" className="sd-dropzone__input" />
81
+ {this.props.icon ? (
82
+ <figure className="sd-dropzone__icon" aria-hidden="true">
83
+ <Icon name="upload-alt" size="big" />
84
+ </figure>
85
+ ) : null}
86
+ {this.props.heading ? <h4 className="sd-dropzone__heading">{this.props.heading}</h4> : null}
87
+ <p className="sd-dropzone__description">{this.props.text}</p>
86
88
  </div>
87
89
  );
88
90
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import * as ReactDOM from 'react-dom';
3
- import { createPopper } from '@popperjs/core';
4
- import { useId } from "react-id-generator";
3
+ import {createPopper} from '@popperjs/core';
4
+ import {useId} from 'react-id-generator';
5
5
  import {getNextZIndex} from './../zIndex';
6
6
 
7
7
  export interface IMenuItem {
@@ -39,17 +39,9 @@ interface IMenu {
39
39
  maxHeight?: number;
40
40
  }
41
41
 
42
- const DROPDOWN_ID_CONTAINER = "sd-dropdown-constainer";
42
+ const DROPDOWN_ID_CONTAINER = 'sd-dropdown-constainer';
43
43
 
44
- export const Dropdown = ({
45
- items,
46
- header,
47
- footer,
48
- children,
49
- align,
50
- onChange,
51
- maxHeight,
52
- }: IMenu) => {
44
+ export const Dropdown = ({items, header, footer, children, align, onChange, maxHeight}: IMenu) => {
53
45
  const [zIndex, setZIndex] = React.useState<number>(-1);
54
46
 
55
47
  if (zIndex === -1) {
@@ -77,7 +69,7 @@ export const Dropdown = ({
77
69
  React.useEffect(() => {
78
70
  const existingElement = document.getElementById(DROPDOWN_ID_CONTAINER);
79
71
  if (!existingElement) {
80
- const el = document.createElement("div");
72
+ const el = document.createElement('div');
81
73
  el.id = DROPDOWN_ID_CONTAINER;
82
74
  el.style.position = 'absolute';
83
75
  el.style.top = '0';
@@ -101,62 +93,49 @@ export const Dropdown = ({
101
93
  if (header && footer) {
102
94
  return (
103
95
  <div
104
- className='dropdown__menu dropdown__menu--has-head-foot'
105
- id={menuID} role='menu'
96
+ className="dropdown__menu dropdown__menu--has-head-foot"
97
+ id={menuID}
98
+ role="menu"
106
99
  ref={ref}
107
100
  style={{zIndex}}
108
101
  >
109
- <ul className='dropdown__menu-header'>
110
- {headerElements}
111
- </ul>
112
- <ul className='dropdown__menu-body'>
113
- {dropdownElements}
114
- </ul>
115
- <ul className='dropdown__menu-footer dropdown__menu-footer--has-list '>
116
- {footerElements}
117
- </ul>
102
+ <ul className="dropdown__menu-header">{headerElements}</ul>
103
+ <ul className="dropdown__menu-body">{dropdownElements}</ul>
104
+ <ul className="dropdown__menu-footer dropdown__menu-footer--has-list ">{footerElements}</ul>
118
105
  </div>
119
106
  );
120
107
  } else if (header) {
121
108
  return (
122
109
  <div
123
- className='dropdown__menu dropdown__menu--has-head-foot'
110
+ className="dropdown__menu dropdown__menu--has-head-foot"
124
111
  id={menuID}
125
- role='menu'
112
+ role="menu"
126
113
  ref={ref}
127
114
  style={{zIndex}}
128
115
  >
129
- <ul className='dropdown__menu-header'>
130
- {headerElements}
131
- </ul>
132
- <ul className='dropdown__menu-body'>
133
- {dropdownElements}
134
- </ul>
116
+ <ul className="dropdown__menu-header">{headerElements}</ul>
117
+ <ul className="dropdown__menu-body">{dropdownElements}</ul>
135
118
  </div>
136
119
  );
137
120
  } else if (footer) {
138
121
  return (
139
122
  <div
140
- className='dropdown__menu dropdown__menu--has-head-foot'
123
+ className="dropdown__menu dropdown__menu--has-head-foot"
141
124
  id={menuID}
142
- role='menu'
125
+ role="menu"
143
126
  ref={ref}
144
127
  style={{zIndex}}
145
128
  >
146
- <ul className='dropdown__menu-body'>
147
- {dropdownElements}
148
- </ul>
149
- <ul className='dropdown__menu-footer dropdown__menu-footer--has-list '>
150
- {footerElements}
151
- </ul>
129
+ <ul className="dropdown__menu-body">{dropdownElements}</ul>
130
+ <ul className="dropdown__menu-footer dropdown__menu-footer--has-list ">{footerElements}</ul>
152
131
  </div>
153
132
  );
154
133
  } else {
155
134
  return (
156
135
  <ul
157
- className='dropdown__menu '
136
+ className="dropdown__menu "
158
137
  id={menuID}
159
- role='menu'
138
+ role="menu"
160
139
  ref={ref}
161
140
  style={{...{zIndex, overflowY: 'auto'}, ...maxHeightStyle}}
162
141
  >
@@ -247,7 +226,7 @@ export const Dropdown = ({
247
226
  </React.Fragment>
248
227
  );
249
228
  } else if (item === 'divider') {
250
- return (<li className="dropdown__menu-divider" key={index}></li>);
229
+ return <li className="dropdown__menu-divider" key={index}></li>;
251
230
  } else {
252
231
  return (
253
232
  <DropdownItem
@@ -264,54 +243,48 @@ export const Dropdown = ({
264
243
 
265
244
  return (
266
245
  <div className={'dropdown ' + (open ? 'open' : '')}>
267
- {
268
- typeof children === 'object'
269
- ? (React.isValidElement(children)
270
- ? <div ref={buttonRef} style={{ display: 'content' }}>
271
- {(() => {
272
- const attrs = {
273
- className: children.props.className
274
- ? (children.props.className + ' dropdown__toggle dropdown-toggle')
275
- : 'dropdown__toggle dropdown-toggle',
276
- 'aria-haspopup': "menu",
277
- 'aria-expanded': open,
278
- onClick: toggleDisplay,
279
- ref: buttonRef,
280
- };
246
+ {typeof children === 'object' ? (
247
+ React.isValidElement(children) ? (
248
+ <div ref={buttonRef} style={{display: 'content'}}>
249
+ {(() => {
250
+ const attrs = {
251
+ className: children.props.className
252
+ ? children.props.className + ' dropdown__toggle dropdown-toggle'
253
+ : 'dropdown__toggle dropdown-toggle',
254
+ 'aria-haspopup': 'menu',
255
+ 'aria-expanded': open,
256
+ onClick: toggleDisplay,
257
+ ref: buttonRef,
258
+ };
281
259
 
282
- return React.cloneElement(children, attrs);
283
- })()}
284
- </div>
285
- : null)
286
- : <button
287
- style={{whiteSpace: 'nowrap'}}
288
- ref={buttonRef}
289
- className=' dropdown__toggle dropdown-toggle'
290
- aria-haspopup="menu"
291
- tabIndex={0}
292
- aria-expanded={open}
293
- onClick={toggleDisplay}
294
- >
295
- {children}
296
- <span className="dropdown__caret"></span>
297
- </button>
298
- }
260
+ return React.cloneElement(children, attrs);
261
+ })()}
262
+ </div>
263
+ ) : null
264
+ ) : (
265
+ <button
266
+ style={{whiteSpace: 'nowrap'}}
267
+ ref={buttonRef}
268
+ className=" dropdown__toggle dropdown-toggle"
269
+ aria-haspopup="menu"
270
+ tabIndex={0}
271
+ aria-expanded={open}
272
+ onClick={toggleDisplay}
273
+ >
274
+ {children}
275
+ <span className="dropdown__caret"></span>
276
+ </button>
277
+ )}
299
278
  </div>
300
279
  );
301
280
  };
302
281
 
303
- const DropdownItem = ({
304
- label,
305
- icon,
306
- active,
307
- onSelect,
308
- onChange,
309
- }: IMenuItemRes) => {
282
+ const DropdownItem = ({label, icon, active, onSelect, onChange}: IMenuItemRes) => {
310
283
  return (
311
- <li role='none' className={active ? 'dropdown__menu-item--active' : ''}>
284
+ <li role="none" className={active ? 'dropdown__menu-item--active' : ''}>
312
285
  <button
313
286
  tabIndex={0}
314
- role='menuitem'
287
+ role="menuitem"
315
288
  onClick={() => {
316
289
  setTimeout(() => {
317
290
  onSelect();
@@ -321,20 +294,14 @@ onChange,
321
294
  }
322
295
  }}
323
296
  >
324
- <i className={icon ? ('icon-' + icon) : ''}></i>
297
+ <i className={icon ? 'icon-' + icon : ''}></i>
325
298
  {label}
326
299
  </button>
327
300
  </li>
328
301
  );
329
302
  };
330
303
 
331
- const DropdownItemWithSubmenu = ({
332
- index,
333
- item,
334
- menuID,
335
- subMenuItems,
336
- onChange,
337
- }: IMenuItem | any) => {
304
+ const DropdownItemWithSubmenu = ({index, item, menuID, subMenuItems, onChange}: IMenuItem | any) => {
338
305
  const [open, setOpen] = React.useState<undefined | boolean>(undefined);
339
306
 
340
307
  const refButtonSubMenu = React.useRef(null);
@@ -362,12 +329,9 @@ const DropdownItemWithSubmenu = ({
362
329
 
363
330
  return (
364
331
  <li key={index} ref={refButtonSubMenu}>
365
- <div
366
- className='dropdown'
367
- onMouseLeave={() => setOpen(false)}
368
- >
332
+ <div className="dropdown" onMouseLeave={() => setOpen(false)}>
369
333
  <button
370
- className='dropdown__toggle dropdown-toggle'
334
+ className="dropdown__toggle dropdown-toggle"
371
335
  aria-haspopup="menu"
372
336
  tabIndex={0}
373
337
  onClick={() => {
@@ -385,12 +349,7 @@ const DropdownItemWithSubmenu = ({
385
349
  {item['icon'] ? <i className={'icon-' + item['icon']}></i> : null}
386
350
  {item['label']}
387
351
  </button>
388
- <ul
389
- role='menu'
390
- ref={refSubMenu}
391
- style={{display: 'none'}}
392
- className='dropdown__menu'
393
- >
352
+ <ul role="menu" ref={refSubMenu} style={{display: 'none'}} className="dropdown__menu">
394
353
  {subMenuItems}
395
354
  </ul>
396
355
  </div>
@@ -30,16 +30,7 @@ interface IPropsMenu {
30
30
  children: React.ReactNode;
31
31
  }
32
32
 
33
- export const DropdownFirst = ({
34
- name,
35
- align,
36
- side,
37
- level,
38
- icon,
39
- headerFooter,
40
- navDropdown,
41
- children,
42
- }: IProps) => {
33
+ export const DropdownFirst = ({name, align, side, level, icon, headerFooter, navDropdown, children}: IProps) => {
43
34
  const [open, setOpen] = React.useState(false);
44
35
  const [height, setHeight] = React.useState(false);
45
36
  const ref = React.useRef(null);
@@ -50,7 +41,7 @@ export const DropdownFirst = ({
50
41
  let second = screen.height;
51
42
  let heightEl = heightElement(ref.current);
52
43
 
53
- if ((second - number.bottom) < (heightEl + 100) && (number.top > heightEl)) {
44
+ if (second - number.bottom < heightEl + 100 && number.top > heightEl) {
54
45
  setHeight(true);
55
46
  } else {
56
47
  setHeight(false);
@@ -58,7 +49,7 @@ export const DropdownFirst = ({
58
49
  }
59
50
 
60
51
  const debounce = (delay: number) => {
61
- return function() {
52
+ return function () {
62
53
  const context = children;
63
54
  clearTimeout(inDebounce);
64
55
  inDebounce = window.setTimeout(() => calculate.apply(context), delay);
@@ -68,12 +59,12 @@ export const DropdownFirst = ({
68
59
  React.useLayoutEffect(() => {
69
60
  let element = document.getElementsByClassName('dropdown')[0];
70
61
  let parentElement = getScrollParent(element);
71
- parentElement.parentNode.addEventListener("scroll", debounce(50));
62
+ parentElement.parentNode.addEventListener('scroll', debounce(50));
72
63
 
73
64
  calculate();
74
65
 
75
66
  return () => {
76
- parentElement.removeEventListener("scroll", debounce(50));
67
+ parentElement.removeEventListener('scroll', debounce(50));
77
68
  clearTimeout(inDebounce);
78
69
  };
79
70
  }, [open]);
@@ -124,22 +115,28 @@ export const DropdownFirst = ({
124
115
  }
125
116
  if (headerFooter) {
126
117
  return (
127
- <div className={classes} >
118
+ <div className={classes}>
128
119
  <button
129
- className={navDropdown
130
- ? 'dropdown__toggle navbtn dropdown-toggle'
131
- : 'dropdown__toggle nav-btn dropdown-toggle'
120
+ className={
121
+ navDropdown
122
+ ? 'dropdown__toggle navbtn dropdown-toggle'
123
+ : 'dropdown__toggle nav-btn dropdown-toggle'
132
124
  }
133
125
  onClick={isOpen}
134
126
  >
135
- {icon ?
136
- (<i className={"icon-" + icon}></i>) :
137
- (<React.Fragment>{name}<span className="dropdown__caret"></span></React.Fragment>)
138
- }</button>
139
- <div className='dropdown__menu dropdown__menu--has-head-foot' ref={ref}>
127
+ {icon ? (
128
+ <i className={'icon-' + icon}></i>
129
+ ) : (
130
+ <React.Fragment>
131
+ {name}
132
+ <span className="dropdown__caret"></span>
133
+ </React.Fragment>
134
+ )}
135
+ </button>
136
+ <div className="dropdown__menu dropdown__menu--has-head-foot" ref={ref}>
140
137
  {children}
141
138
  </div>
142
- </div >
139
+ </div>
143
140
  );
144
141
  } else {
145
142
  if (level) {
@@ -149,62 +146,65 @@ export const DropdownFirst = ({
149
146
  return (
150
147
  <li>
151
148
  <div className={classes}>
152
- <button className='dropdown__toggle dropdown-toggle'>
153
- {icon && level ? <i className={icon ? ('icon-' + icon) : ''}></i> : null}
149
+ <button className="dropdown__toggle dropdown-toggle">
150
+ {icon && level ? <i className={icon ? 'icon-' + icon : ''}></i> : null}
154
151
  {name}
155
152
  </button>
156
- <ul className={classesMenu} ref={ref} role='menu'>
153
+ <ul className={classesMenu} ref={ref} role="menu">
157
154
  {children}
158
155
  </ul>
159
156
  </div>
160
157
  </li>
161
-
162
158
  );
163
159
  } else {
164
160
  return (
165
- <div className={classes} >
161
+ <div className={classes}>
166
162
  <button
167
- className={navDropdown
168
- ? 'dropdown__toggle navbtn dropdown-toggle'
169
- : 'dropdown__toggle nav-btn dropdown-toggle'
163
+ className={
164
+ navDropdown
165
+ ? 'dropdown__toggle navbtn dropdown-toggle'
166
+ : 'dropdown__toggle nav-btn dropdown-toggle'
170
167
  }
171
168
  onClick={isOpen}
172
169
  >
173
- {icon ?
174
- (<i className={"icon-" + icon}></i>) :
175
- (<React.Fragment>{name}<span className="dropdown__caret"></span></React.Fragment>)
176
- }</button>
177
- <ul className='dropdown__menu' ref={ref}>
170
+ {icon ? (
171
+ <i className={'icon-' + icon}></i>
172
+ ) : (
173
+ <React.Fragment>
174
+ {name}
175
+ <span className="dropdown__caret"></span>
176
+ </React.Fragment>
177
+ )}
178
+ </button>
179
+ <ul className="dropdown__menu" ref={ref}>
178
180
  {children}
179
181
  </ul>
180
- </div >
182
+ </div>
181
183
  );
182
184
  }
183
185
  }
184
186
  };
185
187
 
186
- export const DropdownItem = ({
187
- text,
188
- icon,
189
- noLink,
190
- onSelect,
191
- }: IPropsItem) => {
188
+ export const DropdownItem = ({text, icon, noLink, onSelect}: IPropsItem) => {
192
189
  if (noLink) {
193
- return <li className='dropdown__menu-item--no-link'>{text}</li>;
190
+ return <li className="dropdown__menu-item--no-link">{text}</li>;
194
191
  } else {
195
192
  return (
196
- <li><button onSelect={onSelect}><i className={icon ? ('icon-' + icon) : ''}></i>{text}</button></li>
193
+ <li>
194
+ <button onSelect={onSelect}>
195
+ <i className={icon ? 'icon-' + icon : ''}></i>
196
+ {text}
197
+ </button>
198
+ </li>
197
199
  );
198
200
  }
199
201
  };
200
202
 
201
- export const DropdownDivider = ({ }) => {
202
- return (<li className="dropdown__menu-divider"></li>);
203
+ export const DropdownDivider = ({}) => {
204
+ return <li className="dropdown__menu-divider"></li>;
203
205
  };
204
206
 
205
- export const DropdownLabel = ({
206
- text,
207
- }: IPropsLabel) => {
207
+ export const DropdownLabel = ({text}: IPropsLabel) => {
208
208
  return (
209
209
  <li>
210
210
  <div className="dropdown__menu-label">{text}</div>
@@ -212,39 +212,27 @@ export const DropdownLabel = ({
212
212
  );
213
213
  };
214
214
 
215
- export const DropdownHeader = ({
216
- title,
217
- children,
218
- }: IPropsMenu) => {
219
-
215
+ export const DropdownHeader = ({title, children}: IPropsMenu) => {
220
216
  return (
221
- <ul className='dropdown__menu-header'>
217
+ <ul className="dropdown__menu-header">
222
218
  <DropdownLabel text={title} />
223
219
  {children}
224
220
  </ul>
225
221
  );
226
222
  };
227
223
 
228
- export const DropdownBody = ({
229
- title,
230
- children,
231
- }: IPropsMenu) => {
232
-
224
+ export const DropdownBody = ({title, children}: IPropsMenu) => {
233
225
  return (
234
- <ul className='dropdown__menu-body'>
226
+ <ul className="dropdown__menu-body">
235
227
  <DropdownLabel text={title} />
236
228
  {children}
237
229
  </ul>
238
230
  );
239
231
  };
240
232
 
241
- export const DropdownFooter = ({
242
- title,
243
- children,
244
- }: IPropsMenu) => {
245
-
233
+ export const DropdownFooter = ({title, children}: IPropsMenu) => {
246
234
  return (
247
- <ul className='dropdown__menu-footer dropdown__menu-footer--has-list'>
235
+ <ul className="dropdown__menu-footer dropdown__menu-footer--has-list">
248
236
  <DropdownLabel text={title} />
249
237
  {children}
250
238
  </ul>