@julseb-lib/react 0.1.19 → 0.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-AOKNHBEF.js +1 -0
- package/dist/chunk-AOKNHBEF.js.map +1 -0
- package/dist/chunk-F55MXC3Z.js +1 -0
- package/dist/chunk-F55MXC3Z.js.map +1 -0
- package/dist/chunk-IH6ET7Q6.js +1 -0
- package/dist/chunk-IH6ET7Q6.js.map +1 -0
- package/dist/chunk-OOIPIHXS.js +1 -0
- package/dist/chunk-OOIPIHXS.js.map +1 -0
- package/dist/chunk-ZL3Z7QC7.js +1 -0
- package/dist/chunk-ZL3Z7QC7.js.map +1 -0
- package/dist/global-Bck2LNL3.d.cts +1472 -0
- package/dist/global-Bck2LNL3.d.ts +1472 -0
- package/dist/index.cjs +11892 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +3231 -0
- package/dist/index.d.ts +3231 -1
- package/dist/index.js +11732 -0
- package/dist/index.js.map +1 -0
- package/dist/types/components-items-props.cjs +19 -0
- package/dist/types/components-items-props.cjs.map +1 -0
- package/dist/types/components-items-props.d.cts +175 -0
- package/dist/{lib/types/components-items-props.ts → types/components-items-props.d.ts} +56 -65
- package/dist/types/components-items-props.js +2 -0
- package/dist/types/components-items-props.js.map +1 -0
- package/dist/types/components-props.cjs +19 -0
- package/dist/types/components-props.cjs.map +1 -0
- package/dist/types/components-props.d.cts +1119 -0
- package/dist/types/components-props.d.ts +1119 -0
- package/dist/types/components-props.js +2 -0
- package/dist/types/components-props.js.map +1 -0
- package/dist/types/global.cjs +19 -0
- package/dist/types/global.cjs.map +1 -0
- package/dist/types/global.d.cts +3 -0
- package/dist/types/global.d.ts +3 -0
- package/dist/types/global.js +2 -0
- package/dist/types/global.js.map +1 -0
- package/dist/types/index.cjs +19 -0
- package/dist/types/index.cjs.map +1 -0
- package/dist/types/index.d.cts +10 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.js +6 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/require-at-least-one.cjs +19 -0
- package/dist/types/require-at-least-one.cjs.map +1 -0
- package/dist/types/require-at-least-one.d.cts +5 -0
- package/dist/types/require-at-least-one.d.ts +5 -0
- package/dist/types/require-at-least-one.js +2 -0
- package/dist/types/require-at-least-one.js.map +1 -0
- package/dist/types/tailwind.cjs +19 -0
- package/dist/types/tailwind.cjs.map +1 -0
- package/dist/types/tailwind.d.cts +3259 -0
- package/dist/types/tailwind.d.ts +3259 -0
- package/dist/types/tailwind.js +2 -0
- package/dist/types/tailwind.js.map +1 -0
- package/package.json +35 -51
- package/LICENSE +0 -21
- package/README.md +0 -206
- package/dist/julseb-lib-react.cjs.js +0 -17
- package/dist/julseb-lib-react.es.js +0 -8977
- package/dist/lib/Variables.ts +0 -202
- package/dist/lib/components/Accordion/Accordion.tsx +0 -73
- package/dist/lib/components/Accordion/AccordionContent.tsx +0 -55
- package/dist/lib/components/Accordion/AccordionItem.tsx +0 -66
- package/dist/lib/components/Accordion/AccordionTitle.tsx +0 -80
- package/dist/lib/components/Accordion/index.ts +0 -2
- package/dist/lib/components/Accordion/subtypes.ts +0 -26
- package/dist/lib/components/Accordion/types.ts +0 -37
- package/dist/lib/components/Alert/Alert.tsx +0 -57
- package/dist/lib/components/Alert/index.ts +0 -1
- package/dist/lib/components/Alert/types.ts +0 -8
- package/dist/lib/components/Aside/Aside.tsx +0 -58
- package/dist/lib/components/Aside/index.ts +0 -1
- package/dist/lib/components/Aside/types.ts +0 -6
- package/dist/lib/components/Autocomplete/Autocomplete.tsx +0 -222
- package/dist/lib/components/Autocomplete/index.ts +0 -1
- package/dist/lib/components/Autocomplete/types.ts +0 -35
- package/dist/lib/components/Avatar/Avatar.tsx +0 -93
- package/dist/lib/components/Avatar/AvatarFn.tsx +0 -44
- package/dist/lib/components/Avatar/index.ts +0 -1
- package/dist/lib/components/Avatar/types.ts +0 -37
- package/dist/lib/components/BackToTop/BackToTop.tsx +0 -96
- package/dist/lib/components/BackToTop/index.ts +0 -1
- package/dist/lib/components/BackToTop/types.ts +0 -9
- package/dist/lib/components/Badge/Badge.tsx +0 -61
- package/dist/lib/components/Badge/index.ts +0 -1
- package/dist/lib/components/Badge/types.ts +0 -7
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.tsx +0 -72
- package/dist/lib/components/Breadcrumbs/index.ts +0 -1
- package/dist/lib/components/Breadcrumbs/types.ts +0 -5
- package/dist/lib/components/Burger/Burger.tsx +0 -110
- package/dist/lib/components/Burger/index.ts +0 -1
- package/dist/lib/components/Burger/types.ts +0 -11
- package/dist/lib/components/Button/Button.tsx +0 -109
- package/dist/lib/components/Button/index.ts +0 -1
- package/dist/lib/components/Button/types.ts +0 -30
- package/dist/lib/components/ButtonGroup/ButtonGroup.tsx +0 -126
- package/dist/lib/components/ButtonGroup/index.ts +0 -1
- package/dist/lib/components/ButtonGroup/types.ts +0 -28
- package/dist/lib/components/ButtonIcon/ButtonFn.tsx +0 -76
- package/dist/lib/components/ButtonIcon/ButtonIcon.tsx +0 -134
- package/dist/lib/components/ButtonIcon/index.ts +0 -1
- package/dist/lib/components/ButtonIcon/types.ts +0 -52
- package/dist/lib/components/CodeContainer/CodeContainer.tsx +0 -108
- package/dist/lib/components/CodeContainer/index.ts +0 -1
- package/dist/lib/components/CodeContainer/types.ts +0 -230
- package/dist/lib/components/Cover/Cover.tsx +0 -91
- package/dist/lib/components/Cover/index.ts +0 -1
- package/dist/lib/components/Cover/types.ts +0 -10
- package/dist/lib/components/DragList/DragList.tsx +0 -111
- package/dist/lib/components/DragList/DragListItem.tsx +0 -114
- package/dist/lib/components/DragList/index.ts +0 -2
- package/dist/lib/components/DragList/types.ts +0 -55
- package/dist/lib/components/Drawer/Drawer.tsx +0 -145
- package/dist/lib/components/Drawer/index.ts +0 -1
- package/dist/lib/components/Drawer/types.ts +0 -24
- package/dist/lib/components/Dropdown/Dropdown.tsx +0 -89
- package/dist/lib/components/Dropdown/DropdownItem.tsx +0 -49
- package/dist/lib/components/Dropdown/index.ts +0 -2
- package/dist/lib/components/Dropdown/types.ts +0 -35
- package/dist/lib/components/Fade/Fade.tsx +0 -62
- package/dist/lib/components/Fade/index.ts +0 -1
- package/dist/lib/components/Fade/types.ts +0 -3
- package/dist/lib/components/Fieldset/Fieldset.tsx +0 -85
- package/dist/lib/components/Fieldset/index.ts +0 -1
- package/dist/lib/components/Fieldset/types.ts +0 -15
- package/dist/lib/components/Flexbox/Flexbox.tsx +0 -99
- package/dist/lib/components/Flexbox/index.ts +0 -1
- package/dist/lib/components/Flexbox/types.ts +0 -23
- package/dist/lib/components/Footer/Footer.tsx +0 -103
- package/dist/lib/components/Footer/index.ts +0 -1
- package/dist/lib/components/Footer/types.ts +0 -54
- package/dist/lib/components/Form/Form.tsx +0 -83
- package/dist/lib/components/Form/index.ts +0 -1
- package/dist/lib/components/Form/types.ts +0 -32
- package/dist/lib/components/Grid/Grid.tsx +0 -98
- package/dist/lib/components/Grid/index.ts +0 -1
- package/dist/lib/components/Grid/types.ts +0 -20
- package/dist/lib/components/Header/Header.tsx +0 -241
- package/dist/lib/components/Header/HeaderSearch.tsx +0 -50
- package/dist/lib/components/Header/index.ts +0 -1
- package/dist/lib/components/Header/subtypes.ts +0 -28
- package/dist/lib/components/Header/types.ts +0 -57
- package/dist/lib/components/Highlight/Highlight.tsx +0 -45
- package/dist/lib/components/Highlight/index.ts +0 -1
- package/dist/lib/components/Highlight/types.ts +0 -9
- package/dist/lib/components/Hr/Hr.tsx +0 -48
- package/dist/lib/components/Hr/index.ts +0 -1
- package/dist/lib/components/Hr/types.ts +0 -8
- package/dist/lib/components/Image/Image.tsx +0 -92
- package/dist/lib/components/Image/index.ts +0 -1
- package/dist/lib/components/Image/types.ts +0 -25
- package/dist/lib/components/Input/Input.tsx +0 -130
- package/dist/lib/components/Input/classes.ts +0 -1
- package/dist/lib/components/Input/index.ts +0 -1
- package/dist/lib/components/Input/subtypes.ts +0 -173
- package/dist/lib/components/Input/templates/ColorInput.tsx +0 -44
- package/dist/lib/components/Input/templates/DateInput.tsx +0 -63
- package/dist/lib/components/Input/templates/FileInput.tsx +0 -42
- package/dist/lib/components/Input/templates/PasswordInput.tsx +0 -73
- package/dist/lib/components/Input/templates/SearchInput.tsx +0 -89
- package/dist/lib/components/Input/templates/SelectInput.tsx +0 -79
- package/dist/lib/components/Input/templates/TextInput.tsx +0 -58
- package/dist/lib/components/Input/templates/TextareaInput.tsx +0 -27
- package/dist/lib/components/Input/templates/TimeInput.tsx +0 -67
- package/dist/lib/components/Input/types.ts +0 -22
- package/dist/lib/components/InputCheck/InputCheck.tsx +0 -161
- package/dist/lib/components/InputCheck/index.ts +0 -1
- package/dist/lib/components/InputCheck/types.ts +0 -27
- package/dist/lib/components/InputComponents/InputButton.tsx +0 -31
- package/dist/lib/components/InputComponents/InputIcon.tsx +0 -28
- package/dist/lib/components/InputComponents/InputList.tsx +0 -53
- package/dist/lib/components/InputComponents/InputListItem.tsx +0 -68
- package/dist/lib/components/InputComponents/InputPrefix.tsx +0 -15
- package/dist/lib/components/InputComponents/InputSuffix.tsx +0 -15
- package/dist/lib/components/InputComponents/InputValidation.tsx +0 -32
- package/dist/lib/components/InputComponents/InputWithListWrapper.tsx +0 -29
- package/dist/lib/components/InputComponents/InputWrapper.tsx +0 -45
- package/dist/lib/components/InputComponents/classes.ts +0 -101
- package/dist/lib/components/InputComponents/index.ts +0 -11
- package/dist/lib/components/InputComponents/types.ts +0 -63
- package/dist/lib/components/InputContainer/InputContainer.tsx +0 -149
- package/dist/lib/components/InputContainer/index.ts +0 -1
- package/dist/lib/components/InputContainer/types.ts +0 -11
- package/dist/lib/components/InputCounter/InputCounter.tsx +0 -141
- package/dist/lib/components/InputCounter/index.ts +0 -1
- package/dist/lib/components/InputCounter/types.ts +0 -45
- package/dist/lib/components/InputImage/EmptyContainer.tsx +0 -17
- package/dist/lib/components/InputImage/HoverContainer.tsx +0 -21
- package/dist/lib/components/InputImage/InputImage.tsx +0 -104
- package/dist/lib/components/InputImage/index.ts +0 -1
- package/dist/lib/components/InputImage/subtypes.ts +0 -7
- package/dist/lib/components/InputImage/types.ts +0 -24
- package/dist/lib/components/InputPhone/InputPhone.tsx +0 -256
- package/dist/lib/components/InputPhone/index.ts +0 -1
- package/dist/lib/components/InputPhone/types.ts +0 -32
- package/dist/lib/components/InputPhone/utils/countries.ts +0 -646
- package/dist/lib/components/InputPhone/utils/flags/ac.svg +0 -76
- package/dist/lib/components/InputPhone/utils/flags/bq.svg +0 -5
- package/dist/lib/components/InputPhone/utils/flags/bv.svg +0 -13
- package/dist/lib/components/InputPhone/utils/flags/cefta.svg +0 -13
- package/dist/lib/components/InputPhone/utils/flags/cp.svg +0 -7
- package/dist/lib/components/InputPhone/utils/flags/cw.svg +0 -14
- package/dist/lib/components/InputPhone/utils/flags/dg.svg +0 -129
- package/dist/lib/components/InputPhone/utils/flags/ea.svg +0 -544
- package/dist/lib/components/InputPhone/utils/flags/eh.svg +0 -16
- package/dist/lib/components/InputPhone/utils/flags/es-ct.svg +0 -4
- package/dist/lib/components/InputPhone/utils/flags/es-ga.svg +0 -187
- package/dist/lib/components/InputPhone/utils/flags/eu.svg +0 -28
- package/dist/lib/components/InputPhone/utils/flags/gb-eng.svg +0 -5
- package/dist/lib/components/InputPhone/utils/flags/gb-nir.svg +0 -132
- package/dist/lib/components/InputPhone/utils/flags/gb-sct.svg +0 -4
- package/dist/lib/components/InputPhone/utils/flags/gb-wls.svg +0 -9
- package/dist/lib/components/InputPhone/utils/flags/hm.svg +0 -8
- package/dist/lib/components/InputPhone/utils/flags/ic.svg +0 -7
- package/dist/lib/components/InputPhone/utils/flags/sx.svg +0 -56
- package/dist/lib/components/InputPhone/utils/flags/ta.svg +0 -76
- package/dist/lib/components/InputPhone/utils/flags/tf.svg +0 -15
- package/dist/lib/components/InputPhone/utils/flags/um.svg +0 -15
- package/dist/lib/components/InputPhone/utils/flags/un.svg +0 -16
- package/dist/lib/components/InputPhone/utils/flags/xk.svg +0 -8
- package/dist/lib/components/InputPhone/utils/flags/xx.svg +0 -4
- package/dist/lib/components/InputPin/InputPin.tsx +0 -121
- package/dist/lib/components/InputPin/index.ts +0 -1
- package/dist/lib/components/InputPin/types.ts +0 -22
- package/dist/lib/components/InputSlider/InputSlider.tsx +0 -176
- package/dist/lib/components/InputSlider/index.ts +0 -1
- package/dist/lib/components/InputSlider/types.ts +0 -22
- package/dist/lib/components/Key/Key.tsx +0 -84
- package/dist/lib/components/Key/index.ts +0 -1
- package/dist/lib/components/Key/types.ts +0 -16
- package/dist/lib/components/Linkify/Linkify.tsx +0 -67
- package/dist/lib/components/Linkify/index.ts +0 -1
- package/dist/lib/components/Linkify/types.ts +0 -8
- package/dist/lib/components/ListGroup/ListGroup.tsx +0 -96
- package/dist/lib/components/ListGroup/ListGroupItem.tsx +0 -86
- package/dist/lib/components/ListGroup/ListGroupTitle.tsx +0 -84
- package/dist/lib/components/ListGroup/index.ts +0 -3
- package/dist/lib/components/ListGroup/types.ts +0 -69
- package/dist/lib/components/Loader/Loader.tsx +0 -38
- package/dist/lib/components/Loader/index.ts +0 -1
- package/dist/lib/components/Loader/templates/LoaderOne.tsx +0 -27
- package/dist/lib/components/Loader/templates/LoaderThree.tsx +0 -47
- package/dist/lib/components/Loader/templates/LoaderTwo.tsx +0 -61
- package/dist/lib/components/Loader/types.ts +0 -13
- package/dist/lib/components/Loader/utils/gen-border-bottom.ts +0 -95
- package/dist/lib/components/Main/Main.tsx +0 -63
- package/dist/lib/components/Main/index.ts +0 -1
- package/dist/lib/components/Main/types.ts +0 -12
- package/dist/lib/components/MarkdownContainer/MarkdownContainer.tsx +0 -50
- package/dist/lib/components/MarkdownContainer/index.ts +0 -1
- package/dist/lib/components/MarkdownContainer/types.ts +0 -8
- package/dist/lib/components/MarkdownEditor/MarkdownButtons.tsx +0 -42
- package/dist/lib/components/MarkdownEditor/MarkdownEditor.tsx +0 -186
- package/dist/lib/components/MarkdownEditor/MarkdownEditorTitles.tsx +0 -86
- package/dist/lib/components/MarkdownEditor/MarkdownViewButtons.tsx +0 -48
- package/dist/lib/components/MarkdownEditor/buttons/icons.tsx +0 -85
- package/dist/lib/components/MarkdownEditor/buttons/markdown-buttons.tsx +0 -176
- package/dist/lib/components/MarkdownEditor/index.ts +0 -1
- package/dist/lib/components/MarkdownEditor/types.ts +0 -42
- package/dist/lib/components/Masonry/Masonry.tsx +0 -83
- package/dist/lib/components/Masonry/index.ts +0 -1
- package/dist/lib/components/Masonry/types.ts +0 -8
- package/dist/lib/components/Masonry/utils.tsx +0 -28
- package/dist/lib/components/Meta/Meta.tsx +0 -125
- package/dist/lib/components/Meta/index.ts +0 -1
- package/dist/lib/components/Meta/types.ts +0 -35
- package/dist/lib/components/Modal/Modal.tsx +0 -107
- package/dist/lib/components/Modal/index.ts +0 -1
- package/dist/lib/components/Modal/types.ts +0 -21
- package/dist/lib/components/PageLayout/PageLayout.tsx +0 -64
- package/dist/lib/components/PageLayout/index.ts +0 -1
- package/dist/lib/components/PageLayout/types.ts +0 -29
- package/dist/lib/components/PageLoading/PageLoading.tsx +0 -64
- package/dist/lib/components/PageLoading/index.ts +0 -1
- package/dist/lib/components/PageLoading/types.ts +0 -13
- package/dist/lib/components/Pagination/Pagination.tsx +0 -163
- package/dist/lib/components/Pagination/PaginationButton.tsx +0 -65
- package/dist/lib/components/Pagination/index.ts +0 -2
- package/dist/lib/components/Pagination/types.ts +0 -56
- package/dist/lib/components/Paginator/Paginator.tsx +0 -136
- package/dist/lib/components/Paginator/index.ts +0 -1
- package/dist/lib/components/Paginator/types.ts +0 -16
- package/dist/lib/components/ProgressBar/ProgressBar.tsx +0 -87
- package/dist/lib/components/ProgressBar/index.ts +0 -1
- package/dist/lib/components/ProgressBar/types.ts +0 -14
- package/dist/lib/components/ProgressCircle/ProgressCircle.tsx +0 -146
- package/dist/lib/components/ProgressCircle/index.ts +0 -1
- package/dist/lib/components/ProgressCircle/types.ts +0 -31
- package/dist/lib/components/Rating/Rating.tsx +0 -116
- package/dist/lib/components/Rating/index.ts +0 -1
- package/dist/lib/components/Rating/types.ts +0 -25
- package/dist/lib/components/Section/Section.tsx +0 -51
- package/dist/lib/components/Section/index.ts +0 -1
- package/dist/lib/components/Section/types.ts +0 -5
- package/dist/lib/components/Select/Select.tsx +0 -191
- package/dist/lib/components/Select/index.ts +0 -1
- package/dist/lib/components/Select/types.ts +0 -23
- package/dist/lib/components/Skeleton/Skeleton.tsx +0 -57
- package/dist/lib/components/Skeleton/SkeletonCard.tsx +0 -60
- package/dist/lib/components/Skeleton/index.ts +0 -2
- package/dist/lib/components/Skeleton/types.ts +0 -27
- package/dist/lib/components/Slideshow/Slideshow.tsx +0 -324
- package/dist/lib/components/Slideshow/SlideshowButton.tsx +0 -63
- package/dist/lib/components/Slideshow/SlideshowPagination.tsx +0 -111
- package/dist/lib/components/Slideshow/index.ts +0 -1
- package/dist/lib/components/Slideshow/subtypes.ts +0 -62
- package/dist/lib/components/Slideshow/types.ts +0 -41
- package/dist/lib/components/SrOnly/SrOnly.tsx +0 -33
- package/dist/lib/components/SrOnly/index.ts +0 -1
- package/dist/lib/components/SrOnly/types.ts +0 -7
- package/dist/lib/components/Sticky/Sticky.tsx +0 -58
- package/dist/lib/components/Sticky/index.ts +0 -1
- package/dist/lib/components/Sticky/types.ts +0 -5
- package/dist/lib/components/Table/Table.tsx +0 -141
- package/dist/lib/components/Table/index.ts +0 -1
- package/dist/lib/components/Table/types.ts +0 -43
- package/dist/lib/components/Tabs/Tabs.tsx +0 -88
- package/dist/lib/components/Tabs/TabsButton.tsx +0 -73
- package/dist/lib/components/Tabs/TabsButtonsContainer.tsx +0 -58
- package/dist/lib/components/Tabs/TabsContainer.tsx +0 -49
- package/dist/lib/components/Tabs/TabsContent.tsx +0 -52
- package/dist/lib/components/Tabs/index.ts +0 -5
- package/dist/lib/components/Tabs/types.ts +0 -46
- package/dist/lib/components/Tag/Tag.tsx +0 -77
- package/dist/lib/components/Tag/index.ts +0 -1
- package/dist/lib/components/Tag/types.ts +0 -13
- package/dist/lib/components/Text/Text.tsx +0 -88
- package/dist/lib/components/Text/index.ts +0 -1
- package/dist/lib/components/Text/templates/Blockquote.tsx +0 -41
- package/dist/lib/components/Text/templates/Dl.tsx +0 -42
- package/dist/lib/components/Text/templates/Em.tsx +0 -40
- package/dist/lib/components/Text/templates/H1.tsx +0 -44
- package/dist/lib/components/Text/templates/H2.tsx +0 -44
- package/dist/lib/components/Text/templates/H3.tsx +0 -44
- package/dist/lib/components/Text/templates/H4.tsx +0 -44
- package/dist/lib/components/Text/templates/H5.tsx +0 -44
- package/dist/lib/components/Text/templates/H6.tsx +0 -41
- package/dist/lib/components/Text/templates/Ol.tsx +0 -41
- package/dist/lib/components/Text/templates/P.tsx +0 -40
- package/dist/lib/components/Text/templates/Small.tsx +0 -40
- package/dist/lib/components/Text/templates/Strong.tsx +0 -40
- package/dist/lib/components/Text/templates/Ul.tsx +0 -41
- package/dist/lib/components/Text/types.ts +0 -36
- package/dist/lib/components/Toast/Toast.tsx +0 -113
- package/dist/lib/components/Toast/ToastContainer.tsx +0 -43
- package/dist/lib/components/Toast/ToastFn.tsx +0 -236
- package/dist/lib/components/Toast/index.ts +0 -3
- package/dist/lib/components/Toast/types.ts +0 -18
- package/dist/lib/components/Toast/utils.ts +0 -9
- package/dist/lib/components/Tooltip/Tooltip.tsx +0 -197
- package/dist/lib/components/Tooltip/index.ts +0 -1
- package/dist/lib/components/Tooltip/types.ts +0 -23
- package/dist/lib/components/Wrapper/Wrapper.tsx +0 -75
- package/dist/lib/components/Wrapper/index.ts +0 -1
- package/dist/lib/components/Wrapper/types.ts +0 -12
- package/dist/lib/context/Theme.context.tsx +0 -66
- package/dist/lib/context/index.ts +0 -1
- package/dist/lib/hooks/index.ts +0 -15
- package/dist/lib/hooks/useClickOutside.tsx +0 -50
- package/dist/lib/hooks/useCopyToClipboard.tsx +0 -50
- package/dist/lib/hooks/useDebounce.tsx +0 -37
- package/dist/lib/hooks/useExportData.tsx +0 -78
- package/dist/lib/hooks/useFetch.tsx +0 -42
- package/dist/lib/hooks/useForm.tsx +0 -51
- package/dist/lib/hooks/useIsOverflow.ts +0 -61
- package/dist/lib/hooks/useKeyPress.tsx +0 -110
- package/dist/lib/hooks/useMaxWidth.tsx +0 -40
- package/dist/lib/hooks/useMergeRefs.ts +0 -45
- package/dist/lib/hooks/useMinWidth.tsx +0 -40
- package/dist/lib/hooks/usePaginatedData.tsx +0 -52
- package/dist/lib/hooks/usePagination.tsx +0 -75
- package/dist/lib/hooks/useTouchScreen.tsx +0 -34
- package/dist/lib/hooks/useTranslation.tsx +0 -58
- package/dist/lib/index.css +0 -539
- package/dist/lib/index.ts +0 -129
- package/dist/lib/lib-utils/get-highlighted-text.tsx +0 -30
- package/dist/lib/lib-utils/index.ts +0 -3
- package/dist/lib/lib-utils/transfom-search-keys.ts +0 -13
- package/dist/lib/lib-utils/use-keyboard-navigation.tsx +0 -79
- package/dist/lib/types/components-props.ts +0 -66
- package/dist/lib/types/global.ts +0 -853
- package/dist/lib/types/index.ts +0 -4
- package/dist/lib/types/require-at-least-one.ts +0 -7
- package/dist/lib/types/tailwind.ts +0 -9041
- package/dist/lib/utils/clsx.tsx +0 -6
- package/dist/lib/utils/design-tokens.ts +0 -784
- package/dist/lib/utils/gen-align.ts +0 -24
- package/dist/lib/utils/gen-bg-color.ts +0 -158
- package/dist/lib/utils/gen-border-color.ts +0 -110
- package/dist/lib/utils/gen-border-radius.ts +0 -13
- package/dist/lib/utils/gen-border.ts +0 -30
- package/dist/lib/utils/gen-box-shadow.ts +0 -12
- package/dist/lib/utils/gen-button-color.ts +0 -9
- package/dist/lib/utils/gen-gap.ts +0 -34
- package/dist/lib/utils/gen-justify.ts +0 -25
- package/dist/lib/utils/gen-link-color.ts +0 -29
- package/dist/lib/utils/gen-max-width.ts +0 -30
- package/dist/lib/utils/gen-object-fit.ts +0 -9
- package/dist/lib/utils/gen-ring-color.ts +0 -21
- package/dist/lib/utils/gen-text-align.ts +0 -10
- package/dist/lib/utils/gen-text-color.ts +0 -111
- package/dist/lib/utils/gen-vertical-align.ts +0 -12
- package/dist/lib/utils/index.ts +0 -19
- package/dist/lib/utils/linkify-text.tsx +0 -26
- package/dist/lib/utils/options-markdown.ts +0 -60
- package/dist/lib/utils/tools.ts +0 -15
- package/dist/react.css +0 -1
- package/dist/style.css +0 -539
- /package/dist/{lib/components/InputPhone/utils/flags/ad.svg → ad-HTL7GHRB.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ae.svg → ae-ICAMTCAR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/af.svg → af-MHFH5L72.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ag.svg → ag-M7PMJTNC.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ai.svg → ai-ETDR2GEU.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/al.svg → al-RBPPZBOR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/am.svg → am-P5ZIE6XV.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ao.svg → ao-IDQ66LVW.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/aq.svg → aq-M762DUH3.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ar.svg → ar-DHRVFD4E.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/as.svg → as-ICEYFBWP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/at.svg → at-P53PFVFI.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/au.svg → au-OMD4QESS.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/aw.svg → aw-P7SRGNOX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ax.svg → ax-V7XPB664.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/az.svg → az-JZV3NJUP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ba.svg → ba-POV77HGO.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bb.svg → bb-WTDUG7VT.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bd.svg → bd-HMCXBQD3.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/be.svg → be-Y7RGT6WN.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bf.svg → bf-IFOTMWPV.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bg.svg → bg-QKOWF4RG.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bh.svg → bh-F7YG7A6Z.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bi.svg → bi-HWA2SSM7.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bj.svg → bj-SVZPUB6C.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bl.svg → bl-QXYAF6ZV.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bm.svg → bm-VAEN3IKJ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bn.svg → bn-CK5FI4T5.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bo.svg → bo-HY4TLIQH.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/br.svg → br-E7SKW6QV.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bs.svg → bs-5UC4R4TW.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bt.svg → bt-ILNGCG6V.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bw.svg → bw-GTCF3QZV.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/by.svg → by-I2PKD7MG.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/bz.svg → bz-ZSRW2FFJ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ca.svg → ca-WZPQPA7E.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cc.svg → cc-F56DXRNZ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cd.svg → cd-WTKKN7EX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cf.svg → cf-TPKKXILK.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cg.svg → cg-CKR7RUC4.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ch.svg → ch-USJZZOGC.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ci.svg → ci-KFEINJVJ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ck.svg → ck-ATMQHHMA.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cl.svg → cl-WMTRWE2W.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cm.svg → cm-2BN3OVZK.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cn.svg → cn-GFQJIK3L.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/co.svg → co-NN4OA66V.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cr.svg → cr-ZQEISEUX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cu.svg → cu-5GWMND5O.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cv.svg → cv-LWSGBQVT.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cx.svg → cx-XOUJ6BDY.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cy.svg → cy-ELWYQW3B.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/cz.svg → cz-PSDLWGGB.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/de.svg → de-UZ33VXB7.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/dj.svg → dj-6OAOTLZI.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/dk.svg → dk-JMBRHM34.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/dm.svg → dm-VNRMBZBS.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/do.svg → do-BKI25VAP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/dz.svg → dz-5TGC2F6O.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ec.svg → ec-RVY2TDQY.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ee.svg → ee-ESNNK5FI.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/eg.svg → eg-33P6HVEE.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/er.svg → er-24JCI44Y.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/es.svg → es-W6LDJAST.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/et.svg → et-3S4LEFBY.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/fi.svg → fi-S5EH7BG6.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/fj.svg → fj-YBL3EYQL.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/fk.svg → fk-GOTRGUW5.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/fm.svg → fm-W22Q42MJ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/fo.svg → fo-XAEBEWGY.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/fr.svg → fr-ZVO4L2CN.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ga.svg → ga-YVFEOFTR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gb.svg → gb-SC7363TA.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gd.svg → gd-DFU7DED6.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ge.svg → ge-YE7BR7QF.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gf.svg → gf-NI4GFY3X.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gg.svg → gg-7VUU64IM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gh.svg → gh-SZBUUZXW.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gi.svg → gi-CXD7K7GM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gl.svg → gl-PA2YIJP7.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gm.svg → gm-7ZOEQWBQ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gn.svg → gn-MSN2M353.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gp.svg → gp-JP5TO4OX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gq.svg → gq-EYN2DF4Z.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gr.svg → gr-YRG5TXUI.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gs.svg → gs-EDOECKEF.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gt.svg → gt-VFMRVU7E.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gu.svg → gu-AXDHACWU.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gw.svg → gw-F747MFB6.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/gy.svg → gy-C6UGO63R.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/hk.svg → hk-PPVUELHH.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/hn.svg → hn-IXKFBHL3.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/hr.svg → hr-7ORLAYLN.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ht.svg → ht-HCNXZLPJ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/hu.svg → hu-C3DDGX7P.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/id.svg → id-JSWZPKEB.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ie.svg → ie-QFERZM3U.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/il.svg → il-4AZPYABU.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/im.svg → im-TRGBU2MA.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/in.svg → in-QNJVAXMN.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/io.svg → io-ZTEO44HB.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/iq.svg → iq-7FWRTP5Y.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ir.svg → ir-7QU34OGP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/is.svg → is-VFU3W27Q.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/it.svg → it-SGJZRZTG.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/je.svg → je-ASNHCFDM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/jm.svg → jm-WELCOSBK.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/jo.svg → jo-4N4SRXFU.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/jp.svg → jp-IJJOLX65.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ke.svg → ke-ZX6MQKG6.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/kg.svg → kg-RCELGYWY.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/kh.svg → kh-Z4TCRAR5.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ki.svg → ki-4XP6EOEF.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/km.svg → km-UWFN6S3G.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/kn.svg → kn-QZWT5L2Z.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/kp.svg → kp-UEJKAESN.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/kr.svg → kr-37HGZWST.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/kw.svg → kw-DW7MW6JR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ky.svg → ky-UE77ZKNR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/kz.svg → kz-235M425O.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/la.svg → la-RJEPE22E.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/lb.svg → lb-EWVZKLTE.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/lc.svg → lc-SHXL3I23.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/li.svg → li-FRDARPUJ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/lk.svg → lk-24DJYERD.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/lr.svg → lr-NOV6G2QP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ls.svg → ls-DQYSLKA4.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/lt.svg → lt-X5H273BZ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/lu.svg → lu-Y7CETSZZ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/lv.svg → lv-UD2OKAKZ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ly.svg → ly-HXZ3F2PC.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ma.svg → ma-VSPIMR33.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mc.svg → mc-IV2TK64Y.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/md.svg → md-Z2KRCTSL.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/me.svg → me-GJ5HAC7T.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mf.svg → mf-PY7OO34H.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mg.svg → mg-7XGP7WEH.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mh.svg → mh-7N2SSCJ3.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mk.svg → mk-4CGYETXE.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ml.svg → ml-REJ3NIH6.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mm.svg → mm-G72WDHIA.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mn.svg → mn-QUEB3DP2.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mo.svg → mo-7RMY33IW.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mp.svg → mp-QLHHVVHP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mq.svg → mq-S4653T2D.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mr.svg → mr-ZBDE3KJQ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ms.svg → ms-HE6BUCKD.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mt.svg → mt-DUA34F2Z.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mu.svg → mu-ZHDOJ3TI.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mv.svg → mv-6NYHRQLF.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mw.svg → mw-AXRAJH26.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mx.svg → mx-MSPV6RQM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/my.svg → my-AIY7QQBP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/mz.svg → mz-3322L3KQ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/na.svg → na-EASCPZHA.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/nc.svg → nc-JJHA6YCG.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ne.svg → ne-NIQVZJOH.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/nf.svg → nf-6GXJMQE5.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ng.svg → ng-5QXHJYS4.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ni.svg → ni-HNZBL5LK.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/nl.svg → nl-QVISKFUO.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/no.svg → no-JTVUCTCT.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/np.svg → np-UCBDZ5AR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/nr.svg → nr-LG6XA46Y.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/nu.svg → nu-4OUEUAXX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/nz.svg → nz-T2NE6YVO.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/om.svg → om-6JFK3PR4.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pa.svg → pa-AT6O5EL5.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pe.svg → pe-WVRRE6RF.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pf.svg → pf-DLKFAUUG.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pg.svg → pg-R7GWNRSB.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ph.svg → ph-QSRFK225.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pk.svg → pk-FR3SZ2RO.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pl.svg → pl-JSSZW3KY.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pm.svg → pm-HA37R6HR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pn.svg → pn-4N36OSZ7.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pr.svg → pr-NNQH4LK7.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ps.svg → ps-OYLD266F.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pt.svg → pt-EJEEXNOR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/pw.svg → pw-AJH6MUWT.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/py.svg → py-BBGVETQS.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/qa.svg → qa-O6NUQ5WE.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/re.svg → re-UHLBILVM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ro.svg → ro-YBPUPSYC.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/rs.svg → rs-RTTQJKCP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ru.svg → ru-NVSR5C27.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/rw.svg → rw-L6HQTLZM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sa.svg → sa-5NCCG3JM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sb.svg → sb-ESFASP4O.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sc.svg → sc-V2MOTRIU.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sd.svg → sd-ALVTXIOB.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/se.svg → se-3UJAVTP2.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sg.svg → sg-PNK4IWVH.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sh.svg → sh-LSKBPKHJ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/si.svg → si-DU3RWKLO.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sj.svg → sj-EOPZSLCL.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sk.svg → sk-Z5T3FAV3.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sl.svg → sl-DE7XOWOL.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sm.svg → sm-OSI7YZKX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sn.svg → sn-KYWABXNT.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/so.svg → so-TUA5RNVD.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sr.svg → sr-HMODPFV5.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ss.svg → ss-R7O73JRT.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/st.svg → st-NPWJIGHE.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sv.svg → sv-NIXV2SRX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sy.svg → sy-HTLBFL4F.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/sz.svg → sz-FMNXHOEQ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tc.svg → tc-P6VEJX7T.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/td.svg → td-DN372MP5.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tg.svg → tg-5ZT7ZDBZ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/th.svg → th-WAHAQKQK.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tj.svg → tj-MG5ALKXM.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tk.svg → tk-G765JUVP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tl.svg → tl-UF7AWZC6.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tm.svg → tm-LGSUDTBO.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tn.svg → tn-MJPTN7EW.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/to.svg → to-4IPHWATD.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tr.svg → tr-KC7PK4TT.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tt.svg → tt-IVVKXXFH.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tv.svg → tv-HASL2ZPX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tw.svg → tw-Z2QVHLNU.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/tz.svg → tz-FVI6D4BP.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ua.svg → ua-6L6MVDVK.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ug.svg → ug-F73JMZTS.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/us.svg → us-VPPAAERF.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/uy.svg → uy-FJ6XTJUV.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/uz.svg → uz-FR2J6ZTX.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/va.svg → va-ZQHHJQ33.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/vc.svg → vc-F4EKLJYW.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ve.svg → ve-TXPQADML.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/vg.svg → vg-R3B6II5K.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/vi.svg → vi-7RSQ7357.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/vn.svg → vn-BMRRXIMR.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/vu.svg → vu-FZQPUNU3.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/wf.svg → wf-EYVXQET4.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ws.svg → ws-PVUKQ4PE.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/ye.svg → ye-NQNPF5YD.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/yt.svg → yt-TGBAMUTW.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/za.svg → za-HZOQXCXO.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/zm.svg → zm-NM4WJ5NQ.svg} +0 -0
- /package/dist/{lib/components/InputPhone/utils/flags/zw.svg → zw-MIQGG7RP.svg} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1 +1,3231 @@
|
|
|
1
|
-
|
|
1
|
+
import { c as LibColorsHover, ag as CssTextAlign, L as LibColors, a as LibColorsShort, b as LibAllColors, e as LibOverlays, f as LibAllColorsAndOverlays, l as LibSpacers, al as CssAlignContent, aj as CssAlignItems, ak as CssJustifyContent, ai as CssJustifyItems, F as LibMaxWidth, m as LibRadiuses, ao as CssObjectFit, v as LibButtonVariantExtended, k as LibShadows, ah as CssVerticalAlign, ae as DispatchState, a6 as TranslateLang, ab as ReactChildren, q as LibThemeNames, ac as ReactElement, t as LibLoaderVariant } from './global-Bck2LNL3.js';
|
|
2
|
+
export { aw as designTokens } from './global-Bck2LNL3.js';
|
|
3
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
|
+
import { ClassNameValue } from 'tailwind-merge';
|
|
5
|
+
import { MarkdownToJSX } from 'markdown-to-jsx';
|
|
6
|
+
import { LibMdEditorOptions } from './types/components-items-props.js';
|
|
7
|
+
export { addDay, addMonth, addYear, calculateAverage, calculateTotalSum, capitalize, convertDate, convertDateShort, convertPrice, convertToEmail, convertYoutube, deleteDuplicates, detectLanguage, disableScroll, emailRegex, enableScroll, filterObject, formatDate, formatHour, generateNumbers, getFirstName, getInitials, getLastName, getNextDay, getPercentage, getRandom, getRandomAvatar, getRandomDate, getRandomNumber, getRandomString, getRandomTime, getTimeNow, getToday, getTomorrow, getYesterday, hexToRgb, passwordRegex, rgbToHex, scrollToTop, slugify, sortByFrequency, stringifyPx, toCamelCase, toConstantCase, toDotCase, toKebabCase, toPascalCase, toPathCase, toSentenceCase, toSnakeCase, toTitleCase, unslugify, uuid } from '@julseb-lib/utils';
|
|
8
|
+
import * as react from 'react';
|
|
9
|
+
import { RefObject, ChangeEvent, RefCallback, Ref, FC as FC$1 } from 'react';
|
|
10
|
+
import { ILibText, ILibWrapper, ILibMain, ILibAside, ILibSection, ILibGrid, ILibFlexbox, ILibKey, ILibHighlight, ILibLinkify, ILibHr, ILibSkeleton, ILibSkeletonCard, ILibTooltip, ILibImage, ILibMasonry, ILibBadge, ILibAvatar, ILibLoader, ILibBurger, ILibButton, ILibButtonIcon, ILibButtonGroup, ILibTag, ILibInputContainer, ILibInput, ILibInputImage, ILibInputCheck, ILibInputPhone, ILibInputCounter, ILibInputSlider, ILibSelect, ILibAutocomplete, ILibRating, ILibInputPin, ILibFieldset, ILibForm, ILibListGroup, ILibListGroupTitle, ILibListGroupItem, ILibBreadcrumbs, ILibAccordion, ILibAccordionItem, ILibDropdown, ILibDropdownItem, ILibToast, ILibAlert, ILibModal, ILibDragList, ILibDragListItem, ILibPagination, ILibPaginationButton, ILibPaginator, ILibProgressBar, ILibProgressCircle, ILibTabs, ILibTabsContainer, ILibTabsButtonsContainer, ILibTabsButton, ILibTabContent, ILibSlideshow, ILibCover, ILibTable, ILibPageLoading, ILibSticky, ILibMarkdownEditor, ILibMarkdownContainer, ILibCodeContainer, ILibFade, ILibBackToTop, ILibDrawer, ILibHeader, ILibFooter, ILibMeta, ILibPageLayout, ILibSrOnly } from './types/components-props.js';
|
|
11
|
+
import * as react_toastify from 'react-toastify';
|
|
12
|
+
import { ToastContainerProps, ToastOptions } from 'react-toastify';
|
|
13
|
+
import 'csstype';
|
|
14
|
+
import 'fuse.js';
|
|
15
|
+
import 'react-syntax-highlighter';
|
|
16
|
+
import './types/require-at-least-one.js';
|
|
17
|
+
|
|
18
|
+
declare const URL_REGEX: RegExp;
|
|
19
|
+
declare const linkifyText: (text: string, blank?: boolean) => (string | react_jsx_runtime.JSX.Element)[];
|
|
20
|
+
|
|
21
|
+
declare const genLinkColor: Record<LibColorsHover, string>;
|
|
22
|
+
declare const genButtonColor: Record<LibColorsHover, string>;
|
|
23
|
+
|
|
24
|
+
declare const genTextAlign: Record<CssTextAlign, string>;
|
|
25
|
+
|
|
26
|
+
declare const genTextColor: Record<LibColors, string>;
|
|
27
|
+
declare const genTextColorShort: Record<LibColorsShort, string>;
|
|
28
|
+
declare const genTextColorHover: Record<LibColorsHover, string>;
|
|
29
|
+
declare const genTextAllColor: Record<LibAllColors, string>;
|
|
30
|
+
|
|
31
|
+
declare const genBgColor: Record<LibColors, string>;
|
|
32
|
+
declare const genBgColorShort: Record<LibColorsShort, string>;
|
|
33
|
+
declare const genBgColor50: Record<Exclude<LibColorsShort, "black" | "transparent" | "background" | "current">, string>;
|
|
34
|
+
declare const genBgColorHover: Record<LibColorsHover, string>;
|
|
35
|
+
declare const genBgColorGhostHover: Record<LibColorsHover, string>;
|
|
36
|
+
declare const genBgOverlay: Record<LibOverlays, string>;
|
|
37
|
+
declare const genBgAllColors: Record<LibAllColors, string>;
|
|
38
|
+
declare const genBgAllColorsAndOverlays: Record<LibAllColorsAndOverlays, string>;
|
|
39
|
+
|
|
40
|
+
declare const genBorderColor: Record<LibColors, string>;
|
|
41
|
+
declare const genBorderColorShort: Record<LibColorsShort, string>;
|
|
42
|
+
declare const genBorderColorHover: Record<LibColorsHover, string>;
|
|
43
|
+
declare const genBorderAllColors: Record<LibAllColors, string>;
|
|
44
|
+
|
|
45
|
+
declare const genGap: Record<LibSpacers, string>;
|
|
46
|
+
declare const genRowGap: Record<LibSpacers, string>;
|
|
47
|
+
declare const genColGap: Record<LibSpacers, string>;
|
|
48
|
+
|
|
49
|
+
declare const clsx: (...classes: Array<ClassNameValue>) => string;
|
|
50
|
+
|
|
51
|
+
declare const genAlignContent: Record<CssAlignContent, string>;
|
|
52
|
+
declare const genAlignItems: Record<CssAlignItems, string>;
|
|
53
|
+
|
|
54
|
+
declare const genJustifyContent: Record<CssJustifyContent, string>;
|
|
55
|
+
declare const genJustifyItems: Record<CssJustifyItems, string>;
|
|
56
|
+
|
|
57
|
+
declare const genMaxWidth: Record<LibMaxWidth, string>;
|
|
58
|
+
|
|
59
|
+
declare const genBorderRadius: Record<LibRadiuses, string>;
|
|
60
|
+
|
|
61
|
+
declare const genObjectFit: Record<CssObjectFit, string>;
|
|
62
|
+
|
|
63
|
+
declare const genButtonDisabled: Record<LibButtonVariantExtended, string>;
|
|
64
|
+
|
|
65
|
+
declare const genBoxShadow: Record<LibShadows, string>;
|
|
66
|
+
|
|
67
|
+
declare const genVAlign: Record<CssVerticalAlign, string>;
|
|
68
|
+
|
|
69
|
+
declare const libOptionsMarkdown: MarkdownToJSX.Options;
|
|
70
|
+
declare const libMarkdownEditorOptions: LibMdEditorOptions;
|
|
71
|
+
|
|
72
|
+
declare const genRingColor: Record<LibColorsHover, string>;
|
|
73
|
+
declare const genRingColorChildren: Record<LibColorsHover, string>;
|
|
74
|
+
|
|
75
|
+
type Event = MouseEvent | TouchEvent;
|
|
76
|
+
/**
|
|
77
|
+
* Hook to trigger a function when clicking outside a referenced element.
|
|
78
|
+
*
|
|
79
|
+
* @hook
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* const ref = useRef<HTMLDivElement>(null)
|
|
83
|
+
* useClickOutside(ref, () => {
|
|
84
|
+
* console.log('Clicked outside!')
|
|
85
|
+
* setIsOpen(false)
|
|
86
|
+
* })
|
|
87
|
+
*
|
|
88
|
+
* @template T - HTML element type that extends HTMLElement
|
|
89
|
+
* @param {RefObject<T>} ref - React ref object pointing to the target element
|
|
90
|
+
* @param {function} handler - Callback function to execute when clicking outside the element
|
|
91
|
+
* @param {Event} handler.event - The mouse or touch event that triggered the outside click
|
|
92
|
+
*
|
|
93
|
+
* @returns {void} This hook doesn't return anything
|
|
94
|
+
*
|
|
95
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useClickOutside
|
|
96
|
+
*/
|
|
97
|
+
declare const useClickOutside: <T extends HTMLElement = HTMLElement>(ref: RefObject<T>, handler: (event: Event) => void) => void;
|
|
98
|
+
|
|
99
|
+
type CopiedValue = string | null;
|
|
100
|
+
type CopyFn = (text: string) => Promise<boolean>;
|
|
101
|
+
/**
|
|
102
|
+
* Hook to copy text to clipboard and track the copied value state.
|
|
103
|
+
*
|
|
104
|
+
* @hook
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* const [copiedText, copy] = useCopyToClipboard()
|
|
108
|
+
*
|
|
109
|
+
* const handleCopy = async () => {
|
|
110
|
+
* const success = await copy('Hello, World!')
|
|
111
|
+
* if (success) {
|
|
112
|
+
* console.log('Copied:', copiedText)
|
|
113
|
+
* }
|
|
114
|
+
* }
|
|
115
|
+
*
|
|
116
|
+
* @returns {[CopiedValue, CopyFn]} Array containing the last copied text and copy function
|
|
117
|
+
* @returns {string | null} returns[0] - The last successfully copied text, or null if no text copied or copy failed
|
|
118
|
+
* @returns {function} returns[1] - Async function to copy text to clipboard
|
|
119
|
+
* @returns {string} returns[1].text - Text to copy to clipboard
|
|
120
|
+
* @returns {Promise<boolean>} returns[1].Promise - Promise that resolves to true if copy succeeded, false otherwise
|
|
121
|
+
*
|
|
122
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useCopyToClipboard
|
|
123
|
+
*/
|
|
124
|
+
declare const useCopyToClipboard: () => [CopiedValue, CopyFn];
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Hook to delay the update of a value until after a specified delay period has passed without changes.
|
|
128
|
+
*
|
|
129
|
+
* @hook
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* const [searchTerm, setSearchTerm] = useState('')
|
|
133
|
+
* const debouncedSearchTerm = useDebounce(searchTerm, 500)
|
|
134
|
+
*
|
|
135
|
+
* useEffect(() => {
|
|
136
|
+
* if (debouncedSearchTerm) {
|
|
137
|
+
* // Perform search API call
|
|
138
|
+
* searchAPI(debouncedSearchTerm)
|
|
139
|
+
* }
|
|
140
|
+
* }, [debouncedSearchTerm])
|
|
141
|
+
*
|
|
142
|
+
* @template T - Type of the value being debounced
|
|
143
|
+
* @param {T} value - The value to debounce
|
|
144
|
+
* @param {number} [delay=1000] - Delay in milliseconds before updating the debounced value
|
|
145
|
+
*
|
|
146
|
+
* @returns {T} The debounced value that updates after the delay period
|
|
147
|
+
*
|
|
148
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useDebounce
|
|
149
|
+
*/
|
|
150
|
+
declare const useDebounce: <T>(value: T, delay?: number) => T;
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Hook to export data to JSON or CSV format with automatic file download functionality.
|
|
154
|
+
*
|
|
155
|
+
* @hook
|
|
156
|
+
*
|
|
157
|
+
* @example
|
|
158
|
+
* const { exportToJson, exportToCsv } = useExportData()
|
|
159
|
+
*
|
|
160
|
+
* // Export to JSON
|
|
161
|
+
* const users = [{ id: 1, name: 'John' }, { id: 2, name: 'Jane' }]
|
|
162
|
+
* exportToJson(users, 'users-data')
|
|
163
|
+
*
|
|
164
|
+
* // Export to CSV
|
|
165
|
+
* const headers = ['ID', 'Name']
|
|
166
|
+
* exportToCsv(users, 'users-data', headers)
|
|
167
|
+
*
|
|
168
|
+
* @template T - Type of the data objects being exported
|
|
169
|
+
*
|
|
170
|
+
* @returns {object} Object containing export functions
|
|
171
|
+
* @returns {function} returns.exportToJson - Function to export data as JSON file
|
|
172
|
+
* @returns {Array<T>} returns.exportToJson.data - Array of data objects to export
|
|
173
|
+
* @returns {string} returns.exportToJson.fileName - Name for the downloaded file (without extension)
|
|
174
|
+
* @returns {function} returns.exportToCsv - Function to export data as CSV file
|
|
175
|
+
* @returns {Array<T>} returns.exportToCsv.data - Array of data objects to export
|
|
176
|
+
* @returns {string} returns.exportToCsv.fileName - Name for the downloaded file (without extension)
|
|
177
|
+
* @returns {Array<string>} returns.exportToCsv.headers - Array of column headers for the CSV file
|
|
178
|
+
*
|
|
179
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useExportData
|
|
180
|
+
*/
|
|
181
|
+
declare const useExportData: <T>() => {
|
|
182
|
+
exportToCsv: (data: Array<T>, fileName: string, headers: Array<string>) => void;
|
|
183
|
+
exportToJson: (data: Array<T>, fileName: string) => void;
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* Hook to fetch data from a Promise with loading and error state management.
|
|
188
|
+
*
|
|
189
|
+
* @hook
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* const { response, error, loading } = useFetch(
|
|
193
|
+
* fetch('/api/users').then(res => res.json()),
|
|
194
|
+
* [userId]
|
|
195
|
+
* )
|
|
196
|
+
*
|
|
197
|
+
* if (loading) return <div>Loading...</div>
|
|
198
|
+
* if (error) return <div>Error: {error.message}</div>
|
|
199
|
+
* return <div>{response?.name}</div>
|
|
200
|
+
*
|
|
201
|
+
* @template T - Type of the data returned by the fetch function
|
|
202
|
+
* @param {Promise<T>} fetchFunction - Promise that resolves to the data to be fetched
|
|
203
|
+
* @param {any} [dependencies] - Dependency array to trigger re-fetching when values change
|
|
204
|
+
*
|
|
205
|
+
* @returns {object} Object containing fetch state
|
|
206
|
+
* @returns {T | null} returns.response - The fetched data, or null if not yet loaded or failed
|
|
207
|
+
* @returns {any} returns.error - Error object if the fetch failed, undefined otherwise
|
|
208
|
+
* @returns {boolean} returns.loading - Whether the fetch operation is currently in progress
|
|
209
|
+
*
|
|
210
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useFetch
|
|
211
|
+
*/
|
|
212
|
+
declare const useFetch: <T>(fetchFunction: Promise<T>, dependencies?: any) => {
|
|
213
|
+
readonly response: T | null;
|
|
214
|
+
readonly error: any;
|
|
215
|
+
readonly loading: boolean;
|
|
216
|
+
};
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Hook to manage form state with input handling, validation, and submission functionality.
|
|
220
|
+
*
|
|
221
|
+
* @hook
|
|
222
|
+
*
|
|
223
|
+
* @example
|
|
224
|
+
* interface FormData {
|
|
225
|
+
* email: string
|
|
226
|
+
* password: string
|
|
227
|
+
* }
|
|
228
|
+
*
|
|
229
|
+
* const { formData, handleInputs, resetForm, handleSubmit } = useForm<FormData>(
|
|
230
|
+
* { email: '', password: '' },
|
|
231
|
+
* (data) => console.log('Form submitted:', data)
|
|
232
|
+
* )
|
|
233
|
+
*
|
|
234
|
+
* @template T - Type of the form data object
|
|
235
|
+
* @param {T} [initialState={}] - Initial state of the form data
|
|
236
|
+
* @param {function} [onSubmit] - Optional callback function called on form submission
|
|
237
|
+
* @param {T} onSubmit.formData - The current form data when submitted
|
|
238
|
+
*
|
|
239
|
+
* @returns {object} Object containing form state and handlers
|
|
240
|
+
* @returns {T} returns.formData - Current form data state
|
|
241
|
+
* @returns {function} returns.handleInputs - Function to handle input changes
|
|
242
|
+
* @returns {ChangeEvent<HTMLInputElement>} returns.handleInputs.e - Input change event
|
|
243
|
+
* @returns {function} returns.resetForm - Function to reset form to initial state
|
|
244
|
+
* @returns {function} returns.handleSubmit - Function to handle form submission
|
|
245
|
+
* @returns {ChangeEvent<HTMLFormElement>} returns.handleSubmit.e - Form submit event
|
|
246
|
+
*
|
|
247
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useForm
|
|
248
|
+
*/
|
|
249
|
+
declare const useForm: <T>(initialState?: T, onSubmit?: (formData: T) => void) => {
|
|
250
|
+
formData: T;
|
|
251
|
+
handleInputs: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
252
|
+
resetForm: () => void;
|
|
253
|
+
handleSubmit: (e: ChangeEvent<HTMLFormElement>) => void;
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* Hook to detect if an element is overflowing its container bounds with optional callback functionality.
|
|
258
|
+
*
|
|
259
|
+
* @hook
|
|
260
|
+
*
|
|
261
|
+
* @example
|
|
262
|
+
* const ref = useRef<HTMLDivElement>(null)
|
|
263
|
+
* const isOverflow = useIsOverflow(ref, {
|
|
264
|
+
* callback: (overflow) => console.log('Overflow detected:', overflow),
|
|
265
|
+
* check: 'width'
|
|
266
|
+
* })
|
|
267
|
+
*
|
|
268
|
+
* if (isOverflow) {
|
|
269
|
+
* // Handle overflow state
|
|
270
|
+
* }
|
|
271
|
+
*
|
|
272
|
+
* @param {RefObject<HTMLElement>} ref - React ref object pointing to the element to check for overflow
|
|
273
|
+
* @param {object} [options] - Configuration options for overflow detection
|
|
274
|
+
* @param {RefCallback<boolean>} [options.callback] - Callback function called when overflow state changes
|
|
275
|
+
* @param {"width" | "height"} [options.check="width"] - Which dimension to check for overflow
|
|
276
|
+
*
|
|
277
|
+
* @returns {boolean | undefined} Whether the element is overflowing, or undefined if not yet determined
|
|
278
|
+
*
|
|
279
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useIsOverflow
|
|
280
|
+
*/
|
|
281
|
+
declare const useIsOverflow: (ref: RefObject<HTMLElement>, options?: {
|
|
282
|
+
callback: RefCallback<boolean>;
|
|
283
|
+
check?: "width" | "height";
|
|
284
|
+
}) => boolean | undefined;
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Hook to trigger functions on specific key press events with support for modifier keys and exclusions.
|
|
288
|
+
*
|
|
289
|
+
* @hook
|
|
290
|
+
*
|
|
291
|
+
* @example
|
|
292
|
+
* // Single key press
|
|
293
|
+
* useKeyPress('Escape', () => setIsOpen(false))
|
|
294
|
+
*
|
|
295
|
+
* // Modifier key combination
|
|
296
|
+
* useKeyPress(['Control', 'KeyS'], () => saveDocument())
|
|
297
|
+
*
|
|
298
|
+
* // With excluded keys
|
|
299
|
+
* useKeyPress('Enter', handleSubmit, ['Shift'])
|
|
300
|
+
*
|
|
301
|
+
* @param {string | Array<string>} keyCodes - Single key code or array of key codes for combinations
|
|
302
|
+
* @param {function} callback - Function to execute when the key combination is pressed
|
|
303
|
+
* @param {Array<string>} [excludeKeys] - Array of modifier keys to exclude from triggering the callback
|
|
304
|
+
*
|
|
305
|
+
* @returns {void} This hook doesn't return anything
|
|
306
|
+
*
|
|
307
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useKeyPress
|
|
308
|
+
*/
|
|
309
|
+
declare const useKeyPress: (keyCodes: string | Array<string>, callback: () => void, excludeKeys?: Array<string>) => void;
|
|
310
|
+
|
|
311
|
+
/**
|
|
312
|
+
* Hook to detect if the viewport width is smaller than or equal to a specified width breakpoint.
|
|
313
|
+
*
|
|
314
|
+
* @hook
|
|
315
|
+
*
|
|
316
|
+
* @example
|
|
317
|
+
* const isMobile = useMaxWidth(768)
|
|
318
|
+
* const isTablet = useMaxWidth(1024)
|
|
319
|
+
*
|
|
320
|
+
* if (isMobile) {
|
|
321
|
+
* // Render mobile layout
|
|
322
|
+
* }
|
|
323
|
+
*
|
|
324
|
+
* @param {number} width - The maximum width breakpoint to check against
|
|
325
|
+
*
|
|
326
|
+
* @returns {boolean} Whether the current viewport width is smaller than or equal to the specified width
|
|
327
|
+
*
|
|
328
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useMaxWidth
|
|
329
|
+
*/
|
|
330
|
+
declare const useMaxWidth: (width: number) => boolean;
|
|
331
|
+
|
|
332
|
+
/**
|
|
333
|
+
* Hook to merge multiple refs into a single ref callback for use on a single element.
|
|
334
|
+
*
|
|
335
|
+
* @hook
|
|
336
|
+
*
|
|
337
|
+
* @example
|
|
338
|
+
* const ref1 = useRef<HTMLDivElement>(null)
|
|
339
|
+
* const ref2 = useRef<HTMLDivElement>(null)
|
|
340
|
+
* const mergedRef = useMergeRefs([ref1, ref2])
|
|
341
|
+
*
|
|
342
|
+
* return <div ref={mergedRef}>Content</div>
|
|
343
|
+
*
|
|
344
|
+
* @template Instance - Type of the element instance being referenced
|
|
345
|
+
* @param {Array<Ref<Instance> | undefined>} refs - Array of refs to merge together
|
|
346
|
+
*
|
|
347
|
+
* @returns {RefCallback<Instance> | null} Merged ref callback or null if all refs are null/undefined
|
|
348
|
+
*
|
|
349
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useMergeRefs
|
|
350
|
+
*/
|
|
351
|
+
declare const useMergeRefs: <Instance>(refs: Array<Ref<Instance> | undefined>) => RefCallback<Instance> | null;
|
|
352
|
+
|
|
353
|
+
/**
|
|
354
|
+
* Hook to detect if the viewport width is greater than or equal to a specified width breakpoint.
|
|
355
|
+
*
|
|
356
|
+
* @hook
|
|
357
|
+
*
|
|
358
|
+
* @example
|
|
359
|
+
* const isDesktop = useMinWidth(1024)
|
|
360
|
+
* const isTablet = useMinWidth(768)
|
|
361
|
+
*
|
|
362
|
+
* if (isDesktop) {
|
|
363
|
+
* // Render desktop layout
|
|
364
|
+
* }
|
|
365
|
+
*
|
|
366
|
+
* @param {number} width - The minimum width breakpoint to check against
|
|
367
|
+
*
|
|
368
|
+
* @returns {boolean} Whether the current viewport width is greater than or equal to the specified width
|
|
369
|
+
*
|
|
370
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useMinWidth
|
|
371
|
+
*/
|
|
372
|
+
declare const useMinWidth: (width: number) => boolean;
|
|
373
|
+
|
|
374
|
+
interface IUsePaginatedData<T> {
|
|
375
|
+
paginatedData: Array<T>;
|
|
376
|
+
totalPages: number;
|
|
377
|
+
}
|
|
378
|
+
/**
|
|
379
|
+
* Hook to paginate data with URL parameter integration for use with Pagination or Paginator components.
|
|
380
|
+
*
|
|
381
|
+
* @hook
|
|
382
|
+
*
|
|
383
|
+
* @example
|
|
384
|
+
* const users = [{ id: 1, name: 'John' }, { id: 2, name: 'Jane' }, ...]
|
|
385
|
+
* const { paginatedData, totalPages } = usePaginatedData(users, 1, 10)
|
|
386
|
+
*
|
|
387
|
+
* return (
|
|
388
|
+
* <div>
|
|
389
|
+
* {paginatedData.map(user => <UserCard key={user.id} user={user} />)}
|
|
390
|
+
* <Pagination totalPages={totalPages} />
|
|
391
|
+
* </div>
|
|
392
|
+
* )
|
|
393
|
+
*
|
|
394
|
+
* @template T - Type of the data items being paginated
|
|
395
|
+
* @param {Array<T>} data - Array of data to paginate
|
|
396
|
+
* @param {number} page - Current page number (1-indexed)
|
|
397
|
+
* @param {number} [defaultLimit=20] - Number of items per page
|
|
398
|
+
*
|
|
399
|
+
* @returns {object} Object containing paginated data and pagination info
|
|
400
|
+
* @returns {Array<T>} returns.paginatedData - Current page's data items
|
|
401
|
+
* @returns {number} returns.totalPages - Total number of pages based on data length and limit
|
|
402
|
+
*
|
|
403
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#usePaginatedData
|
|
404
|
+
*/
|
|
405
|
+
declare const usePaginatedData: <T>(data: Array<T>, page: number, defaultLimit?: number) => IUsePaginatedData<T>;
|
|
406
|
+
|
|
407
|
+
interface ILibUsePaginationNavigation {
|
|
408
|
+
currentPage: number;
|
|
409
|
+
setCurrentPage: DispatchState<number>;
|
|
410
|
+
totalPages?: number;
|
|
411
|
+
}
|
|
412
|
+
/**
|
|
413
|
+
* Hook to manage pagination navigation with URL parameter integration and automatic scrolling.
|
|
414
|
+
*
|
|
415
|
+
* @hook
|
|
416
|
+
*
|
|
417
|
+
* @example
|
|
418
|
+
* const [currentPage, setCurrentPage] = useState(1)
|
|
419
|
+
* const { handlePrev, handleNext, handlePage } = usePagination({
|
|
420
|
+
* currentPage,
|
|
421
|
+
* setCurrentPage,
|
|
422
|
+
* totalPages: 10
|
|
423
|
+
* })
|
|
424
|
+
*
|
|
425
|
+
* return (
|
|
426
|
+
* <div>
|
|
427
|
+
* <button onClick={handlePrev}>Previous</button>
|
|
428
|
+
* <button onClick={() => handlePage(5)}>Go to page 5</button>
|
|
429
|
+
* <button onClick={handleNext}>Next</button>
|
|
430
|
+
* </div>
|
|
431
|
+
* )
|
|
432
|
+
*
|
|
433
|
+
* @param {object} params - Configuration object for pagination
|
|
434
|
+
* @param {number} params.currentPage - Current active page number
|
|
435
|
+
* @param {DispatchState<number>} params.setCurrentPage - State setter function for current page
|
|
436
|
+
* @param {number} [params.totalPages] - Total number of pages available
|
|
437
|
+
*
|
|
438
|
+
* @returns {object} Object containing pagination navigation functions
|
|
439
|
+
* @returns {function} returns.handlePrev - Function to navigate to the previous page
|
|
440
|
+
* @returns {function} returns.handleNext - Function to navigate to the next page
|
|
441
|
+
* @returns {function} returns.handlePage - Function to navigate to a specific page number
|
|
442
|
+
* @returns {number} returns.handlePage.n - Page number to navigate to
|
|
443
|
+
*
|
|
444
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#usePagination
|
|
445
|
+
*/
|
|
446
|
+
declare const usePagination: ({ currentPage, setCurrentPage, totalPages, }: ILibUsePaginationNavigation) => {
|
|
447
|
+
handlePrev: () => void;
|
|
448
|
+
handleNext: () => void;
|
|
449
|
+
handlePage: (n: number) => void;
|
|
450
|
+
};
|
|
451
|
+
|
|
452
|
+
/**
|
|
453
|
+
* Hook to detect if the current device supports touch screen interaction.
|
|
454
|
+
*
|
|
455
|
+
* @hook
|
|
456
|
+
*
|
|
457
|
+
* @example
|
|
458
|
+
* const isTouchScreen = useTouchScreen()
|
|
459
|
+
*
|
|
460
|
+
* if (isTouchScreen) {
|
|
461
|
+
* // Render touch-optimized UI
|
|
462
|
+
* return <TouchOptimizedComponent />
|
|
463
|
+
* }
|
|
464
|
+
*
|
|
465
|
+
* return <DesktopComponent />
|
|
466
|
+
*
|
|
467
|
+
* @returns {boolean} Whether the current device supports touch screen interaction
|
|
468
|
+
*
|
|
469
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useTouchScreen
|
|
470
|
+
*/
|
|
471
|
+
declare const useTouchScreen: () => boolean;
|
|
472
|
+
|
|
473
|
+
/**
|
|
474
|
+
* Hook to detect the language and return translated content with language switching functionality.
|
|
475
|
+
*
|
|
476
|
+
* @hook
|
|
477
|
+
*
|
|
478
|
+
* @example
|
|
479
|
+
* const translations = {
|
|
480
|
+
* en: { greeting: 'Hello', goodbye: 'Goodbye' },
|
|
481
|
+
* fr: { greeting: 'Bonjour', goodbye: 'Au revoir' },
|
|
482
|
+
* es: { greeting: 'Hola', goodbye: 'Adiós' }
|
|
483
|
+
* }
|
|
484
|
+
*
|
|
485
|
+
* const { translate, setLanguage, language, languages } = useTranslation(translations)
|
|
486
|
+
*
|
|
487
|
+
* return (
|
|
488
|
+
* <div>
|
|
489
|
+
* <p>{translate('greeting')}</p>
|
|
490
|
+
* <button onClick={() => setLanguage('fr')}>Switch to French</button>
|
|
491
|
+
* </div>
|
|
492
|
+
* )
|
|
493
|
+
*
|
|
494
|
+
* @param {TranslateLang} translations - Object containing translations for each language
|
|
495
|
+
* @param {object} translations[language] - Translation object for a specific language
|
|
496
|
+
* @param {string} translations[language][key] - Translated string for a specific key
|
|
497
|
+
*
|
|
498
|
+
* @returns {object} Object containing translation utilities
|
|
499
|
+
* @returns {function} returns.translate - Function to get translated text for a given key
|
|
500
|
+
* @returns {string} returns.translate.key - Translation key to look up
|
|
501
|
+
* @returns {function} returns.setLanguage - Function to change the current language
|
|
502
|
+
* @returns {string} returns.setLanguage.lang - Language code to switch to
|
|
503
|
+
* @returns {string} returns.language - Current active language code
|
|
504
|
+
* @returns {Array<string>} returns.languages - Array of available language codes
|
|
505
|
+
*
|
|
506
|
+
* @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useTranslation
|
|
507
|
+
*/
|
|
508
|
+
declare const useTranslation: (translations: TranslateLang) => {
|
|
509
|
+
translate: (key: string) => string;
|
|
510
|
+
setLanguage: react.Dispatch<react.SetStateAction<string>>;
|
|
511
|
+
language: string;
|
|
512
|
+
languages: string[];
|
|
513
|
+
};
|
|
514
|
+
|
|
515
|
+
declare enum COLORS {
|
|
516
|
+
/** #EFF6FF */ PRIMARY_50 = "var(--color-primary-50)",
|
|
517
|
+
/** #DBEAFE */ PRIMARY_100 = "var(--color-primary-100)",
|
|
518
|
+
/** #BFDBFE */ PRIMARY_200 = "var(--color-primary-200)",
|
|
519
|
+
/** #93C5FD */ PRIMARY_300 = "var(--color-primary-300)",
|
|
520
|
+
/** #60A5FA */ PRIMARY_400 = "var(--color-primary-400)",
|
|
521
|
+
/** #3B82F6 */ PRIMARY_500 = "var(--color-primary-500)",
|
|
522
|
+
/** #2563EB */ PRIMARY_600 = "var(--color-primary-600)",
|
|
523
|
+
/** #1D4ED8 */ PRIMARY_700 = "var(--color-primary-700)",
|
|
524
|
+
/** #1E40AF */ PRIMARY_800 = "var(--color-primary-800)",
|
|
525
|
+
/** #1E3A8A */ PRIMARY_900 = "var(--color-primary-900)",
|
|
526
|
+
/** #172554 */ PRIMARY_950 = "var(--color-primary-950)",
|
|
527
|
+
/** #ECFEFF */ SECONDARY_50 = "var(--color-secondary-50)",
|
|
528
|
+
/** #CFFAFE */ SECONDARY_100 = "var(--color-secondary-100)",
|
|
529
|
+
/** #A5F3FC */ SECONDARY_200 = "var(--color-secondary-200)",
|
|
530
|
+
/** #67E8F9 */ SECONDARY_300 = "var(--color-secondary-300)",
|
|
531
|
+
/** #22D3EE */ SECONDARY_400 = "var(--color-secondary-400)",
|
|
532
|
+
/** #06B6D4 */ SECONDARY_500 = "var(--color-secondary-500)",
|
|
533
|
+
/** #0891B2 */ SECONDARY_600 = "var(--color-secondary-600)",
|
|
534
|
+
/** #0E7490 */ SECONDARY_700 = "var(--color-secondary-700)",
|
|
535
|
+
/** #155E75 */ SECONDARY_800 = "var(--color-secondary-800)",
|
|
536
|
+
/** #164E63 */ SECONDARY_900 = "var(--color-secondary-900)",
|
|
537
|
+
/** #083344 */ SECONDARY_950 = "var(--color-secondary-950)",
|
|
538
|
+
/** #F0FDF4 */ SUCCESS_50 = "var(--color-success-50)",
|
|
539
|
+
/** #DCFCE7 */ SUCCESS_100 = "var(--color-success-100)",
|
|
540
|
+
/** #BBF7D0 */ SUCCESS_200 = "var(--color-success-200)",
|
|
541
|
+
/** #86EFAC */ SUCCESS_300 = "var(--color-success-300)",
|
|
542
|
+
/** #4ADE80 */ SUCCESS_400 = "var(--color-success-400)",
|
|
543
|
+
/** #22C55E */ SUCCESS_500 = "var(--color-success-500)",
|
|
544
|
+
/** #16A34A */ SUCCESS_600 = "var(--color-success-600)",
|
|
545
|
+
/** #15803D */ SUCCESS_700 = "var(--color-success-700)",
|
|
546
|
+
/** #166534 */ SUCCESS_800 = "var(--color-success-800)",
|
|
547
|
+
/** #14532D */ SUCCESS_900 = "var(--color-success-900)",
|
|
548
|
+
/** #052E16 */ SUCCESS_950 = "var(--color-success-950)",
|
|
549
|
+
/** #FEF2F2 */ DANGER_50 = "var(--color-danger-50)",
|
|
550
|
+
/** #FEE2E2 */ DANGER_100 = "var(--color-danger-100)",
|
|
551
|
+
/** #FECACA */ DANGER_200 = "var(--color-danger-200)",
|
|
552
|
+
/** #FCA5A5 */ DANGER_300 = "var(--color-danger-300)",
|
|
553
|
+
/** #F87171 */ DANGER_400 = "var(--color-danger-400)",
|
|
554
|
+
/** #EF4444 */ DANGER_500 = "var(--color-danger-500)",
|
|
555
|
+
/** #DC2626 */ DANGER_600 = "var(--color-danger-600)",
|
|
556
|
+
/** #B91C1C */ DANGER_700 = "var(--color-danger-700)",
|
|
557
|
+
/** #991B1B */ DANGER_800 = "var(--color-danger-800)",
|
|
558
|
+
/** #7F1D1D */ DANGER_900 = "var(--color-danger-900)",
|
|
559
|
+
/** #450A0A */ DANGER_950 = "var(--color-danger-950)",
|
|
560
|
+
/** #FFFBEB */ WARNING_50 = "var(--color-warning-50)",
|
|
561
|
+
/** #FEF3C7 */ WARNING_100 = "var(--color-warning-100)",
|
|
562
|
+
/** #FDE68A */ WARNING_200 = "var(--color-warning-200)",
|
|
563
|
+
/** #FCD34D */ WARNING_300 = "var(--color-warning-300)",
|
|
564
|
+
/** #FBBF24 */ WARNING_400 = "var(--color-warning-400)",
|
|
565
|
+
/** #F59E0B */ WARNING_500 = "var(--color-warning-500)",
|
|
566
|
+
/** #D97706 */ WARNING_600 = "var(--color-warning-600)",
|
|
567
|
+
/** #B45309 */ WARNING_700 = "var(--color-warning-700)",
|
|
568
|
+
/** #92400E */ WARNING_800 = "var(--color-warning-800)",
|
|
569
|
+
/** #78350F */ WARNING_900 = "var(--color-warning-900)",
|
|
570
|
+
/** #451A03 */ WARNING_950 = "var(--color-warning-950)",
|
|
571
|
+
/** #FAFAFA */ GRAY_50 = "var(--color-gray-50)",
|
|
572
|
+
/** #F5F5F5 */ GRAY_100 = "var(--color-gray-100)",
|
|
573
|
+
/** #E5E5E5 */ GRAY_200 = "var(--color-gray-200)",
|
|
574
|
+
/** #D4D4D4 */ GRAY_300 = "var(--color-gray-300)",
|
|
575
|
+
/** #A3A3A3 */ GRAY_400 = "var(--color-gray-400)",
|
|
576
|
+
/** #737373 */ GRAY_500 = "var(--color-gray-500)",
|
|
577
|
+
/** #525252 */ GRAY_600 = "var(--color-gray-600)",
|
|
578
|
+
/** #404040 */ GRAY_700 = "var(--color-gray-700)",
|
|
579
|
+
/** #262626 */ GRAY_800 = "var(--color-gray-800)",
|
|
580
|
+
/** #171717 */ GRAY_900 = "var(--color-gray-900)",
|
|
581
|
+
/** #0A0A0A */ GRAY_950 = "var(--color-gray-950)",
|
|
582
|
+
/** #000000 */ BLACK = "var(--color-black)",
|
|
583
|
+
/** #FFFFFF */ WHITE = "var(--color-white)",
|
|
584
|
+
TRANSPARENT = "transparent",
|
|
585
|
+
CURRENT_COLOR = "currentColor"
|
|
586
|
+
}
|
|
587
|
+
declare enum OVERLAYS {
|
|
588
|
+
/** rgba(0, 0, 0, 0.5) */ BLACK_50 = "var(--color-overlay-black-50)",
|
|
589
|
+
/** rgba(0, 0, 0, 0.8) */ BLACK_80 = "var(--color-overlay-black-80)",
|
|
590
|
+
/** rgba(255, 255, 255, 0.5) */ WHITE_50 = "var(--color-overlay-white-50)",
|
|
591
|
+
/** rgba(69, 35, 35, 0.8) */ WHITE_80 = "var(--color-overlay-white-80)",
|
|
592
|
+
/** linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.56) 100%) */ GRADIENT_BLACK = "var(--color-overlay-gradient-black)",
|
|
593
|
+
/** linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(255, 255, 255, 0.35) 100%) */ GRADIENT_WHITE = "var(--color-overlay-gradient-white)"
|
|
594
|
+
}
|
|
595
|
+
declare enum FONT_FAMILIES {
|
|
596
|
+
/** Primary font family for body text */ SANS = "var(--font-sans)",
|
|
597
|
+
/** Font family for code and monospaced text */ MONO = "var(--font-mono)"
|
|
598
|
+
}
|
|
599
|
+
declare enum FONT_SIZES {
|
|
600
|
+
/** 5rem */ DISPLAY_H1 = "var(--text-display-h1)",
|
|
601
|
+
/** 4rem */ DISPLAY_H2 = "var(--text-display-h2)",
|
|
602
|
+
/** 3.5rem */ DISPLAY_H3 = "var(--text-display-h3)",
|
|
603
|
+
/** 3rem */ DISPLAY_H4 = "var(--text-display-h4)",
|
|
604
|
+
/** 2.5rem */ DISPLAY_H5 = "var(--text-display-h5)",
|
|
605
|
+
/** 2.5rem */ H1 = "var(--text-h1)",
|
|
606
|
+
/** 2rem */ H2 = "var(--text-h2)",
|
|
607
|
+
/** 1.8rem */ H3 = "var(--text-h3)",
|
|
608
|
+
/** 1.5rem */ H4 = "var(--text-h4)",
|
|
609
|
+
/** 1.3rem */ H5 = "var(--text-h5)",
|
|
610
|
+
/** 1.1rem */ H6 = "var(--text-h6)",
|
|
611
|
+
/** 1rem */ BODY = "var(--text-body)",
|
|
612
|
+
/** 0.875rem */ SMALL = "var(--text-small)"
|
|
613
|
+
}
|
|
614
|
+
declare enum FONT_WEIGHTS {
|
|
615
|
+
/** 100 */ THIN = "var(--font-weight-thin)",
|
|
616
|
+
/** 200 */ EXTRA_LIGHT = "var(--font-weight-extralight)",
|
|
617
|
+
/** 300 */ LIGHT = "var(--font-weight-light)",
|
|
618
|
+
/** 400 */ NORMAL = "var(--font-weight-normal)",
|
|
619
|
+
/** 500 */ MEDIUM = "var(--font-weight-medium)",
|
|
620
|
+
/** 600 */ SEMI_BOLD = "var(--font-weight-semibold)",
|
|
621
|
+
/** 700 */ BOLD = "var(--font-weight-bold)",
|
|
622
|
+
/** 800 */ EXTRA_BOLD = "var(--font-weight-extrabold)",
|
|
623
|
+
/** 900 */ BLACK = "var(--font-weight-black)"
|
|
624
|
+
}
|
|
625
|
+
declare enum LINE_HEIGHTS {
|
|
626
|
+
/** 1 */ NONE = "var(--line-height-none)",
|
|
627
|
+
/** 1.25 */ TIGHT = "var(--line-height-tight)",
|
|
628
|
+
/** 1.375 */ SNUG = "var(--line-height-snug)",
|
|
629
|
+
/** 1.5 */ NORMAL = "var(--line-height-normal)",
|
|
630
|
+
/** 1.625 */ RELAXED = "var(--line-height-relaxed)",
|
|
631
|
+
/** 2 */ LOOSE = "var(--line-height-loose)",
|
|
632
|
+
/** 0.75rem (12px) */ _3 = "var(--line-height-3)",
|
|
633
|
+
/** 1rem (16px) */ _4 = "var(--line-height-4)",
|
|
634
|
+
/** 1.25rem (20px) */ _5 = "var(--line-height-5)",
|
|
635
|
+
/** 1.5rem (24px) */ _6 = "var(--line-height-6)",
|
|
636
|
+
/** 1.75rem (28px) */ _7 = "var(--line-height-7)",
|
|
637
|
+
/** 2rem (32px) */ _8 = "var(--line-height-8)",
|
|
638
|
+
/** 2.25rem (36px) */ _9 = "var(--line-height-9)",
|
|
639
|
+
/** 2.5rem (40px) */ _10 = "var(--line-height-10)"
|
|
640
|
+
}
|
|
641
|
+
declare enum SHADOWS {
|
|
642
|
+
/** 0 1px 2px 0 rgba(0, 0, 0, 0.05) */ "2XS" = "var(--shadow-2xs)",
|
|
643
|
+
/** 0 1px 2px 0 rgba(0, 0, 0, 0.05) */ XS = "var(--shadow-xs)",
|
|
644
|
+
/** 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06) */ SM = "var(--shadow-sm)",
|
|
645
|
+
/** 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06) */ MD = "var(--shadow-md)",
|
|
646
|
+
/** 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) */ LG = "var(--shadow-lg)",
|
|
647
|
+
/** 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04) */ XL = "var(--shadow-xl)",
|
|
648
|
+
/** 0 25px 50px -12px rgba(0, 0, 0, 0.25) */ "2XL" = "var(--shadow-2xl)",
|
|
649
|
+
/** inset 0 2px 4px 0 rgb(0 0 0 / 0.06) */ INNER = "var(--shadow-inner)",
|
|
650
|
+
/** none */ NONE = "var(--shadow-none)"
|
|
651
|
+
}
|
|
652
|
+
declare enum INSET_SHADOWS {
|
|
653
|
+
}
|
|
654
|
+
declare enum DROP_SHADOWS {
|
|
655
|
+
}
|
|
656
|
+
declare enum TEXT_SHADOWS {
|
|
657
|
+
}
|
|
658
|
+
declare enum SPACERS {
|
|
659
|
+
/** 48px */ "2XL" = "var(--spacer-2xl)",
|
|
660
|
+
/** 32px */ XL = "var(--spacer-xl)",
|
|
661
|
+
/** 24px */ LG = "var(--spacer-lg)",
|
|
662
|
+
/** 16px */ MD = "var(--spacer-md)",
|
|
663
|
+
/** 12px */ SM = "var(--spacer-sm)",
|
|
664
|
+
/** 8px */ XS = "var(--spacer-xs)",
|
|
665
|
+
/** 4px */ "2XS" = "var(--spacer-2xs)"
|
|
666
|
+
}
|
|
667
|
+
declare enum RADIUS {
|
|
668
|
+
/** 0px */ NONE = "var(--radius-none)",
|
|
669
|
+
/** */ XS = "var(--radius-xs)",
|
|
670
|
+
/** 0.125rem (2px) */ SM = "var(--radius-sm)",
|
|
671
|
+
/** 0.25rem (4px) */ DEFAULT = "var(--radius)",
|
|
672
|
+
/** 0.375rem (6px) */ MD = "var(--radius-md)",
|
|
673
|
+
/** 0.5rem (8px) */ LG = "var(--radius-lg)",
|
|
674
|
+
/** 0.75rem (12px) */ XL = "var(--radius-xl)",
|
|
675
|
+
/** 1rem (16px) */ "2XL" = "var(--radius-2xl)",
|
|
676
|
+
/** 1.5rem (24px) */ "3XL" = "var(--radius-3xl)",
|
|
677
|
+
/** */ "4XL" = "var(--radius-4xl)",
|
|
678
|
+
/** 9999px */ FULL = "var(--radius-full)"
|
|
679
|
+
}
|
|
680
|
+
declare enum LAYOUTS {
|
|
681
|
+
/** 600px */ MAIN_DEFAULT = "var(--main-default)",
|
|
682
|
+
/** 800px */ MAIN_LARGE = "var(--main-large)",
|
|
683
|
+
/** 400px */ MAIN_FORM = "var(--main-form)",
|
|
684
|
+
/** 100% */ MAIN_FULL = "var(--main-full)",
|
|
685
|
+
/** 250px */ ASIDE_DEFAULT = "var(--aside-default)",
|
|
686
|
+
/** 200px */ ASIDE_SMALL = "var(--aside-small)"
|
|
687
|
+
}
|
|
688
|
+
declare enum TRANSITIONS {
|
|
689
|
+
/** all 200ms ease */ SHORT = "var(--transition-short)",
|
|
690
|
+
/** all 500ms ease */ LONG = "var(--transition-long)",
|
|
691
|
+
/** all 500ms cubic-bezier(0.25, 0.75, 0, 0.66) */ BEZIER = "var(--transition-bezier)"
|
|
692
|
+
}
|
|
693
|
+
declare enum MEDIA {
|
|
694
|
+
BREAKPOINT_TABLET_LARGE = "(max-width: 1024px)",
|
|
695
|
+
BREAKPOINT_TABLET_SMALL = "(max-width: 768px)",
|
|
696
|
+
BREAKPOINT_MOBILE = "(max-width: 600px)",
|
|
697
|
+
TOUCH = "(hover: none) and (pointer: coarse)",
|
|
698
|
+
HOVER = "(hover: hover)",
|
|
699
|
+
PREFERS_LIGHT = "(prefers-color-scheme: light)",
|
|
700
|
+
PREFERS_DARK = "(prefers-color-scheme: dark)"
|
|
701
|
+
}
|
|
702
|
+
declare const ICON_MULTIPLIER: 0.6;
|
|
703
|
+
declare const INPUT_HEIGHT: 32;
|
|
704
|
+
|
|
705
|
+
type ILibThemeContext = {
|
|
706
|
+
theme: LibThemeNames;
|
|
707
|
+
setTheme: DispatchState<LibThemeNames>;
|
|
708
|
+
switchTheme: () => void;
|
|
709
|
+
};
|
|
710
|
+
interface ILibThemeProvider {
|
|
711
|
+
children?: ReactChildren;
|
|
712
|
+
}
|
|
713
|
+
declare const ThemeProviderWrapper: ({ children }: ILibThemeProvider) => react_jsx_runtime.JSX.Element;
|
|
714
|
+
/**
|
|
715
|
+
* Custom hook to access the theme context.
|
|
716
|
+
*
|
|
717
|
+
* @returns {ILibThemeContext} The current theme, a setter for the theme, and a function to toggle between light and dark themes.
|
|
718
|
+
* @example
|
|
719
|
+
* const { theme, setTheme, switchTheme } = useLibTheme()
|
|
720
|
+
*/
|
|
721
|
+
declare const useLibTheme: () => ILibThemeContext;
|
|
722
|
+
|
|
723
|
+
declare const TEXT_BASE_CLASSES: string;
|
|
724
|
+
/**
|
|
725
|
+
* Text component for rendering semantic HTML text elements with consistent styles.
|
|
726
|
+
*
|
|
727
|
+
* Renders the appropriate semantic element based on the `tag` prop, such as headings, paragraphs, lists, blockquotes, etc.
|
|
728
|
+
*
|
|
729
|
+
* @component
|
|
730
|
+
* @example
|
|
731
|
+
* <Text tag="h2">Section title</Text>
|
|
732
|
+
* <Text tag="p">Paragraph content</Text>
|
|
733
|
+
* <Text tag="ul">
|
|
734
|
+
* <li>Item 1</li>
|
|
735
|
+
* <li>Item 2</li>
|
|
736
|
+
* </Text>
|
|
737
|
+
*
|
|
738
|
+
* @extends HTMLHeadingElement & HTMLParagraphElement & HTMLQuoteElement & HTMLDListElement & HTMLOListElement & HTMLUListElement
|
|
739
|
+
*
|
|
740
|
+
* @prop {object} props - Component props.
|
|
741
|
+
* @prop {ElementType} [props.element="p"] - The HTML element or React component to render.
|
|
742
|
+
* @prop {"h1"|"h2"|"h3"|"h4"|"h5"|"h6"|"p"|"small"|"strong"|"em"|"blockquote"|"ul"|"ol"|"dl"} [props.tag="p"] - The semantic HTML tag to render.
|
|
743
|
+
* @prop {string} [props.color="currentColor"] - Any color from the library.
|
|
744
|
+
* @prop {"red"|"orange"|"amber"|"yellow"|"lime"|"green"|"emerald"|"teal"|"cyan"|"sky"|"blue"|"indigo"|"violet"|"purple"|"fuchsia"|"pink"|"rose"|"slate"} [props.linkColor="blue"] - Any hover color.
|
|
745
|
+
* @prop {"text-left"|"text-center"|"text-right"|"text-justify"|"text-start"|"text-end"} [props.textAlign="left"] - Text alignment.
|
|
746
|
+
* @prop {boolean} [props.display=false] - Whether to use display block.
|
|
747
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
748
|
+
* @prop {RefObject<any>} [props.ref] - Ref for the rendered element.
|
|
749
|
+
* @prop {ReactNode} props.children - Text content.
|
|
750
|
+
* @prop {object} [props.rest] - Additional props spread to the rendered element.
|
|
751
|
+
*
|
|
752
|
+
* @returns {JSX.Element} The rendered text element.
|
|
753
|
+
*
|
|
754
|
+
* @see https://doc-julseb-lib-react.vercel.app/styles/text
|
|
755
|
+
*/
|
|
756
|
+
declare const Text: FC$1<ILibText>;
|
|
757
|
+
|
|
758
|
+
/**
|
|
759
|
+
* Wrapper component for providing a responsive layout container.
|
|
760
|
+
*
|
|
761
|
+
* @component
|
|
762
|
+
* @example
|
|
763
|
+
* <Wrapper>
|
|
764
|
+
* <Main>Content</Main>
|
|
765
|
+
* </Wrapper>
|
|
766
|
+
*
|
|
767
|
+
* @extends HTMLDivElement
|
|
768
|
+
*
|
|
769
|
+
* @prop {object} props - Component props.
|
|
770
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
771
|
+
* @prop {ElementType} [props.element="section"] - The HTML element or React component to render as the wrapper container.
|
|
772
|
+
* @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the wrapper container.
|
|
773
|
+
* @prop {ReactNode} props.children - Wrapper content.
|
|
774
|
+
* @prop {"px"|"full"|"screen"|"dvh"|"dvw"|"lvh"|"lvw"|"svw"|"svh"|"auto"|"min"|"max"|"fit"|"lh"|} [props.minHeight="svh"] - Minimum height class (uses Tailwind min-h-* utilities).
|
|
775
|
+
* @prop {string} [props.backgroundColor="background"] - Any color from the library.
|
|
776
|
+
* @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.gap="lg"] - Gap between children (uses library spacers).
|
|
777
|
+
* @prop {object} [props.rest] - Additional props spread to the container.
|
|
778
|
+
*
|
|
779
|
+
* @returns {JSX.Element} The rendered wrapper container.
|
|
780
|
+
*
|
|
781
|
+
* @see https://doc-julseb-lib-react.vercel.app/styles/wrapper
|
|
782
|
+
*/
|
|
783
|
+
declare const Wrapper: FC$1<ILibWrapper>;
|
|
784
|
+
|
|
785
|
+
/**
|
|
786
|
+
* Main component for rendering the primary content area.
|
|
787
|
+
*
|
|
788
|
+
* @component
|
|
789
|
+
*
|
|
790
|
+
* @example
|
|
791
|
+
* <Main size="large" gap="xl" backgroundColor="white">
|
|
792
|
+
* <p>Main content</p>
|
|
793
|
+
* </Main>
|
|
794
|
+
*
|
|
795
|
+
* @prop {object} props - Component props.
|
|
796
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
797
|
+
* @prop {ElementType} [props.element="main"] - The HTML element or React component to render as the main container.
|
|
798
|
+
* @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the main container.
|
|
799
|
+
* @prop {ReactNode} props.children - Main content.
|
|
800
|
+
* @prop {"default"|"large"|"form"} [props.size="default"] - Main width size.
|
|
801
|
+
* @prop {string} [props.backgroundColor="white"] - Any color from the library.
|
|
802
|
+
* @prop {"2xl"|"xl"|"lg"|"md"|"sm"|"xs"|"2xs"} [props.gap="lg"] - Gap between children (uses spacer tokens).
|
|
803
|
+
* @prop {object} [props.rest] - Additional props spread to the container.
|
|
804
|
+
*
|
|
805
|
+
* @returns {JSX.Element} The rendered main container.
|
|
806
|
+
*
|
|
807
|
+
* @see https://doc-julseb-lib-react.vercel.app/styles/main
|
|
808
|
+
*/
|
|
809
|
+
declare const Main: FC$1<ILibMain>;
|
|
810
|
+
|
|
811
|
+
/**
|
|
812
|
+
* Aside component for rendering a sidebar or secondary content area.
|
|
813
|
+
*
|
|
814
|
+
* @component
|
|
815
|
+
* @example
|
|
816
|
+
* <Aside size="small" backgroundColor="white">
|
|
817
|
+
* <p>Sidebar content</p>
|
|
818
|
+
* </Aside>
|
|
819
|
+
*
|
|
820
|
+
* @prop {object} props - Component props.
|
|
821
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
822
|
+
* @prop {ElementType} [props.element="aside"] - The HTML element or React component to render as the aside container.
|
|
823
|
+
* @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the aside container.
|
|
824
|
+
* @prop {ReactNode} props.children - Aside content.
|
|
825
|
+
* @prop {"default"|"small"} [props.size="default"] - Aside width size.
|
|
826
|
+
* @prop {string} [props.backgroundColor="white"] - Any color from the library.
|
|
827
|
+
* @prop {object} [props.rest] - Additional props spread to the container.
|
|
828
|
+
*
|
|
829
|
+
* @returns {JSX.Element} The rendered aside container.
|
|
830
|
+
*
|
|
831
|
+
* @see https://doc-julseb-lib-react.vercel.app/styles/aside
|
|
832
|
+
*/
|
|
833
|
+
declare const Aside: FC$1<ILibAside>;
|
|
834
|
+
|
|
835
|
+
/**
|
|
836
|
+
* Section component for grouping related content in a flexible layout.
|
|
837
|
+
*
|
|
838
|
+
* @component
|
|
839
|
+
* @example
|
|
840
|
+
* <Section gap="lg">
|
|
841
|
+
* <h2>Section title</h2>
|
|
842
|
+
* <p>Section content</p>
|
|
843
|
+
* </Section>
|
|
844
|
+
*
|
|
845
|
+
* @prop {object} props - Component props.
|
|
846
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
847
|
+
* @prop {ElementType} [props.element="section"] - The HTML element or React component to render as the section container.
|
|
848
|
+
* @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the section container.
|
|
849
|
+
* @prop {ReactNode} props.children - Section content.
|
|
850
|
+
* @prop {"2xl"|"xl"|"lg"|"md"|"sm"|"xs"|"2xs"|"0px"} [props.gap="md"] - Gap between children (uses spacer tokens).
|
|
851
|
+
* @prop {object} [props.rest] - Additional props spread to the container.
|
|
852
|
+
*
|
|
853
|
+
* @returns {JSX.Element} The rendered section container.
|
|
854
|
+
*
|
|
855
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/section
|
|
856
|
+
*/
|
|
857
|
+
declare const Section: FC$1<ILibSection>;
|
|
858
|
+
|
|
859
|
+
/**
|
|
860
|
+
* Grid component for flexible CSS grid layouts.
|
|
861
|
+
*
|
|
862
|
+
* @component
|
|
863
|
+
* @example
|
|
864
|
+
* <Grid cols={3} gap="md">
|
|
865
|
+
* <div>Item 1</div>
|
|
866
|
+
* <div>Item 2</div>
|
|
867
|
+
* <div>Item 3</div>
|
|
868
|
+
* </Grid>
|
|
869
|
+
*
|
|
870
|
+
* @prop {object} props - Component props.
|
|
871
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
872
|
+
* @prop {ElementType} [props.element="div"] - The HTML element or React component to render as the grid container.
|
|
873
|
+
* @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the grid container.
|
|
874
|
+
* @prop {ReactNode} props.children - Grid content.
|
|
875
|
+
* @prop {boolean} [props.inline] - Use inline-grid instead of grid.
|
|
876
|
+
* @prop {1|2|3|4|5|6|7|8|9|10|11|12} [props.cols=1] - Number of columns (1-12).
|
|
877
|
+
* @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.gap="0px"] - Gap between rows and columns (can use spacer tokens).
|
|
878
|
+
* @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.rowGap="0px"] - Row gap (can use spacer tokens).
|
|
879
|
+
* @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.colGap="0px"] - Column gap (can use spacer tokens).
|
|
880
|
+
* @prop {"start"|"end"|"end-safe"|"center"|"center-sage"|"space-between"|"space-around"|"space-evenly"|"stretch"|"baseline"|"normal"} [props.justifyContent="start"] - Justify content property.
|
|
881
|
+
* @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"stretch"|"normal"} [props.justifyItems="stretch"] - Justify items property.
|
|
882
|
+
* @prop {"normal"|"center"|"start"|"end"|"space-between"|"space-around"|"space-evenly"|"baseline"|"stretch"} [props.alignContent="start"] - Align content property.
|
|
883
|
+
* @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"baseline"|"baseline-start"|"stretch"} [props.alignItems="stretch"] - Align items property.
|
|
884
|
+
* @prop {object} [props.rest] - Additional props spread to the container.
|
|
885
|
+
*
|
|
886
|
+
* @returns {JSX.Element} The rendered grid container.
|
|
887
|
+
*
|
|
888
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/grid
|
|
889
|
+
*/
|
|
890
|
+
declare const Grid: FC$1<ILibGrid>;
|
|
891
|
+
|
|
892
|
+
/**
|
|
893
|
+
* Flexbox component for flexible layouts using CSS flexbox.
|
|
894
|
+
*
|
|
895
|
+
* @component
|
|
896
|
+
* @example
|
|
897
|
+
* <Flexbox flexDirection="row" gap="md">
|
|
898
|
+
* <div>Item 1</div>
|
|
899
|
+
* <div>Item 2</div>
|
|
900
|
+
* </Flexbox>
|
|
901
|
+
*
|
|
902
|
+
* @prop {object} props - Component props.
|
|
903
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
904
|
+
* @prop {ElementType} [props.element="div"] - The HTML element or React component to render as the flex container.
|
|
905
|
+
* @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the flex container.
|
|
906
|
+
* @prop {ReactNode} props.children - Flexbox content.
|
|
907
|
+
* @prop {boolean} [props.inline] - Use inline-flex instead of flex.
|
|
908
|
+
* @prop {"row"|"row-reverse"|"col"|"col-reverse"} [props.flexDirection="row"] - Flex direction.
|
|
909
|
+
* @prop {"nowrap"|"wrap"|"wrap-reverse"} [props.flexWrap="nowrap"] - Flex wrap.
|
|
910
|
+
* @prop {"start"|"end"|"end-safe"|"center"|"center-sage"|"space-between"|"space-around"|"space-evenly"|"stretch"|"baseline"|"normal"} [props.justifyContent="start"] - Justify content property.
|
|
911
|
+
* @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"baseline"|"baseline-start"|"stretch"} [props.alignItems="stretch"] - Align items property.
|
|
912
|
+
* @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"stretch"|"normal"} [props.justifyItems="stretch"] - Justify items property.
|
|
913
|
+
* @prop {"normal"|"center"|"start"|"end"|"space-between"|"space-around"|"space-evenly"|"baseline"|"stretch"} [props.alignContent="normal"] - Align content property.
|
|
914
|
+
* @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.gap="0px"] - Gap between items (can use spacer tokens).
|
|
915
|
+
* @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.colGap="0px"] - Column gap (can use spacer tokens).
|
|
916
|
+
* @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.rowGap="0px"] - Row gap (can use spacer tokens).
|
|
917
|
+
* @prop {object} [props.rest] - Additional props spread to the container.
|
|
918
|
+
*
|
|
919
|
+
* @returns {JSX.Element} The rendered flexbox container.
|
|
920
|
+
*
|
|
921
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/flexbox
|
|
922
|
+
*/
|
|
923
|
+
declare const Flexbox: FC$1<ILibFlexbox>;
|
|
924
|
+
|
|
925
|
+
/**
|
|
926
|
+
* Key component for displaying keyboard keys or shortcuts.
|
|
927
|
+
*
|
|
928
|
+
* @component
|
|
929
|
+
*
|
|
930
|
+
* @example
|
|
931
|
+
* <Key keys={["Ctrl", "C"]} size="large" accentColor="blue" />
|
|
932
|
+
*
|
|
933
|
+
* @prop {Array<string>} keys - The list of keys to display.
|
|
934
|
+
* @prop {boolean} [withSeparator] - If true, displays a separator between keys.
|
|
935
|
+
* @prop {"default" | "large" | "form"} [size] - The size of the key component.
|
|
936
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray"} [accentColor] - Accent color for the key, excluding black, white, transparent, background, and current.
|
|
937
|
+
*
|
|
938
|
+
* @returns {JSX.Element} The rendered Key component.
|
|
939
|
+
*
|
|
940
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/key
|
|
941
|
+
*/
|
|
942
|
+
declare const Key: FC$1<ILibKey>;
|
|
943
|
+
|
|
944
|
+
/**
|
|
945
|
+
* Highlight component for emphasizing parts of text.
|
|
946
|
+
*
|
|
947
|
+
* @component
|
|
948
|
+
*
|
|
949
|
+
* @example
|
|
950
|
+
* <Highlight highlightedText="important" highlightClasses="bg-yellow-200" />
|
|
951
|
+
*
|
|
952
|
+
* @prop {string} highlightedText - The substring to highlight within the children.
|
|
953
|
+
* @prop {CSSProperties} [highlightStyle] - Inline style to apply to the highlighted text.
|
|
954
|
+
* @prop {string} [highlightClasses] - Additional class names to apply to the highlighted text.
|
|
955
|
+
*
|
|
956
|
+
* @returns {JSX.Element} The rendered Highlight component.
|
|
957
|
+
*
|
|
958
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/highlight
|
|
959
|
+
*/
|
|
960
|
+
declare const Highlight: FC$1<ILibHighlight>;
|
|
961
|
+
|
|
962
|
+
/**
|
|
963
|
+
* Linkify component that automatically detects URLs in the provided text and wraps them in anchor tags.
|
|
964
|
+
*
|
|
965
|
+
* @component
|
|
966
|
+
*
|
|
967
|
+
* @example
|
|
968
|
+
* <Linkify>
|
|
969
|
+
* Visit https://github.com for more information.
|
|
970
|
+
* </Linkify>
|
|
971
|
+
*
|
|
972
|
+
* @extends ILibText
|
|
973
|
+
*
|
|
974
|
+
* @prop {string} [props.className] - Additional class names to apply to the container element.
|
|
975
|
+
* @prop {ElementType} [props.element=Text] - The HTML element or React component to render as the container. Default is `Text`.
|
|
976
|
+
* @prop {RefObject<HTMLHeadingElement | HTMLParagraphElement | HTMLQuoteElement | HTMLDListElement | HTMLOListElement | HTMLUListElement>} [props.ref] - Ref for the container element.
|
|
977
|
+
* @prop {string} props.children - The text content to parse and linkify.
|
|
978
|
+
* @prop {boolean} [props.blank] - If true, links open in a new tab (`_blank`). Default is `false`.
|
|
979
|
+
* @prop {string} [props.linkClasses] - Additional class names to apply to the generated anchor tags.
|
|
980
|
+
* @prop {object} [props.rest] - Additional props spread to the container element.
|
|
981
|
+
*
|
|
982
|
+
* @returns {ReactElement} The rendered Linkify component with URLs converted to clickable links.
|
|
983
|
+
*
|
|
984
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/linkify
|
|
985
|
+
*/
|
|
986
|
+
declare const Linkify: FC$1<ILibLinkify>;
|
|
987
|
+
|
|
988
|
+
/**
|
|
989
|
+
* Hr component for rendering a horizontal rule with custom color, width, and border radius.
|
|
990
|
+
*
|
|
991
|
+
* @component
|
|
992
|
+
*
|
|
993
|
+
* @example
|
|
994
|
+
* <Hr maxWidth="lg" color="gray-200" isRounded />
|
|
995
|
+
*
|
|
996
|
+
* @extends HTMLHrElement
|
|
997
|
+
*
|
|
998
|
+
* @prop {"3xs" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | "6xl" | "7xl" | "none" | "px" | "full" | "dvw" | "dvh" | "lvw" | "lvh" | "svw" | "svh" | "screen" | "min" | "max" | "fit"} [maxWidth="full"] - Maximum width of the hr.
|
|
999
|
+
* @prop {string} [color="gray-200"] - Background color of the hr.
|
|
1000
|
+
* @prop {boolean} [isRounded] - If true, the hr will have fully rounded borders.
|
|
1001
|
+
*
|
|
1002
|
+
* @returns {JSX.Element} The rendered Hr component.
|
|
1003
|
+
*
|
|
1004
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/hr
|
|
1005
|
+
*/
|
|
1006
|
+
declare const Hr: FC$1<ILibHr>;
|
|
1007
|
+
|
|
1008
|
+
/**
|
|
1009
|
+
* Skeleton component for displaying a loading placeholder.
|
|
1010
|
+
*
|
|
1011
|
+
* @component
|
|
1012
|
+
* @extends HTMLDivElement
|
|
1013
|
+
*
|
|
1014
|
+
* @example
|
|
1015
|
+
* <Skeleton backgroundColor="gray-100" borderRadius="lg" animation="pulse" />
|
|
1016
|
+
*
|
|
1017
|
+
* @prop {LibAllColors} [backgroundColor] - Background color of the skeleton.
|
|
1018
|
+
* @prop {LibRadiuses} [borderRadius] - Border radius of the skeleton.
|
|
1019
|
+
* @prop {LibSkeletonAnimation} [animation] - Animation style for the skeleton. Possible values: "pulse", "shine".
|
|
1020
|
+
*
|
|
1021
|
+
* @returns {JSX.Element} The rendered Skeleton component.
|
|
1022
|
+
*
|
|
1023
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/skeleton
|
|
1024
|
+
*/
|
|
1025
|
+
declare const Skeleton: FC$1<ILibSkeleton>;
|
|
1026
|
+
|
|
1027
|
+
/**
|
|
1028
|
+
* SkeletonCard component for displaying a loading placeholder in the shape of a card.
|
|
1029
|
+
*
|
|
1030
|
+
* @component
|
|
1031
|
+
* @extends HTMLDivElement
|
|
1032
|
+
*
|
|
1033
|
+
* @example
|
|
1034
|
+
* <SkeletonCard isShiny backgroundColor="gray-100" borderRadius="lg" gap="md" />
|
|
1035
|
+
*
|
|
1036
|
+
* @prop {boolean} [inline] - Use inline-flex instead of flex for the skeleton card.
|
|
1037
|
+
* @prop {CssFlexDirection} [flexDirection] - Flex direction for the skeleton card content.
|
|
1038
|
+
* @prop {CssFlexWrap} [flexWrap] - Flex wrap for the skeleton card content.
|
|
1039
|
+
* @prop {CssJustifyContent} [justifyContent] - Justify content property for the skeleton card content.
|
|
1040
|
+
* @prop {CssAlignItems} [alignItems] - Align items property for the skeleton card content.
|
|
1041
|
+
* @prop {CssJustifyItems} [justifyItems] - Justify items property for the skeleton card content.
|
|
1042
|
+
* @prop {CssAlignContent} [alignContent] - Align content property for the skeleton card content.
|
|
1043
|
+
* @prop {LibSpacers} [gap] - Gap between skeleton card children.
|
|
1044
|
+
* @prop {LibSpacers} [colGap] - Column gap between skeleton card children.
|
|
1045
|
+
* @prop {LibSpacers} [rowGap] - Row gap between skeleton card children.
|
|
1046
|
+
* @prop {LibAllColors} [backgroundColor] - Background color of the skeleton card.
|
|
1047
|
+
* @prop {LibRadiuses} [borderRadius] - Border radius of the skeleton card.
|
|
1048
|
+
* @prop {boolean} [isShiny] - If true, applies a shiny animation to the skeleton card.
|
|
1049
|
+
*
|
|
1050
|
+
* @returns {JSX.Element} The rendered SkeletonCard component.
|
|
1051
|
+
*
|
|
1052
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/skeletoncard
|
|
1053
|
+
*/
|
|
1054
|
+
declare const SkeletonCard: FC<ILibSkeletonCard>;
|
|
1055
|
+
|
|
1056
|
+
/**
|
|
1057
|
+
* Tooltip component for displaying contextual information on hover or click interactions.
|
|
1058
|
+
*
|
|
1059
|
+
* @component
|
|
1060
|
+
*
|
|
1061
|
+
* @example
|
|
1062
|
+
* <Tooltip
|
|
1063
|
+
* tooltip="This is a helpful tooltip"
|
|
1064
|
+
* position="top"
|
|
1065
|
+
* trigger="hover"
|
|
1066
|
+
* backgroundColor="black-80"
|
|
1067
|
+
* textColor="white"
|
|
1068
|
+
* >
|
|
1069
|
+
* <button>Hover me</button>
|
|
1070
|
+
* </Tooltip>
|
|
1071
|
+
*
|
|
1072
|
+
* @extends HTMLDivElement
|
|
1073
|
+
*
|
|
1074
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tooltip container.
|
|
1075
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
1076
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tooltip container element.
|
|
1077
|
+
* @prop {React.ReactNode} [props.children] - The element that triggers the tooltip on interaction.
|
|
1078
|
+
* @prop {string} [props.tooltip] - The tooltip text content to display.
|
|
1079
|
+
* @prop {"top" | "bottom" | "left" | "right"} [props.position="top"] - Position of the tooltip relative to the trigger element.
|
|
1080
|
+
* @prop {boolean} [props.hideArrow] - Whether to hide the tooltip arrow pointer.
|
|
1081
|
+
* @prop {"hover" | "click"} [props.trigger="hover"] - Event that triggers the tooltip display.
|
|
1082
|
+
* @prop {LibAllColorsAndOverlays} [props.backgroundColor="black-80"] - Background color for the tooltip.
|
|
1083
|
+
* @prop {LibAllColors} [props.textColor="white"] - Text color for the tooltip content.
|
|
1084
|
+
* @prop {LibSpacers} [props.offset="xs"] - Distance offset between tooltip and trigger element.
|
|
1085
|
+
* @prop {string} [props.tooltipClasses] - Additional CSS classes for the tooltip element.
|
|
1086
|
+
* @prop {React.CSSProperties} [props.tooltipStyle] - Additional inline styles for the tooltip element.
|
|
1087
|
+
* @prop {function} [props.onClick] - Click event handler for the trigger element.
|
|
1088
|
+
* @prop {function} [props.onMouseEnter] - Mouse enter event handler for the trigger element.
|
|
1089
|
+
* @prop {function} [props.onMouseLeave] - Mouse leave event handler for the trigger element.
|
|
1090
|
+
*
|
|
1091
|
+
* @returns {JSX.Element} The rendered Tooltip component.
|
|
1092
|
+
*
|
|
1093
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tooltip
|
|
1094
|
+
*/
|
|
1095
|
+
declare const Tooltip: FC$1<ILibTooltip>;
|
|
1096
|
+
|
|
1097
|
+
/**
|
|
1098
|
+
* Image component for displaying images with optional styling, captions, and accessibility features.
|
|
1099
|
+
*
|
|
1100
|
+
* @component
|
|
1101
|
+
*
|
|
1102
|
+
* @example
|
|
1103
|
+
* <Image src="https://example.com/image.jpg" alt="Example image" borderRadius="lg" fit="cover" caption="Example caption" />
|
|
1104
|
+
*
|
|
1105
|
+
* @extends HTMLImageElement
|
|
1106
|
+
*
|
|
1107
|
+
* @prop {string} [className] - Additional class names to apply to the image or figure element.
|
|
1108
|
+
* @prop {React.RefObject<HTMLImageElement | HTMLFigureElement>} [ref] - Ref for the image or figure element.
|
|
1109
|
+
* @prop {string | { text: string, backgroundColor?: LibAllColorsAndOverlays, textColor?: LibAllColors, imgClasses?: string, captionClasses?: string }} [caption] - Caption for the image. Can be a string or an object with text and optional styling.
|
|
1110
|
+
* @prop {LibRadiuses} [borderRadius] - Border radius for the image or figure.
|
|
1111
|
+
* @prop {"contain" | "cover" | "fill" | "none" | "scale-down"} [fit] - How the image should fit within its container.
|
|
1112
|
+
*
|
|
1113
|
+
* @returns {JSX.Element} The rendered Image component.
|
|
1114
|
+
*
|
|
1115
|
+
* @see https://doc-julseb-lib-react.vercel.app/layouts/image
|
|
1116
|
+
*/
|
|
1117
|
+
declare const Image: FC$1<ILibImage>;
|
|
1118
|
+
|
|
1119
|
+
/**
|
|
1120
|
+
* Masonry component for displaying content in a responsive masonry grid layout.
|
|
1121
|
+
*
|
|
1122
|
+
* @component
|
|
1123
|
+
*
|
|
1124
|
+
* @example
|
|
1125
|
+
* <Masonry col={3} gap="md">
|
|
1126
|
+
* <div>Item 1</div>
|
|
1127
|
+
* <div>Item 2</div>
|
|
1128
|
+
* <div>Item 3</div>
|
|
1129
|
+
* </Masonry>
|
|
1130
|
+
*
|
|
1131
|
+
* @extends HTMLDivElement
|
|
1132
|
+
*
|
|
1133
|
+
* @prop {string} [props.className] - Additional class names to apply.
|
|
1134
|
+
* @prop {ElementType} [props.element="div"] - The HTML element or React component to render as the container.
|
|
1135
|
+
* @prop {React.RefObject<HTMLDivElement>} [props.ref] - Ref for the container element.
|
|
1136
|
+
* @prop {React.ReactNode[]} [props.children=[]] - The content to display in the masonry grid.
|
|
1137
|
+
* @prop {number} [props.col=4] - Number of columns in the masonry grid.
|
|
1138
|
+
* @prop {"2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl"} [props.gap="lg"] - Gap between grid items.
|
|
1139
|
+
*
|
|
1140
|
+
* @returns {JSX.Element} The rendered Masonry component.
|
|
1141
|
+
*
|
|
1142
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/masonry
|
|
1143
|
+
*/
|
|
1144
|
+
declare const Masonry: FC$1<ILibMasonry>;
|
|
1145
|
+
|
|
1146
|
+
/**
|
|
1147
|
+
* Badge component for displaying a colored label or status.
|
|
1148
|
+
*
|
|
1149
|
+
* @component
|
|
1150
|
+
*
|
|
1151
|
+
* @example
|
|
1152
|
+
* <Badge backgroundColor="primary" contentColor="white" borderRadius="full">New</Badge>
|
|
1153
|
+
*
|
|
1154
|
+
* @extends HTMLSpanElement
|
|
1155
|
+
*
|
|
1156
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the badge.
|
|
1157
|
+
* @prop {keyof JSX.IntrinsicElements} [props.element="span"] - The HTML element to render as the badge.
|
|
1158
|
+
* @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the badge element.
|
|
1159
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the badge.
|
|
1160
|
+
* @prop {LibAllColors} [props.color="primary"] - Background color of the badge.
|
|
1161
|
+
* @prop {LibAllColors} [props.contentColor="white"] - Text color of the badge.
|
|
1162
|
+
* @prop {LibRadius} [props.borderRadius="full"] - Border radius of the badge.
|
|
1163
|
+
* @prop {any} [props.rest] - Additional props spread to the badge element.
|
|
1164
|
+
*
|
|
1165
|
+
* @returns {JSX.Element} The rendered Badge component.
|
|
1166
|
+
*
|
|
1167
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/badge
|
|
1168
|
+
*/
|
|
1169
|
+
declare const Badge: FC$1<ILibBadge>;
|
|
1170
|
+
|
|
1171
|
+
/**
|
|
1172
|
+
* Avatar component for displaying a user image, initials, or icon, with optional badge and custom styles.
|
|
1173
|
+
*
|
|
1174
|
+
* @component
|
|
1175
|
+
*
|
|
1176
|
+
* @example
|
|
1177
|
+
* <Avatar backgroundColor="primary" contentColor="white" borderRadius="full" badge="New">JS</Avatar>
|
|
1178
|
+
*
|
|
1179
|
+
* @extends HTMLSpanElement
|
|
1180
|
+
*
|
|
1181
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the avatar.
|
|
1182
|
+
* @prop {keyof JSX.IntrinsicElements} [props.element="span"] - The HTML element to render as the avatar.
|
|
1183
|
+
* @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the avatar element.
|
|
1184
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the avatar (image, initials, or icon).
|
|
1185
|
+
* @prop {string | { content?: React.ReactNode; backgroundColor?: string; contentColor?: string; className?: string }} [props.badge] - Badge to display on the avatar, can be a string or an object with content and colors.
|
|
1186
|
+
* @prop {React.CSSProperties} [props.containerStyle] - Inline styles for the avatar container.
|
|
1187
|
+
* @prop {string} [props.containerClassName] - Additional CSS classes for the avatar container.
|
|
1188
|
+
* @prop {string} [props.borderRadius] - Border radius of the avatar.
|
|
1189
|
+
* @prop {string} [props.borderColor] - Border color of the avatar.
|
|
1190
|
+
* @prop {string} [props.backgroundColor] - Background color of the avatar.
|
|
1191
|
+
* @prop {string} [props.contentColor] - Text color of the avatar.
|
|
1192
|
+
* @prop {any} [props.rest] - Additional props spread to the avatar element.
|
|
1193
|
+
*
|
|
1194
|
+
* @returns {JSX.Element} The rendered Avatar component.
|
|
1195
|
+
*
|
|
1196
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/avatar
|
|
1197
|
+
*/
|
|
1198
|
+
declare const Avatar: FC$1<ILibAvatar>;
|
|
1199
|
+
|
|
1200
|
+
/**
|
|
1201
|
+
* Loader component for displaying a loading indicator with multiple style variants and color options.
|
|
1202
|
+
*
|
|
1203
|
+
* @component
|
|
1204
|
+
*
|
|
1205
|
+
* @example
|
|
1206
|
+
* <Loader variant={2} color="primary" />
|
|
1207
|
+
*
|
|
1208
|
+
* @extends HTMLSpanElement
|
|
1209
|
+
*
|
|
1210
|
+
* @prop {1 | 2 | 3} [props.variant=1] Possible values: 1, 2, 3. - Loader variant style.
|
|
1211
|
+
* @prop {string} [props.color="primary"] Any color from the library. - Loader color.
|
|
1212
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the loader.
|
|
1213
|
+
* @prop {keyof JSX.IntrinsicElements} [props.element="span"] - The HTML element to render as the loader.
|
|
1214
|
+
* @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the loader element.
|
|
1215
|
+
* @prop {any} [props.rest] - Additional props spread to the loader element.
|
|
1216
|
+
*
|
|
1217
|
+
* @returns {JSX.Element} The rendered Loader component.
|
|
1218
|
+
*
|
|
1219
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/loader
|
|
1220
|
+
*/
|
|
1221
|
+
declare const Loader: FC$1<ILibLoader>;
|
|
1222
|
+
|
|
1223
|
+
/**
|
|
1224
|
+
* Burger component for displaying a hamburger menu icon with open/closed states and hover effects.
|
|
1225
|
+
*
|
|
1226
|
+
* @component
|
|
1227
|
+
*
|
|
1228
|
+
* @example
|
|
1229
|
+
* <Burger
|
|
1230
|
+
* isOpen={isMenuOpen}
|
|
1231
|
+
* color="primary"
|
|
1232
|
+
* onClick={toggleMenu}
|
|
1233
|
+
* />
|
|
1234
|
+
*
|
|
1235
|
+
* @extends HTMLButtonElement
|
|
1236
|
+
*
|
|
1237
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the burger.
|
|
1238
|
+
* @prop {keyof JSX.IntrinsicElements} [props.element="button"] - The HTML element to render as the burger.
|
|
1239
|
+
* @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the burger element.
|
|
1240
|
+
* @prop {string} [props.role="button"] - ARIA role for accessibility.
|
|
1241
|
+
* @prop {string} [props.aria-label="Burger"] - ARIA label for accessibility.
|
|
1242
|
+
* @prop {boolean} [props.isOpen] - Whether the burger menu is open or closed.
|
|
1243
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color of the burger lines.
|
|
1244
|
+
* @prop {string} [props.type="button"] - Button type attribute.
|
|
1245
|
+
* @prop {boolean} [props.noHover] - Whether to disable hover effects.
|
|
1246
|
+
* @prop {any} [props.rest] - Additional props spread to the burger element.
|
|
1247
|
+
*
|
|
1248
|
+
* @returns {JSX.Element} The rendered Burger component.
|
|
1249
|
+
*
|
|
1250
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/burger
|
|
1251
|
+
*/
|
|
1252
|
+
declare const Burger: FC$1<ILibBurger>;
|
|
1253
|
+
|
|
1254
|
+
/**
|
|
1255
|
+
* Button component for user interactions with multiple variants, colors, and loading states.
|
|
1256
|
+
*
|
|
1257
|
+
* @component
|
|
1258
|
+
*
|
|
1259
|
+
* @example
|
|
1260
|
+
* <Button variant="plain" color="primary" size="default">Click me</Button>
|
|
1261
|
+
*
|
|
1262
|
+
* @extends HTMLButtonElement
|
|
1263
|
+
*
|
|
1264
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the button.
|
|
1265
|
+
* @prop {keyof JSX.IntrinsicElements} [props.element="button"] - The HTML element to render as the button.
|
|
1266
|
+
* @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
|
|
1267
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the button.
|
|
1268
|
+
* @prop {"plain" | "ghost" | "outline" | "transparent"} [props.variant="plain"] - Button variant style.
|
|
1269
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Button color theme.
|
|
1270
|
+
* @prop {"default" | "small"} [props.size="default"] - Button size.
|
|
1271
|
+
* @prop {boolean} [props.isLoading] - Whether the button is in a loading state.
|
|
1272
|
+
* @prop {1 | 2 | 3} [props.loaderVariant] - Loader variant to display when loading.
|
|
1273
|
+
* @prop {boolean} [props.disabled] - Whether the button is disabled.
|
|
1274
|
+
* @prop {any} [props.rest] - Additional props spread to the button element.
|
|
1275
|
+
*
|
|
1276
|
+
* @returns {JSX.Element} The rendered Button component.
|
|
1277
|
+
*
|
|
1278
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/button
|
|
1279
|
+
*/
|
|
1280
|
+
declare const Button: FC$1<ILibButton>;
|
|
1281
|
+
|
|
1282
|
+
/**
|
|
1283
|
+
* ButtonIcon component for displaying an icon button with optional tooltip and loading states.
|
|
1284
|
+
*
|
|
1285
|
+
* @component
|
|
1286
|
+
*
|
|
1287
|
+
* @example
|
|
1288
|
+
* <ButtonIcon
|
|
1289
|
+
* icon={<BiUser />}
|
|
1290
|
+
* color="primary"
|
|
1291
|
+
* variant="plain"
|
|
1292
|
+
* tooltip="User profile"
|
|
1293
|
+
* showTooltip
|
|
1294
|
+
* />
|
|
1295
|
+
*
|
|
1296
|
+
* @extends HTMLButtonElement
|
|
1297
|
+
*
|
|
1298
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the button.
|
|
1299
|
+
* @prop {keyof JSX.IntrinsicElements} [props.element="button"] - The HTML element to render as the button.
|
|
1300
|
+
* @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
|
|
1301
|
+
* @prop {React.ReactNode} [props.icon] - Icon element to display inside the button.
|
|
1302
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Button color theme.
|
|
1303
|
+
* @prop {string} [props.borderRadius="full"] - Border radius of the button.
|
|
1304
|
+
* @prop {"plain" | "ghost" | "outline" | "transparent"} [props.variant="plain"] - Button variant style.
|
|
1305
|
+
* @prop {boolean} [props.isLoading] - Whether the button is in a loading state.
|
|
1306
|
+
* @prop {1 | 2 | 3} [props.loaderVariant=1] - Loader variant to display when loading.
|
|
1307
|
+
* @prop {string} [props.loaderClasses] - Additional CSS classes for the loader.
|
|
1308
|
+
* @prop {string} [props.tooltip] - Tooltip text to display.
|
|
1309
|
+
* @prop {boolean | object} [props.showTooltip] - Whether to show tooltip or tooltip configuration object.
|
|
1310
|
+
* @prop {React.CSSProperties} [props.containerStyle] - Inline styles for the container.
|
|
1311
|
+
* @prop {string} [props.containerClasses] - Additional CSS classes for the container.
|
|
1312
|
+
* @prop {string} [props.aria-label] - ARIA label for accessibility, defaults to tooltip value.
|
|
1313
|
+
* @prop {string} [props.type="button"] - Button type attribute.
|
|
1314
|
+
* @prop {any} [props.rest] - Additional props spread to the button element.
|
|
1315
|
+
*
|
|
1316
|
+
* @returns {JSX.Element} The rendered ButtonIcon component.
|
|
1317
|
+
*
|
|
1318
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/button-icon
|
|
1319
|
+
*/
|
|
1320
|
+
declare const ButtonIcon: FC$1<ILibButtonIcon>;
|
|
1321
|
+
|
|
1322
|
+
/**
|
|
1323
|
+
* ButtonGroup component for displaying a group of related buttons with consistent styling and optional separators.
|
|
1324
|
+
*
|
|
1325
|
+
* @component
|
|
1326
|
+
*
|
|
1327
|
+
* @example
|
|
1328
|
+
* <ButtonGroup
|
|
1329
|
+
* buttons={[
|
|
1330
|
+
* { id: "1", buttonContent: "Save" },
|
|
1331
|
+
* { id: "2", buttonContent: "Cancel" }
|
|
1332
|
+
* ]}
|
|
1333
|
+
* variant="plain"
|
|
1334
|
+
* color="primary"
|
|
1335
|
+
* />
|
|
1336
|
+
*
|
|
1337
|
+
* @extends ILibFlexbox
|
|
1338
|
+
*
|
|
1339
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the button group.
|
|
1340
|
+
* @prop {React.ComponentType} [props.element=Flexbox] - The component to render as the container element.
|
|
1341
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the button group element.
|
|
1342
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the button group when not using buttons prop.
|
|
1343
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color theme for the button group.
|
|
1344
|
+
* @prop {"plain" | "ghost" | "outline" | "transparent"} [props.variant="plain"] - Visual variant style of the button group.
|
|
1345
|
+
* @prop {string} [props.borderRadius="md"] - Border radius of the button group container.
|
|
1346
|
+
* @prop {"default" | "small"} [props.size="default"] - Size of the buttons in the group.
|
|
1347
|
+
* @prop {Array<LibButtonGroupButtonItem>} [props.buttons] - Array of button items to render in the group.
|
|
1348
|
+
* @prop {any} [props.rest] - Additional props spread to the container element.
|
|
1349
|
+
*
|
|
1350
|
+
* @returns {JSX.Element} The rendered ButtonGroup component.
|
|
1351
|
+
*
|
|
1352
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/button-group
|
|
1353
|
+
*/
|
|
1354
|
+
declare const ButtonGroup: FC$1<ILibButtonGroup>;
|
|
1355
|
+
|
|
1356
|
+
/**
|
|
1357
|
+
* Tag component for displaying labeled content with customizable colors, variants, and styling options.
|
|
1358
|
+
*
|
|
1359
|
+
* @component
|
|
1360
|
+
*
|
|
1361
|
+
* @example
|
|
1362
|
+
* <Tag color="primary" variant="plain">
|
|
1363
|
+
* New Feature
|
|
1364
|
+
* </Tag>
|
|
1365
|
+
* <Tag color="success" variant="outline" borderRadius="md">
|
|
1366
|
+
* Approved
|
|
1367
|
+
* </Tag>
|
|
1368
|
+
*
|
|
1369
|
+
* @extends HTMLSpanElement
|
|
1370
|
+
*
|
|
1371
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tag container.
|
|
1372
|
+
* @prop {React.ElementType} [props.element="span"] - HTML element type to render as the container.
|
|
1373
|
+
* @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the tag element.
|
|
1374
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the tag.
|
|
1375
|
+
* @prop {LibAllColors} [props.color="primary"] - Background or border color of the tag.
|
|
1376
|
+
* @prop {LibAllColors} [props.contentColor] - Text color of the tag content.
|
|
1377
|
+
* @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius="full"] - Border radius size of the tag.
|
|
1378
|
+
* @prop {"plain" | "outline"} [props.variant="plain"] - Visual style variant of the tag.
|
|
1379
|
+
*
|
|
1380
|
+
* @returns {JSX.Element} The rendered Tag component.
|
|
1381
|
+
*
|
|
1382
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tag
|
|
1383
|
+
*/
|
|
1384
|
+
declare const Tag: FC$1<ILibTag>;
|
|
1385
|
+
|
|
1386
|
+
/**
|
|
1387
|
+
* InputContainer component for wrapping input elements with labels, helper text, validation messages, and character counters.
|
|
1388
|
+
*
|
|
1389
|
+
* @component
|
|
1390
|
+
*
|
|
1391
|
+
* @example
|
|
1392
|
+
* <InputContainer
|
|
1393
|
+
* label="Email"
|
|
1394
|
+
* helper="Enter your email address"
|
|
1395
|
+
* validation={{ status: true, message: "Valid email" }}
|
|
1396
|
+
* >
|
|
1397
|
+
* <input type="email" />
|
|
1398
|
+
* </InputContainer>
|
|
1399
|
+
*
|
|
1400
|
+
* @extends HTMLDivElement
|
|
1401
|
+
*
|
|
1402
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the container.
|
|
1403
|
+
* @prop {React.ComponentType | string} [props.element="div"] - The HTML element or component to render as the container.
|
|
1404
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the container element.
|
|
1405
|
+
* @prop {React.ReactNode} [props.children] - Input elements or other content to display inside the container.
|
|
1406
|
+
* @prop {string} [props.label] - Label text to display above the input.
|
|
1407
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label in gray italic text.
|
|
1408
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1409
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the container.
|
|
1410
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object with status, message, and custom icons.
|
|
1411
|
+
* @prop {string | number} [props.value] - Current value for character counter calculation.
|
|
1412
|
+
* @prop {boolean | object} [props.counter] - Whether to show character counter or counter configuration.
|
|
1413
|
+
* @prop {number} [props.maxLength] - Maximum character length for counter display.
|
|
1414
|
+
* @prop {boolean} [props.hasListOpen] - Whether a dropdown list is open (adds z-index styling).
|
|
1415
|
+
* @prop {string} [props.id] - Unique identifier to associate label with input element.
|
|
1416
|
+
* @prop {any} [props.rest] - Additional props spread to the container element.
|
|
1417
|
+
*
|
|
1418
|
+
* @returns {JSX.Element} The rendered InputContainer component or just children if no wrapper content is needed.
|
|
1419
|
+
*
|
|
1420
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input
|
|
1421
|
+
*/
|
|
1422
|
+
declare const InputContainer: FC$1<ILibInputContainer>;
|
|
1423
|
+
|
|
1424
|
+
/**
|
|
1425
|
+
* Input component with multiple types and variants for form data collection.
|
|
1426
|
+
*
|
|
1427
|
+
* @component
|
|
1428
|
+
*
|
|
1429
|
+
* @example
|
|
1430
|
+
* <Input type="text" label="Name" placeholder="Enter your name" />
|
|
1431
|
+
* <Input type="email" label="Email" validation={{ status: true }} />
|
|
1432
|
+
* <Input type="select" label="Country">
|
|
1433
|
+
* <option value="us">United States</option>
|
|
1434
|
+
* <option value="ca">Canada</option>
|
|
1435
|
+
* </Input>
|
|
1436
|
+
*
|
|
1437
|
+
* @extends HTMLInputElement
|
|
1438
|
+
*
|
|
1439
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the input.
|
|
1440
|
+
* @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
|
|
1441
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
1442
|
+
* @prop {string} [props.label] - Label text to display above the input.
|
|
1443
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1444
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1445
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the input.
|
|
1446
|
+
* @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.
|
|
1447
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1448
|
+
* @prop {string | number} [props.value] - Current value of the input.
|
|
1449
|
+
* @prop {boolean | object} [props.counter] - Whether to show character counter or counter configuration.
|
|
1450
|
+
* @prop {number} [props.maxLength] - Maximum number of characters allowed.
|
|
1451
|
+
* @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input.
|
|
1452
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input.
|
|
1453
|
+
* @prop {React.ReactNode} [props.icon] - Icon element to display inside the input.
|
|
1454
|
+
* @prop {string} [props.placeholder] - Placeholder text for the input.
|
|
1455
|
+
* @prop {boolean} [props.disabled] - Whether the input is disabled.
|
|
1456
|
+
* @prop {React.ReactNode} [props.children] - Child elements for select and textarea types.
|
|
1457
|
+
* @prop {any} [props.rest] - Additional props spread to the input element.
|
|
1458
|
+
*
|
|
1459
|
+
* @returns {JSX.Element} The rendered Input component.
|
|
1460
|
+
*
|
|
1461
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input
|
|
1462
|
+
*/
|
|
1463
|
+
declare const Input: FC$1<ILibInput>;
|
|
1464
|
+
|
|
1465
|
+
/**
|
|
1466
|
+
* InputImage component for uploading and displaying image files with hover interactions and validation states.
|
|
1467
|
+
*
|
|
1468
|
+
* @component
|
|
1469
|
+
*
|
|
1470
|
+
* @example
|
|
1471
|
+
* <InputImage
|
|
1472
|
+
* id="profile-image"
|
|
1473
|
+
* label="Profile Picture"
|
|
1474
|
+
* value={imageUrl}
|
|
1475
|
+
* icons={{ upload: <BiUpload />, edit: <BiEdit /> }}
|
|
1476
|
+
* />
|
|
1477
|
+
*
|
|
1478
|
+
* @extends HTMLInputElement
|
|
1479
|
+
*
|
|
1480
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the input image container.
|
|
1481
|
+
* @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the label element.
|
|
1482
|
+
* @prop {string} [props.label] - Label text to display above the input.
|
|
1483
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1484
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1485
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the input.
|
|
1486
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1487
|
+
* @prop {string} [props.value] - Current image URL or base64 string value.
|
|
1488
|
+
* @prop {object} [props.icons] - Icon configuration object for upload and edit states.
|
|
1489
|
+
* @prop {"none" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "full"} [props.borderRadius="md"] - Border radius of the image container.
|
|
1490
|
+
* @prop {boolean} [props.disabled] - Whether the input is disabled.
|
|
1491
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
1492
|
+
* @prop {any} [props.rest] - Additional props spread to the file input element.
|
|
1493
|
+
*
|
|
1494
|
+
* @returns {JSX.Element} The rendered InputImage component.
|
|
1495
|
+
*
|
|
1496
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input-image
|
|
1497
|
+
*/
|
|
1498
|
+
declare const InputImage: FC$1<ILibInputImage>;
|
|
1499
|
+
|
|
1500
|
+
/**
|
|
1501
|
+
* InputCheck component for creating interactive checkbox, radio, and toggle inputs with multiple visual variants.
|
|
1502
|
+
*
|
|
1503
|
+
* @component
|
|
1504
|
+
*
|
|
1505
|
+
* @example
|
|
1506
|
+
* <InputCheck id="terms" type="checkbox">
|
|
1507
|
+
* I agree to the terms and conditions
|
|
1508
|
+
* </InputCheck>
|
|
1509
|
+
* <InputCheck id="newsletter" type="checkbox" variant="tile">
|
|
1510
|
+
* Subscribe to newsletter
|
|
1511
|
+
* </InputCheck>
|
|
1512
|
+
* <InputCheck id="notifications" variant="toggle">
|
|
1513
|
+
* Enable notifications
|
|
1514
|
+
* </InputCheck>
|
|
1515
|
+
*
|
|
1516
|
+
* @extends HTMLInputElement
|
|
1517
|
+
*
|
|
1518
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the input check container.
|
|
1519
|
+
* @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the label element.
|
|
1520
|
+
* @prop {React.ReactNode} [props.children] - Content to display next to the input check.
|
|
1521
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
1522
|
+
* @prop {"checkbox" | "radio"} [props.type="checkbox"] - Type of input check to render.
|
|
1523
|
+
* @prop {React.ReactElement} [props.iconCheck=<BiCheck size={16} />] - Icon element to display in checkbox variant.
|
|
1524
|
+
* @prop {"tile" | "toggle" | "selector"} [props.variant] - Visual variant style of the input check.
|
|
1525
|
+
* @prop {boolean} [props.validation] - Validation state for error styling.
|
|
1526
|
+
* @prop {boolean} [props.disabled] - Whether the input check is disabled.
|
|
1527
|
+
* @prop {boolean} [props.checked] - Whether the input check is checked (controlled).
|
|
1528
|
+
* @prop {boolean} [props.defaultChecked] - Whether the input check is initially checked (uncontrolled).
|
|
1529
|
+
* @prop {any} [props.rest] - Additional props spread to the input element.
|
|
1530
|
+
*
|
|
1531
|
+
* @returns {JSX.Element} The rendered InputCheck component.
|
|
1532
|
+
*
|
|
1533
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input-check
|
|
1534
|
+
*/
|
|
1535
|
+
declare const InputCheck: FC$1<ILibInputCheck>;
|
|
1536
|
+
|
|
1537
|
+
/**
|
|
1538
|
+
* InputPhone component for phone number input with country selection dropdown and search functionality.
|
|
1539
|
+
*
|
|
1540
|
+
* @component
|
|
1541
|
+
*
|
|
1542
|
+
* @example
|
|
1543
|
+
* <InputPhone
|
|
1544
|
+
* id="phone"
|
|
1545
|
+
* label="Phone Number"
|
|
1546
|
+
* selectedCountry={selectedCountry}
|
|
1547
|
+
* setSelectedCountry={setSelectedCountry}
|
|
1548
|
+
* defaultCountry="us"
|
|
1549
|
+
* />
|
|
1550
|
+
*
|
|
1551
|
+
* @extends HTMLInputElement
|
|
1552
|
+
*
|
|
1553
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the input phone container.
|
|
1554
|
+
* @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
|
|
1555
|
+
* @prop {object} [props.selectedCountry] - Currently selected country object with code, name, flag, and dial_code.
|
|
1556
|
+
* @prop {function} [props.setSelectedCountry] - Function to update the selected country state.
|
|
1557
|
+
* @prop {string} [props.defaultCountry="fr"] - Default country code to display when no country is selected.
|
|
1558
|
+
* @prop {object} [props.icons] - Icon configuration object for customizing dropdown caret icon.
|
|
1559
|
+
* @prop {string} [props.searchPlaceholder="Search country..."] - Placeholder text for the country search input.
|
|
1560
|
+
* @prop {"up" | "down"} [props.listDirection="down"] - Direction for the dropdown list to appear.
|
|
1561
|
+
* @prop {string} [props.countryButtonAriaLabel="Select country"] - Aria label for the country selection button.
|
|
1562
|
+
* @prop {string} [props.textNoResult="Your search did not return any result."] - Text to display when no search results are found.
|
|
1563
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
1564
|
+
* @prop {string} [props.label] - Label text to display above the input.
|
|
1565
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1566
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1567
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the input.
|
|
1568
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1569
|
+
* @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input.
|
|
1570
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input.
|
|
1571
|
+
* @prop {any} [props.rest] - Additional props spread to the input element.
|
|
1572
|
+
*
|
|
1573
|
+
* @returns {JSX.Element} The rendered InputPhone component.
|
|
1574
|
+
*
|
|
1575
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input-phone
|
|
1576
|
+
*/
|
|
1577
|
+
declare const InputPhone: FC$1<ILibInputPhone>;
|
|
1578
|
+
|
|
1579
|
+
/**
|
|
1580
|
+
* InputCounter component for numeric input with increment/decrement buttons and optional display-only mode.
|
|
1581
|
+
*
|
|
1582
|
+
* @component
|
|
1583
|
+
*
|
|
1584
|
+
* @example
|
|
1585
|
+
* <InputCounter
|
|
1586
|
+
* value={count}
|
|
1587
|
+
* setValue={setCount}
|
|
1588
|
+
* min={0}
|
|
1589
|
+
* max={10}
|
|
1590
|
+
* label="Quantity"
|
|
1591
|
+
* />
|
|
1592
|
+
* <InputCounter
|
|
1593
|
+
* value={amount}
|
|
1594
|
+
* setValue={setAmount}
|
|
1595
|
+
* noInput
|
|
1596
|
+
* buttonsColor="secondary"
|
|
1597
|
+
* />
|
|
1598
|
+
*
|
|
1599
|
+
* @extends HTMLInputElement
|
|
1600
|
+
*
|
|
1601
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the counter container.
|
|
1602
|
+
* @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input or span element.
|
|
1603
|
+
* @prop {number} [props.value] - Current numeric value of the counter.
|
|
1604
|
+
* @prop {function} [props.setValue] - Function to update the counter value.
|
|
1605
|
+
* @prop {"plain" | "ghost" | "outline" | "transparent"} [props.buttonVariant] - Visual variant style of the increment/decrement buttons.
|
|
1606
|
+
* @prop {object} [props.icons] - Icon configuration object with minus and plus icons.
|
|
1607
|
+
* @prop {object} [props.labelButtons] - Aria labels and tooltip text for the buttons.
|
|
1608
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "black" | "white"} [props.buttonsColor="primary"] - Color theme of the increment/decrement buttons.
|
|
1609
|
+
* @prop {boolean} [props.showButtonsTooltip] - Whether to show tooltips on button hover.
|
|
1610
|
+
* @prop {boolean} [props.noInput] - Whether to display value as text instead of editable input.
|
|
1611
|
+
* @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input field.
|
|
1612
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input field.
|
|
1613
|
+
* @prop {string} [props.label] - Label text to display above the counter.
|
|
1614
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1615
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1616
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the counter.
|
|
1617
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
1618
|
+
* @prop {number} [props.min=1] - Minimum allowed value for the counter.
|
|
1619
|
+
* @prop {number} [props.max=100] - Maximum allowed value for the counter.
|
|
1620
|
+
* @prop {number} [props.step=1] - Increment/decrement step value.
|
|
1621
|
+
* @prop {any} [props.rest] - Additional props spread to the input or span element.
|
|
1622
|
+
*
|
|
1623
|
+
* @returns {JSX.Element} The rendered InputCounter component.
|
|
1624
|
+
*
|
|
1625
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input-counter
|
|
1626
|
+
*/
|
|
1627
|
+
declare const InputCounter: FC$1<ILibInputCounter>;
|
|
1628
|
+
|
|
1629
|
+
/**
|
|
1630
|
+
* InputSlider component for creating range input sliders with customizable appearance, tooltips, and min/max value display.
|
|
1631
|
+
*
|
|
1632
|
+
* @component
|
|
1633
|
+
*
|
|
1634
|
+
* @example
|
|
1635
|
+
* <InputSlider
|
|
1636
|
+
* value={50}
|
|
1637
|
+
* min={0}
|
|
1638
|
+
* max={100}
|
|
1639
|
+
* label="Volume"
|
|
1640
|
+
* showValue="hover"
|
|
1641
|
+
* showMinMax
|
|
1642
|
+
* />
|
|
1643
|
+
*
|
|
1644
|
+
* @extends HTMLInputElement
|
|
1645
|
+
*
|
|
1646
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the slider container.
|
|
1647
|
+
* @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
|
|
1648
|
+
* @prop {string} [props.label] - Label text to display above the slider.
|
|
1649
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1650
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1651
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the slider.
|
|
1652
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
1653
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1654
|
+
* @prop {boolean} [props.showMinMax] - Whether to display min and max values on the sides of the slider.
|
|
1655
|
+
* @prop {"never" | "always" | "hover"} [props.showValue="never"] - When to show the current value tooltip.
|
|
1656
|
+
* @prop {number} [props.min=0] - Minimum value for the slider range.
|
|
1657
|
+
* @prop {number} [props.max=100] - Maximum value for the slider range.
|
|
1658
|
+
* @prop {number} [props.value] - Current value of the slider.
|
|
1659
|
+
* @prop {any} [props.rest] - Additional props spread to the input element.
|
|
1660
|
+
*
|
|
1661
|
+
* @returns {JSX.Element} The rendered InputSlider component.
|
|
1662
|
+
*
|
|
1663
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input-slider
|
|
1664
|
+
*/
|
|
1665
|
+
declare const InputSlider: FC$1<ILibInputSlider>;
|
|
1666
|
+
|
|
1667
|
+
/**
|
|
1668
|
+
* Select component for creating dropdown selection inputs with keyboard navigation, validation states, and customizable styling.
|
|
1669
|
+
*
|
|
1670
|
+
* @component
|
|
1671
|
+
*
|
|
1672
|
+
* @example
|
|
1673
|
+
* <Select
|
|
1674
|
+
* value={selectedValue}
|
|
1675
|
+
* setValue={setSelectedValue}
|
|
1676
|
+
* options={["Option 1", "Option 2", "Option 3"]}
|
|
1677
|
+
* label="Choose an option"
|
|
1678
|
+
* placeholder="Select..."
|
|
1679
|
+
* />
|
|
1680
|
+
*
|
|
1681
|
+
* @extends HTMLButtonElement
|
|
1682
|
+
*
|
|
1683
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the select container.
|
|
1684
|
+
* @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
|
|
1685
|
+
* @prop {string} [props.value] - Currently selected value.
|
|
1686
|
+
* @prop {function} [props.setValue] - Function to update the selected value.
|
|
1687
|
+
* @prop {string[]} [props.options] - Array of options to display in the dropdown.
|
|
1688
|
+
* @prop {"up" | "down"} [props.listDirection] - Direction for the dropdown list to appear.
|
|
1689
|
+
* @prop {object} [props.icons] - Icon configuration object with left icon and caret icon.
|
|
1690
|
+
* @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the select input.
|
|
1691
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme of the select input.
|
|
1692
|
+
* @prop {string} [props.label] - Label text to display above the select.
|
|
1693
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1694
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1695
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the select.
|
|
1696
|
+
* @prop {string} [props.id] - Unique identifier for the select element.
|
|
1697
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1698
|
+
* @prop {boolean} [props.disabled] - Whether the select is disabled.
|
|
1699
|
+
* @prop {any} [props.rest] - Additional props spread to the button element.
|
|
1700
|
+
*
|
|
1701
|
+
* @returns {JSX.Element} The rendered Select component.
|
|
1702
|
+
*
|
|
1703
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/select
|
|
1704
|
+
*/
|
|
1705
|
+
declare const Select: FC$1<ILibSelect>;
|
|
1706
|
+
|
|
1707
|
+
/**
|
|
1708
|
+
* Autocomplete component for text input with fuzzy search functionality, keyboard navigation, and customizable dropdown results.
|
|
1709
|
+
*
|
|
1710
|
+
* @component
|
|
1711
|
+
*
|
|
1712
|
+
* @example
|
|
1713
|
+
* <Autocomplete
|
|
1714
|
+
* value={searchValue}
|
|
1715
|
+
* setValue={setSearchValue}
|
|
1716
|
+
* listResults={["React", "Vue", "Angular", "Svelte"]}
|
|
1717
|
+
* label="Framework"
|
|
1718
|
+
* placeholder="Search frameworks..."
|
|
1719
|
+
* focusKeys={["cmd+k"]}
|
|
1720
|
+
* />
|
|
1721
|
+
*
|
|
1722
|
+
* @extends HTMLInputElement
|
|
1723
|
+
*
|
|
1724
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the autocomplete container.
|
|
1725
|
+
* @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
|
|
1726
|
+
* @prop {string} [props.label] - Label text to display above the autocomplete.
|
|
1727
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1728
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1729
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the autocomplete.
|
|
1730
|
+
* @prop {string} [props.value] - Current input value for searching.
|
|
1731
|
+
* @prop {function} [props.setValue] - Function to update the input value.
|
|
1732
|
+
* @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input field.
|
|
1733
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input field.
|
|
1734
|
+
* @prop {string} [props.id] - Unique identifier for the input element.
|
|
1735
|
+
* @prop {string[]} [props.listResults] - Array of items to search through and display as results.
|
|
1736
|
+
* @prop {"up" | "down"} [props.listDirection] - Direction for the dropdown results to appear.
|
|
1737
|
+
* @prop {object} [props.fuzzyOptions={}] - Configuration options for Fuse.js fuzzy search.
|
|
1738
|
+
* @prop {object} [props.icons] - Icon configuration object with left icon and clear icon.
|
|
1739
|
+
* @prop {string[]} [props.focusKeys=[""]] - Array of keyboard shortcuts to focus the input.
|
|
1740
|
+
* @prop {boolean} [props.showKeys] - Whether to display the keyboard shortcut keys.
|
|
1741
|
+
* @prop {string} [props.textNoResult="No result."] - Text to display when no search results are found.
|
|
1742
|
+
* @prop {boolean} [props.disabled] - Whether the autocomplete is disabled.
|
|
1743
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1744
|
+
* @prop {any} [props.rest] - Additional props spread to the input element.
|
|
1745
|
+
*
|
|
1746
|
+
* @returns {JSX.Element} The rendered Autocomplete component.
|
|
1747
|
+
*
|
|
1748
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/autocomplete
|
|
1749
|
+
*/
|
|
1750
|
+
declare const Autocomplete: FC$1<ILibAutocomplete>;
|
|
1751
|
+
|
|
1752
|
+
/**
|
|
1753
|
+
* Rating component for displaying and selecting star ratings with customizable icons, read-only mode, and validation states.
|
|
1754
|
+
*
|
|
1755
|
+
* @component
|
|
1756
|
+
*
|
|
1757
|
+
* @example
|
|
1758
|
+
* <Rating
|
|
1759
|
+
* rating={3}
|
|
1760
|
+
* setRating={setRating}
|
|
1761
|
+
* label="Rate this product"
|
|
1762
|
+
* />
|
|
1763
|
+
* <Rating
|
|
1764
|
+
* rating={4}
|
|
1765
|
+
* readOnly
|
|
1766
|
+
* icons={{ default: <BiHeart />, checked: <BiSolidHeart /> }}
|
|
1767
|
+
* />
|
|
1768
|
+
*
|
|
1769
|
+
* @extends HTMLDivElement
|
|
1770
|
+
*
|
|
1771
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the rating container.
|
|
1772
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the rating container div element.
|
|
1773
|
+
* @prop {number} [props.rating] - Current rating value (1-5 stars).
|
|
1774
|
+
* @prop {function} [props.setRating] - Function to update the rating value when not in read-only mode.
|
|
1775
|
+
* @prop {object} [props.icons] - Icon configuration object with default and checked icon variants.
|
|
1776
|
+
* @prop {boolean} [props.readOnly] - Whether the rating is in read-only mode (no interaction).
|
|
1777
|
+
* @prop {string} [props.label] - Label text to display above the rating.
|
|
1778
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1779
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1780
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the rating.
|
|
1781
|
+
* @prop {string} [props.id] - Unique identifier for the rating element.
|
|
1782
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1783
|
+
* @prop {any} [props.rest] - Additional props spread to the rating container.
|
|
1784
|
+
*
|
|
1785
|
+
* @returns {JSX.Element} The rendered Rating component.
|
|
1786
|
+
*
|
|
1787
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/rating
|
|
1788
|
+
*/
|
|
1789
|
+
declare const Rating: FC$1<ILibRating>;
|
|
1790
|
+
|
|
1791
|
+
/**
|
|
1792
|
+
* InputPin component for creating PIN code or verification code inputs with multiple individual input fields.
|
|
1793
|
+
*
|
|
1794
|
+
* @component
|
|
1795
|
+
*
|
|
1796
|
+
* @example
|
|
1797
|
+
* <InputPin
|
|
1798
|
+
* values={{ pin1: "", pin2: "", pin3: "", pin4: "" }}
|
|
1799
|
+
* setValues={setValues}
|
|
1800
|
+
* label="Enter PIN Code"
|
|
1801
|
+
* hideValues
|
|
1802
|
+
* />
|
|
1803
|
+
*
|
|
1804
|
+
* @extends HTMLDivElement
|
|
1805
|
+
*
|
|
1806
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the pin input container.
|
|
1807
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the pin input container div element.
|
|
1808
|
+
* @prop {string} [props.label] - Label text to display above the pin inputs.
|
|
1809
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1810
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1811
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the pin inputs.
|
|
1812
|
+
* @prop {string} [props.id] - Unique identifier for the pin input container.
|
|
1813
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1814
|
+
* @prop {object} [props.values] - Object containing the current values for each pin input field.
|
|
1815
|
+
* @prop {function} [props.setValues] - Function to update the pin input values.
|
|
1816
|
+
* @prop {string[]} [props.placeholders] - Array of placeholder texts for each pin input field.
|
|
1817
|
+
* @prop {boolean} [props.hideValues] - Whether to hide the input values (password mode).
|
|
1818
|
+
* @prop {boolean} [props.disabled] - Whether the pin inputs are disabled.
|
|
1819
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input fields.
|
|
1820
|
+
* @prop {any} [props.rest] - Additional props spread to the pin input container.
|
|
1821
|
+
*
|
|
1822
|
+
* @returns {JSX.Element} The rendered InputPin component.
|
|
1823
|
+
*
|
|
1824
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/input-pin
|
|
1825
|
+
*/
|
|
1826
|
+
declare const InputPin: FC$1<ILibInputPin>;
|
|
1827
|
+
|
|
1828
|
+
/**
|
|
1829
|
+
* Fieldset component for grouping related form controls with a legend, validation states, and customizable styling.
|
|
1830
|
+
*
|
|
1831
|
+
* @component
|
|
1832
|
+
*
|
|
1833
|
+
* @example
|
|
1834
|
+
* <Fieldset
|
|
1835
|
+
* legend="Personal Information"
|
|
1836
|
+
* label="User Details"
|
|
1837
|
+
* borderRadius="lg"
|
|
1838
|
+
* >
|
|
1839
|
+
* <Input label="First Name" />
|
|
1840
|
+
* <Input label="Last Name" />
|
|
1841
|
+
* <Input label="Email" />
|
|
1842
|
+
* </Fieldset>
|
|
1843
|
+
*
|
|
1844
|
+
* @extends HTMLFieldSetElement
|
|
1845
|
+
*
|
|
1846
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the fieldset container.
|
|
1847
|
+
* @prop {React.Ref<HTMLFieldSetElement>} [props.ref] - Ref to the fieldset element.
|
|
1848
|
+
* @prop {React.ReactNode} [props.children] - Form controls and content to display inside the fieldset.
|
|
1849
|
+
* @prop {string} [props.label] - Label text to display above the fieldset.
|
|
1850
|
+
* @prop {string} [props.labelComment] - Additional comment text next to the label.
|
|
1851
|
+
* @prop {string} [props.helper] - Helper text to display below the label.
|
|
1852
|
+
* @prop {string} [props.helperBottom] - Helper text to display at the bottom of the fieldset.
|
|
1853
|
+
* @prop {string} [props.id] - Unique identifier for the fieldset element.
|
|
1854
|
+
* @prop {LibValidation} [props.validation] - Validation state and configuration object.
|
|
1855
|
+
* @prop {string} [props.legend] - Legend text to display as the fieldset title.
|
|
1856
|
+
* @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius="md"] - Border radius size for the fieldset.
|
|
1857
|
+
* @prop {any} [props.rest] - Additional props spread to the fieldset element.
|
|
1858
|
+
*
|
|
1859
|
+
* @returns {JSX.Element} The rendered Fieldset component.
|
|
1860
|
+
*
|
|
1861
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/fieldset
|
|
1862
|
+
*/
|
|
1863
|
+
declare const Fieldset: FC$1<ILibFieldset>;
|
|
1864
|
+
|
|
1865
|
+
/**
|
|
1866
|
+
* Form component for creating forms with built-in submit and secondary action buttons, loading states, and validation support.
|
|
1867
|
+
*
|
|
1868
|
+
* @component
|
|
1869
|
+
*
|
|
1870
|
+
* @example
|
|
1871
|
+
* <Form
|
|
1872
|
+
* buttonPrimary="Submit"
|
|
1873
|
+
* buttonSecondary={{ content: "Cancel", onClick: handleCancel }}
|
|
1874
|
+
* isLoading={isSubmitting}
|
|
1875
|
+
* disabled={!isValid}
|
|
1876
|
+
* >
|
|
1877
|
+
* <Input label="Name" value={name} setValue={setName} />
|
|
1878
|
+
* <Input label="Email" value={email} setValue={setEmail} />
|
|
1879
|
+
* </Form>
|
|
1880
|
+
*
|
|
1881
|
+
* @extends HTMLFormElement
|
|
1882
|
+
*
|
|
1883
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the form container.
|
|
1884
|
+
* @prop {React.Ref<HTMLFormElement>} [props.ref] - Ref to the form element.
|
|
1885
|
+
* @prop {React.ReactNode} [props.children] - Form fields and content to display inside the form.
|
|
1886
|
+
* @prop {boolean} [props.isLoading] - Whether the form is in a loading state (shows loader on primary button).
|
|
1887
|
+
* @prop {boolean} [props.disabled] - Whether the form and its primary button are disabled.
|
|
1888
|
+
* @prop {string} [props.buttonPrimary] - Text content for the primary submit button.
|
|
1889
|
+
* @prop {object} [props.buttonSecondary] - Configuration object for the secondary button with content and additional props.
|
|
1890
|
+
* @prop {1 | 2 | 3} [props.loaderVariant] - Type of loader animation to display on the primary button when loading.
|
|
1891
|
+
* @prop {any} [props.rest] - Additional props spread to the form element.
|
|
1892
|
+
*
|
|
1893
|
+
* @returns {JSX.Element} The rendered Form component.
|
|
1894
|
+
*
|
|
1895
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/form
|
|
1896
|
+
*/
|
|
1897
|
+
declare const Form: FC$1<ILibForm>;
|
|
1898
|
+
|
|
1899
|
+
/**
|
|
1900
|
+
* ListGroup component for displaying a structured list of items with optional title, numbering, and separators.
|
|
1901
|
+
*
|
|
1902
|
+
* @component
|
|
1903
|
+
*
|
|
1904
|
+
* @example
|
|
1905
|
+
* <ListGroup
|
|
1906
|
+
* title="My List"
|
|
1907
|
+
* items={[
|
|
1908
|
+
* { title: "Item 1", body: "Description 1" },
|
|
1909
|
+
* { title: "Item 2", body: "Description 2" }
|
|
1910
|
+
* ]}
|
|
1911
|
+
* showNumbers
|
|
1912
|
+
* />
|
|
1913
|
+
*
|
|
1914
|
+
* @extends HTMLDivElement
|
|
1915
|
+
*
|
|
1916
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the list group container.
|
|
1917
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
1918
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the list group container element.
|
|
1919
|
+
* @prop {React.ReactNode} [props.children] - Child components to render inside the list group.
|
|
1920
|
+
* @prop {string | object} [props.title] - Title text or configuration object for the list group header.
|
|
1921
|
+
* @prop {boolean} [props.noSeparator] - Whether to hide separators between list items.
|
|
1922
|
+
* @prop {boolean} [props.showNumbers] - Whether to display numbers next to each list item.
|
|
1923
|
+
* @prop {Array} [props.items] - Array of item objects to render as list items.
|
|
1924
|
+
*
|
|
1925
|
+
* @returns {JSX.Element} The rendered ListGroup component.
|
|
1926
|
+
*
|
|
1927
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/list-group
|
|
1928
|
+
*/
|
|
1929
|
+
declare const ListGroup: FC$1<ILibListGroup>;
|
|
1930
|
+
|
|
1931
|
+
/**
|
|
1932
|
+
* ListGroupTitle component for rendering a styled header/title for list groups with optional fixed positioning and shadow effects.
|
|
1933
|
+
*
|
|
1934
|
+
* @component
|
|
1935
|
+
*
|
|
1936
|
+
* @example
|
|
1937
|
+
* <ListGroupTitle
|
|
1938
|
+
* isFixed
|
|
1939
|
+
* shadow="lg"
|
|
1940
|
+
* listRef={listRef}
|
|
1941
|
+
* >
|
|
1942
|
+
* My List Title
|
|
1943
|
+
* </ListGroupTitle>
|
|
1944
|
+
*
|
|
1945
|
+
* @extends HTMLDivElement
|
|
1946
|
+
*
|
|
1947
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the title container.
|
|
1948
|
+
* @prop {React.ElementType} [props.element=Text] - HTML element type to render as the container.
|
|
1949
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the title element.
|
|
1950
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the title.
|
|
1951
|
+
* @prop {boolean} [props.isFixed] - Whether the title should be sticky positioned at the top.
|
|
1952
|
+
* @prop {"xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "inner" | "none"} [props.shadow] - Shadow variant to apply when scrolled.
|
|
1953
|
+
* @prop {React.RefObject} [props.listRef] - Ref to the scrollable list container for scroll detection.
|
|
1954
|
+
* @prop {boolean} [props.noSeparator] - Whether to hide the bottom border separator.
|
|
1955
|
+
*
|
|
1956
|
+
* @returns {JSX.Element} The rendered ListGroupTitle component.
|
|
1957
|
+
*
|
|
1958
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/list-group
|
|
1959
|
+
*/
|
|
1960
|
+
declare const ListGroupTitle: FC$1<ILibListGroupTitle>;
|
|
1961
|
+
|
|
1962
|
+
/**
|
|
1963
|
+
* ListGroupItem component for rendering individual items within a list group with optional numbering, content, and separators.
|
|
1964
|
+
*
|
|
1965
|
+
* @component
|
|
1966
|
+
*
|
|
1967
|
+
* @example
|
|
1968
|
+
* <ListGroupItem
|
|
1969
|
+
* title="Item Title"
|
|
1970
|
+
* body="Item description"
|
|
1971
|
+
* number={1}
|
|
1972
|
+
* contentRight={<Button>Action</Button>}
|
|
1973
|
+
* />
|
|
1974
|
+
*
|
|
1975
|
+
* @extends HTMLDivElement
|
|
1976
|
+
*
|
|
1977
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the list item container.
|
|
1978
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
1979
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the list item container element.
|
|
1980
|
+
* @prop {React.ReactNode} [props.children] - Child components to render inside the list item.
|
|
1981
|
+
* @prop {string} [props.title] - Title text to display for the list item.
|
|
1982
|
+
* @prop {string} [props.body] - Body text or description to display below the title.
|
|
1983
|
+
* @prop {React.ReactNode} [props.contentRight] - Content to display on the right side of the list item.
|
|
1984
|
+
* @prop {boolean} [props.noSeparator] - Whether to hide the separator border between list items.
|
|
1985
|
+
* @prop {number} [props.number] - Number to display before the title when using numbered lists.
|
|
1986
|
+
*
|
|
1987
|
+
* @returns {JSX.Element} The rendered ListGroupItem component.
|
|
1988
|
+
*
|
|
1989
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/list-group
|
|
1990
|
+
*/
|
|
1991
|
+
declare const ListGroupItem: FC$1<ILibListGroupItem>;
|
|
1992
|
+
|
|
1993
|
+
/**
|
|
1994
|
+
* Breadcrumbs component for displaying navigational breadcrumb trails with customizable separators and flexible content.
|
|
1995
|
+
*
|
|
1996
|
+
* @component
|
|
1997
|
+
*
|
|
1998
|
+
* @example
|
|
1999
|
+
* <Breadcrumbs separator=">">
|
|
2000
|
+
* <Link to="/">Home</Link>
|
|
2001
|
+
* <Link to="/products">Products</Link>
|
|
2002
|
+
* <Text>Current Page</Text>
|
|
2003
|
+
* </Breadcrumbs>
|
|
2004
|
+
*
|
|
2005
|
+
* @extends HTMLDivElement
|
|
2006
|
+
*
|
|
2007
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the breadcrumbs container.
|
|
2008
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2009
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the breadcrumbs container element.
|
|
2010
|
+
* @prop {React.ReactNode} [props.children] - Navigation items to display in the breadcrumb trail.
|
|
2011
|
+
* @prop {string | React.ReactNode} [props.separator="/"] - Separator to display between breadcrumb items.
|
|
2012
|
+
* @prop {any} [props.rest] - Additional props spread to the container element.
|
|
2013
|
+
*
|
|
2014
|
+
* @returns {JSX.Element} The rendered Breadcrumbs component.
|
|
2015
|
+
*
|
|
2016
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/breadcrumbs
|
|
2017
|
+
*/
|
|
2018
|
+
declare const Breadcrumbs: FC$1<ILibBreadcrumbs>;
|
|
2019
|
+
|
|
2020
|
+
/**
|
|
2021
|
+
* Accordion component for creating collapsible content sections with customizable styling and expandable items.
|
|
2022
|
+
*
|
|
2023
|
+
* @component
|
|
2024
|
+
*
|
|
2025
|
+
* @example
|
|
2026
|
+
* <Accordion
|
|
2027
|
+
* variant="rounded"
|
|
2028
|
+
* icon="plus"
|
|
2029
|
+
* items={[
|
|
2030
|
+
* { title: "Section 1", content: <p>Content 1</p>, defaultOpen: true },
|
|
2031
|
+
* { title: "Section 2", content: <p>Content 2</p> }
|
|
2032
|
+
* ]}
|
|
2033
|
+
* />
|
|
2034
|
+
*
|
|
2035
|
+
* @extends ILibAccordion
|
|
2036
|
+
*
|
|
2037
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the accordion container.
|
|
2038
|
+
* @prop {React.ReactNode} [props.children] - Child AccordionItem components to render when not using items prop.
|
|
2039
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the accordion container element.
|
|
2040
|
+
* @prop {"basic" | "rounded"} [props.variant="basic"] - Visual style variant of the accordion.
|
|
2041
|
+
* @prop {"plus" | "chevron"} [props.icon="plus"] - Type of icon to display for expand/collapse indicators.
|
|
2042
|
+
* @prop {Array} [props.items] - Array of accordion items with title, content, and defaultOpen properties.
|
|
2043
|
+
*
|
|
2044
|
+
* @returns {JSX.Element} The rendered Accordion component.
|
|
2045
|
+
*
|
|
2046
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/accordion
|
|
2047
|
+
*/
|
|
2048
|
+
declare const Accordion: FC$1<ILibAccordion>;
|
|
2049
|
+
|
|
2050
|
+
/**
|
|
2051
|
+
* AccordionItem component for creating individual collapsible sections with title, content, and customizable styling.
|
|
2052
|
+
*
|
|
2053
|
+
* @component
|
|
2054
|
+
*
|
|
2055
|
+
* @example
|
|
2056
|
+
* <AccordionItem
|
|
2057
|
+
* title="Section Title"
|
|
2058
|
+
* icon="plus"
|
|
2059
|
+
* variant="rounded"
|
|
2060
|
+
* defaultOpen={false}
|
|
2061
|
+
* >
|
|
2062
|
+
* <p>This is the accordion content that can be expanded or collapsed.</p>
|
|
2063
|
+
* </AccordionItem>
|
|
2064
|
+
*
|
|
2065
|
+
* @extends HTMLDivElement
|
|
2066
|
+
*
|
|
2067
|
+
* @prop {React.ReactNode} [props.title] - Title content to display in the accordion header.
|
|
2068
|
+
* @prop {"plus" | "chevron"} [props.icon="chevron"] - Type of icon to display for expand/collapse indicator.
|
|
2069
|
+
* @prop {"basic" | "rounded"} [props.variant="basic"] - Visual style variant of the accordion item.
|
|
2070
|
+
* @prop {boolean} [props.defaultOpen=false] - Whether the accordion should be open by default.
|
|
2071
|
+
*
|
|
2072
|
+
* @returns {JSX.Element} The rendered AccordionItem component.
|
|
2073
|
+
*
|
|
2074
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/accordion
|
|
2075
|
+
*/
|
|
2076
|
+
declare const AccordionItem: FC$1<ILibAccordionItem>;
|
|
2077
|
+
|
|
2078
|
+
/**
|
|
2079
|
+
* Dropdown component for creating contextual menus and popover content with customizable positioning and animations.
|
|
2080
|
+
*
|
|
2081
|
+
* @component
|
|
2082
|
+
*
|
|
2083
|
+
* @example
|
|
2084
|
+
* <Dropdown
|
|
2085
|
+
* isOpen={isOpen}
|
|
2086
|
+
* setIsOpen={setIsOpen}
|
|
2087
|
+
* direction="down"
|
|
2088
|
+
* shadow="lg"
|
|
2089
|
+
* items={[
|
|
2090
|
+
* { content: "Profile", onClick: handleProfile },
|
|
2091
|
+
* { content: "Settings", onClick: handleSettings },
|
|
2092
|
+
* { content: "Logout", onClick: handleLogout }
|
|
2093
|
+
* ]}
|
|
2094
|
+
* />
|
|
2095
|
+
*
|
|
2096
|
+
* @extends HTMLDivElement
|
|
2097
|
+
*
|
|
2098
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the dropdown container.
|
|
2099
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2100
|
+
* @prop {React.ReactNode} [props.children] - Child DropdownItem components to render when not using items prop.
|
|
2101
|
+
* @prop {boolean} [props.isOpen] - Whether the dropdown is currently visible.
|
|
2102
|
+
* @prop {function} [props.setIsOpen] - Function to control the dropdown open/closed state.
|
|
2103
|
+
* @prop {"up" | "down"} [props.direction="down"] - Direction for the dropdown to appear relative to its trigger.
|
|
2104
|
+
* @prop {"xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "inner" | "none"} [props.shadow] - Shadow variant to apply when dropdown is open.
|
|
2105
|
+
* @prop {Array} [props.items] - Array of dropdown item objects with content and click handlers.
|
|
2106
|
+
* @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius="md"] - Border radius size for the dropdown container.
|
|
2107
|
+
*
|
|
2108
|
+
* @returns {JSX.Element} The rendered Dropdown component.
|
|
2109
|
+
*
|
|
2110
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/dropdown
|
|
2111
|
+
*/
|
|
2112
|
+
declare const Dropdown: FC$1<ILibDropdown>;
|
|
2113
|
+
|
|
2114
|
+
/**
|
|
2115
|
+
* DropdownItem component for rendering individual items within dropdown menus with hover states and customizable content.
|
|
2116
|
+
*
|
|
2117
|
+
* @component
|
|
2118
|
+
*
|
|
2119
|
+
* @example
|
|
2120
|
+
* <DropdownItem onClick={handleClick}>
|
|
2121
|
+
* Menu Item
|
|
2122
|
+
* </DropdownItem>
|
|
2123
|
+
* <DropdownItem element="a" href="/profile">
|
|
2124
|
+
* Profile
|
|
2125
|
+
* </DropdownItem>
|
|
2126
|
+
*
|
|
2127
|
+
* @extends HTMLButtonElement
|
|
2128
|
+
*
|
|
2129
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the dropdown item.
|
|
2130
|
+
* @prop {React.ElementType} [props.element="button"] - HTML element type to render as the item container.
|
|
2131
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the dropdown item.
|
|
2132
|
+
*
|
|
2133
|
+
* @returns {JSX.Element} The rendered DropdownItem component.
|
|
2134
|
+
*
|
|
2135
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/dropdown
|
|
2136
|
+
*/
|
|
2137
|
+
declare const DropdownItem: FC$1<ILibDropdownItem>;
|
|
2138
|
+
|
|
2139
|
+
/**
|
|
2140
|
+
* Toast component for displaying temporary notification messages with different status types and optional close functionality.
|
|
2141
|
+
*
|
|
2142
|
+
* @component
|
|
2143
|
+
*
|
|
2144
|
+
* @example
|
|
2145
|
+
* <Toast
|
|
2146
|
+
* title="Success!"
|
|
2147
|
+
* body="Your changes have been saved."
|
|
2148
|
+
* status="success"
|
|
2149
|
+
* closeToast={handleClose}
|
|
2150
|
+
* />
|
|
2151
|
+
*
|
|
2152
|
+
* @extends HTMLDivElement
|
|
2153
|
+
*
|
|
2154
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the toast container.
|
|
2155
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2156
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the toast element.
|
|
2157
|
+
* @prop {React.ReactNode} [props.body] - Body content to display below the title.
|
|
2158
|
+
* @prop {React.ReactNode} [props.title] - Title content to display in the toast header.
|
|
2159
|
+
* @prop {"success" | "error" | "warning" | "info" | "loading"} [props.status="success"] - Status type that determines the toast appearance and behavior.
|
|
2160
|
+
* @prop {boolean} [props.hideCloseButton] - Whether to hide the close button in the toast.
|
|
2161
|
+
* @prop {function} [props.closeToast] - Function to call when the close button is clicked.
|
|
2162
|
+
* @prop {React.ReactElement} [props.iconClose] - Custom icon for the close button.
|
|
2163
|
+
* @prop {1 | 2 | 3} [props.loaderVariant] - Variant of the loader shown when status is "loading".
|
|
2164
|
+
*
|
|
2165
|
+
* @returns {JSX.Element} The rendered Toast component.
|
|
2166
|
+
*
|
|
2167
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/toast
|
|
2168
|
+
*/
|
|
2169
|
+
declare const Toast: FC$1<ILibToast>;
|
|
2170
|
+
|
|
2171
|
+
/**
|
|
2172
|
+
* ToastContainer component for managing and displaying toast notifications with customizable positioning and behavior.
|
|
2173
|
+
*
|
|
2174
|
+
* @component
|
|
2175
|
+
*
|
|
2176
|
+
* @example
|
|
2177
|
+
* <ToastContainer
|
|
2178
|
+
* position="top-right"
|
|
2179
|
+
* autoClose={5000}
|
|
2180
|
+
* hideProgressBar={false}
|
|
2181
|
+
* />
|
|
2182
|
+
*
|
|
2183
|
+
* @extends ToastContainerProps from "react-toastify"
|
|
2184
|
+
*
|
|
2185
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the toast container.
|
|
2186
|
+
* @prop {"top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right"} [props.position="bottom-right"] - Position where toasts will appear on the screen.
|
|
2187
|
+
* @prop {number | false} [props.autoClose] - Time in milliseconds before toasts auto-close, or false to disable.
|
|
2188
|
+
* @prop {boolean} [props.hideProgressBar] - Whether to hide the progress bar on toasts.
|
|
2189
|
+
* @prop {boolean} [props.newestOnTop] - Whether to display newest toasts at the top.
|
|
2190
|
+
* @prop {boolean} [props.closeOnClick] - Whether toasts close when clicked.
|
|
2191
|
+
* @prop {boolean} [props.rtl] - Whether to use right-to-left layout.
|
|
2192
|
+
* @prop {boolean} [props.pauseOnFocusLoss] - Whether to pause toast timers when window loses focus.
|
|
2193
|
+
* @prop {boolean} [props.draggable] - Whether toasts can be dragged to dismiss.
|
|
2194
|
+
* @prop {boolean} [props.pauseOnHover] - Whether to pause toast timers on hover.
|
|
2195
|
+
* @prop {"default" | "colored" | "dark"} [props.theme] - Visual theme for the toast container.
|
|
2196
|
+
* @prop {number} [props.limit] - Maximum number of toasts to display at once.
|
|
2197
|
+
*
|
|
2198
|
+
* @returns {JSX.Element} The rendered ToastContainer component.
|
|
2199
|
+
*
|
|
2200
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/toast
|
|
2201
|
+
*/
|
|
2202
|
+
declare const ToastContainer: FC$1<ToastContainerProps>;
|
|
2203
|
+
|
|
2204
|
+
/**
|
|
2205
|
+
* Toast utility functions for displaying different types of notification messages with customizable options and automatic styling.
|
|
2206
|
+
*
|
|
2207
|
+
* @namespace toast
|
|
2208
|
+
*
|
|
2209
|
+
* @example
|
|
2210
|
+
* // Success toast
|
|
2211
|
+
* toast.success("Operation completed!", {
|
|
2212
|
+
* body: "Your changes have been saved.",
|
|
2213
|
+
* duration: 5000
|
|
2214
|
+
* })
|
|
2215
|
+
*
|
|
2216
|
+
* // Error toast
|
|
2217
|
+
* toast.error("Something went wrong!", {
|
|
2218
|
+
* body: "Please try again later."
|
|
2219
|
+
* })
|
|
2220
|
+
*
|
|
2221
|
+
* // Close all toasts
|
|
2222
|
+
* toast.close()
|
|
2223
|
+
*
|
|
2224
|
+
* @prop {function} success - Display a success toast notification with green styling.
|
|
2225
|
+
* @prop {function} error - Display an error toast notification with red styling.
|
|
2226
|
+
* @prop {function} warning - Display a warning toast notification with yellow styling.
|
|
2227
|
+
* @prop {function} info - Display an info toast notification with blue styling.
|
|
2228
|
+
* @prop {function} loading - Display a loading toast notification with gray styling.
|
|
2229
|
+
* @prop {function} close - Close/dismiss all active toast notifications.
|
|
2230
|
+
*
|
|
2231
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/toast
|
|
2232
|
+
*/
|
|
2233
|
+
declare const toast: {
|
|
2234
|
+
success: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
|
|
2235
|
+
duration?: number;
|
|
2236
|
+
iconClose?: ReactElement;
|
|
2237
|
+
}) => react_toastify.Id;
|
|
2238
|
+
error: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
|
|
2239
|
+
duration?: number;
|
|
2240
|
+
iconClose?: ReactElement;
|
|
2241
|
+
}) => react_toastify.Id;
|
|
2242
|
+
warning: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
|
|
2243
|
+
duration?: number;
|
|
2244
|
+
iconClose?: ReactElement;
|
|
2245
|
+
}) => react_toastify.Id;
|
|
2246
|
+
info: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
|
|
2247
|
+
duration?: number;
|
|
2248
|
+
iconClose?: ReactElement;
|
|
2249
|
+
}) => react_toastify.Id;
|
|
2250
|
+
loading: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
|
|
2251
|
+
duration?: number;
|
|
2252
|
+
iconClose?: ReactElement;
|
|
2253
|
+
loaderVariant?: LibLoaderVariant;
|
|
2254
|
+
}) => react_toastify.Id;
|
|
2255
|
+
close: () => void;
|
|
2256
|
+
};
|
|
2257
|
+
|
|
2258
|
+
/**
|
|
2259
|
+
* Alert component for displaying informational messages with customizable colors and styling.
|
|
2260
|
+
*
|
|
2261
|
+
* @component
|
|
2262
|
+
*
|
|
2263
|
+
* @example
|
|
2264
|
+
* <Alert color="success">
|
|
2265
|
+
* Operation completed successfully!
|
|
2266
|
+
* </Alert>
|
|
2267
|
+
* <Alert color="danger">
|
|
2268
|
+
* <Text>Error occurred</Text>
|
|
2269
|
+
* <Text>Please try again</Text>
|
|
2270
|
+
* </Alert>
|
|
2271
|
+
*
|
|
2272
|
+
* @extends HTMLDivElement
|
|
2273
|
+
*
|
|
2274
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the alert container.
|
|
2275
|
+
* @prop {React.ElementType} [props.element=typeof children === "string" ? Text : "div"] - HTML element type to render as the container.
|
|
2276
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the alert element.
|
|
2277
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the alert.
|
|
2278
|
+
* @prop {LibAllColors} [props.color="primary"] - Color theme for the alert background and border.
|
|
2279
|
+
*
|
|
2280
|
+
* @returns {JSX.Element} The rendered Alert component.
|
|
2281
|
+
*
|
|
2282
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/alert
|
|
2283
|
+
*/
|
|
2284
|
+
declare const Alert: FC$1<ILibAlert>;
|
|
2285
|
+
|
|
2286
|
+
/**
|
|
2287
|
+
* Modal component for displaying overlay content with backdrop, close functionality, and keyboard navigation support.
|
|
2288
|
+
*
|
|
2289
|
+
* @component
|
|
2290
|
+
*
|
|
2291
|
+
* @example
|
|
2292
|
+
* <Modal
|
|
2293
|
+
* isOpen={isOpen}
|
|
2294
|
+
* setIsOpen={setIsOpen}
|
|
2295
|
+
* labelClose="Close dialog"
|
|
2296
|
+
* >
|
|
2297
|
+
* <div className="bg-white p-6 rounded-lg">
|
|
2298
|
+
* <h2>Modal Content</h2>
|
|
2299
|
+
* <p>This is a modal dialog.</p>
|
|
2300
|
+
* </div>
|
|
2301
|
+
* </Modal>
|
|
2302
|
+
*
|
|
2303
|
+
* @extends HTMLDivElement
|
|
2304
|
+
*
|
|
2305
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the modal container.
|
|
2306
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2307
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the modal element.
|
|
2308
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the modal.
|
|
2309
|
+
* @prop {boolean} [props.isOpen] - Whether the modal is currently visible.
|
|
2310
|
+
* @prop {function} [props.setIsOpen] - Function to control the modal open/closed state.
|
|
2311
|
+
* @prop {boolean} [props.disableEsc] - Whether to disable closing the modal with the Escape key.
|
|
2312
|
+
* @prop {boolean} [props.hideCloseButton] - Whether to hide the close button in the modal.
|
|
2313
|
+
* @prop {React.ReactNode} [props.closeIcon=<BiX size={32} />] - Custom close icon for the modal.
|
|
2314
|
+
* @prop {string} [props.labelClose="Close modal"] - Aria label for the close button.
|
|
2315
|
+
*
|
|
2316
|
+
* @returns {JSX.Element} The rendered Modal component.
|
|
2317
|
+
*
|
|
2318
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/modal
|
|
2319
|
+
*/
|
|
2320
|
+
declare const Modal: FC$1<ILibModal>;
|
|
2321
|
+
|
|
2322
|
+
/**
|
|
2323
|
+
* DragList component for creating draggable and reorderable lists with customizable items and separators.
|
|
2324
|
+
*
|
|
2325
|
+
* @component
|
|
2326
|
+
*
|
|
2327
|
+
* @example
|
|
2328
|
+
* <DragList
|
|
2329
|
+
* items={dragItems}
|
|
2330
|
+
* setItems={setDragItems}
|
|
2331
|
+
* iconDrag={<GripVertical />}
|
|
2332
|
+
* hideSeparator={false}
|
|
2333
|
+
* />
|
|
2334
|
+
*
|
|
2335
|
+
* @extends HTMLDivElement
|
|
2336
|
+
*
|
|
2337
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the drag list container.
|
|
2338
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2339
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the drag list element.
|
|
2340
|
+
* @prop {React.ReactNode} [props.children] - Child components to render when not using items prop.
|
|
2341
|
+
* @prop {React.ReactNode} [props.iconDrag] - Icon to display as the drag handle for each item.
|
|
2342
|
+
* @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius] - Border radius size for the drag list container.
|
|
2343
|
+
* @prop {Array} [props.items] - Array of draggable items with id, title, and body properties.
|
|
2344
|
+
* @prop {function} [props.setItems] - Function to update the items array when items are reordered.
|
|
2345
|
+
* @prop {boolean} [props.hideSeparator] - Whether to hide separators between draggable items.
|
|
2346
|
+
*
|
|
2347
|
+
* @returns {JSX.Element} The rendered DragList component.
|
|
2348
|
+
*
|
|
2349
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/drag-list
|
|
2350
|
+
*/
|
|
2351
|
+
declare const DragList: FC$1<ILibDragList>;
|
|
2352
|
+
|
|
2353
|
+
/**
|
|
2354
|
+
* DragListItem component for rendering individual draggable items within a drag list with drag handles and content.
|
|
2355
|
+
*
|
|
2356
|
+
* @component
|
|
2357
|
+
*
|
|
2358
|
+
* @example
|
|
2359
|
+
* <DragListItem
|
|
2360
|
+
* item={{ id: "1", title: "Item Title", body: "Item description" }}
|
|
2361
|
+
* index={0}
|
|
2362
|
+
* handleDragStart={handleDragStart}
|
|
2363
|
+
* handleDragOver={handleDragOver}
|
|
2364
|
+
* iconDrag={<GripVertical />}
|
|
2365
|
+
* />
|
|
2366
|
+
*
|
|
2367
|
+
* @extends HTMLDivElement
|
|
2368
|
+
*
|
|
2369
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the drag list item.
|
|
2370
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2371
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the drag list item element.
|
|
2372
|
+
* @prop {React.ReactNode} [props.children] - Child components to render when not using item prop.
|
|
2373
|
+
* @prop {number} [props.index] - Index position of the item in the drag list.
|
|
2374
|
+
* @prop {React.ReactNode} [props.iconDrag=<BiDotsVerticalRounded size={24} />] - Icon to display as the drag handle.
|
|
2375
|
+
* @prop {function} [props.handleDragStart] - Function called when drag operation starts.
|
|
2376
|
+
* @prop {function} [props.handleDragOver] - Function called when dragging over this item.
|
|
2377
|
+
* @prop {object} [props.item] - Item object containing id, title, and body properties.
|
|
2378
|
+
* @prop {string} [props.id] - Unique identifier for the drag list item.
|
|
2379
|
+
* @prop {string} [props.iconLabel="Drag"] - Aria label for the drag handle button.
|
|
2380
|
+
*
|
|
2381
|
+
* @returns {JSX.Element} The rendered DragListItem component.
|
|
2382
|
+
*
|
|
2383
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/drag-list
|
|
2384
|
+
*/
|
|
2385
|
+
declare const DragListItem: FC$1<ILibDragListItem>;
|
|
2386
|
+
|
|
2387
|
+
/**
|
|
2388
|
+
* Pagination component for navigating through multiple pages of content with customizable styling and navigation controls.
|
|
2389
|
+
*
|
|
2390
|
+
* @component
|
|
2391
|
+
*
|
|
2392
|
+
* @example
|
|
2393
|
+
* <Pagination
|
|
2394
|
+
* currentPage={currentPage}
|
|
2395
|
+
* setCurrentPage={setCurrentPage}
|
|
2396
|
+
* totalPages={20}
|
|
2397
|
+
* accentColor="primary"
|
|
2398
|
+
* pageLimit={5}
|
|
2399
|
+
* />
|
|
2400
|
+
*
|
|
2401
|
+
* @extends HTMLDivElement
|
|
2402
|
+
*
|
|
2403
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the pagination container.
|
|
2404
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2405
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the pagination element.
|
|
2406
|
+
* @prop {React.ReactNode} [props.children] - Child components to render when not using totalPages prop.
|
|
2407
|
+
* @prop {LibAllColors} [props.accentColor="primary"] - Color theme for active page and hover states.
|
|
2408
|
+
* @prop {number} [props.totalPages] - Total number of pages available for navigation.
|
|
2409
|
+
* @prop {object} [props.icons] - Custom icons for previous and next navigation buttons.
|
|
2410
|
+
* @prop {React.ReactNode} [props.icons.prev] - Custom icon for the previous page button.
|
|
2411
|
+
* @prop {React.ReactNode} [props.icons.next] - Custom icon for the next page button.
|
|
2412
|
+
* @prop {number} [props.pageLimit=5] - Maximum number of page buttons to display at once.
|
|
2413
|
+
* @prop {number} [props.currentPage] - Current active page number.
|
|
2414
|
+
* @prop {function} [props.setCurrentPage] - Function to update the current page state.
|
|
2415
|
+
*
|
|
2416
|
+
* @returns {JSX.Element} The rendered Pagination component.
|
|
2417
|
+
*
|
|
2418
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/pagination
|
|
2419
|
+
*/
|
|
2420
|
+
declare const Pagination: FC$1<ILibPagination>;
|
|
2421
|
+
|
|
2422
|
+
/**
|
|
2423
|
+
* PaginationButton component for rendering individual page navigation buttons with active states and styling.
|
|
2424
|
+
*
|
|
2425
|
+
* @component
|
|
2426
|
+
*
|
|
2427
|
+
* @example
|
|
2428
|
+
* <PaginationButton
|
|
2429
|
+
* accentColor="primary"
|
|
2430
|
+
* isActive={currentPage === 5}
|
|
2431
|
+
* onClick={() => handlePage(5)}
|
|
2432
|
+
* >
|
|
2433
|
+
* 5
|
|
2434
|
+
* </PaginationButton>
|
|
2435
|
+
*
|
|
2436
|
+
* @extends HTMLButtonElement
|
|
2437
|
+
*
|
|
2438
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the pagination button.
|
|
2439
|
+
* @prop {React.ElementType} [props.element="button"] - HTML element type to render as the container.
|
|
2440
|
+
* @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the pagination button element.
|
|
2441
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the button (usually page number).
|
|
2442
|
+
* @prop {LibAllColors} [props.accentColor="primary"] - Color theme for active and hover states.
|
|
2443
|
+
* @prop {boolean} [props.isActive] - Whether this button represents the current active page.
|
|
2444
|
+
* @prop {boolean} [props.readOnly] - Whether the button is in read-only mode (non-interactive).
|
|
2445
|
+
*
|
|
2446
|
+
* @returns {JSX.Element} The rendered PaginationButton component.
|
|
2447
|
+
*
|
|
2448
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/pagination
|
|
2449
|
+
*/
|
|
2450
|
+
declare const PaginationButton: FC$1<ILibPaginationButton>;
|
|
2451
|
+
|
|
2452
|
+
/**
|
|
2453
|
+
* Paginator component for simple page navigation with input field and next/previous buttons.
|
|
2454
|
+
*
|
|
2455
|
+
* @component
|
|
2456
|
+
*
|
|
2457
|
+
* @example
|
|
2458
|
+
* <Paginator
|
|
2459
|
+
* currentPage={currentPage}
|
|
2460
|
+
* setCurrentPage={setCurrentPage}
|
|
2461
|
+
* totalPages={20}
|
|
2462
|
+
* texts={{ page: "Page", of: "of" }}
|
|
2463
|
+
* labels={{ prev: "Previous", next: "Next" }}
|
|
2464
|
+
* />
|
|
2465
|
+
*
|
|
2466
|
+
* @extends HTMLDivElement
|
|
2467
|
+
*
|
|
2468
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the paginator container.
|
|
2469
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2470
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the paginator element.
|
|
2471
|
+
* @prop {number} [props.totalPages] - Total number of pages available for navigation.
|
|
2472
|
+
* @prop {number} [props.currentPage] - Current active page number.
|
|
2473
|
+
* @prop {function} [props.setCurrentPage] - Function to update the current page state.
|
|
2474
|
+
* @prop {boolean} [props.noInput] - Whether to hide the page input field and show read-only text.
|
|
2475
|
+
* @prop {object} [props.texts] - Custom text labels for page display.
|
|
2476
|
+
* @prop {string} [props.texts.page="Page"] - Text label for "Page".
|
|
2477
|
+
* @prop {string} [props.texts.of="of"] - Text label for "of".
|
|
2478
|
+
* @prop {object} [props.icons] - Custom icons for navigation buttons.
|
|
2479
|
+
* @prop {React.ReactNode} [props.icons.prev] - Custom icon for the previous page button.
|
|
2480
|
+
* @prop {React.ReactNode} [props.icons.next] - Custom icon for the next page button.
|
|
2481
|
+
* @prop {object} [props.labels] - Custom aria labels and tooltips for navigation buttons.
|
|
2482
|
+
* @prop {string} [props.labels.prev="Previous"] - Label for the previous page button.
|
|
2483
|
+
* @prop {string} [props.labels.next="Next"] - Label for the next page button.
|
|
2484
|
+
* @prop {boolean} [props.hideButtonsTooltip] - Whether to hide tooltips on navigation buttons.
|
|
2485
|
+
* @prop {function} [props.handlePrev] - Custom handler for previous page navigation.
|
|
2486
|
+
* @prop {function} [props.handleNext] - Custom handler for next page navigation.
|
|
2487
|
+
* @prop {function} [props.handlePage] - Custom handler for direct page navigation.
|
|
2488
|
+
*
|
|
2489
|
+
* @returns {JSX.Element} The rendered Paginator component.
|
|
2490
|
+
*
|
|
2491
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/paginator
|
|
2492
|
+
*/
|
|
2493
|
+
declare const Paginator: FC$1<ILibPaginator>;
|
|
2494
|
+
|
|
2495
|
+
/**
|
|
2496
|
+
* ProgressBar component for displaying progress with customizable colors and animations using a meter element.
|
|
2497
|
+
*
|
|
2498
|
+
* @component
|
|
2499
|
+
*
|
|
2500
|
+
* @example
|
|
2501
|
+
* <ProgressBar
|
|
2502
|
+
* value={75}
|
|
2503
|
+
* color="primary"
|
|
2504
|
+
* max={100}
|
|
2505
|
+
* />
|
|
2506
|
+
*
|
|
2507
|
+
* @extends HTMLMeterElement
|
|
2508
|
+
*
|
|
2509
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the progress bar.
|
|
2510
|
+
* @prop {React.Ref<HTMLMeterElement>} [props.ref] - Ref to the progress bar element.
|
|
2511
|
+
* @prop {number} [props.value] - Current progress value.
|
|
2512
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color theme for the progress bar fill.
|
|
2513
|
+
* @prop {boolean} [props.noAnimation] - Whether to disable the progress animation.
|
|
2514
|
+
* @prop {number} [props.min=0] - Minimum value for the progress bar.
|
|
2515
|
+
* @prop {number} [props.max=100] - Maximum value for the progress bar.
|
|
2516
|
+
* @prop {string} [props.id] - Unique identifier for the progress bar element.
|
|
2517
|
+
*
|
|
2518
|
+
* @returns {JSX.Element} The rendered ProgressBar component.
|
|
2519
|
+
*
|
|
2520
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/progress-bar
|
|
2521
|
+
*/
|
|
2522
|
+
declare const ProgressBar: FC$1<ILibProgressBar>;
|
|
2523
|
+
|
|
2524
|
+
/**
|
|
2525
|
+
* ProgressCircle component for displaying circular progress with customizable colors and smooth animations using SVG.
|
|
2526
|
+
*
|
|
2527
|
+
* @component
|
|
2528
|
+
*
|
|
2529
|
+
* @example
|
|
2530
|
+
* <ProgressCircle
|
|
2531
|
+
* value={75}
|
|
2532
|
+
* color="primary"
|
|
2533
|
+
* size={120}
|
|
2534
|
+
* showValue
|
|
2535
|
+
* />
|
|
2536
|
+
*
|
|
2537
|
+
* @extends HTMLDivElement
|
|
2538
|
+
*
|
|
2539
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the progress circle.
|
|
2540
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2541
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the progress circle element.
|
|
2542
|
+
* @prop {number} [props.value] - Current progress value (0-100).
|
|
2543
|
+
* @prop {number} [props.size=48] - Size of the progress circle in pixels.
|
|
2544
|
+
* @prop {number} [props.strokeWidth=4] - Width of the progress stroke.
|
|
2545
|
+
* @prop {boolean} [props.noAnimation] - Whether to disable the progress animation.
|
|
2546
|
+
* @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color theme for the progress circle stroke.
|
|
2547
|
+
* @prop {boolean} [props.showValue] - Whether to display the percentage value in the center.
|
|
2548
|
+
* @prop {React.ReactNode} [props.icon] - Custom icon to display in the center instead of value.
|
|
2549
|
+
*
|
|
2550
|
+
* @returns {JSX.Element} The rendered ProgressCircle component.
|
|
2551
|
+
*
|
|
2552
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/progress-circle
|
|
2553
|
+
*/
|
|
2554
|
+
declare const ProgressCircle: FC$1<ILibProgressCircle>;
|
|
2555
|
+
|
|
2556
|
+
/**
|
|
2557
|
+
* Tabs component for creating tabbed interfaces with automatic state management and customizable styling.
|
|
2558
|
+
*
|
|
2559
|
+
* @component
|
|
2560
|
+
*
|
|
2561
|
+
* @example
|
|
2562
|
+
* const tabItems = [
|
|
2563
|
+
* { title: "Tab 1", content: "Content for tab 1" },
|
|
2564
|
+
* { title: "Tab 2", content: "Content for tab 2" },
|
|
2565
|
+
* { title: "Tab 3", content: "Content for tab 3" }
|
|
2566
|
+
* ]
|
|
2567
|
+
*
|
|
2568
|
+
* <Tabs
|
|
2569
|
+
* items={tabItems}
|
|
2570
|
+
* justify="stretch"
|
|
2571
|
+
* variant="rounded"
|
|
2572
|
+
* activeTab={0}
|
|
2573
|
+
* />
|
|
2574
|
+
*
|
|
2575
|
+
* @extends HTMLDivElement
|
|
2576
|
+
*
|
|
2577
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tabs container.
|
|
2578
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2579
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tabs container element.
|
|
2580
|
+
* @prop {Array<LibTabItem>} [props.items] - Array of tab items containing title and content for each tab.
|
|
2581
|
+
* @prop {"start" | "stretch"} [props.justify="start"] - Justification for positioning tabs within their container.
|
|
2582
|
+
* @prop {"basic" | "rounded"} [props.variant="basic"] - Visual variant for styling the tab buttons.
|
|
2583
|
+
* @prop {number} [props.activeTab=0] - Index of the initially active tab.
|
|
2584
|
+
*
|
|
2585
|
+
* @returns {JSX.Element} The rendered Tabs component.
|
|
2586
|
+
*
|
|
2587
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tabs
|
|
2588
|
+
*/
|
|
2589
|
+
declare const Tabs: FC$1<ILibTabs>;
|
|
2590
|
+
|
|
2591
|
+
/**
|
|
2592
|
+
* TabsContainer component for wrapping tab navigation and content panels with customizable styling.
|
|
2593
|
+
*
|
|
2594
|
+
* @component
|
|
2595
|
+
*
|
|
2596
|
+
* @example
|
|
2597
|
+
* <TabsContainer>
|
|
2598
|
+
* <TabsButtonsContainer>
|
|
2599
|
+
* <TabsButton>Tab 1</TabsButton>
|
|
2600
|
+
* <TabsButton>Tab 2</TabsButton>
|
|
2601
|
+
* </TabsButtonsContainer>
|
|
2602
|
+
* <TabsContent>Content 1</TabsContent>
|
|
2603
|
+
* <TabsContent>Content 2</TabsContent>
|
|
2604
|
+
* </TabsContainer>
|
|
2605
|
+
*
|
|
2606
|
+
* @extends HTMLDivElement
|
|
2607
|
+
*
|
|
2608
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tabs container.
|
|
2609
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2610
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tabs container element.
|
|
2611
|
+
* @prop {React.ReactNode} [props.children] - Child components (typically TabsNav and TabsContent).
|
|
2612
|
+
*
|
|
2613
|
+
* @returns {JSX.Element} The rendered TabsContainer component.
|
|
2614
|
+
*
|
|
2615
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tabs
|
|
2616
|
+
*/
|
|
2617
|
+
declare const TabsContainer: FC$1<ILibTabsContainer>;
|
|
2618
|
+
|
|
2619
|
+
/**
|
|
2620
|
+
* TabsButtonsContainer component for wrapping tab navigation buttons with customizable layout and styling.
|
|
2621
|
+
*
|
|
2622
|
+
* @component
|
|
2623
|
+
*
|
|
2624
|
+
* @example
|
|
2625
|
+
* <TabsButtonsContainer justify="stretch" variant="rounded">
|
|
2626
|
+
* <TabsButton>Tab 1</TabsButton>
|
|
2627
|
+
* <TabsButton>Tab 2</TabsButton>
|
|
2628
|
+
* <TabsButton>Tab 3</TabsButton>
|
|
2629
|
+
* </TabsButtonsContainer>
|
|
2630
|
+
*
|
|
2631
|
+
* @extends HTMLDivElement
|
|
2632
|
+
*
|
|
2633
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tabs buttons container.
|
|
2634
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2635
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tabs buttons container element.
|
|
2636
|
+
* @prop {React.ReactNode} [props.children] - Child components (typically TabsButton components).
|
|
2637
|
+
* @prop {"start" | "stretch"} [props.justify="start"] - Justification for positioning tabs within their container.
|
|
2638
|
+
* @prop {"basic" | "rounded"} [props.variant="basic"] - Visual variant for styling the tab buttons.
|
|
2639
|
+
*
|
|
2640
|
+
* @returns {JSX.Element} The rendered TabsButtonsContainer component.
|
|
2641
|
+
*
|
|
2642
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tabs
|
|
2643
|
+
*/
|
|
2644
|
+
declare const TabsButtonsContainer: FC$1<ILibTabsButtonsContainer>;
|
|
2645
|
+
|
|
2646
|
+
/**
|
|
2647
|
+
* TabsButton component for individual tab navigation buttons with active states and customizable styling.
|
|
2648
|
+
*
|
|
2649
|
+
* @component
|
|
2650
|
+
*
|
|
2651
|
+
* @example
|
|
2652
|
+
* <TabsButton
|
|
2653
|
+
* isActive={activeTab === 'tab1'}
|
|
2654
|
+
* onClick={() => setActiveTab('tab1')}
|
|
2655
|
+
* variant="rounded"
|
|
2656
|
+
* >
|
|
2657
|
+
* Tab 1
|
|
2658
|
+
* </TabsButton>
|
|
2659
|
+
*
|
|
2660
|
+
* @extends HTMLButtonElement
|
|
2661
|
+
*
|
|
2662
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tab button.
|
|
2663
|
+
* @prop {React.ElementType} [props.element="button"] - HTML element type to render as the container.
|
|
2664
|
+
* @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the tab button element.
|
|
2665
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the tab button.
|
|
2666
|
+
* @prop {"start" | "stretch"} [props.justify="start"] - Justification for positioning the button content.
|
|
2667
|
+
* @prop {"basic" | "rounded"} [props.variant="basic"] - Visual variant for styling the tab button.
|
|
2668
|
+
* @prop {boolean} [props.isActive] - Whether this tab button is currently active/selected.
|
|
2669
|
+
* @prop {function} [props.onClick] - Click handler function for tab selection.
|
|
2670
|
+
*
|
|
2671
|
+
* @returns {JSX.Element} The rendered TabsButton component.
|
|
2672
|
+
*
|
|
2673
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tabs
|
|
2674
|
+
*/
|
|
2675
|
+
declare const TabsButton: FC$1<ILibTabsButton>;
|
|
2676
|
+
|
|
2677
|
+
/**
|
|
2678
|
+
* TabsContent component for displaying individual tab panel content with conditional rendering based on active state.
|
|
2679
|
+
*
|
|
2680
|
+
* @component
|
|
2681
|
+
*
|
|
2682
|
+
* @example
|
|
2683
|
+
* <TabsContent isActive={activeTab === 'tab1'}>
|
|
2684
|
+
* <h3>Tab 1 Content</h3>
|
|
2685
|
+
* <p>This is the content for the first tab.</p>
|
|
2686
|
+
* </TabsContent>
|
|
2687
|
+
*
|
|
2688
|
+
* @extends HTMLDivElement
|
|
2689
|
+
*
|
|
2690
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tab content container.
|
|
2691
|
+
* @prop {React.ElementType} [props.element] - HTML element type to render as the container. Defaults to Text if children is string, otherwise "div".
|
|
2692
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tab content element.
|
|
2693
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the tab panel.
|
|
2694
|
+
* @prop {boolean} [props.isActive] - Whether this tab content is currently active/visible.
|
|
2695
|
+
*
|
|
2696
|
+
* @returns {JSX.Element} The rendered TabsContent component.
|
|
2697
|
+
*
|
|
2698
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tabs
|
|
2699
|
+
*/
|
|
2700
|
+
declare const TabsContent: FC$1<ILibTabContent>;
|
|
2701
|
+
|
|
2702
|
+
/**
|
|
2703
|
+
* Slideshow component for displaying images or content with navigation controls, pagination, and touch/swipe support.
|
|
2704
|
+
*
|
|
2705
|
+
* @component
|
|
2706
|
+
*
|
|
2707
|
+
* @example
|
|
2708
|
+
* <Slideshow
|
|
2709
|
+
* images={["image1.jpg", "image2.jpg", "image3.jpg"]}
|
|
2710
|
+
* controls={{ prev: <BiChevronLeft />, next: <BiChevronRight /> }}
|
|
2711
|
+
* pagination={{ type: "dots", position: "outside" }}
|
|
2712
|
+
* options={{ autoPlay: 3000, speed: 500 }}
|
|
2713
|
+
* imgFit="cover"
|
|
2714
|
+
* borderRadius="md"
|
|
2715
|
+
* />
|
|
2716
|
+
*
|
|
2717
|
+
* @extends HTMLDivElement
|
|
2718
|
+
*
|
|
2719
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the slideshow container.
|
|
2720
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2721
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the slideshow element.
|
|
2722
|
+
* @prop {React.ReactNode} [props.children] - Child components to display as slides when not using images prop.
|
|
2723
|
+
* @prop {"cover" | "contain" | "fill"} [props.imgFit="cover"] - Object fit property for images in the slideshow.
|
|
2724
|
+
* @prop {object} [props.controls] - Configuration object for navigation control buttons.
|
|
2725
|
+
* @prop {boolean} [props.hideControls=false] - Whether to hide the navigation control buttons.
|
|
2726
|
+
* @prop {ILibPaginationOptions} [props.options] - Configuration options for autoplay timing and transition speed.
|
|
2727
|
+
* @prop {string[]} [props.images] - Array of image URLs to display in the slideshow.
|
|
2728
|
+
* @prop {object} [props.pagination] - Configuration object for pagination indicators and behavior.
|
|
2729
|
+
* @prop {boolean} [props.hidePagination] - Whether to hide the pagination indicators.
|
|
2730
|
+
* @prop {LibBorderRadius} [props.borderRadius] - Border radius variant for the slideshow container.
|
|
2731
|
+
*
|
|
2732
|
+
* @returns {JSX.Element} The rendered Slideshow component.
|
|
2733
|
+
*
|
|
2734
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/slideshow
|
|
2735
|
+
*/
|
|
2736
|
+
declare const Slideshow: FC$1<ILibSlideshow>;
|
|
2737
|
+
|
|
2738
|
+
/**
|
|
2739
|
+
* Cover component for creating full-screen layouts with background images, overlays, and content positioning.
|
|
2740
|
+
*
|
|
2741
|
+
* @component
|
|
2742
|
+
*
|
|
2743
|
+
* @example
|
|
2744
|
+
* <Cover
|
|
2745
|
+
* img="/images/hero-bg.jpg"
|
|
2746
|
+
* alt="Hero background"
|
|
2747
|
+
* overlay="gradient-black"
|
|
2748
|
+
* alignItems="center"
|
|
2749
|
+
* justifyContent="center"
|
|
2750
|
+
* >
|
|
2751
|
+
* <Text tag="h1" display className="text-white">
|
|
2752
|
+
* Welcome to our site
|
|
2753
|
+
* </Text>
|
|
2754
|
+
* </Cover>
|
|
2755
|
+
*
|
|
2756
|
+
* @extends ILibFlexbox
|
|
2757
|
+
*
|
|
2758
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the cover container.
|
|
2759
|
+
* @prop {React.ElementType} [props.element=Flexbox] - HTML element type to render as the container.
|
|
2760
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the cover element.
|
|
2761
|
+
* @prop {string} [props.img] - URL of the background image to display.
|
|
2762
|
+
* @prop {string} [props.alt] - Alt text for the background image.
|
|
2763
|
+
* @prop {LibBgOverlay} [props.overlay] - Overlay variant to apply over the background image.
|
|
2764
|
+
* @prop {React.ReactNode} [props.children] - Content to display over the background image.
|
|
2765
|
+
*
|
|
2766
|
+
* @returns {JSX.Element} The rendered Cover component.
|
|
2767
|
+
*
|
|
2768
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/cover
|
|
2769
|
+
*/
|
|
2770
|
+
declare const Cover: FC$1<ILibCover>;
|
|
2771
|
+
|
|
2772
|
+
/**
|
|
2773
|
+
* Table component for creating structured data tables with customizable styling, variants, and automatic link detection.
|
|
2774
|
+
*
|
|
2775
|
+
* @component
|
|
2776
|
+
*
|
|
2777
|
+
* @example
|
|
2778
|
+
* <Table
|
|
2779
|
+
* variant="bordered"
|
|
2780
|
+
* headers={["Name", "Email", "Role"]}
|
|
2781
|
+
* data={[
|
|
2782
|
+
* ["John Doe", "john@example.com", "Admin"],
|
|
2783
|
+
* ["Jane Smith", "jane@example.com", "User"]
|
|
2784
|
+
* ]}
|
|
2785
|
+
* footers={["Total: 2 users", "", ""]}
|
|
2786
|
+
* linkify
|
|
2787
|
+
* />
|
|
2788
|
+
*
|
|
2789
|
+
* @extends HTMLTableElement
|
|
2790
|
+
*
|
|
2791
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the table.
|
|
2792
|
+
* @prop {React.Ref<HTMLTableElement>} [props.ref] - Ref to the table element.
|
|
2793
|
+
* @prop {React.ReactNode} [props.children] - Table content when not using data prop.
|
|
2794
|
+
* @prop {"bordered" | "stripped" | "border-bottom"} [props.variant="bordered"] - Visual variant for table styling.
|
|
2795
|
+
* @prop {"align-baseline" | "align-top" | "align-middle" | "align-bottom" | "align-text-top" | "align-text-bottom" | "align-sub" | "align-super"} [props.vAlign="align-top"] - Vertical alignment for table cells.
|
|
2796
|
+
* @prop {"left" | "center" | "right" | "justify"} [props.textAlign="left"] - Text alignment for table content.
|
|
2797
|
+
* @prop {boolean} [props.linkify] - Whether to automatically convert URLs in text to clickable links.
|
|
2798
|
+
* @prop {boolean} [props.blank] - Whether links should open in new tab when linkify is enabled.
|
|
2799
|
+
* @prop {Array<React.ReactNode>} [props.headers] - Array of header content for table columns.
|
|
2800
|
+
* @prop {Array<React.ReactNode>} [props.footers] - Array of footer content for table columns.
|
|
2801
|
+
* @prop {Array<Array<React.ReactNode>>} [props.data] - 2D array of table data for automatic table generation.
|
|
2802
|
+
*
|
|
2803
|
+
* @returns {JSX.Element} The rendered Table component.
|
|
2804
|
+
*
|
|
2805
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/table
|
|
2806
|
+
*/
|
|
2807
|
+
declare const Table: FC$1<ILibTable>;
|
|
2808
|
+
|
|
2809
|
+
/**
|
|
2810
|
+
* PageLoading component for displaying a full-screen loading overlay with customizable background and loader.
|
|
2811
|
+
*
|
|
2812
|
+
* @component
|
|
2813
|
+
*
|
|
2814
|
+
* @example
|
|
2815
|
+
* <PageLoading
|
|
2816
|
+
* backgroundColor="primary-500"
|
|
2817
|
+
* loaderColor="white"
|
|
2818
|
+
* loaderVariant={2}
|
|
2819
|
+
* stopScrolling
|
|
2820
|
+
* />
|
|
2821
|
+
*
|
|
2822
|
+
* @extends HTMLDivElement
|
|
2823
|
+
*
|
|
2824
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the page loading container.
|
|
2825
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2826
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the page loading element.
|
|
2827
|
+
* @prop {LibColors} [props.backgroundColor="primary-500"] - Background color for the loading overlay.
|
|
2828
|
+
* @prop {LibColorsShort} [props.loaderColor="white"] - Color of the loading spinner.
|
|
2829
|
+
* @prop {1 | 2 | 3} [props.loaderVariant=1] - Visual variant of the loading spinner.
|
|
2830
|
+
* @prop {boolean} [props.stopScrolling] - Whether to disable page scrolling while loading is visible.
|
|
2831
|
+
*
|
|
2832
|
+
* @returns {JSX.Element} The rendered PageLoading component.
|
|
2833
|
+
*
|
|
2834
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/page-loading
|
|
2835
|
+
*/
|
|
2836
|
+
declare const PageLoading: FC$1<ILibPageLoading>;
|
|
2837
|
+
|
|
2838
|
+
/**
|
|
2839
|
+
* Sticky component for creating elements that stick to a specified position during scroll.
|
|
2840
|
+
*
|
|
2841
|
+
* @component
|
|
2842
|
+
*
|
|
2843
|
+
* @example
|
|
2844
|
+
* <Sticky top="md">
|
|
2845
|
+
* <nav>Navigation content</nav>
|
|
2846
|
+
* </Sticky>
|
|
2847
|
+
*
|
|
2848
|
+
* @extends HTMLDivElement
|
|
2849
|
+
*
|
|
2850
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the sticky container.
|
|
2851
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2852
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the sticky element.
|
|
2853
|
+
* @prop {React.ReactNode} [props.children] - Content to be positioned sticky.
|
|
2854
|
+
* @prop {"0px" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl"} [props.top="sm"] - Distance from top when sticky positioning is active.
|
|
2855
|
+
*
|
|
2856
|
+
* @returns {JSX.Element} The rendered Sticky component.
|
|
2857
|
+
*
|
|
2858
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/sticky
|
|
2859
|
+
*/
|
|
2860
|
+
declare const Sticky: FC$1<ILibSticky>;
|
|
2861
|
+
|
|
2862
|
+
/**
|
|
2863
|
+
* MarkdownEditor component for creating rich text content with live preview and customizable toolbar.
|
|
2864
|
+
*
|
|
2865
|
+
* @component
|
|
2866
|
+
*
|
|
2867
|
+
* @example
|
|
2868
|
+
* <MarkdownEditor
|
|
2869
|
+
* value={content}
|
|
2870
|
+
* setValue={setContent}
|
|
2871
|
+
* label="Article Content"
|
|
2872
|
+
* defaultView="live"
|
|
2873
|
+
* options={{
|
|
2874
|
+
* bold: true,
|
|
2875
|
+
* italic: true,
|
|
2876
|
+
* code: true,
|
|
2877
|
+
* editorPreview: true
|
|
2878
|
+
* }}
|
|
2879
|
+
* />
|
|
2880
|
+
*
|
|
2881
|
+
* @extends HTMLTextAreaElement
|
|
2882
|
+
*
|
|
2883
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the textarea.
|
|
2884
|
+
* @prop {React.Ref<HTMLTextAreaElement>} [props.ref] - Ref to the textarea element.
|
|
2885
|
+
* @prop {string} [props.value] - Current markdown content value.
|
|
2886
|
+
* @prop {function} [props.setValue] - Function to update the markdown content.
|
|
2887
|
+
* @prop {string} [props.label] - Label text for the editor.
|
|
2888
|
+
* @prop {string} [props.labelComment] - Additional comment text for the label.
|
|
2889
|
+
* @prop {string} [props.helper] - Helper text displayed above the editor.
|
|
2890
|
+
* @prop {string} [props.helperBottom] - Helper text displayed below the editor.
|
|
2891
|
+
* @prop {LibValidation} [props.validation] - Validation state and messages.
|
|
2892
|
+
* @prop {"light" | "dark"} [props.inputBackground] - Background theme for the editor.
|
|
2893
|
+
* @prop {string} [props.id] - HTML id attribute for the textarea.
|
|
2894
|
+
* @prop {"code" | "live" | "preview"} [props.defaultView="live"] - Initial view mode for the editor.
|
|
2895
|
+
* @prop {LibMarkdownEditorOptions} [props.options] - Configuration for which toolbar buttons to show.
|
|
2896
|
+
* @prop {string} [props.textButtonTitles="Titles"] - Text for the titles dropdown button.
|
|
2897
|
+
* @prop {object} [props.icons] - Custom icons for toolbar buttons.
|
|
2898
|
+
*
|
|
2899
|
+
* @returns {JSX.Element} The rendered MarkdownEditor component.
|
|
2900
|
+
*
|
|
2901
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/markdown-editor
|
|
2902
|
+
*/
|
|
2903
|
+
declare const MarkdownEditor: FC$1<ILibMarkdownEditor>;
|
|
2904
|
+
|
|
2905
|
+
/**
|
|
2906
|
+
* MarkdownContainer component for rendering markdown content with customizable parsing options and styling.
|
|
2907
|
+
*
|
|
2908
|
+
* @component
|
|
2909
|
+
*
|
|
2910
|
+
* @example
|
|
2911
|
+
* <MarkdownContainer>
|
|
2912
|
+
* # Hello World
|
|
2913
|
+
* This is **bold** and *italic* text.
|
|
2914
|
+
* </MarkdownContainer>
|
|
2915
|
+
*
|
|
2916
|
+
* @extends HTMLDivElement
|
|
2917
|
+
*
|
|
2918
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the markdown container.
|
|
2919
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the markdown container element.
|
|
2920
|
+
* @prop {string} [props.children] - Markdown content to parse and render.
|
|
2921
|
+
* @prop {object} [props.options=libOptionsMarkdown] - Markdown parsing options and configurations.
|
|
2922
|
+
*
|
|
2923
|
+
* @returns {JSX.Element} The rendered MarkdownContainer component.
|
|
2924
|
+
*
|
|
2925
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/markdown-container
|
|
2926
|
+
*/
|
|
2927
|
+
declare const MarkdownContainer: FC$1<ILibMarkdownContainer>;
|
|
2928
|
+
|
|
2929
|
+
/**
|
|
2930
|
+
* CodeContainer component for displaying syntax-highlighted code with optional copy functionality.
|
|
2931
|
+
*
|
|
2932
|
+
* @component
|
|
2933
|
+
*
|
|
2934
|
+
* @example
|
|
2935
|
+
* <CodeContainer>
|
|
2936
|
+
* const hello = "world";
|
|
2937
|
+
* console.log(hello);
|
|
2938
|
+
* </CodeContainer>
|
|
2939
|
+
*
|
|
2940
|
+
* @extends HTMLDivElement
|
|
2941
|
+
*
|
|
2942
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the code container.
|
|
2943
|
+
* @prop {React.ElementType} [props.element] - HTML element type to render as the container.
|
|
2944
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the code container element.
|
|
2945
|
+
* @prop {React.ReactNode} [props.children] - Code content to display and highlight.
|
|
2946
|
+
* @prop {object} [props.highlighterProps] - Additional props to pass to the syntax highlighter.
|
|
2947
|
+
* @prop {LibAllColors} [props.textColor] - Text color for the code content.
|
|
2948
|
+
* @prop {LibAllColors} [props.backgroundColor] - Background color for the code content.
|
|
2949
|
+
* @prop {object} [props.style=atomOneDark] - Custom styles for the syntax highlighter.
|
|
2950
|
+
* @prop {boolean} [props.hideCopyButton] - Whether to hide the copy to clipboard button.
|
|
2951
|
+
* @prop {object} [props.tooltipTexts] - Custom tooltip texts for copy button states.
|
|
2952
|
+
* @prop {object} [props.icons] - Custom icons for copy button states.
|
|
2953
|
+
*
|
|
2954
|
+
* @returns {JSX.Element} The rendered CodeContainer component.
|
|
2955
|
+
*
|
|
2956
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/code-container
|
|
2957
|
+
*/
|
|
2958
|
+
declare const CodeContainer: FC$1<ILibCodeContainer>;
|
|
2959
|
+
|
|
2960
|
+
/**
|
|
2961
|
+
* Fade component for creating smooth fade-in animations when elements enter the viewport.
|
|
2962
|
+
*
|
|
2963
|
+
* @component
|
|
2964
|
+
*
|
|
2965
|
+
* @example
|
|
2966
|
+
* <Fade>
|
|
2967
|
+
* <h1>This content will fade in when visible</h1>
|
|
2968
|
+
* </Fade>
|
|
2969
|
+
*
|
|
2970
|
+
* @extends HTMLDivElement
|
|
2971
|
+
*
|
|
2972
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the fade container.
|
|
2973
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
2974
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the fade element.
|
|
2975
|
+
* @prop {React.ReactNode} [props.children] - Content to animate with fade effect.
|
|
2976
|
+
*
|
|
2977
|
+
* @returns {JSX.Element} The rendered Fade component.
|
|
2978
|
+
*
|
|
2979
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/fade
|
|
2980
|
+
*/
|
|
2981
|
+
declare const Fade: FC$1<ILibFade>;
|
|
2982
|
+
|
|
2983
|
+
/**
|
|
2984
|
+
* BackToTop component for providing a smooth scroll-to-top functionality with customizable styling and positioning.
|
|
2985
|
+
*
|
|
2986
|
+
* @component
|
|
2987
|
+
*
|
|
2988
|
+
* @example
|
|
2989
|
+
* <BackToTop
|
|
2990
|
+
* color="primary"
|
|
2991
|
+
* tooltip="Back to top"
|
|
2992
|
+
* showTooltip={{ position: "left" }}
|
|
2993
|
+
* />
|
|
2994
|
+
*
|
|
2995
|
+
* @extends ILibButtonIcon
|
|
2996
|
+
*
|
|
2997
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the back-to-top button.
|
|
2998
|
+
* @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
|
|
2999
|
+
* @prop {React.ReactElement} [props.icon=<BiUpArrowAlt />] - Custom icon for the back-to-top button.
|
|
3000
|
+
* @prop {LibColorsShort} [props.color="primary"] - Color theme for the button styling.
|
|
3001
|
+
* @prop {string} [props.tooltip="Back to top"] - Tooltip text displayed on hover.
|
|
3002
|
+
* @prop {LibTooltipPositionOptions} [props.showTooltip] - Configuration for tooltip positioning and styling.
|
|
3003
|
+
*
|
|
3004
|
+
* @returns {JSX.Element} The rendered BackToTop component.
|
|
3005
|
+
*
|
|
3006
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/back-to-top
|
|
3007
|
+
*/
|
|
3008
|
+
declare const BackToTop: FC$1<ILibBackToTop>;
|
|
3009
|
+
|
|
3010
|
+
/**
|
|
3011
|
+
* Drawer component for creating slide-out panels with customizable positioning, styling, and overlay functionality.
|
|
3012
|
+
*
|
|
3013
|
+
* @component
|
|
3014
|
+
*
|
|
3015
|
+
* @example
|
|
3016
|
+
* <Drawer
|
|
3017
|
+
* isOpen={isDrawerOpen}
|
|
3018
|
+
* setIsOpen={setIsDrawerOpen}
|
|
3019
|
+
* position="right"
|
|
3020
|
+
* backgroundColor="primary"
|
|
3021
|
+
* contentColor="white"
|
|
3022
|
+
* >
|
|
3023
|
+
* <h2>Drawer Content</h2>
|
|
3024
|
+
* <p>This is the drawer content.</p>
|
|
3025
|
+
* </Drawer>
|
|
3026
|
+
*
|
|
3027
|
+
* @extends HTMLDivElement
|
|
3028
|
+
*
|
|
3029
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the drawer container.
|
|
3030
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
3031
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the drawer element.
|
|
3032
|
+
* @prop {React.ReactNode} [props.children] - Content to display inside the drawer.
|
|
3033
|
+
* @prop {boolean} [props.isOpen] - Whether the drawer is currently open.
|
|
3034
|
+
* @prop {function} [props.setIsOpen] - Function to control the drawer's open/closed state.
|
|
3035
|
+
* @prop {"left" | "right"} [props.position="right"] - Position of the drawer relative to the viewport.
|
|
3036
|
+
* @prop {boolean} [props.enableScrollingOpen] - Whether to allow page scrolling when drawer is open.
|
|
3037
|
+
* @prop {boolean} [props.disableEsc] - Whether to disable closing the drawer with the Escape key.
|
|
3038
|
+
* @prop {LibAllColors} [props.backgroundColor="primary"] - Background color for the drawer content area.
|
|
3039
|
+
* @prop {LibAllColors} [props.contentColor="white"] - Text color for the drawer content.
|
|
3040
|
+
* @prop {LibAllColors} [props.linksColor="white"] - Color for links and buttons within the drawer.
|
|
3041
|
+
* @prop {LibSpacers} [props.gap="md"] - Gap between child elements in the drawer.
|
|
3042
|
+
* @prop {number} [props.maxWidth=400] - Maximum width of the drawer in pixels.
|
|
3043
|
+
* @prop {LibAllColorsAndOverlays} [props.overlayColor="black-80"] - Background color for the overlay behind the drawer.
|
|
3044
|
+
* @prop {boolean} [props.hideCloseButton] - Whether to hide the close button in the drawer.
|
|
3045
|
+
*
|
|
3046
|
+
* @returns {JSX.Element} The rendered Drawer component.
|
|
3047
|
+
*
|
|
3048
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/drawer
|
|
3049
|
+
*/
|
|
3050
|
+
declare const Drawer: FC$1<ILibDrawer>;
|
|
3051
|
+
|
|
3052
|
+
/**
|
|
3053
|
+
* Header component for creating responsive navigation headers with customizable positioning, mobile menu variants, and search functionality.
|
|
3054
|
+
*
|
|
3055
|
+
* @component
|
|
3056
|
+
*
|
|
3057
|
+
* @example
|
|
3058
|
+
* <Header
|
|
3059
|
+
* logo={<img src="/logo.png" alt="Logo" />}
|
|
3060
|
+
* burgerPosition="right"
|
|
3061
|
+
* navDesktopPosition="right"
|
|
3062
|
+
* navMobileVariant="drawer"
|
|
3063
|
+
* backgroundColor="primary"
|
|
3064
|
+
* textColor="white"
|
|
3065
|
+
* >
|
|
3066
|
+
* <nav>
|
|
3067
|
+
* <a href="/">Home</a>
|
|
3068
|
+
* <a href="/about">About</a>
|
|
3069
|
+
* </nav>
|
|
3070
|
+
* </Header>
|
|
3071
|
+
*
|
|
3072
|
+
* @extends HTMLDivElement
|
|
3073
|
+
*
|
|
3074
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the header container.
|
|
3075
|
+
* @prop {React.ElementType} [props.element="header"] - HTML element type to render as the container.
|
|
3076
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the header element.
|
|
3077
|
+
* @prop {React.ReactNode} [props.logo] - Logo content to display in the header.
|
|
3078
|
+
* @prop {"left" | "right"} [props.burgerPosition="right"] - Position of the burger menu button.
|
|
3079
|
+
* @prop {LibColorsHover | object} [props.burgerColor="white"] - Color for the burger menu button, can be a single color or object with open/closed states.
|
|
3080
|
+
* @prop {React.ReactNode} [props.children] - Content to display in the navigation area.
|
|
3081
|
+
* @prop {"left" | "right"} [props.navDesktopPosition="right"] - Position of the navigation on desktop screens.
|
|
3082
|
+
* @prop {"drawer" | "fullscreen"} [props.navMobileVariant="drawer"] - Variant for mobile navigation display.
|
|
3083
|
+
* @prop {boolean} [props.enableScrollingOpen] - Whether to allow page scrolling when mobile menu is open.
|
|
3084
|
+
* @prop {React.ReactNode} [props.search] - Search component to display in the header.
|
|
3085
|
+
* @prop {"relative" | "absolute" | "fixed"} [props.position="relative"] - CSS position property for the header.
|
|
3086
|
+
* @prop {boolean | number} [props.hideOnScroll] - Whether to hide header on scroll, or scroll threshold in pixels.
|
|
3087
|
+
* @prop {Array<React.ReactNode>} [props.links] - Array of link elements for navigation.
|
|
3088
|
+
* @prop {React.ReactNode} [props.nav] - Navigation content to display.
|
|
3089
|
+
* @prop {LibAllColors} [props.backgroundColor="primary"] - Background color for the header.
|
|
3090
|
+
* @prop {LibAllColors} [props.textColor="white"] - Text color for header content.
|
|
3091
|
+
* @prop {LibColorsHover} [props.linkColor="white"] - Color for navigation links.
|
|
3092
|
+
*
|
|
3093
|
+
* @returns {JSX.Element} The rendered Header component.
|
|
3094
|
+
*
|
|
3095
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/header
|
|
3096
|
+
*/
|
|
3097
|
+
declare const Header: FC$1<ILibHeader>;
|
|
3098
|
+
|
|
3099
|
+
/**
|
|
3100
|
+
* Footer component for displaying a page footer with logo, links, and customizable layout options.
|
|
3101
|
+
*
|
|
3102
|
+
* @component
|
|
3103
|
+
*
|
|
3104
|
+
* @example
|
|
3105
|
+
* <Footer
|
|
3106
|
+
* logo={<img src="/logo.png" alt="Logo" />}
|
|
3107
|
+
* direction="horizontal"
|
|
3108
|
+
* linksSeparator="dot"
|
|
3109
|
+
* items={[
|
|
3110
|
+
* <a href="/privacy">Privacy</a>,
|
|
3111
|
+
* <a href="/terms">Terms</a>,
|
|
3112
|
+
* <a href="/contact">Contact</a>
|
|
3113
|
+
* ]}
|
|
3114
|
+
* />
|
|
3115
|
+
*
|
|
3116
|
+
* @extends ILibFooter
|
|
3117
|
+
*
|
|
3118
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the footer container.
|
|
3119
|
+
* @prop {React.ElementType} [props.element="footer"] - HTML element type to render as the container.
|
|
3120
|
+
* @prop {React.Ref<any>} [props.ref] - Ref to the footer element.
|
|
3121
|
+
* @prop {React.ReactNode} [props.children] - Child elements to display in the footer links section.
|
|
3122
|
+
* @prop {boolean} [props.hideSeparator] - Whether to hide the top border separator line.
|
|
3123
|
+
* @prop {boolean} [props.hideLinksSeparator] - Whether to hide separators between footer links.
|
|
3124
|
+
* @prop {"dot" | "dash"} [props.linksSeparator="dot"] - Type of separator to display between links.
|
|
3125
|
+
* @prop {Array<React.ReactNode>} [props.items] - Array of footer link items to display.
|
|
3126
|
+
* @prop {React.ReactNode} [props.logo] - Logo element to display in the footer.
|
|
3127
|
+
* @prop {"horizontal" | "vertical"} [props.direction="horizontal"] - Layout direction for footer content.
|
|
3128
|
+
* @prop {LibAllColors} [props.linksSeparatorColor="gray-500"] - Color for the separator between links.
|
|
3129
|
+
*
|
|
3130
|
+
* @returns {JSX.Element} The rendered Footer component.
|
|
3131
|
+
*
|
|
3132
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/footer
|
|
3133
|
+
*/
|
|
3134
|
+
declare const Footer: FC$1<ILibFooter>;
|
|
3135
|
+
|
|
3136
|
+
/**
|
|
3137
|
+
* Meta component for managing HTML head metadata including SEO, Open Graph, and Twitter Card properties.
|
|
3138
|
+
*
|
|
3139
|
+
* @component
|
|
3140
|
+
*
|
|
3141
|
+
* @example
|
|
3142
|
+
* <Meta
|
|
3143
|
+
* title="My Website"
|
|
3144
|
+
* description="A description of my website"
|
|
3145
|
+
* favicon="/favicon.ico"
|
|
3146
|
+
* cover="/og-image.jpg"
|
|
3147
|
+
* siteName="My Site"
|
|
3148
|
+
* author="John Doe"
|
|
3149
|
+
* url="https://mywebsite.com"
|
|
3150
|
+
* />
|
|
3151
|
+
*
|
|
3152
|
+
* @prop {React.ReactNode} [props.children] - Additional meta tags or head elements to include.
|
|
3153
|
+
* @prop {string} [props.title] - Page title for the document and social media.
|
|
3154
|
+
* @prop {string} [props.favicon] - URL path to the favicon icon file.
|
|
3155
|
+
* @prop {string} [props.description] - Page description for SEO and social media.
|
|
3156
|
+
* @prop {string} [props.generator] - Name of the generator used to create the page.
|
|
3157
|
+
* @prop {string[]} [props.keywords] - Array of keywords for SEO purposes.
|
|
3158
|
+
* @prop {string} [props.author] - Author name for the page content.
|
|
3159
|
+
* @prop {string} [props.authorUrl] - URL to the author's profile or website.
|
|
3160
|
+
* @prop {string} [props.publisher] - Publisher name for the content.
|
|
3161
|
+
* @prop {string} [props.type] - Open Graph type (e.g., "website", "article").
|
|
3162
|
+
* @prop {string} [props.cover] - URL to the cover image for social media sharing.
|
|
3163
|
+
* @prop {string} [props.siteName] - Name of the website or application.
|
|
3164
|
+
* @prop {string} [props.language] - Language locale code (e.g., "en-US").
|
|
3165
|
+
* @prop {string} [props.url] - Canonical URL of the page.
|
|
3166
|
+
* @prop {string} [props.email] - Contact email address.
|
|
3167
|
+
* @prop {string} [props.creator] - Creator name for the content.
|
|
3168
|
+
* @prop {string} [props.manifest] - URL path to the web app manifest file.
|
|
3169
|
+
* @prop {string} [props.category] - Category classification for the content.
|
|
3170
|
+
* @prop {string} [props.twitterCard] - Twitter Card type (e.g., "summary", "summary_large_image").
|
|
3171
|
+
*
|
|
3172
|
+
* @returns {JSX.Element} The rendered Meta component with HTML head elements.
|
|
3173
|
+
*
|
|
3174
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/meta
|
|
3175
|
+
*/
|
|
3176
|
+
declare const Meta: FC$1<ILibMeta>;
|
|
3177
|
+
|
|
3178
|
+
/**
|
|
3179
|
+
* PageLayout component for creating a complete page structure with optional header, footer, wrapper, and meta tags.
|
|
3180
|
+
*
|
|
3181
|
+
* @component
|
|
3182
|
+
*
|
|
3183
|
+
* @example
|
|
3184
|
+
* <PageLayout
|
|
3185
|
+
* meta={{ title: "My Page", description: "Page description" }}
|
|
3186
|
+
* header={{ logo: <Logo />, nav: <Nav /> }}
|
|
3187
|
+
* footer={{ logo: <Logo />, items: [<Link href="/privacy">Privacy</Link>] }}
|
|
3188
|
+
* wrapperProps={{ maxWidth: "px" }}
|
|
3189
|
+
* mainProps={{ className: "large" }}
|
|
3190
|
+
* >
|
|
3191
|
+
* <h1>Page Content</h1>
|
|
3192
|
+
* </PageLayout>
|
|
3193
|
+
*
|
|
3194
|
+
* @prop {React.ReactNode} [props.children] - The main content to be rendered inside the page layout.
|
|
3195
|
+
* @prop {ILibMeta} [props.meta] - Meta component props for HTML head metadata including SEO and social media tags.
|
|
3196
|
+
* @prop {ILibHeader} [props.header] - Header component props for displaying the page header with logo and navigation.
|
|
3197
|
+
* @prop {ILibWrapper} [props.wrapperProps] - Wrapper component props for controlling the page container styling and layout.
|
|
3198
|
+
* @prop {ILibMain} [props.mainProps] - Main component props for styling the main content area.
|
|
3199
|
+
* @prop {ILibFooter} [props.footer] - Footer component props for displaying the page footer with links and logo.
|
|
3200
|
+
* @prop {boolean} [props.noWrapper] - Whether to skip rendering the Wrapper component around the main content.
|
|
3201
|
+
* @prop {boolean} [props.noMain] - Whether to skip rendering the Main component wrapper around children.
|
|
3202
|
+
*
|
|
3203
|
+
* @returns {JSX.Element} The rendered PageLayout component with complete page structure.
|
|
3204
|
+
*
|
|
3205
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/page-layout
|
|
3206
|
+
*/
|
|
3207
|
+
declare const PageLayout: FC$1<ILibPageLayout>;
|
|
3208
|
+
|
|
3209
|
+
/**
|
|
3210
|
+
* SrOnly component for creating screen reader only content that is visually hidden but accessible to assistive technologies.
|
|
3211
|
+
*
|
|
3212
|
+
* @component
|
|
3213
|
+
*
|
|
3214
|
+
* @example
|
|
3215
|
+
* <SrOnly>
|
|
3216
|
+
* This text is only visible to screen readers
|
|
3217
|
+
* </SrOnly>
|
|
3218
|
+
*
|
|
3219
|
+
* @extends ILibSrOnly
|
|
3220
|
+
*
|
|
3221
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
3222
|
+
* @prop {React.Ref<any>} [props.ref] - Ref to the sr-only element.
|
|
3223
|
+
* @prop {React.ReactNode} [props.children] - Content to be hidden visually but accessible to screen readers.
|
|
3224
|
+
*
|
|
3225
|
+
* @returns {JSX.Element} The rendered SrOnly component with screen reader accessible content.
|
|
3226
|
+
*
|
|
3227
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/sr-only
|
|
3228
|
+
*/
|
|
3229
|
+
declare const SrOnly: FC$1<ILibSrOnly>;
|
|
3230
|
+
|
|
3231
|
+
export { Accordion, AccordionItem, Alert, Aside, Autocomplete, Avatar, BackToTop, Badge, Breadcrumbs, Burger, Button, ButtonGroup, ButtonIcon, COLORS, CodeContainer, Cover, DROP_SHADOWS, DragList, DragListItem, Drawer, Dropdown, DropdownItem, FONT_FAMILIES, FONT_SIZES, FONT_WEIGHTS, Fade, Fieldset, Flexbox, Footer, Form, Grid, Header, Highlight, Hr, ICON_MULTIPLIER, INPUT_HEIGHT, INSET_SHADOWS, Image, Input, InputCheck, InputContainer, InputCounter, InputImage, InputPhone, InputPin, InputSlider, Key, LAYOUTS, LINE_HEIGHTS, Linkify, ListGroup, ListGroupItem, ListGroupTitle, Loader, MEDIA, Main, MarkdownContainer, MarkdownEditor, Masonry, Meta, Modal, OVERLAYS, PageLayout, PageLoading, Pagination, PaginationButton, Paginator, ProgressBar, ProgressCircle, RADIUS, Rating, SHADOWS, SPACERS, Section, Select, Skeleton, SkeletonCard, Slideshow, SrOnly, Sticky, TEXT_BASE_CLASSES, TEXT_SHADOWS, TRANSITIONS, Table, Tabs, TabsButton, TabsButtonsContainer, TabsContainer, TabsContent, Tag, Text, ThemeProviderWrapper, Toast, ToastContainer, Tooltip, URL_REGEX, Wrapper, clsx, genAlignContent, genAlignItems, genBgAllColors, genBgAllColorsAndOverlays, genBgColor, genBgColor50, genBgColorGhostHover, genBgColorHover, genBgColorShort, genBgOverlay, genBorderAllColors, genBorderColor, genBorderColorHover, genBorderColorShort, genBorderRadius, genBoxShadow, genButtonColor, genButtonDisabled, genColGap, genGap, genJustifyContent, genJustifyItems, genLinkColor, genMaxWidth, genObjectFit, genRingColor, genRingColorChildren, genRowGap, genTextAlign, genTextAllColor, genTextColor, genTextColorHover, genTextColorShort, genVAlign, libMarkdownEditorOptions, libOptionsMarkdown, linkifyText, toast, useClickOutside, useCopyToClipboard, useDebounce, useExportData, useFetch, useForm, useIsOverflow, useKeyPress, useLibTheme, useMaxWidth, useMergeRefs, useMinWidth, usePaginatedData, usePagination, useTouchScreen, useTranslation };
|