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
package/package.json CHANGED
@@ -1,119 +1,121 @@
1
1
  {
2
- "name": "superdesk-ui-framework",
3
- "version": "4.0.46",
4
- "license": "AGPL-3.0",
5
- "repository": {
6
- "type": "git",
7
- "url": "https://github.com/superdesk/superdesk-ui-framework.git"
8
- },
9
- "main": "dist/superdesk-ui.bundle.js",
10
- "types": "react/index.d.ts",
11
- "contributors": [
12
- "Nemanja Pavlovic",
13
- "Vladimir Stefanovic",
14
- "Darko Tomic",
15
- "Aleksandar Jelicic",
16
- "Tomas Kikutis",
17
- "Dragana Zivkovic"
18
- ],
19
- "scripts": {
20
- "start": "webpack-dev-server --config tasks/webpack.dev.js",
21
- "server": "webpack --watch --config tasks/webpack.prod.js && tsc-watch",
22
- "build": "tsc -p tsconfig.json --noEmit && webpack --config tasks/webpack.prod.js && tsc",
23
- "build-ui": "webpack && tsc && npm run lint",
24
- "playground-lint": "tsc -p examples/pages/playgrounds/react-playgrounds --noEmit",
25
- "lint": "tsc -p tsconfig.json --noEmit && eslint --parser=@typescript-eslint/parser app && tslint -c tslint.json 'app-typescript/**/*.{ts,tsx}' && npm run playground-lint",
26
- "lint-fix": "tsc -p tsconfig.json --noEmit && tslint --fix -c tslint.json 'app-typescript/**/*.{ts,tsx}'",
27
- "prepublishOnly": "npm run build",
28
- "unit-test": "mocha",
29
- "debug-unit-tests": "mocha --inspect-brk"
30
- },
31
- "devDependencies": {
32
- "@types/assert": "^1.5.6",
33
- "@types/chart.js": "^2.9.24",
34
- "@types/classnames": "^2.2.9",
35
- "@types/enzyme": "^3.10.12",
36
- "@types/enzyme-adapter-react-16": "^1.0.6",
37
- "@types/lodash": "^4.14.161",
38
- "@types/mocha": "^9.1.1",
39
- "@types/react": "16.8.23",
40
- "@types/react-beautiful-dnd": "^13.1.2",
41
- "@types/react-dom": "16.8.0",
42
- "@types/react-router-dom": "^5.1.2",
43
- "@types/react-scrollspy": "^3.3.5",
44
- "@typescript-eslint/parser": "^5.58.0",
45
- "angular": "^1.7.9",
46
- "angular-animate": "^1.7.9",
47
- "angular-route": "^1.7.9",
48
- "babel-core": "^6.26.0",
49
- "babel-loader": "^7.1.2",
50
- "babel-plugin-transform-object-rest-spread": "^6.26.0",
51
- "babel-preset-es2015": "^6.24.1",
52
- "babel-preset-react": "^6.24.1",
53
- "classnames": "^2.2.5",
54
- "clean-webpack-plugin": "^1.0.0",
55
- "code-prettify": "^0.1.0",
56
- "copy-webpack-plugin": "^4.6.0",
57
- "css-loader": "^2.1.1",
58
- "enzyme": "^3.11.0",
59
- "enzyme-adapter-react-16": "^1.15.7",
60
- "eslint": "^4.6.1",
61
- "eslint-loader": "^1.9.0",
62
- "eslint-plugin-angular": "^3.1.1",
63
- "eslint-plugin-react": "^7.3.0",
64
- "extract-text-webpack-plugin": "^3.0.2",
65
- "file-loader": "^0.11.2",
66
- "html-loader": "^0.5.1",
67
- "html-webpack-plugin": "^2.30.1",
68
- "jquery": "^3.1.1",
69
- "jquery-ui": "^1.12.1",
70
- "jsdom": "20.0.3",
71
- "jsdom-global": "3.0.2",
72
- "lodash": "4.17.21",
73
- "mocha": "^8.4.0",
74
- "moment": "^2.29.3",
75
- "node-sass": "6.0",
76
- "prismjs": "^1.28.0",
77
- "prop-types": "^15.6.0",
78
- "react": "16.8.6",
79
- "react-dom": "16.8.6",
80
- "react-redux": "^5.0.6",
81
- "react-router-dom": "^5.1.2",
82
- "redux": "^3.7.2",
83
- "redux-form": "^7.0.4",
84
- "sass-loader": "^6.0.6",
85
- "style-loader": "^0.18.2",
86
- "superdesk-code-style": "^1.1.2",
87
- "ts-loader": "^6.0.2",
88
- "ts-node": "^10.9.1",
89
- "tslint": "^5.18.0",
90
- "typescript": "^5.8.3",
91
- "url-loader": "^1.1.2",
92
- "webpack": "^3.5.5",
93
- "webpack-cli": "3.3.10",
94
- "webpack-dev-server": "2.11.1",
95
- "webpack-merge": "^4.2.1"
96
- },
97
- "dependencies": {
98
- "@popperjs/core": "^2.4.0",
99
- "@sourcefabric/common": "0.0.63",
100
- "@superdesk/primereact": "^5.0.2-13",
101
- "@superdesk/react-resizable-panels": "0.0.39",
102
- "chart.js": "^2.9.3",
103
- "date-fns": "2.7.0",
104
- "popper-max-size-modifier": "^0.2.0",
105
- "popper.js": "1.14.4",
106
- "primeicons": "2.0.0",
107
- "react-beautiful-dnd": "^13.0.0",
108
- "react-id-generator": "^3.0.0",
109
- "react-scrollspy": "^3.4.3",
110
- "tippy.js": "^6.3.7",
111
- "weekstart": "^2.0.0"
112
- },
113
- "peerDependencies": {
114
- "moment": "*"
115
- },
116
- "volta": {
117
- "node": "14.21.3"
118
- }
2
+ "name": "superdesk-ui-framework",
3
+ "version": "4.0.48",
4
+ "license": "AGPL-3.0",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/superdesk/superdesk-ui-framework.git"
8
+ },
9
+ "main": "dist/superdesk-ui.bundle.js",
10
+ "types": "react/index.d.ts",
11
+ "contributors": [
12
+ "Nemanja Pavlovic",
13
+ "Vladimir Stefanovic",
14
+ "Darko Tomic",
15
+ "Aleksandar Jelicic",
16
+ "Tomas Kikutis",
17
+ "Dragana Zivkovic"
18
+ ],
19
+ "scripts": {
20
+ "start": "webpack-dev-server --config tasks/webpack.dev.js",
21
+ "server": "webpack --watch --config tasks/webpack.prod.js && tsc-watch",
22
+ "build": "tsc -p tsconfig.json --noEmit && webpack --config tasks/webpack.prod.js && tsc",
23
+ "build-ui": "webpack && tsc && npm run lint",
24
+ "playground-lint": "tsc -p examples/pages/playgrounds/react-playgrounds --noEmit",
25
+ "format-code": "npx prettier . --write",
26
+ "lint": "tsc -p tsconfig.json --noEmit && npx prettier . --check && eslint --parser=@typescript-eslint/parser app && tslint -c tslint.json 'app-typescript/**/*.{ts,tsx}' && npm run playground-lint",
27
+ "lint-fix": "tsc -p tsconfig.json --noEmit && tslint --fix -c tslint.json 'app-typescript/**/*.{ts,tsx}'",
28
+ "prepublishOnly": "npm run build",
29
+ "unit-test": "mocha",
30
+ "debug-unit-tests": "mocha --inspect-brk"
31
+ },
32
+ "devDependencies": {
33
+ "@types/assert": "^1.5.6",
34
+ "@types/chart.js": "^2.9.24",
35
+ "@types/classnames": "^2.2.9",
36
+ "@types/enzyme": "^3.10.12",
37
+ "@types/enzyme-adapter-react-16": "^1.0.6",
38
+ "@types/lodash": "^4.14.161",
39
+ "@types/mocha": "^9.1.1",
40
+ "@types/react": "16.8.23",
41
+ "@types/react-beautiful-dnd": "^13.1.2",
42
+ "@types/react-dom": "16.8.0",
43
+ "@types/react-router-dom": "^5.1.2",
44
+ "@types/react-scrollspy": "^3.3.5",
45
+ "@typescript-eslint/parser": "^5.58.0",
46
+ "angular": "^1.7.9",
47
+ "angular-animate": "^1.7.9",
48
+ "angular-route": "^1.7.9",
49
+ "babel-core": "^6.26.0",
50
+ "babel-loader": "^7.1.2",
51
+ "babel-plugin-transform-object-rest-spread": "^6.26.0",
52
+ "babel-preset-es2015": "^6.24.1",
53
+ "babel-preset-react": "^6.24.1",
54
+ "classnames": "^2.2.5",
55
+ "clean-webpack-plugin": "^1.0.0",
56
+ "code-prettify": "^0.1.0",
57
+ "copy-webpack-plugin": "^4.6.0",
58
+ "css-loader": "^2.1.1",
59
+ "enzyme": "^3.11.0",
60
+ "enzyme-adapter-react-16": "^1.15.7",
61
+ "eslint": "^4.6.1",
62
+ "eslint-loader": "^1.9.0",
63
+ "eslint-plugin-angular": "^3.1.1",
64
+ "eslint-plugin-react": "^7.3.0",
65
+ "extract-text-webpack-plugin": "^3.0.2",
66
+ "file-loader": "^0.11.2",
67
+ "html-loader": "^0.5.1",
68
+ "html-webpack-plugin": "^2.30.1",
69
+ "jquery": "^3.1.1",
70
+ "jquery-ui": "^1.12.1",
71
+ "jsdom": "20.0.3",
72
+ "jsdom-global": "3.0.2",
73
+ "lodash": "4.17.21",
74
+ "mocha": "^8.4.0",
75
+ "moment": "^2.29.3",
76
+ "node-sass": "6.0",
77
+ "prettier": "3.5.3",
78
+ "prismjs": "^1.28.0",
79
+ "prop-types": "^15.6.0",
80
+ "react": "16.8.6",
81
+ "react-dom": "16.8.6",
82
+ "react-redux": "^5.0.6",
83
+ "react-router-dom": "^5.1.2",
84
+ "redux": "^3.7.2",
85
+ "redux-form": "^7.0.4",
86
+ "sass-loader": "^6.0.6",
87
+ "style-loader": "^0.18.2",
88
+ "superdesk-code-style": "^1.1.2",
89
+ "ts-loader": "^6.0.2",
90
+ "ts-node": "^10.9.1",
91
+ "tslint": "^5.18.0",
92
+ "typescript": "^5.8.3",
93
+ "url-loader": "^1.1.2",
94
+ "webpack": "^3.5.5",
95
+ "webpack-cli": "3.3.10",
96
+ "webpack-dev-server": "2.11.1",
97
+ "webpack-merge": "^4.2.1"
98
+ },
99
+ "dependencies": {
100
+ "@popperjs/core": "^2.4.0",
101
+ "@sourcefabric/common": "0.0.63",
102
+ "@superdesk/primereact": "^5.0.2-13",
103
+ "@superdesk/react-resizable-panels": "0.0.39",
104
+ "chart.js": "^2.9.3",
105
+ "date-fns": "2.7.0",
106
+ "popper-max-size-modifier": "^0.2.0",
107
+ "popper.js": "1.14.4",
108
+ "primeicons": "2.0.0",
109
+ "react-beautiful-dnd": "^13.0.0",
110
+ "react-id-generator": "^3.0.0",
111
+ "react-scrollspy": "^3.4.3",
112
+ "tippy.js": "^6.3.7",
113
+ "weekstart": "^2.0.0"
114
+ },
115
+ "peerDependencies": {
116
+ "moment": "*"
117
+ },
118
+ "volta": {
119
+ "node": "14.21.3"
120
+ }
119
121
  }
