superdesk-ui-framework 3.0.1-beta.2 → 3.0.1-beta.22
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.
- package/.vscode/settings.json +5 -0
- package/app/fonts/sd_icons.eot +0 -0
- package/app/fonts/sd_icons.svg +14 -7
- package/app/fonts/sd_icons.ttf +0 -0
- package/app/fonts/sd_icons.woff +0 -0
- package/app/img/SD-logo.svg +52 -0
- package/app/scripts/toggleBoxNext.js +1 -1
- package/app/styles/_accessibility.scss +1 -0
- package/app/styles/_big-icon-font.scss +3 -0
- package/app/styles/_boxed-list.scss +3 -0
- package/app/styles/_buttons.scss +11 -6
- package/app/styles/_content-divider.scss +63 -8
- package/app/styles/_hamburger.scss +160 -0
- package/app/styles/_helpers.scss +35 -5
- package/app/styles/_icon-font.scss +20 -10
- package/app/styles/_master-desk.scss +3 -2
- package/app/styles/_modals.scss +6 -3
- package/app/styles/_normalize.scss +4 -0
- package/app/styles/_sd-tag-input.scss +221 -296
- package/app/styles/_simple-list.scss +1 -0
- package/app/styles/_table-list.scss +115 -12
- package/app/styles/app.scss +4 -0
- package/app/styles/components/_list-item.scss +36 -17
- package/app/styles/components/_sd-collapse-box.scss +6 -6
- package/app/styles/components/_sd-grid-item.scss +30 -16
- package/app/styles/components/_sd-notification-panel.scss +48 -0
- package/app/styles/components/_sd-photo-preview.scss +3 -3
- package/app/styles/components/_sd-searchbar.scss +7 -0
- package/app/styles/design-tokens/_design-tokens-general.scss +3 -6
- package/app/styles/design-tokens/_new-colors.scss +16 -6
- package/app/styles/dropdowns/_basic-dropdown.scss +6 -0
- package/app/styles/form-elements/_forms-general.scss +81 -7
- package/app/styles/form-elements/_input-wrap.scss +138 -0
- package/app/styles/form-elements/_inputs.scss +577 -102
- package/app/styles/grids/_grid-layout.scss +153 -40
- package/app/styles/interface-elements/_side-panel.scss +1 -1
- package/app/styles/layout/_basic-layout.scss +2 -2
- package/app/styles/layout/_editor.scss +10 -4
- package/app/styles/menus/_sd-bottom-tabs.scss +70 -0
- package/app/styles/menus/_sd-left-navigation.scss +24 -1
- package/app/styles/menus/_sd-sidebar-menu.scss +10 -14
- package/app/styles/menus/_sd-top-menu.scss +19 -5
- package/app/styles/primereact/_pr-dialog.scss +1 -0
- package/app/styles/primereact/_pr-dropdown.scss +17 -3
- package/app/styles/primereact/_pr-menu.scss +6 -5
- package/app-typescript/components/Badge.tsx +3 -2
- package/app-typescript/components/ContentDivider.tsx +3 -0
- package/app-typescript/components/DatePicker.tsx +71 -36
- package/app-typescript/components/DonutChart.tsx +1 -1
- package/app-typescript/components/Dropdown.tsx +127 -82
- package/app-typescript/components/DurationInput.tsx +400 -0
- package/app-typescript/components/EmptyState.tsx +2 -1
- package/app-typescript/components/Form/FormLabel.tsx +8 -1
- package/app-typescript/components/Form/FormRowNew.tsx +41 -0
- package/app-typescript/components/Form/InputBase.tsx +95 -0
- package/app-typescript/components/Form/InputNew.tsx +107 -0
- package/app-typescript/components/Form/InputWrapper.tsx +79 -0
- package/app-typescript/components/Form/index.tsx +4 -0
- package/app-typescript/components/Icon.tsx +1 -1
- package/app-typescript/components/IconButton.tsx +5 -1
- package/app-typescript/components/Input.tsx +39 -42
- package/app-typescript/components/Label.tsx +49 -10
- package/app-typescript/components/Layouts/AuthoringContainer.tsx +2 -1
- package/app-typescript/components/Layouts/AuthoringInnerHeader.tsx +1 -1
- package/app-typescript/components/Layouts/AuthoringMain.tsx +4 -2
- package/app-typescript/components/Layouts/BottomBarAction.tsx +35 -0
- package/app-typescript/components/Layouts/CoreLayout.tsx +63 -0
- package/app-typescript/components/Layouts/CoreLayoutContainer.tsx +16 -0
- package/app-typescript/components/Layouts/CoreLayoutFooter.tsx +15 -0
- package/app-typescript/components/Layouts/CoreLayoutMain.tsx +22 -0
- package/app-typescript/components/Layouts/CoreLayoutOverlay.tsx +15 -0
- package/app-typescript/components/Layouts/CoreLayoutSlideInMenu.tsx +24 -0
- package/app-typescript/components/Layouts/CoreLayoutTopMenu.tsx +35 -0
- package/app-typescript/components/Layouts/HamburgerButton.tsx +41 -0
- package/app-typescript/components/Layouts/Layout.tsx +2 -2
- package/app-typescript/components/Layouts/MainMenu.tsx +101 -0
- package/app-typescript/components/Layouts/NotificationPanel.tsx +109 -0
- package/app-typescript/components/Layouts/index.tsx +12 -0
- package/app-typescript/components/LeftMenu.tsx +127 -116
- package/app-typescript/components/Lists/BoxedList.tsx +36 -4
- package/app-typescript/components/Lists/ContentList.tsx +38 -10
- package/app-typescript/components/Lists/TableList.tsx +283 -151
- package/app-typescript/components/Menu.tsx +31 -7
- package/app-typescript/components/Modal.tsx +5 -2
- package/app-typescript/components/MultiSelect.tsx +35 -5
- package/app-typescript/components/NavButton.tsx +4 -0
- package/app-typescript/components/Navigation/BottomNav.tsx +83 -0
- package/app-typescript/components/SearchBar.tsx +39 -12
- package/app-typescript/components/Select.tsx +27 -37
- package/app-typescript/components/SelectGrid.tsx +1 -1
- package/app-typescript/components/SelectWithTemplate.tsx +32 -7
- package/app-typescript/components/Skeleton.tsx +1 -1
- package/app-typescript/components/Spacer.tsx +87 -0
- package/app-typescript/components/Text/Time.tsx +34 -0
- package/app-typescript/components/TimePicker.tsx +38 -15
- package/app-typescript/components/Togglebox.tsx +1 -1
- package/app-typescript/components/Tooltip.tsx +7 -5
- package/app-typescript/components/TreeSelect.tsx +490 -208
- package/app-typescript/components/WithSizeObserver.tsx +88 -0
- package/app-typescript/dist/components/Alert.d.ts +16 -0
- package/app-typescript/dist/components/Autocomplete.d.ts +48 -0
- package/app-typescript/dist/components/Avatar.d.ts +33 -0
- package/app-typescript/dist/components/Badge.d.ts +13 -0
- package/app-typescript/dist/components/Button.d.ts +23 -0
- package/app-typescript/dist/components/ButtonGroup.d.ts +12 -0
- package/app-typescript/dist/components/CheckButtonGroup.d.ts +11 -0
- package/app-typescript/dist/components/CheckGroup.d.ts +9 -0
- package/app-typescript/dist/components/Checkbox.d.ts +19 -0
- package/app-typescript/dist/components/CheckboxButton.d.ts +19 -0
- package/app-typescript/dist/components/DatePicker.d.ts +37 -0
- package/app-typescript/dist/components/Divider.d.ts +9 -0
- package/app-typescript/dist/components/DonutChart.d.ts +12 -0
- package/app-typescript/dist/components/Dropdown.d.ts +28 -0
- package/app-typescript/dist/components/DropdownFirst.d.ts +42 -0
- package/app-typescript/dist/components/EmptyState.d.ts +11 -0
- package/app-typescript/dist/components/FormLabel.d.ts +9 -0
- package/app-typescript/dist/components/Genie.d.ts +13 -0
- package/app-typescript/dist/components/GridItem.d.ts +69 -0
- package/app-typescript/dist/components/GridList.d.ts +14 -0
- package/app-typescript/dist/components/HeadingText.d.ts +10 -0
- package/app-typescript/dist/components/HelloWorld.d.ts +8 -0
- package/app-typescript/dist/components/Icon.d.ts +12 -0
- package/app-typescript/dist/components/IconButton.d.ts +12 -0
- package/app-typescript/dist/components/IconLabel.d.ts +11 -0
- package/app-typescript/dist/components/Input.d.ts +24 -0
- package/app-typescript/dist/components/Label.d.ts +15 -0
- package/app-typescript/dist/components/LeftMenu.d.ts +26 -0
- package/app-typescript/dist/components/Loader.d.ts +8 -0
- package/app-typescript/dist/components/NavButton.d.ts +15 -0
- package/app-typescript/dist/components/Popover.d.ts +13 -0
- package/app-typescript/dist/components/PropsList.d.ts +15 -0
- package/app-typescript/dist/components/Radio.d.ts +19 -0
- package/app-typescript/dist/components/RadioButton.d.ts +20 -0
- package/app-typescript/dist/components/Select.d.ts +29 -0
- package/app-typescript/dist/components/SelectWithTemplate.d.ts +32 -0
- package/app-typescript/dist/components/SlidingToolbar.d.ts +8 -0
- package/app-typescript/dist/components/StrechBar.d.ts +4 -0
- package/app-typescript/dist/components/SubNav.d.ts +10 -0
- package/app-typescript/dist/components/Switch.d.ts +12 -0
- package/app-typescript/dist/components/TabCustom.d.ts +25 -0
- package/app-typescript/dist/components/TabList.d.ts +22 -0
- package/app-typescript/dist/components/Tag.d.ts +9 -0
- package/app-typescript/dist/components/TagInput.d.ts +7 -0
- package/app-typescript/dist/components/TagInputTest.d.ts +18 -0
- package/app-typescript/dist/components/TimePicker.d.ts +11 -0
- package/app-typescript/dist/components/Tooltip.d.ts +11 -0
- package/app-typescript/dist/components/_Positioner.d.ts +27 -0
- package/app-typescript/dist/index.d.ts +56 -0
- package/app-typescript/helpers.tsx +3 -0
- package/app-typescript/index.ts +9 -1
- package/dist/SD-logo.svg +52 -0
- package/dist/examples.bundle.css +942 -9
- package/dist/examples.bundle.js +92935 -88376
- package/dist/playgrounds/accessible-theme-test.html +1 -1
- package/dist/playgrounds/layout-test-2.html +1 -1
- package/dist/playgrounds/list-item-test.html +1 -1
- package/dist/playgrounds/master-desk.html +1 -1
- package/dist/playgrounds/media-carousel.html +1 -1
- package/dist/playgrounds/photo-desk.html +1 -1
- package/dist/playgrounds/planning.html +1 -1
- package/dist/playgrounds/publish.html +1 -1
- package/dist/playgrounds/publisher-content-analytics.html +1 -1
- package/dist/playgrounds/publisher-content-list-automatic.html +1 -1
- package/dist/playgrounds/publisher-content-list-manual.html +1 -1
- package/dist/playgrounds/publisher-content-lists.html +1 -1
- package/dist/playgrounds/publisher-dashboard.html +1 -1
- package/dist/playgrounds/publisher-output-control.html +1 -1
- package/dist/playgrounds/react-playgrounds/CoreLayout.tsx +156 -0
- package/dist/playgrounds/react-playgrounds/Index.tsx +1 -0
- package/dist/playgrounds/react-playgrounds/RundownEditor.tsx +26 -23
- package/dist/playgrounds/react-playgrounds/Rundowns.tsx +20 -21
- package/dist/playgrounds/react-playgrounds/SamsPlayground.tsx +12 -3
- package/dist/playgrounds/react-playgrounds/TestGround.tsx +415 -25
- package/dist/playgrounds/react-playgrounds/components/Layout.tsx +2 -2
- package/dist/playgrounds/swimlane-view.html +1 -1
- package/dist/playgrounds/toasts.html +1 -1
- package/dist/playgrounds/video-editor.html +1 -1
- package/dist/react/Badges.tsx +18 -0
- package/dist/react/ContentDivider.tsx +22 -18
- package/dist/react/ContentList.tsx +200 -18
- package/dist/react/DatePicker.tsx +31 -6
- package/dist/react/Dropdowns.tsx +580 -48
- package/dist/react/DurationInput.tsx +108 -0
- package/dist/react/Index.tsx +10 -0
- package/dist/react/Inputs.tsx +256 -8
- package/dist/react/Labels.tsx +51 -1
- package/dist/react/LeftNavigations.tsx +71 -44
- package/dist/react/MultiSelect.tsx +10 -2
- package/dist/react/SelectWithTemplate.tsx +6 -1
- package/dist/react/Selects.tsx +55 -0
- package/dist/react/TableList.tsx +77 -186
- package/dist/react/TimePicker.tsx +22 -12
- package/dist/react/Togglebox.tsx +1 -1
- package/dist/react/TreeSelect.tsx +270 -48
- package/dist/react/WithSizeObserver.tsx +44 -0
- package/dist/react/tree-select/TreeSelect.tsx +273 -0
- package/dist/react/tree-select/example-1.tsx +71 -0
- package/dist/react/tree-select/example-2.tsx +59 -0
- package/dist/sd_icons.eot +0 -0
- package/dist/sd_icons.svg +14 -7
- package/dist/sd_icons.ttf +0 -0
- package/dist/sd_icons.woff +0 -0
- package/dist/superdesk-ui.bundle.css +4330 -639
- package/dist/superdesk-ui.bundle.js +75169 -58238
- package/dist/vendor.bundle.js +25027 -25027
- package/examples/index.js +4 -0
- package/examples/pages/playgrounds/accessible-theme-test.html +1 -1
- package/examples/pages/playgrounds/layout-test-2.html +1 -1
- package/examples/pages/playgrounds/list-item-test.html +1 -1
- package/examples/pages/playgrounds/master-desk.html +1 -1
- package/examples/pages/playgrounds/media-carousel.html +1 -1
- package/examples/pages/playgrounds/photo-desk.html +1 -1
- package/examples/pages/playgrounds/planning.html +1 -1
- package/examples/pages/playgrounds/publish.html +1 -1
- package/examples/pages/playgrounds/publisher-content-analytics.html +1 -1
- package/examples/pages/playgrounds/publisher-content-list-automatic.html +1 -1
- package/examples/pages/playgrounds/publisher-content-list-manual.html +1 -1
- package/examples/pages/playgrounds/publisher-content-lists.html +1 -1
- package/examples/pages/playgrounds/publisher-dashboard.html +1 -1
- package/examples/pages/playgrounds/publisher-output-control.html +1 -1
- package/examples/pages/playgrounds/react-playgrounds/CoreLayout.tsx +156 -0
- package/examples/pages/playgrounds/react-playgrounds/Index.tsx +1 -0
- package/examples/pages/playgrounds/react-playgrounds/RundownEditor.tsx +26 -23
- package/examples/pages/playgrounds/react-playgrounds/Rundowns.tsx +20 -21
- package/examples/pages/playgrounds/react-playgrounds/SamsPlayground.tsx +12 -3
- package/examples/pages/playgrounds/react-playgrounds/TestGround.tsx +415 -25
- package/examples/pages/playgrounds/react-playgrounds/components/Layout.tsx +2 -2
- package/examples/pages/playgrounds/swimlane-view.html +1 -1
- package/examples/pages/playgrounds/toasts.html +1 -1
- package/examples/pages/playgrounds/video-editor.html +1 -1
- package/examples/pages/react/Badges.tsx +18 -0
- package/examples/pages/react/ContentDivider.tsx +22 -18
- package/examples/pages/react/ContentList.tsx +200 -18
- package/examples/pages/react/DatePicker.tsx +31 -6
- package/examples/pages/react/Dropdowns.tsx +580 -48
- package/examples/pages/react/DurationInput.tsx +108 -0
- package/examples/pages/react/Index.tsx +10 -0
- package/examples/pages/react/Inputs.tsx +256 -8
- package/examples/pages/react/Labels.tsx +51 -1
- package/examples/pages/react/LeftNavigations.tsx +71 -44
- package/examples/pages/react/MultiSelect.tsx +10 -2
- package/examples/pages/react/SelectWithTemplate.tsx +6 -1
- package/examples/pages/react/Selects.tsx +55 -0
- package/examples/pages/react/TableList.tsx +77 -186
- package/examples/pages/react/TimePicker.tsx +22 -12
- package/examples/pages/react/Togglebox.tsx +1 -1
- package/examples/pages/react/TreeSelect.tsx +270 -48
- package/examples/pages/react/WithSizeObserver.tsx +44 -0
- package/examples/pages/react/tree-select/TreeSelect.tsx +273 -0
- package/examples/pages/react/tree-select/example-1.tsx +71 -0
- package/examples/pages/react/tree-select/example-2.tsx +59 -0
- package/package.json +8 -8
- package/react/components/Alert.js +10 -8
- package/react/components/Autocomplete.js +16 -12
- package/react/components/Avatar.js +8 -6
- package/react/components/Badge.d.ts +1 -0
- package/react/components/Badge.js +9 -7
- package/react/components/Button.js +8 -6
- package/react/components/ButtonGroup.js +7 -5
- package/react/components/Carousel.js +4 -2
- package/react/components/CheckButtonGroup.js +6 -4
- package/react/components/CheckGroup.js +5 -3
- package/react/components/Checkbox.js +5 -3
- package/react/components/CheckboxButton.js +6 -4
- package/react/components/ContentDivider.d.ts +1 -0
- package/react/components/ContentDivider.js +10 -6
- package/react/components/CreateButton.js +6 -4
- package/react/components/DatePicker.d.ts +11 -0
- package/react/components/DatePicker.js +44 -35
- package/react/components/Divider.js +6 -4
- package/react/components/DonutChart.d.ts +1 -1
- package/react/components/DonutChart.js +24 -6
- package/react/components/DropZone.js +6 -4
- package/react/components/Dropdown.d.ts +6 -5
- package/react/components/Dropdown.js +63 -35
- package/react/components/DropdownFirst.js +18 -11
- package/react/components/DurationInput.d.ts +42 -0
- package/react/components/DurationInput.js +364 -0
- package/react/components/EmptyState.d.ts +1 -0
- package/react/components/EmptyState.js +8 -6
- package/react/components/Form/FormGroup.js +7 -5
- package/react/components/Form/FormItem.js +5 -3
- package/react/components/Form/FormLabel.d.ts +4 -1
- package/react/components/Form/FormLabel.js +13 -5
- package/react/components/Form/FormRow.js +5 -3
- package/react/components/Form/FormRowNew.d.ts +12 -0
- package/react/components/Form/FormRowNew.js +67 -0
- package/react/components/Form/FormText.js +4 -2
- package/react/components/Form/InputBase.d.ts +41 -0
- package/react/components/Form/InputBase.js +86 -0
- package/react/components/Form/InputNew.d.ts +45 -0
- package/react/components/Form/InputNew.js +75 -0
- package/react/components/Form/InputWrapper.d.ts +28 -0
- package/react/components/Form/InputWrapper.js +91 -0
- package/react/components/Form/index.d.ts +4 -0
- package/react/components/Form/index.js +9 -0
- package/react/components/FormLabel.js +5 -3
- package/react/components/GridItem.js +9 -7
- package/react/components/GridList.js +8 -6
- package/react/components/HeadingText.js +4 -2
- package/react/components/HelloWorld.js +4 -2
- package/react/components/Icon.d.ts +1 -1
- package/react/components/Icon.js +9 -7
- package/react/components/IconButton.js +8 -6
- package/react/components/IconLabel.js +7 -5
- package/react/components/IconPicker.js +13 -9
- package/react/components/Input.d.ts +6 -2
- package/react/components/Input.js +16 -31
- package/react/components/Label.d.ts +1 -0
- package/react/components/Label.js +28 -10
- package/react/components/Layouts/AuthorinInnerSideBar.js +4 -2
- package/react/components/Layouts/AuthoringContainer.d.ts +1 -0
- package/react/components/Layouts/AuthoringContainer.js +8 -6
- package/react/components/Layouts/AuthoringFrame.js +4 -2
- package/react/components/Layouts/AuthoringFrameContainer.js +4 -2
- package/react/components/Layouts/AuthoringFrameLeftBar.js +4 -2
- package/react/components/Layouts/AuthoringFrameMain.js +4 -2
- package/react/components/Layouts/AuthoringFrameNavBar.js +4 -2
- package/react/components/Layouts/AuthoringFrameOverlay.js +4 -2
- package/react/components/Layouts/AuthoringFrameRightBar.js +4 -2
- package/react/components/Layouts/AuthoringFrameSidePanel.js +5 -3
- package/react/components/Layouts/AuthoringFrameSidePanelOverlay.js +5 -3
- package/react/components/Layouts/AuthoringInnerBody.js +4 -2
- package/react/components/Layouts/AuthoringInnerHeader.js +7 -5
- package/react/components/Layouts/AuthoringMain.js +5 -3
- package/react/components/Layouts/AuthoringMainContainer.js +4 -2
- package/react/components/Layouts/AuthoringMainContent.js +4 -2
- package/react/components/Layouts/AuthoringMainToolBar.js +5 -3
- package/react/components/Layouts/BottomBarAction.d.ts +12 -0
- package/react/components/Layouts/BottomBarAction.js +59 -0
- package/react/components/Layouts/Container.js +9 -7
- package/react/components/Layouts/ContentSplitter.js +6 -4
- package/react/components/Layouts/CoreLayout.d.ts +20 -0
- package/react/components/Layouts/CoreLayout.js +55 -0
- package/react/components/Layouts/CoreLayoutContainer.d.ts +9 -0
- package/react/components/Layouts/CoreLayoutContainer.js +49 -0
- package/react/components/Layouts/CoreLayoutFooter.d.ts +8 -0
- package/react/components/Layouts/CoreLayoutFooter.js +49 -0
- package/react/components/Layouts/CoreLayoutMain.d.ts +10 -0
- package/react/components/Layouts/CoreLayoutMain.js +56 -0
- package/react/components/Layouts/CoreLayoutOverlay.d.ts +8 -0
- package/react/components/Layouts/CoreLayoutOverlay.js +49 -0
- package/react/components/Layouts/CoreLayoutSlideInMenu.d.ts +11 -0
- package/react/components/Layouts/CoreLayoutSlideInMenu.js +58 -0
- package/react/components/Layouts/CoreLayoutTopMenu.d.ts +14 -0
- package/react/components/Layouts/CoreLayoutTopMenu.js +54 -0
- package/react/components/Layouts/HamburgerButton.d.ts +14 -0
- package/react/components/Layouts/HamburgerButton.js +63 -0
- package/react/components/Layouts/HeaderPanel.js +4 -2
- package/react/components/Layouts/Layout.js +4 -3
- package/react/components/Layouts/LayoutContainer.js +4 -2
- package/react/components/Layouts/LeftPanel.js +5 -3
- package/react/components/Layouts/MainMenu.d.ts +41 -0
- package/react/components/Layouts/MainMenu.js +103 -0
- package/react/components/Layouts/MainPanel.js +5 -3
- package/react/components/Layouts/NotificationPanel.d.ts +45 -0
- package/react/components/Layouts/NotificationPanel.js +110 -0
- package/react/components/Layouts/OverlayPanel.js +4 -2
- package/react/components/Layouts/PageLayout.js +4 -2
- package/react/components/Layouts/Panel.js +16 -14
- package/react/components/Layouts/RightPanel.js +4 -2
- package/react/components/Layouts/index.d.ts +11 -0
- package/react/components/Layouts/index.js +23 -0
- package/react/components/LeftMenu.d.ts +5 -1
- package/react/components/LeftMenu.js +27 -13
- package/react/components/ListItemLoader.js +4 -2
- package/react/components/Lists/BoxedList.d.ts +6 -0
- package/react/components/Lists/BoxedList.js +36 -15
- package/react/components/Lists/ContentList.d.ts +50 -0
- package/react/components/Lists/ContentList.js +106 -0
- package/react/components/Lists/SimpleList.js +9 -7
- package/react/components/Lists/TableList.d.ts +62 -0
- package/react/components/Lists/TableList.js +208 -0
- package/react/components/Lists/index.js +1 -0
- package/react/components/Loader.js +4 -2
- package/react/components/Menu.d.ts +2 -1
- package/react/components/Menu.js +48 -12
- package/react/components/Modal.d.ts +2 -1
- package/react/components/Modal.js +30 -9
- package/react/components/MultiSelect.d.ts +40 -0
- package/react/components/MultiSelect.js +70 -0
- package/react/components/NavButton.d.ts +1 -0
- package/react/components/NavButton.js +9 -4
- package/react/components/Navigation/BottomNav.d.ts +24 -0
- package/react/components/Navigation/BottomNav.js +88 -0
- package/react/components/Navigation/QuickNavBar.js +13 -9
- package/react/components/Navigation/SideBarMenu.js +4 -2
- package/react/components/Navigation/SideBarTabs.js +4 -2
- package/react/components/Navigation/index.js +1 -0
- package/react/components/Popover.js +4 -2
- package/react/components/PropsList.js +4 -2
- package/react/components/RadioButtonGroup.js +9 -7
- package/react/components/RadioGroup.js +6 -4
- package/react/components/SearchBar.d.ts +3 -2
- package/react/components/SearchBar.js +34 -8
- package/react/components/Select.d.ts +5 -1
- package/react/components/Select.js +9 -23
- package/react/components/SelectGrid.d.ts +1 -1
- package/react/components/SelectGrid.js +44 -23
- package/react/components/SelectWithTemplate.d.ts +11 -1
- package/react/components/SelectWithTemplate.js +23 -12
- package/react/components/Skeleton.d.ts +1 -1
- package/react/components/Skeleton.js +26 -5
- package/react/components/SlidingToolbar.js +6 -4
- package/react/components/Spinner.js +6 -4
- package/react/components/StrechBar.js +4 -2
- package/react/components/SubNav.js +9 -7
- package/react/components/Switch.js +6 -4
- package/react/components/SwitchGroup.js +5 -3
- package/react/components/TabCustom.js +11 -7
- package/react/components/TabList.js +6 -4
- package/react/components/Tag.js +5 -4
- package/react/components/TagInput.js +7 -6
- package/react/components/TagInputTest.js +13 -9
- package/react/components/Text/Heading.js +10 -8
- package/react/components/Text/Text.js +10 -8
- package/react/components/Text/Time.d.ts +15 -0
- package/react/components/Text/Time.js +65 -0
- package/react/components/ThemeSelector.js +7 -5
- package/react/components/TimePicker.d.ts +11 -1
- package/react/components/TimePicker.js +14 -5
- package/react/components/Toast.js +1 -1
- package/react/components/ToastMessage.js +6 -5
- package/react/components/ToastText.js +1 -1
- package/react/components/ToastWrapper.d.ts +2 -2
- package/react/components/ToastWrapper.js +14 -10
- package/react/components/Togglebox.d.ts +1 -1
- package/react/components/Togglebox.js +36 -15
- package/react/components/Tooltip.d.ts +1 -0
- package/react/components/Tooltip.js +14 -10
- package/react/components/TreeSelect.d.ts +80 -0
- package/react/components/TreeSelect.js +494 -0
- package/react/components/WithSizeObserver.d.ts +25 -0
- package/react/components/WithSizeObserver.js +95 -0
- package/react/components/_Positioner.js +4 -2
- package/react/helpers.d.ts +1 -0
- package/react/helpers.js +7 -0
- package/react/index.d.ts +9 -0
- package/react/index.js +23 -2
- package/yarn-error.log +111 -0
- package/patches/@superdesk+primereact+5.0.2-4.patch +0 -13
- package/sd_icons.eot +0 -0
- package/sd_icons.svg +0 -189
- package/sd_icons.ttf +0 -0
- package/sd_icons.woff +0 -0
@@ -2,72 +2,201 @@ import * as React from 'react';
|
|
2
2
|
import * as Markup from '../../js/react';
|
3
3
|
import { PropsList, Prop } from '../../../app-typescript';
|
4
4
|
import { MultiSelect } from '../../../app-typescript/components/MultiSelect';
|
5
|
-
import { TreeSelect } from '../../../app-typescript/components/TreeSelect';
|
5
|
+
import { ITreeNode, TreeSelect } from '../../../app-typescript/components/TreeSelect';
|
6
6
|
|
7
7
|
interface IState {
|
8
8
|
value: any;
|
9
9
|
value2: any;
|
10
10
|
options: any;
|
11
11
|
options2: any;
|
12
|
+
inputValue: string;
|
13
|
+
arr: any;
|
12
14
|
}
|
13
15
|
|
14
16
|
let itemArr = [
|
15
17
|
{
|
16
|
-
|
17
|
-
|
18
|
+
value: 'Category1',
|
19
|
+
children: [
|
18
20
|
{
|
19
|
-
|
20
|
-
|
21
|
-
{
|
21
|
+
value: 'Sub-Category1',
|
22
|
+
children: [
|
23
|
+
{value: 'Item10'}
|
22
24
|
]
|
23
25
|
},
|
24
26
|
{
|
25
|
-
|
26
|
-
|
27
|
-
{
|
27
|
+
value: 'Sub-Category2',
|
28
|
+
children: [
|
29
|
+
{value: 'Item11'}
|
28
30
|
]
|
29
31
|
}
|
30
32
|
]
|
31
33
|
},
|
32
34
|
{
|
33
|
-
|
34
|
-
|
35
|
+
value: 'Category2',
|
36
|
+
children: [
|
35
37
|
{
|
36
|
-
|
38
|
+
value: 'Sub-Category3'
|
37
39
|
},
|
38
40
|
{
|
39
|
-
|
41
|
+
value: 'Sub-Category4'
|
40
42
|
}
|
41
43
|
]
|
42
44
|
},
|
43
45
|
{
|
44
|
-
|
45
|
-
|
46
|
+
value: 'Category3',
|
47
|
+
children: [
|
46
48
|
{
|
47
|
-
|
49
|
+
value: 'Sub-Category5'
|
48
50
|
},
|
49
51
|
{
|
50
|
-
|
52
|
+
value: 'Sub-Category6'
|
51
53
|
}
|
52
54
|
]
|
53
55
|
},
|
54
56
|
]
|
55
57
|
|
58
|
+
let itemArr2 = [
|
59
|
+
{
|
60
|
+
value: {name: 'Category1'},
|
61
|
+
children: [
|
62
|
+
{
|
63
|
+
value: {name: 'Sub-category1'},
|
64
|
+
children: [
|
65
|
+
{value: {name: 'Item20'}}
|
66
|
+
]
|
67
|
+
},
|
68
|
+
{
|
69
|
+
value: {name: 'Sub-category2'},
|
70
|
+
children: [
|
71
|
+
{value: {name: 'Item21'}}
|
72
|
+
]
|
73
|
+
}
|
74
|
+
,
|
75
|
+
{
|
76
|
+
value: {name: 'Sub-category3'},
|
77
|
+
children: [
|
78
|
+
{value: {name: 'Item22'}}
|
79
|
+
]
|
80
|
+
}
|
81
|
+
,
|
82
|
+
{
|
83
|
+
value: {name: 'Sub-category4'},
|
84
|
+
children: [
|
85
|
+
{value: {name: 'Item23'}}
|
86
|
+
]
|
87
|
+
}
|
88
|
+
,
|
89
|
+
{
|
90
|
+
value: {name: 'Sub-category5'},
|
91
|
+
children: [
|
92
|
+
{value: {name: 'Item24'}}
|
93
|
+
]
|
94
|
+
}
|
95
|
+
,
|
96
|
+
{
|
97
|
+
value: {name: 'Sub-category6'},
|
98
|
+
children: [
|
99
|
+
{value: {name: 'Item25'}}
|
100
|
+
]
|
101
|
+
}
|
102
|
+
]
|
103
|
+
},
|
104
|
+
{
|
105
|
+
value: {name: 'Category2'},
|
106
|
+
children: [
|
107
|
+
{
|
108
|
+
value: {name: 'Item8'}
|
109
|
+
},
|
110
|
+
{
|
111
|
+
value: {name: 'Item9'}
|
112
|
+
}
|
113
|
+
]
|
114
|
+
},
|
115
|
+
{
|
116
|
+
value: {name: 'Category3'},
|
117
|
+
children: [
|
118
|
+
{
|
119
|
+
value: {name: 'Item10'}
|
120
|
+
},
|
121
|
+
{
|
122
|
+
value: {name: 'Item11'}
|
123
|
+
}
|
124
|
+
]
|
125
|
+
},
|
126
|
+
]
|
127
|
+
|
128
|
+
const source = [
|
129
|
+
{
|
130
|
+
'name': 'Article (news)',
|
131
|
+
'qcode': 'Article (news)',
|
132
|
+
},
|
133
|
+
{
|
134
|
+
'name': 'Article',
|
135
|
+
'qcode': 'Article',
|
136
|
+
},
|
137
|
+
{
|
138
|
+
'name': 'Sidebar',
|
139
|
+
'qcode': 'Sidebar',
|
140
|
+
},
|
141
|
+
{
|
142
|
+
'name': 'Factbox',
|
143
|
+
'qcode': 'Factbox',
|
144
|
+
},
|
145
|
+
{
|
146
|
+
'name': 'Item',
|
147
|
+
'qcode': 'Item',
|
148
|
+
},
|
149
|
+
{
|
150
|
+
'name': 'Array',
|
151
|
+
'qcode': 'Array',
|
152
|
+
},
|
153
|
+
{
|
154
|
+
'name': 'Object',
|
155
|
+
'qcode': 'Object',
|
156
|
+
},
|
157
|
+
];
|
158
|
+
|
159
|
+
let fetchedArr = [];
|
160
|
+
fetch('https://nominatim.openstreetmap.org/search/berlin?format=json&addressdetails=1&limit=20').then(response => response.json()).then(data => fetchedArr = data
|
161
|
+
);
|
162
|
+
|
163
|
+
type ICancelFn = () => void;
|
164
|
+
|
165
|
+
function searchOptions(
|
166
|
+
term: string,
|
167
|
+
callback: (res: any) => void,
|
168
|
+
): ICancelFn {
|
169
|
+
let timeout = setTimeout(() => {
|
170
|
+
|
171
|
+
callback(
|
172
|
+
fetchedArr
|
173
|
+
.filter((item: any) => item.display_name.toLocaleLowerCase().includes(term.toLocaleLowerCase()))
|
174
|
+
.map((item) => ({value: item})),
|
175
|
+
);
|
176
|
+
}, 1000);
|
177
|
+
|
178
|
+
return () => {
|
179
|
+
clearTimeout(timeout);
|
180
|
+
}
|
181
|
+
}
|
182
|
+
|
56
183
|
export class TreeSelectDocs extends React.Component<{}, IState> {
|
57
184
|
constructor(props) {
|
58
185
|
super(props);
|
59
186
|
this.state = {
|
60
187
|
value: [],
|
61
188
|
value2: [],
|
62
|
-
options:
|
63
|
-
options2:
|
189
|
+
options: itemArr2,
|
190
|
+
options2: itemArr2,
|
191
|
+
inputValue: '',
|
192
|
+
arr: []
|
64
193
|
}
|
194
|
+
|
65
195
|
|
66
196
|
this.handleChange = this.handleChange.bind(this);
|
67
197
|
}
|
68
198
|
|
69
199
|
handleChange(e, option) {
|
70
|
-
|
71
200
|
if(option.item) {
|
72
201
|
e.stopPropagation();
|
73
202
|
e.preventDefault();
|
@@ -75,7 +204,7 @@ export class TreeSelectDocs extends React.Component<{}, IState> {
|
|
75
204
|
this.setState({
|
76
205
|
options: option.item
|
77
206
|
})
|
78
|
-
}
|
207
|
+
}
|
79
208
|
}
|
80
209
|
|
81
210
|
render() {
|
@@ -99,11 +228,21 @@ export class TreeSelectDocs extends React.Component<{}, IState> {
|
|
99
228
|
<div className='docs-page__content-row docs-page__content-row--no-margin'>
|
100
229
|
<div className='form__row'>
|
101
230
|
<TreeSelect
|
102
|
-
|
103
|
-
getLabel={
|
104
|
-
|
231
|
+
getId={(item) => item.name}
|
232
|
+
getLabel={(item) => item.name}
|
233
|
+
getOptions={() => itemArr2}
|
234
|
+
value={[{name: 'Item1'}, {name: 'Item2'}]}
|
105
235
|
selectBranchWithChildren={true}
|
106
|
-
onChange={() =>
|
236
|
+
onChange={(e) => console.log(e)}
|
237
|
+
allowMultiple
|
238
|
+
kind={'synchronous'}
|
239
|
+
fullWidth
|
240
|
+
info={'Info Message'}
|
241
|
+
error={'Error Message'}
|
242
|
+
required
|
243
|
+
label={'TreeSelect Label'}
|
244
|
+
singleLevelSearch
|
245
|
+
searchPlaceholder='Search...'
|
107
246
|
/>
|
108
247
|
</div>
|
109
248
|
</div>
|
@@ -111,31 +250,87 @@ export class TreeSelectDocs extends React.Component<{}, IState> {
|
|
111
250
|
|
112
251
|
<Markup.ReactMarkupCode>{`
|
113
252
|
<TreeSelect
|
114
|
-
|
115
|
-
getLabel={
|
116
|
-
|
253
|
+
getId={(item) => item.name}
|
254
|
+
getLabel={(item) => item.name}
|
255
|
+
getOptions={() => {
|
256
|
+
return itemArr2
|
257
|
+
}}
|
258
|
+
value={[{name: 'Item1'}, {name: 'Item2'}]}
|
117
259
|
selectBranchWithChildren={true}
|
118
|
-
onChange={() =>
|
260
|
+
onChange={(e) => console.log(e)}
|
261
|
+
allowMultiple
|
262
|
+
kind={'synchronous'}
|
263
|
+
fullWidth
|
264
|
+
info={'Info Message'}
|
265
|
+
error={'Error Message'}
|
266
|
+
required
|
267
|
+
label={'TreeSelect Label'}
|
268
|
+
/>
|
269
|
+
`}</Markup.ReactMarkupCode>
|
270
|
+
|
271
|
+
</Markup.ReactMarkup>
|
272
|
+
|
273
|
+
<p className='docs-page__paragraph'>Asynchronous mode in TreeSelect component.</p>
|
274
|
+
<Markup.ReactMarkup>
|
275
|
+
<Markup.ReactMarkupPreview>
|
276
|
+
<div className='docs-page__content-row docs-page__content-row--no-margin'>
|
277
|
+
<div className='form__row'>
|
278
|
+
<TreeSelect
|
279
|
+
kind="asynchronous"
|
280
|
+
searchOptions={searchOptions}
|
281
|
+
value={this.state.value}
|
282
|
+
onChange={(val) => {
|
283
|
+
this.setState({value: val});
|
284
|
+
}}
|
285
|
+
getLabel={({display_name}) => display_name
|
286
|
+
}
|
287
|
+
getId={({qcode}) => qcode.display_name}
|
288
|
+
selectBranchWithChildren={false}
|
289
|
+
//optionTemplate={(item) => <span style={{color: 'blue'}}>{item.display_name}</span>}
|
290
|
+
allowMultiple={true}
|
291
|
+
/>
|
292
|
+
</div>
|
293
|
+
</div>
|
294
|
+
</Markup.ReactMarkupPreview>
|
295
|
+
|
296
|
+
<Markup.ReactMarkupCode>{`
|
297
|
+
<TreeSelect
|
298
|
+
kind="asynchronous"
|
299
|
+
searchOptions={searchOptions}
|
300
|
+
value={this.state.value}
|
301
|
+
onChange={(val) => {
|
302
|
+
this.setState({value: val});
|
303
|
+
}}
|
304
|
+
getLabel={({name}) => name}
|
305
|
+
getId={({qcode}) => qcode}
|
306
|
+
selectBranchWithChildren={false}
|
307
|
+
optionTemplate={(item) => <span style={{color: 'blue'}}>{item.name}</span>}
|
308
|
+
allowMultiple={true}
|
119
309
|
/>
|
120
310
|
`}</Markup.ReactMarkupCode>
|
121
311
|
|
122
312
|
</Markup.ReactMarkup>
|
313
|
+
|
123
314
|
<p className='docs-page__paragraph'>TreeSelect with custom template.</p>
|
124
315
|
<Markup.ReactMarkup>
|
125
316
|
<Markup.ReactMarkupPreview>
|
126
317
|
<div className='docs-page__content-row docs-page__content-row--no-margin'>
|
127
318
|
<div className='form__row'>
|
128
319
|
<TreeSelect
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
320
|
+
getId={(item) => item.name}
|
321
|
+
getLabel={(item) => item.name}
|
322
|
+
placeholder='Select one'
|
323
|
+
getOptions={() => this.state.options}
|
324
|
+
kind={'synchronous'}
|
325
|
+
onChange={(e) => console.log(e)}
|
133
326
|
optionTemplate={(item: any) => {
|
134
|
-
return <div>Label: {item.
|
327
|
+
return <div>Label: {item.name}</div>
|
135
328
|
}}
|
136
329
|
valueTemplate={(item: any) => {
|
137
|
-
return <span>Label: {item.
|
330
|
+
return <span>Label: {item.name}</span>
|
138
331
|
}}
|
332
|
+
//allowMultiple
|
333
|
+
//readOnly
|
139
334
|
/>
|
140
335
|
</div>
|
141
336
|
</div>
|
@@ -143,16 +338,18 @@ export class TreeSelectDocs extends React.Component<{}, IState> {
|
|
143
338
|
|
144
339
|
<Markup.ReactMarkupCode>{`
|
145
340
|
<TreeSelect
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
341
|
+
getId={(item) => item.name}
|
342
|
+
getLabel={(item) => item.name}
|
343
|
+
value={[{name: 'Item4'}, {name: 'Item10'}]}
|
344
|
+
getOptions={() => this.state.options}
|
345
|
+
kind={'synchronous'}
|
346
|
+
onChange={(e) => console.log(e)}
|
150
347
|
optionTemplate={(item: any) => {
|
151
|
-
return <div>Label: {item.
|
348
|
+
return <div>Label: {item.name}</div>
|
152
349
|
}}
|
153
350
|
valueTemplate={(item: any) => {
|
154
|
-
return <span>Label: {item.
|
155
|
-
}}
|
351
|
+
return <span>Label: {item.name}</span>
|
352
|
+
}}
|
156
353
|
/>
|
157
354
|
`}</Markup.ReactMarkupCode>
|
158
355
|
|
@@ -161,15 +358,40 @@ export class TreeSelectDocs extends React.Component<{}, IState> {
|
|
161
358
|
<h3 className="docs-page__h3">Props</h3>
|
162
359
|
<PropsList>
|
163
360
|
<Prop name='value' isRequired={false} type='Array<T>' default='/' description='Value of the component.'/>
|
164
|
-
<Prop name='
|
165
|
-
<Prop name='
|
166
|
-
<Prop name='getMultilevelArray' isRequired={true} type='string' default='/' description='Name of the children array of an option.'/>
|
361
|
+
<Prop name='getOptions' isRequired={true} type='Function' default='/' description='An array of selectitems to display as the available options.'/>
|
362
|
+
<Prop name='kind' isRequired={true} type='synchronous | asynchronous' default='/' description='Type of TreeSelect component.'/>
|
167
363
|
<Prop name='width' isRequired={false} type='medium | full-width (100%)' default='100%' description='Dropdown width.'/>
|
168
364
|
<Prop name='selectBranchWithChildren' isRequired={false} type='boolean' default='false' description='When specified, select branch with children is enabled.'/>
|
169
365
|
<Prop name='readonly' isRequired={false} type='boolean' default='false' description='When specified, component changes are not enabled.'/>
|
170
|
-
<Prop name='
|
171
|
-
<Prop name='
|
172
|
-
<Prop name='
|
366
|
+
<Prop name='loading' isRequired={false} type='boolean' default='false' description='Adds a loading indicator in dropdown.'/>
|
367
|
+
<Prop name='allowMultiple' isRequired={false} type='boolean' default='/' description='Enable multi-select mode.'/>
|
368
|
+
<Prop name='singleLevelSearch' isRequired={false} type='boolean' default='/' description='Limit search to only the level that is displayed.'/>
|
369
|
+
<Prop name='placeholder' isRequired={false} type='string' default='/' description='Placeholder of component in single select mode.'/>
|
370
|
+
<Prop name='searchPlaceholder' isRequired={false} type='string' default='/' description='Filter input placeholder.'/>
|
371
|
+
<Prop name='getLabel' isRequired={true} type='Function' default='/' description='Callback to invoke when value changes.'/>
|
372
|
+
<Prop name='getId' isRequired={true} type='Function' default='/' description='Callback to invoke when value changes.'/>
|
373
|
+
<Prop name='valueTemplate' isRequired={false} type='Function' default='/' description='Function that gets an item in the value and returns the content for it.'/>
|
374
|
+
<Prop name='optionTemplate' isRequired={false} type='Function' default='/' description='Function that gets the option and returns the content for it.'/>
|
375
|
+
<Prop name='searchOptions' isRequired={false} type='Function' default='/' description='The function will be called when a search is initiated from UI in asynchronous mode.'/>
|
376
|
+
<Prop name='onChange' isRequired={true} type='Function' default='/' description='Callback to invoke when value changes.'/>
|
377
|
+
<Prop name='label' isRequired={false} type='string' default='/' description='Input label'/>
|
378
|
+
<Prop name='info' isRequired={false} type='string' default='/' description='Hint text'/>
|
379
|
+
<Prop name='error' isRequired={false} type='string' default='/' description='Error text'/>
|
380
|
+
<Prop name='inlineLabel' isRequired={false} type='boolean' default='false' description='Position labels as inline'/>
|
381
|
+
<Prop name='required' isRequired={false} type='boolean' default='false' description='Mark field as required'/>
|
382
|
+
<Prop name='disabled' isRequired={false} type='boolean' default='false' description='Mark field as disabled'/>
|
383
|
+
<Prop name='invalid' isRequired={false} type='boolean' default='false' description='Mark field as invalid'/>
|
384
|
+
</PropsList>
|
385
|
+
|
386
|
+
<p className='docs-page__paragraph'>synchronous:</p>
|
387
|
+
<PropsList>
|
388
|
+
<Prop name='getOptions' isRequired={false} type='Function' default='/' description='An array of selectitems to display as the available options.'/>
|
389
|
+
</PropsList>
|
390
|
+
|
391
|
+
<p className='docs-page__paragraph'>asynchronous:</p>
|
392
|
+
<PropsList>
|
393
|
+
<Prop name='getOptions' isRequired={false} type='Function' default='/' description='An array of selectitems to display as the available options.'/>
|
394
|
+
<Prop name='searchOptions' isRequired={false} type='Function' default='/' description='function will be called when a search is initiated from UI.'/>
|
173
395
|
</PropsList>
|
174
396
|
|
175
397
|
</section>
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import * as Markup from '../../js/react';
|
3
|
+
import {WithSizeObserver} from '../../../app-typescript/components/WithSizeObserver';
|
4
|
+
|
5
|
+
export class WithSizeObserverDocs extends React.Component {
|
6
|
+
render() {
|
7
|
+
return (
|
8
|
+
<section className='docs-page__container'>
|
9
|
+
|
10
|
+
<h2 className='docs-page__h2'>WithSizeObserver</h2>
|
11
|
+
|
12
|
+
<p>Higher order component for dynamically retrieving dimensions of any element.</p>
|
13
|
+
|
14
|
+
<p>It uses `ResizeObserver` to listen for updates and re-render children efficiently.</p>
|
15
|
+
|
16
|
+
<p className='docs-page__paragraph'></p>
|
17
|
+
<Markup.ReactMarkup>
|
18
|
+
<Markup.ReactMarkupPreview>
|
19
|
+
<div className='docs-page__content-row docs-page__content-row--no-margin'>
|
20
|
+
<div className='form__row'>
|
21
|
+
<div style={{resize: 'both', overflow: 'auto', height: 40, outline: '1px solid red'}}>
|
22
|
+
<WithSizeObserver>
|
23
|
+
{({width, height}) => (
|
24
|
+
<div>width: {width}px ; height: {height}px</div>
|
25
|
+
)}
|
26
|
+
</WithSizeObserver>
|
27
|
+
</div>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
|
31
|
+
</Markup.ReactMarkupPreview>
|
32
|
+
|
33
|
+
<Markup.ReactMarkupCode>{`
|
34
|
+
<WithSizeObserver>
|
35
|
+
{({width, height}) => (
|
36
|
+
<div>width: {width}px ; height: {height}px</div>
|
37
|
+
)}
|
38
|
+
</WithSizeObserver>
|
39
|
+
`}</Markup.ReactMarkupCode>
|
40
|
+
</Markup.ReactMarkup>
|
41
|
+
</section>
|
42
|
+
)
|
43
|
+
}
|
44
|
+
}
|