@smitch/breeze 0.1.0
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/.npmignore +14 -0
- package/README.md +485 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/lib/@hooks/useWindowWidth.js +17 -0
- package/lib/@hooks/useWindowWidth.js.map +1 -0
- package/lib/@utils/merge.js +35 -0
- package/lib/@utils/merge.js.map +1 -0
- package/lib/accordion/Accordion.js +28 -0
- package/lib/accordion/Accordion.js.map +1 -0
- package/lib/accordion/atoms/AccordionCard.js +9 -0
- package/lib/accordion/atoms/AccordionCard.js.map +1 -0
- package/lib/accordion/atoms/AccordionHead.js +23 -0
- package/lib/accordion/atoms/AccordionHead.js.map +1 -0
- package/lib/accordion/atoms/AccordionItem.js +10 -0
- package/lib/accordion/atoms/AccordionItem.js.map +1 -0
- package/lib/accordion/atoms/AccordionSection.js +8 -0
- package/lib/accordion/atoms/AccordionSection.js.map +1 -0
- package/lib/accordion/atoms/index.js +5 -0
- package/lib/accordion/atoms/index.js.map +1 -0
- package/lib/accordion/index.js +3 -0
- package/lib/accordion/index.js.map +1 -0
- package/lib/accordion/types/index.js +2 -0
- package/lib/accordion/types/index.js.map +1 -0
- package/lib/alert/Alert.js +42 -0
- package/lib/alert/Alert.js.map +1 -0
- package/lib/alert/index.js +2 -0
- package/lib/alert/index.js.map +1 -0
- package/lib/alert/types/index.js +2 -0
- package/lib/alert/types/index.js.map +1 -0
- package/lib/autocomplete/Autocomplete.js +9 -0
- package/lib/autocomplete/Autocomplete.js.map +1 -0
- package/lib/autocomplete/index.js +2 -0
- package/lib/autocomplete/index.js.map +1 -0
- package/lib/autocomplete/types/index.js +2 -0
- package/lib/autocomplete/types/index.js.map +1 -0
- package/lib/badge/Badge.js +57 -0
- package/lib/badge/Badge.js.map +1 -0
- package/lib/badge/index.js +2 -0
- package/lib/badge/index.js.map +1 -0
- package/lib/badge/types/index.js +2 -0
- package/lib/badge/types/index.js.map +1 -0
- package/lib/blockquote/Blockquote.js +22 -0
- package/lib/blockquote/Blockquote.js.map +1 -0
- package/lib/blockquote/index.js +2 -0
- package/lib/blockquote/index.js.map +1 -0
- package/lib/blockquote/types/index.js +2 -0
- package/lib/blockquote/types/index.js.map +1 -0
- package/lib/breadcrumbs/Breadcrumbs.js +47 -0
- package/lib/breadcrumbs/Breadcrumbs.js.map +1 -0
- package/lib/breadcrumbs/index.js +2 -0
- package/lib/breadcrumbs/index.js.map +1 -0
- package/lib/breadcrumbs/types/index.js +2 -0
- package/lib/breadcrumbs/types/index.js.map +1 -0
- package/lib/button/Button.js +76 -0
- package/lib/button/Button.js.map +1 -0
- package/lib/button/index.js +3 -0
- package/lib/button/index.js.map +1 -0
- package/lib/button/types/index.js +2 -0
- package/lib/button/types/index.js.map +1 -0
- package/lib/button/variants/CloseButton.js +18 -0
- package/lib/button/variants/CloseButton.js.map +1 -0
- package/lib/button/variants/index.js +2 -0
- package/lib/button/variants/index.js.map +1 -0
- package/lib/button/variants/types/index.js +2 -0
- package/lib/button/variants/types/index.js.map +1 -0
- package/lib/buttongroup/ButtonGroup.js +35 -0
- package/lib/buttongroup/ButtonGroup.js.map +1 -0
- package/lib/buttongroup/index.js +2 -0
- package/lib/buttongroup/index.js.map +1 -0
- package/lib/buttongroup/types/index.js +2 -0
- package/lib/buttongroup/types/index.js.map +1 -0
- package/lib/card/Card.js +32 -0
- package/lib/card/Card.js.map +1 -0
- package/lib/card/atoms/CardBody.js +8 -0
- package/lib/card/atoms/CardBody.js.map +1 -0
- package/lib/card/atoms/CardFooter.js +9 -0
- package/lib/card/atoms/CardFooter.js.map +1 -0
- package/lib/card/atoms/CardHeader.js +8 -0
- package/lib/card/atoms/CardHeader.js.map +1 -0
- package/lib/card/atoms/CardImage.js +16 -0
- package/lib/card/atoms/CardImage.js.map +1 -0
- package/lib/card/index.js +6 -0
- package/lib/card/index.js.map +1 -0
- package/lib/card/types/index.js +2 -0
- package/lib/card/types/index.js.map +1 -0
- package/lib/carousel/Carousel.js +147 -0
- package/lib/carousel/Carousel.js.map +1 -0
- package/lib/carousel/index.js +2 -0
- package/lib/carousel/index.js.map +1 -0
- package/lib/carousel/types/index.js +2 -0
- package/lib/carousel/types/index.js.map +1 -0
- package/lib/charts/BarChart.js +24 -0
- package/lib/charts/BarChart.js.map +1 -0
- package/lib/charts/BubbleChart.js +24 -0
- package/lib/charts/BubbleChart.js.map +1 -0
- package/lib/charts/ChartWrap.js +69 -0
- package/lib/charts/ChartWrap.js.map +1 -0
- package/lib/charts/DoughnutChart.js +20 -0
- package/lib/charts/DoughnutChart.js.map +1 -0
- package/lib/charts/LineChart.js +24 -0
- package/lib/charts/LineChart.js.map +1 -0
- package/lib/charts/MixedChart.js +24 -0
- package/lib/charts/MixedChart.js.map +1 -0
- package/lib/charts/PieChart.js +20 -0
- package/lib/charts/PieChart.js.map +1 -0
- package/lib/charts/PolarAreaChart.js +23 -0
- package/lib/charts/PolarAreaChart.js.map +1 -0
- package/lib/charts/RadarChart.js +23 -0
- package/lib/charts/RadarChart.js.map +1 -0
- package/lib/charts/ScatterChart.js +24 -0
- package/lib/charts/ScatterChart.js.map +1 -0
- package/lib/charts/index.js +10 -0
- package/lib/charts/index.js.map +1 -0
- package/lib/charts/types/index.js +2 -0
- package/lib/charts/types/index.js.map +1 -0
- package/lib/checkbox/Checkbox.js +9 -0
- package/lib/checkbox/Checkbox.js.map +1 -0
- package/lib/checkbox/index.js +2 -0
- package/lib/checkbox/index.js.map +1 -0
- package/lib/checkbox/types/index.js +2 -0
- package/lib/checkbox/types/index.js.map +1 -0
- package/lib/clock/Clock.js +99 -0
- package/lib/clock/Clock.js.map +1 -0
- package/lib/clock/index.js +2 -0
- package/lib/clock/index.js.map +1 -0
- package/lib/clock/types/index.js +2 -0
- package/lib/clock/types/index.js.map +1 -0
- package/lib/codeblock/Codeblock.js +21 -0
- package/lib/codeblock/Codeblock.js.map +1 -0
- package/lib/codeblock/index.js +2 -0
- package/lib/codeblock/index.js.map +1 -0
- package/lib/codeblock/types/index.js +2 -0
- package/lib/codeblock/types/index.js.map +1 -0
- package/lib/counter/Counter.js +39 -0
- package/lib/counter/Counter.js.map +1 -0
- package/lib/counter/index.js +2 -0
- package/lib/counter/index.js.map +1 -0
- package/lib/counter/types/index.js +2 -0
- package/lib/counter/types/index.js.map +1 -0
- package/lib/datatable/DataTable.js +44 -0
- package/lib/datatable/DataTable.js.map +1 -0
- package/lib/datatable/index.js +2 -0
- package/lib/datatable/index.js.map +1 -0
- package/lib/datatable/types/index.js +2 -0
- package/lib/datatable/types/index.js.map +1 -0
- package/lib/dialog/Dialog.js +45 -0
- package/lib/dialog/Dialog.js.map +1 -0
- package/lib/dialog/hooks/useDisableBack.js +16 -0
- package/lib/dialog/hooks/useDisableBack.js.map +1 -0
- package/lib/dialog/index.js +2 -0
- package/lib/dialog/index.js.map +1 -0
- package/lib/dialog/types/index.js +2 -0
- package/lib/dialog/types/index.js.map +1 -0
- package/lib/drawer/Drawer.js +39 -0
- package/lib/drawer/Drawer.js.map +1 -0
- package/lib/drawer/index.js +2 -0
- package/lib/drawer/index.js.map +1 -0
- package/lib/drawer/types/index.js +2 -0
- package/lib/drawer/types/index.js.map +1 -0
- package/lib/dropdown/Dropdown.js +40 -0
- package/lib/dropdown/Dropdown.js.map +1 -0
- package/lib/dropdown/index.js +2 -0
- package/lib/dropdown/index.js.map +1 -0
- package/lib/dropdown/types/index.js +2 -0
- package/lib/dropdown/types/index.js.map +1 -0
- package/lib/figure/Figure.js +42 -0
- package/lib/figure/Figure.js.map +1 -0
- package/lib/figure/index.js +2 -0
- package/lib/figure/index.js.map +1 -0
- package/lib/figure/types/index.js +2 -0
- package/lib/figure/types/index.js.map +1 -0
- package/lib/fileupload/FileUpload.js +52 -0
- package/lib/fileupload/FileUpload.js.map +1 -0
- package/lib/fileupload/Files.js +22 -0
- package/lib/fileupload/Files.js.map +1 -0
- package/lib/fileupload/index.js +2 -0
- package/lib/fileupload/index.js.map +1 -0
- package/lib/fileupload/types/index.js +25 -0
- package/lib/fileupload/types/index.js.map +1 -0
- package/lib/form/Fieldset.js +9 -0
- package/lib/form/Fieldset.js.map +1 -0
- package/lib/form/Form.js +64 -0
- package/lib/form/Form.js.map +1 -0
- package/lib/form/Legend.js +21 -0
- package/lib/form/Legend.js.map +1 -0
- package/lib/form/RegisterForm.js +19 -0
- package/lib/form/RegisterForm.js.map +1 -0
- package/lib/form/index.js +5 -0
- package/lib/form/index.js.map +1 -0
- package/lib/form/types/index.js +2 -0
- package/lib/form/types/index.js.map +1 -0
- package/lib/gallery/Gallery.js +12 -0
- package/lib/gallery/Gallery.js.map +1 -0
- package/lib/gallery/index.js +2 -0
- package/lib/gallery/index.js.map +1 -0
- package/lib/gallery/types/index.js +2 -0
- package/lib/gallery/types/index.js.map +1 -0
- package/lib/heading/Heading.js +38 -0
- package/lib/heading/Heading.js.map +1 -0
- package/lib/heading/index.js +2 -0
- package/lib/heading/index.js.map +1 -0
- package/lib/heading/types/index.js +2 -0
- package/lib/heading/types/index.js.map +1 -0
- package/lib/hero/Hero.js +72 -0
- package/lib/hero/Hero.js.map +1 -0
- package/lib/hero/index.js +2 -0
- package/lib/hero/index.js.map +1 -0
- package/lib/hero/types/index.js +2 -0
- package/lib/hero/types/index.js.map +1 -0
- package/lib/icon/Icon.js +37 -0
- package/lib/icon/Icon.js.map +1 -0
- package/lib/icon/index.js +2 -0
- package/lib/icon/index.js.map +1 -0
- package/lib/icon/types/index.js +2 -0
- package/lib/icon/types/index.js.map +1 -0
- package/lib/index.js +52 -0
- package/lib/index.js.map +1 -0
- package/lib/input/Input.js +37 -0
- package/lib/input/Input.js.map +1 -0
- package/lib/input/index.js +2 -0
- package/lib/input/index.js.map +1 -0
- package/lib/input/types/index.js +2 -0
- package/lib/input/types/index.js.map +1 -0
- package/lib/label/Label.js +36 -0
- package/lib/label/Label.js.map +1 -0
- package/lib/label/index.js +2 -0
- package/lib/label/index.js.map +1 -0
- package/lib/label/types/index.js +2 -0
- package/lib/label/types/index.js.map +1 -0
- package/lib/loading/Loading.js +71 -0
- package/lib/loading/Loading.js.map +1 -0
- package/lib/loading/index.js +3 -0
- package/lib/loading/index.js.map +1 -0
- package/lib/loading/spinners/Bars.js +7 -0
- package/lib/loading/spinners/Bars.js.map +1 -0
- package/lib/loading/spinners/Clock.js +7 -0
- package/lib/loading/spinners/Clock.js.map +1 -0
- package/lib/loading/spinners/Dots.js +7 -0
- package/lib/loading/spinners/Dots.js.map +1 -0
- package/lib/loading/spinners/Pulse.js +7 -0
- package/lib/loading/spinners/Pulse.js.map +1 -0
- package/lib/loading/spinners/Spindots.js +7 -0
- package/lib/loading/spinners/Spindots.js.map +1 -0
- package/lib/loading/spinners/Spinner.js +7 -0
- package/lib/loading/spinners/Spinner.js.map +1 -0
- package/lib/loading/spinners/Wifi.js +7 -0
- package/lib/loading/spinners/Wifi.js.map +1 -0
- package/lib/loading/spinners/index.js +8 -0
- package/lib/loading/spinners/index.js.map +1 -0
- package/lib/loading/types/index.js +2 -0
- package/lib/loading/types/index.js.map +1 -0
- package/lib/map/LazyMap.js +146 -0
- package/lib/map/LazyMap.js.map +1 -0
- package/lib/map/LazyMapCircle.js +14 -0
- package/lib/map/LazyMapCircle.js.map +1 -0
- package/lib/map/LazyMapLine.js +13 -0
- package/lib/map/LazyMapLine.js.map +1 -0
- package/lib/map/LazyMapMarker.js +72 -0
- package/lib/map/LazyMapMarker.js.map +1 -0
- package/lib/map/LazyMapPolygon.js +9 -0
- package/lib/map/LazyMapPolygon.js.map +1 -0
- package/lib/map/LazyMapRectangle.js +12 -0
- package/lib/map/LazyMapRectangle.js.map +1 -0
- package/lib/map/Map.js +34 -0
- package/lib/map/Map.js.map +1 -0
- package/lib/map/MapCircle.js +34 -0
- package/lib/map/MapCircle.js.map +1 -0
- package/lib/map/MapLine.js +34 -0
- package/lib/map/MapLine.js.map +1 -0
- package/lib/map/MapMarker.js +34 -0
- package/lib/map/MapMarker.js.map +1 -0
- package/lib/map/MapPolygon.js +34 -0
- package/lib/map/MapPolygon.js.map +1 -0
- package/lib/map/MapRectangle.js +34 -0
- package/lib/map/MapRectangle.js.map +1 -0
- package/lib/map/index.js +7 -0
- package/lib/map/index.js.map +1 -0
- package/lib/map/tileOptions.js +33 -0
- package/lib/map/tileOptions.js.map +1 -0
- package/lib/map/types/index.js +2 -0
- package/lib/map/types/index.js.map +1 -0
- package/lib/modal/Modal.js +33 -0
- package/lib/modal/Modal.js.map +1 -0
- package/lib/modal/hooks/useDisableBack.js +14 -0
- package/lib/modal/hooks/useDisableBack.js.map +1 -0
- package/lib/modal/index.js +2 -0
- package/lib/modal/index.js.map +1 -0
- package/lib/modal/types/index.js +2 -0
- package/lib/modal/types/index.js.map +1 -0
- package/lib/navbar/NavBar.js +17 -0
- package/lib/navbar/NavBar.js.map +1 -0
- package/lib/navbar/NavBrand.js +9 -0
- package/lib/navbar/NavBrand.js.map +1 -0
- package/lib/navbar/NavLinks.js +27 -0
- package/lib/navbar/NavLinks.js.map +1 -0
- package/lib/navbar/index.js +2 -0
- package/lib/navbar/index.js.map +1 -0
- package/lib/navbar/types/index.js +2 -0
- package/lib/navbar/types/index.js.map +1 -0
- package/lib/pagination/Pagination.js +42 -0
- package/lib/pagination/Pagination.js.map +1 -0
- package/lib/pagination/index.js +2 -0
- package/lib/pagination/index.js.map +1 -0
- package/lib/pagination/types/index.js +2 -0
- package/lib/pagination/types/index.js.map +1 -0
- package/lib/passwordinput/PasswordInput.js +22 -0
- package/lib/passwordinput/PasswordInput.js.map +1 -0
- package/lib/passwordinput/index.js +2 -0
- package/lib/passwordinput/index.js.map +1 -0
- package/lib/passwordinput/types/index.js +2 -0
- package/lib/passwordinput/types/index.js.map +1 -0
- package/lib/pictogram/Pictogram.js +21 -0
- package/lib/pictogram/Pictogram.js.map +1 -0
- package/lib/pictogram/index.js +2 -0
- package/lib/pictogram/index.js.map +1 -0
- package/lib/pictogram/types/index.js +2 -0
- package/lib/pictogram/types/index.js.map +1 -0
- package/lib/placeholder/PlaceHolder.js +28 -0
- package/lib/placeholder/PlaceHolder.js.map +1 -0
- package/lib/placeholder/index.js +2 -0
- package/lib/placeholder/index.js.map +1 -0
- package/lib/placeholder/types/index.js +2 -0
- package/lib/placeholder/types/index.js.map +1 -0
- package/lib/progress/Progress.js +26 -0
- package/lib/progress/Progress.js.map +1 -0
- package/lib/progress/index.js +2 -0
- package/lib/progress/index.js.map +1 -0
- package/lib/progress/types/index.js +2 -0
- package/lib/progress/types/index.js.map +1 -0
- package/lib/radiogroup/RadioGroup.js +28 -0
- package/lib/radiogroup/RadioGroup.js.map +1 -0
- package/lib/radiogroup/index.js +2 -0
- package/lib/radiogroup/index.js.map +1 -0
- package/lib/radiogroup/types/index.js +2 -0
- package/lib/radiogroup/types/index.js.map +1 -0
- package/lib/rangeinput/RangeInput.js +45 -0
- package/lib/rangeinput/RangeInput.js.map +1 -0
- package/lib/rangeinput/index.js +2 -0
- package/lib/rangeinput/index.js.map +1 -0
- package/lib/rangeinput/types/index.js +2 -0
- package/lib/rangeinput/types/index.js.map +1 -0
- package/lib/ratings/Ratings.js +25 -0
- package/lib/ratings/Ratings.js.map +1 -0
- package/lib/ratings/index.js +2 -0
- package/lib/ratings/index.js.map +1 -0
- package/lib/ratings/types/index.js +2 -0
- package/lib/ratings/types/index.js.map +1 -0
- package/lib/searchinput/SearchInput.js +22 -0
- package/lib/searchinput/SearchInput.js.map +1 -0
- package/lib/searchinput/index.js +2 -0
- package/lib/searchinput/index.js.map +1 -0
- package/lib/searchinput/types/index.js +2 -0
- package/lib/searchinput/types/index.js.map +1 -0
- package/lib/select/Select.js +34 -0
- package/lib/select/Select.js.map +1 -0
- package/lib/select/index.js +2 -0
- package/lib/select/index.js.map +1 -0
- package/lib/select/types/index.js +2 -0
- package/lib/select/types/index.js.map +1 -0
- package/lib/sidebar/Sidebar.js +56 -0
- package/lib/sidebar/Sidebar.js.map +1 -0
- package/lib/sidebar/index.js +2 -0
- package/lib/sidebar/index.js.map +1 -0
- package/lib/sidebar/types/index.js +2 -0
- package/lib/sidebar/types/index.js.map +1 -0
- package/lib/socialshare/SocialShare.js +64 -0
- package/lib/socialshare/SocialShare.js.map +1 -0
- package/lib/socialshare/buttons/BlueskyButton.js +18 -0
- package/lib/socialshare/buttons/BlueskyButton.js.map +1 -0
- package/lib/socialshare/buttons/EmailButton.js +16 -0
- package/lib/socialshare/buttons/EmailButton.js.map +1 -0
- package/lib/socialshare/buttons/FacebookButton.js +16 -0
- package/lib/socialshare/buttons/FacebookButton.js.map +1 -0
- package/lib/socialshare/buttons/LinkedinButton.js +16 -0
- package/lib/socialshare/buttons/LinkedinButton.js.map +1 -0
- package/lib/socialshare/buttons/PinterestButton.js +19 -0
- package/lib/socialshare/buttons/PinterestButton.js.map +1 -0
- package/lib/socialshare/buttons/RedditButton.js +19 -0
- package/lib/socialshare/buttons/RedditButton.js.map +1 -0
- package/lib/socialshare/buttons/SlackButton.js +17 -0
- package/lib/socialshare/buttons/SlackButton.js.map +1 -0
- package/lib/socialshare/buttons/TelegramButton.js +19 -0
- package/lib/socialshare/buttons/TelegramButton.js.map +1 -0
- package/lib/socialshare/buttons/WhatsappButton.js +16 -0
- package/lib/socialshare/buttons/WhatsappButton.js.map +1 -0
- package/lib/socialshare/buttons/XButton.js +19 -0
- package/lib/socialshare/buttons/XButton.js.map +1 -0
- package/lib/socialshare/index.js +12 -0
- package/lib/socialshare/index.js.map +1 -0
- package/lib/socialshare/types/index.js +2 -0
- package/lib/socialshare/types/index.js.map +1 -0
- package/lib/statbar/StatBar.js +15 -0
- package/lib/statbar/StatBar.js.map +1 -0
- package/lib/statbar/index.js +2 -0
- package/lib/statbar/index.js.map +1 -0
- package/lib/statbar/types/index.js +2 -0
- package/lib/statbar/types/index.js.map +1 -0
- package/lib/switch/Switch.js +55 -0
- package/lib/switch/Switch.js.map +1 -0
- package/lib/switch/index.js +2 -0
- package/lib/switch/index.js.map +1 -0
- package/lib/switch/types/index.js +2 -0
- package/lib/switch/types/index.js.map +1 -0
- package/lib/tabs/Tab.js +6 -0
- package/lib/tabs/Tab.js.map +1 -0
- package/lib/tabs/TabBar.js +18 -0
- package/lib/tabs/TabBar.js.map +1 -0
- package/lib/tabs/Tabs.js +59 -0
- package/lib/tabs/Tabs.js.map +1 -0
- package/lib/tabs/index.js +2 -0
- package/lib/tabs/index.js.map +1 -0
- package/lib/tabs/types/index.js +2 -0
- package/lib/tabs/types/index.js.map +1 -0
- package/lib/textarea/TextArea.js +17 -0
- package/lib/textarea/TextArea.js.map +1 -0
- package/lib/textarea/index.js +2 -0
- package/lib/textarea/index.js.map +1 -0
- package/lib/textarea/types/index.js +2 -0
- package/lib/textarea/types/index.js.map +1 -0
- package/lib/textinput/TextInput.js +18 -0
- package/lib/textinput/TextInput.js.map +1 -0
- package/lib/textinput/index.js +2 -0
- package/lib/textinput/index.js.map +1 -0
- package/lib/textinput/types/index.js +2 -0
- package/lib/textinput/types/index.js.map +1 -0
- package/lib/ticker/Ticker.js +21 -0
- package/lib/ticker/Ticker.js.map +1 -0
- package/lib/ticker/index.js +2 -0
- package/lib/ticker/index.js.map +1 -0
- package/lib/ticker/types/index.js +2 -0
- package/lib/ticker/types/index.js.map +1 -0
- package/lib/toast/Toast.js +76 -0
- package/lib/toast/Toast.js.map +1 -0
- package/lib/toast/index.js +2 -0
- package/lib/toast/index.js.map +1 -0
- package/lib/toast/types/index.js +2 -0
- package/lib/toast/types/index.js.map +1 -0
- package/lib/twitterembed/TwitterEmbed.js +123 -0
- package/lib/twitterembed/TwitterEmbed.js.map +1 -0
- package/lib/twitterembed/index.js +2 -0
- package/lib/twitterembed/index.js.map +1 -0
- package/lib/twitterembed/types/index.js +2 -0
- package/lib/twitterembed/types/index.js.map +1 -0
- package/lib/videoplayer/Video.js +130 -0
- package/lib/videoplayer/Video.js.map +1 -0
- package/lib/videoplayer/VideoControls.js +63 -0
- package/lib/videoplayer/VideoControls.js.map +1 -0
- package/lib/videoplayer/VideoPlayer.js +66 -0
- package/lib/videoplayer/VideoPlayer.js.map +1 -0
- package/lib/videoplayer/VideoTracks.js +9 -0
- package/lib/videoplayer/VideoTracks.js.map +1 -0
- package/lib/videoplayer/controls/CaptionsControl.js +15 -0
- package/lib/videoplayer/controls/CaptionsControl.js.map +1 -0
- package/lib/videoplayer/controls/FullscreenControl.js +8 -0
- package/lib/videoplayer/controls/FullscreenControl.js.map +1 -0
- package/lib/videoplayer/controls/PipControl.js +8 -0
- package/lib/videoplayer/controls/PipControl.js.map +1 -0
- package/lib/videoplayer/controls/SoundControl.js +8 -0
- package/lib/videoplayer/controls/SoundControl.js.map +1 -0
- package/lib/videoplayer/controls/index.js +5 -0
- package/lib/videoplayer/controls/index.js.map +1 -0
- package/lib/videoplayer/index.js +3 -0
- package/lib/videoplayer/index.js.map +1 -0
- package/lib/videoplayer/types/index.js +2 -0
- package/lib/videoplayer/types/index.js.map +1 -0
- package/lib/youtubeembed/YoutubeEmbed.js +33 -0
- package/lib/youtubeembed/YoutubeEmbed.js.map +1 -0
- package/lib/youtubeembed/index.js +2 -0
- package/lib/youtubeembed/index.js.map +1 -0
- package/lib/youtubeembed/types/index.js +2 -0
- package/lib/youtubeembed/types/index.js.map +1 -0
- package/package.json +39 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../src/ui/form/Form.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;AAEZ,OAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAErE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAA;AAI3B,IAAM,OAAO,GAAG;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,oBAAoB;CACzB,CAAA;AAED,IAAM,IAAI,GAAG,UAAC,EA0BF;QAzBX,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,KAAK,WAAA,EACL,YAAa,EAAb,IAAI,mBAAG,MAAM,KAAA,EACb,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,cAAc,EAAd,MAAM,mBAAG,KAAK,KAAA,EACd,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,QAAQ,cAAA,EACR,mBAAsB,EAAtB,WAAW,mBAAG,QAAQ,KAAA,EACtB,mBAAsB,EAAtB,WAAW,mBAAG,QAAQ,KAAA,EACtB,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,sBAAoB,EAApB,cAAc,mBAAG,GAAG,KAAA,EACpB,wBAA4B,EAA5B,gBAAgB,mBAAG,SAAS,KAAA,EAC5B,mBAAqB,EAArB,WAAW,mBAAG,OAAO,KAAA,EACrB,wBAAgC,EAAhC,gBAAgB,mBAAG,aAAa,KAAA,EAChC,mBAAuB,EAAvB,WAAW,mBAAG,SAAS,KAAA,EACvB,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,0BAA8B,EAA9B,kBAAkB,mBAAG,SAAS,KAAA,EAC9B,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,0BAA8B,EAA9B,kBAAkB,mBAAG,SAAS,KAAA,EAC9B,sBAA8B,EAA9B,cAAc,mBAAG,aAAa,KAAA,EAC9B,mBAAuB,EAAvB,WAAW,mBAAG,SAAS,KAAA,EACvB,oBAAoB,EAApB,YAAY,mBAAG,KAAK,KAAA,EACpB,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA;IAEjB,IAAM,IAAI,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAA;IAC3C,IAAA,KAAoB,QAAQ,CAAC,KAAK,CAAC,EAAlC,KAAK,QAAA,EAAE,QAAQ,QAAmB,CAAA;IACnC,IAAA,KAA0B,QAAQ,CAAC,EAAE,CAAC,EAArC,QAAQ,QAAA,EAAE,WAAW,QAAgB,CAAA;IAC5C,IAAM,aAAa,GAAG,OAAO,CAAC,cAAM,OAAA,OAAO,CAAC,MAAM,CAAC,EAAf,CAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAE9D,IAAM,YAAY,GAAG,UAAC,CAAmC;QACxD,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,IAAI,QAAQ,EAAE,CAAC;YACd,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACnB,CAAC;IACF,CAAC,CAAA;IAED,IAAM,YAAY,GAAG;QACpB,IAAI,QAAQ,EAAE,CAAC;YACd,QAAQ,EAAE,CAAA;QACX,CAAC;IACF,CAAC,CAAA;IAED,IAAM,iBAAiB,GAAG,WAAW,CAAC,UAAC,KAAY;QAClD,IAAM,MAAM,GAAG,KAAK,CAAC,MAA0B,CAAA;QACvC,IAAA,IAAI,GAAY,MAAM,KAAlB,EAAE,KAAK,GAAK,MAAM,MAAX,CAAW;QAC9B,WAAW,CAAC,UAAC,QAAQ;;YACpB,IAAM,WAAW,yBACb,QAAQ,gBACV,IAAI,IAAG,KAAK,MACb,CAAA;YACD,OAAO,WAAW,CAAA;QACnB,CAAC,CAAC,CAAA;QAEF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;QACvC,CAAC;IACF,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,IAAM,UAAU,GAAG,WAAW,CAC7B,UAAC,IAAqB;QACrB,IAAI,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAA;QACzD,CAAC;QACD,OAAO;YACN,IAAI,IAAI,EAAE,CAAC;gBACV,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAA;YAC5D,CAAC;QACF,CAAC,CAAA;IACF,CAAC,EACD,CAAC,iBAAiB,CAAC,CACnB,CAAA;IAED,OAAO,CACN,gBACC,SAAS,EAAE,OAAO,CAAC,0BAAmB,aAAa,WAAQ,EAAE,SAAS,CAAC,EACvE,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,IAAI,EACR,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,YAAY,aAErB,QAAQ,EACR,OAAO,IAAI,CACX,8BACE,SAAS,IAAI,aAAI,SAAS,EAAC,sCAAsC,GAAG,EACrE,eACC,SAAS,EAAE,yEAAkE,aAAa,kBAAQ,cAAc,CAAE,aAEjH,UAAU,CAAC,CAAC,CAAC,CACb,KAAC,MAAM,IACN,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,2BAA2B,EACtC,aAAa,EAAE,gBAAgB,EAC/B,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,kBAAkB,EAChC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,YAAY,YAEpB,WAAW,GACJ,CACT,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,MAAM,IACN,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,2BAA2B,EACtC,aAAa,EAAE,gBAAgB,EAC/B,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,kBAAkB,EAChC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,CAAC,KAAK,YAEf,WAAW,GACJ,IACJ,IACJ,CACH,IACK,CACP,CAAA;AACF,CAAC,CAAA;AAED,eAAe,IAAI,CAAA","sourcesContent":["'use client'\n\nimport React, { useRef, useState, useCallback, useMemo } from 'react'\n\nimport { twMerge } from 'tailwind-merge'\n\nimport { Button } from '..'\n\nimport { FormProps } from './types'\n\nconst layouts = {\n\tcol: 'flex-col',\n\trow: 'flex-row flex-wrap',\n}\n\nconst Form = ({\n\tclassName = '',\n\tstyle,\n\tname = 'form',\n\tonsubmit,\n\tonCancel,\n\tlayout = 'col',\n\tshowCancel = false,\n\tactions = true,\n\tchildren,\n\tsubmitLabel = 'Submit',\n\tcancelLabel = 'Cancel',\n\tactionsLayout = 'row',\n\tactionsSpacing = '0',\n\tsubmitBackground = 'primary',\n\tsubmitColor = 'light',\n\tcancelBackground = 'transparent',\n\tcancelColor = 'current',\n\tsubmitOutline = false,\n\tsubmitOutlineColor = 'current',\n\tcancelOutline = false,\n\tcancelOutlineColor = 'current',\n\tbuttonTextcase = 'normal-case',\n\tbuttonShape = 'default',\n\tbuttonIsBold = false,\n\tseparator = false,\n}: FormProps) => {\n\tconst form = useRef<HTMLFormElement | null>(null)\n\tconst [valid, setValid] = useState(false)\n\tconst [formData, setFormData] = useState({})\n\tconst layoutClasses = useMemo(() => layouts[layout], [layout])\n\n\tconst handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\n\t\te.preventDefault()\n\t\tif (onsubmit) {\n\t\t\tonsubmit(formData)\n\t\t}\n\t}\n\n\tconst handleCancel = () => {\n\t\tif (onCancel) {\n\t\t\tonCancel()\n\t\t}\n\t}\n\n\tconst handleInputChange = useCallback((event: Event) => {\n\t\tconst target = event.target as HTMLInputElement\n\t\tconst { name, value } = target\n\t\tsetFormData((prevData) => {\n\t\t\tconst updatedData = {\n\t\t\t\t...prevData,\n\t\t\t\t[name]: value,\n\t\t\t}\n\t\t\treturn updatedData\n\t\t})\n\n\t\tif (form.current) {\n\t\t\tsetValid(form.current.checkValidity())\n\t\t}\n\t}, [])\n\n\tconst setFormRef = useCallback(\n\t\t(node: HTMLFormElement) => {\n\t\t\tif (node) {\n\t\t\t\tform.current = node\n\t\t\t\tnode.addEventListener('change', handleInputChange, true)\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (node) {\n\t\t\t\t\tnode.removeEventListener('change', handleInputChange, true)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[handleInputChange]\n\t)\n\n\treturn (\n\t\t<form\n\t\t\tclassName={twMerge(`form group flex ${layoutClasses} gap-8`, className)}\n\t\t\tstyle={style}\n\t\t\tname={name}\n\t\t\tid={name}\n\t\t\tref={setFormRef}\n\t\t\tonSubmit={handleSubmit}\n\t\t>\n\t\t\t{children}\n\t\t\t{actions && (\n\t\t\t\t<>\n\t\t\t\t\t{separator && <hr className='border-neutral border-t-2 opacity-70' />}\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={`form-actions mt-auto flex group justify-between flex-grow flex-${actionsLayout} gap-${actionsSpacing}`}\n\t\t\t\t\t>\n\t\t\t\t\t\t{showCancel ? (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ttype='button'\n\t\t\t\t\t\t\t\tclassName={`!justify-center flex-grow`}\n\t\t\t\t\t\t\t\tbtnBackground={cancelBackground}\n\t\t\t\t\t\t\t\tbtnColor={cancelColor}\n\t\t\t\t\t\t\t\toutline={cancelOutline}\n\t\t\t\t\t\t\t\toutlineColor={cancelOutlineColor}\n\t\t\t\t\t\t\t\ttextcase={buttonTextcase}\n\t\t\t\t\t\t\t\tlayout={buttonShape}\n\t\t\t\t\t\t\t\tisBold={buttonIsBold}\n\t\t\t\t\t\t\t\tonClick={handleCancel}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{cancelLabel}\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype='submit'\n\t\t\t\t\t\t\tclassName={`!justify-center flex-grow`}\n\t\t\t\t\t\t\tbtnBackground={submitBackground}\n\t\t\t\t\t\t\tbtnColor={submitColor}\n\t\t\t\t\t\t\toutline={submitOutline}\n\t\t\t\t\t\t\toutlineColor={submitOutlineColor}\n\t\t\t\t\t\t\ttextcase={buttonTextcase}\n\t\t\t\t\t\t\tlayout={buttonShape}\n\t\t\t\t\t\t\tisBold={buttonIsBold}\n\t\t\t\t\t\t\tdisabled={!valid}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{submitLabel}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</form>\n\t)\n}\n\nexport default Form\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
var sizes = {
|
|
4
|
+
sm: 'text-sm',
|
|
5
|
+
md: 'text-base',
|
|
6
|
+
lg: 'text-lg',
|
|
7
|
+
xl: 'text-2xl',
|
|
8
|
+
};
|
|
9
|
+
var alignments = {
|
|
10
|
+
left: 'text-left',
|
|
11
|
+
center: 'text-center',
|
|
12
|
+
right: 'text-right',
|
|
13
|
+
};
|
|
14
|
+
var Legend = function (_a) {
|
|
15
|
+
var text = _a.text, _b = _a.isBold, isBold = _b === void 0 ? false : _b, _c = _a.className, className = _c === void 0 ? '' : _c, _d = _a.align, align = _d === void 0 ? 'center' : _d, _e = _a.legendSize, legendSize = _e === void 0 ? 'md' : _e;
|
|
16
|
+
var sizeClasses = useMemo(function () { return sizes[legendSize]; }, [legendSize]);
|
|
17
|
+
var alignment = useMemo(function () { return alignments[align]; }, [align]);
|
|
18
|
+
return (_jsx("legend", { className: "legend ".concat(className, " ").concat(alignment, " ").concat(isBold ? 'font-bold' : 'font-normal', " text-").concat(align, " ").concat(sizeClasses, " text-dark dark:text-light mb-[1em]"), children: text }));
|
|
19
|
+
};
|
|
20
|
+
export default Legend;
|
|
21
|
+
//# sourceMappingURL=Legend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../src/ui/form/Legend.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAItC,IAAM,KAAK,GAAG;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,UAAU;CACd,CAAA;AAED,IAAM,UAAU,GAAG;IAClB,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;CACnB,CAAA;AAED,IAAM,MAAM,GAAG,UAAC,EAMF;QALb,IAAI,UAAA,EACJ,cAAc,EAAd,MAAM,mBAAG,KAAK,KAAA,EACd,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,aAAgB,EAAhB,KAAK,mBAAG,QAAQ,KAAA,EAChB,kBAAiB,EAAjB,UAAU,mBAAG,IAAI,KAAA;IAEjB,IAAM,WAAW,GAAG,OAAO,CAAC,cAAM,OAAA,KAAK,CAAC,UAAU,CAAC,EAAjB,CAAiB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;IAClE,IAAM,SAAS,GAAG,OAAO,CAAC,cAAM,OAAA,UAAU,CAAC,KAAK,CAAC,EAAjB,CAAiB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAE3D,OAAO,CACN,iBACC,SAAS,EAAE,iBAAU,SAAS,cAAI,SAAS,cAC1C,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,mBAC5B,KAAK,cAAI,WAAW,wCAAqC,YAEjE,IAAI,GACG,CACT,CAAA;AACF,CAAC,CAAA;AAED,eAAe,MAAM,CAAA","sourcesContent":["import React, { useMemo } from 'react'\n\nimport { LegendProps } from './types'\n\nconst sizes = {\n\tsm: 'text-sm',\n\tmd: 'text-base',\n\tlg: 'text-lg',\n\txl: 'text-2xl',\n}\n\nconst alignments = {\n\tleft: 'text-left',\n\tcenter: 'text-center',\n\tright: 'text-right',\n}\n\nconst Legend = ({\n\ttext,\n\tisBold = false,\n\tclassName = '',\n\talign = 'center',\n\tlegendSize = 'md',\n}: LegendProps) => {\n\tconst sizeClasses = useMemo(() => sizes[legendSize], [legendSize])\n\tconst alignment = useMemo(() => alignments[align], [align])\n\n\treturn (\n\t\t<legend\n\t\t\tclassName={`legend ${className} ${alignment} ${\n\t\t\t\tisBold ? 'font-bold' : 'font-normal'\n\t\t\t} text-${align} ${sizeClasses} text-dark dark:text-light mb-[1em]`}\n\t\t>\n\t\t\t{text}\n\t\t</legend>\n\t)\n}\n\nexport default Legend\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { Form, Fieldset, TextInput, PasswordInput, Checkbox } from '..';
|
|
5
|
+
var RegisterForm = function (_a) {
|
|
6
|
+
var action = _a.action, _b = _a.actionsLayout, actionsLayout = _b === void 0 ? 'row' : _b, _c = _a.actionsSpacing, actionsSpacing = _c === void 0 ? '0' : _c, onCancel = _a.onCancel, onsubmit = _a.onsubmit, _d = _a.showCancel, showCancel = _d === void 0 ? true : _d, _e = _a.submitLabel, submitLabel = _e === void 0 ? 'Register' : _e, _f = _a.cancelLabel, cancelLabel = _f === void 0 ? 'Cancel' : _f, _g = _a.submitBackground, submitBackground = _g === void 0 ? 'primary' : _g, _h = _a.submitColor, submitColor = _h === void 0 ? 'light' : _h, _j = _a.submitOutlineColor, submitOutlineColor = _j === void 0 ? 'current' : _j, _k = _a.cancelBackground, cancelBackground = _k === void 0 ? 'transparent' : _k, _l = _a.cancelColor, cancelColor = _l === void 0 ? 'current' : _l, _m = _a.cancelOutlineColor, cancelOutlineColor = _m === void 0 ? 'current' : _m, _o = _a.separator, separator = _o === void 0 ? true : _o, _p = _a.name, name = _p === void 0 ? 'register' : _p, _q = _a.className, className = _q === void 0 ? '' : _q, style = _a.style, _r = _a.buttonOutline, buttonOutline = _r === void 0 ? false : _r, _s = _a.buttonTextcase, buttonTextcase = _s === void 0 ? 'normal-case' : _s, _t = _a.buttonShape, buttonShape = _t === void 0 ? 'default' : _t, _u = _a.buttonIsBold, buttonIsBold = _u === void 0 ? true : _u, _v = _a.legendText, legendText = _v === void 0 ? 'Register' : _v, _w = _a.legendisBold, legendisBold = _w === void 0 ? true : _w, _x = _a.legendAlign, legendAlign = _x === void 0 ? 'center' : _x, _y = _a.legendSize, legendSize = _y === void 0 ? 'md' : _y, _z = _a.spacing, spacing = _z === void 0 ? '4' : _z, _0 = _a.hasBorder, hasBorder = _0 === void 0 ? false : _0, userLabel = _a.userLabel, _1 = _a.userAutocomplete, userAutocomplete = _1 === void 0 ? 'email' : _1, userPlaceholder = _a.userPlaceholder, passwordLabel = _a.passwordLabel, passwordPlaceholder = _a.passwordPlaceholder, passwordPattern = _a.passwordPattern, passwordTitle = _a.passwordTitle, confirmLabel = _a.confirmLabel, confirmPlaceholder = _a.confirmPlaceholder, confirmTitle = _a.confirmTitle, _2 = _a.inputsLayout, inputsLayout = _2 === void 0 ? 'col' : _2, _3 = _a.inputsSize, inputsSize = _3 === void 0 ? 'md' : _3, _4 = _a.inputsRounded, inputsRounded = _4 === void 0 ? 'none' : _4, checkLabel = _a.checkLabel, checkLabelIsBold = _a.checkLabelIsBold, checkRounded = _a.checkRounded, checkHint = _a.checkHint;
|
|
7
|
+
var _5 = useState(''), newpassword = _5[0], setNewpassword = _5[1];
|
|
8
|
+
var handleCreatePassword = function (value) {
|
|
9
|
+
setNewpassword(value);
|
|
10
|
+
};
|
|
11
|
+
var handleCancel = function () {
|
|
12
|
+
if (onCancel) {
|
|
13
|
+
onCancel();
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
return (_jsx(Form, { action: action, actionsLayout: actionsLayout, actionsSpacing: actionsSpacing, onCancel: handleCancel, onsubmit: onsubmit, showCancel: showCancel, submitLabel: submitLabel, submitBackground: submitBackground, submitColor: submitColor, submitOutline: buttonOutline, submitOutlineColor: submitOutlineColor, cancelLabel: cancelLabel, cancelBackground: cancelBackground, cancelColor: cancelColor, cancelOutline: buttonOutline, cancelOutlineColor: cancelOutlineColor, separator: separator, name: name, method: 'POST', className: className, style: style, buttonTextcase: buttonTextcase, buttonShape: buttonShape, buttonIsBold: buttonIsBold, children: _jsxs(Fieldset, { legendText: legendText, legendSize: legendSize, isBold: legendisBold, spacing: spacing, legendAlign: legendAlign, hasBorder: hasBorder, children: [_jsx(TextInput, { label: userLabel, autocomplete: userAutocomplete, placeholder: userPlaceholder, name: 'user-name', id: 'user-name', required: true, layout: inputsLayout, size: inputsSize, rounded: inputsRounded }), _jsx(PasswordInput, { name: 'newpassword', label: passwordLabel, placeholder: passwordPlaceholder, title: passwordTitle, autocomplete: 'new-password', pattern: passwordPattern, onInputChange: handleCreatePassword, layout: inputsLayout, size: inputsSize, rounded: inputsRounded, required: true, hint: true }), _jsx(PasswordInput, { label: confirmLabel, autocomplete: 'new-password', placeholder: confirmPlaceholder, title: confirmTitle, name: 'confirmpassword', pattern: newpassword, layout: inputsLayout, size: inputsSize, rounded: inputsRounded, required: true, hint: true }), _jsx(Checkbox, { label: checkLabel, labelIsBold: checkLabelIsBold, size: inputsSize, rounded: checkRounded, name: 'terms', required: true, hint: checkHint })] }) }));
|
|
17
|
+
};
|
|
18
|
+
export default RegisterForm;
|
|
19
|
+
//# sourceMappingURL=RegisterForm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegisterForm.js","sourceRoot":"","sources":["../../../src/ui/form/RegisterForm.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client'\n\nimport React, { useState } from 'react'\nimport { Form, Fieldset, TextInput, PasswordInput, Checkbox } from '..'\nimport { RegisterFormProps } from './types'\n\nconst RegisterForm = ({\n\taction,\n\tactionsLayout = 'row',\n\tactionsSpacing = '0',\n\tonCancel,\n\tonsubmit,\n\tshowCancel = true,\n\tsubmitLabel = 'Register',\n\tcancelLabel = 'Cancel',\n\tsubmitBackground = 'primary',\n\tsubmitColor = 'light',\n\tsubmitOutlineColor = 'current',\n\tcancelBackground = 'transparent',\n\tcancelColor = 'current',\n\tcancelOutlineColor = 'current',\n\tseparator = true,\n\tname = 'register',\n\tclassName = '',\n\tstyle,\n\tbuttonOutline = false,\n\tbuttonTextcase = 'normal-case',\n\tbuttonShape = 'default',\n\tbuttonIsBold = true,\n\tlegendText = 'Register',\n\tlegendisBold = true,\n\tlegendAlign = 'center',\n\tlegendSize = 'md',\n\tspacing = '4',\n\thasBorder = false,\n\tuserLabel,\n\tuserAutocomplete = 'email',\n\tuserPlaceholder,\n\tpasswordLabel,\n\tpasswordPlaceholder,\n\tpasswordPattern,\n\tpasswordTitle,\n\tconfirmLabel,\n\tconfirmPlaceholder,\n\tconfirmTitle,\n\tinputsLayout = 'col',\n\tinputsSize = 'md',\n\tinputsRounded = 'none',\n\tcheckLabel,\n\tcheckLabelIsBold,\n\tcheckRounded,\n\tcheckHint,\n}: RegisterFormProps) => {\n\tconst [newpassword, setNewpassword] = useState('')\n\n\tconst handleCreatePassword = (value: string) => {\n\t\tsetNewpassword(value)\n\t}\n\n\tconst handleCancel = () => {\n\t\tif (onCancel) {\n\t\t\tonCancel()\n\t\t}\n\t}\n\n\treturn (\n\t\t<Form\n\t\t\taction={action}\n\t\t\tactionsLayout={actionsLayout}\n\t\t\tactionsSpacing={actionsSpacing}\n\t\t\tonCancel={handleCancel}\n\t\t\tonsubmit={onsubmit}\n\t\t\tshowCancel={showCancel}\n\t\t\tsubmitLabel={submitLabel}\n\t\t\tsubmitBackground={submitBackground}\n\t\t\tsubmitColor={submitColor}\n\t\t\tsubmitOutline={buttonOutline}\n\t\t\tsubmitOutlineColor={submitOutlineColor}\n\t\t\tcancelLabel={cancelLabel}\n\t\t\tcancelBackground={cancelBackground}\n\t\t\tcancelColor={cancelColor}\n\t\t\tcancelOutline={buttonOutline}\n\t\t\tcancelOutlineColor={cancelOutlineColor}\n\t\t\tseparator={separator}\n\t\t\tname={name}\n\t\t\tmethod='POST'\n\t\t\tclassName={className}\n\t\t\tstyle={style}\n\t\t\tbuttonTextcase={buttonTextcase}\n\t\t\tbuttonShape={buttonShape}\n\t\t\tbuttonIsBold={buttonIsBold}\n\t\t>\n\t\t\t<Fieldset\n\t\t\t\tlegendText={legendText}\n\t\t\t\tlegendSize={legendSize}\n\t\t\t\tisBold={legendisBold}\n\t\t\t\tspacing={spacing}\n\t\t\t\tlegendAlign={legendAlign}\n\t\t\t\thasBorder={hasBorder}\n\t\t\t>\n\t\t\t\t<TextInput\n\t\t\t\t\tlabel={userLabel}\n\t\t\t\t\tautocomplete={userAutocomplete}\n\t\t\t\t\tplaceholder={userPlaceholder}\n\t\t\t\t\tname='user-name'\n\t\t\t\t\tid='user-name'\n\t\t\t\t\trequired\n\t\t\t\t\tlayout={inputsLayout}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={inputsRounded}\n\t\t\t\t/>\n\t\t\t\t<PasswordInput\n\t\t\t\t\tname='newpassword'\n\t\t\t\t\tlabel={passwordLabel}\n\t\t\t\t\tplaceholder={passwordPlaceholder}\n\t\t\t\t\ttitle={passwordTitle}\n\t\t\t\t\tautocomplete='new-password'\n\t\t\t\t\tpattern={passwordPattern}\n\t\t\t\t\tonInputChange={handleCreatePassword}\n\t\t\t\t\tlayout={inputsLayout}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={inputsRounded}\n\t\t\t\t\trequired\n\t\t\t\t\thint\n\t\t\t\t/>\n\t\t\t\t<PasswordInput\n\t\t\t\t\tlabel={confirmLabel}\n\t\t\t\t\tautocomplete='new-password'\n\t\t\t\t\tplaceholder={confirmPlaceholder}\n\t\t\t\t\ttitle={confirmTitle}\n\t\t\t\t\tname='confirmpassword'\n\t\t\t\t\tpattern={newpassword}\n\t\t\t\t\tlayout={inputsLayout}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={inputsRounded}\n\t\t\t\t\trequired\n\t\t\t\t\thint\n\t\t\t\t/>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={checkLabel}\n\t\t\t\t\tlabelIsBold={checkLabelIsBold}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={checkRounded}\n\t\t\t\t\tname='terms'\n\t\t\t\t\trequired\n\t\t\t\t\thint={checkHint}\n\t\t\t\t/>\n\t\t\t</Fieldset>\n\t\t</Form>\n\t)\n}\n\nexport default RegisterForm\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA","sourcesContent":["export { default as Form } from './Form'\nexport { default as Fieldset } from './Fieldset'\nexport { default as Legend } from './Legend'\nexport { default as RegisterForm } from './RegisterForm'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/form/types/index.ts"],"names":[],"mappings":"","sourcesContent":["// Base Color Options\ntype BaseColorOption =\n\t| 'dark'\n\t| 'light'\n\t| 'info'\n\t| 'success'\n\t| 'warning'\n\t| 'danger'\n\t| 'primary'\n\t| 'secondary'\n\n// Extended Color Options\ntype ColorOption = BaseColorOption | 'current'\ntype OutlineColorOption = ColorOption | 'accent'\ntype BackgroundOption = BaseColorOption | 'transparent'\n\n// Spacing and Alignment Options\ntype SpacingOption = '0' | '1' | '2' | '4' | '8'\ntype AlignOption = 'left' | 'center' | 'right'\ntype SizeOption = 'sm' | 'md' | 'lg' | 'xl'\n\n// Common Props Interface\ninterface CommonFormProps {\n\tname?: string\n\taction?: string\n\tlayout?: 'col' | 'row'\n\tclassName?: string\n\tstyle?: React.CSSProperties\n\tonsubmit?: (formData: { [key: string]: string }) => void\n\tonCancel?: () => void\n\tshowCancel?: boolean\n\tactions?: boolean\n\tactionsLayout?: 'row' | 'row-reverse' | 'col' | 'col-reverse'\n\tactionsSpacing?: SpacingOption\n\tseparator?: boolean\n\tsubmitLabel?: string\n\tcancelLabel?: string\n\tsubmitBackground?: BackgroundOption\n\tsubmitColor?: ColorOption\n\tcancelBackground?: BackgroundOption\n\tcancelColor?: ColorOption\n\tsubmitOutline?: boolean\n\tsubmitOutlineColor?: OutlineColorOption\n\tcancelOutline?: boolean\n\tcancelOutlineColor?: ColorOption\n\tbuttonTextcase?: 'uppercase' | 'lowercase' | 'capitalize' | 'normal-case'\n\tbuttonShape?: 'default' | 'rounded' | 'pill'\n\tbuttonIsBold?: boolean\n}\n\n// Form Props Interface\nexport interface FormProps extends React.HTMLAttributes<HTMLFormElement>, CommonFormProps {\n\tmethod?: 'GET' | 'POST' | 'dialog' | string\n\tenctype?: 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain' | string\n}\n\n// Fieldset Props Interface\nexport interface FieldsetProps extends React.FieldsetHTMLAttributes<HTMLFieldSetElement> {\n\tlegendText?: string\n\tdisabled?: boolean\n\tlegendAlign?: AlignOption\n\tlegendSize?: SizeOption\n\thasBorder?: boolean\n\tisBold?: boolean\n\tspacing?: '4' | '8'\n\tclassName?: string\n}\n\n// Legend Props Interface\nexport interface LegendProps extends React.HTMLProps<HTMLLegendElement> {\n\ttext: string\n\tisBold?: boolean\n\talign?: AlignOption\n\tlegendSize?: SizeOption\n}\n\n// Register Form Props Interface\nexport interface RegisterFormProps extends CommonFormProps {\n\tlegendText: string\n\tlegendisBold?: boolean\n\tlegendAlign?: AlignOption\n\tlegendSize?: SizeOption\n\tspacing?: '4' | '8'\n\thasBorder?: boolean\n\tbuttonOutline?: boolean\n\tuserLabel: string\n\tuserAutocomplete?: 'username' | 'email' | 'username email'\n\tuserPlaceholder?: string\n\tpasswordLabel: string\n\tpasswordPlaceholder?: string\n\tpasswordPattern?: string\n\tpasswordTitle?: string\n\tconfirmLabel: string\n\tconfirmPlaceholder?: string\n\tconfirmTitle?: string\n\tinputsLayout?: 'col' | 'row'\n\tinputsSize?: 'md' | 'lg' | 'xl'\n\tinputsRounded?: 'none' | 'md' | 'lg' | 'full'\n\tcheckLabel: string\n\tcheckLabelIsBold?: boolean\n\tcheckRounded?: 'none' | 'full'\n\tcheckHint?: React.ReactNode\n}\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
import { Figure } from "..";
|
|
4
|
+
var getCaption = function (name, caption) {
|
|
5
|
+
return caption ? name : "";
|
|
6
|
+
};
|
|
7
|
+
var Gallery = function (_a) {
|
|
8
|
+
var _b = _a.className, className = _b === void 0 ? "" : _b, aspect = _a.aspect, data = _a.data, _c = _a.caption, caption = _c === void 0 ? true : _c, _d = _a.preloadImages, preloadImages = _d === void 0 ? false : _d, style = _a.style;
|
|
9
|
+
return (_jsx("div", { className: twMerge("gallery group min-w-full grid grid-cols-2 gap-2 md:grid-cols-3 lg:grid-cols-6 bg-slate-800 p-2", className), style: style, children: data.map(function (item, index) { return (_jsx(Figure, { src: item.src, alt: item.name, caption: getCaption(item.name, caption), aspect: aspect, preload: preloadImages }, index)); }) }));
|
|
10
|
+
};
|
|
11
|
+
export default Gallery;
|
|
12
|
+
//# sourceMappingURL=Gallery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Gallery.js","sourceRoot":"","sources":["../../../src/ui/gallery/Gallery.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAG5B,IAAM,UAAU,GAAG,UAAC,IAAY,EAAE,OAAgB;IAChD,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,IAAM,OAAO,GAAG,UAAC,EAOF;QANb,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,MAAM,YAAA,EACN,IAAI,UAAA,EACJ,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,KAAK,WAAA;IAEL,OAAO,CACL,cACE,SAAS,EAAE,OAAO,CAChB,gGAAgG,EAChG,SAAS,CACV,EACD,KAAK,EAAE,KAAK,YAEX,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK,IAAK,OAAA,CACzB,KAAC,MAAM,IACL,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,GAAG,EAAE,IAAI,CAAC,IAAI,EACd,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAEvC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,IAFjB,KAAK,CAGV,CACH,EAT0B,CAS1B,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import React from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { Figure } from \"..\";\nimport { GalleryProps } from \"./types\";\n\nconst getCaption = (name: string, caption: boolean): string => {\n return caption ? name : \"\";\n};\n\nconst Gallery = ({\n className = \"\",\n aspect,\n data,\n caption = true,\n preloadImages = false,\n style,\n}: GalleryProps) => {\n return (\n <div\n className={twMerge(\n `gallery group min-w-full grid grid-cols-2 gap-2 md:grid-cols-3 lg:grid-cols-6 bg-slate-800 p-2`,\n className\n )}\n style={style}\n >\n {data.map((item, index) => (\n <Figure\n src={item.src}\n alt={item.name}\n caption={getCaption(item.name, caption)}\n key={index}\n aspect={aspect}\n preload={preloadImages}\n />\n ))}\n </div>\n );\n};\n\nexport default Gallery;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/gallery/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAA","sourcesContent":["export { default as Gallery } from './Gallery'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/gallery/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface DataProps {\n name: string;\n src: string;\n}\n\nexport interface GalleryProps extends React.HTMLAttributes<HTMLDivElement> {\n data: DataProps[];\n className?: string;\n style?: React.CSSProperties;\n aspect?: \"landscape\" | \"portrait\" | \"square\" | \"video\" | \"circle\" | \"phone\";\n caption?: boolean;\n preloadImages?: boolean;\n}\n"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
var headingStyles = {
|
|
4
|
+
1: "h1 text-4xl md:text-5xl lg:text-6xl",
|
|
5
|
+
2: "h2 text-3xl md:text-4xl lg:text-5xl",
|
|
6
|
+
3: "h3 text-2xl md:text-3xl lg:text-4xl",
|
|
7
|
+
4: "h4 text-xl md:text-2xl lg:text-3xl",
|
|
8
|
+
5: "h5 text-lg md:text-xl lg:text-2xl",
|
|
9
|
+
6: "h6 text-base md:text-lg lg:text-xl",
|
|
10
|
+
};
|
|
11
|
+
var headingWeights = {
|
|
12
|
+
bold: "font-bold opacity-95",
|
|
13
|
+
semibold: "font-semibold opacity-95",
|
|
14
|
+
medium: "font-medium",
|
|
15
|
+
normal: "font-normal",
|
|
16
|
+
light: "font-light",
|
|
17
|
+
};
|
|
18
|
+
var headingCase = {
|
|
19
|
+
normal: "normal-case",
|
|
20
|
+
capitalize: "capitalize",
|
|
21
|
+
uppercase: "uppercase",
|
|
22
|
+
lowercase: "lowercase",
|
|
23
|
+
};
|
|
24
|
+
var aligns = {
|
|
25
|
+
left: "text-left",
|
|
26
|
+
center: "text-center",
|
|
27
|
+
right: "text-right",
|
|
28
|
+
};
|
|
29
|
+
var getHeadingTag = function (level) {
|
|
30
|
+
return level ? "h".concat(level) : "h1";
|
|
31
|
+
};
|
|
32
|
+
var Heading = function (_a) {
|
|
33
|
+
var _b = _a.level, level = _b === void 0 ? 1 : _b, _c = _a.weight, weight = _c === void 0 ? "semibold" : _c, _d = _a.align, align = _d === void 0 ? "left" : _d, _e = _a.transform, transform = _e === void 0 ? "normal" : _e, children = _a.children, _f = _a.className, className = _f === void 0 ? "" : _f;
|
|
34
|
+
var Tag = getHeadingTag(level);
|
|
35
|
+
return (_jsx(Tag, { className: twMerge("".concat(headingStyles[level], " ").concat(headingWeights[weight], " ").concat(aligns[align], " ").concat(headingCase[transform], " ").concat(className, " mb-[.5em]"), className), role: "heading", children: children }));
|
|
36
|
+
};
|
|
37
|
+
export default Heading;
|
|
38
|
+
//# sourceMappingURL=Heading.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Heading.js","sourceRoot":"","sources":["../../../src/ui/heading/Heading.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAIzC,IAAM,aAAa,GAAG;IACpB,CAAC,EAAE,qCAAqC;IACxC,CAAC,EAAE,qCAAqC;IACxC,CAAC,EAAE,qCAAqC;IACxC,CAAC,EAAE,oCAAoC;IACvC,CAAC,EAAE,mCAAmC;IACtC,CAAC,EAAE,oCAAoC;CACxC,CAAC;AAEF,IAAM,cAAc,GAAG;IACrB,IAAI,EAAE,sBAAsB;IAC5B,QAAQ,EAAE,0BAA0B;IACpC,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,IAAM,WAAW,GAAG;IAClB,MAAM,EAAE,aAAa;IACrB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;CACvB,CAAC;AAEF,IAAM,MAAM,GAAG;IACb,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,IAAM,aAAa,GAAG,UAAC,KAA4B;IACjD,OAAO,KAAK,CAAC,CAAC,CAAC,WAAI,KAAK,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpC,CAAC,CAAC;AAEF,IAAM,OAAO,GAAG,UAAC,EAOF;QANb,aAAS,EAAT,KAAK,mBAAG,CAAC,KAAA,EACT,cAAmB,EAAnB,MAAM,mBAAG,UAAU,KAAA,EACnB,aAAc,EAAd,KAAK,mBAAG,MAAM,KAAA,EACd,iBAAoB,EAApB,SAAS,mBAAG,QAAQ,KAAA,EACpB,QAAQ,cAAA,EACR,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA;IAEd,IAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEjC,OAAO,CACL,KAAC,GAAG,IACF,SAAS,EAAE,OAAO,CAChB,UAAG,aAAa,CAAC,KAAK,CAAC,cAAI,cAAc,CAAC,MAAM,CAAC,cAAI,MAAM,CAAC,KAAK,CAAC,cAAI,WAAW,CAAC,SAAS,CAAC,cAAI,SAAS,eAAY,EACrH,SAAS,CACV,EACD,IAAI,EAAC,SAAS,YAEb,QAAQ,GACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import React, { JSX } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { HeadingProps } from \"./types\";\n\nconst headingStyles = {\n 1: \"h1 text-4xl md:text-5xl lg:text-6xl\",\n 2: \"h2 text-3xl md:text-4xl lg:text-5xl\",\n 3: \"h3 text-2xl md:text-3xl lg:text-4xl\",\n 4: \"h4 text-xl md:text-2xl lg:text-3xl\",\n 5: \"h5 text-lg md:text-xl lg:text-2xl\",\n 6: \"h6 text-base md:text-lg lg:text-xl\",\n};\n\nconst headingWeights = {\n bold: \"font-bold opacity-95\",\n semibold: \"font-semibold opacity-95\",\n medium: \"font-medium\",\n normal: \"font-normal\",\n light: \"font-light\",\n};\n\nconst headingCase = {\n normal: \"normal-case\",\n capitalize: \"capitalize\",\n uppercase: \"uppercase\",\n lowercase: \"lowercase\",\n};\n\nconst aligns = {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n};\n\nconst getHeadingTag = (level: HeadingProps[\"level\"]): keyof JSX.IntrinsicElements => {\n return level ? `h${level}` : \"h1\";\n};\n\nconst Heading = ({\n level = 1,\n weight = \"semibold\",\n align = \"left\",\n transform = \"normal\",\n children,\n className = \"\",\n}: HeadingProps) => {\n const Tag = getHeadingTag(level);\n\n return (\n <Tag\n className={twMerge(\n `${headingStyles[level]} ${headingWeights[weight]} ${aligns[align]} ${headingCase[transform]} ${className} mb-[.5em]`,\n className\n )}\n role=\"heading\"\n >\n {children}\n </Tag>\n );\n};\n\nexport default Heading;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/heading/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAA","sourcesContent":["export { default as Heading } from './Heading'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/heading/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface HeadingProps {\n\tlevel?: 1 | 2 | 3 | 4 | 5 | 6\n\tweight?: 'light' | 'normal' | 'medium' | 'semibold' | 'bold'\n\talign?: 'left' | 'center' | 'right'\n\ttransform?: 'normal' | 'capitalize' | 'uppercase' | 'lowercase'\n\tchildren: React.ReactNode\n\tclassName?: string\n\tstyle?: React.CSSProperties\n}\n"]}
|
package/lib/hero/Hero.js
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useState, useMemo } from "react";
|
|
4
|
+
import { twMerge } from "tailwind-merge";
|
|
5
|
+
import { Heading } from "..";
|
|
6
|
+
var randomImageEndpoint = "https://loremflickr.com";
|
|
7
|
+
var defaultCategoryTags = "abstract,nature,texture,pattern";
|
|
8
|
+
var themeClasses = {
|
|
9
|
+
responsive: "bg-white text-dark dark:bg-black dark:text-light",
|
|
10
|
+
dark: "dark bg-black text-light",
|
|
11
|
+
light: "bg-white text-dark",
|
|
12
|
+
};
|
|
13
|
+
var alignClasses = {
|
|
14
|
+
left: "text-left",
|
|
15
|
+
center: "text-center",
|
|
16
|
+
right: "text-right",
|
|
17
|
+
};
|
|
18
|
+
var layoutClasses = {
|
|
19
|
+
col: "grid-cols-1",
|
|
20
|
+
row: "grid-cols-1 md:grid-cols-2",
|
|
21
|
+
};
|
|
22
|
+
var grayscaleClasses = {
|
|
23
|
+
none: "",
|
|
24
|
+
grayscale: "grayscale",
|
|
25
|
+
sepia: "sepia",
|
|
26
|
+
};
|
|
27
|
+
var aspectRatios = {
|
|
28
|
+
auto: "aspect-auto",
|
|
29
|
+
square: "aspect-square",
|
|
30
|
+
video: "aspect-video",
|
|
31
|
+
landscape: "aspect-[4/3]",
|
|
32
|
+
};
|
|
33
|
+
var dimensions = {
|
|
34
|
+
auto: { width: 1200, height: 800 },
|
|
35
|
+
square: { width: 800, height: 800 },
|
|
36
|
+
video: { width: 1280, height: 720 },
|
|
37
|
+
landscape: { width: 1200, height: 900 },
|
|
38
|
+
};
|
|
39
|
+
var Hero = function (_a) {
|
|
40
|
+
var title = _a.title, body = _a.body, _b = _a.align, align = _b === void 0 ? "center" : _b, _c = _a.layout, layout = _c === void 0 ? "col" : _c, _d = _a.aspectRatio, aspectRatio = _d === void 0 ? "auto" : _d, _e = _a.titleLevel, titleLevel = _e === void 0 ? 1 : _e, titleTransform = _a.titleTransform, titleWeight = _a.titleWeight, _f = _a.theme, theme = _f === void 0 ? "responsive" : _f, bgImage = _a.bgImage, bgVideo = _a.bgVideo, bgVideoPoster = _a.bgVideoPoster, _g = _a.randomImage, randomImage = _g === void 0 ? false : _g, _h = _a.categoryTags, categoryTags = _h === void 0 ? defaultCategoryTags : _h, _j = _a.bgBlur, bgBlur = _j === void 0 ? false : _j, _k = _a.bgGrayscale, bgGrayscale = _k === void 0 ? "none" : _k, children = _a.children, _l = _a.className, className = _l === void 0 ? "" : _l, style = _a.style;
|
|
41
|
+
var _m = useState(), bgImageStyle = _m[0], setBgImageStyle = _m[1];
|
|
42
|
+
var _o = useState(), bgVideoSrc = _o[0], setBgVideoSrc = _o[1];
|
|
43
|
+
var generatedImage = useMemo(function () {
|
|
44
|
+
if (!randomImage)
|
|
45
|
+
return null;
|
|
46
|
+
var _a = dimensions[aspectRatio] || dimensions.auto, width = _a.width, height = _a.height;
|
|
47
|
+
return {
|
|
48
|
+
url: "".concat(randomImageEndpoint, "/").concat(width, "/").concat(height, "/").concat(categoryTags || defaultCategoryTags, "?random=").concat(Date.now()),
|
|
49
|
+
width: width,
|
|
50
|
+
height: height,
|
|
51
|
+
};
|
|
52
|
+
}, [randomImage, categoryTags, aspectRatio]);
|
|
53
|
+
useEffect(function () {
|
|
54
|
+
var finalImage = randomImage ? generatedImage === null || generatedImage === void 0 ? void 0 : generatedImage.url : bgImage;
|
|
55
|
+
if (finalImage) {
|
|
56
|
+
setBgImageStyle({
|
|
57
|
+
backgroundImage: "url(".concat(finalImage, ")"),
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
setBgImageStyle(null);
|
|
62
|
+
}
|
|
63
|
+
}, [bgImage, generatedImage, randomImage]);
|
|
64
|
+
useEffect(function () {
|
|
65
|
+
if (bgVideo) {
|
|
66
|
+
setBgVideoSrc(bgVideo);
|
|
67
|
+
}
|
|
68
|
+
}, [bgVideo]);
|
|
69
|
+
return (_jsxs("div", { className: twMerge("hero relative overflow-hidden grid justify-between ".concat(aspectRatios[aspectRatio], " ").concat(layoutClasses[layout], " gap-x-4 gap-y-8 px-4 py-5 ").concat(themeClasses[theme]), className), style: style, children: [bgImageStyle ? (_jsx("div", { className: "bg-cover bg-no-repeat bg-center absolute inset-0 ".concat(bgBlur ? "blur-sm" : "", " ").concat(grayscaleClasses[bgGrayscale]), style: bgImageStyle })) : null, bgVideoSrc ? (_jsx("video", { className: "absolute inset-0 h-full w-full object-cover ".concat(bgBlur ? "blur-sm" : "", " ").concat(grayscaleClasses[bgGrayscale]), src: bgVideoSrc, poster: bgVideoPoster, loop: true, autoPlay: true, muted: true, controls: false, preload: "auto" })) : null, _jsxs("div", { className: "max-w-xl relative mx-auto z-10 w-full", children: [_jsx(Heading, { level: titleLevel, align: align, transform: titleTransform, weight: titleWeight, className: "mb-6 drop-shadow-lg", children: title }), body ? _jsx("div", { className: alignClasses[align], children: body }) : ""] }), children ? (_jsx("div", { className: "max-w-xl flex items-center ".concat(layout === "col" ? "mx-auto" : ""), children: children })) : null] }));
|
|
70
|
+
};
|
|
71
|
+
export default Hero;
|
|
72
|
+
//# sourceMappingURL=Hero.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Hero.js","sourceRoot":"","sources":["../../../src/ui/hero/Hero.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport React, { useEffect, useState, useMemo } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { HeroProps } from \"./types\";\n\nimport { Heading } from \"..\";\n\nconst randomImageEndpoint = \"https://loremflickr.com\";\n\nconst defaultCategoryTags = \"abstract,nature,texture,pattern\";\n\nconst themeClasses = {\n responsive: \"bg-white text-dark dark:bg-black dark:text-light\",\n dark: \"dark bg-black text-light\",\n light: \"bg-white text-dark\",\n};\n\nconst alignClasses = {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n};\n\nconst layoutClasses = {\n col: \"grid-cols-1\",\n row: \"grid-cols-1 md:grid-cols-2\",\n};\n\nconst grayscaleClasses = {\n none: \"\",\n grayscale: \"grayscale\",\n sepia: \"sepia\",\n};\n\nconst aspectRatios = {\n auto: \"aspect-auto\",\n square: \"aspect-square\",\n video: \"aspect-video\",\n landscape: \"aspect-[4/3]\",\n};\n\nconst dimensions = {\n auto: { width: 1200, height: 800 },\n square: { width: 800, height: 800 },\n video: { width: 1280, height: 720 },\n landscape: { width: 1200, height: 900 },\n};\n\nconst Hero = ({\n title,\n body,\n align = \"center\",\n layout = \"col\",\n aspectRatio = \"auto\",\n titleLevel = 1,\n titleTransform,\n titleWeight,\n theme = \"responsive\",\n bgImage,\n bgVideo,\n bgVideoPoster,\n randomImage = false,\n categoryTags = defaultCategoryTags,\n bgBlur = false,\n bgGrayscale = \"none\",\n children,\n className = \"\",\n style,\n}: HeroProps) => {\n const [bgImageStyle, setBgImageStyle] = useState<any | null>();\n const [bgVideoSrc, setBgVideoSrc] = useState<any | null>();\n\n const generatedImage = useMemo(() => {\n if (!randomImage) return null;\n\n const { width, height } = dimensions[aspectRatio] || dimensions.auto;\n\n return {\n url: `${randomImageEndpoint}/${width}/${height}/${\n categoryTags || defaultCategoryTags\n }?random=${Date.now()}`,\n width,\n height,\n };\n }, [randomImage, categoryTags, aspectRatio]);\n\n useEffect(() => {\n const finalImage = randomImage ? generatedImage?.url : bgImage;\n if (finalImage) {\n setBgImageStyle({\n backgroundImage: `url(${finalImage})`,\n });\n } else {\n setBgImageStyle(null);\n }\n }, [bgImage, generatedImage, randomImage]);\n\n useEffect(() => {\n if (bgVideo) {\n setBgVideoSrc(bgVideo);\n }\n }, [bgVideo]);\n\n return (\n <div\n className={twMerge(\n `hero relative overflow-hidden grid justify-between ${aspectRatios[aspectRatio]} ${layoutClasses[layout]} gap-x-4 gap-y-8 px-4 py-5 ${themeClasses[theme]}`,\n className\n )}\n style={style}\n >\n {bgImageStyle ? (\n <div\n className={`bg-cover bg-no-repeat bg-center absolute inset-0 ${bgBlur ? \"blur-sm\" : \"\"} ${\n grayscaleClasses[bgGrayscale]\n }`}\n style={bgImageStyle}\n ></div>\n ) : null}\n {bgVideoSrc ? (\n <video\n className={`absolute inset-0 h-full w-full object-cover ${bgBlur ? \"blur-sm\" : \"\"} ${\n grayscaleClasses[bgGrayscale]\n }`}\n src={bgVideoSrc}\n poster={bgVideoPoster}\n loop\n autoPlay\n muted\n controls={false}\n preload=\"auto\"\n />\n ) : null}\n\n <div className=\"max-w-xl relative mx-auto z-10 w-full\">\n <Heading\n level={titleLevel}\n align={align}\n transform={titleTransform}\n weight={titleWeight}\n className=\"mb-6 drop-shadow-lg\"\n >\n {title}\n </Heading>\n {body ? <div className={alignClasses[align]}>{body}</div> : \"\"}\n </div>\n {children ? (\n <div className={`max-w-xl flex items-center ${layout === \"col\" ? \"mx-auto\" : \"\"}`}>\n {children}\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default Hero;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/hero/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAA","sourcesContent":["export { default as Hero } from './Hero'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/hero/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface HeroProps {\n title: string;\n body?: React.ReactNode;\n theme?: \"dark\" | \"light\" | \"responsive\";\n align?: \"left\" | \"center\" | \"right\";\n layout?: \"col\" | \"row\";\n aspectRatio?: \"auto\" | \"square\" | \"landscape\" | \"video\";\n titleLevel?: 1 | 2 | 3 | 4;\n titleWeight?: \"light\" | \"normal\" | \"medium\" | \"semibold\" | \"bold\";\n titleTransform?: \"normal\" | \"capitalize\" | \"uppercase\" | \"lowercase\";\n bgImage?: string;\n bgVideo?: string;\n bgVideoPoster?: string;\n bgBlur?: boolean;\n bgGrayscale?: \"none\" | \"grayscale\" | \"sepia\";\n randomImage?: boolean;\n categoryTags?: string;\n children?: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n}\n"]}
|
package/lib/icon/Icon.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
var flipClasses = {
|
|
4
|
+
flipX: "scale-x-[-1]",
|
|
5
|
+
flipY: "scale-y-[-1]",
|
|
6
|
+
};
|
|
7
|
+
var rotateClasses = {
|
|
8
|
+
none: "",
|
|
9
|
+
45: "rotate-45",
|
|
10
|
+
90: "rotate-90",
|
|
11
|
+
135: "rotate-[135deg]",
|
|
12
|
+
180: "rotate-180",
|
|
13
|
+
225: "rotate-[225deg]",
|
|
14
|
+
270: "-rotate-90",
|
|
15
|
+
315: "rotate-[315deg]",
|
|
16
|
+
};
|
|
17
|
+
var baseUrl = "https://img.icons8.com";
|
|
18
|
+
var Icon = function (_a) {
|
|
19
|
+
var iconName = _a.iconName, iconId = _a.iconId, altText = _a.altText, _b = _a.iconSize, iconSize = _b === void 0 ? 40 : _b, iconColor = _a.iconColor, iconStyle = _a.iconStyle, _c = _a.flipX, flipX = _c === void 0 ? false : _c, _d = _a.flipY, flipY = _d === void 0 ? false : _d, _e = _a.rotate, rotate = _e === void 0 ? "none" : _e, className = _a.className, style = _a.style;
|
|
20
|
+
var colorPath = iconStyle ? "".concat(iconStyle, "/") : iconColor ? "".concat(iconColor.replace("#", "")) : "";
|
|
21
|
+
var queryParams = new URLSearchParams({
|
|
22
|
+
size: iconSize.toString(),
|
|
23
|
+
id: iconId || "4516",
|
|
24
|
+
format: "png",
|
|
25
|
+
color: colorPath || "000000",
|
|
26
|
+
});
|
|
27
|
+
var iconUrl = "";
|
|
28
|
+
if (iconName) {
|
|
29
|
+
iconUrl = "".concat(baseUrl, "/").concat(colorPath, "/").concat(iconSize, "/").concat(iconName, ".png");
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
iconUrl = "".concat(baseUrl, "?").concat(queryParams.toString());
|
|
33
|
+
}
|
|
34
|
+
return (_jsx("img", { src: iconUrl, alt: altText || iconName || "Icon ID: ".concat(iconId), width: iconSize, height: iconSize, className: twMerge("icon ".concat(flipX ? flipClasses.flipX : "", " ").concat(flipY ? flipClasses.flipY : "", " ").concat(rotateClasses[rotate]), className), style: style }));
|
|
35
|
+
};
|
|
36
|
+
export default Icon;
|
|
37
|
+
//# sourceMappingURL=Icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../src/ui/icon/Icon.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC,IAAM,WAAW,GAAG;IAClB,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;CACtB,CAAC;AAEF,IAAM,aAAa,GAAG;IACpB,IAAI,EAAE,EAAE;IACR,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,WAAW;IACf,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,iBAAiB;CACvB,CAAC;AAEF,IAAM,OAAO,GAAG,wBAAwB,CAAC;AAEzC,IAAM,IAAI,GAAG,UAAC,EAYF;QAXV,QAAQ,cAAA,EACR,MAAM,YAAA,EACN,OAAO,aAAA,EACP,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EACb,SAAS,eAAA,EACT,SAAS,eAAA,EACT,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EACb,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EACb,cAAe,EAAf,MAAM,mBAAG,MAAM,KAAA,EACf,SAAS,eAAA,EACT,KAAK,WAAA;IAEL,IAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,UAAG,SAAS,MAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEjG,IAAM,WAAW,GAAG,IAAI,eAAe,CAAC;QACtC,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE;QACzB,EAAE,EAAE,MAAM,IAAI,MAAM;QACpB,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,SAAS,IAAI,QAAQ;KAC7B,CAAC,CAAC;IAEH,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,GAAG,UAAG,OAAO,cAAI,SAAS,cAAI,QAAQ,cAAI,QAAQ,SAAM,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,UAAG,OAAO,cAAI,WAAW,CAAC,QAAQ,EAAE,CAAE,CAAC;IACnD,CAAC;IAED,OAAO,CACL,cACE,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,OAAO,IAAI,QAAQ,IAAI,mBAAY,MAAM,CAAE,EAChD,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,QAAQ,EAChB,SAAS,EAAE,OAAO,CAChB,eAAQ,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAI,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cACtE,aAAa,CAAC,MAAM,CAAC,CACrB,EACF,SAAS,CACV,EACD,KAAK,EAAE,KAAK,GACZ,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,IAAI,CAAC","sourcesContent":["import React from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { IconProps } from \"./types\";\n\nconst flipClasses = {\n flipX: \"scale-x-[-1]\",\n flipY: \"scale-y-[-1]\",\n};\n\nconst rotateClasses = {\n none: \"\",\n 45: \"rotate-45\",\n 90: \"rotate-90\",\n 135: \"rotate-[135deg]\",\n 180: \"rotate-180\",\n 225: \"rotate-[225deg]\",\n 270: \"-rotate-90\",\n 315: \"rotate-[315deg]\",\n};\n\nconst baseUrl = \"https://img.icons8.com\";\n\nconst Icon = ({\n iconName,\n iconId,\n altText,\n iconSize = 40,\n iconColor,\n iconStyle,\n flipX = false,\n flipY = false,\n rotate = \"none\",\n className,\n style,\n}: IconProps) => {\n const colorPath = iconStyle ? `${iconStyle}/` : iconColor ? `${iconColor.replace(\"#\", \"\")}` : \"\";\n\n const queryParams = new URLSearchParams({\n size: iconSize.toString(),\n id: iconId || \"4516\",\n format: \"png\",\n color: colorPath || \"000000\",\n });\n\n let iconUrl = \"\";\n if (iconName) {\n iconUrl = `${baseUrl}/${colorPath}/${iconSize}/${iconName}.png`;\n } else {\n iconUrl = `${baseUrl}?${queryParams.toString()}`;\n }\n\n return (\n <img\n src={iconUrl}\n alt={altText || iconName || `Icon ID: ${iconId}`}\n width={iconSize}\n height={iconSize}\n className={twMerge(\n `icon ${flipX ? flipClasses.flipX : \"\"} ${flipY ? flipClasses.flipY : \"\"} ${\n rotateClasses[rotate]\n }`,\n className\n )}\n style={style}\n />\n );\n};\n\nexport default Icon;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/icon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAA","sourcesContent":["export { default as Icon } from './Icon'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/icon/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface IconProps {\n\ticonName?: string\n\ticonId?: string\n\ticonSize?: number\n\ticonColor?: string\n\ticonStyle?: 'color' | 'fluency'\n\tflipX?: boolean\n\tflipY?: boolean\n\trotate?: 'none' | '45' | '90' | '135' | '180' | '225' | '270' | '315'\n\taltText?: string\n\tclassName?: string\n\tstyle?: React.CSSProperties\n}\n"]}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export { Accordion, AccordionItem } from "./accordion";
|
|
2
|
+
export { Alert } from "./alert";
|
|
3
|
+
export { Autocomplete } from "./autocomplete";
|
|
4
|
+
export { Badge } from "./badge";
|
|
5
|
+
export { Blockquote } from "./blockquote";
|
|
6
|
+
export { Breadcrumbs } from "./breadcrumbs";
|
|
7
|
+
export { Button, CloseButton } from "./button";
|
|
8
|
+
export { ButtonGroup } from "./buttongroup";
|
|
9
|
+
export { Card, CardHeader, CardBody, CardImage, CardFooter } from "./card";
|
|
10
|
+
export { Carousel } from "./carousel";
|
|
11
|
+
export { Checkbox } from "./checkbox";
|
|
12
|
+
export { Clock } from "./clock";
|
|
13
|
+
export { Codeblock } from "./codeblock";
|
|
14
|
+
export { Counter } from "./counter";
|
|
15
|
+
export { DataTable } from "./datatable";
|
|
16
|
+
export { Dialog } from "./dialog";
|
|
17
|
+
export { Dropdown } from "./dropdown";
|
|
18
|
+
export { Figure } from "./figure";
|
|
19
|
+
export { FileUpload } from "./fileupload";
|
|
20
|
+
export { Form, Fieldset, RegisterForm } from "./form";
|
|
21
|
+
export { Gallery } from "./gallery";
|
|
22
|
+
export { Heading } from "./heading";
|
|
23
|
+
export { Hero } from "./hero";
|
|
24
|
+
export { Icon } from "./icon";
|
|
25
|
+
export { Input } from "./input";
|
|
26
|
+
export { Label } from "./label";
|
|
27
|
+
export { Loading, Spinner } from "./loading";
|
|
28
|
+
export { Modal } from "./modal";
|
|
29
|
+
export { NavBar } from "./navbar";
|
|
30
|
+
export { Pagination } from "./pagination";
|
|
31
|
+
export { PasswordInput } from "./passwordinput";
|
|
32
|
+
export { Pictogram } from "./pictogram";
|
|
33
|
+
export { PlaceHolder } from "./placeholder";
|
|
34
|
+
export { Progress } from "./progress";
|
|
35
|
+
export { RadioGroup } from "./radiogroup";
|
|
36
|
+
export { RangeInput } from "./rangeinput";
|
|
37
|
+
export { Ratings } from "./ratings";
|
|
38
|
+
export { Tabs } from "./tabs";
|
|
39
|
+
export { SearchInput } from "./searchinput";
|
|
40
|
+
export { Select } from "./select";
|
|
41
|
+
export { Sidebar } from "./sidebar";
|
|
42
|
+
export { SocialShare, FacebookButton, RedditButton, LinkedinButton, PinterestButton, SlackButton, TelegramButton, WhatsAppButton, XButton, BlueskyButton, } from "./socialshare";
|
|
43
|
+
export { StatBar } from "./statbar";
|
|
44
|
+
export { Switch } from "./switch";
|
|
45
|
+
export { TextInput } from "./textinput";
|
|
46
|
+
export { TextArea } from "./textarea";
|
|
47
|
+
export { Toast } from "./toast";
|
|
48
|
+
export { Ticker } from "./ticker";
|
|
49
|
+
export { TwitterEmbed } from "./twitterembed";
|
|
50
|
+
export { VideoPlayer, Video } from "./videoplayer";
|
|
51
|
+
export { YoutubeEmbed } from "./youtubeembed";
|
|
52
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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","sourcesContent":["export { Accordion, AccordionItem } from \"./accordion\";\nexport { Alert } from \"./alert\";\nexport { Autocomplete } from \"./autocomplete\";\nexport { Badge } from \"./badge\";\nexport { Blockquote } from \"./blockquote\";\nexport { Breadcrumbs } from \"./breadcrumbs\";\nexport { Button, CloseButton } from \"./button\";\nexport { ButtonGroup } from \"./buttongroup\";\nexport { Card, CardHeader, CardBody, CardImage, CardFooter } from \"./card\";\nexport { Carousel } from \"./carousel\";\nexport { Checkbox } from \"./checkbox\";\nexport { Clock } from \"./clock\";\nexport { Codeblock } from \"./codeblock\";\nexport { Counter } from \"./counter\";\nexport { DataTable } from \"./datatable\";\nexport { Dialog } from \"./dialog\";\nexport { Dropdown } from \"./dropdown\";\nexport { Figure } from \"./figure\";\nexport { FileUpload } from \"./fileupload\";\nexport { Form, Fieldset, RegisterForm } from \"./form\";\nexport { Gallery } from \"./gallery\";\nexport { Heading } from \"./heading\";\nexport { Hero } from \"./hero\";\nexport { Icon } from \"./icon\";\nexport { Input } from \"./input\";\nexport { Label } from \"./label\";\nexport { Loading, Spinner } from \"./loading\";\nexport { Modal } from \"./modal\";\nexport { NavBar } from \"./navbar\";\nexport { Pagination } from \"./pagination\";\nexport { PasswordInput } from \"./passwordinput\";\nexport { Pictogram } from \"./pictogram\";\nexport { PlaceHolder } from \"./placeholder\";\nexport { Progress } from \"./progress\";\nexport { RadioGroup } from \"./radiogroup\";\nexport { RangeInput } from \"./rangeinput\";\nexport { Ratings } from \"./ratings\";\nexport { Tabs } from \"./tabs\";\nexport { SearchInput } from \"./searchinput\";\nexport { Select } from \"./select\";\nexport { Sidebar } from \"./sidebar\";\nexport {\n SocialShare,\n FacebookButton,\n RedditButton,\n LinkedinButton,\n PinterestButton,\n SlackButton,\n TelegramButton,\n WhatsAppButton,\n XButton,\n BlueskyButton,\n} from \"./socialshare\";\nexport { StatBar } from \"./statbar\";\nexport { Switch } from \"./switch\";\nexport { TextInput } from \"./textinput\";\nexport { TextArea } from \"./textarea\";\nexport { Toast } from \"./toast\";\nexport { Ticker } from \"./ticker\";\nexport { TwitterEmbed } from \"./twitterembed\";\nexport { VideoPlayer, Video } from \"./videoplayer\";\nexport { YoutubeEmbed } from \"./youtubeembed\";\n"]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
import { twMerge } from "tailwind-merge";
|
|
5
|
+
import { forwardRef } from "react";
|
|
6
|
+
var sizes = {
|
|
7
|
+
sm: "text-base",
|
|
8
|
+
md: "text-lg",
|
|
9
|
+
lg: "text-xl",
|
|
10
|
+
xl: "text-2xl",
|
|
11
|
+
};
|
|
12
|
+
var darkthemeClasses = "dark:bg-dark dark:text-light";
|
|
13
|
+
var typeClasses = function (type) {
|
|
14
|
+
return type === "checkbox"
|
|
15
|
+
? "form-checkbox rounded-md w-[1.5em] h-[1.5em] cursor-pointer !check:dark:bg-dark !text-info border-neutral border-2"
|
|
16
|
+
: type === "radio"
|
|
17
|
+
? "form-radio w-[1.5em] h-[1.5em] cursor-pointer bg-transparent !text-info border-2"
|
|
18
|
+
: type === "color"
|
|
19
|
+
? "form-color cursor-pointer aspect-square w-[2em] h-[2em] border-neutral border-2"
|
|
20
|
+
: type === "number"
|
|
21
|
+
? "form-input text-center ".concat(darkthemeClasses, " [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none me-4")
|
|
22
|
+
: type === "file"
|
|
23
|
+
? "hidden"
|
|
24
|
+
: type === "range"
|
|
25
|
+
? "appearance-none h-[.5em] w-full [&&::-webkit-slider-thumb]:cursor-grab [&&::-webkit-slider-thumb]:appearance-none [&&::-webkit-slider-thumb]:h-[1em] [&&::-webkit-slider-thumb]:w-[1em] [&&::-webkit-slider-thumb]:bg-current"
|
|
26
|
+
: "form-input w-full border-neutral ".concat(darkthemeClasses, " read-only:cursor-default read-only:bg-transparent read-only:!border-none");
|
|
27
|
+
};
|
|
28
|
+
var styles = {
|
|
29
|
+
required: "!bg-[var(--highlight-color)] !text-dark",
|
|
30
|
+
};
|
|
31
|
+
var Input = forwardRef(function Input(props, ref) {
|
|
32
|
+
var _a = props.type, type = _a === void 0 ? "text" : _a, _b = props.size, size = _b === void 0 ? "md" : _b, _c = props.autocomplete, autocomplete = _c === void 0 ? "off" : _c, _d = props.name, name = _d === void 0 ? "control-name" : _d, id = props.id, _e = props.className, className = _e === void 0 ? "" : _e, style = props.style, _f = props.rounded, rounded = _f === void 0 ? "md" : _f, _g = props.required, required = _g === void 0 ? false : _g, _h = props.readonly, readonly = _h === void 0 ? false : _h, _j = props.disabled, disabled = _j === void 0 ? false : _j, _k = props.hint, hint = _k === void 0 ? false : _k, tabindex = props.tabindex, min = props.min, max = props.max, minLength = props.minLength, maxLength = props.maxLength, step = props.step, pattern = props.pattern, title = props.title, value = props.value, defaultChecked = props.defaultChecked, accept = props.accept, multiple = props.multiple, placeholder = props.placeholder, list = props.list, onChange = props.onChange, onFocus = props.onFocus, onBlur = props.onBlur, hidden = props.hidden, ariaLabel = props.ariaLabel, autocorrect = props.autocorrect, spellcheck = props.spellcheck, _l = props.suppressHydrationWarning, suppressHydrationWarning = _l === void 0 ? false : _l;
|
|
33
|
+
var sizeClasses = useMemo(function () { return sizes[size]; }, [size]);
|
|
34
|
+
return (_jsxs(_Fragment, { children: [_jsx("input", { className: twMerge("input ".concat(typeClasses(type), " peer ").concat(sizeClasses, " rounded-").concat(rounded, " font-normal color-scheme:light dark:[color-scheme:dark] focus:outline-none focus-visible:outline-none focus-visible:border-info disabled:bg-neutral disabled:cursor-default disabled:text-dark disabled:border-transparent invalid:!border-warning-dark invalid:dark:!border-warning-light"), className), style: style, type: type, name: name, id: id, autoComplete: autocomplete, required: required, "aria-required": required, hidden: hidden, readOnly: readonly, tabIndex: tabindex, ref: ref, min: min, max: max, minLength: minLength, maxLength: maxLength, step: step, pattern: pattern, title: title, placeholder: placeholder, defaultValue: value, defaultChecked: defaultChecked, accept: accept, multiple: multiple, list: list, disabled: disabled, onChange: onChange, onInput: onChange, onFocus: onFocus, onBlur: onBlur, "data-testid": id || name, "aria-label": ariaLabel, autoCorrect: autocorrect, spellCheck: spellcheck, suppressHydrationWarning: suppressHydrationWarning }), hint && (_jsx("p", { className: "hint text-sm font-normal mt-[.5em] dark:text-light peer-invalid:text-warning-dark peer-invalid:dark:text-warning-light inline-block", children: title }))] }));
|
|
35
|
+
});
|
|
36
|
+
export default Input;
|
|
37
|
+
//# sourceMappingURL=Input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/ui/input/Input.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAMnC,IAAM,KAAK,GAAG;IACZ,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,UAAU;CACf,CAAC;AAEF,IAAM,gBAAgB,GAAG,8BAA8B,CAAC;AAExD,IAAM,WAAW,GAAG,UAAC,IAAY;IAC/B,OAAO,IAAI,KAAK,UAAU;QACxB,CAAC,CAAC,oHAAoH;QACtH,CAAC,CAAC,IAAI,KAAK,OAAO;YAClB,CAAC,CAAC,kFAAkF;YACpF,CAAC,CAAC,IAAI,KAAK,OAAO;gBAClB,CAAC,CAAC,iFAAiF;gBACnF,CAAC,CAAC,IAAI,KAAK,QAAQ;oBACnB,CAAC,CAAC,iCAA0B,gBAAgB,wGAAqG;oBACjJ,CAAC,CAAC,IAAI,KAAK,MAAM;wBACjB,CAAC,CAAC,QAAQ;wBACV,CAAC,CAAC,IAAI,KAAK,OAAO;4BAClB,CAAC,CAAC,+NAA+N;4BACjO,CAAC,CAAC,2CAAoC,gBAAgB,8EAA2E,CAAC;AACtI,CAAC,CAAC;AAEF,IAAM,MAAM,GAAG;IACb,QAAQ,EAAE,yCAAyC;CACpD,CAAC;AAEF,IAAM,KAAK,GAAG,UAAU,CAAuB,SAAS,KAAK,CAAC,KAAK,EAAE,GAAG;IAEpE,IAAA,KAkCE,KAAK,KAlCM,EAAb,IAAI,mBAAG,MAAM,KAAA,EACb,KAiCE,KAAK,KAjCI,EAAX,IAAI,mBAAG,IAAI,KAAA,EACX,KAgCE,KAAK,aAhCa,EAApB,YAAY,mBAAG,KAAK,KAAA,EACpB,KA+BE,KAAK,KA/Bc,EAArB,IAAI,mBAAG,cAAc,KAAA,EACrB,EAAE,GA8BA,KAAK,GA9BL,EACF,KA6BE,KAAK,UA7BO,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,KAAK,GA4BH,KAAK,MA5BF,EACL,KA2BE,KAAK,QA3BO,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,KA0BE,KAAK,SA1BS,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,KAyBE,KAAK,SAzBS,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,KAwBE,KAAK,SAxBS,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,KAuBE,KAAK,KAvBK,EAAZ,IAAI,mBAAG,KAAK,KAAA,EACZ,QAAQ,GAsBN,KAAK,SAtBC,EACR,GAAG,GAqBD,KAAK,IArBJ,EACH,GAAG,GAoBD,KAAK,IApBJ,EACH,SAAS,GAmBP,KAAK,UAnBE,EACT,SAAS,GAkBP,KAAK,UAlBE,EACT,IAAI,GAiBF,KAAK,KAjBH,EACJ,OAAO,GAgBL,KAAK,QAhBA,EACP,KAAK,GAeH,KAAK,MAfF,EACL,KAAK,GAcH,KAAK,MAdF,EACL,cAAc,GAaZ,KAAK,eAbO,EACd,MAAM,GAYJ,KAAK,OAZD,EACN,QAAQ,GAWN,KAAK,SAXC,EACR,WAAW,GAUT,KAAK,YAVI,EACX,IAAI,GASF,KAAK,KATH,EACJ,QAAQ,GAQN,KAAK,SARC,EACR,OAAO,GAOL,KAAK,QAPA,EACP,MAAM,GAMJ,KAAK,OAND,EACN,MAAM,GAKJ,KAAK,OALD,EACN,SAAS,GAIP,KAAK,UAJE,EACT,WAAW,GAGT,KAAK,YAHI,EACX,UAAU,GAER,KAAK,WAFG,EACV,KACE,KAAK,yBADyB,EAAhC,wBAAwB,mBAAG,KAAK,KAAA,CACxB;IAEV,IAAM,WAAW,GAAG,OAAO,CAAC,cAAM,OAAA,KAAK,CAAC,IAAI,CAAC,EAAX,CAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvD,OAAO,CACL,8BACE,gBACE,SAAS,EAAE,OAAO,CAChB,gBAAS,WAAW,CAClB,IAAI,CACL,mBAAS,WAAW,sBAAY,OAAO,gSAA6R,EACrU,SAAS,CACV,EACD,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,QAAQ,mBACH,QAAQ,EACvB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,KAAK,EACnB,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,iBACD,EAAE,IAAI,IAAI,gBACX,SAAS,EACrB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,wBAAwB,GAClD,EACD,IAAI,IAAI,CACP,YAAG,SAAS,EAAC,qIAAqI,YAC/I,KAAK,GACJ,CACL,IACA,CACJ,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,KAAK,CAAC","sourcesContent":["\"use client\";\n\nimport React, { useMemo } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { forwardRef } from \"react\";\n\nimport { InputProps } from \"./types\";\n\nexport type InputRef = HTMLInputElement;\n\nconst sizes = {\n sm: \"text-base\",\n md: \"text-lg\",\n lg: \"text-xl\",\n xl: \"text-2xl\",\n};\n\nconst darkthemeClasses = \"dark:bg-dark dark:text-light\";\n\nconst typeClasses = (type: string) => {\n return type === \"checkbox\"\n ? `form-checkbox rounded-md w-[1.5em] h-[1.5em] cursor-pointer !check:dark:bg-dark !text-info border-neutral border-2`\n : type === \"radio\"\n ? \"form-radio w-[1.5em] h-[1.5em] cursor-pointer bg-transparent !text-info border-2\"\n : type === \"color\"\n ? \"form-color cursor-pointer aspect-square w-[2em] h-[2em] border-neutral border-2\"\n : type === \"number\"\n ? `form-input text-center ${darkthemeClasses} [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none me-4`\n : type === \"file\"\n ? \"hidden\"\n : type === \"range\"\n ? \"appearance-none h-[.5em] w-full [&&::-webkit-slider-thumb]:cursor-grab [&&::-webkit-slider-thumb]:appearance-none [&&::-webkit-slider-thumb]:h-[1em] [&&::-webkit-slider-thumb]:w-[1em] [&&::-webkit-slider-thumb]:bg-current\"\n : `form-input w-full border-neutral ${darkthemeClasses} read-only:cursor-default read-only:bg-transparent read-only:!border-none`;\n};\n\nconst styles = {\n required: \"!bg-[var(--highlight-color)] !text-dark\",\n};\n\nconst Input = forwardRef<InputRef, InputProps>(function Input(props, ref) {\n const {\n type = \"text\",\n size = \"md\",\n autocomplete = \"off\",\n name = \"control-name\",\n id,\n className = \"\",\n style,\n rounded = \"md\",\n required = false,\n readonly = false,\n disabled = false,\n hint = false,\n tabindex,\n min,\n max,\n minLength,\n maxLength,\n step,\n pattern,\n title,\n value,\n defaultChecked,\n accept,\n multiple,\n placeholder,\n list,\n onChange,\n onFocus,\n onBlur,\n hidden,\n ariaLabel,\n autocorrect,\n spellcheck,\n suppressHydrationWarning = false,\n } = props;\n\n const sizeClasses = useMemo(() => sizes[size], [size]);\n\n return (\n <>\n <input\n className={twMerge(\n `input ${typeClasses(\n type\n )} peer ${sizeClasses} rounded-${rounded} font-normal color-scheme:light dark:[color-scheme:dark] focus:outline-none focus-visible:outline-none focus-visible:border-info disabled:bg-neutral disabled:cursor-default disabled:text-dark disabled:border-transparent invalid:!border-warning-dark invalid:dark:!border-warning-light`,\n className\n )}\n style={style}\n type={type}\n name={name}\n id={id}\n autoComplete={autocomplete}\n required={required}\n aria-required={required}\n hidden={hidden}\n readOnly={readonly}\n tabIndex={tabindex}\n ref={ref}\n min={min}\n max={max}\n minLength={minLength}\n maxLength={maxLength}\n step={step}\n pattern={pattern}\n title={title}\n placeholder={placeholder}\n defaultValue={value}\n defaultChecked={defaultChecked}\n accept={accept}\n multiple={multiple}\n list={list}\n disabled={disabled}\n onChange={onChange}\n onInput={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n data-testid={id || name}\n aria-label={ariaLabel}\n autoCorrect={autocorrect}\n spellCheck={spellcheck}\n suppressHydrationWarning={suppressHydrationWarning}\n />\n {hint && (\n <p className=\"hint text-sm font-normal mt-[.5em] dark:text-light peer-invalid:text-warning-dark peer-invalid:dark:text-warning-light inline-block\">\n {title}\n </p>\n )}\n </>\n );\n});\n\nexport default Input;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA","sourcesContent":["export { default as Input } from './Input'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/input/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface InputProps {\n\tsize?: 'sm' | 'md' | 'lg' | 'xl'\n\ttype?:\n\t\t| 'text'\n\t\t| 'password'\n\t\t| 'number'\n\t\t| 'email'\n\t\t| 'tel'\n\t\t| 'date'\n\t\t| 'datetime-local'\n\t\t| 'checkbox'\n\t\t| 'radio'\n\t\t| 'file'\n\t\t| 'color'\n\t\t| 'range'\n\t\t| 'search'\n\t\t| 'url'\n\t\t| 'time'\n\t\t| 'month'\n\t\t| 'week'\n\tautocomplete?:\n\t\t| 'off'\n\t\t| 'on'\n\t\t| 'name'\n\t\t| 'honorific-prefix'\n\t\t| 'given-name'\n\t\t| 'additional-name'\n\t\t| 'family-name'\n\t\t| 'honorific-suffix'\n\t\t| 'nickname'\n\t\t| 'username'\n\t\t| 'email'\n\t\t| 'username email'\n\t\t| 'new-password'\n\t\t| 'current-password'\n\t\t| 'one-time-code'\n\t\t| 'organization-title'\n\t\t| 'organization'\n\t\t| 'street-address'\n\t\t| 'address-line1'\n\t\t| 'address-line2'\n\t\t| 'address-line3'\n\t\t| 'address-level4'\n\t\t| 'address-level3'\n\t\t| 'address-level2'\n\t\t| 'address-level1'\n\t\t| 'country'\n\t\t| 'country-name'\n\t\t| 'postal-code'\n\t\t| 'cc-name'\n\t\t| 'cc-given-name'\n\t\t| 'cc-additional-name'\n\t\t| 'cc-family-name'\n\t\t| 'cc-number'\n\t\t| 'cc-exp'\n\t\t| 'cc-exp-month'\n\t\t| 'cc-exp-year'\n\t\t| 'cc-csc'\n\t\t| 'cc-type'\n\t\t| 'transaction-currency'\n\t\t| 'transaction-amount'\n\t\t| 'language'\n\t\t| 'bday'\n\t\t| 'bday-day'\n\t\t| 'bday-month'\n\t\t| 'bday-year'\n\t\t| 'sex'\n\t\t| 'url'\n\t\t| 'tel'\n\t\t| string\n\tname?: string\n\tid?: string\n\ttitle?: string\n\tariaLabel?: string\n\tplaceholder?: string\n\tlist?: string\n\tpattern?: string\n\tclassName?: string\n\tstyle?: React.CSSProperties\n\tdisabled?: boolean\n\thint?: boolean\n\thidden?: boolean\n\trequired?: boolean\n\treadonly?: boolean\n\ttabindex?: number\n\tmin?: string | number\n\tmax?: string | number\n\tmaxLength?: number\n\tminLength?: number\n\tstep?: string\n\taccept?: string\n\tmultiple?: boolean\n\tvalue?: number | string\n\tchecked?: boolean\n\tdefaultChecked?: boolean\n\tonChange?: React.ChangeEventHandler<HTMLInputElement>\n\tonInput?: React.ChangeEventHandler<HTMLInputElement>\n\tonFocus?: React.ChangeEventHandler<HTMLInputElement>\n\tonBlur?: React.ChangeEventHandler<HTMLInputElement>\n\tautocorrect?: 'on' | 'off'\n\tspellcheck?: boolean\n\trounded?: 'none' | 'md' | 'lg' | 'full'\n\tsuppressHydrationWarning?: boolean\n}\n"]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
import { twMerge } from "tailwind-merge";
|
|
5
|
+
var fileClasses = "bg-dark text-light dark:bg-light dark:text-dark rounded-md p-[1em] flex items-center justify-center whitespace-nowrap !w-auto";
|
|
6
|
+
var requiredClasses = "after:text-warning-dark after:dark:text-warning-light after:content-['_*']";
|
|
7
|
+
var sizes = {
|
|
8
|
+
sm: "text-sm",
|
|
9
|
+
md: "text-base",
|
|
10
|
+
lg: "text-lg",
|
|
11
|
+
xl: "text-2xl",
|
|
12
|
+
};
|
|
13
|
+
var layouts = {
|
|
14
|
+
col: "flex flex-col items-start gap-2",
|
|
15
|
+
row: "grid grid-cols-3 items-start gap-4",
|
|
16
|
+
row_reverse: "flex flex-wrap justify-end flex-row-reverse gap-2 items-center",
|
|
17
|
+
};
|
|
18
|
+
var widthClasses = function (type) {
|
|
19
|
+
return type === "checkbox"
|
|
20
|
+
? "w-auto"
|
|
21
|
+
: type === "radio"
|
|
22
|
+
? "w-auto"
|
|
23
|
+
: type === "color"
|
|
24
|
+
? "w-auto"
|
|
25
|
+
: type === "number"
|
|
26
|
+
? "w-auto"
|
|
27
|
+
: "w-full";
|
|
28
|
+
};
|
|
29
|
+
var Label = function (_a) {
|
|
30
|
+
var forId = _a.forId, _b = _a.size, size = _b === void 0 ? "md" : _b, _c = _a.layout, layout = _c === void 0 ? "col" : _c, label = _a.label, _d = _a.isBold, isBold = _d === void 0 ? true : _d, required = _a.required, _e = _a.type, type = _e === void 0 ? "text" : _e, children = _a.children, _f = _a.className, className = _f === void 0 ? "" : _f, style = _a.style;
|
|
31
|
+
var sizeClasses = useMemo(function () { return sizes[size]; }, [size]);
|
|
32
|
+
var layoutClasses = useMemo(function () { return layouts[layout]; }, [layout]);
|
|
33
|
+
return (_jsxs("label", { className: twMerge("label group cursor-pointer w-full ".concat(sizeClasses, " ").concat(layoutClasses, " ").concat(isBold ? "font-semibold" : "font-nomal", " text-dark dark:text-light ").concat(type), className), "data-testid": "label", htmlFor: forId, style: style, children: [_jsxs("span", { className: "inline-block [&:has(svg)]:w-full ".concat(layout === "row" ? "pt-2" : "", " ").concat(type === "file" ? fileClasses : "", " ").concat(required ? requiredClasses : ""), children: [label, " ", type === "file" && _jsx("span", { className: "sr-only", children: "Upload file icon" })] }), _jsx("div", { className: "".concat(widthClasses(type), " col-span-2 [&:has(input.w-0)]:absolute [&:has(input.password)]:relative"), children: children })] }));
|
|
34
|
+
};
|
|
35
|
+
export default Label;
|
|
36
|
+
//# sourceMappingURL=Label.js.map
|