@@ -91,17 +91,14 @@ var Alert = /** @class */ (function (_super) {
91
91
  if (this.props.fullWidth) {
92
92
  styles.width = '100%';
93
93
  }
94
- return (React.createElement("div", { className: 'sd-alert__container', style: styles },
94
+ return (React.createElement("div", { className: "sd-alert__container", style: styles },
95
95
  React.createElement("div", { className: classesAlert },
96
- this.props.icon ?
97
- React.createElement("span", { className: "sd-alert__icon" },
98
- React.createElement(Icon_1.Icon, { name: this.props.icon })) : null,
99
- this.props.restoreIcon ?
100
- React.createElement("button", { className: 'sd-alert__close', onClick: this.onToggle, "aria-label": "Close" }) : null,
96
+ this.props.icon ? (React.createElement("span", { className: "sd-alert__icon" },
97
+ React.createElement(Icon_1.Icon, { name: this.props.icon }))) : null,
98
+ this.props.restoreIcon ? (React.createElement("button", { className: "sd-alert__close", onClick: this.onToggle, "aria-label": "Close" })) : null,
101
99
  React.createElement("span", { className: "sd-alert__content" }, this.props.children)),
102
- this.props.restoreIcon ?
103
- React.createElement("span", { className: classesInfoBtn, onClick: this.onToggle },
104
- React.createElement("i", { className: this.props.restoreIcon === 'help' ? 'icon-help-large' : 'icon-info-large' })) : null));
100
+ this.props.restoreIcon ? (React.createElement("span", { className: classesInfoBtn, onClick: this.onToggle },
101
+ React.createElement("i", { className: this.props.restoreIcon === 'help' ? 'icon-help-large' : 'icon-info-large' }))) : null));
105
102
  };
106
103
  return Alert;
107
104
  }(React.PureComponent));
