@arkyn/components 3.0.1-beta.20 → 3.0.1-beta.22
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/bundle.js +1112 -1737
- package/dist/bundle.umd.cjs +1 -30
- package/dist/components/alert/alertContainer/index.d.ts.map +1 -0
- package/dist/{src/components → components}/alert/alertContainer/index.js +4 -1
- 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/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/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/iconButton/index.d.ts.map +1 -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/textarea/index.d.ts.map +1 -0
- package/dist/components/tooltip/index.d.ts.map +1 -0
- package/dist/hooks/useForm.d.ts.map +1 -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/index.d.ts.map +1 -0
- package/dist/providers/formProvider.d.ts.map +1 -0
- package/dist/services/iconRenderer.d.ts.map +1 -0
- package/dist/services/maskCurrencyValues.d.ts.map +1 -0
- package/dist/{src/utils → utils}/phoneInputUtilities.d.ts.map +1 -1
- package/package.json +5 -5
- 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 -24
- 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 -87
- 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 -24
- package/vitest.config.ts +0 -5
- /package/dist/{src/components → components}/alert/alertContainer/index.d.ts +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/components → components}/tooltip/index.js +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/index.d.ts → index.d.ts} +0 -0
- /package/dist/{src/index.js → index.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
@@ -1,41 +0,0 @@
|
|
1
|
-
.arkynTabButton {
|
2
|
-
position: relative;
|
3
|
-
|
4
|
-
display: flex;
|
5
|
-
align-items: center;
|
6
|
-
justify-content: center;
|
7
|
-
|
8
|
-
padding: 8px 16px;
|
9
|
-
background-color: transparent;
|
10
|
-
border: none;
|
11
|
-
|
12
|
-
font-weight: 600;
|
13
|
-
font-size: 16px;
|
14
|
-
line-height: 100%;
|
15
|
-
|
16
|
-
color: var(--text-muted);
|
17
|
-
}
|
18
|
-
|
19
|
-
.arkynTabButton.isDisabled {
|
20
|
-
cursor: not-allowed;
|
21
|
-
opacity: 0.2;
|
22
|
-
}
|
23
|
-
|
24
|
-
.arkynTabButton:hover {
|
25
|
-
cursor: pointer;
|
26
|
-
}
|
27
|
-
|
28
|
-
.arkynTabButton.isActive {
|
29
|
-
color: rgba(var(--spotlight-primary), 1);
|
30
|
-
}
|
31
|
-
|
32
|
-
.arkynTabButton.isActive::after {
|
33
|
-
content: "";
|
34
|
-
position: absolute;
|
35
|
-
bottom: -1px;
|
36
|
-
left: 0;
|
37
|
-
right: 0;
|
38
|
-
|
39
|
-
height: 1px;
|
40
|
-
background-color: rgba(var(--spotlight-primary), 1);
|
41
|
-
}
|
@@ -1,121 +0,0 @@
|
|
1
|
-
import { HTMLAttributes, ReactNode, useState } from "react";
|
2
|
-
|
3
|
-
import { TabProvider } from "../tabContext";
|
4
|
-
import "./styles.css";
|
5
|
-
|
6
|
-
type TabContainerProps = Omit<
|
7
|
-
HTMLAttributes<HTMLElement>,
|
8
|
-
"onClick" | "children" | "ref"
|
9
|
-
> & {
|
10
|
-
children: ReactNode;
|
11
|
-
disabled?: boolean;
|
12
|
-
defaultValue?: string;
|
13
|
-
onChange?: (index: string) => void;
|
14
|
-
};
|
15
|
-
|
16
|
-
/**
|
17
|
-
* TabContainer component - used as a wrapper for TabButton components to create tabbed navigation
|
18
|
-
*
|
19
|
-
* @param props - TabContainer component properties
|
20
|
-
* @param props.children - TabButton components and other content (required)
|
21
|
-
* @param props.disabled - Whether all tab buttons are disabled. Default: false
|
22
|
-
* @param props.defaultValue - Initial tab value to be selected
|
23
|
-
* @param props.onChange - Callback function called when tab changes, receives the tab value
|
24
|
-
*
|
25
|
-
* **...Other valid HTML nav properties except onClick, children, and ref**
|
26
|
-
*
|
27
|
-
* @returns TabContainer JSX element
|
28
|
-
*
|
29
|
-
* @example
|
30
|
-
* ```tsx
|
31
|
-
* // Basic tab container
|
32
|
-
* <TabContainer>
|
33
|
-
* <TabButton value="home">Home</TabButton>
|
34
|
-
* <TabButton value="about">About</TabButton>
|
35
|
-
* <TabButton value="contact">Contact</TabButton>
|
36
|
-
* </TabContainer>
|
37
|
-
* ```
|
38
|
-
*
|
39
|
-
* @example
|
40
|
-
* ```tsx
|
41
|
-
* // Tab container with default value and change handler
|
42
|
-
* <TabContainer
|
43
|
-
* defaultValue="dashboard"
|
44
|
-
* onChange={(value) => console.log('Active tab:', value)}
|
45
|
-
* >
|
46
|
-
* <TabButton value="dashboard">Dashboard</TabButton>
|
47
|
-
* <TabButton value="analytics">Analytics</TabButton>
|
48
|
-
* <TabButton value="settings">Settings</TabButton>
|
49
|
-
* </TabContainer>
|
50
|
-
* ```
|
51
|
-
*
|
52
|
-
* @example
|
53
|
-
* ```tsx
|
54
|
-
* // Disabled all tabs
|
55
|
-
* <TabContainer disabled>
|
56
|
-
* <TabButton value="tab1">Tab 1</TabButton>
|
57
|
-
* <TabButton value="tab2">Tab 2</TabButton>
|
58
|
-
* </TabContainer>
|
59
|
-
* ```
|
60
|
-
*
|
61
|
-
* @example
|
62
|
-
* ```tsx
|
63
|
-
* // Tab container with custom styling and state management
|
64
|
-
* function MyTabs() {
|
65
|
-
* const [activeTab, setActiveTab] = useState('profile');
|
66
|
-
*
|
67
|
-
* return (
|
68
|
-
* <div>
|
69
|
-
* <TabContainer
|
70
|
-
* defaultValue={activeTab}
|
71
|
-
* onChange={setActiveTab}
|
72
|
-
* className="custom-tabs"
|
73
|
-
* role="tablist"
|
74
|
-
* >
|
75
|
-
* <TabButton value="profile">Profile</TabButton>
|
76
|
-
* <TabButton value="account">Account</TabButton>
|
77
|
-
* <TabButton value="notifications">Notifications</TabButton>
|
78
|
-
* </TabContainer>
|
79
|
-
*
|
80
|
-
* {activeTab === 'profile' && <ProfileContent />}
|
81
|
-
* {activeTab === 'account' && <AccountContent />}
|
82
|
-
* {activeTab === 'notifications' && <NotificationsContent />}
|
83
|
-
* </div>
|
84
|
-
* );
|
85
|
-
* }
|
86
|
-
* ```
|
87
|
-
*/
|
88
|
-
|
89
|
-
function TabContainer(props: TabContainerProps) {
|
90
|
-
const {
|
91
|
-
children,
|
92
|
-
onChange,
|
93
|
-
defaultValue,
|
94
|
-
disabled = false,
|
95
|
-
className: baseClassName,
|
96
|
-
...rest
|
97
|
-
} = props;
|
98
|
-
|
99
|
-
const [currentTab, setCurrentTab] = useState(defaultValue || "");
|
100
|
-
|
101
|
-
const className = `arkynTabContainer ${baseClassName || ""}`;
|
102
|
-
|
103
|
-
function changeCurrentTab(value: string) {
|
104
|
-
setCurrentTab(value);
|
105
|
-
if (onChange) onChange(value);
|
106
|
-
}
|
107
|
-
|
108
|
-
return (
|
109
|
-
<TabProvider
|
110
|
-
disabled={disabled}
|
111
|
-
currentTab={currentTab}
|
112
|
-
changeCurrentTab={changeCurrentTab}
|
113
|
-
>
|
114
|
-
<nav className={className.trim()} {...rest}>
|
115
|
-
{children}
|
116
|
-
</nav>
|
117
|
-
</TabProvider>
|
118
|
-
);
|
119
|
-
}
|
120
|
-
|
121
|
-
export { TabContainer };
|
@@ -1,28 +0,0 @@
|
|
1
|
-
import { createContext, ReactNode, useContext } from "react";
|
2
|
-
|
3
|
-
type TabContextProps = {
|
4
|
-
disabled: boolean;
|
5
|
-
currentTab: string;
|
6
|
-
changeCurrentTab: (tab: string) => void;
|
7
|
-
};
|
8
|
-
|
9
|
-
type TabProviderProps = {
|
10
|
-
children: ReactNode;
|
11
|
-
disabled: boolean;
|
12
|
-
currentTab: string;
|
13
|
-
changeCurrentTab: (tab: string) => void;
|
14
|
-
};
|
15
|
-
|
16
|
-
const TabContext = createContext({} as TabContextProps);
|
17
|
-
|
18
|
-
function useTab() {
|
19
|
-
return useContext(TabContext);
|
20
|
-
}
|
21
|
-
|
22
|
-
function TabProvider(props: TabProviderProps) {
|
23
|
-
return (
|
24
|
-
<TabContext.Provider value={props}>{props.children}</TabContext.Provider>
|
25
|
-
);
|
26
|
-
}
|
27
|
-
|
28
|
-
export { TabProvider, useTab };
|
@@ -1,193 +0,0 @@
|
|
1
|
-
import {
|
2
|
-
FocusEvent,
|
3
|
-
TextareaHTMLAttributes,
|
4
|
-
useId,
|
5
|
-
useRef,
|
6
|
-
useState,
|
7
|
-
} from "react";
|
8
|
-
|
9
|
-
import { useForm } from "../../hooks/useForm";
|
10
|
-
import { FieldLabel } from "../fieldLabel";
|
11
|
-
import { FieldWrapper } from "../fieldWrapper";
|
12
|
-
|
13
|
-
import "./styles.css";
|
14
|
-
|
15
|
-
type TextareaProps = Omit<
|
16
|
-
TextareaHTMLAttributes<HTMLTextAreaElement>,
|
17
|
-
"name"
|
18
|
-
> & {
|
19
|
-
name: string;
|
20
|
-
|
21
|
-
label?: string;
|
22
|
-
showAsterisk?: boolean;
|
23
|
-
errorMessage?: string;
|
24
|
-
|
25
|
-
size?: "md" | "lg";
|
26
|
-
variant?: "solid" | "outline";
|
27
|
-
};
|
28
|
-
|
29
|
-
/**
|
30
|
-
* Textarea component - used for multi-line text input with customizable styling and validation
|
31
|
-
*
|
32
|
-
* @param props - Textarea component properties
|
33
|
-
* @param props.name - Required field name for form handling and textarea identification
|
34
|
-
* @param props.label - Optional label text to display above the textarea
|
35
|
-
* @param props.showAsterisk - Whether to show asterisk on label for required fields
|
36
|
-
* @param props.errorMessage - Error message to display below the textarea
|
37
|
-
* @param props.size - Size variant of the textarea. Default: "md"
|
38
|
-
* @param props.variant - Visual variant of the textarea. Default: "solid"
|
39
|
-
*
|
40
|
-
* **...Other valid HTML properties for textarea element (except name)**
|
41
|
-
*
|
42
|
-
* @returns Textarea JSX element wrapped in FieldWrapper with optional label and error message
|
43
|
-
*
|
44
|
-
* @example
|
45
|
-
* ```tsx
|
46
|
-
* // Basic textarea
|
47
|
-
* <Textarea name="description" placeholder="Enter description..." />
|
48
|
-
*
|
49
|
-
* // Textarea with label and validation
|
50
|
-
* <Textarea
|
51
|
-
* name="bio"
|
52
|
-
* label="Biography"
|
53
|
-
* showAsterisk
|
54
|
-
* placeholder="Tell us about yourself"
|
55
|
-
* errorMessage="Biography is required"
|
56
|
-
* />
|
57
|
-
*
|
58
|
-
* // Large textarea with outline variant
|
59
|
-
* <Textarea
|
60
|
-
* name="comments"
|
61
|
-
* label="Comments"
|
62
|
-
* size="lg"
|
63
|
-
* variant="outline"
|
64
|
-
* placeholder="Enter your comments here..."
|
65
|
-
* rows={6}
|
66
|
-
* />
|
67
|
-
*
|
68
|
-
* // Textarea with character limit and custom styling
|
69
|
-
* <Textarea
|
70
|
-
* name="feedback"
|
71
|
-
* label="Feedback"
|
72
|
-
* placeholder="Share your feedback (max 500 characters)"
|
73
|
-
* maxLength={500}
|
74
|
-
* rows={4}
|
75
|
-
* className="feedback-textarea"
|
76
|
-
* />
|
77
|
-
*
|
78
|
-
* // Read-only textarea for display
|
79
|
-
* <Textarea
|
80
|
-
* name="terms"
|
81
|
-
* label="Terms and Conditions"
|
82
|
-
* value={termsContent}
|
83
|
-
* readOnly
|
84
|
-
* rows={10}
|
85
|
-
* variant="outline"
|
86
|
-
* />
|
87
|
-
*
|
88
|
-
* // Disabled textarea
|
89
|
-
* <Textarea
|
90
|
-
* name="disabled_field"
|
91
|
-
* label="Disabled Field"
|
92
|
-
* value="This field is disabled"
|
93
|
-
* disabled
|
94
|
-
* placeholder="Cannot edit this field"
|
95
|
-
* />
|
96
|
-
*
|
97
|
-
* // Textarea with controlled value and change handler
|
98
|
-
* <Textarea
|
99
|
-
* name="message"
|
100
|
-
* label="Message"
|
101
|
-
* value={message}
|
102
|
-
* onChange={(e) => setMessage(e.target.value)}
|
103
|
-
* placeholder="Type your message..."
|
104
|
-
* rows={5}
|
105
|
-
* showAsterisk
|
106
|
-
* />
|
107
|
-
*
|
108
|
-
* // Textarea with resize control
|
109
|
-
* <Textarea
|
110
|
-
* name="notes"
|
111
|
-
* label="Notes"
|
112
|
-
* placeholder="Enter your notes..."
|
113
|
-
* style={{ resize: 'vertical' }}
|
114
|
-
* rows={3}
|
115
|
-
* cols={50}
|
116
|
-
* />
|
117
|
-
* ```
|
118
|
-
*/
|
119
|
-
|
120
|
-
function Textarea(props: TextareaProps) {
|
121
|
-
const {
|
122
|
-
variant = "solid",
|
123
|
-
size = "md",
|
124
|
-
className: baseClassName,
|
125
|
-
errorMessage: baseErrorMessage,
|
126
|
-
disabled = false,
|
127
|
-
readOnly = false,
|
128
|
-
label,
|
129
|
-
showAsterisk,
|
130
|
-
name,
|
131
|
-
onFocus,
|
132
|
-
onBlur,
|
133
|
-
title,
|
134
|
-
style,
|
135
|
-
id,
|
136
|
-
...rest
|
137
|
-
} = props;
|
138
|
-
|
139
|
-
const { fieldErrors } = useForm();
|
140
|
-
const [isFocused, setIsFocused] = useState(false);
|
141
|
-
const textareaRef = useRef<HTMLTextAreaElement>(null);
|
142
|
-
const textareaId = id || useId();
|
143
|
-
|
144
|
-
const errorMessage = baseErrorMessage || fieldErrors?.[name];
|
145
|
-
const isError = !!errorMessage;
|
146
|
-
|
147
|
-
const errorClass = isError ? "errorTrue" : "errorFalse";
|
148
|
-
const opacityClass = disabled || readOnly ? "opacityTrue" : "opacityFalse";
|
149
|
-
const focusedClass = isFocused ? "focusedTrue" : "focusedFalse";
|
150
|
-
|
151
|
-
const className = `arkynTextarea ${variant} ${size} ${opacityClass} ${errorClass} ${focusedClass} ${baseClassName}`;
|
152
|
-
|
153
|
-
function handleSectionClick() {
|
154
|
-
if (disabled || !textareaRef?.current) return;
|
155
|
-
setIsFocused(true);
|
156
|
-
textareaRef.current.focus();
|
157
|
-
}
|
158
|
-
|
159
|
-
function handleFocus(e: FocusEvent<HTMLTextAreaElement>) {
|
160
|
-
setIsFocused(true);
|
161
|
-
if (onFocus) onFocus(e);
|
162
|
-
}
|
163
|
-
|
164
|
-
function handleBlur(e: FocusEvent<HTMLTextAreaElement>) {
|
165
|
-
setIsFocused(false);
|
166
|
-
if (onBlur) onBlur(e);
|
167
|
-
}
|
168
|
-
|
169
|
-
return (
|
170
|
-
<FieldWrapper>
|
171
|
-
{label && <FieldLabel showAsterisk={showAsterisk}>{label}</FieldLabel>}
|
172
|
-
<section
|
173
|
-
title={title}
|
174
|
-
style={style}
|
175
|
-
onClick={handleSectionClick}
|
176
|
-
className={className}
|
177
|
-
>
|
178
|
-
<textarea
|
179
|
-
id={textareaId}
|
180
|
-
disabled={disabled}
|
181
|
-
readOnly={readOnly}
|
182
|
-
ref={textareaRef}
|
183
|
-
onFocus={handleFocus}
|
184
|
-
onBlur={handleBlur}
|
185
|
-
{...rest}
|
186
|
-
/>
|
187
|
-
</section>
|
188
|
-
{errorMessage && <FieldLabel>{errorMessage}</FieldLabel>}
|
189
|
-
</FieldWrapper>
|
190
|
-
);
|
191
|
-
}
|
192
|
-
|
193
|
-
export { Textarea };
|
@@ -1,93 +0,0 @@
|
|
1
|
-
/* BASE */
|
2
|
-
.arkynTextarea {
|
3
|
-
flex: 1;
|
4
|
-
position: relative;
|
5
|
-
display: flex;
|
6
|
-
align-items: center;
|
7
|
-
|
8
|
-
padding: 16px;
|
9
|
-
gap: 8px;
|
10
|
-
border-radius: 8px;
|
11
|
-
|
12
|
-
border: 1px solid transparent;
|
13
|
-
outline: 1px solid transparent;
|
14
|
-
}
|
15
|
-
|
16
|
-
.arkynTextarea:hover {
|
17
|
-
cursor: text;
|
18
|
-
}
|
19
|
-
|
20
|
-
.arkynTextarea textarea {
|
21
|
-
border: none;
|
22
|
-
outline: none;
|
23
|
-
background: transparent;
|
24
|
-
width: 100%;
|
25
|
-
resize: none;
|
26
|
-
}
|
27
|
-
|
28
|
-
.arkynTextarea textarea {
|
29
|
-
color: var(--text-heading);
|
30
|
-
}
|
31
|
-
|
32
|
-
.arkynTextarea textarea::placeholder {
|
33
|
-
color: var(--text-muted);
|
34
|
-
}
|
35
|
-
|
36
|
-
.arkynTextarea.opacityTrue {
|
37
|
-
opacity: 0.5;
|
38
|
-
}
|
39
|
-
|
40
|
-
/* VARIANTS */
|
41
|
-
.arkynTextarea.solid {
|
42
|
-
border-color: var(--border);
|
43
|
-
background-color: rgba(var(--spotlight-secondary), 1);
|
44
|
-
}
|
45
|
-
|
46
|
-
.arkynTextarea.solid.errorTrue {
|
47
|
-
border-color: rgba(var(--spotlight-danger), 1);
|
48
|
-
outline-color: rgba(var(--spotlight-danger), 1);
|
49
|
-
}
|
50
|
-
|
51
|
-
.arkynTextarea:not(.opacityTrue).solid.focusedTrue {
|
52
|
-
border-color: rgba(var(--spotlight-primary), 1);
|
53
|
-
outline-color: rgba(var(--spotlight-primary), 1);
|
54
|
-
}
|
55
|
-
|
56
|
-
.arkynTextarea.outline {
|
57
|
-
border-color: var(--border);
|
58
|
-
}
|
59
|
-
|
60
|
-
.arkynTextarea.outline.errorTrue {
|
61
|
-
border-color: rgba(var(--spotlight-danger), 1);
|
62
|
-
outline-color: rgba(var(--spotlight-danger), 1);
|
63
|
-
}
|
64
|
-
|
65
|
-
.arkynTextarea:not(.opacityTrue).outline.focusedTrue {
|
66
|
-
border-color: rgba(var(--spotlight-primary), 1);
|
67
|
-
outline-color: rgba(var(--spotlight-primary), 1);
|
68
|
-
}
|
69
|
-
|
70
|
-
/* SIZE */
|
71
|
-
.arkynTextarea.md textarea {
|
72
|
-
font-size: 14px;
|
73
|
-
line-height: 14px;
|
74
|
-
font-weight: 400;
|
75
|
-
}
|
76
|
-
|
77
|
-
.arkynTextarea.md textarea::placeholder {
|
78
|
-
font-weight: 400;
|
79
|
-
font-size: 14px;
|
80
|
-
line-height: 14px;
|
81
|
-
}
|
82
|
-
|
83
|
-
.arkynTextarea.lg textarea {
|
84
|
-
line-height: 16px;
|
85
|
-
font-size: 16px;
|
86
|
-
font-weight: 400;
|
87
|
-
}
|
88
|
-
|
89
|
-
.arkynTextarea.lg textarea::placeholder {
|
90
|
-
font-weight: 400;
|
91
|
-
font-size: 16px;
|
92
|
-
line-height: 16px;
|
93
|
-
}
|
@@ -1,172 +0,0 @@
|
|
1
|
-
import {
|
2
|
-
HTMLAttributes,
|
3
|
-
ReactNode,
|
4
|
-
useEffect,
|
5
|
-
useId,
|
6
|
-
useRef,
|
7
|
-
useState,
|
8
|
-
} from "react";
|
9
|
-
import "./styles.css";
|
10
|
-
|
11
|
-
type TooltipProps = Omit<HTMLAttributes<HTMLDivElement>, "children"> & {
|
12
|
-
text: string;
|
13
|
-
children: ReactNode;
|
14
|
-
orientation?: "top" | "right" | "bottom" | "left";
|
15
|
-
size?: "md" | "lg";
|
16
|
-
};
|
17
|
-
|
18
|
-
/**
|
19
|
-
* Tooltip component - displays contextual information on hover with smart positioning
|
20
|
-
*
|
21
|
-
* @param props - Tooltip component properties
|
22
|
-
* @param props.text - Text content to display in the tooltip
|
23
|
-
* @param props.children - Element that triggers the tooltip on hover
|
24
|
-
* @param props.orientation - Preferred tooltip position relative to trigger element. Default: "top"
|
25
|
-
* @param props.size - Tooltip size variant. Default: "lg"
|
26
|
-
*
|
27
|
-
* **...Other valid HTML properties for div element**
|
28
|
-
*
|
29
|
-
* @returns Tooltip JSX element
|
30
|
-
*
|
31
|
-
* @example
|
32
|
-
* ```tsx
|
33
|
-
* // Basic tooltip
|
34
|
-
* <Tooltip text="This is a helpful tip">
|
35
|
-
* <button>Hover me</button>
|
36
|
-
* </Tooltip>
|
37
|
-
*
|
38
|
-
* // Tooltip with different orientations
|
39
|
-
* <Tooltip text="Left tooltip" orientation="left">
|
40
|
-
* <span>Hover for left tooltip</span>
|
41
|
-
* </Tooltip>
|
42
|
-
*
|
43
|
-
* <Tooltip text="Right tooltip" orientation="right">
|
44
|
-
* <span>Hover for right tooltip</span>
|
45
|
-
* </Tooltip>
|
46
|
-
*
|
47
|
-
* // Different sizes
|
48
|
-
* <Tooltip text="Small tooltip" size="md">
|
49
|
-
* <button>Small tooltip</button>
|
50
|
-
* </Tooltip>
|
51
|
-
*
|
52
|
-
* <Tooltip text="Large tooltip" size="lg">
|
53
|
-
* <button>Large tooltip</button>
|
54
|
-
* </Tooltip>
|
55
|
-
*
|
56
|
-
* // Smart positioning - automatically adjusts if doesn't fit
|
57
|
-
* <Tooltip text="This tooltip will auto-adjust position" orientation="left">
|
58
|
-
* <button className="near-edge">Smart positioning</button>
|
59
|
-
* </Tooltip>
|
60
|
-
*
|
61
|
-
* // Complete example with custom styling
|
62
|
-
* <Tooltip
|
63
|
-
* text="Save your changes before proceeding"
|
64
|
-
* orientation="bottom"
|
65
|
-
* size="lg"
|
66
|
-
* className="custom-tooltip"
|
67
|
-
* >
|
68
|
-
* <IconButton icon={SaveIcon} />
|
69
|
-
* </Tooltip>
|
70
|
-
*
|
71
|
-
* // Multiple tooltips on same page
|
72
|
-
* <div className="toolbar">
|
73
|
-
* <Tooltip text="Create new file" orientation="bottom">
|
74
|
-
* <IconButton icon={PlusIcon} />
|
75
|
-
* </Tooltip>
|
76
|
-
*
|
77
|
-
* <Tooltip text="Open existing file" orientation="bottom">
|
78
|
-
* <IconButton icon={FolderIcon} />
|
79
|
-
* </Tooltip>
|
80
|
-
*
|
81
|
-
* <Tooltip text="Delete selected file" orientation="bottom">
|
82
|
-
* <IconButton icon={TrashIcon} />
|
83
|
-
* </Tooltip>
|
84
|
-
* </div>
|
85
|
-
* ```
|
86
|
-
*/
|
87
|
-
|
88
|
-
function Tooltip(props: TooltipProps) {
|
89
|
-
const {
|
90
|
-
text,
|
91
|
-
size = "lg",
|
92
|
-
children,
|
93
|
-
orientation = "top",
|
94
|
-
className: baseClassName = "",
|
95
|
-
...rest
|
96
|
-
} = props;
|
97
|
-
|
98
|
-
const tooltipId = useId();
|
99
|
-
const tooltipRef = useRef<HTMLDivElement>(null);
|
100
|
-
const [adjustedOrientation, setAdjustedOrientation] = useState(orientation);
|
101
|
-
|
102
|
-
useEffect(() => {
|
103
|
-
const checkTooltipPosition = () => {
|
104
|
-
if (!tooltipRef.current) return;
|
105
|
-
const tooltipText = document.getElementById(tooltipId) as HTMLElement;
|
106
|
-
if (!tooltipText) return;
|
107
|
-
|
108
|
-
setAdjustedOrientation(orientation);
|
109
|
-
|
110
|
-
requestAnimationFrame(() => {
|
111
|
-
const rect = tooltipText.getBoundingClientRect();
|
112
|
-
const viewportWidth = window.innerWidth;
|
113
|
-
const viewportHeight = window.innerHeight;
|
114
|
-
|
115
|
-
let newOrientation = orientation;
|
116
|
-
|
117
|
-
if (orientation === "left" && rect.left < 0) {
|
118
|
-
newOrientation = "right";
|
119
|
-
} else if (orientation === "right" && rect.right > viewportWidth) {
|
120
|
-
newOrientation = "left";
|
121
|
-
} else if (orientation === "top" && rect.top < 0) {
|
122
|
-
newOrientation = "bottom";
|
123
|
-
} else if (orientation === "bottom" && rect.bottom > viewportHeight) {
|
124
|
-
newOrientation = "top";
|
125
|
-
}
|
126
|
-
|
127
|
-
if (newOrientation === "right" && rect.right > viewportWidth) {
|
128
|
-
newOrientation = "left";
|
129
|
-
} else if (newOrientation === "left" && rect.left < 0) {
|
130
|
-
newOrientation = "right";
|
131
|
-
} else if (
|
132
|
-
newOrientation === "bottom" &&
|
133
|
-
rect.bottom > viewportHeight
|
134
|
-
) {
|
135
|
-
newOrientation = "top";
|
136
|
-
} else if (newOrientation === "top" && rect.top < 0) {
|
137
|
-
newOrientation = "bottom";
|
138
|
-
}
|
139
|
-
|
140
|
-
setAdjustedOrientation(newOrientation);
|
141
|
-
});
|
142
|
-
};
|
143
|
-
|
144
|
-
const tooltip = tooltipRef.current;
|
145
|
-
if (!tooltip) return;
|
146
|
-
|
147
|
-
const handleMouseEnter = () => {
|
148
|
-
setTimeout(checkTooltipPosition, 1);
|
149
|
-
};
|
150
|
-
|
151
|
-
tooltip.addEventListener("mouseenter", handleMouseEnter);
|
152
|
-
window.addEventListener("resize", checkTooltipPosition);
|
153
|
-
|
154
|
-
return () => {
|
155
|
-
tooltip.removeEventListener("mouseenter", handleMouseEnter);
|
156
|
-
window.removeEventListener("resize", checkTooltipPosition);
|
157
|
-
};
|
158
|
-
}, [orientation, tooltipId]);
|
159
|
-
|
160
|
-
const className = `arkynTooltip ${size} ${adjustedOrientation} ${baseClassName}`;
|
161
|
-
|
162
|
-
return (
|
163
|
-
<div className={className.trim()} {...rest} ref={tooltipRef}>
|
164
|
-
{children}
|
165
|
-
<div className="arkynTooltipText" id={tooltipId}>
|
166
|
-
{text}
|
167
|
-
</div>
|
168
|
-
</div>
|
169
|
-
);
|
170
|
-
}
|
171
|
-
|
172
|
-
export { Tooltip };
|