@julseb-lib/react 0.1.3 → 0.1.4
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/.editorconfig +7 -0
- package/.prettierrc +5 -0
- package/README.md +1 -1
- package/eslint.config.js +177 -0
- package/index.html +14 -0
- package/package.json +41 -67
- package/plop/actions/index.ts +1 -0
- package/plop/actions/run-command.ts +21 -0
- package/plop/generators/component.ts +87 -0
- package/plop/generators/demo.ts +38 -0
- package/plop/generators/generator.ts +49 -0
- package/plop/generators/index.ts +6 -0
- package/plop/generators/preview.ts +58 -0
- package/plop/generators/subtype.ts +25 -0
- package/plop/partials/index.ts +2 -0
- package/plop/partials/kebab-name.ts +7 -0
- package/plop/partials/pascal-name.ts +7 -0
- package/plop/plopfile.ts +32 -0
- package/plop/templates/__preview__/preview-props.hbs +34 -0
- package/plop/templates/__preview__/preview.hbs +25 -0
- package/plop/templates/component/__preview__/preview.hbs +21 -0
- package/plop/templates/component/index.ts.hbs +1 -0
- package/plop/templates/component/types.ts.hbs +5 -0
- package/plop/templates/component/{{ pascalCase name }}.tsx.hbs +32 -0
- package/plop/templates/demo.hbs +9 -0
- package/plop/templates/generator.hbs +16 -0
- package/plop/templates/subtypes.hbs +3 -0
- package/plop/utils/addClosingBrackets.ts +13 -0
- package/plop/utils/addOpenBrackets.ts +13 -0
- package/plop/utils/all-components.ts +72 -0
- package/plop/utils/constants.ts +1 -0
- package/plop/utils/index.ts +5 -0
- package/plop/utils/surround-brackets.ts +12 -0
- package/public/favicon.svg +24 -0
- package/public/images/cover-img.avif +0 -0
- package/public/images/image-card.jpg +0 -0
- package/public/images/logo-fajny-css-white.svg +37 -0
- package/public/images/logo-fajny-css.svg +35 -0
- package/public/images/pic-avatar.jpg +0 -0
- package/public/images/slideshow-1.avif +0 -0
- package/public/images/slideshow-2.avif +0 -0
- package/public/images/slideshow-3.avif +0 -0
- package/public/images/slideshow-4.avif +0 -0
- package/public/vite.svg +1 -0
- package/src/App.tsx +6 -0
- package/src/components/ComponentPreview.tsx +46 -0
- package/src/components/GridItem.tsx +9 -0
- package/src/components/index.ts +4 -0
- package/src/components/layout/BasePage.tsx +27 -0
- package/src/components/layout/CoverLayout.tsx +97 -0
- package/src/components/layout/Nav.tsx +63 -0
- package/src/components/layout/Page.tsx +24 -0
- package/src/data/components.tsx +220 -0
- package/src/data/french-cities.ts +8683 -0
- package/src/data/index.ts +3 -0
- package/src/data/previews/styles/Colors.preview.tsx +94 -0
- package/src/data/previews/styles/Overlays.preview.tsx +48 -0
- package/src/data/previews/styles/Radiuses.preview.tsx +49 -0
- package/src/data/previews/styles/Shadows.preview.tsx +49 -0
- package/src/data/previews/styles/Spacers.preview.tsx +50 -0
- package/src/data/previews/styles/Theme.preview.tsx +32 -0
- package/src/data/site-data.ts +4 -0
- package/src/data/styles/colors.ts +1985 -0
- package/src/data/styles/index.ts +5 -0
- package/src/data/styles/overlays.ts +47 -0
- package/src/data/styles/radiuses.ts +68 -0
- package/src/data/styles/shadows.ts +61 -0
- package/src/data/styles/spacers.ts +54 -0
- package/src/data/types/index.ts +1 -0
- package/src/data/types/variables.ts +7 -0
- package/src/lib/Variables.ts +201 -0
- package/src/lib/components/Accordion/Accordion.tsx +73 -0
- package/src/lib/components/Accordion/AccordionContent.tsx +55 -0
- package/src/lib/components/Accordion/AccordionItem.tsx +66 -0
- package/src/lib/components/Accordion/AccordionTitle.tsx +79 -0
- package/src/lib/components/Accordion/__preview__/Accordion.preview.tsx +107 -0
- package/src/lib/components/Accordion/subtypes.ts +26 -0
- package/src/lib/components/Accordion/types.ts +37 -0
- package/src/lib/components/Alert/Alert.tsx +57 -0
- package/src/lib/components/Alert/__preview__/Alert.preview.tsx +72 -0
- package/src/lib/components/Alert/types.ts +8 -0
- package/src/lib/components/Aside/Aside.tsx +58 -0
- package/src/lib/components/Aside/__preview__/Aside.preview.tsx +59 -0
- package/src/lib/components/Aside/types.ts +6 -0
- package/src/lib/components/Autocomplete/Autocomplete.tsx +222 -0
- package/src/lib/components/Autocomplete/__preview__/Autocomplete.preview.tsx +181 -0
- package/src/lib/components/Autocomplete/__preview__/Preview.tsx +17 -0
- package/src/lib/components/Autocomplete/types.ts +35 -0
- package/src/lib/components/Avatar/Avatar.tsx +97 -0
- package/src/lib/components/Avatar/AvatarFn.tsx +44 -0
- package/src/lib/components/Avatar/__preview__/Avatar.preview.tsx +107 -0
- package/src/lib/components/Avatar/types.ts +37 -0
- package/src/lib/components/BackToTop/BackToTop.tsx +95 -0
- package/src/lib/components/BackToTop/__preview__/BackToTop.preview.tsx +115 -0
- package/src/lib/components/BackToTop/types.ts +9 -0
- package/src/lib/components/Badge/Badge.tsx +61 -0
- package/src/lib/components/Badge/__preview__/Badge.preview.tsx +84 -0
- package/src/lib/components/Badge/types.ts +7 -0
- package/src/lib/components/Breadcrumbs/Breadcrumbs.tsx +72 -0
- package/src/lib/components/Breadcrumbs/__preview__/Breadcrumbs.preview.tsx +55 -0
- package/src/lib/components/Breadcrumbs/types.ts +5 -0
- package/src/lib/components/Burger/Burger.tsx +103 -0
- package/src/lib/components/Burger/__preview__/Burger.preview.tsx +55 -0
- package/src/lib/components/Burger/__preview__/Preview.tsx +11 -0
- package/src/lib/components/Burger/types.ts +11 -0
- package/src/lib/components/Button/Button.tsx +108 -0
- package/src/lib/components/Button/__preview__/Button.preview.tsx +182 -0
- package/src/lib/components/Button/types.ts +30 -0
- package/src/lib/components/ButtonGroup/ButtonGroup.tsx +124 -0
- package/src/lib/components/ButtonGroup/__preview__/ButtonGroup.preview.tsx +101 -0
- package/src/lib/components/ButtonGroup/types.ts +28 -0
- package/src/lib/components/ButtonIcon/ButtonFn.tsx +74 -0
- package/src/lib/components/ButtonIcon/ButtonIcon.tsx +127 -0
- package/src/lib/components/ButtonIcon/__preview__/ButtonIcon.preview.tsx +239 -0
- package/src/lib/components/ButtonIcon/types.ts +52 -0
- package/src/lib/components/CodeContainer/CodeContainer.tsx +108 -0
- package/src/lib/components/CodeContainer/__preview__/CodeContainer.preview.tsx +280 -0
- package/src/lib/components/CodeContainer/types.ts +230 -0
- package/src/lib/components/Cover/Cover.tsx +91 -0
- package/src/lib/components/Cover/__preview__/Cover.preview.tsx +154 -0
- package/src/lib/components/Cover/types.ts +10 -0
- package/src/lib/components/DragList/DragList.tsx +111 -0
- package/src/lib/components/DragList/DragListItem.tsx +113 -0
- package/src/lib/components/DragList/__preview__/Draglist.preview.tsx +156 -0
- package/src/lib/components/DragList/types.ts +55 -0
- package/src/lib/components/Drawer/Drawer.tsx +145 -0
- package/src/lib/components/Drawer/__preview__/Drawer.preview.tsx +159 -0
- package/src/lib/components/Drawer/types.ts +24 -0
- package/src/lib/components/Dropdown/Dropdown.tsx +89 -0
- package/src/lib/components/Dropdown/DropdownItem.tsx +49 -0
- package/src/lib/components/Dropdown/__preview__/Dropdown.preview.tsx +83 -0
- package/src/lib/components/Dropdown/__preview__/Preview.tsx +52 -0
- package/src/lib/components/Dropdown/index.ts +2 -0
- package/src/lib/components/Dropdown/types.ts +35 -0
- package/src/lib/components/Fade/Fade.tsx +62 -0
- package/src/lib/components/Fade/__preview__/Fade.preview.tsx +33 -0
- package/src/lib/components/Fieldset/Fieldset.tsx +85 -0
- package/src/lib/components/Fieldset/__preview__/Fieldset.preview.tsx +99 -0
- package/src/lib/components/Fieldset/__preview__/Preview.tsx +70 -0
- package/src/lib/components/Fieldset/types.ts +15 -0
- package/src/lib/components/Flexbox/Flexbox.tsx +99 -0
- package/src/lib/components/Flexbox/__preview__/Flexbox.preview.tsx +155 -0
- package/src/lib/components/Flexbox/types.ts +23 -0
- package/src/lib/components/Form/Form.tsx +83 -0
- package/src/lib/components/Form/__preview__/Form.preview.tsx +124 -0
- package/src/lib/components/Form/types.ts +32 -0
- package/src/lib/components/Grid/Grid.tsx +98 -0
- package/src/lib/components/Grid/__preview__/Grid.preview.tsx +146 -0
- package/src/lib/components/Grid/types.ts +20 -0
- package/src/lib/components/Header/Header.tsx +232 -0
- package/src/lib/components/Header/HeaderSearch.tsx +50 -0
- package/src/lib/components/Header/__preview__/Header.preview.tsx +33 -0
- package/src/lib/components/Header/subtypes.ts +28 -0
- package/src/lib/components/Header/types.ts +57 -0
- package/src/lib/components/Highlight/Highlight.tsx +45 -0
- package/src/lib/components/Highlight/__preview__/Highlight.preview.tsx +60 -0
- package/src/lib/components/Highlight/types.ts +9 -0
- package/src/lib/components/Hr/Hr.tsx +48 -0
- package/src/lib/components/Hr/__preview__/Hr.preview.tsx +75 -0
- package/src/lib/components/Hr/types.ts +8 -0
- package/src/lib/components/IconMenu/IconMenu.module.css +240 -0
- package/src/lib/components/IconMenu/IconMenu.tsx +101 -0
- package/src/lib/components/IconMenu/IconMenuItem.tsx +51 -0
- package/src/lib/components/IconMenu/__preview__/IconMenu.preview.tsx +55 -0
- package/src/lib/components/IconMenu/index.ts +1 -0
- package/src/lib/components/IconMenu/types.ts +48 -0
- package/src/lib/components/Image/Image.tsx +92 -0
- package/src/lib/components/Image/__preview__/Image.preview.tsx +71 -0
- package/src/lib/components/Image/types.ts +25 -0
- package/src/lib/components/Input/Input.tsx +130 -0
- package/src/lib/components/Input/__preview__/Input.preview.tsx +237 -0
- package/src/lib/components/Input/__preview__/Previews.tsx +67 -0
- package/src/lib/components/Input/classes.ts +1 -0
- package/src/lib/components/Input/subtypes.ts +173 -0
- package/src/lib/components/Input/templates/ColorInput.tsx +40 -0
- package/src/lib/components/Input/templates/DateInput.tsx +63 -0
- package/src/lib/components/Input/templates/FileInput.tsx +42 -0
- package/src/lib/components/Input/templates/PasswordInput.tsx +73 -0
- package/src/lib/components/Input/templates/SearchInput.tsx +89 -0
- package/src/lib/components/Input/templates/SelectInput.tsx +79 -0
- package/src/lib/components/Input/templates/TextInput.tsx +58 -0
- package/src/lib/components/Input/templates/TextareaInput.tsx +27 -0
- package/src/lib/components/Input/templates/TimeInput.tsx +67 -0
- package/src/lib/components/Input/types.ts +22 -0
- package/src/lib/components/InputCheck/InputCheck.tsx +161 -0
- package/src/lib/components/InputCheck/__preview__/InputCheck.preview.tsx +84 -0
- package/src/lib/components/InputCheck/__preview__/Previews.tsx +136 -0
- package/src/lib/components/InputCheck/types.ts +27 -0
- package/src/lib/components/InputComponents/InputButton.tsx +26 -0
- package/src/lib/components/InputComponents/InputIcon.tsx +28 -0
- package/src/lib/components/InputComponents/InputList.tsx +53 -0
- package/src/lib/components/InputComponents/InputListItem.tsx +68 -0
- package/src/lib/components/InputComponents/InputPrefix.tsx +15 -0
- package/src/lib/components/InputComponents/InputSuffix.tsx +15 -0
- package/src/lib/components/InputComponents/InputValidation.tsx +32 -0
- package/src/lib/components/InputComponents/InputWithListWrapper.tsx +29 -0
- package/src/lib/components/InputComponents/InputWrapper.tsx +45 -0
- package/src/lib/components/InputComponents/classes.ts +101 -0
- package/src/lib/components/InputComponents/index.ts +11 -0
- package/src/lib/components/InputComponents/types.ts +63 -0
- package/src/lib/components/InputContainer/InputContainer.tsx +149 -0
- package/src/lib/components/InputContainer/types.ts +11 -0
- package/src/lib/components/InputCounter/InputCounter.tsx +141 -0
- package/src/lib/components/InputCounter/__preview__/InputCounter.preview.tsx +153 -0
- package/src/lib/components/InputCounter/__preview__/Preview.tsx +13 -0
- package/src/lib/components/InputCounter/types.ts +45 -0
- package/src/lib/components/InputImage/EmptyContainer.tsx +17 -0
- package/src/lib/components/InputImage/HoverContainer.tsx +21 -0
- package/src/lib/components/InputImage/InputImage.tsx +104 -0
- package/src/lib/components/InputImage/__preview__/InputImage.preview.tsx +133 -0
- package/src/lib/components/InputImage/__preview__/Preview.tsx +29 -0
- package/src/lib/components/InputImage/subtypes.ts +7 -0
- package/src/lib/components/InputImage/types.ts +24 -0
- package/src/lib/components/InputPhone/InputPhone.tsx +256 -0
- package/src/lib/components/InputPhone/__preview__/InputPhone.preview.tsx +165 -0
- package/src/lib/components/InputPhone/__preview__/Preview.tsx +42 -0
- package/src/lib/components/InputPhone/types.ts +32 -0
- package/src/lib/components/InputPin/InputPin.tsx +119 -0
- package/src/lib/components/InputPin/__preview__/InputPin.preview.tsx +154 -0
- package/src/lib/components/InputPin/types.ts +22 -0
- package/src/lib/components/InputSlider/InputSlider.tsx +176 -0
- package/src/lib/components/InputSlider/__preview__/InputSlider.preview.tsx +128 -0
- package/src/lib/components/InputSlider/__preview__/Preview.tsx +17 -0
- package/src/lib/components/InputSlider/types.ts +22 -0
- package/src/lib/components/Key/Key.tsx +84 -0
- package/src/lib/components/Key/__preview__/Key.preview.tsx +80 -0
- package/src/lib/components/Key/types.ts +16 -0
- package/src/lib/components/Linkify/Linkify.tsx +67 -0
- package/src/lib/components/Linkify/__preview__/Linkify.preview.tsx +33 -0
- package/src/lib/components/Linkify/types.ts +8 -0
- package/src/lib/components/ListGroup/ListGroup.tsx +96 -0
- package/src/lib/components/ListGroup/ListGroupItem.tsx +86 -0
- package/src/lib/components/ListGroup/ListGroupTitle.tsx +84 -0
- package/src/lib/components/ListGroup/__preview__/ListGroup.preview.tsx +246 -0
- package/src/lib/components/ListGroup/index.ts +3 -0
- package/src/lib/components/ListGroup/types.ts +69 -0
- package/src/lib/components/Loader/Loader.tsx +38 -0
- package/src/lib/components/Loader/__preview__/Loader.preview.tsx +38 -0
- package/src/lib/components/Loader/templates/LoaderOne.tsx +27 -0
- package/src/lib/components/Loader/templates/LoaderThree.tsx +47 -0
- package/src/lib/components/Loader/templates/LoaderTwo.tsx +61 -0
- package/src/lib/components/Loader/types.ts +13 -0
- package/src/lib/components/Loader/utils/gen-border-bottom.ts +95 -0
- package/src/lib/components/Main/Main.tsx +63 -0
- package/src/lib/components/Main/__preview__/Main.preview.tsx +67 -0
- package/src/lib/components/Main/types.ts +12 -0
- package/src/lib/components/MarkdownContainer/MarkdownContainer.tsx +50 -0
- package/src/lib/components/MarkdownContainer/__preview__/MarkdownContainer.preview.tsx +34 -0
- package/src/lib/components/MarkdownContainer/types.ts +8 -0
- package/src/lib/components/MarkdownEditor/MarkdownButtons.tsx +42 -0
- package/src/lib/components/MarkdownEditor/MarkdownEditor.tsx +186 -0
- package/src/lib/components/MarkdownEditor/MarkdownEditorTitles.tsx +86 -0
- package/src/lib/components/MarkdownEditor/MarkdownViewButtons.tsx +48 -0
- package/src/lib/components/MarkdownEditor/__preview__/MarkdownEditor.preview.tsx +143 -0
- package/src/lib/components/MarkdownEditor/buttons/icons.tsx +85 -0
- package/src/lib/components/MarkdownEditor/buttons/markdown-buttons.tsx +176 -0
- package/src/lib/components/MarkdownEditor/types.ts +42 -0
- package/src/lib/components/Masonry/Masonry.tsx +83 -0
- package/src/lib/components/Masonry/__preview__/Masonry.preview.tsx +58 -0
- package/src/lib/components/Masonry/types.ts +8 -0
- package/src/lib/components/Masonry/utils.tsx +28 -0
- package/src/lib/components/Modal/Modal.tsx +107 -0
- package/src/lib/components/Modal/__preview__/Modal.preview.tsx +125 -0
- package/src/lib/components/Modal/types.ts +21 -0
- package/src/lib/components/PageLoading/PageLoading.tsx +64 -0
- package/src/lib/components/PageLoading/__preview__/PageLoading.preview.tsx +66 -0
- package/src/lib/components/PageLoading/types.ts +13 -0
- package/src/lib/components/Pagination/Pagination.tsx +163 -0
- package/src/lib/components/Pagination/PaginationButton.tsx +65 -0
- package/src/lib/components/Pagination/__preview__/Pagination.preview.tsx +264 -0
- package/src/lib/components/Pagination/types.ts +56 -0
- package/src/lib/components/Paginator/Paginator.tsx +136 -0
- package/src/lib/components/Paginator/__preview__/Paginator.preview.tsx +212 -0
- package/src/lib/components/Paginator/types.ts +16 -0
- package/src/lib/components/ProgressBar/ProgressBar.tsx +90 -0
- package/src/lib/components/ProgressBar/__preview__/ProgressBar.preview.tsx +63 -0
- package/src/lib/components/ProgressBar/types.ts +14 -0
- package/src/lib/components/ProgressCircle/ProgressCircle.tsx +142 -0
- package/src/lib/components/ProgressCircle/__preview__/ProgressCircle.preview.tsx +107 -0
- package/src/lib/components/ProgressCircle/types.ts +32 -0
- package/src/lib/components/Rating/Rating.tsx +116 -0
- package/src/lib/components/Rating/__preview__/Rating.preview.tsx +133 -0
- package/src/lib/components/Rating/types.ts +25 -0
- package/src/lib/components/Section/Section.tsx +51 -0
- package/src/lib/components/Section/__preview__/Section.preview.tsx +35 -0
- package/src/lib/components/Section/types.ts +5 -0
- package/src/lib/components/Select/Select.tsx +191 -0
- package/src/lib/components/Select/__preview__/Select.preview.tsx +168 -0
- package/src/lib/components/Select/types.ts +23 -0
- package/src/lib/components/Skeleton/Skeleton.tsx +54 -0
- package/src/lib/components/Skeleton/SkeletonCard.tsx +57 -0
- package/src/lib/components/Skeleton/__preview__/Skeleton.preview.tsx +240 -0
- package/src/lib/components/Skeleton/index.ts +2 -0
- package/src/lib/components/Skeleton/types.ts +27 -0
- package/src/lib/components/Slideshow/Slideshow.tsx +324 -0
- package/src/lib/components/Slideshow/SlideshowButton.tsx +63 -0
- package/src/lib/components/Slideshow/SlideshowPagination.tsx +111 -0
- package/src/lib/components/Slideshow/__preview__/Slideshow.preview.tsx +133 -0
- package/src/lib/components/Slideshow/subtypes.ts +62 -0
- package/src/lib/components/Slideshow/types.ts +41 -0
- package/src/lib/components/Sticky/Sticky.tsx +58 -0
- package/src/lib/components/Sticky/__preview__/Sticky.preview.tsx +188 -0
- package/src/lib/components/Sticky/types.ts +5 -0
- package/src/lib/components/Table/Table.tsx +138 -0
- package/src/lib/components/Table/__preview__/Table.preview.tsx +173 -0
- package/src/lib/components/Table/index.ts +1 -0
- package/src/lib/components/Table/types.ts +43 -0
- package/src/lib/components/Tabs/Tabs.tsx +88 -0
- package/src/lib/components/Tabs/TabsButton.tsx +71 -0
- package/src/lib/components/Tabs/TabsButtonsContainer.tsx +58 -0
- package/src/lib/components/Tabs/TabsContainer.tsx +49 -0
- package/src/lib/components/Tabs/TabsContent.tsx +52 -0
- package/src/lib/components/Tabs/__preview__/Tabs.preview.tsx +155 -0
- package/src/lib/components/Tabs/index.ts +5 -0
- package/src/lib/components/Tabs/types.ts +46 -0
- package/src/lib/components/Tag/Tag.tsx +77 -0
- package/src/lib/components/Tag/__preview__/Tag.preview.tsx +128 -0
- package/src/lib/components/Tag/types.ts +13 -0
- package/src/lib/components/Text/Text.tsx +88 -0
- package/src/lib/components/Text/__preview__/Text.preview.tsx +97 -0
- package/src/lib/components/Text/__preview__/previews/Description.tsx +18 -0
- package/src/lib/components/Text/__preview__/previews/Ordered.tsx +13 -0
- package/src/lib/components/Text/__preview__/previews/Paragraphs.tsx +26 -0
- package/src/lib/components/Text/__preview__/previews/Quote.tsx +5 -0
- package/src/lib/components/Text/__preview__/previews/Small.tsx +5 -0
- package/src/lib/components/Text/__preview__/previews/TextDisplay.tsx +27 -0
- package/src/lib/components/Text/__preview__/previews/TextTitles.tsx +19 -0
- package/src/lib/components/Text/__preview__/previews/Unordered.tsx +13 -0
- package/src/lib/components/Text/templates/Blockquote.tsx +41 -0
- package/src/lib/components/Text/templates/Dl.tsx +42 -0
- package/src/lib/components/Text/templates/Em.tsx +40 -0
- package/src/lib/components/Text/templates/H1.tsx +44 -0
- package/src/lib/components/Text/templates/H2.tsx +44 -0
- package/src/lib/components/Text/templates/H3.tsx +44 -0
- package/src/lib/components/Text/templates/H4.tsx +44 -0
- package/src/lib/components/Text/templates/H5.tsx +44 -0
- package/src/lib/components/Text/templates/H6.tsx +41 -0
- package/src/lib/components/Text/templates/Ol.tsx +41 -0
- package/src/lib/components/Text/templates/P.tsx +40 -0
- package/src/lib/components/Text/templates/Small.tsx +40 -0
- package/src/lib/components/Text/templates/Strong.tsx +40 -0
- package/src/lib/components/Text/templates/Ul.tsx +41 -0
- package/src/lib/components/Text/types.ts +36 -0
- package/src/lib/components/Toast/Toast.tsx +112 -0
- package/src/lib/components/Toast/ToastContainer.tsx +43 -0
- package/src/lib/components/Toast/ToastFn.tsx +236 -0
- package/src/lib/components/Toast/__preview__/Toast.preview.tsx +115 -0
- package/src/lib/components/Toast/index.ts +3 -0
- package/src/lib/components/Toast/types.ts +18 -0
- package/src/lib/components/Toast/utils.ts +9 -0
- package/src/lib/components/Tooltip/Tooltip.tsx +190 -0
- package/src/lib/components/Tooltip/__preview__/Tooltip.preview.tsx +117 -0
- package/src/lib/components/Tooltip/types.ts +23 -0
- package/src/lib/components/Wrapper/Wrapper.tsx +75 -0
- package/src/lib/components/Wrapper/__preview__/Wrapper.preview.tsx +78 -0
- package/src/lib/components/Wrapper/types.ts +12 -0
- package/src/lib/context/Theme.context.tsx +66 -0
- package/src/lib/context/index.ts +1 -0
- package/src/lib/hooks/useClickOutside.tsx +50 -0
- package/src/lib/hooks/useCopyToClipboard.tsx +50 -0
- package/src/lib/hooks/useDebounce.tsx +37 -0
- package/src/lib/hooks/useExportData.tsx +78 -0
- package/src/lib/hooks/useFetch.tsx +42 -0
- package/src/lib/hooks/useForm.tsx +51 -0
- package/src/lib/hooks/useIsOverflow.ts +61 -0
- package/src/lib/hooks/useKeyPress.tsx +110 -0
- package/src/lib/hooks/useMaxWidth.tsx +40 -0
- package/src/lib/hooks/useMergeRefs.ts +45 -0
- package/src/lib/hooks/useMinWidth.tsx +40 -0
- package/src/lib/hooks/usePaginatedData.tsx +52 -0
- package/src/lib/hooks/usePagination.tsx +75 -0
- package/src/lib/hooks/useTouchScreen.tsx +34 -0
- package/src/lib/hooks/useTranslation.tsx +58 -0
- package/src/lib/index.css +443 -0
- package/src/lib/index.ts +126 -0
- package/src/lib/lib-utils/get-highlighted-text.tsx +30 -0
- package/src/lib/lib-utils/index.ts +3 -0
- package/src/lib/lib-utils/use-keyboard-navigation.tsx +79 -0
- package/src/lib/types/components-items-props.ts +207 -0
- package/src/lib/types/components-props.ts +63 -0
- package/src/lib/types/global.ts +855 -0
- package/src/lib/types/index.ts +4 -0
- package/src/lib/types/tailwind.ts +9041 -0
- package/src/lib/utils/clsx.tsx +6 -0
- package/src/lib/utils/design-tokens.ts +789 -0
- package/src/lib/utils/gen-align.ts +24 -0
- package/src/lib/utils/gen-bg-color.ts +158 -0
- package/src/lib/utils/gen-border-color.ts +110 -0
- package/src/lib/utils/gen-border-radius.ts +13 -0
- package/src/lib/utils/gen-border.ts +30 -0
- package/src/lib/utils/gen-box-shadow.ts +12 -0
- package/src/lib/utils/gen-button-color.ts +9 -0
- package/src/lib/utils/gen-gap.ts +34 -0
- package/src/lib/utils/gen-justify.ts +25 -0
- package/src/lib/utils/gen-link-color.ts +29 -0
- package/src/lib/utils/gen-max-width.ts +30 -0
- package/src/lib/utils/gen-object-fit.ts +9 -0
- package/src/lib/utils/gen-text-align.ts +10 -0
- package/src/lib/utils/gen-text-color.ts +111 -0
- package/src/lib/utils/gen-vertical-align.ts +12 -0
- package/src/lib/utils/index.ts +18 -0
- package/src/lib/utils/linkify-text.tsx +26 -0
- package/src/lib/utils/options-markdown.ts +60 -0
- package/src/lib/utils/tools.ts +15 -0
- package/src/main.tsx +11 -0
- package/src/pages/Component.tsx +29 -0
- package/src/pages/Homepage.tsx +53 -0
- package/src/pages/NotFound.tsx +10 -0
- package/src/pages/demos/AsideBothDemo.tsx +22 -0
- package/src/pages/demos/AsideDefaultDemo.tsx +18 -0
- package/src/pages/demos/AsideRightDemo.tsx +18 -0
- package/src/pages/demos/CoverBottomDemo.tsx +24 -0
- package/src/pages/demos/CoverBottomOverlayDemo.tsx +25 -0
- package/src/pages/demos/CoverCenterDemo.tsx +24 -0
- package/src/pages/demos/CoverCenterOverlayDemo.tsx +25 -0
- package/src/pages/demos/HeaderDemo.tsx +76 -0
- package/src/pages/demos/MainDefaultDemo.tsx +14 -0
- package/src/pages/demos/MainFormDemo.tsx +14 -0
- package/src/pages/demos/MainLargeDemo.tsx +14 -0
- package/src/pages/demos/PageLoadingDemo.tsx +10 -0
- package/src/routes/index.tsx +59 -0
- package/src/types/global.d.ts +11 -0
- package/src/vite-env.d.ts +1 -0
- package/tailwind.config.ts +19 -0
- package/tsconfig.app.json +28 -0
- package/tsconfig.json +7 -0
- package/tsconfig.node.json +25 -0
- package/vite.config.ts +53 -0
- package/dist/index.cjs.js +0 -4174
- package/dist/index.css +0 -1491
- package/dist/index.d.ts +0 -1
- package/dist/index.es.js +0 -21211
- package/dist/index.umd.js +0 -4180
- package/dist/lib/Mixins.tsx +0 -990
- package/dist/lib/Variables.ts +0 -266
- package/dist/lib/components/Accordion/Accordion.tsx +0 -83
- package/dist/lib/components/Accordion/AccordionButton.tsx +0 -70
- package/dist/lib/components/Accordion/AccordionContent.tsx +0 -26
- package/dist/lib/components/Accordion/AccordionItem.tsx +0 -72
- package/dist/lib/components/Accordion/styles.tsx +0 -163
- package/dist/lib/components/Accordion/subtypes.ts +0 -20
- package/dist/lib/components/Accordion/types.ts +0 -31
- package/dist/lib/components/Alert/Alert.tsx +0 -122
- package/dist/lib/components/Alert/styles.tsx +0 -37
- package/dist/lib/components/Alert/types.ts +0 -31
- package/dist/lib/components/Aside/Aside.tsx +0 -41
- package/dist/lib/components/Aside/styles.tsx +0 -47
- package/dist/lib/components/Aside/types.ts +0 -5
- package/dist/lib/components/Autocomplete/Autocomplete.tsx +0 -356
- package/dist/lib/components/Autocomplete/styles.tsx +0 -11
- package/dist/lib/components/Autocomplete/types.ts +0 -41
- package/dist/lib/components/Avatar/Avatar.tsx +0 -147
- package/dist/lib/components/Avatar/AvatarFunction.tsx +0 -119
- package/dist/lib/components/Avatar/styles.tsx +0 -88
- package/dist/lib/components/Avatar/types.ts +0 -84
- package/dist/lib/components/BackToTop/BackToTop.tsx +0 -104
- package/dist/lib/components/BackToTop/styles.tsx +0 -33
- package/dist/lib/components/BackToTop/types.ts +0 -6
- package/dist/lib/components/Badge/Badge.tsx +0 -99
- package/dist/lib/components/Badge/styles.tsx +0 -39
- package/dist/lib/components/Badge/types.ts +0 -32
- package/dist/lib/components/Breadcrumbs/BreadcrumbItem.tsx +0 -41
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.tsx +0 -62
- package/dist/lib/components/Breadcrumbs/BreadcrumbsFn.tsx +0 -64
- package/dist/lib/components/Breadcrumbs/styles.tsx +0 -62
- package/dist/lib/components/Breadcrumbs/subtypes.ts +0 -10
- package/dist/lib/components/Breadcrumbs/types.ts +0 -29
- package/dist/lib/components/Burger/Burger.tsx +0 -62
- package/dist/lib/components/Burger/styles.tsx +0 -91
- package/dist/lib/components/Burger/types.ts +0 -11
- package/dist/lib/components/Button/Button.tsx +0 -136
- package/dist/lib/components/Button/styles.tsx +0 -30
- package/dist/lib/components/Button/subtypes.ts +0 -10
- package/dist/lib/components/Button/types.ts +0 -70
- package/dist/lib/components/ButtonGroup/ButtonGroup.tsx +0 -136
- package/dist/lib/components/ButtonGroup/ButtonGroupButton.tsx +0 -76
- package/dist/lib/components/ButtonGroup/ButtonGroupToggle.tsx +0 -88
- package/dist/lib/components/ButtonGroup/styles.tsx +0 -89
- package/dist/lib/components/ButtonGroup/subtypes.ts +0 -43
- package/dist/lib/components/ButtonGroup/types.ts +0 -34
- package/dist/lib/components/ButtonIcon/ButtonFunction.tsx +0 -84
- package/dist/lib/components/ButtonIcon/ButtonIcon.tsx +0 -140
- package/dist/lib/components/ButtonIcon/styles.tsx +0 -29
- package/dist/lib/components/ButtonIcon/subtypes.ts +0 -10
- package/dist/lib/components/ButtonIcon/types.ts +0 -88
- package/dist/lib/components/Card/Card.tsx +0 -132
- package/dist/lib/components/Card/index.ts +0 -1
- package/dist/lib/components/Card/styles.tsx +0 -77
- package/dist/lib/components/Card/types.ts +0 -29
- package/dist/lib/components/CodeContainer/CodeContainer.tsx +0 -133
- package/dist/lib/components/CodeContainer/styles.tsx +0 -63
- package/dist/lib/components/CodeContainer/types.ts +0 -233
- package/dist/lib/components/ComponentsMixins/ComponentsMixins.tsx +0 -434
- package/dist/lib/components/ComponentsMixins/hooks/useKeyboardNavigation.tsx +0 -79
- package/dist/lib/components/ComponentsMixins/index.ts +0 -3
- package/dist/lib/components/ComponentsMixins/types.ts +0 -35
- package/dist/lib/components/Cover/Cover.tsx +0 -79
- package/dist/lib/components/Cover/styles.tsx +0 -78
- package/dist/lib/components/Cover/types.ts +0 -12
- package/dist/lib/components/Datepicker/Calendar.tsx +0 -394
- package/dist/lib/components/Datepicker/Datepicker.tsx +0 -255
- package/dist/lib/components/Datepicker/data.ts +0 -31
- package/dist/lib/components/Datepicker/index.ts +0 -1
- package/dist/lib/components/Datepicker/styles.tsx +0 -454
- package/dist/lib/components/Datepicker/types.ts +0 -66
- package/dist/lib/components/DragList/DragList.tsx +0 -121
- package/dist/lib/components/DragList/DragListItem.tsx +0 -184
- package/dist/lib/components/DragList/styles.tsx +0 -73
- package/dist/lib/components/DragList/types.ts +0 -59
- package/dist/lib/components/Drawer/Drawer.tsx +0 -113
- package/dist/lib/components/Drawer/styles.tsx +0 -134
- package/dist/lib/components/Drawer/types.ts +0 -26
- package/dist/lib/components/Dropdown/Dropdown.tsx +0 -98
- package/dist/lib/components/Dropdown/DropdownContainer.tsx +0 -48
- package/dist/lib/components/Dropdown/DropdownItem.tsx +0 -97
- package/dist/lib/components/Dropdown/index.ts +0 -3
- package/dist/lib/components/Dropdown/styles.tsx +0 -155
- package/dist/lib/components/Dropdown/types.ts +0 -63
- package/dist/lib/components/Fade/Fade.tsx +0 -54
- package/dist/lib/components/Fade/styles.tsx +0 -17
- package/dist/lib/components/Fallback/Fallback.tsx +0 -40
- package/dist/lib/components/Fallback/index.ts +0 -1
- package/dist/lib/components/Fieldset/Fieldset.tsx +0 -111
- package/dist/lib/components/Fieldset/styles.tsx +0 -48
- package/dist/lib/components/Fieldset/types.ts +0 -32
- package/dist/lib/components/Flexbox/Flexbox.tsx +0 -73
- package/dist/lib/components/Flexbox/styles.tsx +0 -32
- package/dist/lib/components/Flexbox/types.ts +0 -25
- package/dist/lib/components/Footer/Footer.tsx +0 -103
- package/dist/lib/components/Footer/FooterLink.tsx +0 -31
- package/dist/lib/components/Footer/FooterLogo.tsx +0 -29
- package/dist/lib/components/Footer/index.ts +0 -1
- package/dist/lib/components/Footer/styles.tsx +0 -124
- package/dist/lib/components/Footer/subtypes.ts +0 -14
- package/dist/lib/components/Footer/types.ts +0 -70
- package/dist/lib/components/Form/Form.tsx +0 -157
- package/dist/lib/components/Form/styles.tsx +0 -22
- package/dist/lib/components/Form/types.ts +0 -30
- package/dist/lib/components/FullBleed/FullBleed.tsx +0 -48
- package/dist/lib/components/FullBleed/index.ts +0 -1
- package/dist/lib/components/FullBleed/styles.tsx +0 -30
- package/dist/lib/components/FullBleed/types.ts +0 -7
- package/dist/lib/components/Grid/Grid.tsx +0 -71
- package/dist/lib/components/Grid/styles.tsx +0 -29
- package/dist/lib/components/Grid/types.ts +0 -22
- package/dist/lib/components/Header/Header.tsx +0 -223
- package/dist/lib/components/Header/HeaderBurger.tsx +0 -52
- package/dist/lib/components/Header/HeaderLogo.tsx +0 -68
- package/dist/lib/components/Header/HeaderNav.tsx +0 -89
- package/dist/lib/components/Header/HeaderNavLink.tsx +0 -31
- package/dist/lib/components/Header/HeaderSearch.tsx +0 -81
- package/dist/lib/components/Header/styles.tsx +0 -350
- package/dist/lib/components/Header/subtypes.ts +0 -79
- package/dist/lib/components/Header/types.ts +0 -89
- package/dist/lib/components/Highlight/Highlight.tsx +0 -47
- package/dist/lib/components/Highlight/types.ts +0 -9
- package/dist/lib/components/Hr/Hr.tsx +0 -52
- package/dist/lib/components/Hr/styles.tsx +0 -27
- package/dist/lib/components/Hr/types.ts +0 -10
- package/dist/lib/components/Icon/Icon.tsx +0 -42
- package/dist/lib/components/Icon/index.ts +0 -1
- package/dist/lib/components/Icon/styles.tsx +0 -19
- package/dist/lib/components/Icon/types.ts +0 -13
- package/dist/lib/components/IconMenu/IconMenu.tsx +0 -148
- package/dist/lib/components/IconMenu/IconMenuItem.tsx +0 -75
- package/dist/lib/components/IconMenu/index.ts +0 -2
- package/dist/lib/components/IconMenu/styles.tsx +0 -114
- package/dist/lib/components/IconMenu/types.ts +0 -50
- package/dist/lib/components/Image/Image.tsx +0 -124
- package/dist/lib/components/Image/ImageFunction.tsx +0 -47
- package/dist/lib/components/Image/styles.tsx +0 -85
- package/dist/lib/components/Image/types.ts +0 -46
- package/dist/lib/components/Input/Input.tsx +0 -163
- package/dist/lib/components/Input/styles.tsx +0 -39
- package/dist/lib/components/Input/subtypes.ts +0 -166
- package/dist/lib/components/Input/templates/ColorInput.tsx +0 -34
- package/dist/lib/components/Input/templates/DateInput.tsx +0 -118
- package/dist/lib/components/Input/templates/FileInput.tsx +0 -55
- package/dist/lib/components/Input/templates/PasswordInput.tsx +0 -185
- package/dist/lib/components/Input/templates/SearchInput.tsx +0 -132
- package/dist/lib/components/Input/templates/SelectInput.tsx +0 -110
- package/dist/lib/components/Input/templates/TextInput.tsx +0 -110
- package/dist/lib/components/Input/templates/TextareaInput.tsx +0 -37
- package/dist/lib/components/Input/templates/TimeInput.tsx +0 -117
- package/dist/lib/components/Input/types.ts +0 -22
- package/dist/lib/components/InputCheck/InputCheck.tsx +0 -145
- package/dist/lib/components/InputCheck/styles.tsx +0 -282
- package/dist/lib/components/InputCheck/types.ts +0 -34
- package/dist/lib/components/InputComponents/components/InputAndListContainer.tsx +0 -42
- package/dist/lib/components/InputComponents/components/InputButton.tsx +0 -61
- package/dist/lib/components/InputComponents/components/InputContainer.tsx +0 -69
- package/dist/lib/components/InputComponents/components/InputIcon.tsx +0 -57
- package/dist/lib/components/InputComponents/components/InputLeftContainer.tsx +0 -28
- package/dist/lib/components/InputComponents/components/InputPrefix.tsx +0 -30
- package/dist/lib/components/InputComponents/components/InputRightContainer.tsx +0 -34
- package/dist/lib/components/InputComponents/components/InputSuffix.tsx +0 -30
- package/dist/lib/components/InputComponents/components/InputValidationHelper.tsx +0 -97
- package/dist/lib/components/InputComponents/components/InputValidationIcon.tsx +0 -65
- package/dist/lib/components/InputComponents/components/InputWrapper.tsx +0 -45
- package/dist/lib/components/InputComponents/components/ListInput.tsx +0 -42
- package/dist/lib/components/InputComponents/components/ListInputItem.tsx +0 -48
- package/dist/lib/components/InputComponents/index.ts +0 -13
- package/dist/lib/components/InputComponents/styles.tsx +0 -716
- package/dist/lib/components/InputComponents/types.ts +0 -262
- package/dist/lib/components/InputContainer/HelperBottom.tsx +0 -94
- package/dist/lib/components/InputContainer/InputContainer.tsx +0 -143
- package/dist/lib/components/InputContainer/styles.tsx +0 -87
- package/dist/lib/components/InputContainer/subtypes.ts +0 -8
- package/dist/lib/components/InputContainer/types.ts +0 -23
- package/dist/lib/components/InputCounter/InputCounter.tsx +0 -296
- package/dist/lib/components/InputCounter/styles.tsx +0 -51
- package/dist/lib/components/InputCounter/subtypes.ts +0 -7
- package/dist/lib/components/InputCounter/types.ts +0 -49
- package/dist/lib/components/InputImage/EmptyContainer.tsx +0 -40
- package/dist/lib/components/InputImage/HoverContainer.tsx +0 -47
- package/dist/lib/components/InputImage/InputImage.tsx +0 -160
- package/dist/lib/components/InputImage/styles.tsx +0 -113
- package/dist/lib/components/InputImage/subtypes.ts +0 -28
- package/dist/lib/components/InputImage/types.ts +0 -23
- package/dist/lib/components/InputPhone/InputPhone.tsx +0 -392
- package/dist/lib/components/InputPhone/styles.tsx +0 -216
- package/dist/lib/components/InputPhone/types.ts +0 -33
- package/dist/lib/components/InputPin/InputPin.tsx +0 -137
- package/dist/lib/components/InputPin/styles.tsx +0 -68
- package/dist/lib/components/InputPin/subtypes.ts +0 -9
- package/dist/lib/components/InputPin/types.ts +0 -29
- package/dist/lib/components/InputSlider/InputSlider.tsx +0 -193
- package/dist/lib/components/InputSlider/Slider.tsx +0 -43
- package/dist/lib/components/InputSlider/styles.tsx +0 -290
- package/dist/lib/components/InputSlider/types.ts +0 -13
- package/dist/lib/components/Key/Key.tsx +0 -46
- package/dist/lib/components/Key/styles.tsx +0 -27
- package/dist/lib/components/Key/types.ts +0 -9
- package/dist/lib/components/LibIcon/LibIcon.tsx +0 -34
- package/dist/lib/components/LibIcon/index.ts +0 -1
- package/dist/lib/components/LibIcon/types.ts +0 -7
- package/dist/lib/components/Link/Link.tsx +0 -88
- package/dist/lib/components/Link/index.ts +0 -1
- package/dist/lib/components/Link/types.ts +0 -7
- package/dist/lib/components/Linkify/Linkify.tsx +0 -58
- package/dist/lib/components/Linkify/types.ts +0 -6
- package/dist/lib/components/ListGroup/ListGroup.tsx +0 -110
- package/dist/lib/components/ListGroup/ListGroupItem.tsx +0 -171
- package/dist/lib/components/ListGroup/ListGroupTitle.tsx +0 -56
- package/dist/lib/components/ListGroup/index.ts +0 -3
- package/dist/lib/components/ListGroup/styles.tsx +0 -177
- package/dist/lib/components/ListGroup/types.ts +0 -106
- package/dist/lib/components/Loader/Loader.tsx +0 -45
- package/dist/lib/components/Loader/styles.tsx +0 -138
- package/dist/lib/components/Loader/templates/LoaderFour.tsx +0 -27
- package/dist/lib/components/Loader/templates/LoaderOne.tsx +0 -21
- package/dist/lib/components/Loader/templates/LoaderThree.tsx +0 -30
- package/dist/lib/components/Loader/templates/LoaderTwo.tsx +0 -25
- package/dist/lib/components/Loader/types.ts +0 -23
- package/dist/lib/components/Main/Main.tsx +0 -48
- package/dist/lib/components/Main/styles.tsx +0 -61
- package/dist/lib/components/Main/types.ts +0 -15
- package/dist/lib/components/MarkdownContainer/MarkdownContainer.tsx +0 -42
- package/dist/lib/components/MarkdownContainer/styles.tsx +0 -15
- package/dist/lib/components/MarkdownContainer/types.ts +0 -7
- package/dist/lib/components/MarkdownEditor/MarkdownEditor.tsx +0 -200
- package/dist/lib/components/MarkdownEditor/MdEditorButtons/EditorButtonTitles.tsx +0 -75
- package/dist/lib/components/MarkdownEditor/MdEditorButtons/EditorButtons.tsx +0 -73
- package/dist/lib/components/MarkdownEditor/MdEditorButtons/MarkdownButtons.tsx +0 -52
- package/dist/lib/components/MarkdownEditor/MdEditorInput.tsx +0 -88
- package/dist/lib/components/MarkdownEditor/markdown-buttons.tsx +0 -180
- package/dist/lib/components/MarkdownEditor/styles.tsx +0 -187
- package/dist/lib/components/MarkdownEditor/subtypes.ts +0 -54
- package/dist/lib/components/MarkdownEditor/types.ts +0 -57
- package/dist/lib/components/Masonry/Masonry.tsx +0 -73
- package/dist/lib/components/Masonry/styles.tsx +0 -22
- package/dist/lib/components/Masonry/types.ts +0 -8
- package/dist/lib/components/Masonry/utils.ts +0 -28
- package/dist/lib/components/Messaging/Message.tsx +0 -112
- package/dist/lib/components/Messaging/MessageForm.tsx +0 -153
- package/dist/lib/components/Messaging/MessagesContainer.tsx +0 -42
- package/dist/lib/components/Messaging/MessagesList.tsx +0 -140
- package/dist/lib/components/Messaging/Messaging.tsx +0 -123
- package/dist/lib/components/Messaging/index.ts +0 -5
- package/dist/lib/components/Messaging/styles.tsx +0 -176
- package/dist/lib/components/Messaging/types.ts +0 -119
- package/dist/lib/components/Meta/Meta.tsx +0 -125
- package/dist/lib/components/Meta/index.ts +0 -3
- package/dist/lib/components/Meta/types.ts +0 -17
- package/dist/lib/components/Modal/Modal.tsx +0 -134
- package/dist/lib/components/Modal/styles.tsx +0 -60
- package/dist/lib/components/Modal/types.ts +0 -36
- package/dist/lib/components/PageLayout/PageLayout.tsx +0 -96
- package/dist/lib/components/PageLayout/index.ts +0 -1
- package/dist/lib/components/PageLayout/types.ts +0 -45
- package/dist/lib/components/PageLoading/PageLoading.tsx +0 -67
- package/dist/lib/components/PageLoading/styles.tsx +0 -22
- package/dist/lib/components/PageLoading/types.ts +0 -13
- package/dist/lib/components/Pagination/Pagination.tsx +0 -262
- package/dist/lib/components/Pagination/PaginationButton.tsx +0 -52
- package/dist/lib/components/Pagination/styles.tsx +0 -70
- package/dist/lib/components/Pagination/types.ts +0 -55
- package/dist/lib/components/Paginator/Paginator.tsx +0 -169
- package/dist/lib/components/Paginator/styles.tsx +0 -34
- package/dist/lib/components/Paginator/types.ts +0 -14
- package/dist/lib/components/ProgressBar/ProgressBar.tsx +0 -74
- package/dist/lib/components/ProgressBar/styles.tsx +0 -76
- package/dist/lib/components/ProgressBar/types.ts +0 -11
- package/dist/lib/components/ProgressCircle/Circle.tsx +0 -29
- package/dist/lib/components/ProgressCircle/ProgressCircle.tsx +0 -96
- package/dist/lib/components/ProgressCircle/ProgressCircleFn.tsx +0 -42
- package/dist/lib/components/ProgressCircle/Value.tsx +0 -30
- package/dist/lib/components/ProgressCircle/clean-percentage.ts +0 -5
- package/dist/lib/components/ProgressCircle/styles.tsx +0 -53
- package/dist/lib/components/ProgressCircle/subtypes.ts +0 -9
- package/dist/lib/components/ProgressCircle/types.ts +0 -29
- package/dist/lib/components/Rating/Rating.tsx +0 -178
- package/dist/lib/components/Rating/styles.tsx +0 -50
- package/dist/lib/components/Rating/types.ts +0 -22
- package/dist/lib/components/ResetScroll/ResetScroll.tsx +0 -27
- package/dist/lib/components/ResetScroll/index.ts +0 -1
- package/dist/lib/components/Section/Section.tsx +0 -45
- package/dist/lib/components/Section/styles.tsx +0 -22
- package/dist/lib/components/Section/types.ts +0 -5
- package/dist/lib/components/Select/Select.tsx +0 -290
- package/dist/lib/components/Select/SelectButton.tsx +0 -52
- package/dist/lib/components/Select/styles.tsx +0 -20
- package/dist/lib/components/Select/subtypes.ts +0 -31
- package/dist/lib/components/Select/types.ts +0 -31
- package/dist/lib/components/Skeleton/Skeleton.tsx +0 -62
- package/dist/lib/components/Skeleton/SkeletonCard.tsx +0 -81
- package/dist/lib/components/Skeleton/SkeletonShine.tsx +0 -30
- package/dist/lib/components/Skeleton/index.ts +0 -3
- package/dist/lib/components/Skeleton/styles.tsx +0 -94
- package/dist/lib/components/Skeleton/subtypes.ts +0 -14
- package/dist/lib/components/Skeleton/types.ts +0 -37
- package/dist/lib/components/Slideshow/Slideshow.tsx +0 -191
- package/dist/lib/components/Slideshow/SlideshowButton.tsx +0 -98
- package/dist/lib/components/Slideshow/SlideshowPagination.tsx +0 -83
- package/dist/lib/components/Slideshow/styles.tsx +0 -359
- package/dist/lib/components/Slideshow/subtypes.ts +0 -20
- package/dist/lib/components/Slideshow/types.ts +0 -97
- package/dist/lib/components/SrOnly/SrOnly.tsx +0 -34
- package/dist/lib/components/SrOnly/index.ts +0 -1
- package/dist/lib/components/SrOnly/styles.tsx +0 -19
- package/dist/lib/components/SrOnly/types.ts +0 -3
- package/dist/lib/components/Stepper/Step.tsx +0 -122
- package/dist/lib/components/Stepper/Stepper.tsx +0 -92
- package/dist/lib/components/Stepper/index.ts +0 -2
- package/dist/lib/components/Stepper/styles.tsx +0 -113
- package/dist/lib/components/Stepper/types.ts +0 -42
- package/dist/lib/components/Sticky/Sticky.tsx +0 -44
- package/dist/lib/components/Sticky/styles.tsx +0 -13
- package/dist/lib/components/Sticky/types.ts +0 -5
- package/dist/lib/components/Table/TBody.tsx +0 -27
- package/dist/lib/components/Table/THead.tsx +0 -27
- package/dist/lib/components/Table/Table.tsx +0 -128
- package/dist/lib/components/Table/Td.tsx +0 -35
- package/dist/lib/components/Table/Tr.tsx +0 -23
- package/dist/lib/components/Table/index.ts +0 -5
- package/dist/lib/components/Table/styles.tsx +0 -112
- package/dist/lib/components/Table/types.ts +0 -40
- package/dist/lib/components/Tabs/TabButton.tsx +0 -54
- package/dist/lib/components/Tabs/TabItem.tsx +0 -45
- package/dist/lib/components/Tabs/Tabs.tsx +0 -140
- package/dist/lib/components/Tabs/TabsButtonsContainer.tsx +0 -48
- package/dist/lib/components/Tabs/TabsContainer.tsx +0 -36
- package/dist/lib/components/Tabs/index.ts +0 -5
- package/dist/lib/components/Tabs/styles.tsx +0 -176
- package/dist/lib/components/Tabs/types.ts +0 -48
- package/dist/lib/components/Tag/Tag.tsx +0 -101
- package/dist/lib/components/Tag/styles.tsx +0 -39
- package/dist/lib/components/Tag/types.ts +0 -41
- package/dist/lib/components/Text/Text.tsx +0 -71
- package/dist/lib/components/Text/styles.tsx +0 -250
- package/dist/lib/components/Text/subtypes.ts +0 -13
- package/dist/lib/components/Text/templates/Blockquote.tsx +0 -28
- package/dist/lib/components/Text/templates/Dl.tsx +0 -28
- package/dist/lib/components/Text/templates/Em.tsx +0 -28
- package/dist/lib/components/Text/templates/H1.tsx +0 -30
- package/dist/lib/components/Text/templates/H2.tsx +0 -30
- package/dist/lib/components/Text/templates/H3.tsx +0 -30
- package/dist/lib/components/Text/templates/H4.tsx +0 -30
- package/dist/lib/components/Text/templates/H5.tsx +0 -30
- package/dist/lib/components/Text/templates/H6.tsx +0 -28
- package/dist/lib/components/Text/templates/Ol.tsx +0 -28
- package/dist/lib/components/Text/templates/P.tsx +0 -28
- package/dist/lib/components/Text/templates/Small.tsx +0 -28
- package/dist/lib/components/Text/templates/Strong.tsx +0 -28
- package/dist/lib/components/Text/templates/Ul.tsx +0 -28
- package/dist/lib/components/Text/types.ts +0 -26
- package/dist/lib/components/TextIcon/TextIcon.tsx +0 -100
- package/dist/lib/components/TextIcon/index.ts +0 -1
- package/dist/lib/components/TextIcon/styles.tsx +0 -36
- package/dist/lib/components/TextIcon/types.ts +0 -19
- package/dist/lib/components/TextIcon/utils.ts +0 -56
- package/dist/lib/components/Timepicker/Timepicker.tsx +0 -306
- package/dist/lib/components/Timepicker/index.ts +0 -1
- package/dist/lib/components/Timepicker/styles.tsx +0 -32
- package/dist/lib/components/Timepicker/types.ts +0 -67
- package/dist/lib/components/Toast/Toast.tsx +0 -202
- package/dist/lib/components/Toast/Toaster.tsx +0 -156
- package/dist/lib/components/Toast/index.ts +0 -1
- package/dist/lib/components/Toast/styles.tsx +0 -247
- package/dist/lib/components/Toast/types.ts +0 -30
- package/dist/lib/components/Tooltip/Tooltip.tsx +0 -129
- package/dist/lib/components/Tooltip/styles.tsx +0 -149
- package/dist/lib/components/Tooltip/types.ts +0 -21
- package/dist/lib/components/Truncate/Truncate.tsx +0 -128
- package/dist/lib/components/Truncate/index.ts +0 -1
- package/dist/lib/components/Truncate/styles.tsx +0 -36
- package/dist/lib/components/Truncate/types.ts +0 -5
- package/dist/lib/components/Video/Video.tsx +0 -74
- package/dist/lib/components/Video/index.ts +0 -1
- package/dist/lib/components/Video/styles.tsx +0 -22
- package/dist/lib/components/Video/types.ts +0 -20
- package/dist/lib/components/Wrapper/Wrapper.tsx +0 -50
- package/dist/lib/components/Wrapper/styles.tsx +0 -33
- package/dist/lib/components/Wrapper/types.ts +0 -7
- package/dist/lib/components/Youtube/Youtube.tsx +0 -49
- package/dist/lib/components/Youtube/index.ts +0 -1
- package/dist/lib/components/Youtube/styles.tsx +0 -18
- package/dist/lib/components/Youtube/types.ts +0 -10
- package/dist/lib/context/Theme.context.tsx +0 -116
- package/dist/lib/context/Toaster/Toaster.context.tsx +0 -131
- package/dist/lib/context/Toaster/index.ts +0 -3
- package/dist/lib/context/Toaster/toast.reducer.ts +0 -34
- package/dist/lib/design-tokens.ts +0 -2217
- package/dist/lib/hooks/useClickOutside.tsx +0 -42
- package/dist/lib/hooks/useCopyToClipboard.tsx +0 -38
- package/dist/lib/hooks/useDebounce.tsx +0 -26
- package/dist/lib/hooks/useExportData.tsx +0 -65
- package/dist/lib/hooks/useFetch.tsx +0 -30
- package/dist/lib/hooks/useForm.tsx +0 -38
- package/dist/lib/hooks/useIsOverflow.ts +0 -46
- package/dist/lib/hooks/useKeyPress.tsx +0 -101
- package/dist/lib/hooks/useMaxWidth.tsx +0 -32
- package/dist/lib/hooks/useMergeRefs.ts +0 -36
- package/dist/lib/hooks/useMinWidth.tsx +0 -32
- package/dist/lib/hooks/usePaginatedData.tsx +0 -42
- package/dist/lib/hooks/usePagination.tsx +0 -122
- package/dist/lib/hooks/useTouchScreen.tsx +0 -25
- package/dist/lib/hooks/useTranslation.tsx +0 -43
- package/dist/lib/icons/ArrowUp.tsx +0 -31
- package/dist/lib/icons/Bold.tsx +0 -31
- package/dist/lib/icons/Calendar.tsx +0 -39
- package/dist/lib/icons/CaretDown.tsx +0 -31
- package/dist/lib/icons/Check.tsx +0 -31
- package/dist/lib/icons/CheckCircle.tsx +0 -37
- package/dist/lib/icons/ChevronDown.tsx +0 -31
- package/dist/lib/icons/ChevronLeft.tsx +0 -31
- package/dist/lib/icons/ChevronRight.tsx +0 -31
- package/dist/lib/icons/ChevronUp.tsx +0 -31
- package/dist/lib/icons/Clipboard.tsx +0 -31
- package/dist/lib/icons/Clock.tsx +0 -34
- package/dist/lib/icons/Close.tsx +0 -31
- package/dist/lib/icons/CloseCircle.tsx +0 -37
- package/dist/lib/icons/Code.tsx +0 -31
- package/dist/lib/icons/CodeBlock.tsx +0 -41
- package/dist/lib/icons/Comment.tsx +0 -41
- package/dist/lib/icons/Drag.tsx +0 -31
- package/dist/lib/icons/Edit.tsx +0 -37
- package/dist/lib/icons/EditorCode.tsx +0 -35
- package/dist/lib/icons/EditorLive.tsx +0 -35
- package/dist/lib/icons/EditorPreview.tsx +0 -35
- package/dist/lib/icons/Hide.tsx +0 -31
- package/dist/lib/icons/Image.tsx +0 -41
- package/dist/lib/icons/Italic.tsx +0 -31
- package/dist/lib/icons/Link.tsx +0 -35
- package/dist/lib/icons/Minus.tsx +0 -28
- package/dist/lib/icons/OrderedList.tsx +0 -31
- package/dist/lib/icons/Plus.tsx +0 -31
- package/dist/lib/icons/Quote.tsx +0 -31
- package/dist/lib/icons/Search.tsx +0 -37
- package/dist/lib/icons/Send.tsx +0 -31
- package/dist/lib/icons/Separator.tsx +0 -31
- package/dist/lib/icons/Show.tsx +0 -37
- package/dist/lib/icons/Star.tsx +0 -31
- package/dist/lib/icons/StarFull.tsx +0 -31
- package/dist/lib/icons/Strikethrough.tsx +0 -31
- package/dist/lib/icons/Underline.tsx +0 -31
- package/dist/lib/icons/UnorderedList.tsx +0 -31
- package/dist/lib/icons/index.ts +0 -39
- package/dist/lib/icons/styles.tsx +0 -17
- package/dist/lib/icons/types.ts +0 -9
- package/dist/lib/index.css +0 -1491
- package/dist/lib/index.ts +0 -159
- package/dist/lib/lib-utils/append-styles.ts +0 -7
- package/dist/lib/lib-utils/colors-maps.ts +0 -174
- package/dist/lib/lib-utils/generate-lib-tokens.ts +0 -38
- package/dist/lib/lib-utils/get-highlighted-text.tsx +0 -29
- package/dist/lib/lib-utils/get-icon-size-from-font.ts +0 -25
- package/dist/lib/lib-utils/index.ts +0 -9
- package/dist/lib/lib-utils/round-icon-size.ts +0 -5
- package/dist/lib/modules-declare.d.ts +0 -19
- package/dist/lib/types/component-items.ts +0 -511
- package/dist/lib/types/components-props.ts +0 -80
- package/dist/lib/types/generate-int-range.ts +0 -17
- package/dist/lib/types/global.ts +0 -436
- package/dist/lib/types/index.ts +0 -5
- package/dist/lib/types/theme.ts +0 -166
- package/dist/lib/utils/StyleSheetManager.tsx +0 -30
- package/dist/lib/utils/index.ts +0 -4
- package/dist/lib/utils/lib-tokens.json +0 -860
- package/dist/lib/utils/linkify-text.tsx +0 -26
- package/dist/lib/utils/options-markdown.ts +0 -132
- package/dist/lib/utils/set-default-theme.ts +0 -12
- package/dist/styles-BCSPldCD.js +0 -16
- package/dist/styles-CtcGw3Gv.cjs +0 -7
- /package/{license.md → LICENSE} +0 -0
- /package/{dist → src}/lib/components/Accordion/index.ts +0 -0
- /package/{dist → src}/lib/components/Alert/index.ts +0 -0
- /package/{dist → src}/lib/components/Aside/index.ts +0 -0
- /package/{dist → src}/lib/components/Autocomplete/index.ts +0 -0
- /package/{dist → src}/lib/components/Avatar/index.ts +0 -0
- /package/{dist → src}/lib/components/BackToTop/index.ts +0 -0
- /package/{dist → src}/lib/components/Badge/index.ts +0 -0
- /package/{dist → src}/lib/components/Breadcrumbs/index.ts +0 -0
- /package/{dist → src}/lib/components/Burger/index.ts +0 -0
- /package/{dist → src}/lib/components/Button/index.ts +0 -0
- /package/{dist → src}/lib/components/ButtonGroup/index.ts +0 -0
- /package/{dist → src}/lib/components/ButtonIcon/index.ts +0 -0
- /package/{dist → src}/lib/components/CodeContainer/index.ts +0 -0
- /package/{dist → src}/lib/components/Cover/index.ts +0 -0
- /package/{dist → src}/lib/components/DragList/index.ts +0 -0
- /package/{dist → src}/lib/components/Drawer/index.ts +0 -0
- /package/{dist → src}/lib/components/Fade/index.ts +0 -0
- /package/{dist → src}/lib/components/Fade/types.ts +0 -0
- /package/{dist → src}/lib/components/Fieldset/index.ts +0 -0
- /package/{dist → src}/lib/components/Flexbox/index.ts +0 -0
- /package/{dist → src}/lib/components/Form/index.ts +0 -0
- /package/{dist → src}/lib/components/Grid/index.ts +0 -0
- /package/{dist → src}/lib/components/Header/index.ts +0 -0
- /package/{dist → src}/lib/components/Highlight/index.ts +0 -0
- /package/{dist → src}/lib/components/Hr/index.ts +0 -0
- /package/{dist → src}/lib/components/Image/index.ts +0 -0
- /package/{dist → src}/lib/components/Input/index.ts +0 -0
- /package/{dist → src}/lib/components/InputCheck/index.ts +0 -0
- /package/{dist → src}/lib/components/InputContainer/index.ts +0 -0
- /package/{dist → src}/lib/components/InputCounter/index.ts +0 -0
- /package/{dist → src}/lib/components/InputImage/index.ts +0 -0
- /package/{dist → src}/lib/components/InputPhone/index.ts +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/countries.ts +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ac.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ad.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ae.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/af.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ag.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ai.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/al.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/am.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ao.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/aq.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ar.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/as.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/at.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/au.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/aw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ax.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/az.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ba.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bb.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bd.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/be.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bh.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bi.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bj.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bl.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bo.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bq.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/br.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bs.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bt.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bv.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/by.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/bz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ca.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cc.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cd.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cefta.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ch.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ci.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ck.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cl.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/co.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cp.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cv.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cx.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cy.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/cz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/de.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/dg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/dj.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/dk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/dm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/do.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/dz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ea.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ec.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ee.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/eg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/eh.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/er.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/es-ct.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/es-ga.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/es.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/et.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/eu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/fi.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/fj.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/fk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/fm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/fo.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/fr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ga.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gb-eng.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gb-nir.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gb-sct.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gb-wls.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gb.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gd.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ge.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gh.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gi.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gl.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gp.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gq.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gs.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gt.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/gy.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/hk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/hm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/hn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/hr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ht.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/hu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ic.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/id.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ie.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/il.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/im.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/in.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/io.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/iq.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ir.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/is.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/it.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/je.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/jm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/jo.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/jp.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ke.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/kg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/kh.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ki.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/km.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/kn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/kp.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/kr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/kw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ky.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/kz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/la.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/lb.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/lc.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/li.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/lk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/lr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ls.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/lt.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/lu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/lv.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ly.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ma.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mc.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/md.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/me.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mh.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ml.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mo.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mp.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mq.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ms.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mt.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mv.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mx.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/my.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/mz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/na.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/nc.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ne.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/nf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ng.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ni.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/nl.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/no.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/np.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/nr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/nu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/nz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/om.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pa.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pe.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ph.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pl.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ps.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pt.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/pw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/py.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/qa.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/re.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ro.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/rs.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ru.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/rw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sa.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sb.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sc.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sd.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/se.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sh.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/si.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sj.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sl.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/so.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ss.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/st.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sv.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sx.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sy.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/sz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ta.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tc.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/td.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/th.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tj.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tl.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/to.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tr.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tt.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tv.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tw.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/tz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ua.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ug.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/um.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/un.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/us.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/uy.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/uz.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/va.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/vc.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ve.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/vg.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/vi.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/vn.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/vu.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/wf.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ws.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/xk.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/xx.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/ye.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/yt.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/za.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/zm.svg +0 -0
- /package/{dist → src}/lib/components/InputPhone/utils/flags/zw.svg +0 -0
- /package/{dist → src}/lib/components/InputPin/index.ts +0 -0
- /package/{dist → src}/lib/components/InputSlider/index.ts +0 -0
- /package/{dist → src}/lib/components/Key/index.ts +0 -0
- /package/{dist → src}/lib/components/Linkify/index.ts +0 -0
- /package/{dist → src}/lib/components/Loader/index.ts +0 -0
- /package/{dist → src}/lib/components/Main/index.ts +0 -0
- /package/{dist → src}/lib/components/MarkdownContainer/index.ts +0 -0
- /package/{dist → src}/lib/components/MarkdownEditor/index.ts +0 -0
- /package/{dist → src}/lib/components/Masonry/index.ts +0 -0
- /package/{dist → src}/lib/components/Modal/index.ts +0 -0
- /package/{dist → src}/lib/components/PageLoading/index.ts +0 -0
- /package/{dist → src}/lib/components/Pagination/index.ts +0 -0
- /package/{dist → src}/lib/components/Paginator/index.ts +0 -0
- /package/{dist → src}/lib/components/ProgressBar/index.ts +0 -0
- /package/{dist → src}/lib/components/ProgressCircle/index.ts +0 -0
- /package/{dist → src}/lib/components/Rating/index.ts +0 -0
- /package/{dist → src}/lib/components/Section/index.ts +0 -0
- /package/{dist → src}/lib/components/Select/index.ts +0 -0
- /package/{dist → src}/lib/components/Slideshow/index.ts +0 -0
- /package/{dist → src}/lib/components/Sticky/index.ts +0 -0
- /package/{dist → src}/lib/components/Tag/index.ts +0 -0
- /package/{dist → src}/lib/components/Text/index.ts +0 -0
- /package/{dist → src}/lib/components/Tooltip/index.ts +0 -0
- /package/{dist → src}/lib/components/Wrapper/index.ts +0 -0
- /package/{dist → src}/lib/hooks/index.ts +0 -0
- /package/{dist → src}/lib/lib-utils/transfom-search-keys.ts +0 -0
- /package/{dist → src}/lib/types/require-at-least-one.ts +0 -0
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { type FC } from "react"
|
|
2
|
+
import { InputContainer } from "../InputContainer"
|
|
3
|
+
import { ColorInput } from "./templates/ColorInput"
|
|
4
|
+
import { DateInput } from "./templates/DateInput"
|
|
5
|
+
import { FileInput } from "./templates/FileInput"
|
|
6
|
+
import { PasswordInput } from "./templates/PasswordInput"
|
|
7
|
+
import { SearchInput } from "./templates/SearchInput"
|
|
8
|
+
import { SelectInput } from "./templates/SelectInput"
|
|
9
|
+
import { TextareaInput } from "./templates/TextareaInput"
|
|
10
|
+
import { TextInput } from "./templates/TextInput"
|
|
11
|
+
import { TimeInput } from "./templates/TimeInput"
|
|
12
|
+
import type { LibInputType } from "../../types"
|
|
13
|
+
import type { ILibInput } from "./types"
|
|
14
|
+
|
|
15
|
+
const renderComponent = (props: any, type: LibInputType) => {
|
|
16
|
+
switch (type) {
|
|
17
|
+
case "color":
|
|
18
|
+
return <ColorInput type={type} {...props} />
|
|
19
|
+
case "date":
|
|
20
|
+
case "datetime-local":
|
|
21
|
+
case "week":
|
|
22
|
+
case "month":
|
|
23
|
+
return <DateInput type={type} {...props} />
|
|
24
|
+
case "file":
|
|
25
|
+
return <FileInput type={type} {...props} />
|
|
26
|
+
case "password":
|
|
27
|
+
return <PasswordInput type={type} {...props} />
|
|
28
|
+
case "search":
|
|
29
|
+
return <SearchInput type={type} {...props} />
|
|
30
|
+
case "select":
|
|
31
|
+
return <SelectInput type={type} {...props} />
|
|
32
|
+
case "textarea":
|
|
33
|
+
return <TextareaInput type={type} {...props} />
|
|
34
|
+
case "time":
|
|
35
|
+
return <TimeInput type={type} {...props} />
|
|
36
|
+
case "text":
|
|
37
|
+
case "email":
|
|
38
|
+
case "number":
|
|
39
|
+
case "tel":
|
|
40
|
+
case "url":
|
|
41
|
+
default:
|
|
42
|
+
return <TextInput type={type} {...props} />
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// @ts-ignore
|
|
47
|
+
const InputFunction: FC<ILibInput> = ({ type, ...rest }) =>
|
|
48
|
+
renderComponent(rest, type as LibInputType)
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Input component with multiple types and variants for form data collection.
|
|
52
|
+
*
|
|
53
|
+
* @component
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* <Input type="text" label="Name" placeholder="Enter your name" />
|
|
57
|
+
* <Input type="email" label="Email" validation={{ status: true }} />
|
|
58
|
+
* <Input type="select" label="Country">
|
|
59
|
+
* <option value="us">United States</option>
|
|
60
|
+
* <option value="ca">Canada</option>
|
|
61
|
+
* </Input>
|
|
62
|
+
*
|
|
63
|
+
* @extends InputHTMLAttributes
|
|
64
|
+
*
|
|
65
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the input.
|
|
66
|
+
* @prop {React.Ref<any>} [props.ref] - Ref to the input element.
|
|
67
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
68
|
+
* @prop {string} [props.label] - Label text to display above the input.
|
|
69
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
70
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
71
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the input.
|
|
72
|
+
* @prop {"color" | "date" | "datetime-local" | "month" | "week" | "file" | "password" | "search" | "email" | "number" | "tel" | "text" | "url" | "time" | "select" | "textarea"} [props.type="text"] - Type of input to render.
|
|
73
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
74
|
+
* @prop {string | number} [props.value] - Current value of the input.
|
|
75
|
+
* @prop {boolean | object} [props.counter] - Whether to show character counter or counter configuration.
|
|
76
|
+
* @prop {number} [props.maxLength] - Maximum number of characters allowed.
|
|
77
|
+
* @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input.
|
|
78
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input.
|
|
79
|
+
* @prop {React.ReactNode} [props.icon] - Icon element to display inside the input.
|
|
80
|
+
* @prop {string} [props.placeholder] - Placeholder text for the input.
|
|
81
|
+
* @prop {boolean} [props.disabled] - Whether the input is disabled.
|
|
82
|
+
* @prop {React.ReactNode} [props.children] - Child elements for select and textarea types.
|
|
83
|
+
* @prop {any} [props.rest] - Additional props spread to the input element.
|
|
84
|
+
*
|
|
85
|
+
* @returns {JSX.Element} The rendered Input component.
|
|
86
|
+
*
|
|
87
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input
|
|
88
|
+
*/
|
|
89
|
+
export const Input: FC<ILibInput> = ({
|
|
90
|
+
className,
|
|
91
|
+
ref,
|
|
92
|
+
id,
|
|
93
|
+
label,
|
|
94
|
+
labelComment,
|
|
95
|
+
helper,
|
|
96
|
+
helperBottom,
|
|
97
|
+
// @ts-ignore
|
|
98
|
+
validation,
|
|
99
|
+
value,
|
|
100
|
+
// @ts-ignore
|
|
101
|
+
counter,
|
|
102
|
+
// @ts-ignore
|
|
103
|
+
maxLength,
|
|
104
|
+
...rest
|
|
105
|
+
}) => {
|
|
106
|
+
return (
|
|
107
|
+
<InputContainer
|
|
108
|
+
label={label}
|
|
109
|
+
labelComment={labelComment}
|
|
110
|
+
helper={helper}
|
|
111
|
+
helperBottom={helperBottom}
|
|
112
|
+
validation={validation}
|
|
113
|
+
value={value}
|
|
114
|
+
counter={counter as any}
|
|
115
|
+
maxLength={maxLength}
|
|
116
|
+
id={id}
|
|
117
|
+
>
|
|
118
|
+
<InputFunction
|
|
119
|
+
ref={ref}
|
|
120
|
+
value={value}
|
|
121
|
+
maxLength={maxLength as any}
|
|
122
|
+
className={className}
|
|
123
|
+
id={id}
|
|
124
|
+
// @ts-ignore
|
|
125
|
+
validation={validation as any}
|
|
126
|
+
{...rest}
|
|
127
|
+
/>
|
|
128
|
+
</InputContainer>
|
|
129
|
+
)
|
|
130
|
+
}
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
import { BiEnvelope } from "react-icons/bi"
|
|
2
|
+
import { Input } from "../../../"
|
|
3
|
+
import { PreviewWithValidation, PreviewFull, PreviewSearch } from "./Previews"
|
|
4
|
+
import type { ILibInput } from "../../../types/components-props"
|
|
5
|
+
import type { ComponentPreview } from "../../../../data/components"
|
|
6
|
+
|
|
7
|
+
export const inputPreview: ComponentPreview<ILibInput> = {
|
|
8
|
+
name: "Input",
|
|
9
|
+
component: Input,
|
|
10
|
+
category: "components",
|
|
11
|
+
import: "Input",
|
|
12
|
+
additionalImports: null,
|
|
13
|
+
optionalImports: null,
|
|
14
|
+
propsImport: "ILibInput",
|
|
15
|
+
additionalTypeImports: null,
|
|
16
|
+
extends: ["HTMLInputElement"],
|
|
17
|
+
previews: [
|
|
18
|
+
{ previewTitle: "Full", demo: <PreviewFull /> },
|
|
19
|
+
{ previewTitle: "Color", props: { type: "color" } },
|
|
20
|
+
{ previewTitle: "Date", props: { type: "date" } },
|
|
21
|
+
{ previewTitle: "Datetime local", props: { type: "datetime-local" } },
|
|
22
|
+
{ previewTitle: "Month", props: { type: "month" } },
|
|
23
|
+
{ previewTitle: "Week", props: { type: "week" } },
|
|
24
|
+
{ previewTitle: "File", props: { type: "file" } },
|
|
25
|
+
{ previewTitle: "Password", props: { type: "password" } },
|
|
26
|
+
{ previewTitle: "Search", demo: <PreviewSearch /> },
|
|
27
|
+
{
|
|
28
|
+
previewTitle: "Search with focus keys",
|
|
29
|
+
demo: <PreviewSearch focusKeys={["Command", "KeyJ"]} showKeys />,
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
previewTitle: "Select",
|
|
33
|
+
props: {
|
|
34
|
+
type: "select",
|
|
35
|
+
children: (
|
|
36
|
+
<>
|
|
37
|
+
<option value="">Option</option>
|
|
38
|
+
<option value="">Option</option>
|
|
39
|
+
<option value="">Option</option>
|
|
40
|
+
</>
|
|
41
|
+
),
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
previewTitle: "Textarea",
|
|
46
|
+
props: { type: "textarea", label: "Textarea" },
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
previewTitle: "Text",
|
|
50
|
+
props: { type: "text", placeholder: "Input text" },
|
|
51
|
+
},
|
|
52
|
+
{ previewTitle: "Email", props: { type: "email" } },
|
|
53
|
+
{ previewTitle: "Number", props: { type: "number" } },
|
|
54
|
+
{ previewTitle: "Tel", props: { type: "tel" } },
|
|
55
|
+
{ previewTitle: "Url", props: { type: "url" } },
|
|
56
|
+
{ previewTitle: "Time", props: { type: "time" } },
|
|
57
|
+
{ previewTitle: "Disabled", props: { disabled: true, value: "Hello" } },
|
|
58
|
+
{
|
|
59
|
+
previewTitle: "Disabled with icon",
|
|
60
|
+
props: {
|
|
61
|
+
disabled: true,
|
|
62
|
+
value: "Hello",
|
|
63
|
+
icon: <BiEnvelope size={20} />,
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
previewTitle: "With icon",
|
|
68
|
+
props: { icon: <BiEnvelope size={20} /> },
|
|
69
|
+
},
|
|
70
|
+
{ previewTitle: "With validation", demo: <PreviewWithValidation /> },
|
|
71
|
+
{
|
|
72
|
+
previewTitle: "With background light",
|
|
73
|
+
props: { inputBackground: "light" },
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
previewTitle: "With background dark",
|
|
77
|
+
props: { inputBackground: "dark" },
|
|
78
|
+
},
|
|
79
|
+
{ previewTitle: "Pill", props: { inputVariant: "pill" } },
|
|
80
|
+
{
|
|
81
|
+
previewTitle: "Pill with icon",
|
|
82
|
+
props: { inputVariant: "pill", icon: <BiEnvelope size={20} /> },
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
previewTitle: "Pill with prefix & suffix",
|
|
86
|
+
props: { inputVariant: "pill", prefix: "Prefix", suffix: "Suffix" },
|
|
87
|
+
},
|
|
88
|
+
],
|
|
89
|
+
props: [
|
|
90
|
+
{
|
|
91
|
+
name: "type",
|
|
92
|
+
type: "string",
|
|
93
|
+
possibleValues: [
|
|
94
|
+
"color",
|
|
95
|
+
"date",
|
|
96
|
+
"datetime-local",
|
|
97
|
+
"month",
|
|
98
|
+
"week",
|
|
99
|
+
"file",
|
|
100
|
+
"password",
|
|
101
|
+
"search",
|
|
102
|
+
"email",
|
|
103
|
+
"number",
|
|
104
|
+
"tel",
|
|
105
|
+
"text",
|
|
106
|
+
"url",
|
|
107
|
+
"time",
|
|
108
|
+
"select",
|
|
109
|
+
"textarea",
|
|
110
|
+
],
|
|
111
|
+
defaultValue: "text",
|
|
112
|
+
description: "Type of input to render.",
|
|
113
|
+
isRequired: false,
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name: "label",
|
|
117
|
+
type: "string",
|
|
118
|
+
possibleValues: null,
|
|
119
|
+
defaultValue: null,
|
|
120
|
+
description: "Label text to display above the input.",
|
|
121
|
+
isRequired: false,
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: "labelComment",
|
|
125
|
+
type: "string",
|
|
126
|
+
possibleValues: null,
|
|
127
|
+
defaultValue: null,
|
|
128
|
+
description: "Additional comment text next to the label.",
|
|
129
|
+
isRequired: false,
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
name: "helper",
|
|
133
|
+
type: "string",
|
|
134
|
+
possibleValues: null,
|
|
135
|
+
defaultValue: null,
|
|
136
|
+
description: "Helper text to display below the label.",
|
|
137
|
+
isRequired: false,
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
name: "helperBottom",
|
|
141
|
+
type: "string",
|
|
142
|
+
possibleValues: null,
|
|
143
|
+
defaultValue: null,
|
|
144
|
+
description: "Helper text to display at the bottom of the input.",
|
|
145
|
+
isRequired: false,
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
name: "validation",
|
|
149
|
+
type: "Object",
|
|
150
|
+
possibleValues: null,
|
|
151
|
+
defaultValue: null,
|
|
152
|
+
description: "Validation state and configuration object.",
|
|
153
|
+
isRequired: false,
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
name: "value",
|
|
157
|
+
type: "string | number",
|
|
158
|
+
possibleValues: null,
|
|
159
|
+
defaultValue: null,
|
|
160
|
+
description: "Current value of the input.",
|
|
161
|
+
isRequired: false,
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
name: "counter",
|
|
165
|
+
type: "boolean | Object",
|
|
166
|
+
possibleValues: null,
|
|
167
|
+
defaultValue: null,
|
|
168
|
+
description:
|
|
169
|
+
"Whether to show character counter or counter configuration.",
|
|
170
|
+
isRequired: false,
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
name: "maxLength",
|
|
174
|
+
type: "number",
|
|
175
|
+
possibleValues: null,
|
|
176
|
+
defaultValue: null,
|
|
177
|
+
description: "Maximum number of characters allowed.",
|
|
178
|
+
isRequired: false,
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
name: "inputVariant",
|
|
182
|
+
type: "string",
|
|
183
|
+
possibleValues: ["rounded", "pill"],
|
|
184
|
+
defaultValue: "rounded",
|
|
185
|
+
description: "Visual variant of the input.",
|
|
186
|
+
isRequired: false,
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
name: "inputBackground",
|
|
190
|
+
type: "string",
|
|
191
|
+
possibleValues: ["light", "dark"],
|
|
192
|
+
defaultValue: null,
|
|
193
|
+
description: "Background theme of the input.",
|
|
194
|
+
isRequired: false,
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
name: "icon",
|
|
198
|
+
type: "ReactElement",
|
|
199
|
+
possibleValues: null,
|
|
200
|
+
defaultValue: null,
|
|
201
|
+
description: "Icon element to display inside the input.",
|
|
202
|
+
isRequired: false,
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
name: "placeholder",
|
|
206
|
+
type: "string",
|
|
207
|
+
possibleValues: null,
|
|
208
|
+
defaultValue: null,
|
|
209
|
+
description: "Placeholder text for the input.",
|
|
210
|
+
isRequired: false,
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
name: "disabled",
|
|
214
|
+
type: "boolean",
|
|
215
|
+
possibleValues: null,
|
|
216
|
+
defaultValue: null,
|
|
217
|
+
description: "Whether the input is disabled.",
|
|
218
|
+
isRequired: false,
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
name: "prefix",
|
|
222
|
+
type: "string",
|
|
223
|
+
possibleValues: null,
|
|
224
|
+
defaultValue: null,
|
|
225
|
+
description: "Text to display as a prefix inside the input.",
|
|
226
|
+
isRequired: false,
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
name: "suffix",
|
|
230
|
+
type: "string",
|
|
231
|
+
possibleValues: null,
|
|
232
|
+
defaultValue: null,
|
|
233
|
+
description: "Text to display as a suffix inside the input.",
|
|
234
|
+
isRequired: false,
|
|
235
|
+
},
|
|
236
|
+
],
|
|
237
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { useState, type ChangeEvent } from "react"
|
|
2
|
+
import { Input } from "../Input"
|
|
3
|
+
import { BiEnvelope } from "react-icons/bi"
|
|
4
|
+
|
|
5
|
+
export const PreviewFull = () => {
|
|
6
|
+
const [value, setValue] = useState("hello")
|
|
7
|
+
|
|
8
|
+
return (
|
|
9
|
+
<Input
|
|
10
|
+
label="Label"
|
|
11
|
+
labelComment="- label comment"
|
|
12
|
+
helper="Helper"
|
|
13
|
+
helperBottom="Helper bottom"
|
|
14
|
+
counter
|
|
15
|
+
maxLength={100}
|
|
16
|
+
prefix="Prefix"
|
|
17
|
+
suffix="Suffix"
|
|
18
|
+
placeholder="Placeholder"
|
|
19
|
+
icon={<BiEnvelope />}
|
|
20
|
+
value={value}
|
|
21
|
+
onChange={e => setValue(e.target.value)}
|
|
22
|
+
/>
|
|
23
|
+
)
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export const PreviewWithValidation = () => {
|
|
27
|
+
const [value, setValue] = useState("")
|
|
28
|
+
const [validation, setValidation] = useState(false)
|
|
29
|
+
|
|
30
|
+
const handleChange = (e: ChangeEvent<HTMLInputElement>) => {
|
|
31
|
+
const { value } = e.target
|
|
32
|
+
|
|
33
|
+
setValue(value)
|
|
34
|
+
|
|
35
|
+
if (value.length < 3) setValidation(false)
|
|
36
|
+
else setValidation(true)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
return (
|
|
40
|
+
<Input
|
|
41
|
+
value={value}
|
|
42
|
+
onChange={handleChange}
|
|
43
|
+
validation={{ status: validation, message: "Message" }}
|
|
44
|
+
/>
|
|
45
|
+
)
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export const PreviewSearch = ({
|
|
49
|
+
focusKeys,
|
|
50
|
+
showKeys,
|
|
51
|
+
}: {
|
|
52
|
+
focusKeys?: Array<string>
|
|
53
|
+
showKeys?: boolean
|
|
54
|
+
}) => {
|
|
55
|
+
const [value, setValue] = useState("")
|
|
56
|
+
|
|
57
|
+
return (
|
|
58
|
+
<Input
|
|
59
|
+
type="search"
|
|
60
|
+
focusKeys={focusKeys}
|
|
61
|
+
showKeys={showKeys}
|
|
62
|
+
value={value}
|
|
63
|
+
onChange={e => setValue(e.target.value)}
|
|
64
|
+
clearSearch={() => setValue("")}
|
|
65
|
+
/>
|
|
66
|
+
)
|
|
67
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const INPUT_VALIDATION_CONTAINER = []
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
InputHTMLAttributes,
|
|
3
|
+
MouseEventHandler,
|
|
4
|
+
Ref,
|
|
5
|
+
SelectHTMLAttributes,
|
|
6
|
+
TextareaHTMLAttributes,
|
|
7
|
+
} from "react"
|
|
8
|
+
import type { ReactChildren, ReactElement } from "../../types"
|
|
9
|
+
import type {
|
|
10
|
+
ILibInputCommon,
|
|
11
|
+
ILibInputExtended,
|
|
12
|
+
ILibInputWithIcon,
|
|
13
|
+
ILibInputWithValidation,
|
|
14
|
+
ILibInputWithPrefix,
|
|
15
|
+
ILibInputWithSuffix,
|
|
16
|
+
} from "../InputComponents"
|
|
17
|
+
|
|
18
|
+
// ! DO NOT EXPORT THOSE TYPES, ONLY USE THEM IN INPUT COMPONENTS
|
|
19
|
+
|
|
20
|
+
/*====================== Color ======================*/
|
|
21
|
+
|
|
22
|
+
export type ILibColorInput = Omit<
|
|
23
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
24
|
+
"prefix"
|
|
25
|
+
> &
|
|
26
|
+
ILibInputCommon &
|
|
27
|
+
ILibInputWithValidation & {
|
|
28
|
+
type: "color"
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/*====================== Date ======================*/
|
|
32
|
+
|
|
33
|
+
export type ILibDateInput = Omit<
|
|
34
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
35
|
+
"prefix"
|
|
36
|
+
> &
|
|
37
|
+
ILibInputCommon &
|
|
38
|
+
ILibInputWithIcon &
|
|
39
|
+
ILibInputWithValidation & {
|
|
40
|
+
type: "date" | "datetime-local" | "month" | "week"
|
|
41
|
+
iconCalendar?: ReactElement
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/*====================== File ======================*/
|
|
45
|
+
|
|
46
|
+
export type ILibFileInput = Omit<
|
|
47
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
48
|
+
"prefix"
|
|
49
|
+
> &
|
|
50
|
+
ILibInputCommon &
|
|
51
|
+
ILibInputWithValidation & {
|
|
52
|
+
type: "file"
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/*====================== Password ======================*/
|
|
56
|
+
|
|
57
|
+
type ILibPasswordInputBase = Omit<
|
|
58
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
59
|
+
"prefix"
|
|
60
|
+
> &
|
|
61
|
+
ILibInputExtended &
|
|
62
|
+
ILibInputWithIcon &
|
|
63
|
+
ILibInputWithValidation &
|
|
64
|
+
ILibInputWithPrefix & {
|
|
65
|
+
type: "password"
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
type PasswordInputWithButtonIcon = ILibPasswordInputBase & {
|
|
69
|
+
hideButton?: false
|
|
70
|
+
button?: {
|
|
71
|
+
iconShow?: ReactElement
|
|
72
|
+
iconHide?: ReactElement
|
|
73
|
+
textShow?: never
|
|
74
|
+
textHide?: never
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
type PasswordWithButtonText = ILibPasswordInputBase & {
|
|
79
|
+
hideButton?: false
|
|
80
|
+
button?: {
|
|
81
|
+
iconShow?: never
|
|
82
|
+
iconHide?: never
|
|
83
|
+
textShow?: string
|
|
84
|
+
textHide?: string
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
type PasswordWithoutButton = ILibPasswordInputBase & {
|
|
89
|
+
hideButton?: true
|
|
90
|
+
button?: never
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export type ILibPasswordInput =
|
|
94
|
+
| PasswordInputWithButtonIcon
|
|
95
|
+
| PasswordWithButtonText
|
|
96
|
+
| PasswordWithoutButton
|
|
97
|
+
|
|
98
|
+
/*====================== Search ======================*/
|
|
99
|
+
|
|
100
|
+
type ILibSearchInputBase = Omit<
|
|
101
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
102
|
+
"prefix"
|
|
103
|
+
> &
|
|
104
|
+
ILibInputExtended &
|
|
105
|
+
ILibInputWithIcon &
|
|
106
|
+
ILibInputWithPrefix & {
|
|
107
|
+
type: "search"
|
|
108
|
+
clearSearch?: MouseEventHandler<HTMLButtonElement>
|
|
109
|
+
iconClear?: ReactElement
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
type SearchInputShowKeys = ILibSearchInputBase & {
|
|
113
|
+
focusKeys?: Array<string>
|
|
114
|
+
showKeys?: boolean
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
type SearchInputHideKeys = ILibSearchInputBase & {
|
|
118
|
+
focusKeys?: undefined
|
|
119
|
+
showKeys?: never
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
export type ILibSearchInput = SearchInputShowKeys | SearchInputHideKeys
|
|
123
|
+
|
|
124
|
+
/*====================== Select ======================*/
|
|
125
|
+
|
|
126
|
+
export type ILibSelectInput = Omit<
|
|
127
|
+
SelectHTMLAttributes<HTMLSelectElement>,
|
|
128
|
+
"prefix"
|
|
129
|
+
> &
|
|
130
|
+
ILibInputCommon &
|
|
131
|
+
ILibInputWithIcon &
|
|
132
|
+
ILibInputWithValidation & {
|
|
133
|
+
type: "select"
|
|
134
|
+
iconSelect?: ReactElement
|
|
135
|
+
children?: ReactChildren
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
/*====================== Textarea ======================*/
|
|
139
|
+
|
|
140
|
+
export type ILibTextareaInput = TextareaHTMLAttributes<HTMLTextAreaElement> &
|
|
141
|
+
Omit<ILibInputCommon, "inputVariant"> &
|
|
142
|
+
ILibInputWithValidation & {
|
|
143
|
+
ref?: Ref<HTMLTextAreaElement>
|
|
144
|
+
type: "textarea"
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/*====================== Text ======================*/
|
|
148
|
+
|
|
149
|
+
export type ILibTextInput = Omit<
|
|
150
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
151
|
+
"prefix"
|
|
152
|
+
> &
|
|
153
|
+
ILibInputExtended &
|
|
154
|
+
ILibInputWithIcon &
|
|
155
|
+
ILibInputWithValidation &
|
|
156
|
+
ILibInputWithPrefix &
|
|
157
|
+
ILibInputWithSuffix & {
|
|
158
|
+
type?: "email" | "number" | "tel" | "text" | "url" | undefined
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/*====================== Time ======================*/
|
|
162
|
+
|
|
163
|
+
export type ILibTimeInput = Omit<
|
|
164
|
+
InputHTMLAttributes<HTMLInputElement>,
|
|
165
|
+
"prefix"
|
|
166
|
+
> &
|
|
167
|
+
ILibInputCommon &
|
|
168
|
+
ILibInputWithIcon &
|
|
169
|
+
ILibInputWithValidation &
|
|
170
|
+
ILibInputWithPrefix & {
|
|
171
|
+
type: "time"
|
|
172
|
+
iconClock?: ReactElement
|
|
173
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type FC } from "react"
|
|
2
|
+
import { clsx } from "../../../utils"
|
|
3
|
+
import {
|
|
4
|
+
InputValidation,
|
|
5
|
+
InputWrapper,
|
|
6
|
+
INPUT_COMMON_CLASSES,
|
|
7
|
+
} from "../../InputComponents"
|
|
8
|
+
import type { ILibColorInput } from "../subtypes"
|
|
9
|
+
|
|
10
|
+
export const ColorInput: FC<ILibColorInput> = ({
|
|
11
|
+
className,
|
|
12
|
+
type = "color",
|
|
13
|
+
validation,
|
|
14
|
+
inputBackground,
|
|
15
|
+
inputVariant,
|
|
16
|
+
...rest
|
|
17
|
+
}) => {
|
|
18
|
+
return (
|
|
19
|
+
<InputWrapper
|
|
20
|
+
className={className}
|
|
21
|
+
validation={validation}
|
|
22
|
+
inputBackground={inputBackground}
|
|
23
|
+
inputVariant={inputVariant}
|
|
24
|
+
>
|
|
25
|
+
<input
|
|
26
|
+
{...rest}
|
|
27
|
+
type={type}
|
|
28
|
+
className={clsx(
|
|
29
|
+
INPUT_COMMON_CLASSES({
|
|
30
|
+
inputBackground,
|
|
31
|
+
validationStatus: validation?.status,
|
|
32
|
+
}),
|
|
33
|
+
"input-color",
|
|
34
|
+
)}
|
|
35
|
+
/>
|
|
36
|
+
|
|
37
|
+
<InputValidation validation={validation} />
|
|
38
|
+
</InputWrapper>
|
|
39
|
+
)
|
|
40
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { useRef, type FC } from "react"
|
|
2
|
+
import { BiCalendar } from "react-icons/bi"
|
|
3
|
+
import { clsx } from "../../../utils"
|
|
4
|
+
import { useMergeRefs } from "../../../hooks"
|
|
5
|
+
import {
|
|
6
|
+
InputValidation,
|
|
7
|
+
InputButton,
|
|
8
|
+
InputIcon,
|
|
9
|
+
InputWrapper,
|
|
10
|
+
INPUT_COMMON_CLASSES,
|
|
11
|
+
} from "../../InputComponents"
|
|
12
|
+
import type { ILibDateInput } from "../subtypes"
|
|
13
|
+
|
|
14
|
+
export const DateInput: FC<ILibDateInput> = ({
|
|
15
|
+
ref,
|
|
16
|
+
className,
|
|
17
|
+
type = "date",
|
|
18
|
+
validation,
|
|
19
|
+
inputBackground,
|
|
20
|
+
inputVariant,
|
|
21
|
+
icon,
|
|
22
|
+
iconCalendar = <BiCalendar size={16} />,
|
|
23
|
+
disabled,
|
|
24
|
+
...rest
|
|
25
|
+
}) => {
|
|
26
|
+
const el = useRef<HTMLInputElement>(null)
|
|
27
|
+
const showPicker = () => el.current?.showPicker()
|
|
28
|
+
|
|
29
|
+
return (
|
|
30
|
+
<InputWrapper
|
|
31
|
+
className={className}
|
|
32
|
+
validation={validation}
|
|
33
|
+
inputBackground={inputBackground}
|
|
34
|
+
inputVariant={inputVariant}
|
|
35
|
+
>
|
|
36
|
+
<InputIcon
|
|
37
|
+
icon={icon}
|
|
38
|
+
inputVariant={inputVariant}
|
|
39
|
+
disabled={disabled}
|
|
40
|
+
/>
|
|
41
|
+
|
|
42
|
+
<input
|
|
43
|
+
{...rest}
|
|
44
|
+
type={type}
|
|
45
|
+
ref={useMergeRefs([ref, el])}
|
|
46
|
+
className={clsx(
|
|
47
|
+
INPUT_COMMON_CLASSES({
|
|
48
|
+
inputBackground,
|
|
49
|
+
validationStatus: validation?.status,
|
|
50
|
+
}),
|
|
51
|
+
"cursor-pointer",
|
|
52
|
+
"[&::-webkit-calendar-picker-indicator]:opacity-0 [&::-webkit-calendar-picker-indicator]:absolute [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none",
|
|
53
|
+
"input-date",
|
|
54
|
+
)}
|
|
55
|
+
disabled={disabled}
|
|
56
|
+
/>
|
|
57
|
+
|
|
58
|
+
<InputButton onClick={showPicker}>{iconCalendar}</InputButton>
|
|
59
|
+
|
|
60
|
+
<InputValidation validation={validation} />
|
|
61
|
+
</InputWrapper>
|
|
62
|
+
)
|
|
63
|
+
}
|