@@ -148,29 +148,21 @@ var Autocomplete = /** @class */ (function (_super) {
148
148
  }
149
149
  return (React.createElement(React.Fragment, null,
150
150
  React.createElement("div", { className: classes },
151
- this.props.label && !this.props.isSearchField ? React.createElement("label", { className: 'sd-input__label', htmlFor: this.htmlId }, this.props.label) : null,
152
- this.props.label && this.props.isSearchField ? React.createElement("label", { className: 'sd-searchbar__icon', htmlFor: this.htmlId, "aria-label": this.props.label }) : null,
153
- React.createElement(autocomplete_1.AutoComplete, { id: this.htmlId, inputClassName: inputFieldClass, value: this.state.selectedItem, placeholder: this.props.placeholder, suggestions: this.state.filteredItems, completeMethod: this.searchItem, itemTemplate: this.props.listItemTemplate, field: this.props.keyValue, disabled: this.props.disabled, minLength: this.props.minLength ? this.props.minLength : 1, onFocus: function () { _this.setState({ focused: true }); }, onBlur: function () { _this.setState({ focused: false }); }, onChange: function (event) { return _this.handleChange(event); }, onSelect: function (event) { return _this.handleSelect(event); } }),
154
- this.props.isSearchField && this.state.selectedItem
155
- ? React.createElement("button", { className: "sd-searchbar__cancel", onClick: function () { return _this.handleInputClear(); } },
156
- React.createElement("i", { className: "icon-remove-sign", "aria-label": "remove-sign" }))
157
- : null,
158
- !this.props.isSearchField ?
159
- React.createElement("div", { className: 'sd-input__message-box' },
160
- this.props.info && !this.props.invalid && !this.state.invalid ?
161
- React.createElement("div", { className: 'sd-input__hint' }, this.props.info) : null,
162
- this.props.invalid || this.state.invalid ?
163
- React.createElement("div", { className: 'sd-input__message' }, this.props.error)
164
- : null)
165
- : null),
166
- this.props.isSearchField ?
167
- React.createElement("div", { className: 'sd-searchbar__message-box' },
168
- this.props.info && !this.props.invalid && !this.state.invalid ?
169
- React.createElement("div", { className: 'sd-searchbar__hint' }, this.props.info) : null,
170
- this.props.invalid || this.state.invalid ?
171
- React.createElement("div", { className: 'sd-searchbar__message' }, this.props.error)
172
- : null)
173
- : null));
151
+ this.props.label && !this.props.isSearchField ? (React.createElement("label", { className: "sd-input__label", htmlFor: this.htmlId }, this.props.label)) : null,
152
+ this.props.label && this.props.isSearchField ? (React.createElement("label", { className: "sd-searchbar__icon", htmlFor: this.htmlId, "aria-label": this.props.label })) : null,
153
+ React.createElement(autocomplete_1.AutoComplete, { id: this.htmlId, inputClassName: inputFieldClass, value: this.state.selectedItem, placeholder: this.props.placeholder, suggestions: this.state.filteredItems, completeMethod: this.searchItem, itemTemplate: this.props.listItemTemplate, field: this.props.keyValue, disabled: this.props.disabled, minLength: this.props.minLength ? this.props.minLength : 1, onFocus: function () {
154
+ _this.setState({ focused: true });
155
+ }, onBlur: function () {
156
+ _this.setState({ focused: false });
157
+ }, onChange: function (event) { return _this.handleChange(event); }, onSelect: function (event) { return _this.handleSelect(event); } }),
158
+ this.props.isSearchField && this.state.selectedItem ? (React.createElement("button", { className: "sd-searchbar__cancel", onClick: function () { return _this.handleInputClear(); } },
159
+ React.createElement("i", { className: "icon-remove-sign", "aria-label": "remove-sign" }))) : null,
160
+ !this.props.isSearchField ? (React.createElement("div", { className: "sd-input__message-box" },
161
+ this.props.info && !this.props.invalid && !this.state.invalid ? (React.createElement("div", { className: "sd-input__hint" }, this.props.info)) : null,
162
+ this.props.invalid || this.state.invalid ? (React.createElement("div", { className: "sd-input__message" }, this.props.error)) : null)) : null),
163
+ this.props.isSearchField ? (React.createElement("div", { className: "sd-searchbar__message-box" },
164
+ this.props.info && !this.props.invalid && !this.state.invalid ? (React.createElement("div", { className: "sd-searchbar__hint" }, this.props.info)) : null,
165
+ this.props.invalid || this.state.invalid ? (React.createElement("div", { className: "sd-searchbar__message" }, this.props.error)) : null)) : null));
174
166
  };
