@arkyn/components 3.0.1-beta.21 → 3.0.1-beta.23
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/README.md +264 -0
- package/dist/bundle.js +1485 -859
- package/dist/bundle.umd.cjs +1 -1
- package/dist/components/alert/alertContainer/index.d.ts.map +1 -0
- package/dist/components/alert/alertContent/index.d.ts.map +1 -0
- package/dist/components/alert/alertDescription/index.d.ts.map +1 -0
- package/dist/components/alert/alertIcon/index.d.ts.map +1 -0
- package/dist/components/alert/alertTitle/index.d.ts.map +1 -0
- package/dist/components/audioPlayer/index.d.ts.map +1 -0
- package/dist/components/audioUpload/hasFileContent/index.d.ts +13 -0
- package/dist/components/audioUpload/hasFileContent/index.d.ts.map +1 -0
- package/dist/components/audioUpload/hasFileContent/index.js +26 -0
- package/dist/components/audioUpload/index.d.ts +82 -0
- package/dist/components/audioUpload/index.d.ts.map +1 -0
- package/dist/components/audioUpload/index.js +120 -0
- package/dist/components/audioUpload/noFileContent/index.d.ts +12 -0
- package/dist/components/audioUpload/noFileContent/index.d.ts.map +1 -0
- package/dist/components/audioUpload/noFileContent/index.js +29 -0
- package/dist/components/badge/index.d.ts.map +1 -0
- package/dist/components/button/index.d.ts.map +1 -0
- package/dist/components/cardTab/cardTabButton/index.d.ts.map +1 -0
- package/dist/components/cardTab/cardTabContainer/index.d.ts.map +1 -0
- package/dist/components/cardTab/cardTabContext.d.ts.map +1 -0
- package/dist/components/checkbox/index.d.ts.map +1 -0
- package/dist/components/clientOnly.d.ts +86 -0
- package/dist/components/clientOnly.d.ts.map +1 -0
- package/dist/components/clientOnly.js +86 -0
- package/dist/components/currencyInput/index.d.ts.map +1 -0
- package/dist/components/divider/index.d.ts.map +1 -0
- package/dist/components/drawer/drawerContainer/index.d.ts.map +1 -0
- package/dist/components/drawer/drawerContext.d.ts.map +1 -0
- package/dist/components/drawer/drawerHeader/index.d.ts.map +1 -0
- package/dist/components/fieldError/index.d.ts.map +1 -0
- package/dist/components/fieldLabel/index.d.ts.map +1 -0
- package/dist/components/fieldWrapper/index.d.ts.map +1 -0
- package/dist/components/fileUpload/hasFileContent/index.d.ts +13 -0
- package/dist/components/fileUpload/hasFileContent/index.d.ts.map +1 -0
- package/dist/components/fileUpload/hasFileContent/index.js +34 -0
- package/dist/components/fileUpload/index.d.ts +94 -0
- package/dist/components/fileUpload/index.d.ts.map +1 -0
- package/dist/components/fileUpload/index.js +127 -0
- package/dist/components/fileUpload/noFileContent/index.d.ts +12 -0
- package/dist/components/fileUpload/noFileContent/index.d.ts.map +1 -0
- package/dist/components/fileUpload/noFileContent/index.js +29 -0
- package/dist/components/iconButton/index.d.ts.map +1 -0
- package/dist/components/imageUpload/hasFileContent/index.d.ts +13 -0
- package/dist/components/imageUpload/hasFileContent/index.d.ts.map +1 -0
- package/dist/components/imageUpload/hasFileContent/index.js +24 -0
- package/dist/components/imageUpload/index.d.ts +114 -0
- package/dist/components/imageUpload/index.d.ts.map +1 -0
- package/dist/components/imageUpload/index.js +148 -0
- package/dist/components/imageUpload/noFileContent/index.d.ts +12 -0
- package/dist/components/imageUpload/noFileContent/index.d.ts.map +1 -0
- package/dist/components/imageUpload/noFileContent/index.js +29 -0
- package/dist/components/input/index.d.ts.map +1 -0
- package/dist/components/maskedInput/index.d.ts.map +1 -0
- package/dist/components/modal/modalContainer/index.d.ts.map +1 -0
- package/dist/components/modal/modalContext.d.ts.map +1 -0
- package/dist/components/modal/modalFooter/index.d.ts.map +1 -0
- package/dist/components/modal/modalHeader/index.d.ts.map +1 -0
- package/dist/components/multiSelect/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectChevron/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectContainer/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectContent/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectMark/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectOption/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectOptionsContainer/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectOverlay/index.d.ts.map +1 -0
- package/dist/components/multiSelect/multiSelectSpinner/index.d.ts.map +1 -0
- package/dist/components/phoneInput/index.d.ts.map +1 -0
- package/dist/components/phoneInput/phoneInputContainer/index.d.ts.map +1 -0
- package/dist/components/phoneInput/phoneInputCountriesOverlay/index.d.ts.map +1 -0
- package/dist/components/phoneInput/phoneInputCountryOption/index.d.ts.map +1 -0
- package/dist/components/phoneInput/phoneInputCountryOptionsContainer/index.d.ts.map +1 -0
- package/dist/components/phoneInput/phoneInputCountrySelector/index.d.ts.map +1 -0
- package/dist/components/phoneInput/phoneInputMask/index.d.ts.map +1 -0
- package/dist/components/radio/radioBox/index.d.ts.map +1 -0
- package/dist/components/radio/radioContext.d.ts.map +1 -0
- package/dist/components/radio/radioGroup/index.d.ts.map +1 -0
- package/dist/components/slider/index.d.ts.map +1 -0
- package/dist/components/switch/index.d.ts.map +1 -0
- package/dist/components/tab/tabButton/index.d.ts.map +1 -0
- package/dist/components/tab/tabContainer/index.d.ts.map +1 -0
- package/dist/components/tab/tabContext.d.ts.map +1 -0
- package/dist/components/table/tableBody/index.d.ts +67 -0
- package/dist/components/table/tableBody/index.d.ts.map +1 -0
- package/dist/components/table/tableBody/index.js +69 -0
- package/dist/components/table/tableCaption/index.d.ts +62 -0
- package/dist/components/table/tableCaption/index.d.ts.map +1 -0
- package/dist/components/table/tableCaption/index.js +64 -0
- package/dist/components/table/tableContainer/index.d.ts +64 -0
- package/dist/components/table/tableContainer/index.d.ts.map +1 -0
- package/dist/components/table/tableContainer/index.js +66 -0
- package/dist/components/table/tableFooter/index.d.ts +45 -0
- package/dist/components/table/tableFooter/index.d.ts.map +1 -0
- package/dist/components/table/tableFooter/index.js +47 -0
- package/dist/components/table/tableHeader/index.d.ts +44 -0
- package/dist/components/table/tableHeader/index.d.ts.map +1 -0
- package/dist/components/table/tableHeader/index.js +46 -0
- package/dist/components/textarea/index.d.ts.map +1 -0
- package/dist/components/tooltip/index.d.ts.map +1 -0
- package/dist/{src/components → components}/tooltip/index.js +1 -1
- package/dist/hooks/useDrawer.d.ts +86 -0
- package/dist/hooks/useDrawer.d.ts.map +1 -0
- package/dist/hooks/useDrawer.js +20 -0
- package/dist/hooks/useForm.d.ts.map +1 -0
- package/dist/hooks/useHydrated.d.ts +76 -0
- package/dist/hooks/useHydrated.d.ts.map +1 -0
- package/dist/hooks/useHydrated.js +81 -0
- package/dist/hooks/useModal.d.ts +81 -0
- package/dist/hooks/useModal.d.ts.map +1 -0
- package/dist/hooks/useModal.js +20 -0
- package/dist/hooks/useScopedParams.d.ts.map +1 -0
- package/dist/hooks/useScrollLock.d.ts.map +1 -0
- package/dist/hooks/useSlider.d.ts.map +1 -0
- package/dist/{src/index.d.ts → index.d.ts} +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{src/index.js → index.js} +14 -0
- package/dist/providers/drawerProvider.d.ts +106 -0
- package/dist/providers/drawerProvider.d.ts.map +1 -0
- package/dist/providers/drawerProvider.js +120 -0
- package/dist/providers/formProvider.d.ts.map +1 -0
- package/dist/providers/modalProvider.d.ts +103 -0
- package/dist/providers/modalProvider.d.ts.map +1 -0
- package/dist/providers/modalProvider.js +119 -0
- package/dist/services/iconRenderer.d.ts.map +1 -0
- package/dist/services/maskCurrencyValues.d.ts.map +1 -0
- package/dist/style.css +1 -1
- package/dist/{src/utils → utils}/phoneInputUtilities.d.ts.map +1 -1
- package/package.json +19 -2
- package/dist/documentation/src/app.d.ts +0 -3
- package/dist/documentation/src/app.d.ts.map +0 -1
- package/dist/documentation/src/app.js +0 -55
- package/dist/documentation/src/components/examples.alert.d.ts +0 -3
- package/dist/documentation/src/components/examples.alert.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.alert.js +0 -7
- package/dist/documentation/src/components/examples.audioPlayer.d.ts +0 -3
- package/dist/documentation/src/components/examples.audioPlayer.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.audioPlayer.js +0 -8
- package/dist/documentation/src/components/examples.badge.d.ts +0 -3
- package/dist/documentation/src/components/examples.badge.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.badge.js +0 -9
- package/dist/documentation/src/components/examples.button.d.ts +0 -3
- package/dist/documentation/src/components/examples.button.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.button.js +0 -9
- package/dist/documentation/src/components/examples.cardTab.d.ts +0 -3
- package/dist/documentation/src/components/examples.cardTab.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.cardTab.js +0 -7
- package/dist/documentation/src/components/examples.checkbox.d.ts +0 -3
- package/dist/documentation/src/components/examples.checkbox.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.checkbox.js +0 -13
- package/dist/documentation/src/components/examples.currencyInput.d.ts +0 -3
- package/dist/documentation/src/components/examples.currencyInput.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.currencyInput.js +0 -9
- package/dist/documentation/src/components/examples.divider.d.ts +0 -3
- package/dist/documentation/src/components/examples.divider.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.divider.js +0 -7
- package/dist/documentation/src/components/examples.drawer.d.ts +0 -3
- package/dist/documentation/src/components/examples.drawer.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.drawer.js +0 -11
- package/dist/documentation/src/components/examples.iconButton.d.ts +0 -3
- package/dist/documentation/src/components/examples.iconButton.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.iconButton.js +0 -9
- package/dist/documentation/src/components/examples.input.d.ts +0 -3
- package/dist/documentation/src/components/examples.input.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.input.js +0 -9
- package/dist/documentation/src/components/examples.maskedInput.d.ts +0 -3
- package/dist/documentation/src/components/examples.maskedInput.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.maskedInput.js +0 -9
- package/dist/documentation/src/components/examples.modal.d.ts +0 -3
- package/dist/documentation/src/components/examples.modal.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.modal.js +0 -10
- package/dist/documentation/src/components/examples.multiSelect.d.ts +0 -3
- package/dist/documentation/src/components/examples.multiSelect.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.multiSelect.js +0 -92
- package/dist/documentation/src/components/examples.phoneInput.d.ts +0 -3
- package/dist/documentation/src/components/examples.phoneInput.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.phoneInput.js +0 -26
- package/dist/documentation/src/components/examples.radio.d.ts +0 -3
- package/dist/documentation/src/components/examples.radio.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.radio.js +0 -11
- package/dist/documentation/src/components/examples.slider.d.ts +0 -3
- package/dist/documentation/src/components/examples.slider.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.slider.js +0 -10
- package/dist/documentation/src/components/examples.switch.d.ts +0 -3
- package/dist/documentation/src/components/examples.switch.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.switch.js +0 -20
- package/dist/documentation/src/components/examples.tab.d.ts +0 -3
- package/dist/documentation/src/components/examples.tab.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.tab.js +0 -7
- package/dist/documentation/src/components/examples.texarea.d.ts +0 -3
- package/dist/documentation/src/components/examples.texarea.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.texarea.js +0 -34
- package/dist/documentation/src/components/examples.tooltip.d.ts +0 -3
- package/dist/documentation/src/components/examples.tooltip.d.ts.map +0 -1
- package/dist/documentation/src/components/examples.tooltip.js +0 -8
- package/dist/documentation/src/main.d.ts +0 -3
- package/dist/documentation/src/main.d.ts.map +0 -1
- package/dist/documentation/src/main.js +0 -7
- package/dist/documentation/src/ui/box.d.ts +0 -8
- package/dist/documentation/src/ui/box.d.ts.map +0 -1
- package/dist/documentation/src/ui/box.js +0 -5
- package/dist/documentation/src/ui/row.d.ts +0 -7
- package/dist/documentation/src/ui/row.d.ts.map +0 -1
- package/dist/documentation/src/ui/row.js +0 -5
- package/dist/documentation/vite.config.d.ts +0 -3
- package/dist/documentation/vite.config.d.ts.map +0 -1
- package/dist/documentation/vite.config.js +0 -12
- package/dist/src/components/alert/alertContainer/index.d.ts.map +0 -1
- package/dist/src/components/alert/alertContent/index.d.ts.map +0 -1
- package/dist/src/components/alert/alertDescription/index.d.ts.map +0 -1
- package/dist/src/components/alert/alertIcon/index.d.ts.map +0 -1
- package/dist/src/components/alert/alertTitle/index.d.ts.map +0 -1
- package/dist/src/components/audioPlayer/index.d.ts.map +0 -1
- package/dist/src/components/badge/index.d.ts.map +0 -1
- package/dist/src/components/button/index.d.ts.map +0 -1
- package/dist/src/components/cardTab/cardTabButton/index.d.ts.map +0 -1
- package/dist/src/components/cardTab/cardTabContainer/index.d.ts.map +0 -1
- package/dist/src/components/cardTab/cardTabContext.d.ts.map +0 -1
- package/dist/src/components/checkbox/index.d.ts.map +0 -1
- package/dist/src/components/currencyInput/index.d.ts.map +0 -1
- package/dist/src/components/divider/index.d.ts.map +0 -1
- package/dist/src/components/drawer/drawerContainer/index.d.ts.map +0 -1
- package/dist/src/components/drawer/drawerContext.d.ts.map +0 -1
- package/dist/src/components/drawer/drawerHeader/index.d.ts.map +0 -1
- package/dist/src/components/fieldError/index.d.ts.map +0 -1
- package/dist/src/components/fieldLabel/index.d.ts.map +0 -1
- package/dist/src/components/fieldWrapper/index.d.ts.map +0 -1
- package/dist/src/components/iconButton/index.d.ts.map +0 -1
- package/dist/src/components/input/index.d.ts.map +0 -1
- package/dist/src/components/maskedInput/index.d.ts.map +0 -1
- package/dist/src/components/modal/modalContainer/index.d.ts.map +0 -1
- package/dist/src/components/modal/modalContext.d.ts.map +0 -1
- package/dist/src/components/modal/modalFooter/index.d.ts.map +0 -1
- package/dist/src/components/modal/modalHeader/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectChevron/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectContainer/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectContent/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectMark/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectOption/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectOptionsContainer/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectOverlay/index.d.ts.map +0 -1
- package/dist/src/components/multiSelect/multiSelectSpinner/index.d.ts.map +0 -1
- package/dist/src/components/phoneInput/index.d.ts.map +0 -1
- package/dist/src/components/phoneInput/phoneInputContainer/index.d.ts.map +0 -1
- package/dist/src/components/phoneInput/phoneInputCountriesOverlay/index.d.ts.map +0 -1
- package/dist/src/components/phoneInput/phoneInputCountryOption/index.d.ts.map +0 -1
- package/dist/src/components/phoneInput/phoneInputCountryOptionsContainer/index.d.ts.map +0 -1
- package/dist/src/components/phoneInput/phoneInputCountrySelector/index.d.ts.map +0 -1
- package/dist/src/components/phoneInput/phoneInputMask/index.d.ts.map +0 -1
- package/dist/src/components/radio/radioBox/index.d.ts.map +0 -1
- package/dist/src/components/radio/radioContext.d.ts.map +0 -1
- package/dist/src/components/radio/radioGroup/index.d.ts.map +0 -1
- package/dist/src/components/slider/index.d.ts.map +0 -1
- package/dist/src/components/switch/index.d.ts.map +0 -1
- package/dist/src/components/tab/tabButton/index.d.ts.map +0 -1
- package/dist/src/components/tab/tabContainer/index.d.ts.map +0 -1
- package/dist/src/components/tab/tabContext.d.ts.map +0 -1
- package/dist/src/components/textarea/index.d.ts.map +0 -1
- package/dist/src/components/tooltip/index.d.ts.map +0 -1
- package/dist/src/hooks/useForm.d.ts.map +0 -1
- package/dist/src/hooks/useScopedParams.d.ts.map +0 -1
- package/dist/src/hooks/useScrollLock.d.ts.map +0 -1
- package/dist/src/hooks/useSlider.d.ts.map +0 -1
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/providers/formProvider.d.ts.map +0 -1
- package/dist/src/services/iconRenderer.d.ts.map +0 -1
- package/dist/src/services/maskCurrencyValues.d.ts.map +0 -1
- package/dist/vite.config.d.ts +0 -3
- package/dist/vite.config.d.ts.map +0 -1
- package/dist/vite.config.js +0 -30
- package/dist/vitest.config.d.ts +0 -3
- package/dist/vitest.config.d.ts.map +0 -1
- package/dist/vitest.config.js +0 -4
- package/documentation/css/reset.css +0 -38
- package/documentation/css/variables.css +0 -41
- package/documentation/index.html +0 -13
- package/documentation/src/app.tsx +0 -93
- package/documentation/src/components/examples.alert.tsx +0 -49
- package/documentation/src/components/examples.audioPlayer.tsx +0 -16
- package/documentation/src/components/examples.badge.tsx +0 -38
- package/documentation/src/components/examples.button.tsx +0 -66
- package/documentation/src/components/examples.cardTab.tsx +0 -36
- package/documentation/src/components/examples.checkbox.tsx +0 -94
- package/documentation/src/components/examples.currencyInput.tsx +0 -263
- package/documentation/src/components/examples.divider.tsx +0 -12
- package/documentation/src/components/examples.drawer.tsx +0 -43
- package/documentation/src/components/examples.iconButton.tsx +0 -78
- package/documentation/src/components/examples.input.tsx +0 -256
- package/documentation/src/components/examples.maskedInput.tsx +0 -274
- package/documentation/src/components/examples.modal.tsx +0 -31
- package/documentation/src/components/examples.multiSelect.tsx +0 -320
- package/documentation/src/components/examples.phoneInput.tsx +0 -262
- package/documentation/src/components/examples.radio.tsx +0 -149
- package/documentation/src/components/examples.slider.tsx +0 -28
- package/documentation/src/components/examples.switch.tsx +0 -180
- package/documentation/src/components/examples.tab.tsx +0 -36
- package/documentation/src/components/examples.texarea.tsx +0 -188
- package/documentation/src/components/examples.tooltip.tsx +0 -45
- package/documentation/src/main.tsx +0 -12
- package/documentation/src/ui/box.tsx +0 -17
- package/documentation/src/ui/row.tsx +0 -11
- package/documentation/vite.config.ts +0 -13
- package/src/components/alert/alertContainer/index.tsx +0 -92
- package/src/components/alert/alertContainer/styles.css +0 -33
- package/src/components/alert/alertContent/index.tsx +0 -53
- package/src/components/alert/alertContent/styles.css +0 -5
- package/src/components/alert/alertDescription/index.tsx +0 -57
- package/src/components/alert/alertDescription/styles.css +0 -7
- package/src/components/alert/alertIcon/index.tsx +0 -79
- package/src/components/alert/alertIcon/styles.css +0 -23
- package/src/components/alert/alertTitle/index.tsx +0 -54
- package/src/components/alert/alertTitle/styles.css +0 -7
- package/src/components/audioPlayer/index.tsx +0 -187
- package/src/components/audioPlayer/styles.css +0 -50
- package/src/components/badge/index.tsx +0 -80
- package/src/components/badge/styles.css +0 -145
- package/src/components/button/index.tsx +0 -104
- package/src/components/button/styles.css +0 -208
- package/src/components/cardTab/cardTabButton/index.tsx +0 -114
- package/src/components/cardTab/cardTabButton/styles.css +0 -30
- package/src/components/cardTab/cardTabContainer/index.tsx +0 -121
- package/src/components/cardTab/cardTabContainer/styles.css +0 -9
- package/src/components/cardTab/cardTabContext.tsx +0 -30
- package/src/components/checkbox/index.tsx +0 -158
- package/src/components/checkbox/styles.css +0 -78
- package/src/components/currencyInput/index.tsx +0 -312
- package/src/components/currencyInput/style.css +0 -226
- package/src/components/divider/index.tsx +0 -58
- package/src/components/divider/styles.css +0 -17
- package/src/components/drawer/drawerContainer/index.tsx +0 -123
- package/src/components/drawer/drawerContainer/styles.css +0 -46
- package/src/components/drawer/drawerContext.tsx +0 -26
- package/src/components/drawer/drawerHeader/index.tsx +0 -88
- package/src/components/drawer/drawerHeader/styles.css +0 -38
- package/src/components/fieldError/index.tsx +0 -43
- package/src/components/fieldError/styles.css +0 -6
- package/src/components/fieldLabel/index.tsx +0 -52
- package/src/components/fieldLabel/styles.css +0 -15
- package/src/components/fieldWrapper/index.tsx +0 -54
- package/src/components/fieldWrapper/styles.css +0 -7
- package/src/components/iconButton/index.tsx +0 -83
- package/src/components/iconButton/styles.css +0 -166
- package/src/components/input/index.tsx +0 -233
- package/src/components/input/style.css +0 -226
- package/src/components/maskedInput/index.tsx +0 -260
- package/src/components/maskedInput/style.css +0 -226
- package/src/components/modal/modalContainer/index.tsx +0 -127
- package/src/components/modal/modalContainer/styles.css +0 -37
- package/src/components/modal/modalContext.tsx +0 -26
- package/src/components/modal/modalFooter/index.tsx +0 -80
- package/src/components/modal/modalFooter/styles.css +0 -27
- package/src/components/modal/modalHeader/index.tsx +0 -99
- package/src/components/modal/modalHeader/styles.css +0 -38
- package/src/components/multiSelect/index.tsx +0 -319
- package/src/components/multiSelect/multiSelectChevron/index.tsx +0 -26
- package/src/components/multiSelect/multiSelectChevron/styles.css +0 -7
- package/src/components/multiSelect/multiSelectContainer/index.tsx +0 -51
- package/src/components/multiSelect/multiSelectContainer/styles.css +0 -134
- package/src/components/multiSelect/multiSelectContent/index.tsx +0 -15
- package/src/components/multiSelect/multiSelectContent/styles.css +0 -24
- package/src/components/multiSelect/multiSelectMark/index.tsx +0 -32
- package/src/components/multiSelect/multiSelectMark/styles.css +0 -44
- package/src/components/multiSelect/multiSelectOption/index.tsx +0 -25
- package/src/components/multiSelect/multiSelectOption/styles.css +0 -37
- package/src/components/multiSelect/multiSelectOptionsContainer/index.tsx +0 -81
- package/src/components/multiSelect/multiSelectOptionsContainer/styles.css +0 -45
- package/src/components/multiSelect/multiSelectOverlay/index.tsx +0 -14
- package/src/components/multiSelect/multiSelectOverlay/styles.css +0 -8
- package/src/components/multiSelect/multiSelectSpinner/index.tsx +0 -22
- package/src/components/multiSelect/multiSelectSpinner/styles.css +0 -12
- package/src/components/phoneInput/index.tsx +0 -332
- package/src/components/phoneInput/phoneInputContainer/index.tsx +0 -46
- package/src/components/phoneInput/phoneInputContainer/styles.css +0 -59
- package/src/components/phoneInput/phoneInputCountriesOverlay/index.tsx +0 -16
- package/src/components/phoneInput/phoneInputCountriesOverlay/styles.css +0 -8
- package/src/components/phoneInput/phoneInputCountryOption/index.tsx +0 -35
- package/src/components/phoneInput/phoneInputCountryOption/styles.css +0 -50
- package/src/components/phoneInput/phoneInputCountryOptionsContainer/index.tsx +0 -77
- package/src/components/phoneInput/phoneInputCountryOptionsContainer/styles.css +0 -59
- package/src/components/phoneInput/phoneInputCountrySelector/index.tsx +0 -37
- package/src/components/phoneInput/phoneInputCountrySelector/styles.css +0 -26
- package/src/components/phoneInput/phoneInputMask/index.tsx +0 -105
- package/src/components/phoneInput/phoneInputMask/style.css +0 -36
- package/src/components/radio/radioBox/index.tsx +0 -124
- package/src/components/radio/radioBox/styles.css +0 -95
- package/src/components/radio/radioContext.tsx +0 -34
- package/src/components/radio/radioGroup/index.tsx +0 -150
- package/src/components/radio/radioGroup/styles.css +0 -5
- package/src/components/slider/index.tsx +0 -132
- package/src/components/slider/styles.css +0 -45
- package/src/components/switch/index.tsx +0 -156
- package/src/components/switch/styles.css +0 -90
- package/src/components/tab/tabButton/index.tsx +0 -114
- package/src/components/tab/tabButton/styles.css +0 -41
- package/src/components/tab/tabContainer/index.tsx +0 -121
- package/src/components/tab/tabContainer/styles.css +0 -11
- package/src/components/tab/tabContext.tsx +0 -28
- package/src/components/textarea/index.tsx +0 -193
- package/src/components/textarea/styles.css +0 -93
- package/src/components/tooltip/index.tsx +0 -172
- package/src/components/tooltip/styles.css +0 -112
- package/src/hooks/useForm.ts +0 -55
- package/src/hooks/useScopedParams.ts +0 -111
- package/src/hooks/useScrollLock.ts +0 -52
- package/src/hooks/useSlider.ts +0 -52
- package/src/index.ts +0 -44
- package/src/providers/formProvider.tsx +0 -88
- package/src/services/iconRenderer.tsx +0 -23
- package/src/services/maskCurrencyValues.ts +0 -54
- package/src/utils/phoneInputUtilities.ts +0 -138
- package/tsconfig.json +0 -35
- package/variables.css +0 -41
- package/vite.config.ts +0 -31
- package/vitest.config.ts +0 -5
- /package/dist/{src/components → components}/alert/alertContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/alert/alertContainer/index.js +0 -0
- /package/dist/{src/components → components}/alert/alertContent/index.d.ts +0 -0
- /package/dist/{src/components → components}/alert/alertContent/index.js +0 -0
- /package/dist/{src/components → components}/alert/alertDescription/index.d.ts +0 -0
- /package/dist/{src/components → components}/alert/alertDescription/index.js +0 -0
- /package/dist/{src/components → components}/alert/alertIcon/index.d.ts +0 -0
- /package/dist/{src/components → components}/alert/alertIcon/index.js +0 -0
- /package/dist/{src/components → components}/alert/alertTitle/index.d.ts +0 -0
- /package/dist/{src/components → components}/alert/alertTitle/index.js +0 -0
- /package/dist/{src/components → components}/audioPlayer/index.d.ts +0 -0
- /package/dist/{src/components → components}/audioPlayer/index.js +0 -0
- /package/dist/{src/components → components}/badge/index.d.ts +0 -0
- /package/dist/{src/components → components}/badge/index.js +0 -0
- /package/dist/{src/components → components}/button/index.d.ts +0 -0
- /package/dist/{src/components → components}/button/index.js +0 -0
- /package/dist/{src/components → components}/cardTab/cardTabButton/index.d.ts +0 -0
- /package/dist/{src/components → components}/cardTab/cardTabButton/index.js +0 -0
- /package/dist/{src/components → components}/cardTab/cardTabContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/cardTab/cardTabContainer/index.js +0 -0
- /package/dist/{src/components → components}/cardTab/cardTabContext.d.ts +0 -0
- /package/dist/{src/components → components}/cardTab/cardTabContext.js +0 -0
- /package/dist/{src/components → components}/checkbox/index.d.ts +0 -0
- /package/dist/{src/components → components}/checkbox/index.js +0 -0
- /package/dist/{src/components → components}/currencyInput/index.d.ts +0 -0
- /package/dist/{src/components → components}/currencyInput/index.js +0 -0
- /package/dist/{src/components → components}/divider/index.d.ts +0 -0
- /package/dist/{src/components → components}/divider/index.js +0 -0
- /package/dist/{src/components → components}/drawer/drawerContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/drawer/drawerContainer/index.js +0 -0
- /package/dist/{src/components → components}/drawer/drawerContext.d.ts +0 -0
- /package/dist/{src/components → components}/drawer/drawerContext.js +0 -0
- /package/dist/{src/components → components}/drawer/drawerHeader/index.d.ts +0 -0
- /package/dist/{src/components → components}/drawer/drawerHeader/index.js +0 -0
- /package/dist/{src/components → components}/fieldError/index.d.ts +0 -0
- /package/dist/{src/components → components}/fieldError/index.js +0 -0
- /package/dist/{src/components → components}/fieldLabel/index.d.ts +0 -0
- /package/dist/{src/components → components}/fieldLabel/index.js +0 -0
- /package/dist/{src/components → components}/fieldWrapper/index.d.ts +0 -0
- /package/dist/{src/components → components}/fieldWrapper/index.js +0 -0
- /package/dist/{src/components → components}/iconButton/index.d.ts +0 -0
- /package/dist/{src/components → components}/iconButton/index.js +0 -0
- /package/dist/{src/components → components}/input/index.d.ts +0 -0
- /package/dist/{src/components → components}/input/index.js +0 -0
- /package/dist/{src/components → components}/maskedInput/index.d.ts +0 -0
- /package/dist/{src/components → components}/maskedInput/index.js +0 -0
- /package/dist/{src/components → components}/modal/modalContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/modal/modalContainer/index.js +0 -0
- /package/dist/{src/components → components}/modal/modalContext.d.ts +0 -0
- /package/dist/{src/components → components}/modal/modalContext.js +0 -0
- /package/dist/{src/components → components}/modal/modalFooter/index.d.ts +0 -0
- /package/dist/{src/components → components}/modal/modalFooter/index.js +0 -0
- /package/dist/{src/components → components}/modal/modalHeader/index.d.ts +0 -0
- /package/dist/{src/components → components}/modal/modalHeader/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectChevron/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectChevron/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectContainer/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectContent/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectContent/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectMark/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectMark/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectOption/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectOption/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectOptionsContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectOptionsContainer/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectOverlay/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectOverlay/index.js +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectSpinner/index.d.ts +0 -0
- /package/dist/{src/components → components}/multiSelect/multiSelectSpinner/index.js +0 -0
- /package/dist/{src/components → components}/phoneInput/index.d.ts +0 -0
- /package/dist/{src/components → components}/phoneInput/index.js +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputContainer/index.js +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountriesOverlay/index.d.ts +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountriesOverlay/index.js +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountryOption/index.d.ts +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountryOption/index.js +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountryOptionsContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountryOptionsContainer/index.js +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountrySelector/index.d.ts +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputCountrySelector/index.js +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputMask/index.d.ts +0 -0
- /package/dist/{src/components → components}/phoneInput/phoneInputMask/index.js +0 -0
- /package/dist/{src/components → components}/radio/radioBox/index.d.ts +0 -0
- /package/dist/{src/components → components}/radio/radioBox/index.js +0 -0
- /package/dist/{src/components → components}/radio/radioContext.d.ts +0 -0
- /package/dist/{src/components → components}/radio/radioContext.js +0 -0
- /package/dist/{src/components → components}/radio/radioGroup/index.d.ts +0 -0
- /package/dist/{src/components → components}/radio/radioGroup/index.js +0 -0
- /package/dist/{src/components → components}/slider/index.d.ts +0 -0
- /package/dist/{src/components → components}/slider/index.js +0 -0
- /package/dist/{src/components → components}/switch/index.d.ts +0 -0
- /package/dist/{src/components → components}/switch/index.js +0 -0
- /package/dist/{src/components → components}/tab/tabButton/index.d.ts +0 -0
- /package/dist/{src/components → components}/tab/tabButton/index.js +0 -0
- /package/dist/{src/components → components}/tab/tabContainer/index.d.ts +0 -0
- /package/dist/{src/components → components}/tab/tabContainer/index.js +0 -0
- /package/dist/{src/components → components}/tab/tabContext.d.ts +0 -0
- /package/dist/{src/components → components}/tab/tabContext.js +0 -0
- /package/dist/{src/components → components}/textarea/index.d.ts +0 -0
- /package/dist/{src/components → components}/textarea/index.js +0 -0
- /package/dist/{src/components → components}/tooltip/index.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useForm.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useForm.js +0 -0
- /package/dist/{src/hooks → hooks}/useScopedParams.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useScopedParams.js +0 -0
- /package/dist/{src/hooks → hooks}/useScrollLock.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useScrollLock.js +0 -0
- /package/dist/{src/hooks → hooks}/useSlider.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useSlider.js +0 -0
- /package/dist/{src/providers → providers}/formProvider.d.ts +0 -0
- /package/dist/{src/providers → providers}/formProvider.js +0 -0
- /package/dist/{src/services → services}/iconRenderer.d.ts +0 -0
- /package/dist/{src/services → services}/iconRenderer.js +0 -0
- /package/dist/{src/services → services}/maskCurrencyValues.d.ts +0 -0
- /package/dist/{src/services → services}/maskCurrencyValues.js +0 -0
- /package/dist/{src/utils → utils}/phoneInputUtilities.d.ts +0 -0
- /package/dist/{src/utils → utils}/phoneInputUtilities.js +0 -0
@@ -0,0 +1,86 @@
|
|
1
|
+
import { DrawerContextProps } from "../providers/drawerProvider";
|
2
|
+
type OpenDrawerProps<T = any> = (data?: T) => void;
|
3
|
+
/**
|
4
|
+
* useDrawer hook - provides access to drawer context for managing drawer state and data
|
5
|
+
*
|
6
|
+
* @param key - Optional drawer identifier key. When provided, returns functions for a specific drawer
|
7
|
+
*
|
8
|
+
* @returns When called without key: Complete drawer context with all drawer management functions
|
9
|
+
* @returns When called with key: Object containing drawer-specific functions:
|
10
|
+
* - `drawerIsOpen`: Boolean indicating if the specific drawer is open
|
11
|
+
* - `drawerData`: Data associated with the specific drawer
|
12
|
+
* - `openDrawer`: Function to open the specific drawer with optional data
|
13
|
+
* - `closeDrawer`: Function to close the specific drawer
|
14
|
+
*
|
15
|
+
* @example
|
16
|
+
* ```tsx
|
17
|
+
* // Basic usage - access to full drawer context
|
18
|
+
* function DrawerManager() {
|
19
|
+
* const drawerContext = useDrawer();
|
20
|
+
*
|
21
|
+
* return (
|
22
|
+
* <div>
|
23
|
+
* <button onClick={() => drawerContext.openDrawer('navigation', { section: 'main' })}>
|
24
|
+
* Open Navigation
|
25
|
+
* </button>
|
26
|
+
* <button onClick={() => drawerContext.openDrawer('filters', { category: 'electronics' })}>
|
27
|
+
* Open Filters
|
28
|
+
* </button>
|
29
|
+
* </div>
|
30
|
+
* );
|
31
|
+
* }
|
32
|
+
*
|
33
|
+
* // Usage with specific drawer key
|
34
|
+
* function NavigationDrawer() {
|
35
|
+
* const { drawerIsOpen, drawerData, openDrawer, closeDrawer } = useDrawer('navigation');
|
36
|
+
*
|
37
|
+
* return (
|
38
|
+
* <Drawer isOpen={drawerIsOpen} onClose={closeDrawer} position="left">
|
39
|
+
* <h2>Navigation</h2>
|
40
|
+
* <p>Current section: {drawerData?.section}</p>
|
41
|
+
* <button onClick={closeDrawer}>Close</button>
|
42
|
+
* </Drawer>
|
43
|
+
* );
|
44
|
+
* }
|
45
|
+
*
|
46
|
+
* // Usage with typed data
|
47
|
+
* interface FilterData {
|
48
|
+
* category: string;
|
49
|
+
* priceRange: [number, number];
|
50
|
+
* brands: string[];
|
51
|
+
* }
|
52
|
+
*
|
53
|
+
* function FilterDrawer() {
|
54
|
+
* const { drawerIsOpen, drawerData, closeDrawer } = useDrawer<FilterData>('filters');
|
55
|
+
*
|
56
|
+
* return (
|
57
|
+
* <Drawer isOpen={drawerIsOpen} onClose={closeDrawer} position="right">
|
58
|
+
* <h2>Filters</h2>
|
59
|
+
* <p>Category: {drawerData?.category}</p>
|
60
|
+
* <p>Price: ${drawerData?.priceRange?.[0]} - ${drawerData?.priceRange?.[1]}</p>
|
61
|
+
* <p>Brands: {drawerData?.brands?.join(', ')}</p>
|
62
|
+
* </Drawer>
|
63
|
+
* );
|
64
|
+
* }
|
65
|
+
*
|
66
|
+
* // Usage with DrawerProvider
|
67
|
+
* function App() {
|
68
|
+
* return (
|
69
|
+
* <DrawerProvider>
|
70
|
+
* <NavigationDrawer />
|
71
|
+
* <FilterDrawer />
|
72
|
+
* <DrawerManager />
|
73
|
+
* </DrawerProvider>
|
74
|
+
* );
|
75
|
+
* }
|
76
|
+
* ```
|
77
|
+
*/
|
78
|
+
declare function useDrawer<T = any>(): DrawerContextProps<T>;
|
79
|
+
declare function useDrawer<T = any>(key: string): {
|
80
|
+
drawerIsOpen: boolean;
|
81
|
+
drawerData: T;
|
82
|
+
openDrawer: OpenDrawerProps<T>;
|
83
|
+
closeDrawer: () => void;
|
84
|
+
};
|
85
|
+
export { useDrawer };
|
86
|
+
//# sourceMappingURL=useDrawer.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useDrawer.d.ts","sourceRoot":"","sources":["../../src/hooks/useDrawer.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEhF,KAAK,eAAe,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0EG;AAEH,iBAAS,SAAS,CAAC,CAAC,GAAG,GAAG,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC;AACrD,iBAAS,SAAS,CAAC,CAAC,GAAG,GAAG,EACxB,GAAG,EAAE,MAAM,GACV;IACD,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,CAAC,CAAC;IACd,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC/B,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AA6BF,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { useContext } from "react";
|
2
|
+
import { drawerContext } from "../providers/drawerProvider";
|
3
|
+
function useDrawer(key) {
|
4
|
+
const contextData = useContext(drawerContext);
|
5
|
+
if (Object.entries(contextData).length === 0) {
|
6
|
+
throw new Error("useDrawer must be used within a Provider");
|
7
|
+
}
|
8
|
+
if (key) {
|
9
|
+
const { drawerData: contextDrawerData, drawerIsOpen: contextDrawerIsOpen, openDrawer: contextOpenDrawer, closeDrawer: contextCloseDrawer, } = contextData;
|
10
|
+
const drawerIsOpen = contextDrawerIsOpen(key);
|
11
|
+
const drawerData = contextDrawerData(key);
|
12
|
+
const openDrawer = (data) => contextOpenDrawer(key, data);
|
13
|
+
const closeDrawer = () => contextCloseDrawer(key);
|
14
|
+
return { drawerIsOpen, drawerData, openDrawer, closeDrawer };
|
15
|
+
}
|
16
|
+
else {
|
17
|
+
return contextData;
|
18
|
+
}
|
19
|
+
}
|
20
|
+
export { useDrawer };
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../src/hooks/useForm.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,iBAAS,OAAO;;;;EAGf;AAED,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
@@ -0,0 +1,76 @@
|
|
1
|
+
/**
|
2
|
+
* useHydrated hook - detects if the component is hydrated on the client side
|
3
|
+
*
|
4
|
+
* This hook is useful for preventing hydration mismatches when rendering different content
|
5
|
+
* on server and client sides. It returns false during SSR and true after hydration.
|
6
|
+
*
|
7
|
+
* @returns Boolean indicating if the component is hydrated
|
8
|
+
* - `true`: Component is hydrated on the client side
|
9
|
+
* - `false`: Component is being rendered on the server side or before hydration
|
10
|
+
*
|
11
|
+
* @example
|
12
|
+
* ```tsx
|
13
|
+
* // Basic usage to prevent hydration mismatches
|
14
|
+
* function ClientOnlyComponent() {
|
15
|
+
* const isHydrated = useHydrated();
|
16
|
+
*
|
17
|
+
* if (!isHydrated) {
|
18
|
+
* return <div>Loading...</div>;
|
19
|
+
* }
|
20
|
+
*
|
21
|
+
* return (
|
22
|
+
* <div>
|
23
|
+
* <p>This content is only rendered on the client</p>
|
24
|
+
* <p>Current time: {new Date().toLocaleString()}</p>
|
25
|
+
* </div>
|
26
|
+
* );
|
27
|
+
* }
|
28
|
+
*
|
29
|
+
* // Conditional rendering based on hydration state
|
30
|
+
* function ResponsiveComponent() {
|
31
|
+
* const isHydrated = useHydrated();
|
32
|
+
*
|
33
|
+
* return (
|
34
|
+
* <div>
|
35
|
+
* <h1>My App</h1>
|
36
|
+
* {isHydrated ? (
|
37
|
+
* <InteractiveWidget />
|
38
|
+
* ) : (
|
39
|
+
* <StaticPlaceholder />
|
40
|
+
* )}
|
41
|
+
* </div>
|
42
|
+
* );
|
43
|
+
* }
|
44
|
+
*
|
45
|
+
* // Using with client-only features
|
46
|
+
* function LocationComponent() {
|
47
|
+
* const isHydrated = useHydrated();
|
48
|
+
* const [location, setLocation] = useState(null);
|
49
|
+
*
|
50
|
+
* useEffect(() => {
|
51
|
+
* if (isHydrated && navigator.geolocation) {
|
52
|
+
* navigator.geolocation.getCurrentPosition((pos) => {
|
53
|
+
* setLocation(pos.coords);
|
54
|
+
* });
|
55
|
+
* }
|
56
|
+
* }, [isHydrated]);
|
57
|
+
*
|
58
|
+
* if (!isHydrated) {
|
59
|
+
* return <div>Preparing location services...</div>;
|
60
|
+
* }
|
61
|
+
*
|
62
|
+
* return (
|
63
|
+
* <div>
|
64
|
+
* {location ? (
|
65
|
+
* <p>Your location: {location.latitude}, {location.longitude}</p>
|
66
|
+
* ) : (
|
67
|
+
* <p>Getting your location...</p>
|
68
|
+
* )}
|
69
|
+
* </div>
|
70
|
+
* );
|
71
|
+
* }
|
72
|
+
* ```
|
73
|
+
*/
|
74
|
+
declare function useHydrated(): boolean;
|
75
|
+
export { useHydrated };
|
76
|
+
//# sourceMappingURL=useHydrated.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useHydrated.d.ts","sourceRoot":"","sources":["../../src/hooks/useHydrated.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AAEH,iBAAS,WAAW,YAMnB;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import { useSyncExternalStore } from "react";
|
2
|
+
function subscribe() {
|
3
|
+
return () => { };
|
4
|
+
}
|
5
|
+
/**
|
6
|
+
* useHydrated hook - detects if the component is hydrated on the client side
|
7
|
+
*
|
8
|
+
* This hook is useful for preventing hydration mismatches when rendering different content
|
9
|
+
* on server and client sides. It returns false during SSR and true after hydration.
|
10
|
+
*
|
11
|
+
* @returns Boolean indicating if the component is hydrated
|
12
|
+
* - `true`: Component is hydrated on the client side
|
13
|
+
* - `false`: Component is being rendered on the server side or before hydration
|
14
|
+
*
|
15
|
+
* @example
|
16
|
+
* ```tsx
|
17
|
+
* // Basic usage to prevent hydration mismatches
|
18
|
+
* function ClientOnlyComponent() {
|
19
|
+
* const isHydrated = useHydrated();
|
20
|
+
*
|
21
|
+
* if (!isHydrated) {
|
22
|
+
* return <div>Loading...</div>;
|
23
|
+
* }
|
24
|
+
*
|
25
|
+
* return (
|
26
|
+
* <div>
|
27
|
+
* <p>This content is only rendered on the client</p>
|
28
|
+
* <p>Current time: {new Date().toLocaleString()}</p>
|
29
|
+
* </div>
|
30
|
+
* );
|
31
|
+
* }
|
32
|
+
*
|
33
|
+
* // Conditional rendering based on hydration state
|
34
|
+
* function ResponsiveComponent() {
|
35
|
+
* const isHydrated = useHydrated();
|
36
|
+
*
|
37
|
+
* return (
|
38
|
+
* <div>
|
39
|
+
* <h1>My App</h1>
|
40
|
+
* {isHydrated ? (
|
41
|
+
* <InteractiveWidget />
|
42
|
+
* ) : (
|
43
|
+
* <StaticPlaceholder />
|
44
|
+
* )}
|
45
|
+
* </div>
|
46
|
+
* );
|
47
|
+
* }
|
48
|
+
*
|
49
|
+
* // Using with client-only features
|
50
|
+
* function LocationComponent() {
|
51
|
+
* const isHydrated = useHydrated();
|
52
|
+
* const [location, setLocation] = useState(null);
|
53
|
+
*
|
54
|
+
* useEffect(() => {
|
55
|
+
* if (isHydrated && navigator.geolocation) {
|
56
|
+
* navigator.geolocation.getCurrentPosition((pos) => {
|
57
|
+
* setLocation(pos.coords);
|
58
|
+
* });
|
59
|
+
* }
|
60
|
+
* }, [isHydrated]);
|
61
|
+
*
|
62
|
+
* if (!isHydrated) {
|
63
|
+
* return <div>Preparing location services...</div>;
|
64
|
+
* }
|
65
|
+
*
|
66
|
+
* return (
|
67
|
+
* <div>
|
68
|
+
* {location ? (
|
69
|
+
* <p>Your location: {location.latitude}, {location.longitude}</p>
|
70
|
+
* ) : (
|
71
|
+
* <p>Getting your location...</p>
|
72
|
+
* )}
|
73
|
+
* </div>
|
74
|
+
* );
|
75
|
+
* }
|
76
|
+
* ```
|
77
|
+
*/
|
78
|
+
function useHydrated() {
|
79
|
+
return useSyncExternalStore(subscribe, () => true, () => false);
|
80
|
+
}
|
81
|
+
export { useHydrated };
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import { ModalContextProps } from "../providers/modalProvider";
|
2
|
+
type OpenModalProps<T = any> = (data?: T) => void;
|
3
|
+
/**
|
4
|
+
* useModal hook - provides access to modal context for managing modal state and data
|
5
|
+
*
|
6
|
+
* @param key - Optional modal identifier key. When provided, returns functions for a specific modal
|
7
|
+
*
|
8
|
+
* @returns When called without key: Complete modal context with all modal management functions
|
9
|
+
* @returns When called with key: Object containing modal-specific functions:
|
10
|
+
* - `modalIsOpen`: Boolean indicating if the specific modal is open
|
11
|
+
* - `modalData`: Data associated with the specific modal
|
12
|
+
* - `openModal`: Function to open the specific modal with optional data
|
13
|
+
* - `closeModal`: Function to close the specific modal
|
14
|
+
*
|
15
|
+
* @example
|
16
|
+
* ```tsx
|
17
|
+
* // Basic usage - access to full modal context
|
18
|
+
* function ModalManager() {
|
19
|
+
* const modalContext = useModal();
|
20
|
+
*
|
21
|
+
* return (
|
22
|
+
* <div>
|
23
|
+
* <button onClick={() => modalContext.openModal('user-details', { id: 1 })}>
|
24
|
+
* Open User Modal
|
25
|
+
* </button>
|
26
|
+
* </div>
|
27
|
+
* );
|
28
|
+
* }
|
29
|
+
*
|
30
|
+
* // Usage with specific modal key
|
31
|
+
* function UserModal() {
|
32
|
+
* const { modalIsOpen, modalData, openModal, closeModal } = useModal('user-details');
|
33
|
+
*
|
34
|
+
* return (
|
35
|
+
* <Modal isOpen={modalIsOpen} onClose={closeModal}>
|
36
|
+
* <h2>User Details</h2>
|
37
|
+
* <p>User ID: {modalData?.id}</p>
|
38
|
+
* <button onClick={closeModal}>Close</button>
|
39
|
+
* </Modal>
|
40
|
+
* );
|
41
|
+
* }
|
42
|
+
*
|
43
|
+
* // Usage with typed data
|
44
|
+
* interface UserData {
|
45
|
+
* id: number;
|
46
|
+
* name: string;
|
47
|
+
* email: string;
|
48
|
+
* }
|
49
|
+
*
|
50
|
+
* function UserProfileModal() {
|
51
|
+
* const { modalIsOpen, modalData, closeModal } = useModal<UserData>('user-profile');
|
52
|
+
*
|
53
|
+
* return (
|
54
|
+
* <Modal isOpen={modalIsOpen} onClose={closeModal}>
|
55
|
+
* <h2>{modalData?.name}</h2>
|
56
|
+
* <p>Email: {modalData?.email}</p>
|
57
|
+
* </Modal>
|
58
|
+
* );
|
59
|
+
* }
|
60
|
+
*
|
61
|
+
* // Usage with ModalProvider
|
62
|
+
* function App() {
|
63
|
+
* return (
|
64
|
+
* <ModalProvider>
|
65
|
+
* <UserModal />
|
66
|
+
* <UserProfileModal />
|
67
|
+
* <ModalManager />
|
68
|
+
* </ModalProvider>
|
69
|
+
* );
|
70
|
+
* }
|
71
|
+
* ```
|
72
|
+
*/
|
73
|
+
declare function useModal<T = any>(): ModalContextProps<T>;
|
74
|
+
declare function useModal<T = any>(key: string): {
|
75
|
+
modalIsOpen: boolean;
|
76
|
+
modalData: T;
|
77
|
+
openModal: OpenModalProps<T>;
|
78
|
+
closeModal: () => void;
|
79
|
+
};
|
80
|
+
export { useModal };
|
81
|
+
//# sourceMappingURL=useModal.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useModal.d.ts","sourceRoot":"","sources":["../../src/hooks/useModal.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE7E,KAAK,cAAc,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AAEH,iBAAS,QAAQ,CAAC,CAAC,GAAG,GAAG,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC;AACnD,iBAAS,QAAQ,CAAC,CAAC,GAAG,GAAG,EACvB,GAAG,EAAE,MAAM,GACV;IACD,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC;IACb,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC7B,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AA6BF,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { useContext } from "react";
|
2
|
+
import { modalContext } from "../providers/modalProvider";
|
3
|
+
function useModal(key) {
|
4
|
+
const contextData = useContext(modalContext);
|
5
|
+
if (Object.entries(contextData).length === 0) {
|
6
|
+
throw new Error("useModal must be used within a Provider");
|
7
|
+
}
|
8
|
+
if (key) {
|
9
|
+
const { modalData: contextModalData, modalIsOpen: contextModalIsOpen, openModal: contextOpenModal, closeModal: contextCloseModal, } = contextData;
|
10
|
+
const modalIsOpen = contextModalIsOpen(key);
|
11
|
+
const modalData = contextModalData(key);
|
12
|
+
const openModal = (data) => contextOpenModal(key, data);
|
13
|
+
const closeModal = () => contextCloseModal(key);
|
14
|
+
return { modalIsOpen, modalData, openModal, closeModal };
|
15
|
+
}
|
16
|
+
else {
|
17
|
+
return contextData;
|
18
|
+
}
|
19
|
+
}
|
20
|
+
export { useModal };
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useScopedParams.d.ts","sourceRoot":"","sources":["../../src/hooks/useScopedParams.ts"],"names":[],"mappings":"AAAA,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiFG;AAEH,iBAAS,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW;oBAe7C,MAAM;8BACI,UAAU;EAOvC;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useScrollLock.d.ts","sourceRoot":"","sources":["../../src/hooks/useScrollLock.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,iBAAS,aAAa,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAU9C;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useSlider.d.ts","sourceRoot":"","sources":["../../src/hooks/useSlider.ts"],"names":[],"mappings":"AAEA,KAAK,oBAAoB,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,iBAAS,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAiB9D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
@@ -4,11 +4,13 @@ export { AlertDescription } from "./components/alert/alertDescription";
|
|
4
4
|
export { AlertIcon } from "./components/alert/alertIcon";
|
5
5
|
export { AlertTitle } from "./components/alert/alertTitle";
|
6
6
|
export { AudioPlayer } from "./components/audioPlayer";
|
7
|
+
export { AudioUpload } from "./components/audioUpload";
|
7
8
|
export { Badge } from "./components/badge";
|
8
9
|
export { Button } from "./components/button";
|
9
10
|
export { CardTabButton } from "./components/cardTab/cardTabButton";
|
10
11
|
export { CardTabContainer } from "./components/cardTab/cardTabContainer";
|
11
12
|
export { Checkbox } from "./components/checkbox";
|
13
|
+
export { ClientOnly } from "./components/clientOnly";
|
12
14
|
export { CurrencyInput } from "./components/currencyInput";
|
13
15
|
export { Divider } from "./components/divider";
|
14
16
|
export { DrawerContainer } from "./components/drawer/drawerContainer";
|
@@ -16,7 +18,9 @@ export { DrawerHeader } from "./components/drawer/drawerHeader";
|
|
16
18
|
export { FieldError } from "./components/fieldError";
|
17
19
|
export { FieldLabel } from "./components/fieldLabel";
|
18
20
|
export { FieldWrapper } from "./components/fieldWrapper";
|
21
|
+
export { FileUpload } from "./components/fileUpload";
|
19
22
|
export { IconButton } from "./components/iconButton";
|
23
|
+
export { ImageUpload } from "./components/imageUpload";
|
20
24
|
export { Input } from "./components/input";
|
21
25
|
export { MaskedInput } from "./components/maskedInput";
|
22
26
|
export { ModalContainer } from "./components/modal/modalContainer";
|
@@ -30,11 +34,21 @@ export { Slider } from "./components/slider";
|
|
30
34
|
export { Switch } from "./components/switch";
|
31
35
|
export { TabButton } from "./components/tab/tabButton";
|
32
36
|
export { TabContainer } from "./components/tab/tabContainer";
|
37
|
+
export { TableBody } from "./components/table/tableBody";
|
38
|
+
export { TableCaption } from "./components/table/tableCaption";
|
39
|
+
export { TableContainer } from "./components/table/tableContainer";
|
40
|
+
export { TableFooter } from "./components/table/tableFooter";
|
41
|
+
export { TableHeader } from "./components/table/tableHeader";
|
33
42
|
export { Textarea } from "./components/textarea";
|
34
43
|
export { Tooltip } from "./components/tooltip";
|
44
|
+
export { useDrawer } from "./hooks/useDrawer";
|
35
45
|
export { useForm } from "./hooks/useForm";
|
46
|
+
export { useHydrated } from "./hooks/useHydrated";
|
47
|
+
export { useModal } from "./hooks/useModal";
|
36
48
|
export { useScopedParams } from "./hooks/useScopedParams";
|
37
49
|
export { useScrollLock } from "./hooks/useScrollLock";
|
38
50
|
export { useSlider } from "./hooks/useSlider";
|
51
|
+
export { DrawerProvider } from "./providers/drawerProvider";
|
39
52
|
export { FormProvider } from "./providers/formProvider";
|
53
|
+
export { ModalProvider } from "./providers/modalProvider";
|
40
54
|
//# sourceMappingURL=index.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC"}
|
@@ -5,11 +5,13 @@ export { AlertDescription } from "./components/alert/alertDescription";
|
|
5
5
|
export { AlertIcon } from "./components/alert/alertIcon";
|
6
6
|
export { AlertTitle } from "./components/alert/alertTitle";
|
7
7
|
export { AudioPlayer } from "./components/audioPlayer";
|
8
|
+
export { AudioUpload } from "./components/audioUpload";
|
8
9
|
export { Badge } from "./components/badge";
|
9
10
|
export { Button } from "./components/button";
|
10
11
|
export { CardTabButton } from "./components/cardTab/cardTabButton";
|
11
12
|
export { CardTabContainer } from "./components/cardTab/cardTabContainer";
|
12
13
|
export { Checkbox } from "./components/checkbox";
|
14
|
+
export { ClientOnly } from "./components/clientOnly";
|
13
15
|
export { CurrencyInput } from "./components/currencyInput";
|
14
16
|
export { Divider } from "./components/divider";
|
15
17
|
export { DrawerContainer } from "./components/drawer/drawerContainer";
|
@@ -17,7 +19,9 @@ export { DrawerHeader } from "./components/drawer/drawerHeader";
|
|
17
19
|
export { FieldError } from "./components/fieldError";
|
18
20
|
export { FieldLabel } from "./components/fieldLabel";
|
19
21
|
export { FieldWrapper } from "./components/fieldWrapper";
|
22
|
+
export { FileUpload } from "./components/fileUpload";
|
20
23
|
export { IconButton } from "./components/iconButton";
|
24
|
+
export { ImageUpload } from "./components/imageUpload";
|
21
25
|
export { Input } from "./components/input";
|
22
26
|
export { MaskedInput } from "./components/maskedInput";
|
23
27
|
export { ModalContainer } from "./components/modal/modalContainer";
|
@@ -31,12 +35,22 @@ export { Slider } from "./components/slider";
|
|
31
35
|
export { Switch } from "./components/switch";
|
32
36
|
export { TabButton } from "./components/tab/tabButton";
|
33
37
|
export { TabContainer } from "./components/tab/tabContainer";
|
38
|
+
export { TableBody } from "./components/table/tableBody";
|
39
|
+
export { TableCaption } from "./components/table/tableCaption";
|
40
|
+
export { TableContainer } from "./components/table/tableContainer";
|
41
|
+
export { TableFooter } from "./components/table/tableFooter";
|
42
|
+
export { TableHeader } from "./components/table/tableHeader";
|
34
43
|
export { Textarea } from "./components/textarea";
|
35
44
|
export { Tooltip } from "./components/tooltip";
|
36
45
|
// hooks
|
46
|
+
export { useDrawer } from "./hooks/useDrawer";
|
37
47
|
export { useForm } from "./hooks/useForm";
|
48
|
+
export { useHydrated } from "./hooks/useHydrated";
|
49
|
+
export { useModal } from "./hooks/useModal";
|
38
50
|
export { useScopedParams } from "./hooks/useScopedParams";
|
39
51
|
export { useScrollLock } from "./hooks/useScrollLock";
|
40
52
|
export { useSlider } from "./hooks/useSlider";
|
41
53
|
// providers
|
54
|
+
export { DrawerProvider } from "./providers/drawerProvider";
|
42
55
|
export { FormProvider } from "./providers/formProvider";
|
56
|
+
export { ModalProvider } from "./providers/modalProvider";
|
@@ -0,0 +1,106 @@
|
|
1
|
+
import { ReactNode } from "react";
|
2
|
+
type DrawerContextProps<T = any> = {
|
3
|
+
drawerIsOpen(key: string): boolean;
|
4
|
+
drawerData(key: string): T;
|
5
|
+
openDrawer(key: string, data?: T): void;
|
6
|
+
closeDrawer(key: string): void;
|
7
|
+
};
|
8
|
+
type DrawerProviderProps = {
|
9
|
+
children: ReactNode;
|
10
|
+
enableDrawerAutomation?: boolean;
|
11
|
+
};
|
12
|
+
declare const drawerContext: import("react").Context<DrawerContextProps<any>>;
|
13
|
+
/**
|
14
|
+
* DrawerProvider component - provides drawer context for managing multiple drawers state and data
|
15
|
+
*
|
16
|
+
* @param props - DrawerProvider component properties
|
17
|
+
* @param props.children - React elements that will have access to the drawer context
|
18
|
+
* @param props.enableDrawerAutomation - Optional flag to enable drawer automation features
|
19
|
+
*
|
20
|
+
* @returns DrawerProvider JSX element that wraps children with drawer context
|
21
|
+
*
|
22
|
+
* @example
|
23
|
+
* ```tsx
|
24
|
+
* // Basic drawer provider setup
|
25
|
+
* function App() {
|
26
|
+
* return (
|
27
|
+
* <DrawerProvider>
|
28
|
+
* <NavigationDrawer />
|
29
|
+
* <FilterDrawer />
|
30
|
+
* <SettingsDrawer />
|
31
|
+
* <MainContent />
|
32
|
+
* </DrawerProvider>
|
33
|
+
* );
|
34
|
+
* }
|
35
|
+
*
|
36
|
+
* // Drawer provider with automation enabled
|
37
|
+
* function AppWithAutomation() {
|
38
|
+
* return (
|
39
|
+
* <DrawerProvider enableDrawerAutomation={true}>
|
40
|
+
* <Dashboard />
|
41
|
+
* <SidePanel />
|
42
|
+
* <NotificationDrawer />
|
43
|
+
* </DrawerProvider>
|
44
|
+
* );
|
45
|
+
* }
|
46
|
+
*
|
47
|
+
* // Using with multiple drawers
|
48
|
+
* function MultiDrawerApp() {
|
49
|
+
* return (
|
50
|
+
* <DrawerProvider>
|
51
|
+
* <Header />
|
52
|
+
* <NavigationDrawer key="navigation" />
|
53
|
+
* <FilterDrawer key="filters" />
|
54
|
+
* <CartDrawer key="shopping-cart" />
|
55
|
+
* <MainContent />
|
56
|
+
* </DrawerProvider>
|
57
|
+
* );
|
58
|
+
* }
|
59
|
+
*
|
60
|
+
* // Component using drawer context
|
61
|
+
* function DrawerController() {
|
62
|
+
* const { openDrawer, closeDrawer } = useDrawer();
|
63
|
+
*
|
64
|
+
* const handleOpenNavigation = () => {
|
65
|
+
* openDrawer('navigation', { section: 'main-menu' });
|
66
|
+
* };
|
67
|
+
*
|
68
|
+
* const handleOpenFilters = () => {
|
69
|
+
* openDrawer('filters', { category: 'electronics', priceRange: [0, 1000] });
|
70
|
+
* };
|
71
|
+
*
|
72
|
+
* return (
|
73
|
+
* <div>
|
74
|
+
* <button onClick={handleOpenNavigation}>
|
75
|
+
* Open Navigation
|
76
|
+
* </button>
|
77
|
+
* <button onClick={handleOpenFilters}>
|
78
|
+
* Open Filters
|
79
|
+
* </button>
|
80
|
+
* </div>
|
81
|
+
* );
|
82
|
+
* }
|
83
|
+
*
|
84
|
+
* // Drawer component consuming context
|
85
|
+
* function NavigationDrawer() {
|
86
|
+
* const { drawerIsOpen, drawerData, closeDrawer } = useDrawer('navigation');
|
87
|
+
*
|
88
|
+
* if (!drawerIsOpen) return null;
|
89
|
+
*
|
90
|
+
* return (
|
91
|
+
* <Drawer position="left" onClose={() => closeDrawer('navigation')}>
|
92
|
+
* <h2>Navigation</h2>
|
93
|
+
* <p>Current section: {drawerData?.section}</p>
|
94
|
+
* <nav>
|
95
|
+
* <a href="/home">Home</a>
|
96
|
+
* <a href="/products">Products</a>
|
97
|
+
* <a href="/about">About</a>
|
98
|
+
* </nav>
|
99
|
+
* </Drawer>
|
100
|
+
* );
|
101
|
+
* }
|
102
|
+
* ```
|
103
|
+
*/
|
104
|
+
declare function DrawerProvider(args: DrawerProviderProps): import("react/jsx-runtime").JSX.Element;
|
105
|
+
export { drawerContext, DrawerProvider, type DrawerContextProps };
|
106
|
+
//# sourceMappingURL=drawerProvider.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"drawerProvider.d.ts","sourceRoot":"","sources":["../../src/providers/drawerProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,SAAS,EAAY,MAAM,OAAO,CAAC;AAE3D,KAAK,kBAAkB,CAAC,CAAC,GAAG,GAAG,IAAI;IACjC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACnC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;IAC3B,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACxC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAOF,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,QAAA,MAAM,aAAa,kDAA0C,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0FG;AAEH,iBAAS,cAAc,CAAC,IAAI,EAAE,mBAAmB,2CAiChD;AAED,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,CAAC"}
|