superdesk-ui-framework 2.4.21 → 3.0.1-beta.2
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/app/fonts/sd_big-icons.eot +0 -0
- package/app/fonts/sd_big-icons.svg +55 -53
- package/app/fonts/sd_big-icons.ttf +0 -0
- package/app/fonts/sd_big-icons.woff +0 -0
- package/app/fonts/sd_icons.eot +0 -0
- package/app/fonts/sd_icons.svg +1 -0
- package/app/fonts/sd_icons.ttf +0 -0
- package/app/fonts/sd_icons.woff +0 -0
- package/app/img/dots.svg +3 -0
- package/app/img/spinner.svg +3 -0
- package/app/img/themes/theme-base.svg +1 -0
- package/app/img/themes/theme-contrast.svg +45 -0
- package/app/img/themes/theme-dark.svg +1 -0
- package/app/img/themes/theme-light.svg +1 -0
- package/app/index.js +2 -1
- package/app/scripts/check.js +1 -1
- package/app/scripts/modals.js +1 -0
- package/app/styles/_accessibility.scss +308 -6
- package/app/styles/_alerts.scss +227 -97
- package/app/styles/_avatar.scss +60 -33
- package/app/styles/_badge.scss +55 -26
- package/app/styles/_big-icon-font.scss +61 -23
- package/app/styles/_boxed-list.scss +67 -23
- package/app/styles/_buttons.scss +548 -1026
- package/app/styles/_carousel.scss +19 -13
- package/app/styles/_content-divider.scss +125 -0
- package/app/styles/_design-tokens.scss +2 -0
- package/app/styles/_drag-drop.scss +1 -1
- package/app/styles/_empty-states.scss +9 -1
- package/app/styles/_helpers.scss +654 -311
- package/app/styles/_icon-font.scss +343 -309
- package/app/styles/_icon-labels.scss +69 -14
- package/app/styles/_labels.scss +65 -52
- package/app/styles/_loaders.scss +28 -0
- package/app/styles/_master-desk.scss +11 -11
- package/app/styles/_mixins.scss +21 -13
- package/app/styles/_modals.scss +103 -116
- package/app/styles/_normalize.scss +1 -0
- package/app/styles/_panel-info.scss +21 -16
- package/app/styles/_popover.scss +2 -2
- package/app/styles/_pr-superdesk-theme.scss +4 -0
- package/app/styles/_publisher-styles.scss +182 -0
- package/app/styles/_reboot.scss +1 -0
- package/app/styles/_sd-tag-input.scss +184 -97
- package/app/styles/_simple-list.scss +41 -19
- package/app/styles/_table-list.scss +244 -0
- package/app/styles/_tables.scss +5 -4
- package/app/styles/_tabs.scss +24 -75
- package/app/styles/_tag-labels.scss +47 -47
- package/app/styles/_thumb-carousel.scss +11 -10
- package/app/styles/_toggle-box.scss +52 -46
- package/app/styles/_toggle-button.scss +42 -0
- package/app/styles/_tooltips.scss +55 -98
- package/app/styles/_variables.scss +0 -1
- package/app/styles/app.scss +17 -1
- package/app/styles/components/_card-item.scss +41 -28
- package/app/styles/components/_list-item.scss +47 -113
- package/app/styles/components/_sd-circular-progress.scss +1 -1
- package/app/styles/components/_sd-collapse-box.scss +6 -33
- package/app/styles/components/_sd-comment-box.scss +1 -1
- package/app/styles/components/_sd-dropzone.scss +114 -0
- package/app/styles/components/_sd-grid-item.scss +78 -180
- package/app/styles/components/_sd-loader.scss +1 -16
- package/app/styles/components/_sd-media-carousel.scss +10 -12
- package/app/styles/components/_sd-photo-preview.scss +13 -13
- package/app/styles/components/_sd-searchbar.scss +43 -127
- package/app/styles/components/_sd-toaster.scss +13 -6
- package/app/styles/components/_subnav.scss +172 -171
- package/app/styles/components/_theme-selector.scss +189 -0
- package/app/styles/components/sd-slider.scss +11 -11
- package/app/styles/design-tokens/_design-tokens-general.scss +84 -0
- package/app/styles/design-tokens/_new-colors.scss +702 -0
- package/app/styles/dropdowns/_basic-dropdown.scss +119 -76
- package/app/styles/dropdowns/_navigation_dropdown.scss +7 -8
- package/app/styles/dropdowns/_nested-dropdown.scss +30 -16
- package/app/styles/dropdowns/_other_dropdown.scss +1 -1
- package/app/styles/editor/_editor-buttons.scss +54 -0
- package/app/styles/editor/_editor-themes.scss +437 -0
- package/app/styles/form-elements/_autocomplete.scss +12 -41
- package/app/styles/form-elements/_checkbox.scss +180 -245
- package/app/styles/form-elements/_forms-general.scss +92 -20
- package/app/styles/form-elements/_inputs.scss +100 -350
- package/app/styles/form-elements/_radio.scss +6 -6
- package/app/styles/form-elements/_select-grid.scss +16 -14
- package/app/styles/form-elements/_switch.scss +26 -47
- package/app/styles/grids/_basic-grid.scss +52 -26
- package/app/styles/grids/_grid-layout.scss +114 -65
- package/app/styles/grids/_layout-grid.scss +6 -6
- package/app/styles/grids/_sd-kanban-list.scss +2 -2
- package/app/styles/interface-elements/_side-panel.scss +115 -83
- package/app/styles/layout/_basic-layout.scss +11 -19
- package/app/styles/layout/_container.scss +35 -0
- package/app/styles/layout/_editor.scss +398 -0
- package/app/styles/layout/_general.scss +4 -5
- package/app/styles/menus/_sd-content-navigation.scss +1 -1
- package/app/styles/menus/_sd-left-navigation.scss +34 -18
- package/app/styles/menus/_sd-sidebar-menu.scss +123 -25
- package/app/styles/menus/_sd-top-menu.scss +3 -3
- package/app/styles/primereact/_pr-datepicker.scss +60 -9
- package/app/styles/primereact/_pr-dialog.scss +131 -30
- package/app/styles/primereact/_pr-dropdown.scss +177 -19
- package/app/styles/primereact/_pr-general.scss +14 -7
- package/app/styles/primereact/_pr-menu.scss +9 -12
- package/app/styles/variables/_colors.scss +124 -516
- package/app/styles/variables/_dimensions.scss +82 -4
- package/app/styles/variables/_form-elements.scss +0 -2
- package/app/styles/variables/_typography.scss +2 -0
- package/app-typescript/components/Alert.tsx +16 -1
- package/app-typescript/components/Avatar.tsx +21 -0
- package/app-typescript/components/ButtonGroup.tsx +9 -5
- package/app-typescript/components/Carousel.tsx +1 -1
- package/app-typescript/components/CheckButtonGroup.tsx +19 -5
- package/app-typescript/components/CheckGroup.tsx +2 -1
- package/app-typescript/components/Checkbox.tsx +7 -3
- package/app-typescript/components/CheckboxButton.tsx +9 -2
- package/app-typescript/components/ContentDivider.tsx +34 -0
- package/app-typescript/components/CreateButton.tsx +38 -0
- package/app-typescript/components/DatePicker.tsx +6 -2
- package/app-typescript/components/DropZone.tsx +89 -0
- package/app-typescript/components/Dropdown.tsx +30 -11
- package/app-typescript/components/DropdownFirst.tsx +1 -1
- package/app-typescript/components/Editor/EditorButton.tsx +34 -0
- package/app-typescript/components/Form/FormGroup.tsx +33 -0
- package/app-typescript/components/Form/FormItem.tsx +20 -0
- package/app-typescript/components/Form/FormLabel.tsx +22 -0
- package/app-typescript/components/Form/FormRow.tsx +40 -0
- package/app-typescript/components/Form/FormText.tsx +15 -0
- package/app-typescript/components/Form/index.tsx +5 -0
- package/app-typescript/components/Icon.tsx +3 -1
- package/app-typescript/components/IconButton.tsx +26 -12
- package/app-typescript/components/IconLabel.tsx +8 -1
- package/app-typescript/components/Input.tsx +39 -20
- package/app-typescript/components/Layouts/AuthorinInnerSideBar.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringContainer.tsx +27 -0
- package/app-typescript/components/Layouts/AuthoringFrame.tsx +72 -0
- package/app-typescript/components/Layouts/AuthoringFrameContainer.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringFrameLeftBar.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringFrameMain.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringFrameNavBar.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringFrameOverlay.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringFrameRightBar.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringFrameSidePanel.tsx +22 -0
- package/app-typescript/components/Layouts/AuthoringFrameSidePanelOverlay.tsx +22 -0
- package/app-typescript/components/Layouts/AuthoringInnerBody.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringInnerHeader.tsx +40 -0
- package/app-typescript/components/Layouts/AuthoringMain.tsx +50 -0
- package/app-typescript/components/Layouts/AuthoringMainContainer.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringMainContent.tsx +15 -0
- package/app-typescript/components/Layouts/AuthoringMainToolBar.tsx +21 -0
- package/app-typescript/components/Layouts/Container.tsx +30 -0
- package/app-typescript/components/Layouts/ContentSplitter.tsx +23 -0
- package/app-typescript/components/Layouts/HeaderPanel.tsx +15 -0
- package/app-typescript/components/Layouts/Layout.tsx +33 -0
- package/app-typescript/components/Layouts/LayoutContainer.tsx +15 -0
- package/app-typescript/components/Layouts/LeftPanel.tsx +24 -0
- package/app-typescript/components/Layouts/MainPanel.tsx +27 -0
- package/app-typescript/components/Layouts/OverlayPanel.tsx +19 -0
- package/app-typescript/components/Layouts/PageLayout.tsx +51 -0
- package/app-typescript/components/Layouts/Panel.tsx +208 -0
- package/app-typescript/components/Layouts/RightPanel.tsx +16 -0
- package/app-typescript/components/Layouts/index.tsx +31 -0
- package/app-typescript/components/LeftMenu.tsx +123 -49
- package/app-typescript/components/Lists/BoxedList.tsx +137 -0
- package/app-typescript/components/Lists/ContentList.tsx +100 -0
- package/app-typescript/components/Lists/SimpleList.tsx +54 -0
- package/app-typescript/components/Lists/TableList.tsx +208 -0
- package/app-typescript/components/Lists/index.tsx +2 -0
- package/app-typescript/components/Modal.tsx +30 -15
- package/app-typescript/components/MultiSelect.tsx +69 -0
- package/app-typescript/components/Navigation/QuickNavBar.tsx +114 -0
- package/app-typescript/components/Navigation/SideBarMenu.tsx +68 -0
- package/app-typescript/components/Navigation/SideBarTabs.tsx +87 -0
- package/app-typescript/components/Navigation/index.tsx +3 -0
- package/app-typescript/components/RadioButtonGroup.tsx +113 -0
- package/app-typescript/components/RadioGroup.tsx +69 -0
- package/app-typescript/components/SearchBar.tsx +79 -0
- package/app-typescript/components/Select.tsx +9 -9
- package/app-typescript/components/SelectGrid.tsx +3 -3
- package/app-typescript/components/SidebarMenu.tsx +68 -0
- package/app-typescript/components/SlidingToolbar.tsx +8 -2
- package/app-typescript/components/Spinner.tsx +1 -2
- package/app-typescript/components/SubNav.tsx +25 -4
- package/app-typescript/components/Switch.tsx +34 -12
- package/app-typescript/components/SwitchGroup.tsx +2 -1
- package/app-typescript/components/TabCustom.tsx +40 -89
- package/app-typescript/components/TabList.tsx +18 -43
- package/app-typescript/components/Tag.tsx +32 -9
- package/app-typescript/components/Text/Heading.tsx +67 -0
- package/app-typescript/components/Text/Text.tsx +36 -0
- package/app-typescript/components/ThemeSelector.tsx +113 -0
- package/app-typescript/components/TimePicker.tsx +3 -3
- package/app-typescript/components/Togglebox.tsx +8 -6
- package/app-typescript/components/TreeSelect.tsx +330 -0
- package/app-typescript/index.ts +19 -4
- package/dist/avatar-2.jpg +0 -0
- package/dist/avatar-3.jpg +0 -0
- package/dist/avatar-4.jpg +0 -0
- package/dist/avatar-5.jpg +0 -0
- package/dist/avatar-6.jpg +0 -0
- package/dist/avatar_64.png +0 -0
- package/dist/components/basic-grid.html +1 -1
- package/dist/components/checkbox.html +1 -1
- package/dist/dots.svg +3 -0
- package/dist/examples.bundle.css +9800 -2768
- package/dist/examples.bundle.js +39221 -17840
- package/dist/index.html +9 -12
- package/dist/playgrounds/boxed-list.html +1 -1
- package/dist/playgrounds/cards.html +9 -4
- package/dist/playgrounds/editor-3-test.html +15 -0
- package/dist/playgrounds/form-layout.html +9 -7
- package/dist/playgrounds/layout-test-2.html +40 -36
- package/dist/playgrounds/list-item-test.html +1 -1
- package/dist/playgrounds/master-desk.html +1 -3
- package/dist/playgrounds/photo-desk.html +33 -33
- package/dist/playgrounds/react-playgrounds/EditorTest.tsx +459 -0
- package/dist/playgrounds/react-playgrounds/FirstPlayground.tsx +4 -4
- package/dist/playgrounds/react-playgrounds/Index.tsx +7 -1
- package/dist/playgrounds/react-playgrounds/PageLayoutTest.tsx +161 -0
- package/dist/playgrounds/react-playgrounds/PersonalProfile.tsx +635 -0
- package/dist/playgrounds/react-playgrounds/RundownEditor.tsx +466 -0
- package/dist/playgrounds/react-playgrounds/Rundowns.tsx +1002 -0
- package/dist/playgrounds/react-playgrounds/SamsPlayground.tsx +30 -39
- package/dist/playgrounds/react-playgrounds/TestGround.tsx +240 -23
- package/dist/playgrounds/react-playgrounds/UiPlayground.tsx +304 -0
- package/dist/playgrounds/react-playgrounds/components/AuthoringContainer.tsx +26 -0
- package/dist/playgrounds/react-playgrounds/components/ContentSplitter.tsx +22 -0
- package/dist/playgrounds/react-playgrounds/components/Index.tsx +6 -1
- package/dist/playgrounds/react-playgrounds/components/Layout.tsx +1 -1
- package/dist/playgrounds/react-playgrounds/components/MainPanel.tsx +11 -1
- package/dist/playgrounds/react-playgrounds/components/SearchBar.tsx +51 -9
- package/dist/playgrounds/tags-input.html +1 -1
- package/dist/react/Alerts.tsx +123 -23
- package/dist/react/Avatar.tsx +314 -127
- package/dist/react/BoxedList.tsx +362 -0
- package/dist/react/ButtonGroups.tsx +66 -65
- package/dist/react/Buttons.tsx +62 -247
- package/dist/react/Carousel.tsx +2 -3
- package/dist/react/Checkboxs.tsx +66 -25
- package/dist/react/Container.tsx +143 -0
- package/dist/react/ContentDivider.tsx +178 -0
- package/dist/react/ContentList.tsx +280 -0
- package/dist/react/CreateButton.tsx +71 -0
- package/dist/react/DropZone.tsx +111 -0
- package/dist/react/Heading.tsx +106 -0
- package/dist/react/IconButtons.tsx +49 -42
- package/dist/react/IconLabels.tsx +24 -2
- package/dist/react/Index.tsx +133 -11
- package/dist/react/Inputs.tsx +33 -20
- package/dist/react/LeftNavigations.tsx +161 -9
- package/dist/react/ListItems.tsx +3 -3
- package/dist/react/Modal.tsx +174 -19
- package/dist/react/MultiSelect.tsx +193 -0
- package/dist/react/NavButtons.tsx +4 -4
- package/dist/react/Panel.tsx +366 -0
- package/dist/react/QuickNavigationBar.tsx +142 -0
- package/dist/react/RadioGroup.tsx +351 -0
- package/dist/react/SelectWithTemplate.tsx +1 -1
- package/dist/react/Selects.tsx +3 -23
- package/dist/react/SimpleList.tsx +148 -0
- package/dist/react/SubNav.tsx +69 -20
- package/dist/react/TableList.tsx +268 -0
- package/dist/react/Tabs.tsx +72 -248
- package/dist/react/Tags.tsx +52 -13
- package/dist/react/Text.tsx +134 -0
- package/dist/react/Tooltips.tsx +1 -1
- package/dist/react/TreeSelect.tsx +178 -0
- package/dist/react.html +4 -0
- package/dist/sd_big-icons.eot +0 -0
- package/dist/sd_big-icons.svg +55 -53
- package/dist/sd_big-icons.ttf +0 -0
- package/dist/sd_big-icons.woff +0 -0
- package/dist/sd_icons.eot +0 -0
- package/dist/sd_icons.svg +1 -0
- package/dist/sd_icons.ttf +0 -0
- package/dist/sd_icons.woff +0 -0
- package/dist/superdesk-ui.bundle.css +51124 -26537
- package/dist/superdesk-ui.bundle.js +7849 -3639
- package/dist/vendor.bundle.js +71 -75
- package/examples/css/docs-page.css +204 -46
- package/examples/img/avatar-2.jpg +0 -0
- package/examples/img/avatar-3.jpg +0 -0
- package/examples/img/avatar-4.jpg +0 -0
- package/examples/img/avatar-5.jpg +0 -0
- package/examples/img/avatar-6.jpg +0 -0
- package/examples/index.html +9 -12
- package/examples/index.js +28 -0
- package/examples/pages/components/basic-grid.html +1 -1
- package/examples/pages/components/checkbox.html +1 -1
- package/examples/pages/playgrounds/boxed-list.html +1 -1
- package/examples/pages/playgrounds/cards.html +9 -4
- package/examples/pages/playgrounds/editor-3-test.html +15 -0
- package/examples/pages/playgrounds/form-layout.html +9 -7
- package/examples/pages/playgrounds/layout-test-2.html +40 -36
- package/examples/pages/playgrounds/list-item-test.html +1 -1
- package/examples/pages/playgrounds/master-desk.html +1 -3
- package/examples/pages/playgrounds/photo-desk.html +33 -33
- package/examples/pages/playgrounds/react-playgrounds/EditorTest.tsx +459 -0
- package/examples/pages/playgrounds/react-playgrounds/FirstPlayground.tsx +4 -4
- package/examples/pages/playgrounds/react-playgrounds/Index.tsx +7 -1
- package/examples/pages/playgrounds/react-playgrounds/PageLayoutTest.tsx +161 -0
- package/examples/pages/playgrounds/react-playgrounds/PersonalProfile.tsx +635 -0
- package/examples/pages/playgrounds/react-playgrounds/RundownEditor.tsx +466 -0
- package/examples/pages/playgrounds/react-playgrounds/Rundowns.tsx +1002 -0
- package/examples/pages/playgrounds/react-playgrounds/SamsPlayground.tsx +30 -39
- package/examples/pages/playgrounds/react-playgrounds/TestGround.tsx +240 -23
- package/examples/pages/playgrounds/react-playgrounds/UiPlayground.tsx +304 -0
- package/examples/pages/playgrounds/react-playgrounds/components/AuthoringContainer.tsx +26 -0
- package/examples/pages/playgrounds/react-playgrounds/components/ContentSplitter.tsx +22 -0
- package/examples/pages/playgrounds/react-playgrounds/components/Index.tsx +6 -1
- package/examples/pages/playgrounds/react-playgrounds/components/Layout.tsx +1 -1
- package/examples/pages/playgrounds/react-playgrounds/components/MainPanel.tsx +11 -1
- package/examples/pages/playgrounds/react-playgrounds/components/SearchBar.tsx +51 -9
- package/examples/pages/playgrounds/tags-input.html +1 -1
- package/examples/pages/react/Alerts.tsx +123 -23
- package/examples/pages/react/Avatar.tsx +314 -127
- package/examples/pages/react/BoxedList.tsx +362 -0
- package/examples/pages/react/ButtonGroups.tsx +66 -65
- package/examples/pages/react/Buttons.tsx +62 -247
- package/examples/pages/react/Carousel.tsx +2 -3
- package/examples/pages/react/Checkboxs.tsx +66 -25
- package/examples/pages/react/Container.tsx +143 -0
- package/examples/pages/react/ContentDivider.tsx +178 -0
- package/examples/pages/react/ContentList.tsx +280 -0
- package/examples/pages/react/CreateButton.tsx +71 -0
- package/examples/pages/react/DropZone.tsx +111 -0
- package/examples/pages/react/Heading.tsx +106 -0
- package/examples/pages/react/IconButtons.tsx +49 -42
- package/examples/pages/react/IconLabels.tsx +24 -2
- package/examples/pages/react/Index.tsx +133 -11
- package/examples/pages/react/Inputs.tsx +33 -20
- package/examples/pages/react/LeftNavigations.tsx +161 -9
- package/examples/pages/react/ListItems.tsx +3 -3
- package/examples/pages/react/Modal.tsx +174 -19
- package/examples/pages/react/MultiSelect.tsx +193 -0
- package/examples/pages/react/NavButtons.tsx +4 -4
- package/examples/pages/react/Panel.tsx +366 -0
- package/examples/pages/react/QuickNavigationBar.tsx +142 -0
- package/examples/pages/react/RadioGroup.tsx +351 -0
- package/examples/pages/react/SelectWithTemplate.tsx +1 -1
- package/examples/pages/react/Selects.tsx +3 -23
- package/examples/pages/react/SimpleList.tsx +148 -0
- package/examples/pages/react/SubNav.tsx +69 -20
- package/examples/pages/react/TableList.tsx +268 -0
- package/examples/pages/react/Tabs.tsx +72 -248
- package/examples/pages/react/Tags.tsx +52 -13
- package/examples/pages/react/Text.tsx +134 -0
- package/examples/pages/react/Tooltips.tsx +1 -1
- package/examples/pages/react/TreeSelect.tsx +178 -0
- package/examples/pages/react.html +4 -0
- package/images/avatar_64.png +0 -0
- package/package.json +11 -6
- package/react/components/Alert.d.ts +3 -0
- package/react/components/Alert.js +9 -1
- package/react/components/Avatar.d.ts +9 -0
- package/react/components/Avatar.js +19 -1
- package/react/components/ButtonGroup.d.ts +4 -2
- package/react/components/ButtonGroup.js +5 -3
- package/react/components/Carousel.js +1 -1
- package/react/components/CheckButtonGroup.d.ts +3 -1
- package/react/components/CheckButtonGroup.js +8 -2
- package/react/components/CheckGroup.d.ts +1 -0
- package/react/components/CheckGroup.js +1 -1
- package/react/components/Checkbox.d.ts +2 -1
- package/react/components/Checkbox.js +2 -2
- package/react/components/CheckboxButton.d.ts +1 -0
- package/react/components/CheckboxButton.js +2 -2
- package/react/components/ContentDivider.d.ts +12 -0
- package/react/components/ContentDivider.js +66 -0
- package/react/components/CreateButton.d.ts +17 -0
- package/react/components/CreateButton.js +66 -0
- package/react/components/DatePicker.js +7 -2
- package/react/components/DropZone.d.ts +25 -0
- package/react/components/DropZone.js +93 -0
- package/react/components/Dropdown.d.ts +1 -0
- package/react/components/Dropdown.js +28 -23
- package/react/components/DropdownFirst.js +1 -1
- package/react/components/Form/FormGroup.d.ts +13 -0
- package/react/components/Form/FormGroup.js +61 -0
- package/react/components/Form/FormItem.d.ts +9 -0
- package/react/components/Form/FormItem.js +54 -0
- package/react/components/Form/FormLabel.d.ts +10 -0
- package/react/components/Form/FormLabel.js +54 -0
- package/react/components/Form/FormRow.d.ts +17 -0
- package/react/components/Form/FormRow.js +62 -0
- package/react/components/Form/FormText.d.ts +8 -0
- package/react/components/Form/FormText.js +47 -0
- package/react/components/Form/index.d.ts +5 -0
- package/react/components/Form/index.js +12 -0
- package/react/components/Icon.d.ts +1 -0
- package/react/components/Icon.js +2 -1
- package/react/components/IconButton.d.ts +9 -2
- package/react/components/IconButton.js +13 -5
- package/react/components/IconLabel.d.ts +2 -0
- package/react/components/IconLabel.js +6 -3
- package/react/components/Input.d.ts +21 -7
- package/react/components/Input.js +10 -13
- package/react/components/Layouts/AuthorinInnerSideBar.d.ts +8 -0
- package/react/components/Layouts/AuthorinInnerSideBar.js +47 -0
- package/react/components/Layouts/AuthoringContainer.d.ts +11 -0
- package/react/components/Layouts/AuthoringContainer.js +58 -0
- package/react/components/Layouts/AuthoringFrame.d.ts +18 -0
- package/react/components/Layouts/AuthoringFrame.js +56 -0
- package/react/components/Layouts/AuthoringFrameContainer.d.ts +8 -0
- package/react/components/Layouts/AuthoringFrameContainer.js +47 -0
- package/react/components/Layouts/AuthoringFrameLeftBar.d.ts +8 -0
- package/react/components/Layouts/AuthoringFrameLeftBar.js +47 -0
- package/react/components/Layouts/AuthoringFrameMain.d.ts +8 -0
- package/react/components/Layouts/AuthoringFrameMain.js +47 -0
- package/react/components/Layouts/AuthoringFrameNavBar.d.ts +8 -0
- package/react/components/Layouts/AuthoringFrameNavBar.js +47 -0
- package/react/components/Layouts/AuthoringFrameOverlay.d.ts +8 -0
- package/react/components/Layouts/AuthoringFrameOverlay.js +47 -0
- package/react/components/Layouts/AuthoringFrameRightBar.d.ts +8 -0
- package/react/components/Layouts/AuthoringFrameRightBar.js +47 -0
- package/react/components/Layouts/AuthoringFrameSidePanel.d.ts +10 -0
- package/react/components/Layouts/AuthoringFrameSidePanel.js +56 -0
- package/react/components/Layouts/AuthoringFrameSidePanelOverlay.d.ts +9 -0
- package/react/components/Layouts/AuthoringFrameSidePanelOverlay.js +56 -0
- package/react/components/Layouts/AuthoringInnerBody.d.ts +8 -0
- package/react/components/Layouts/AuthoringInnerBody.js +47 -0
- package/react/components/Layouts/AuthoringInnerHeader.d.ts +14 -0
- package/react/components/{RadioButton.js → Layouts/AuthoringInnerHeader.js} +23 -22
- package/react/components/Layouts/AuthoringMain.d.ts +14 -0
- package/react/components/Layouts/AuthoringMain.js +53 -0
- package/react/components/Layouts/AuthoringMainContainer.d.ts +8 -0
- package/react/components/Layouts/AuthoringMainContainer.js +47 -0
- package/react/components/Layouts/AuthoringMainContent.d.ts +8 -0
- package/react/components/Layouts/AuthoringMainContent.js +47 -0
- package/react/components/Layouts/AuthoringMainToolBar.d.ts +9 -0
- package/react/components/Layouts/AuthoringMainToolBar.js +54 -0
- package/react/components/Layouts/Container.d.ts +14 -0
- package/react/components/Layouts/Container.js +60 -0
- package/react/components/Layouts/ContentSplitter.d.ts +10 -0
- package/react/components/Layouts/ContentSplitter.js +56 -0
- package/react/components/Layouts/HeaderPanel.d.ts +8 -0
- package/react/components/Layouts/HeaderPanel.js +47 -0
- package/react/components/Layouts/Layout.d.ts +8 -0
- package/react/components/Layouts/Layout.js +35 -0
- package/react/components/Layouts/LayoutContainer.d.ts +8 -0
- package/react/components/Layouts/LayoutContainer.js +47 -0
- package/react/components/Layouts/LeftPanel.d.ts +9 -0
- package/react/components/Layouts/LeftPanel.js +54 -0
- package/react/components/Layouts/MainPanel.d.ts +11 -0
- package/react/components/Layouts/MainPanel.js +57 -0
- package/react/components/Layouts/OverlayPanel.d.ts +8 -0
- package/react/components/Layouts/OverlayPanel.js +49 -0
- package/react/components/Layouts/PageLayout.d.ts +16 -0
- package/react/components/Layouts/PageLayout.js +64 -0
- package/react/components/Layouts/Panel.d.ts +66 -0
- package/react/components/Layouts/Panel.js +166 -0
- package/react/components/Layouts/RightPanel.d.ts +9 -0
- package/react/components/Layouts/RightPanel.js +47 -0
- package/react/components/Layouts/index.d.ts +28 -0
- package/react/components/Layouts/index.js +63 -0
- package/react/components/LeftMenu.d.ts +8 -3
- package/react/components/LeftMenu.js +55 -16
- package/react/components/Lists/BoxedList.d.ts +38 -0
- package/react/components/Lists/BoxedList.js +139 -0
- package/react/components/Lists/SimpleList.d.ts +21 -0
- package/react/components/Lists/SimpleList.js +78 -0
- package/react/components/Lists/index.d.ts +2 -0
- package/react/components/Lists/index.js +9 -0
- package/react/components/Modal.d.ts +5 -1
- package/react/components/Modal.js +11 -2
- package/react/components/Navigation/QuickNavBar.d.ts +24 -0
- package/react/components/Navigation/QuickNavBar.js +113 -0
- package/react/components/Navigation/SideBarMenu.d.ts +21 -0
- package/react/components/Navigation/SideBarMenu.js +77 -0
- package/react/components/Navigation/SideBarTabs.d.ts +23 -0
- package/react/components/Navigation/SideBarTabs.js +86 -0
- package/react/components/Navigation/index.d.ts +3 -0
- package/react/components/Navigation/index.js +8 -0
- package/react/components/RadioButtonGroup.d.ts +29 -0
- package/react/components/RadioButtonGroup.js +89 -0
- package/react/components/{Radio.d.ts → RadioGroup.d.ts} +7 -3
- package/react/components/{Radio.js → RadioGroup.js} +15 -11
- package/react/components/SearchBar.d.ts +23 -0
- package/react/components/SearchBar.js +87 -0
- package/react/components/Select.d.ts +2 -1
- package/react/components/Select.js +3 -9
- package/react/components/SelectGrid.js +3 -3
- package/react/components/SlidingToolbar.d.ts +1 -1
- package/react/components/SlidingToolbar.js +11 -1
- package/react/components/Spinner.d.ts +0 -1
- package/react/components/Spinner.js +1 -2
- package/react/components/SubNav.d.ts +8 -1
- package/react/components/SubNav.js +22 -4
- package/react/components/Switch.d.ts +4 -1
- package/react/components/Switch.js +19 -7
- package/react/components/SwitchGroup.d.ts +1 -0
- package/react/components/SwitchGroup.js +1 -1
- package/react/components/TabCustom.d.ts +11 -22
- package/react/components/TabCustom.js +23 -52
- package/react/components/TabList.d.ts +2 -11
- package/react/components/TabList.js +11 -32
- package/react/components/Tag.d.ts +4 -4
- package/react/components/Tag.js +16 -5
- package/react/components/TagInput.d.ts +0 -1
- package/react/components/Text/Heading.d.ts +15 -0
- package/react/components/Text/Heading.js +77 -0
- package/react/components/Text/Text.d.ts +15 -0
- package/react/components/Text/Text.js +65 -0
- package/react/components/{RadioButton.d.ts → ThemeSelector.d.ts} +4 -3
- package/react/components/ThemeSelector.js +112 -0
- package/react/components/TimePicker.js +2 -2
- package/react/components/Togglebox.d.ts +1 -0
- package/react/components/Togglebox.js +9 -2
- package/react/index.d.ts +17 -4
- package/react/index.js +41 -6
- package/sd_icons.eot +0 -0
- package/sd_icons.svg +189 -0
- package/sd_icons.ttf +0 -0
- package/sd_icons.woff +0 -0
- package/app/styles/_editor-themes.scss +0 -326
- package/app/styles/variables/_design-tokens-general.scss +0 -76
- package/app-typescript/components/Radio.tsx +0 -57
- package/app-typescript/components/RadioButton.tsx +0 -57
- package/dist/react/Radios.tsx +0 -391
- package/examples/pages/react/Radios.tsx +0 -391
@@ -0,0 +1,142 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import * as Markup from '../../js/react';
|
3
|
+
import { Button, ButtonGroup, Container, Heading, LeftMenu, Prop, PropsList, QuickNavBar, SimpleList, SimpleListItem } from '../../../app-typescript';
|
4
|
+
|
5
|
+
export default class QuickNavBarDoc extends React.Component<{}> {
|
6
|
+
render() {
|
7
|
+
|
8
|
+
return (
|
9
|
+
<section className="docs-page__container">
|
10
|
+
<h2 className="docs-page__h2">Quick navigation bar</h2>
|
11
|
+
|
12
|
+
<Markup.ReactMarkupCodePreview>{`
|
13
|
+
<QuickNavBar
|
14
|
+
items={[
|
15
|
+
{ icon: 'heading-1', onClick:()=> false, id: 'section1' },
|
16
|
+
{ icon: 'align-left', onClick:()=> false, id: 'section2' },
|
17
|
+
{ icon: 'picture', onClick:()=> false, id: 'section3' },
|
18
|
+
{ icon: 'attachment-large', onClick:()=> false, id: 'section4' }]} />
|
19
|
+
`}
|
20
|
+
</Markup.ReactMarkupCodePreview>
|
21
|
+
<p className="docs-page__paragraph">If you want the default variant, follow the instructions in the description above.</p>
|
22
|
+
<p className="docs-page__paragraph">The component also supports the scrollspy variant. It is necessary to add ID value to items and add the ID value of the scrollable container in the <code>scrollSpy</code> attribute.</p>
|
23
|
+
<Markup.ReactMarkup>
|
24
|
+
<Markup.ReactMarkupPreview>
|
25
|
+
<div className='docs-page__content-row'>
|
26
|
+
<div className='docs-page__grid-page-example'>
|
27
|
+
<div className='docs-page__grid-page-example__top'>
|
28
|
+
<div className="sd-top-menu">
|
29
|
+
<a className="sd-top-menu__collapse-nav"><i className="icon-collapse icon--white"></i></a>
|
30
|
+
<p className="sd-top-menu__header">Top menu</p>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
<QuickNavBar
|
34
|
+
scrollSpy='#scrollContainer'
|
35
|
+
offset={-300}
|
36
|
+
items={[
|
37
|
+
{ icon: 'heading-1', tooltip: 'Headline', onClick:()=> false, id: 'section1' },
|
38
|
+
{ icon: 'align-left', tooltip: 'Body', onClick:()=> false, id: 'section2' },
|
39
|
+
{ icon: 'picture', tooltip: 'Media', onClick:()=> false, id: 'section3' },
|
40
|
+
{ icon: 'attachment-large', tooltip: 'Attachments', onClick:()=> false, id: 'section4' }]} />
|
41
|
+
<div className='docs-page__grid-page-example__main sd-padding--4' id='scrollContainer' style={{height:600}}>
|
42
|
+
<SimpleList density='comfortable'>
|
43
|
+
<SimpleListItem stacked={true} id='section1' >
|
44
|
+
<Heading type='h2' className='sd-padding--2'>Section 1</Heading>
|
45
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
46
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
47
|
+
</Container>
|
48
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
49
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
50
|
+
</Container>
|
51
|
+
<Container gap="large" display='flex'>
|
52
|
+
<ButtonGroup align='end'>
|
53
|
+
<Button text="button" type="primary" onClick={()=> false} />
|
54
|
+
<Button text="button" type="highlight" onClick={()=> false} />
|
55
|
+
</ButtonGroup>
|
56
|
+
</Container>
|
57
|
+
</SimpleListItem >
|
58
|
+
<SimpleListItem stacked={true} id='section2' >
|
59
|
+
<Heading type='h2' className='sd-padding--2'>Section 2</Heading>
|
60
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
61
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
62
|
+
</Container>
|
63
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
64
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
65
|
+
</Container>
|
66
|
+
<Container gap="large" display='flex'>
|
67
|
+
<ButtonGroup align='end'>
|
68
|
+
<Button text="button" type="primary" onClick={()=> false} />
|
69
|
+
<Button text="button" type="highlight" onClick={()=> false} />
|
70
|
+
</ButtonGroup>
|
71
|
+
</Container>
|
72
|
+
</SimpleListItem>
|
73
|
+
<SimpleListItem stacked={true} id='section3' >
|
74
|
+
<Heading type='h2' className='sd-padding--2'>Section 3</Heading>
|
75
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
76
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
77
|
+
</Container>
|
78
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
79
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
80
|
+
</Container>
|
81
|
+
<Container gap="large" display='flex'>
|
82
|
+
<ButtonGroup align='end'>
|
83
|
+
<Button text="button" type="primary" onClick={()=> false} />
|
84
|
+
<Button text="button" type="highlight" onClick={()=> false} />
|
85
|
+
</ButtonGroup>
|
86
|
+
</Container>
|
87
|
+
</SimpleListItem>
|
88
|
+
<SimpleListItem stacked={true} id='section4' >
|
89
|
+
<Heading type='h2' className='sd-padding--2'>Section 4</Heading>
|
90
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
91
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
92
|
+
</Container>
|
93
|
+
<Container direction='column' className='sd-radius--medium sd-panel-bg--000 sd-shadow--z2 sd-padding--2 sd-margin-b--3'>
|
94
|
+
<p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Repellendus ab porro nihil facilis beatae amet labore laudantium repellat enim non sunt aspernatur magni consequuntur tempore, aperiam qui doloremque perspiciatis tenetur.</p>
|
95
|
+
</Container>
|
96
|
+
</SimpleListItem>
|
97
|
+
<Container gap="large" display='flex'>
|
98
|
+
<ButtonGroup align='end'>
|
99
|
+
<Button text="button" type="primary" onClick={()=> false} />
|
100
|
+
<Button text="button" type="highlight" onClick={()=> false} />
|
101
|
+
</ButtonGroup>
|
102
|
+
</Container>
|
103
|
+
</SimpleList>
|
104
|
+
</div>
|
105
|
+
</div>
|
106
|
+
</div>
|
107
|
+
</Markup.ReactMarkupPreview>
|
108
|
+
<Markup.ReactMarkupCode>
|
109
|
+
{`
|
110
|
+
<QuickNavBar
|
111
|
+
scrollSpy='#scrollContainer'
|
112
|
+
offset={-300}
|
113
|
+
items={[
|
114
|
+
{ icon: 'heading-1', tooltip: 'Headline', onClick:()=> false, id: 'section1' },
|
115
|
+
{ icon: 'align-left', tooltip: 'Body', onClick:()=> false, id: 'section2' },
|
116
|
+
{ icon: 'picture', tooltip: 'Media', onClick:()=> false, id: 'section3' },
|
117
|
+
{ icon: 'attachment-large', tooltip: 'Attachments', onClick:()=> false, id: 'section4' }]}
|
118
|
+
/>
|
119
|
+
|
120
|
+
<div id='#scrollContainer'>...</div>
|
121
|
+
`}
|
122
|
+
</Markup.ReactMarkupCode>
|
123
|
+
</Markup.ReactMarkup>
|
124
|
+
|
125
|
+
<h3 className="docs-page__h3">Props</h3>
|
126
|
+
<PropsList>
|
127
|
+
<Prop name='items' isRequired={true} type='Array<Items>' default='/' description='Array of items'/>
|
128
|
+
<Prop name='scrollSpy' isRequired={false} type='string' default='/' description='Name of the element of scrollable container.'/>
|
129
|
+
<Prop name='offset' isRequired={false} type='Array<menuitem>' default='/' description='Offset value that adjusts to determine the elements are in the viewport.'/>
|
130
|
+
</PropsList>
|
131
|
+
<p className='docs-page__paragraph'>Items:</p>
|
132
|
+
<PropsList>
|
133
|
+
<Prop name='icon' isRequired={true} type='string' default='/' description='Icon class name without the icon- part.'/>
|
134
|
+
<Prop name='tooltip' isRequired={false} type='string' default='/' description='Defines the possition of the ToolTip.'/>
|
135
|
+
<Prop name='id' isRequired={false} type='string' default='/' description='Item id value. It is necessary for scrollspy.'/>
|
136
|
+
<Prop name='onClick' isRequired={false} type='function' default='/' description='Callback fired when a button is pressed.'/>
|
137
|
+
</PropsList>
|
138
|
+
|
139
|
+
</section>
|
140
|
+
)
|
141
|
+
}
|
142
|
+
}
|
@@ -0,0 +1,351 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import * as Markup from '../../js/react';
|
3
|
+
import * as Components from '../playgrounds/react-playgrounds/components/Index';
|
4
|
+
|
5
|
+
import { RadioGroup, RadioButtonGroup, CheckGroup, CheckButtonGroup, Alert, Prop, PropsList } from '../../../app-typescript';
|
6
|
+
|
7
|
+
interface IState {
|
8
|
+
value1?: string;
|
9
|
+
value2?: string;
|
10
|
+
value3?: string;
|
11
|
+
value4?: string;
|
12
|
+
value5?: string;
|
13
|
+
value6?: string;
|
14
|
+
value7?: string;
|
15
|
+
value8?: string;
|
16
|
+
}
|
17
|
+
|
18
|
+
export default class RadioGroupDoc extends React.Component<{}, IState> {
|
19
|
+
constructor(props) {
|
20
|
+
super(props);
|
21
|
+
|
22
|
+
this.state = {
|
23
|
+
value1: undefined,
|
24
|
+
value2: undefined,
|
25
|
+
value3: undefined,
|
26
|
+
value4: undefined,
|
27
|
+
value5: undefined,
|
28
|
+
value6: undefined,
|
29
|
+
value7: undefined,
|
30
|
+
value8: undefined,
|
31
|
+
};
|
32
|
+
}
|
33
|
+
render() {
|
34
|
+
return (
|
35
|
+
<section className="docs-page__container">
|
36
|
+
<h2 className="docs-page__h2">RadioGroup</h2>
|
37
|
+
<p className="docs-page__paragraph"></p>
|
38
|
+
<Markup.ReactMarkupCodePreview>{`
|
39
|
+
<RadioGroup options={[
|
40
|
+
{value:'test1', label:'Default label'},
|
41
|
+
{value:'test2', label:'Default label'},
|
42
|
+
]} value={value1} />
|
43
|
+
`}
|
44
|
+
</Markup.ReactMarkupCodePreview>
|
45
|
+
<h3 className="docs-page__h3">Basic RadioGroup</h3>
|
46
|
+
<p className="docs-page__paragraph">The label of the RadioGroup is by default always on the right. Although it's not in line with Superdesk design standards the label can also be placed to the left, by addind the prop <code>labelSide='start'</code>.</p>
|
47
|
+
<Markup.ReactMarkup>
|
48
|
+
<Markup.ReactMarkupPreview>
|
49
|
+
<p className="docs-page__paragraph">// Horizontal - labels on the end/right (default)</p>
|
50
|
+
<div className='form__group'>
|
51
|
+
<RadioGroup options={[
|
52
|
+
{value:'test1', label:'Default label'},
|
53
|
+
{value:'test2', label:'Default label'},
|
54
|
+
{value:'test3', label:'Default label'},
|
55
|
+
{value:'test4', label:'Disabled state', disabled: true}
|
56
|
+
]}
|
57
|
+
value={this.state.value1}
|
58
|
+
onChange={(value) => this.setState(() => ({ value1: value }))} />
|
59
|
+
</div>
|
60
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Horizontal - labels on the start/left</p>
|
61
|
+
<p className="docs-page__paragraph--small">This option should be avoided in general use.</p>
|
62
|
+
<div className='form__group'>
|
63
|
+
<RadioGroup options={[
|
64
|
+
{value:'test5', label:'Label on the left'},
|
65
|
+
{value:'test6', label:'Label on the left'},
|
66
|
+
{value:'test7', label:'Label on the left'},
|
67
|
+
]}
|
68
|
+
value={this.state.value2}
|
69
|
+
labelSide='start'
|
70
|
+
onChange={(value) => this.setState(() => ({ value2: value }))} />
|
71
|
+
</div>
|
72
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Vertical RadioGroup</p>
|
73
|
+
<div className='form__group'>
|
74
|
+
<RadioGroup options={[
|
75
|
+
{value:'test105', label:'Radio vertical one'},
|
76
|
+
{value:'test106', label:'Radio vertical two'},
|
77
|
+
{value:'test107', label:'Radio vertical three'},
|
78
|
+
]}
|
79
|
+
value={this.state.value2}
|
80
|
+
orientation='vertical'
|
81
|
+
onChange={(value) => this.setState(() => ({ value2: value }))} />
|
82
|
+
</div>
|
83
|
+
</Markup.ReactMarkupPreview>
|
84
|
+
<Markup.ReactMarkupCode>{`
|
85
|
+
// Label on the right (default)
|
86
|
+
<RadioGroup options={[
|
87
|
+
{value:'test1', label:'Default label'},
|
88
|
+
{value:'test2', label:'Default label'},
|
89
|
+
{value:'test3', label:'Default label'},
|
90
|
+
{value:'test4', label:'Disabled state', disabled: true}
|
91
|
+
]}
|
92
|
+
value={this.state.value1}
|
93
|
+
onChange={(value) => this.setState(() => ({ value1: value }))} />
|
94
|
+
|
95
|
+
// Labels on the left
|
96
|
+
<RadioGroup options={[
|
97
|
+
{value:'test5', label:'Label on the left'},
|
98
|
+
{value:'test6', label:'Label on the left'},
|
99
|
+
{value:'test7', label:'Label on the left'},
|
100
|
+
]}
|
101
|
+
value={this.state.value2}
|
102
|
+
labelSide='start' onChange={(value) => this.setState(() => ({ value2: value }))} />
|
103
|
+
|
104
|
+
// Vertical RadioGroup
|
105
|
+
<RadioGroup options={[
|
106
|
+
{value:'test105', label:'Radio vertical one'},
|
107
|
+
{value:'test106', label:'Radio vertical two'},
|
108
|
+
{value:'test107', label:'Radio vertical three'},
|
109
|
+
]}
|
110
|
+
value={this.state.value2}
|
111
|
+
orientation='vertical'
|
112
|
+
onChange={(value) => this.setState(() => ({ value2: value }))} />
|
113
|
+
|
114
|
+
`}
|
115
|
+
</Markup.ReactMarkupCode>
|
116
|
+
</Markup.ReactMarkup>
|
117
|
+
|
118
|
+
<Components.GraphicButtonsGroup>
|
119
|
+
<Components.GraphicButton graphic='design' text='Radio usage guidelines' smallText='Design guidelines' link='#/design/checkbox-and-radio' />
|
120
|
+
</Components.GraphicButtonsGroup>
|
121
|
+
|
122
|
+
<h3 className="docs-page__h3">RadioButtonGroup</h3>
|
123
|
+
<Markup.ReactMarkupCodePreview>{`
|
124
|
+
<RadioButtonGroup options={[
|
125
|
+
{value:'test1', label:'Button style radio one'},
|
126
|
+
{value:'test2', label:'Button style radio two'},
|
127
|
+
]} value={value1} />
|
128
|
+
`}
|
129
|
+
</Markup.ReactMarkupCodePreview>
|
130
|
+
<p className="docs-page__paragraph">The <code>RadioButtonGroup</code> component shares the same functionality as the RadioGroup component but with a different visual appearance and some additional layout options. Any icon from the <a className='link' href='#/components/icons' target='blank'>icon font</a> can be added to the component by specifying a value (icon name without the <code>icon-</code> prefix) inside an options value e.g. <code>{'{value:"somevalue", label:"I have an icon", icon:"grid-view"}'}</code>.</p>
|
131
|
+
|
132
|
+
<Markup.ReactMarkup>
|
133
|
+
<Markup.ReactMarkupPreview>
|
134
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Basic</p>
|
135
|
+
<div className='form__group'>
|
136
|
+
<RadioButtonGroup options={[
|
137
|
+
{value:'test6', label:'Button style radio'},
|
138
|
+
{value:'test7', label:'Button style'},
|
139
|
+
{value:'test8', label:'Button style'},
|
140
|
+
{value:'test9', label:'Button style disabled', disabled:true},
|
141
|
+
]} value={this.state.value3} onChange={(value) => this.setState(() => ({ value3: value }))} />
|
142
|
+
</div>
|
143
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// With label</p>
|
144
|
+
<div className='form__group'>
|
145
|
+
<RadioButtonGroup group={{groupLabel: 'My group label'}}
|
146
|
+
options={[
|
147
|
+
{value:'test6', label:'Button style radio'},
|
148
|
+
{value:'test7', label:'Button style'},
|
149
|
+
{value:'test8', label:'Button style'},
|
150
|
+
{value:'test9', label:'Button style disabled', disabled:true},
|
151
|
+
]} value={this.state.value3} onChange={(value) => this.setState(() => ({ value3: value }))} />
|
152
|
+
</div>
|
153
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// With icon</p>
|
154
|
+
<div className='form__group'>
|
155
|
+
<RadioButtonGroup options={[
|
156
|
+
{value:'test10', label:'Radio button with icon', icon:'list-view'},
|
157
|
+
{value:'test11', label:'I have an icon!', icon:'grid-view'},
|
158
|
+
{value:'test12', label:'Yeah, me too!', icon:'kanban-view'},
|
159
|
+
]} value={this.state.value4} onChange={(value) => this.setState(() => ({ value4: value }))} />
|
160
|
+
</div>
|
161
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// With icon only (text label is hidden but still accessible to screenreaders)</p>
|
162
|
+
<div className='form__group'>
|
163
|
+
<RadioButtonGroup options={[
|
164
|
+
{value:'test10', label:'Radio button with icon', icon:'list-view', labelHidden: true},
|
165
|
+
{value:'test11', label:'I have an icon!', icon:'grid-view', labelHidden: true},
|
166
|
+
{value:'test12', label:'Yeah, me too!', icon:'kanban-view', labelHidden: true},
|
167
|
+
]} value={this.state.value4} onChange={(value) => this.setState(() => ({ value4: value }))} />
|
168
|
+
</div>
|
169
|
+
</Markup.ReactMarkupPreview>
|
170
|
+
<Markup.ReactMarkupCode>{`
|
171
|
+
// Button styled radio buttons
|
172
|
+
<RadioButtonGroup options={[
|
173
|
+
{value:'test6', label:'Button style radio'},
|
174
|
+
{value:'test7', label:'Button style'},
|
175
|
+
{value:'test8', label:'Button style'},
|
176
|
+
{value:'test9', label:'Button style disabled', disabled:true},
|
177
|
+
]} value={this.state.value3} onChange={(value) => this.setState(() => ({ value3: value }))} />
|
178
|
+
|
179
|
+
// With label
|
180
|
+
<RadioButtonGroup group={{groupLabel: 'My group label'}}
|
181
|
+
options={[
|
182
|
+
{value:'test6', label:'Button style radio'},
|
183
|
+
{value:'test7', label:'Button style'},
|
184
|
+
{value:'test8', label:'Button style'},
|
185
|
+
{value:'test9', label:'Button style disabled', disabled:true},
|
186
|
+
]} value={this.state.value3} onChange={(value) => this.setState(() => ({ value3: value }))} />
|
187
|
+
|
188
|
+
// Button styled radio with icon
|
189
|
+
<RadioButtonGroup options={[
|
190
|
+
{value:'test10', label:'Radio button with icon', icon:'list-view'},
|
191
|
+
{value:'test11', label:'I have an icon!', icon:'grid-view'},
|
192
|
+
{value:'test12', label:'Yeah, me too!', icon:'kanban-view'},
|
193
|
+
]} value={this.state.value4} onChange={(value) => this.setState(() => ({ value4: value }))} />
|
194
|
+
|
195
|
+
// Button style radio with icon only (text label is hidden)
|
196
|
+
<RadioButtonGroup options={[
|
197
|
+
{value:'test10', label:'Radio button with icon', icon:'list-view', labelHidden: true},
|
198
|
+
{value:'test11', label:'I have an icon!', icon:'grid-view', labelHidden: true},
|
199
|
+
{value:'test12', label:'Yeah, me too!', icon:'kanban-view', labelHidden: true},
|
200
|
+
]} value={this.state.value4} onChange={(value) => this.setState(() => ({ value4: value }))} />
|
201
|
+
|
202
|
+
`}
|
203
|
+
</Markup.ReactMarkupCode>
|
204
|
+
</Markup.ReactMarkup>
|
205
|
+
|
206
|
+
<h3 className="docs-page__h3">Layout and alignment options</h3>
|
207
|
+
<p className="docs-page__paragraph">By default the child elements are grouped horizontaly. A few more options are available – alignment (start, end and center) and grid layout. </p>
|
208
|
+
<Alert style='hollow' size='small' type='primary'>
|
209
|
+
NOTE: Alignment will work only in parent elements with display: flex;
|
210
|
+
</Alert>
|
211
|
+
<Markup.ReactMarkup>
|
212
|
+
<Markup.ReactMarkupPreview>
|
213
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Left (default)</p>
|
214
|
+
<div className='form__row form__row--flex docs-page__test-helper-2'>
|
215
|
+
<RadioButtonGroup value={this.state.value3} options={[
|
216
|
+
{value:'test301', label:'Option one'},
|
217
|
+
{value:'test302', label:'Option two'},
|
218
|
+
{value:'test303', label:'Option three'},
|
219
|
+
]} onChange={(value) => this.setState(() => ({ value3: value }))} />
|
220
|
+
</div>
|
221
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Right</p>
|
222
|
+
<div className='form__row form__row--flex docs-page__test-helper-2'>
|
223
|
+
<RadioButtonGroup group={{align:'end', groupLabel:'My group label'}} value={this.state.value4} options={[
|
224
|
+
{value:'test304', label:'Option one'},
|
225
|
+
{value:'test305', label:'Option two'},
|
226
|
+
{value:'test306', label:'Option three'},
|
227
|
+
]} onChange={(value) => this.setState(() => ({ value4: value }))} />
|
228
|
+
</div>
|
229
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Center</p>
|
230
|
+
<div className='form__row form__row--flex docs-page__test-helper-2'>
|
231
|
+
<RadioButtonGroup group={{align:'center', groupLabelledBy:'someID'}} value={this.state.value5} options={[
|
232
|
+
{value:'test307', label:'Option one'},
|
233
|
+
{value:'test308', label:'Option two'},
|
234
|
+
{value:'test309', label:'Option three'},
|
235
|
+
]} onChange={(value) => this.setState(() => ({ value5: value }))} />
|
236
|
+
</div>
|
237
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Left + Center + Right</p>
|
238
|
+
<div className='form__row form__row--flex docs-page__test-helper-2'>
|
239
|
+
<RadioButtonGroup value={this.state.value6} options={[
|
240
|
+
{value:'test310', label:'One'},
|
241
|
+
{value:'test311', label:'Two'},
|
242
|
+
]} onChange={(value) => this.setState(() => ({ value6: value }))} />
|
243
|
+
|
244
|
+
<RadioButtonGroup group={{align:'center'}} value={this.state.value6} options={[
|
245
|
+
{value:'test312', label:'Three'},
|
246
|
+
{value:'test313', label:'Four'},
|
247
|
+
]} onChange={(value) => this.setState(() => ({ value6: value }))} />
|
248
|
+
|
249
|
+
<RadioButtonGroup group={{align:'end'}} value={this.state.value6} options={[
|
250
|
+
{value:'test314', label:'Five'},
|
251
|
+
{value:'test315', label:'Six'},
|
252
|
+
]} onChange={(value) => this.setState(() => ({ value6: value }))} />
|
253
|
+
</div>
|
254
|
+
<p className="docs-page__paragraph docs-page__paragraph--topMarginL">// Grid</p>
|
255
|
+
<div className='form__row form__row--flex docs-page__test-helper-2' style={{width:500}}>
|
256
|
+
<RadioButtonGroup group={{grid:true}} value={this.state.value7} options={[
|
257
|
+
{value:'test316', label:'One'},
|
258
|
+
{value:'test317', label:'Two'},
|
259
|
+
{value:'test318', label:'Three'},
|
260
|
+
{value:'test319', label:'Four'},
|
261
|
+
{value:'test320', label:'Five'},
|
262
|
+
{value:'test321', label:'Six'},
|
263
|
+
]} onChange={(value) => this.setState(() => ({ value7: value }))} />
|
264
|
+
</div>
|
265
|
+
</Markup.ReactMarkupPreview>
|
266
|
+
<Markup.ReactMarkupCode>{`
|
267
|
+
// Left (default)
|
268
|
+
<RadioButtonGroup value={value3} options={[
|
269
|
+
{value:'test301', label:'Option one'},
|
270
|
+
{value:'test302', label:'Option two'},
|
271
|
+
{value:'test303', label:'Option three'},
|
272
|
+
]} />
|
273
|
+
|
274
|
+
// Right
|
275
|
+
<RadioButtonGroup group={{align:'end'}} value={value4} options={[
|
276
|
+
{value:'test304', label:'Option one'},
|
277
|
+
{value:'test305', label:'Option two'},
|
278
|
+
{value:'test306', label:'Option three'},
|
279
|
+
]} />
|
280
|
+
|
281
|
+
// Center
|
282
|
+
<RadioButtonGroup group={{align:'center'}} value={value5} options={[
|
283
|
+
{value:'test307', label:'Option one'},
|
284
|
+
{value:'test308', label:'Option two'},
|
285
|
+
{value:'test309', label:'Option three'},
|
286
|
+
]} />
|
287
|
+
|
288
|
+
// Left + Center + Right
|
289
|
+
<div className='form__row form__row--flex'>
|
290
|
+
<RadioButtonGroup value={value6} options={[
|
291
|
+
{value:'test310', label:'One'},
|
292
|
+
{value:'test311', label:'Two'},
|
293
|
+
]} />
|
294
|
+
|
295
|
+
<RadioButtonGroup group={{align:'center'}} value={value6} options={[
|
296
|
+
{value:'test312', label:'Three'},
|
297
|
+
{value:'test313', label:'Four'},
|
298
|
+
]} />
|
299
|
+
|
300
|
+
<RadioButtonGroup group={{align:'end'}} value={value6} options={[
|
301
|
+
{value:'test314', label:'Five'},
|
302
|
+
{value:'test315', label:'Six'},
|
303
|
+
]} />
|
304
|
+
</div>
|
305
|
+
|
306
|
+
// Grid
|
307
|
+
<RadioButtonGroup group={{grid:true}} value={value7} options={[
|
308
|
+
{value:'test316', label:'One'},
|
309
|
+
{value:'test317', label:'Two'},
|
310
|
+
{value:'test318', label:'Three'},
|
311
|
+
{value:'test319', label:'Four'},
|
312
|
+
{value:'test320', label:'Five'},
|
313
|
+
{value:'test321', label:'Six'},
|
314
|
+
]} />
|
315
|
+
`}
|
316
|
+
</Markup.ReactMarkupCode>
|
317
|
+
</Markup.ReactMarkup>
|
318
|
+
|
319
|
+
<h3 className="docs-page__h3">Props</h3>
|
320
|
+
<p className="docs-page__paragraph">RadioGroup</p>
|
321
|
+
<PropsList>
|
322
|
+
<Prop name='value' isRequired={true} type='T' default='/' description='The value of the checked button.'/>
|
323
|
+
<Prop name='options' isRequired={true} type='Array' default='/' description='Array of Radio options.'/>
|
324
|
+
<Prop name='options label' isRequired={true} type='string' default='/' description='Label text value for Radio.'/>
|
325
|
+
<Prop name='options value' isRequired={true} type='T' default='/' description='Value of the Radio.'/>
|
326
|
+
<Prop name='options disabled' isRequired={false} type='boolean' default='false' description='Disables the Radio, preventing mouse events.'/>
|
327
|
+
<Prop name='labelSide' isRequired={false} type='start | end' default='end' description='Position of label relative to the button.'/>
|
328
|
+
<Prop name='tabindex' isRequired={false} type='number' default='/' description='Indicates an element can be focused on, and determines how that focus is handled.' />
|
329
|
+
<Prop name='groupLabelledBy' isRequired={false} type='string' default='/' description='Aria-labelledby for screen-reader support.'/>
|
330
|
+
</PropsList>
|
331
|
+
<p className="docs-page__paragraph">RadioButtonGroup</p>
|
332
|
+
<PropsList>
|
333
|
+
<Prop name='value' isRequired={true} type='any' default='/' description='The value of the checked button.'/>
|
334
|
+
<Prop name='options' isRequired={true} type='Array<option>' default='/' description='Array of RadioButton options.'/>
|
335
|
+
<Prop name='tabindex' isRequired={false} type='number' default='/' description='Indicates an element can be focused on, and determines how that focus is handled.' />
|
336
|
+
<Prop name='option label' isRequired={true} type='string' default='/' description='Label text value for RadioButton.'/>
|
337
|
+
<Prop name='option value' isRequired={true} type='any' default='/' description='Value of the Radio.'/>
|
338
|
+
<Prop name='option disabled' isRequired={false} type='boolean' default='false' description='Disables the Radio, preventing mouse events.'/>
|
339
|
+
<Prop name='option labelHidden' isRequired={false} type='boolean' default='false' description='Hides visually the label and adds an aria-label for screen-reader support.'/>
|
340
|
+
<Prop name='option icon' isRequired={false} type='string' default='/' description='Icon class name without the icon- part.'/>
|
341
|
+
<Prop name='group orientation' isRequired={false} type='horizontal | vertical' default='horizontal' description='Orientation of the child elements.'/>
|
342
|
+
<Prop name='group align' isRequired={false} type='start | end | center | inline' default='start' description='Alignemnt of the whole group relative to the parent container. Container must be flex for this to work.'/>
|
343
|
+
<Prop name='group grid' isRequired={false} type='bolean' default='false' description='Lays out child elements in an uniform grid list.'/>
|
344
|
+
<Prop name='group padded' isRequired={false} type='bolean' default='false' description='Adds padding on the start and end (left and right) of the group.'/>
|
345
|
+
<Prop name='group groupLabel' isRequired={false} type='string' default='/' description='Label text value.'/>
|
346
|
+
<Prop name='group groupLabelledBy' isRequired={false} type='string' default='/' description='Aria-labelledby for screen-reader support.'/>
|
347
|
+
</PropsList>
|
348
|
+
</section>
|
349
|
+
)
|
350
|
+
}
|
351
|
+
}
|
@@ -73,7 +73,7 @@ export class SelectWithTemplateDocs extends React.Component<{}, IState> {
|
|
73
73
|
} else {
|
74
74
|
return (
|
75
75
|
<div style={{display: 'flex', alignItems: 'center'}}>
|
76
|
-
<div style={{width: 10, height: 10,
|
76
|
+
<div style={{width: 10, height: 10, marginInlineEnd: 10, backgroundColor: option.colorCode}} />
|
77
77
|
<div>{option.name}</div>
|
78
78
|
</div>
|
79
79
|
);
|
package/dist/react/Selects.tsx
CHANGED
@@ -37,7 +37,7 @@ export default class InputsDoc extends React.Component<{}, IState> {
|
|
37
37
|
<p className='docs-page__paragraph'></p>
|
38
38
|
<Markup.ReactMarkup>
|
39
39
|
<Markup.ReactMarkupPreview>
|
40
|
-
<div className='docs-page__content-row'>
|
40
|
+
<div className='docs-page__content-row docs-page__content-row--no-margin'>
|
41
41
|
<div className='form__row'>
|
42
42
|
<CheckGroup>
|
43
43
|
<Checkbox checked={this.state.required} label={{ text: 'Required input' }} onChange={(value) => { this.setState({ required: value }) }} />
|
@@ -56,6 +56,7 @@ export default class InputsDoc extends React.Component<{}, IState> {
|
|
56
56
|
required={this.state.required}
|
57
57
|
disabled={this.state.disabled}
|
58
58
|
invalid={this.state.invalid}
|
59
|
+
tabindex={0}
|
59
60
|
onChange={(value) => { console.log(value) }}>
|
60
61
|
<Option>Option 1</Option>
|
61
62
|
<Option>Option 2</Option>
|
@@ -63,27 +64,6 @@ export default class InputsDoc extends React.Component<{}, IState> {
|
|
63
64
|
</div>
|
64
65
|
</div>
|
65
66
|
|
66
|
-
<div className='docs-page__content-row docs-page__content-row--no-margin'>
|
67
|
-
<p className="docs-page__paragraph">// Hidden label</p>
|
68
|
-
<div className='form__row'>
|
69
|
-
<Select label='Hidden select label'
|
70
|
-
value='Option 1'
|
71
|
-
error='Error message'
|
72
|
-
info='This is a hint message'
|
73
|
-
inlineLabel={true}
|
74
|
-
labelHidden={true}
|
75
|
-
required={false}
|
76
|
-
disabled={false}
|
77
|
-
invalid={this.state.invalid}
|
78
|
-
onChange={(value) => { console.log(value) }}>
|
79
|
-
<Option>Option 1</Option>
|
80
|
-
<Option>Option 2</Option>
|
81
|
-
<Option>Option 3</Option>
|
82
|
-
<Option>Option 4</Option>
|
83
|
-
</Select>
|
84
|
-
</div>
|
85
|
-
</div>
|
86
|
-
|
87
67
|
</Markup.ReactMarkupPreview>
|
88
68
|
<Markup.ReactMarkupCode>{`
|
89
69
|
<Select label='Select label'
|
@@ -108,10 +88,10 @@ export default class InputsDoc extends React.Component<{}, IState> {
|
|
108
88
|
<Prop name='info' isRequired={false} type='string' default='/' description='Hint text' />
|
109
89
|
<Prop name='error' isRequired={false} type='string' default='/' description='Error text' />
|
110
90
|
<Prop name='inlineLabel' isRequired={false} type='boolean' default='false' description='Position labels as inline' />
|
111
|
-
<Prop name='labelHidden' isRequired={false} type='boolean' default='false' description='Hide the label. The label will still be accessible to screen-readers.'/>
|
112
91
|
<Prop name='required' isRequired={false} type='boolean' default='false' description='Mark field as required' />
|
113
92
|
<Prop name='disabled' isRequired={false} type='boolean' default='false' description='Mark field as disabled' />
|
114
93
|
<Prop name='invalid' isRequired={false} type='boolean' default='false' description='Mark field as invalid' />
|
94
|
+
<Prop name='tabindex' isRequired={false} type='number' default='/' description='Indicates an element can be focused on, and determines how that focus is handled.' />
|
115
95
|
</PropsList>
|
116
96
|
</section>
|
117
97
|
)
|