175
167
  return Autocomplete;
176
168
  }(React.Component));
@@ -67,7 +67,7 @@ var Badge = /** @class */ (function (_super) {
67
67
  _a['badge--square'] = this.props.shape === 'square',
68
68
  _a));
69
69
  if (this.props.children) {
70
- return (React.createElement("div", { className: 'element-with-badge', "data-test-id": this.props['data-test-id'] },
70
+ return (React.createElement("div", { className: "element-with-badge", "data-test-id": this.props['data-test-id'] },
71
71
  this.props.children,
72
72
  React.createElement("span", { className: classes, style: { backgroundColor: this.props.hexColor }, "data-test-id": "badge-content" }, this.props.text)));
73
73
  }
@@ -107,12 +107,10 @@ var TooltipWrapper = /** @class */ (function (_super) {
107
107
  }
108
108
  TooltipWrapper.prototype.render = function () {
109
109
  var _a = this.props, tooltipText = _a.tooltipText, children = _a.children;
110
- return (tooltipText !== null && tooltipText !== void 0 ? tooltipText : '').length > 0
111
- ? (React.createElement(Tooltip_1.WithTooltip, { text: tooltipText }, function (_a) {
112
- var attributes = _a.attributes;
113
- return children({ attributes: attributes });
114
- }))
115
- : (React.createElement(React.Fragment, null, children({ attributes: {} })));
110
+ return (tooltipText !== null && tooltipText !== void 0 ? tooltipText : '').length > 0 ? (React.createElement(Tooltip_1.WithTooltip, { text: tooltipText }, function (_a) {
111
+ var attributes = _a.attributes;
112
+ return children({ attributes: attributes });
113
+ })) : (React.createElement(React.Fragment, null, children({ attributes: {} })));
116
114
  };
117
115
  return TooltipWrapper;
118
116
  }(React.PureComponent));
@@ -70,7 +70,7 @@ var ButtonGroup = /** @class */ (function (_super) {
70
70
  _a["button-group--padded"] = this.props.padded === true,
71
71
  _a["button-group--sub-group"] = this.props.subgroup === true,
72
72
  _a), this.props.className);
73
- return (React.createElement("div", { className: classes, role: 'group' }, this.props.children));
73
+ return (React.createElement("div", { className: classes, role: "group" }, this.props.children));
74
74
  };
