@pareto-engineering/design-system 4.0.0-alpha.5 → 4.0.0-alpha.50
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/dist/cjs/a/AnimatedBlobs/AnimatedBlobs.js +90 -0
- package/dist/cjs/a/AnimatedBlobs/index.js +13 -0
- package/dist/cjs/a/AnimatedBlobs/styles.scss +87 -0
- package/dist/cjs/a/AnimatedGradient/AnimatedGradient.js +60 -0
- package/dist/cjs/a/AnimatedGradient/index.js +13 -0
- package/dist/cjs/a/AnimatedGradient/styles.scss +14 -0
- package/dist/cjs/a/AnimatedGradient/webGIRenderer.js +528 -0
- package/dist/cjs/a/AppContext/ContextProvider.js +0 -2
- package/dist/cjs/a/AppContext/useTheme.js +0 -4
- package/dist/cjs/a/BlurOverlay/BlurOverlay.js +59 -0
- package/dist/cjs/a/BlurOverlay/index.js +13 -0
- package/dist/cjs/a/BlurOverlay/styles.scss +31 -0
- package/dist/cjs/a/ContentTree/ContentTree.js +10 -4
- package/dist/cjs/a/ContentTree/common/Tree/Tree.js +12 -5
- package/dist/cjs/a/ContentTree/styles.scss +34 -11
- package/dist/cjs/a/Conversation/Conversation.js +11 -16
- package/dist/cjs/a/Conversation/common/Message/Message.js +15 -12
- package/dist/cjs/a/Conversation/styles.scss +56 -124
- package/dist/cjs/a/DotInfo/DotInfo.js +1 -1
- package/dist/cjs/a/Figure/Figure.js +1 -1
- package/dist/cjs/a/HamburgerButton/HamburgerButton.js +1 -1
- package/dist/cjs/a/IconList/IconList.js +1 -1
- package/dist/cjs/a/IconList/common/Item/Item.js +1 -1
- package/dist/cjs/a/Label/Label.js +13 -5
- package/dist/cjs/a/Label/styles.scss +4 -4
- package/dist/cjs/a/LoadingCircle/LoadingCircle.js +1 -1
- package/dist/cjs/a/MetaCard/MetaCard.js +65 -0
- package/dist/cjs/a/MetaCard/index.js +13 -0
- package/dist/cjs/a/MetaCard/styles.scss +45 -0
- package/dist/cjs/a/People/People.js +1 -1
- package/dist/cjs/a/People/common/Person/Person.js +5 -5
- package/dist/cjs/a/People/styles.scss +10 -4
- package/dist/cjs/a/Popover/Popover.js +3 -3
- package/dist/cjs/a/Popover/styles.scss +1 -1
- package/dist/cjs/a/ProgressBar/ProgressBar.js +1 -1
- package/dist/cjs/a/Quote/Quote.js +1 -1
- package/dist/cjs/a/Removable/Removable.js +72 -0
- package/dist/cjs/a/Removable/index.js +13 -0
- package/dist/cjs/a/Removable/styles.scss +33 -0
- package/dist/cjs/a/SVG/SVG.js +1 -1
- package/dist/cjs/a/SnapScroller/SnapScroller.js +1 -1
- package/dist/cjs/a/SnapScroller/styles.scss +30 -10
- package/dist/cjs/a/Spinner/Spinner.js +1 -1
- package/dist/cjs/a/TextSteps/TextSteps.js +70 -0
- package/dist/cjs/a/TextSteps/index.js +13 -0
- package/dist/cjs/a/TextSteps/styles.scss +29 -0
- package/dist/cjs/a/Timestamp/Timestamp.js +1 -1
- package/dist/cjs/a/Tip/Tip.js +86 -0
- package/dist/cjs/a/Tip/index.js +13 -0
- package/dist/cjs/a/Tip/styles.scss +16 -0
- package/dist/cjs/a/index.js +50 -1
- package/dist/cjs/b/Button/Button.js +22 -9
- package/dist/cjs/b/Button/common/Group/Group.js +57 -0
- package/dist/cjs/b/Button/common/Group/index.js +13 -0
- package/dist/cjs/b/Button/common/Group/styles.scss +11 -0
- package/dist/cjs/b/Button/common/index.js +12 -0
- package/dist/cjs/b/Button/styles.scss +41 -11
- package/dist/cjs/b/Card/Card.js +74 -0
- package/dist/cjs/b/Card/common/Group/Group.js +73 -0
- package/dist/cjs/b/Card/common/Group/index.js +13 -0
- package/dist/cjs/b/Card/common/Group/styles.scss +35 -0
- package/dist/cjs/b/Card/common/Section/Section.js +59 -0
- package/dist/cjs/b/Card/common/Section/index.js +13 -0
- package/dist/cjs/b/Card/common/index.js +19 -0
- package/dist/cjs/b/Card/index.js +13 -0
- package/dist/cjs/b/Card/styles.scss +57 -0
- package/dist/cjs/b/Logo/Logo.js +1 -1
- package/dist/cjs/b/Page/Page.js +15 -5
- package/dist/cjs/b/Page/common/PageHelmet/PageHelmet.js +12 -2
- package/dist/cjs/b/Page/common/Section/Section.js +13 -3
- package/dist/cjs/b/Page/styles.scss +25 -4
- package/dist/cjs/b/SocialMediaButton/SocialMediaButton.js +6 -2
- package/dist/cjs/b/SocialMediaButton/styles.scss +0 -14
- package/dist/cjs/b/ThemeSelector/ThemeSelector.js +17 -27
- package/dist/cjs/b/ThemeSelector/styles.scss +44 -6
- package/dist/cjs/b/Title/Title.js +1 -2
- package/dist/cjs/b/index.js +8 -1
- package/dist/cjs/c/ContentSlides/ContentSlides.js +1 -1
- package/dist/cjs/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +1 -3
- package/dist/cjs/c/ContentSlides/common/Sidebar/Sidebar.js +0 -2
- package/dist/cjs/c/ContentSlides/styles.scss +2 -2
- package/dist/cjs/c/Modal/Modal.js +2 -2
- package/dist/cjs/c/Modal/common/ModalHeader/ModalHeader.js +1 -1
- package/dist/cjs/c/Modal/styles.scss +7 -12
- package/dist/cjs/c/Shortener/Shortener.js +1 -1
- package/dist/cjs/c/SocialMediaShareButton/SocialMediaShareButton.js +1 -1
- package/dist/cjs/f/FormInput/FormInput.js +13 -3
- package/dist/cjs/f/common/Debugger/Debugger.js +1 -1
- package/dist/cjs/f/common/Description/Description.js +6 -5
- package/dist/cjs/f/common/InputWrapper/InputWrapper.js +74 -0
- package/dist/cjs/f/common/InputWrapper/index.js +13 -0
- package/dist/cjs/f/common/InputWrapper/styles.scss +13 -0
- package/dist/cjs/f/common/Label/Label.js +19 -5
- package/dist/cjs/f/common/Label/styles.scss +8 -2
- package/dist/cjs/f/common/index.js +8 -1
- package/dist/cjs/f/fields/Checkbox/Checkbox.js +41 -11
- package/dist/cjs/f/fields/Checkbox/styles.scss +7 -8
- package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +56 -25
- package/dist/cjs/f/fields/ChoicesInput/common/Choice/Choice.js +2 -2
- package/dist/cjs/f/fields/ChoicesInput/styles.scss +52 -43
- package/dist/cjs/f/fields/EditorInput/EditorInput.js +222 -0
- package/dist/cjs/f/fields/EditorInput/common/Toolbar.js +257 -0
- package/dist/cjs/f/fields/EditorInput/common/TreeViewPlugin.js +19 -0
- package/dist/cjs/f/fields/EditorInput/common/index.js +20 -0
- package/dist/cjs/f/fields/EditorInput/index.js +13 -0
- package/dist/cjs/f/fields/EditorInput/styles.scss +147 -0
- package/dist/cjs/f/fields/LinkInput/LinkInput.js +164 -0
- package/dist/cjs/f/fields/LinkInput/index.js +13 -0
- package/dist/cjs/f/fields/LinkInput/styles.scss +89 -0
- package/dist/cjs/f/fields/QueryChoices/QueryChoices.js +27 -3
- package/dist/cjs/f/fields/QueryCombobox/QueryCombobox.js +36 -6
- package/dist/cjs/f/fields/QueryCombobox/common/Combobox/Combobox.js +44 -17
- package/dist/cjs/f/fields/QueryCombobox/common/Menu/Menu.js +1 -1
- package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +36 -26
- package/dist/cjs/f/fields/QueryCombobox/styles.scss +64 -30
- package/dist/cjs/f/fields/QuerySelect/QuerySelect.js +17 -3
- package/dist/cjs/f/fields/RatingsInput/RatingsInput.js +42 -20
- package/dist/cjs/f/fields/RatingsInput/common/Rating/Rating.js +5 -5
- package/dist/cjs/f/fields/RatingsInput/styles.scss +6 -13
- package/dist/cjs/f/fields/SelectInput/SelectInput.js +46 -16
- package/dist/cjs/f/fields/SelectInput/styles.scss +60 -26
- package/dist/cjs/f/fields/TextInput/TextInput.js +51 -18
- package/dist/cjs/f/fields/TextInput/styles.scss +56 -20
- package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +44 -23
- package/dist/cjs/f/fields/TextareaInput/styles.scss +42 -25
- package/dist/cjs/f/fields/index.js +15 -1
- package/dist/cjs/form.scss +1 -1
- package/dist/cjs/r/SwitchRouteMap/SwitchRouteMap.js +1 -1
- package/dist/cjs/r/common/PrivateRoute/PrivateRoute.js +1 -1
- package/dist/cjs/test/QueryLoader/QueryLoader.js +2 -0
- package/dist/es/a/AnimatedBlobs/AnimatedBlobs.js +82 -0
- package/dist/es/a/AnimatedBlobs/index.js +1 -0
- package/dist/es/a/AnimatedBlobs/styles.scss +87 -0
- package/dist/es/a/AnimatedGradient/AnimatedGradient.js +52 -0
- package/dist/es/a/AnimatedGradient/index.js +1 -0
- package/dist/es/a/AnimatedGradient/styles.scss +14 -0
- package/dist/es/a/AnimatedGradient/webGIRenderer.js +492 -0
- package/dist/es/a/AppContext/useTheme.js +0 -4
- package/dist/es/a/BlurOverlay/BlurOverlay.js +51 -0
- package/dist/es/a/BlurOverlay/index.js +2 -0
- package/dist/es/a/BlurOverlay/styles.scss +31 -0
- package/dist/es/a/ContentTree/ContentTree.js +9 -3
- package/dist/es/a/ContentTree/common/Tree/Tree.js +12 -5
- package/dist/es/a/ContentTree/styles.scss +34 -11
- package/dist/es/a/Conversation/Conversation.js +10 -15
- package/dist/es/a/Conversation/common/Message/Message.js +15 -12
- package/dist/es/a/Conversation/styles.scss +56 -124
- package/dist/es/a/Label/Label.js +12 -4
- package/dist/es/a/Label/styles.scss +4 -4
- package/dist/es/a/MetaCard/MetaCard.js +57 -0
- package/dist/es/a/MetaCard/index.js +1 -0
- package/dist/es/a/MetaCard/styles.scss +45 -0
- package/dist/es/a/People/common/Person/Person.js +5 -5
- package/dist/es/a/People/styles.scss +10 -4
- package/dist/es/a/Popover/Popover.js +2 -2
- package/dist/es/a/Popover/styles.scss +1 -1
- package/dist/es/a/Removable/Removable.js +64 -0
- package/dist/es/a/Removable/index.js +2 -0
- package/dist/es/a/Removable/styles.scss +33 -0
- package/dist/es/a/SnapScroller/styles.scss +30 -10
- package/dist/es/a/TextSteps/TextSteps.js +61 -0
- package/dist/es/a/TextSteps/index.js +1 -0
- package/dist/es/a/TextSteps/styles.scss +29 -0
- package/dist/es/a/Tip/Tip.js +78 -0
- package/dist/es/a/Tip/index.js +2 -0
- package/dist/es/a/Tip/styles.scss +16 -0
- package/dist/es/a/index.js +8 -1
- package/dist/es/b/Button/Button.js +22 -8
- package/dist/es/b/Button/common/Group/Group.js +49 -0
- package/dist/es/b/Button/common/Group/index.js +1 -0
- package/dist/es/b/Button/common/Group/styles.scss +11 -0
- package/dist/es/b/Button/common/index.js +1 -0
- package/dist/es/b/Button/styles.scss +41 -11
- package/dist/es/b/Card/Card.js +66 -0
- package/dist/es/b/Card/common/Group/Group.js +65 -0
- package/dist/es/b/Card/common/Group/index.js +1 -0
- package/dist/es/b/Card/common/Group/styles.scss +35 -0
- package/dist/es/b/Card/common/Section/Section.js +48 -0
- package/dist/es/b/Card/common/Section/index.js +1 -0
- package/dist/es/b/Card/common/index.js +2 -0
- package/dist/es/b/Card/index.js +1 -0
- package/dist/es/b/Card/styles.scss +57 -0
- package/dist/es/b/Page/Page.js +14 -3
- package/dist/es/b/Page/common/PageHelmet/PageHelmet.js +12 -2
- package/dist/es/b/Page/common/Section/Section.js +12 -2
- package/dist/es/b/Page/styles.scss +25 -4
- package/dist/es/b/SocialMediaButton/SocialMediaButton.js +5 -1
- package/dist/es/b/SocialMediaButton/styles.scss +0 -14
- package/dist/es/b/ThemeSelector/ThemeSelector.js +16 -27
- package/dist/es/b/ThemeSelector/styles.scss +44 -6
- package/dist/es/b/index.js +2 -1
- package/dist/es/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +1 -1
- package/dist/es/c/ContentSlides/styles.scss +2 -2
- package/dist/es/c/Modal/Modal.js +1 -1
- package/dist/es/c/Modal/common/ModalHeader/ModalHeader.js +1 -1
- package/dist/es/c/Modal/styles.scss +7 -12
- package/dist/es/f/FormInput/FormInput.js +13 -1
- package/dist/es/f/common/Description/Description.js +5 -4
- package/dist/es/f/common/InputWrapper/InputWrapper.js +66 -0
- package/dist/es/f/common/InputWrapper/index.js +2 -0
- package/dist/es/f/common/InputWrapper/styles.scss +13 -0
- package/dist/es/f/common/Label/Label.js +18 -4
- package/dist/es/f/common/Label/styles.scss +8 -2
- package/dist/es/f/common/index.js +2 -1
- package/dist/es/f/fields/Checkbox/Checkbox.js +41 -11
- package/dist/es/f/fields/Checkbox/styles.scss +7 -8
- package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +56 -25
- package/dist/es/f/fields/ChoicesInput/common/Choice/Choice.js +1 -1
- package/dist/es/f/fields/ChoicesInput/styles.scss +52 -43
- package/dist/es/f/fields/EditorInput/EditorInput.js +217 -0
- package/dist/es/f/fields/EditorInput/common/Toolbar.js +246 -0
- package/dist/es/f/fields/EditorInput/common/TreeViewPlugin.js +11 -0
- package/dist/es/f/fields/EditorInput/common/index.js +2 -0
- package/dist/es/f/fields/EditorInput/index.js +2 -0
- package/dist/es/f/fields/EditorInput/styles.scss +147 -0
- package/dist/es/f/fields/LinkInput/LinkInput.js +156 -0
- package/dist/es/f/fields/LinkInput/index.js +2 -0
- package/dist/es/f/fields/LinkInput/styles.scss +89 -0
- package/dist/es/f/fields/QueryChoices/QueryChoices.js +26 -2
- package/dist/es/f/fields/QueryCombobox/QueryCombobox.js +35 -5
- package/dist/es/f/fields/QueryCombobox/common/Combobox/Combobox.js +43 -16
- package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +35 -25
- package/dist/es/f/fields/QueryCombobox/styles.scss +64 -30
- package/dist/es/f/fields/QuerySelect/QuerySelect.js +17 -3
- package/dist/es/f/fields/RatingsInput/RatingsInput.js +42 -20
- package/dist/es/f/fields/RatingsInput/common/Rating/Rating.js +4 -4
- package/dist/es/f/fields/RatingsInput/styles.scss +6 -13
- package/dist/es/f/fields/SelectInput/SelectInput.js +46 -16
- package/dist/es/f/fields/SelectInput/styles.scss +60 -26
- package/dist/es/f/fields/TextInput/TextInput.js +51 -18
- package/dist/es/f/fields/TextInput/styles.scss +56 -20
- package/dist/es/f/fields/TextareaInput/TextareaInput.js +44 -23
- package/dist/es/f/fields/TextareaInput/styles.scss +42 -25
- package/dist/es/f/fields/index.js +3 -1
- package/dist/es/form.scss +1 -1
- package/package.json +18 -15
- package/src/stories/a/AppContext.stories.jsx +4 -2
- package/src/stories/a/BlurOverlay.stories.jsx +39 -0
- package/src/stories/a/Conversation.stories.jsx +11 -42
- package/src/stories/a/MetaCard.stories.jsx +35 -0
- package/src/stories/a/People.stories.jsx +22 -2
- package/src/stories/a/Quote.stories.jsx +1 -1
- package/src/stories/a/Removable.stories.jsx +22 -0
- package/src/stories/a/SnapScroller.stories.jsx +2 -2
- package/src/stories/a/Spinner.stories.jsx +1 -1
- package/src/stories/a/TextSteps.stories.jsx +19 -0
- package/src/stories/a/Tip.stories.jsx +29 -0
- package/src/stories/b/{Button.stories.jsx → Button/Button.stories.jsx} +18 -0
- package/src/stories/b/Button/Group.stories.jsx +35 -0
- package/src/stories/b/Card/Card.stories.jsx +59 -0
- package/src/stories/b/Card/Group.stories.jsx +59 -0
- package/src/stories/b/Page.stories.jsx +19 -3
- package/src/stories/b/SocialMediaButton.stories.jsx +4 -2
- package/src/stories/b/ThemeSelector.stories.jsx +1 -5
- package/src/stories/b/Title.stories.jsx +1 -1
- package/src/stories/c/ContentSlides.stories.jsx +1 -1
- package/src/stories/colors.js +22 -28
- package/src/stories/f/Checkbox.stories.jsx +22 -7
- package/src/stories/f/ChoicesInput.stories.jsx +21 -7
- package/src/stories/f/EditorInput.stories.jsx +88 -0
- package/src/stories/f/LinkInput.stories.jsx +100 -0
- package/src/stories/f/QueryChoices.stories.jsx +20 -4
- package/src/stories/f/QueryCombobox.stories.jsx +25 -13
- package/src/stories/f/QuerySelect.stories.jsx +20 -5
- package/src/stories/f/RatingsInput.stories.jsx +16 -2
- package/src/stories/f/SelectInput.stories.jsx +27 -5
- package/src/stories/f/TextInput.stories.jsx +33 -12
- package/src/stories/f/TextareaInput.stories.jsx +16 -2
- package/src/ui/a/AnimatedBlobs/AnimatedBlobs.jsx +102 -0
- package/src/ui/a/AnimatedBlobs/index.js +1 -0
- package/src/ui/a/AnimatedBlobs/styles.scss +87 -0
- package/src/ui/a/AnimatedGradient/AnimatedGradient.jsx +73 -0
- package/src/ui/a/AnimatedGradient/index.js +1 -0
- package/src/ui/a/AnimatedGradient/styles.scss +14 -0
- package/src/ui/a/AnimatedGradient/webGIRenderer.js +541 -0
- package/src/ui/a/AppContext/useTheme.js +0 -4
- package/src/ui/a/BlurOverlay/BlurOverlay.jsx +75 -0
- package/src/ui/a/BlurOverlay/index.js +2 -0
- package/src/ui/a/BlurOverlay/styles.scss +31 -0
- package/src/ui/a/ContentTree/ContentTree.jsx +8 -4
- package/src/ui/a/ContentTree/common/Tree/Tree.jsx +19 -7
- package/src/ui/a/ContentTree/styles.scss +34 -11
- package/src/ui/a/Conversation/Conversation.jsx +14 -18
- package/src/ui/a/Conversation/common/Message/Message.jsx +18 -11
- package/src/ui/a/Conversation/styles.scss +56 -124
- package/src/ui/a/Label/Label.jsx +11 -2
- package/src/ui/a/Label/styles.scss +4 -4
- package/src/ui/a/MetaCard/MetaCard.jsx +81 -0
- package/src/ui/a/MetaCard/index.js +1 -0
- package/src/ui/a/MetaCard/styles.scss +45 -0
- package/src/ui/a/People/common/Person/Person.jsx +5 -5
- package/src/ui/a/People/styles.scss +10 -4
- package/src/ui/a/Popover/Popover.jsx +2 -2
- package/src/ui/a/Popover/styles.scss +1 -1
- package/src/ui/a/Removable/Removable.jsx +85 -0
- package/src/ui/a/Removable/index.js +2 -0
- package/src/ui/a/Removable/styles.scss +33 -0
- package/src/ui/a/SnapScroller/styles.scss +30 -10
- package/src/ui/a/TextSteps/TextSteps.jsx +87 -0
- package/src/ui/a/TextSteps/index.js +1 -0
- package/src/ui/a/TextSteps/styles.scss +29 -0
- package/src/ui/a/Tip/Tip.jsx +105 -0
- package/src/ui/a/Tip/index.js +2 -0
- package/src/ui/a/Tip/styles.scss +16 -0
- package/src/ui/a/index.js +7 -0
- package/src/ui/b/Button/Button.jsx +28 -8
- package/src/ui/b/Button/common/Group/Group.jsx +71 -0
- package/src/ui/b/Button/common/Group/index.js +1 -0
- package/src/ui/b/Button/common/Group/styles.scss +11 -0
- package/src/ui/b/Button/common/index.js +1 -0
- package/src/ui/b/Button/styles.scss +41 -11
- package/src/ui/b/Card/Card.jsx +94 -0
- package/src/ui/b/Card/common/Group/Group.jsx +91 -0
- package/src/ui/b/Card/common/Group/index.js +1 -0
- package/src/ui/b/Card/common/Group/styles.scss +35 -0
- package/src/ui/b/Card/common/Section/Section.jsx +70 -0
- package/src/ui/b/Card/common/Section/index.js +1 -0
- package/src/ui/b/Card/common/index.js +2 -0
- package/src/ui/b/Card/index.js +1 -0
- package/src/ui/b/Card/styles.scss +57 -0
- package/src/ui/b/Page/Page.jsx +11 -1
- package/src/ui/b/Page/common/PageHelmet/PageHelmet.jsx +14 -3
- package/src/ui/b/Page/common/Section/Section.jsx +16 -1
- package/src/ui/b/Page/styles.scss +25 -4
- package/src/ui/b/SocialMediaButton/SocialMediaButton.jsx +5 -1
- package/src/ui/b/SocialMediaButton/styles.scss +0 -14
- package/src/ui/b/ThemeSelector/ThemeSelector.jsx +16 -29
- package/src/ui/b/ThemeSelector/styles.scss +44 -6
- package/src/ui/b/index.js +1 -0
- package/src/ui/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.jsx +1 -1
- package/src/ui/c/ContentSlides/styles.scss +2 -2
- package/src/ui/c/Modal/Modal.jsx +1 -1
- package/src/ui/c/Modal/common/ModalHeader/ModalHeader.jsx +1 -1
- package/src/ui/c/Modal/styles.scss +7 -12
- package/src/ui/f/FormInput/FormInput.jsx +23 -0
- package/src/ui/f/common/Description/Description.jsx +5 -4
- package/src/ui/f/common/InputWrapper/InputWrapper.jsx +89 -0
- package/src/ui/f/common/InputWrapper/index.js +2 -0
- package/src/ui/f/common/InputWrapper/styles.scss +13 -0
- package/src/ui/f/common/Label/Label.jsx +18 -2
- package/src/ui/f/common/Label/styles.scss +8 -2
- package/src/ui/f/common/index.js +1 -0
- package/src/ui/f/fields/Checkbox/Checkbox.jsx +65 -27
- package/src/ui/f/fields/Checkbox/styles.scss +7 -8
- package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +83 -48
- package/src/ui/f/fields/ChoicesInput/common/Choice/Choice.jsx +10 -3
- package/src/ui/f/fields/ChoicesInput/styles.scss +52 -43
- package/src/ui/f/fields/EditorInput/EditorInput.jsx +272 -0
- package/src/ui/f/fields/EditorInput/common/Toolbar.jsx +356 -0
- package/src/ui/f/fields/EditorInput/common/TreeViewPlugin.jsx +16 -0
- package/src/ui/f/fields/EditorInput/common/index.jsx +2 -0
- package/src/ui/f/fields/EditorInput/index.js +2 -0
- package/src/ui/f/fields/EditorInput/styles.scss +147 -0
- package/src/ui/f/fields/LinkInput/LinkInput.jsx +197 -0
- package/src/ui/f/fields/LinkInput/index.js +2 -0
- package/src/ui/f/fields/LinkInput/styles.scss +89 -0
- package/src/ui/f/fields/QueryChoices/QueryChoices.jsx +28 -0
- package/src/ui/f/fields/QueryCombobox/QueryCombobox.jsx +37 -2
- package/src/ui/f/fields/QueryCombobox/common/Combobox/Combobox.jsx +68 -38
- package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +81 -66
- package/src/ui/f/fields/QueryCombobox/styles.scss +64 -30
- package/src/ui/f/fields/QuerySelect/QuerySelect.jsx +16 -1
- package/src/ui/f/fields/RatingsInput/RatingsInput.jsx +55 -28
- package/src/ui/f/fields/RatingsInput/common/Rating/Rating.jsx +4 -4
- package/src/ui/f/fields/RatingsInput/styles.scss +6 -13
- package/src/ui/f/fields/SelectInput/SelectInput.jsx +88 -49
- package/src/ui/f/fields/SelectInput/styles.scss +60 -26
- package/src/ui/f/fields/TextInput/TextInput.jsx +71 -34
- package/src/ui/f/fields/TextInput/styles.scss +56 -20
- package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +65 -43
- package/src/ui/f/fields/TextareaInput/styles.scss +42 -25
- package/src/ui/f/fields/index.js +2 -0
- package/src/ui/form.scss +1 -1
- package/tests/__snapshots__/Storyshots.test.js.snap +14253 -5695
package/src/ui/b/Page/Page.jsx
CHANGED
|
@@ -3,6 +3,7 @@ import * as React from 'react'
|
|
|
3
3
|
import { useInsertionEffect, useEffect } from 'react'
|
|
4
4
|
import PropTypes from 'prop-types'
|
|
5
5
|
import styleNames from '@pareto-engineering/bem/exports'
|
|
6
|
+
import { useApp } from 'ui/a'
|
|
6
7
|
|
|
7
8
|
// Imports from the component folder
|
|
8
9
|
import { PageHelmet, Section } from './common'
|
|
@@ -23,16 +24,18 @@ const Page = ({
|
|
|
23
24
|
className:userClassName,
|
|
24
25
|
style,
|
|
25
26
|
children,
|
|
26
|
-
|
|
27
27
|
itemType,
|
|
28
28
|
as:Wrapper,
|
|
29
29
|
helmetProps,
|
|
30
|
+
Background,
|
|
30
31
|
...otherProps
|
|
31
32
|
}) => {
|
|
32
33
|
useInsertionEffect(() => {
|
|
33
34
|
import('./styles.scss')
|
|
34
35
|
}, [])
|
|
35
36
|
|
|
37
|
+
const { userTheme } = useApp()
|
|
38
|
+
|
|
36
39
|
useEffect(() => {
|
|
37
40
|
// If we're on the client, we make sure to scroll up when the page loads
|
|
38
41
|
// This is a necessary transform to make react apt for website pages
|
|
@@ -54,6 +57,7 @@ const Page = ({
|
|
|
54
57
|
baseClassName,
|
|
55
58
|
componentClassName,
|
|
56
59
|
userClassName,
|
|
60
|
+
userTheme && `ui-${userTheme}`,
|
|
57
61
|
]
|
|
58
62
|
.filter((e) => e)
|
|
59
63
|
.join(' ')}
|
|
@@ -70,6 +74,7 @@ const Page = ({
|
|
|
70
74
|
)}
|
|
71
75
|
{ helmetProps && <PageHelmet {...helmetProps} /> }
|
|
72
76
|
{children}
|
|
77
|
+
{Background && <Background className="background" />}
|
|
73
78
|
</Wrapper>
|
|
74
79
|
</Context.Provider>
|
|
75
80
|
)
|
|
@@ -110,6 +115,11 @@ Page.propTypes = {
|
|
|
110
115
|
* The props to pass to `Page.Helmet`. Refer to the corresponding section of the docs.
|
|
111
116
|
*/
|
|
112
117
|
helmetProps:PropTypes.objectOf(PropTypes.string),
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* The component to use as background
|
|
121
|
+
*/
|
|
122
|
+
Background:PropTypes.node,
|
|
113
123
|
}
|
|
114
124
|
|
|
115
125
|
Page.defaultProps = {
|
|
@@ -23,7 +23,7 @@ const helmetMap = [
|
|
|
23
23
|
<title key="title_tag">
|
|
24
24
|
{`
|
|
25
25
|
${v}
|
|
26
|
-
${c.SITE?.TITLE_SUFFIX
|
|
26
|
+
${c.SITE?.TITLE_SUFFIX ? c.SITE.TITLE_SUFFIX : ''}
|
|
27
27
|
`}
|
|
28
28
|
</title>
|
|
29
29
|
),
|
|
@@ -59,6 +59,18 @@ const helmetMap = [
|
|
|
59
59
|
)),
|
|
60
60
|
},
|
|
61
61
|
|
|
62
|
+
{
|
|
63
|
+
test :true,
|
|
64
|
+
variables:['og_image', 'main_image'],
|
|
65
|
+
render :() => (
|
|
66
|
+
<meta
|
|
67
|
+
name="twitter:card"
|
|
68
|
+
content="summary_large_image"
|
|
69
|
+
key="twitter_card"
|
|
70
|
+
/>
|
|
71
|
+
),
|
|
72
|
+
},
|
|
73
|
+
|
|
62
74
|
{
|
|
63
75
|
variables:['twitter_title', 'title', 'title_tag'],
|
|
64
76
|
render :(v) => (
|
|
@@ -203,10 +215,9 @@ const PageHelmet = ({
|
|
|
203
215
|
[props, context])
|
|
204
216
|
|
|
205
217
|
return (
|
|
206
|
-
<Helmet>
|
|
218
|
+
<Helmet key={props.title}>
|
|
207
219
|
{ HelmetContent }
|
|
208
220
|
</Helmet>
|
|
209
|
-
|
|
210
221
|
)
|
|
211
222
|
}
|
|
212
223
|
|
|
@@ -14,6 +14,8 @@ const Section = ({
|
|
|
14
14
|
className:userClassName,
|
|
15
15
|
style,
|
|
16
16
|
children,
|
|
17
|
+
isSpaced,
|
|
18
|
+
padded,
|
|
17
19
|
...otherProps
|
|
18
20
|
}) => {
|
|
19
21
|
const {
|
|
@@ -28,6 +30,9 @@ const Section = ({
|
|
|
28
30
|
baseClassName,
|
|
29
31
|
componentClassName,
|
|
30
32
|
userClassName,
|
|
33
|
+
isSpaced && styleNames.modifierSpaced,
|
|
34
|
+
padded && 'padded',
|
|
35
|
+
'grid',
|
|
31
36
|
]
|
|
32
37
|
.filter((e) => e)
|
|
33
38
|
.join(' ')}
|
|
@@ -55,6 +60,16 @@ Section.propTypes = {
|
|
|
55
60
|
*/
|
|
56
61
|
style:PropTypes.objectOf(PropTypes.string),
|
|
57
62
|
|
|
63
|
+
/**
|
|
64
|
+
* Whether the section contains the theme spacing
|
|
65
|
+
*/
|
|
66
|
+
spaced:PropTypes.bool,
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Whether the section contains the theme spacing
|
|
70
|
+
*/
|
|
71
|
+
padded:PropTypes.bool,
|
|
72
|
+
|
|
58
73
|
/**
|
|
59
74
|
* The children JSX
|
|
60
75
|
*/
|
|
@@ -62,7 +77,7 @@ Section.propTypes = {
|
|
|
62
77
|
}
|
|
63
78
|
|
|
64
79
|
Section.defaultProps = {
|
|
65
|
-
|
|
80
|
+
padded:true,
|
|
66
81
|
}
|
|
67
82
|
|
|
68
83
|
export default Section
|
|
@@ -2,16 +2,37 @@
|
|
|
2
2
|
/* stylelint-disable selector-max-universal -- exception */
|
|
3
3
|
|
|
4
4
|
@use "@pareto-engineering/bem";
|
|
5
|
-
|
|
5
|
+
@use "@pareto-engineering/styles/src/mixins";
|
|
6
|
+
@use "@pareto-engineering/styles/src/globals" as *;
|
|
6
7
|
|
|
7
8
|
.#{bem.$base}.page {
|
|
8
|
-
|
|
9
|
+
position: relative;
|
|
10
|
+
|
|
11
|
+
> .background {
|
|
12
|
+
position: fixed;
|
|
13
|
+
z-index: -1;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
> .#{bem.$base}.section {
|
|
9
17
|
position: relative;
|
|
10
18
|
|
|
19
|
+
&.padded {
|
|
20
|
+
padding-left: var(--gap);
|
|
21
|
+
padding-right: var(--gap);
|
|
22
|
+
}
|
|
23
|
+
|
|
11
24
|
> *:not(:last-child) {
|
|
12
25
|
z-index: 1;
|
|
13
26
|
}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
27
|
|
|
28
|
+
&.#{bem.$modifier-spaced} {
|
|
29
|
+
padding-bottom: var(--theme-default-section-spacing);
|
|
30
|
+
padding-top: var(--theme-default-section-spacing);
|
|
17
31
|
|
|
32
|
+
@include mixins.media($from: $sm-md) {
|
|
33
|
+
padding-bottom: var(--theme-desktop-section-spacing);
|
|
34
|
+
padding-top: var(--theme-desktop-section-spacing);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -32,6 +32,10 @@ const defaultsMap = {
|
|
|
32
32
|
icon:'l',
|
|
33
33
|
link:'LINKEDIN',
|
|
34
34
|
},
|
|
35
|
+
threads:{
|
|
36
|
+
icon:'u',
|
|
37
|
+
link:'THREADS',
|
|
38
|
+
},
|
|
35
39
|
}
|
|
36
40
|
|
|
37
41
|
/**
|
|
@@ -57,7 +61,7 @@ const SocialMediaButton = ({
|
|
|
57
61
|
}, [])
|
|
58
62
|
|
|
59
63
|
const content = type && defaultsMap[type]
|
|
60
|
-
const href = link || applicationContext?.SOCIAL?.[content
|
|
64
|
+
const href = link || applicationContext?.SOCIAL?.[content?.link]
|
|
61
65
|
|
|
62
66
|
return (
|
|
63
67
|
<a href={href} target="_blank" rel="noreferrer">
|
|
@@ -9,24 +9,10 @@ $mobile-dimensions: 2.75em;
|
|
|
9
9
|
|
|
10
10
|
.#{bem.$base}.social-media-button {
|
|
11
11
|
appearance: none;
|
|
12
|
-
background: var(--y, var(--heading));
|
|
13
12
|
border: 0;
|
|
14
|
-
border-radius: 3em;
|
|
15
|
-
color: var(--on-y, var(--on-heading));
|
|
16
13
|
cursor: pointer;
|
|
17
14
|
font-family: "icons", sans-serif;
|
|
18
|
-
height: $default-dimensions;
|
|
19
15
|
transition: all .3s;
|
|
20
|
-
width: $default-dimensions;
|
|
21
|
-
|
|
22
|
-
@include mixins.media($to:$sm-md) {
|
|
23
|
-
height: $mobile-dimensions;
|
|
24
|
-
width: $mobile-dimensions;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
&:hover {
|
|
28
|
-
background: var(--x);
|
|
29
|
-
}
|
|
30
16
|
|
|
31
17
|
&:focus {
|
|
32
18
|
background: var(--soft-x);
|
|
@@ -17,12 +17,9 @@ const componentClassName = 'theme-selector'
|
|
|
17
17
|
*/
|
|
18
18
|
const ThemeSelector = ({
|
|
19
19
|
id,
|
|
20
|
-
className:userClassName,
|
|
20
|
+
className: userClassName,
|
|
21
21
|
style,
|
|
22
|
-
// children
|
|
23
|
-
|
|
24
22
|
themes,
|
|
25
|
-
iconMap,
|
|
26
23
|
}) => {
|
|
27
24
|
const {
|
|
28
25
|
userTheme,
|
|
@@ -40,8 +37,7 @@ const ThemeSelector = ({
|
|
|
40
37
|
[userTheme])
|
|
41
38
|
|
|
42
39
|
return (
|
|
43
|
-
<
|
|
44
|
-
type="button"
|
|
40
|
+
<div
|
|
45
41
|
className={[
|
|
46
42
|
baseClassName,
|
|
47
43
|
componentClassName,
|
|
@@ -51,15 +47,21 @@ const ThemeSelector = ({
|
|
|
51
47
|
.join(' ')}
|
|
52
48
|
id={id}
|
|
53
49
|
style={style}
|
|
54
|
-
onClick={loopThemes}
|
|
55
50
|
>
|
|
56
|
-
<span className="
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
{ userTheme }
|
|
51
|
+
<span className="c-x x-paragraph">
|
|
52
|
+
Theme:
|
|
53
|
+
{' '}
|
|
54
|
+
{userTheme && userTheme[0].toUpperCase() + userTheme.slice(1)}
|
|
61
55
|
</span>
|
|
62
|
-
|
|
56
|
+
<button
|
|
57
|
+
type="button"
|
|
58
|
+
onClick={loopThemes}
|
|
59
|
+
>
|
|
60
|
+
<input type="checkbox" id="switch" checked={userTheme === 'dark'} />
|
|
61
|
+
{/* eslint-disable-next-line jsx-a11y/label-has-associated-control */}
|
|
62
|
+
<label htmlFor="switch" />
|
|
63
|
+
</button>
|
|
64
|
+
</div>
|
|
63
65
|
)
|
|
64
66
|
}
|
|
65
67
|
|
|
@@ -79,29 +81,14 @@ ThemeSelector.propTypes = {
|
|
|
79
81
|
*/
|
|
80
82
|
style:PropTypes.objectOf(PropTypes.string),
|
|
81
83
|
|
|
82
|
-
/**
|
|
83
|
-
* The children JSX
|
|
84
|
-
*/
|
|
85
|
-
// children: PropTypes.node,
|
|
86
|
-
|
|
87
84
|
/**
|
|
88
85
|
* The themes and the order in which they appear
|
|
89
86
|
*/
|
|
90
87
|
themes:PropTypes.arrayOf(PropTypes.string),
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* A map of the theme names with the icons that represent them. Uses the default font icon.
|
|
94
|
-
*/
|
|
95
|
-
iconMap:PropTypes.objectOf(PropTypes.string),
|
|
96
|
-
|
|
97
88
|
}
|
|
98
89
|
|
|
99
90
|
ThemeSelector.defaultProps = {
|
|
100
|
-
themes
|
|
101
|
-
iconMap:{
|
|
102
|
-
dark :'n', // sun,
|
|
103
|
-
light:'m', // moon,
|
|
104
|
-
},
|
|
91
|
+
themes:['light', 'dark'],
|
|
105
92
|
}
|
|
106
93
|
|
|
107
94
|
export default ThemeSelector
|
|
@@ -2,13 +2,51 @@
|
|
|
2
2
|
|
|
3
3
|
@use "@pareto-engineering/bem";
|
|
4
4
|
|
|
5
|
-
$default-
|
|
5
|
+
$default-border-radius: var(--theme-default-border-radius);
|
|
6
|
+
$default-size: 1.2em;
|
|
6
7
|
|
|
7
8
|
.#{bem.$base}.theme-selector {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
align-items: center;
|
|
10
|
+
display: flex;
|
|
11
|
+
gap: var(--gap);
|
|
12
|
+
|
|
13
|
+
> button {
|
|
14
|
+
background: transparent;
|
|
15
|
+
border: none;
|
|
16
|
+
cursor: pointer;
|
|
17
|
+
display: flex;
|
|
18
|
+
|
|
19
|
+
>input {
|
|
20
|
+
height: 0;
|
|
21
|
+
visibility: hidden;
|
|
22
|
+
width: 0;
|
|
23
|
+
}
|
|
13
24
|
|
|
25
|
+
>label {
|
|
26
|
+
background: var(--interactive);
|
|
27
|
+
border-radius: $default-border-radius;
|
|
28
|
+
cursor: pointer;
|
|
29
|
+
display: block;
|
|
30
|
+
height: $default-size;
|
|
31
|
+
position: relative;
|
|
32
|
+
width: calc($default-size * 2);
|
|
14
33
|
|
|
34
|
+
&::after {
|
|
35
|
+
background: var(--background-far);
|
|
36
|
+
border: 1px solid var(--ui-lines);
|
|
37
|
+
border-radius: $default-border-radius;
|
|
38
|
+
content: "";
|
|
39
|
+
height: $default-size;
|
|
40
|
+
left: 0;
|
|
41
|
+
position: absolute;
|
|
42
|
+
top: 0;
|
|
43
|
+
transition: .3s;
|
|
44
|
+
width: $default-size;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
>input:checked + label::after {
|
|
49
|
+
left: $default-size;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
package/src/ui/b/index.js
CHANGED
|
@@ -60,7 +60,7 @@ const HorizontalMenu = ({
|
|
|
60
60
|
>
|
|
61
61
|
{
|
|
62
62
|
(currentStep?.progress > 0)
|
|
63
|
-
&& <ProgressBar progress={currentStep.progress} attached height=".4em" color={color} className="y-
|
|
63
|
+
&& <ProgressBar progress={currentStep.progress} attached height=".4em" color={color} className="y-background-far b-hard-y" />
|
|
64
64
|
}
|
|
65
65
|
<div className={styleNames.elementContent}>
|
|
66
66
|
<div className="left">
|
|
@@ -16,8 +16,8 @@ $class-navigator:navigator;
|
|
|
16
16
|
$default-sidebar-width:minmax(250px, 330px);
|
|
17
17
|
$default-border:none;//2px solid var(--grid);
|
|
18
18
|
$default-border-radius:var(--theme-border-radius);
|
|
19
|
-
$default-content-background: var(--
|
|
20
|
-
$default-padding:var(--
|
|
19
|
+
$default-content-background: var(--background-far);
|
|
20
|
+
$default-padding:var(--theme-default-padding);
|
|
21
21
|
|
|
22
22
|
$mobile-content-margin:6em;
|
|
23
23
|
|
package/src/ui/c/Modal/Modal.jsx
CHANGED
|
@@ -3,14 +3,12 @@
|
|
|
3
3
|
@use "@pareto-engineering/bem";
|
|
4
4
|
@use "sass:math";
|
|
5
5
|
|
|
6
|
-
$default-background: var(--
|
|
6
|
+
$default-background: var(--background-cards);
|
|
7
|
+
$default-border: var(--theme-default-border-style) var(--metadata);
|
|
7
8
|
/* stylelint-disable-next-line color-named -- needed for rgba function */
|
|
8
9
|
$default-box-shadow: 0 10px 20px rgba(black, .2);
|
|
9
10
|
$default-padding: math.div(1em, 2);
|
|
10
11
|
$default-margin: 2em;
|
|
11
|
-
$default-max-height: 75vh;
|
|
12
|
-
$default-max-width: 90%;
|
|
13
|
-
$default-min-width: 20em;
|
|
14
12
|
|
|
15
13
|
.#{bem.$base}.modal {
|
|
16
14
|
background: $default-background;
|
|
@@ -18,22 +16,15 @@ $default-min-width: 20em;
|
|
|
18
16
|
display: flex;
|
|
19
17
|
flex-direction: column;
|
|
20
18
|
left: 50%;
|
|
21
|
-
max-height: $default-max-height;
|
|
22
|
-
max-width: $default-max-width;
|
|
23
|
-
min-width: $default-min-width;
|
|
24
19
|
overflow: auto;
|
|
25
20
|
position: absolute;
|
|
26
21
|
top: 50%;
|
|
27
22
|
transform: translate(-50%, -50%);
|
|
28
23
|
z-index: 100;
|
|
29
24
|
|
|
30
|
-
.modal-body {
|
|
31
|
-
padding: $default-padding;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
25
|
.modal-header {
|
|
35
26
|
background: $default-background;
|
|
36
|
-
border-bottom:
|
|
27
|
+
border-bottom: $default-border;
|
|
37
28
|
display: flex;
|
|
38
29
|
font-size: calc(var(--theme-heading-font-size-multiplier, 1) * var(--s1) * 1em);
|
|
39
30
|
justify-content: space-between;
|
|
@@ -45,5 +36,9 @@ $default-min-width: 20em;
|
|
|
45
36
|
margin: 0;
|
|
46
37
|
padding: $default-padding;
|
|
47
38
|
}
|
|
39
|
+
|
|
40
|
+
.close-button {
|
|
41
|
+
display: block;
|
|
42
|
+
}
|
|
48
43
|
}
|
|
49
44
|
}
|
|
@@ -15,6 +15,8 @@ import {
|
|
|
15
15
|
RatingsInput,
|
|
16
16
|
Checkbox,
|
|
17
17
|
QueryChoices,
|
|
18
|
+
LinkInput,
|
|
19
|
+
EditorInput,
|
|
18
20
|
} from '../fields'
|
|
19
21
|
|
|
20
22
|
// Local Definitions
|
|
@@ -117,6 +119,26 @@ const FormInput = ({
|
|
|
117
119
|
)
|
|
118
120
|
}
|
|
119
121
|
|
|
122
|
+
if (type === 'link') {
|
|
123
|
+
return (
|
|
124
|
+
<LinkInput
|
|
125
|
+
className={newClassName}
|
|
126
|
+
disabled={disabled}
|
|
127
|
+
{...otherProps}
|
|
128
|
+
/>
|
|
129
|
+
)
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (type === 'editor') {
|
|
133
|
+
return (
|
|
134
|
+
<EditorInput
|
|
135
|
+
className={newClassName}
|
|
136
|
+
disabled={disabled}
|
|
137
|
+
{...otherProps}
|
|
138
|
+
/>
|
|
139
|
+
)
|
|
140
|
+
}
|
|
141
|
+
|
|
120
142
|
if (extraTypes?.[type]) {
|
|
121
143
|
const Component = extraTypes[type]
|
|
122
144
|
return (
|
|
@@ -127,6 +149,7 @@ const FormInput = ({
|
|
|
127
149
|
/>
|
|
128
150
|
)
|
|
129
151
|
}
|
|
152
|
+
|
|
130
153
|
return (
|
|
131
154
|
<TextInput
|
|
132
155
|
className={newClassName}
|
|
@@ -31,9 +31,10 @@ const Description = ({
|
|
|
31
31
|
import('./styles.scss')
|
|
32
32
|
}, [])
|
|
33
33
|
|
|
34
|
-
const [
|
|
34
|
+
const [, meta] = useField(name)
|
|
35
|
+
const hasError = meta.touched && meta.error
|
|
35
36
|
|
|
36
|
-
if (
|
|
37
|
+
if (hasError || description) {
|
|
37
38
|
return (
|
|
38
39
|
<div
|
|
39
40
|
id={id}
|
|
@@ -41,13 +42,13 @@ const Description = ({
|
|
|
41
42
|
baseClassName,
|
|
42
43
|
componentClassName,
|
|
43
44
|
userClassName,
|
|
44
|
-
|
|
45
|
+
hasError ? 'x-error' : `x-${color}`,
|
|
45
46
|
]
|
|
46
47
|
.filter((e) => e)
|
|
47
48
|
.join(' ')}
|
|
48
49
|
style={style}
|
|
49
50
|
>
|
|
50
|
-
{ meta.error
|
|
51
|
+
{ hasError ? meta.error : description}
|
|
51
52
|
</div>
|
|
52
53
|
)
|
|
53
54
|
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/* @pareto-engineering/generator-front 1.0.12 */
|
|
2
|
+
import * as React from 'react'
|
|
3
|
+
|
|
4
|
+
import { useInsertionEffect } from 'react'
|
|
5
|
+
|
|
6
|
+
import PropTypes from 'prop-types'
|
|
7
|
+
|
|
8
|
+
import styleNames from '@pareto-engineering/bem/exports'
|
|
9
|
+
|
|
10
|
+
// Local Definitions
|
|
11
|
+
|
|
12
|
+
const baseClassName = styleNames.base
|
|
13
|
+
|
|
14
|
+
const componentClassName = 'input-wrapper'
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* This is the component description.
|
|
18
|
+
*/
|
|
19
|
+
const InputWrapper = ({
|
|
20
|
+
id,
|
|
21
|
+
className:userClassName,
|
|
22
|
+
style,
|
|
23
|
+
children,
|
|
24
|
+
columnSpan,
|
|
25
|
+
desktopColumnSpan,
|
|
26
|
+
// ...otherProps
|
|
27
|
+
}) => {
|
|
28
|
+
useInsertionEffect(() => {
|
|
29
|
+
import('./styles.scss')
|
|
30
|
+
}, [])
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<div
|
|
34
|
+
id={id}
|
|
35
|
+
className={[
|
|
36
|
+
baseClassName,
|
|
37
|
+
componentClassName,
|
|
38
|
+
userClassName,
|
|
39
|
+
]
|
|
40
|
+
.filter((e) => e)
|
|
41
|
+
.join(' ')}
|
|
42
|
+
style={{
|
|
43
|
+
...style,
|
|
44
|
+
'--column-span' :columnSpan || 'var(--columns)',
|
|
45
|
+
'--column-span-md':desktopColumnSpan || 'var(--columns)',
|
|
46
|
+
}}
|
|
47
|
+
>
|
|
48
|
+
{children}
|
|
49
|
+
</div>
|
|
50
|
+
)
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
InputWrapper.propTypes = {
|
|
54
|
+
/**
|
|
55
|
+
* The HTML id for this element
|
|
56
|
+
*/
|
|
57
|
+
id:PropTypes.string,
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* The HTML class names for this element
|
|
61
|
+
*/
|
|
62
|
+
className:PropTypes.string,
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* The React-written, css properties for this element.
|
|
66
|
+
*/
|
|
67
|
+
style:PropTypes.objectOf(PropTypes.string),
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* The children JSX
|
|
71
|
+
*/
|
|
72
|
+
children:PropTypes.node,
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* How many columns the input should span
|
|
76
|
+
*/
|
|
77
|
+
columnSpan:PropTypes.number,
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* How many columns the input should span on desktop
|
|
81
|
+
*/
|
|
82
|
+
desktopColumnSpan:PropTypes.number,
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
InputWrapper.defaultProps = {
|
|
86
|
+
// as :'label',
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export default InputWrapper
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/* @pareto-engineering/generator-front 1.0.12 */
|
|
2
|
+
|
|
3
|
+
@use "@pareto-engineering/bem";
|
|
4
|
+
@use "@pareto-engineering/styles/src/mixins";
|
|
5
|
+
@use "@pareto-engineering/styles/src/globals" as *;
|
|
6
|
+
|
|
7
|
+
.#{bem.$base}.input-wrapper {
|
|
8
|
+
grid-column: span var(--column-span);
|
|
9
|
+
|
|
10
|
+
@include mixins.media($from: $sm-md) {
|
|
11
|
+
grid-column: span var(--column-span-md);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -25,6 +25,8 @@ const Label = ({
|
|
|
25
25
|
color,
|
|
26
26
|
optional,
|
|
27
27
|
as:Wrapper,
|
|
28
|
+
columnSpan,
|
|
29
|
+
desktopColumnSpan,
|
|
28
30
|
// ...otherProps
|
|
29
31
|
}) => {
|
|
30
32
|
useInsertionEffect(() => {
|
|
@@ -43,7 +45,11 @@ const Label = ({
|
|
|
43
45
|
]
|
|
44
46
|
.filter((e) => e)
|
|
45
47
|
.join(' ')}
|
|
46
|
-
style={
|
|
48
|
+
style={{
|
|
49
|
+
...style,
|
|
50
|
+
'--column-span' :columnSpan || 'var(--columns)',
|
|
51
|
+
'--column-span-md':desktopColumnSpan || 'var(--columns)',
|
|
52
|
+
}}
|
|
47
53
|
// {...otherProps}
|
|
48
54
|
>
|
|
49
55
|
{children}
|
|
@@ -91,11 +97,21 @@ Label.propTypes = {
|
|
|
91
97
|
* Whether the input should have an optional tag
|
|
92
98
|
*/
|
|
93
99
|
optional:PropTypes.bool,
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* How many columns the input should span
|
|
103
|
+
*/
|
|
104
|
+
columnSpan:PropTypes.number,
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* How many columns the input should span on desktop
|
|
108
|
+
*/
|
|
109
|
+
desktopColumnSpan:PropTypes.number,
|
|
94
110
|
}
|
|
95
111
|
|
|
96
112
|
Label.defaultProps = {
|
|
97
113
|
as :'label',
|
|
98
|
-
color :'
|
|
114
|
+
color :'paragraph',
|
|
99
115
|
optional:false,
|
|
100
116
|
}
|
|
101
117
|
|