75
75
  return ButtonGroup;
76
76
  }(React.PureComponent));
@@ -61,14 +61,14 @@ var Carousel = /** @class */ (function (_super) {
61
61
  var header = (React.createElement("div", { className: "sd-thumb-carousel__header" },
62
62
  this.props.title && (React.createElement(React.Fragment, null,
63
63
  React.createElement("h4", { className: "sd-thumb-carousel__heading" }, this.props.title),
64
- React.createElement(Badge_1.Badge, { text: '' + (this.props.imageCount || this.props.images.length), type: 'light' }))),
64
+ React.createElement(Badge_1.Badge, { text: '' + (this.props.imageCount || this.props.images.length), type: "light" }))),
65
65
  this.props.headerMeta && (React.createElement("div", { className: "sd-thumb-carousel__header-block--r" }, this.props.headerMeta))));
66
66
  var footer = this.props.description ? (React.createElement("div", { className: "sd-thumb-carousel__description" }, this.props.description)) : null;
67
67
  var itemTemplate = function (props) { return (React.createElement("div", { className: "sd-thumb-carousel__item" },
68
68
  React.createElement("div", { className: "sd-thumb-carousel__item-inner" },
69
69
  React.createElement("img", { src: props.src, alt: props.alt })))); };
70
- return React.createElement("div", { style: { display: 'content' }, "data-theme": this.props.theme !== 'dark' ? null : 'dark-ui', className: this.props.className },
71
- React.createElement(carousel_1.Carousel, { id: this.props.id, value: this.props.images, numVisible: this.props.numVisible, numScroll: this.props.numScroll, responsiveOptions: this.props.responsiveOptions, itemTemplate: itemTemplate, header: header, footer: footer, indicatorsContentClassName: 'sd-thumb-carousel__indicators', onPageChange: this.props.onPageChange }));
70
+ return (React.createElement("div", { style: { display: 'content' }, "data-theme": this.props.theme !== 'dark' ? null : 'dark-ui', className: this.props.className },
71
+ React.createElement(carousel_1.Carousel, { id: this.props.id, value: this.props.images, numVisible: this.props.numVisible, numScroll: this.props.numScroll, responsiveOptions: this.props.responsiveOptions, itemTemplate: itemTemplate, header: header, footer: footer, indicatorsContentClassName: "sd-thumb-carousel__indicators", onPageChange: this.props.onPageChange })));
72
72
  };
73
73
  return Carousel;
74
74
  }(React.PureComponent));
@@ -69,12 +69,9 @@ var CheckButtonGroup = /** @class */ (function (_super) {
69
69
  _a["sd-check-button__group--grid"] = this.props.grid,
70
70
  _a["sd-check-button__group--padded"] = this.props.padded === true,
71
71
  _a));
72
- return (React.createElement(React.Fragment, null, this.props.groupLabel ?
73
- React.createElement("div", { className: 'sd-check-button__group-wrapper', "aria-labelledby": this.props.groupLabelledBy },
74
- React.createElement(FormLabel_1.FormLabel, { forId: 'group', text: this.props.groupLabel }),
75
- React.createElement("div", { className: classes }, this.props.children))
76
- :
77
- React.createElement("div", { className: classes }, this.props.children)));
72
+ return (React.createElement(React.Fragment, null, this.props.groupLabel ? (React.createElement("div", { className: "sd-check-button__group-wrapper", "aria-labelledby": this.props.groupLabelledBy },
73
+ React.createElement(FormLabel_1.FormLabel, { forId: 'group', text: this.props.groupLabel }),
74
+ React.createElement("div", { className: classes }, this.props.children))) : (React.createElement("div", { className: classes }, this.props.children))));
78
75
  };
79
76
  return CheckButtonGroup;
80
77
  }(React.PureComponent));
@@ -71,10 +71,8 @@ var CheckboxButton = /** @class */ (function (_super) {
71
71
  return (React.createElement("span", { className: "sd-check-button sd-check-button--native", tabIndex: this.props.tabindex === undefined ? undefined : -1 },
72
72
  React.createElement("input", { type: "checkbox", className: "sd-check-button__input", id: this.htmlId, tabIndex: this.props.tabindex, checked: this.props.checked, onChange: this.handleChange, disabled: this.props.disabled, required: this.props.required }),
73
73
  React.createElement("label", { className: "sd-check-button__text-label", htmlFor: this.htmlId, "aria-label": this.props.label.hidden ? this.props.label.text : undefined },
74
- this.props.label.icon ?
75
- React.createElement("i", { className: "icon-".concat(this.props.label.icon), "aria-hidden": "true" }) : null,
76
- !this.props.label.hidden || !this.props.label.icon ?
77
- React.createElement("span", { className: "sd-check-button__text-label-inner" }, this.props.label.text) : null)));
74
+ this.props.label.icon ? (React.createElement("i", { className: "icon-".concat(this.props.label.icon), "aria-hidden": "true" })) : null,
75
+ !this.props.label.hidden || !this.props.label.icon ? (React.createElement("span", { className: "sd-check-button__text-label-inner" }, this.props.label.text)) : null)));
78
76
  };
79
77
  return CheckboxButton;
80
78
  }(React.Component));
@@ -72,7 +72,7 @@ var ContentDivider = /** @class */ (function (_super) {
72
72
  _a["sd-content-divider--margin-".concat(this.props.margin)] = this.props.margin || this.props.margin !== undefined,
73
73
  _a));
74
74
  if (this.props.children) {
75
- return (React.createElement("div", { className: "sd-content-divider--with-text " + classes, role: "separator" },
75
+ return (React.createElement("div", { className: 'sd-content-divider--with-text ' + classes, role: "separator" },
76
76
  React.createElement("span", { className: "sd-content-divider__inner-text" }, this.props.children)));
77
77
  }
78
78
  else {
@@ -134,10 +134,10 @@ var DatePicker = /** @class */ (function (_super) {
134
134
  valid: true,
135
135
  };
136
136
  _this.hidePopupOnScroll = (0, lodash_1.throttle)(function () {
137
- if (_this.instance != null
138
- && _this.instance.panel != null
139
- && _this.instance.hideOverlay != null
140
- && _this.instance.panel.classList.contains(internalPrimereactClassnames.overlayVisible)) {
137
+ if (_this.instance != null &&
138
+ _this.instance.panel != null &&
139
+ _this.instance.hideOverlay != null &&
140
+ _this.instance.panel.classList.contains(internalPrimereactClassnames.overlayVisible)) {
141
141
  _this.instance.hideOverlay();
142
142
  }
143
143
  }, 300);
@@ -159,7 +159,8 @@ var DatePicker = /** @class */ (function (_super) {
159
159
  this.setState({ value: parseToPrimeReactCalendarFormat(this.props.value), valid: true });
160
160
  }
161
161
  }
162
- else if (this.props.value.getTime() !== prevProps.value.getTime()) { // comparing by value
162
+ else if (this.props.value.getTime() !== prevProps.value.getTime()) {
163
+ // comparing by value
163
164
  this.setState({ value: parseToPrimeReactCalendarFormat(this.props.value), valid: true });
164
165
  }
165
166
  };
@@ -187,18 +188,18 @@ var DatePicker = /** @class */ (function (_super) {
187
188
  return (0, helpers_1.assertNever)(_this.props.locale);
188
189
  }
189
190
  })();
190
- var showClearButton = this.props.required === true
191
- ? false
192
- : this.props.hideClearButton !== true;
191
+ var showClearButton = this.props.required === true ? false : this.props.hideClearButton !== true;
193
192
  return (React.createElement(Form_1.InputWrapper, { label: this.props.label, error: this.props.error, invalid: this.props.error != null, required: this.props.required, disabled: this.props.disabled, info: this.props.info, inlineLabel: this.props.inlineLabel, labelHidden: this.props.labelHidden, htmlId: this.htmlId, tabindex: this.props.tabindex, inputWrapper: this.props.inputWrapper },
194
- React.createElement(calendar_1.Calendar, { className: 'sd-input__input', footerTemplate: showClearButton ? function () { return (React.createElement("div", { className: 'd-flex justify-end' },
195
- React.createElement(Button_1.Button, { onClick: function () {
196
- _this.props.onChange(null);
197
- if (_this.instance != null
198
- && typeof _this.instance.hideOverlay === 'function') {
199
- _this.instance.hideOverlay();
200
- }
201
- }, text: 'Clear', "data-test-id": 'clear-button' }))); } : undefined, inputId: this.htmlId, ariaLabelledBy: this.htmlId + 'label', ref: function (ref) {
193
+ React.createElement(calendar_1.Calendar, { className: "sd-input__input", footerTemplate: showClearButton
194
+ ? function () { return (React.createElement("div", { className: "d-flex justify-end" },
195
+ React.createElement(Button_1.Button, { onClick: function () {
196
+ _this.props.onChange(null);
197
+ if (_this.instance != null &&
198
+ typeof _this.instance.hideOverlay === 'function') {
199
+ _this.instance.hideOverlay();
200
+ }
201
+ }, text: "Clear", "data-test-id": "clear-button" }))); }
202
+ : undefined, inputId: this.htmlId, ariaLabelledBy: this.htmlId + 'label', ref: function (ref) {
202
203
  _this.instance = ref;
203
204
  var refAny = ref;
204
205
  if (_this.props['data-test-id'] != null && (refAny === null || refAny === void 0 ? void 0 : refAny.inputElement) != null) {
@@ -214,16 +215,18 @@ var DatePicker = /** @class */ (function (_super) {
214
215
  // updating internal state so a user can continue typing and enter a valid value
215
216
  _this.setState({ value: event.value, valid: false });
216
217
  }
217
- }, locale: locale, dateFormat: this.props.dateFormat.replace('YYYY', 'yy').replace('MM', 'mm').replace('DD', 'dd'), showIcon: true, icon: "icon-calendar", headerTemplate: function () { return _this.props.headerButtonBar == null ? null : (React.createElement("div", { className: "datepicker-header-toolbar" }, _this.props.headerButtonBar.map(function (_a, i) {
218
- var label = _a.label, days = _a.days;
219
- return (React.createElement("button", { key: i, className: "btn btn--small", onClick: function () {
220
- _this.props.onChange((0, addDays_1.default)(new Date(), days));
221
- if (_this.instance != null
222
- && typeof _this.instance.hideOverlay === 'function') {
223
- _this.instance.hideOverlay();
224
- }
225
- } }, label));
226
- }))); }, appendTo: document.body, disabled: this.props.disabled, minDate: this.props.minDate, maxDate: this.props.maxDate, onBlur: function (event) {
218
+ }, locale: locale, dateFormat: this.props.dateFormat.replace('YYYY', 'yy').replace('MM', 'mm').replace('DD', 'dd'), showIcon: true, icon: "icon-calendar", headerTemplate: function () {
219
+ return _this.props.headerButtonBar == null ? null : (React.createElement("div", { className: "datepicker-header-toolbar" }, _this.props.headerButtonBar.map(function (_a, i) {
220
+ var label = _a.label, days = _a.days;
221
+ return (React.createElement("button", { key: i, className: "btn btn--small", onClick: function () {
222
+ _this.props.onChange((0, addDays_1.default)(new Date(), days));
223
+ if (_this.instance != null &&
224
+ typeof _this.instance.hideOverlay === 'function') {
225
+ _this.instance.hideOverlay();
226
+ }
227
+ } }, label));
228
+ })));
229
+ }, appendTo: document.body, disabled: this.props.disabled, minDate: this.props.minDate, maxDate: this.props.maxDate, onBlur: function (event) {
227
230
  // @ts-ignore: Object is possibly 'null'.
228
231
  if (!(event === null || event === void 0 ? void 0 : event.target.value)) {
229
232
  // @ts-ignore: Object is possibly 'null'.
@@ -1,7 +1,8 @@
1
- import * as React from "react";
2
- import { InputWrapper } from "./Form";
3
- import { IInputWrapper } from "./Form/InputWrapper";
4
- interface IProps extends IInputWrapper {
1
+ import * as React from 'react';
2
+ import { InputWrapper } from './Form';
3
+ import { IInputWrapper } from './Form/InputWrapper';
4
+ interface IPropsValueDate extends IInputWrapper {
5
+ valueType: 'date';
5
6
  value: Date | null;
6
7
  dateFormat: string;
7
8
  onChange: (value: Date | null) => void;
@@ -13,11 +14,32 @@ interface IProps extends IInputWrapper {
13
14
  ref?: React.LegacyRef<InputWrapper>;
14
15
  'data-test-id'?: string;
15
16
  }
17
+ type IValue = {
18
+ date?: string;
19
+ time?: string;
20
+ };
21
+ interface IPropsValueObject extends IInputWrapper {
22
+ valueType: 'object';
23
+ value: IValue;
24
+ dateFormat: string;
25
+ onChange: (value: IValue) => void;
26
+ preview?: boolean;
27
+ fullWidth?: boolean;
28
+ allowSeconds?: boolean;
29
+ required?: boolean;
30
+ disabled?: boolean;
31
+ ref?: React.LegacyRef<InputWrapper>;
32
+ 'data-test-id'?: string;
33
+ }
34
+ type IProps = IPropsValueDate | IPropsValueObject;
16
35
  export declare class DateTimePicker extends React.PureComponent<IProps> {
17
36
  private htmlId;
18
37
  handleTimeChange: (time: string) => void;
19
38
  handleDateChange: (date: Date | null) => void;
20
39
  prepareFormat(unitOfTime: number): string;
40
+ getTimeValue(): string;
41
+ getDateValue(): Date | null;
42
+ handleClear: () => void;
21
43
  render(): JSX.Element;
22
44
  }
23
45
  export {};