@getmicdrop/svelte-components 1.0.1 → 1.0.3
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/components/Alert/Alert.spec.d.ts +2 -0
- package/dist/components/Alert/Alert.spec.d.ts.map +1 -0
- package/dist/components/Alert/Alert.spec.js +170 -0
- package/dist/components/Alert/Alert.svelte +54 -0
- package/dist/components/Alert/Alert.svelte.d.ts +40 -0
- package/dist/components/Alert/Alert.svelte.d.ts.map +1 -0
- package/dist/components/Alert/AlertAudit.stories.svelte +241 -0
- package/dist/components/Alert/AlertAudit.stories.svelte.d.ts +31 -0
- package/dist/components/Alert/AlertAudit.stories.svelte.d.ts.map +1 -0
- package/dist/components/Badges/Badge.spec.d.ts +2 -0
- package/dist/components/Badges/Badge.spec.d.ts.map +1 -0
- package/dist/components/Badges/Badge.spec.js +103 -0
- package/dist/components/Badges/Badge.stories.svelte +87 -0
- package/dist/components/Badges/Badge.stories.svelte.d.ts +47 -0
- package/dist/components/Badges/Badge.stories.svelte.d.ts.map +1 -0
- package/dist/components/Badges/Badge.svelte +182 -0
- package/dist/components/Badges/Badge.svelte.d.ts +38 -0
- package/dist/components/Badges/Badge.svelte.d.ts.map +1 -0
- package/dist/components/Badges/BadgeAudit.stories.svelte +238 -0
- package/dist/components/Badges/BadgeAudit.stories.svelte.d.ts +31 -0
- package/dist/components/Badges/BadgeAudit.stories.svelte.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.spec.d.ts +2 -0
- package/dist/components/BottomSheet/BottomSheet.spec.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.spec.js +127 -0
- package/dist/components/BottomSheet/BottomSheet.stories.svelte +91 -0
- package/dist/components/BottomSheet/BottomSheet.stories.svelte.d.ts +45 -0
- package/dist/components/BottomSheet/BottomSheet.stories.svelte.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.svelte +171 -0
- package/dist/components/BottomSheet/BottomSheet.svelte.d.ts +40 -0
- package/dist/components/BottomSheet/BottomSheet.svelte.d.ts.map +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.spec.d.ts +2 -0
- package/dist/components/Breadcrumb/Breadcrumb.spec.d.ts.map +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.spec.js +120 -0
- package/dist/components/Breadcrumb/Breadcrumb.stories.svelte +24 -0
- package/dist/components/Breadcrumb/Breadcrumb.stories.svelte.d.ts +36 -0
- package/dist/components/Breadcrumb/Breadcrumb.stories.svelte.d.ts.map +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.svelte +50 -0
- package/dist/components/Breadcrumb/Breadcrumb.svelte.d.ts +30 -0
- package/dist/components/Breadcrumb/Breadcrumb.svelte.d.ts.map +1 -0
- package/dist/components/Button/Button.spec.d.ts +2 -0
- package/dist/components/Button/Button.spec.d.ts.map +1 -0
- package/dist/components/Button/Button.spec.js +211 -0
- package/dist/components/Button/Button.stories.svelte +111 -0
- package/dist/components/Button/Button.stories.svelte.d.ts +59 -0
- package/dist/components/Button/Button.stories.svelte.d.ts.map +1 -0
- package/dist/components/Button/Button.svelte +642 -0
- package/dist/components/Button/Button.svelte.d.ts +68 -0
- package/dist/components/Button/Button.svelte.d.ts.map +1 -0
- package/dist/components/Button/ButtonAudit.stories.svelte +333 -0
- package/dist/components/Button/ButtonAudit.stories.svelte.d.ts +33 -0
- package/dist/components/Button/ButtonAudit.stories.svelte.d.ts.map +1 -0
- package/dist/components/Button/ButtonSaveDemo.spec.d.ts +2 -0
- package/dist/components/Button/ButtonSaveDemo.spec.d.ts.map +1 -0
- package/dist/components/Button/ButtonSaveDemo.spec.js +48 -0
- package/dist/components/Button/ButtonSaveDemo.svelte +24 -0
- package/dist/components/Button/ButtonSaveDemo.svelte.d.ts +26 -0
- package/dist/components/Button/ButtonSaveDemo.svelte.d.ts.map +1 -0
- package/dist/components/Calendar/Calendar.spec.d.ts +2 -0
- package/dist/components/Calendar/Calendar.spec.d.ts.map +1 -0
- package/dist/components/Calendar/Calendar.spec.js +131 -0
- package/dist/components/Calendar/Calendar.svelte +1115 -0
- package/dist/components/Calendar/Calendar.svelte.d.ts +52 -0
- package/dist/components/Calendar/Calendar.svelte.d.ts.map +1 -0
- package/dist/components/Calendar/QuarterView.spec.d.ts +2 -0
- package/dist/components/Calendar/QuarterView.spec.d.ts.map +1 -0
- package/dist/components/Calendar/QuarterView.spec.js +394 -0
- package/dist/components/Calendar/QuarterView.stories.svelte +134 -0
- package/dist/components/Calendar/QuarterView.stories.svelte.d.ts +40 -0
- package/dist/components/Calendar/QuarterView.stories.svelte.d.ts.map +1 -0
- package/dist/components/Calendar/QuarterView.svelte +736 -0
- package/dist/components/Calendar/QuarterView.svelte.d.ts +30 -0
- package/dist/components/Calendar/QuarterView.svelte.d.ts.map +1 -0
- package/dist/components/Card.spec.d.ts +2 -0
- package/dist/components/Card.spec.d.ts.map +1 -0
- package/dist/components/Card.spec.js +47 -0
- package/dist/components/Card.stories.svelte +26 -0
- package/dist/components/Card.stories.svelte.d.ts +36 -0
- package/dist/components/Card.stories.svelte.d.ts.map +1 -0
- package/dist/components/Card.svelte +9 -0
- package/dist/components/Card.svelte.d.ts +30 -0
- package/dist/components/Card.svelte.d.ts.map +1 -0
- package/dist/components/CardAudit.stories.svelte +175 -0
- package/dist/components/CardAudit.stories.svelte.d.ts +31 -0
- package/dist/components/CardAudit.stories.svelte.d.ts.map +1 -0
- package/dist/components/CropImage/CropImage.spec.d.ts +2 -0
- package/dist/components/CropImage/CropImage.spec.d.ts.map +1 -0
- package/dist/components/CropImage/CropImage.spec.js +216 -0
- package/dist/components/CropImage/CropImage.stories.svelte +133 -0
- package/dist/components/CropImage/CropImage.stories.svelte.d.ts +40 -0
- package/dist/components/CropImage/CropImage.stories.svelte.d.ts.map +1 -0
- package/dist/components/CropImage/CropImage.svelte +311 -0
- package/dist/components/CropImage/CropImage.svelte.d.ts +34 -0
- package/dist/components/CropImage/CropImage.svelte.d.ts.map +1 -0
- package/dist/components/DarkModeToggle.spec.d.ts +2 -0
- package/dist/components/DarkModeToggle.spec.d.ts.map +1 -0
- package/dist/components/DarkModeToggle.spec.js +357 -0
- package/dist/components/DarkModeToggle.stories.svelte +55 -0
- package/dist/components/DarkModeToggle.stories.svelte.d.ts +32 -0
- package/dist/components/DarkModeToggle.stories.svelte.d.ts.map +1 -0
- package/dist/components/DarkModeToggle.svelte +245 -0
- package/dist/components/DarkModeToggle.svelte.d.ts +26 -0
- package/dist/components/DarkModeToggle.svelte.d.ts.map +1 -0
- package/dist/components/ErrorDisplay.spec.d.ts +2 -0
- package/dist/components/ErrorDisplay.spec.d.ts.map +1 -0
- package/dist/components/ErrorDisplay.spec.js +69 -0
- package/dist/components/ErrorDisplay.stories.svelte +115 -0
- package/dist/components/ErrorDisplay.stories.svelte.d.ts +62 -0
- package/dist/components/ErrorDisplay.stories.svelte.d.ts.map +1 -0
- package/dist/components/ErrorDisplay.svelte +58 -0
- package/dist/components/ErrorDisplay.svelte.d.ts +36 -0
- package/dist/components/ErrorDisplay.svelte.d.ts.map +1 -0
- package/dist/components/FormActions.spec.d.ts +2 -0
- package/dist/components/FormActions.spec.d.ts.map +1 -0
- package/dist/components/FormActions.spec.js +88 -0
- package/dist/components/FormActions.stories.svelte +98 -0
- package/dist/components/FormActions.stories.svelte.d.ts +57 -0
- package/dist/components/FormActions.stories.svelte.d.ts.map +1 -0
- package/dist/components/FormActions.svelte +67 -0
- package/dist/components/FormActions.svelte.d.ts +48 -0
- package/dist/components/FormActions.svelte.d.ts.map +1 -0
- package/dist/components/FormValidationSummary.spec.d.ts +2 -0
- package/dist/components/FormValidationSummary.spec.d.ts.map +1 -0
- package/dist/components/FormValidationSummary.spec.js +203 -0
- package/dist/components/FormValidationSummary.stories.svelte +95 -0
- package/dist/components/FormValidationSummary.stories.svelte.d.ts +32 -0
- package/dist/components/FormValidationSummary.stories.svelte.d.ts.map +1 -0
- package/dist/components/FormValidationSummary.svelte +83 -0
- package/dist/components/FormValidationSummary.svelte.d.ts +32 -0
- package/dist/components/FormValidationSummary.svelte.d.ts.map +1 -0
- package/dist/components/Icons/ArrowLeft.svelte +21 -0
- package/dist/components/Icons/ArrowLeft.svelte.d.ts +28 -0
- package/dist/components/Icons/ArrowLeft.svelte.d.ts.map +1 -0
- package/dist/components/Icons/ArrowRight.svelte +21 -0
- package/dist/components/Icons/ArrowRight.svelte.d.ts +28 -0
- package/dist/components/Icons/ArrowRight.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Availability.svelte +28 -0
- package/dist/components/Icons/Availability.svelte.d.ts +28 -0
- package/dist/components/Icons/Availability.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Back.svelte +28 -0
- package/dist/components/Icons/Back.svelte.d.ts +28 -0
- package/dist/components/Icons/Back.svelte.d.ts.map +1 -0
- package/dist/components/Icons/CheckCircle.svelte +20 -0
- package/dist/components/Icons/CheckCircle.svelte.d.ts +28 -0
- package/dist/components/Icons/CheckCircle.svelte.d.ts.map +1 -0
- package/dist/components/Icons/CheckCircleOutline.svelte +28 -0
- package/dist/components/Icons/CheckCircleOutline.svelte.d.ts +28 -0
- package/dist/components/Icons/CheckCircleOutline.svelte.d.ts.map +1 -0
- package/dist/components/Icons/ChevronLeft.svelte +18 -0
- package/dist/components/Icons/ChevronLeft.svelte.d.ts +28 -0
- package/dist/components/Icons/ChevronLeft.svelte.d.ts.map +1 -0
- package/dist/components/Icons/ChevronRight.svelte +18 -0
- package/dist/components/Icons/ChevronRight.svelte.d.ts +28 -0
- package/dist/components/Icons/ChevronRight.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Copy.svelte +28 -0
- package/dist/components/Icons/Copy.svelte.d.ts +28 -0
- package/dist/components/Icons/Copy.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Cross.svelte +18 -0
- package/dist/components/Icons/Cross.svelte.d.ts +28 -0
- package/dist/components/Icons/Cross.svelte.d.ts.map +1 -0
- package/dist/components/Icons/DownArrow.svelte +21 -0
- package/dist/components/Icons/DownArrow.svelte.d.ts +28 -0
- package/dist/components/Icons/DownArrow.svelte.d.ts.map +1 -0
- package/dist/components/Icons/ErrorCircle.svelte +20 -0
- package/dist/components/Icons/ErrorCircle.svelte.d.ts +28 -0
- package/dist/components/Icons/ErrorCircle.svelte.d.ts.map +1 -0
- package/dist/components/Icons/FacebookIcon.svelte +14 -0
- package/dist/components/Icons/FacebookIcon.svelte.d.ts +28 -0
- package/dist/components/Icons/FacebookIcon.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Home.svelte +29 -0
- package/dist/components/Icons/Home.svelte.d.ts +28 -0
- package/dist/components/Icons/Home.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Icon.spec.d.ts +2 -0
- package/dist/components/Icons/Icon.spec.d.ts.map +1 -0
- package/dist/components/Icons/Icon.spec.js +175 -0
- package/dist/components/Icons/Icon.stories.svelte +101 -0
- package/dist/components/Icons/Icon.stories.svelte.d.ts +44 -0
- package/dist/components/Icons/Icon.stories.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Icon.svelte +66 -0
- package/dist/components/Icons/Icon.svelte.d.ts +30 -0
- package/dist/components/Icons/Icon.svelte.d.ts.map +1 -0
- package/dist/components/Icons/IconGallery.stories.svelte +233 -0
- package/dist/components/Icons/IconGallery.stories.svelte.d.ts +30 -0
- package/dist/components/Icons/IconGallery.stories.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Info.svelte +20 -0
- package/dist/components/Icons/Info.svelte.d.ts +28 -0
- package/dist/components/Icons/Info.svelte.d.ts.map +1 -0
- package/dist/components/Icons/InstagramIcon.svelte +20 -0
- package/dist/components/Icons/InstagramIcon.svelte.d.ts +28 -0
- package/dist/components/Icons/InstagramIcon.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Message.svelte +28 -0
- package/dist/components/Icons/Message.svelte.d.ts +28 -0
- package/dist/components/Icons/Message.svelte.d.ts.map +1 -0
- package/dist/components/Icons/MoonIcon.svelte +17 -0
- package/dist/components/Icons/MoonIcon.svelte.d.ts +28 -0
- package/dist/components/Icons/MoonIcon.svelte.d.ts.map +1 -0
- package/dist/components/Icons/More.svelte +35 -0
- package/dist/components/Icons/More.svelte.d.ts +28 -0
- package/dist/components/Icons/More.svelte.d.ts.map +1 -0
- package/dist/components/Icons/MoreHori.spec.d.ts +2 -0
- package/dist/components/Icons/MoreHori.spec.d.ts.map +1 -0
- package/dist/components/Icons/MoreHori.spec.js +67 -0
- package/dist/components/Icons/MoreHori.svelte +35 -0
- package/dist/components/Icons/MoreHori.svelte.d.ts +28 -0
- package/dist/components/Icons/MoreHori.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Notification.svelte +28 -0
- package/dist/components/Icons/Notification.svelte.d.ts +28 -0
- package/dist/components/Icons/Notification.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Payment.svelte +28 -0
- package/dist/components/Icons/Payment.svelte.d.ts +28 -0
- package/dist/components/Icons/Payment.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Profile.svelte +35 -0
- package/dist/components/Icons/Profile.svelte.d.ts +28 -0
- package/dist/components/Icons/Profile.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Reload.svelte +42 -0
- package/dist/components/Icons/Reload.svelte.d.ts +28 -0
- package/dist/components/Icons/Reload.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Shows.svelte +35 -0
- package/dist/components/Icons/Shows.svelte.d.ts +28 -0
- package/dist/components/Icons/Shows.svelte.d.ts.map +1 -0
- package/dist/components/Icons/Signout.svelte +35 -0
- package/dist/components/Icons/Signout.svelte.d.ts +28 -0
- package/dist/components/Icons/Signout.svelte.d.ts.map +1 -0
- package/dist/components/Icons/SunIcon.svelte +20 -0
- package/dist/components/Icons/SunIcon.svelte.d.ts +28 -0
- package/dist/components/Icons/SunIcon.svelte.d.ts.map +1 -0
- package/dist/components/Icons/TiktokIcon.svelte +14 -0
- package/dist/components/Icons/TiktokIcon.svelte.d.ts +28 -0
- package/dist/components/Icons/TiktokIcon.svelte.d.ts.map +1 -0
- package/dist/components/Icons/TwitterIcon.svelte +14 -0
- package/dist/components/Icons/TwitterIcon.svelte.d.ts +28 -0
- package/dist/components/Icons/TwitterIcon.svelte.d.ts.map +1 -0
- package/dist/components/Icons/WarningIcon.spec.d.ts +2 -0
- package/dist/components/Icons/WarningIcon.spec.d.ts.map +1 -0
- package/dist/components/Icons/WarningIcon.spec.js +30 -0
- package/dist/components/Icons/WarningIcon.svelte +24 -0
- package/dist/components/Icons/WarningIcon.svelte.d.ts +26 -0
- package/dist/components/Icons/WarningIcon.svelte.d.ts.map +1 -0
- package/dist/components/Input/Input.spec.d.ts +2 -0
- package/dist/components/Input/Input.spec.d.ts.map +1 -0
- package/dist/components/Input/Input.spec.js +573 -0
- package/dist/components/Input/Input.stories.svelte +140 -0
- package/dist/components/Input/Input.stories.svelte.d.ts +80 -0
- package/dist/components/Input/Input.stories.svelte.d.ts.map +1 -0
- package/dist/components/Input/Input.svelte +721 -0
- package/dist/components/Input/Input.svelte.d.ts +96 -0
- package/dist/components/Input/Input.svelte.d.ts.map +1 -0
- package/dist/components/Input/InputAudit.stories.svelte +483 -0
- package/dist/components/Input/InputAudit.stories.svelte.d.ts +31 -0
- package/dist/components/Input/InputAudit.stories.svelte.d.ts.map +1 -0
- package/dist/components/Input/MultiSelect.spec.d.ts +2 -0
- package/dist/components/Input/MultiSelect.spec.d.ts.map +1 -0
- package/dist/components/Input/MultiSelect.spec.js +257 -0
- package/dist/components/Input/MultiSelect.stories.svelte +138 -0
- package/dist/components/Input/MultiSelect.stories.svelte.d.ts +32 -0
- package/dist/components/Input/MultiSelect.stories.svelte.d.ts.map +1 -0
- package/dist/components/Input/MultiSelect.svelte +557 -0
- package/dist/components/Input/MultiSelect.svelte.d.ts +50 -0
- package/dist/components/Input/MultiSelect.svelte.d.ts.map +1 -0
- package/dist/components/Input/OTPInput.spec.d.ts +2 -0
- package/dist/components/Input/OTPInput.spec.d.ts.map +1 -0
- package/dist/components/Input/OTPInput.spec.js +238 -0
- package/dist/components/Input/OTPInput.stories.svelte +167 -0
- package/dist/components/Input/OTPInput.stories.svelte.d.ts +48 -0
- package/dist/components/Input/OTPInput.stories.svelte.d.ts.map +1 -0
- package/dist/components/Input/OTPInput.svelte +117 -0
- package/dist/components/Input/OTPInput.svelte.d.ts +42 -0
- package/dist/components/Input/OTPInput.svelte.d.ts.map +1 -0
- package/dist/components/Input/Select.spec.d.ts +2 -0
- package/dist/components/Input/Select.spec.d.ts.map +1 -0
- package/dist/components/Input/Select.spec.js +218 -0
- package/dist/components/Input/Select.svelte +385 -0
- package/dist/components/Input/Select.svelte.d.ts +48 -0
- package/dist/components/Input/Select.svelte.d.ts.map +1 -0
- package/dist/components/Input/SelectAudit.stories.svelte +364 -0
- package/dist/components/Input/SelectAudit.stories.svelte.d.ts +31 -0
- package/dist/components/Input/SelectAudit.stories.svelte.d.ts.map +1 -0
- package/dist/components/Layout/BottomNav.spec.d.ts +2 -0
- package/dist/components/Layout/BottomNav.spec.d.ts.map +1 -0
- package/dist/components/Layout/BottomNav.spec.js +130 -0
- package/dist/components/Layout/BottomNav.stories.svelte +115 -0
- package/dist/components/Layout/BottomNav.stories.svelte.d.ts +32 -0
- package/dist/components/Layout/BottomNav.stories.svelte.d.ts.map +1 -0
- package/dist/components/Layout/BottomNav.svelte +120 -0
- package/dist/components/Layout/BottomNav.svelte.d.ts +26 -0
- package/dist/components/Layout/BottomNav.svelte.d.ts.map +1 -0
- package/dist/components/Layout/Header.spec.d.ts +2 -0
- package/dist/components/Layout/Header.spec.d.ts.map +1 -0
- package/dist/components/Layout/Header.spec.js +203 -0
- package/dist/components/Layout/Header.stories.svelte +78 -0
- package/dist/components/Layout/Header.stories.svelte.d.ts +47 -0
- package/dist/components/Layout/Header.stories.svelte.d.ts.map +1 -0
- package/dist/components/Layout/Header.svelte +528 -0
- package/dist/components/Layout/Header.svelte.d.ts +42 -0
- package/dist/components/Layout/Header.svelte.d.ts.map +1 -0
- package/dist/components/Modal/ConfirmationModal.spec.d.ts +2 -0
- package/dist/components/Modal/ConfirmationModal.spec.d.ts.map +1 -0
- package/dist/components/Modal/ConfirmationModal.spec.js +191 -0
- package/dist/components/Modal/ConfirmationModal.stories.svelte +124 -0
- package/dist/components/Modal/ConfirmationModal.stories.svelte.d.ts +45 -0
- package/dist/components/Modal/ConfirmationModal.stories.svelte.d.ts.map +1 -0
- package/dist/components/Modal/ConfirmationModal.svelte +105 -0
- package/dist/components/Modal/ConfirmationModal.svelte.d.ts +38 -0
- package/dist/components/Modal/ConfirmationModal.svelte.d.ts.map +1 -0
- package/dist/components/Modal/Modal.spec.d.ts +2 -0
- package/dist/components/Modal/Modal.spec.d.ts.map +1 -0
- package/dist/components/Modal/Modal.spec.js +95 -0
- package/dist/components/Modal/Modal.stories.svelte +83 -0
- package/dist/components/Modal/Modal.stories.svelte.d.ts +31 -0
- package/dist/components/Modal/Modal.stories.svelte.d.ts.map +1 -0
- package/dist/components/Modal/Modal.svelte +234 -0
- package/dist/components/Modal/Modal.svelte.d.ts +46 -0
- package/dist/components/Modal/Modal.svelte.d.ts.map +1 -0
- package/dist/components/Modal/ModalAudit.stories.svelte +329 -0
- package/dist/components/Modal/ModalAudit.stories.svelte.d.ts +31 -0
- package/dist/components/Modal/ModalAudit.stories.svelte.d.ts.map +1 -0
- package/dist/components/Modal/ModalStateManager.spec.d.ts +2 -0
- package/dist/components/Modal/ModalStateManager.spec.d.ts.map +1 -0
- package/dist/components/Modal/ModalStateManager.spec.js +100 -0
- package/dist/components/Modal/ModalStateManager.svelte +67 -0
- package/dist/components/Modal/ModalStateManager.svelte.d.ts +48 -0
- package/dist/components/Modal/ModalStateManager.svelte.d.ts.map +1 -0
- package/dist/components/Modal/ModalTestWrapper.svelte +21 -0
- package/dist/components/Modal/ModalTestWrapper.svelte.d.ts +36 -0
- package/dist/components/Modal/ModalTestWrapper.svelte.d.ts.map +1 -0
- package/dist/components/PageLoader.spec.d.ts +2 -0
- package/dist/components/PageLoader.spec.d.ts.map +1 -0
- package/dist/components/PageLoader.spec.js +54 -0
- package/dist/components/PageLoader.stories.svelte +145 -0
- package/dist/components/PageLoader.stories.svelte.d.ts +53 -0
- package/dist/components/PageLoader.stories.svelte.d.ts.map +1 -0
- package/dist/components/PageLoader.svelte +52 -0
- package/dist/components/PageLoader.svelte.d.ts +42 -0
- package/dist/components/PageLoader.svelte.d.ts.map +1 -0
- package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.d.ts +2 -0
- package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.d.ts.map +1 -0
- package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.js +173 -0
- package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte +101 -0
- package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte.d.ts +36 -0
- package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte.d.ts.map +1 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.spec.d.ts +2 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.spec.d.ts.map +1 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.spec.js +300 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.stories.svelte +168 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.stories.svelte.d.ts +60 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.stories.svelte.d.ts.map +1 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.svelte +431 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts +29 -0
- package/dist/components/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts.map +1 -0
- package/dist/components/Spinner/Spinner.spec.d.ts +2 -0
- package/dist/components/Spinner/Spinner.spec.d.ts.map +1 -0
- package/dist/components/Spinner/Spinner.spec.js +75 -0
- package/dist/components/Spinner/Spinner.stories.svelte +30 -0
- package/dist/components/Spinner/Spinner.stories.svelte.d.ts +31 -0
- package/dist/components/Spinner/Spinner.stories.svelte.d.ts.map +1 -0
- package/dist/components/Spinner/Spinner.svelte +19 -0
- package/dist/components/Spinner/Spinner.svelte.d.ts +26 -0
- package/dist/components/Spinner/Spinner.svelte.d.ts.map +1 -0
- package/dist/components/StatusIndicator/StatusIndicator.spec.d.ts +2 -0
- package/dist/components/StatusIndicator/StatusIndicator.spec.d.ts.map +1 -0
- package/dist/components/StatusIndicator/StatusIndicator.spec.js +129 -0
- package/dist/components/StatusIndicator/StatusIndicator.svelte +206 -0
- package/dist/components/StatusIndicator/StatusIndicator.svelte.d.ts +28 -0
- package/dist/components/StatusIndicator/StatusIndicator.svelte.d.ts.map +1 -0
- package/dist/components/Toaster/Toaster.stories.svelte +61 -0
- package/dist/components/Toaster/Toaster.stories.svelte.d.ts +29 -0
- package/dist/components/Toaster/Toaster.stories.svelte.d.ts.map +1 -0
- package/dist/components/Toggle.spec.d.ts +2 -0
- package/dist/components/Toggle.spec.d.ts.map +1 -0
- package/dist/components/Toggle.spec.js +158 -0
- package/dist/components/Toggle.stories.svelte +93 -0
- package/dist/components/Toggle.stories.svelte.d.ts +41 -0
- package/dist/components/Toggle.stories.svelte.d.ts.map +1 -0
- package/dist/components/Toggle.svelte +79 -0
- package/dist/components/Toggle.svelte.d.ts +32 -0
- package/dist/components/Toggle.svelte.d.ts.map +1 -0
- package/dist/components/ValidationError.spec.d.ts +2 -0
- package/dist/components/ValidationError.spec.d.ts.map +1 -0
- package/dist/components/ValidationError.spec.js +79 -0
- package/dist/components/ValidationError.stories.svelte +88 -0
- package/dist/components/ValidationError.stories.svelte.d.ts +41 -0
- package/dist/components/ValidationError.stories.svelte.d.ts.map +1 -0
- package/dist/components/ValidationError.svelte +19 -0
- package/dist/components/ValidationError.svelte.d.ts +28 -0
- package/dist/components/ValidationError.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/AvailabilityCalendarModal.spec.d.ts +2 -0
- package/dist/components/pages/performers/AvailabilityCalendarModal.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/AvailabilityCalendarModal.spec.js +606 -0
- package/dist/components/pages/performers/AvailabilityCalendarModal.svelte +632 -0
- package/dist/components/pages/performers/AvailabilityCalendarModal.svelte.d.ts +36 -0
- package/dist/components/pages/performers/AvailabilityCalendarModal.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/ModalShowInfo.spec.d.ts +2 -0
- package/dist/components/pages/performers/ModalShowInfo.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/ModalShowInfo.spec.js +124 -0
- package/dist/components/pages/performers/ModalShowInfo.svelte +88 -0
- package/dist/components/pages/performers/ModalShowInfo.svelte.d.ts +34 -0
- package/dist/components/pages/performers/ModalShowInfo.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/PageBackButton.spec.d.ts +2 -0
- package/dist/components/pages/performers/PageBackButton.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/PageBackButton.spec.js +89 -0
- package/dist/components/pages/performers/PageBackButton.stories.svelte +72 -0
- package/dist/components/pages/performers/PageBackButton.stories.svelte.d.ts +36 -0
- package/dist/components/pages/performers/PageBackButton.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/PageBackButton.svelte +13 -0
- package/dist/components/pages/performers/PageBackButton.svelte.d.ts +26 -0
- package/dist/components/pages/performers/PageBackButton.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/SectionHeader.spec.d.ts +2 -0
- package/dist/components/pages/performers/SectionHeader.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/SectionHeader.spec.js +75 -0
- package/dist/components/pages/performers/SectionHeader.stories.svelte +100 -0
- package/dist/components/pages/performers/SectionHeader.stories.svelte.d.ts +41 -0
- package/dist/components/pages/performers/SectionHeader.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/SectionHeader.svelte +9 -0
- package/dist/components/pages/performers/SectionHeader.svelte.d.ts +28 -0
- package/dist/components/pages/performers/SectionHeader.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/ShowDetails.spec.d.ts +2 -0
- package/dist/components/pages/performers/ShowDetails.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/ShowDetails.spec.js +166 -0
- package/dist/components/pages/performers/ShowDetails.stories.svelte +140 -0
- package/dist/components/pages/performers/ShowDetails.stories.svelte.d.ts +37 -0
- package/dist/components/pages/performers/ShowDetails.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/ShowDetails.svelte +73 -0
- package/dist/components/pages/performers/ShowDetails.svelte.d.ts +44 -0
- package/dist/components/pages/performers/ShowDetails.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/ShowItemCard.spec.d.ts +2 -0
- package/dist/components/pages/performers/ShowItemCard.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/ShowItemCard.spec.js +793 -0
- package/dist/components/pages/performers/ShowItemCard.stories.svelte +250 -0
- package/dist/components/pages/performers/ShowItemCard.stories.svelte.d.ts +43 -0
- package/dist/components/pages/performers/ShowItemCard.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/ShowItemCard.svelte +886 -0
- package/dist/components/pages/performers/ShowItemCard.svelte.d.ts +54 -0
- package/dist/components/pages/performers/ShowItemCard.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/SwitchOption.spec.d.ts +2 -0
- package/dist/components/pages/performers/SwitchOption.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/SwitchOption.spec.js +127 -0
- package/dist/components/pages/performers/SwitchOption.stories.svelte +211 -0
- package/dist/components/pages/performers/SwitchOption.stories.svelte.d.ts +40 -0
- package/dist/components/pages/performers/SwitchOption.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/SwitchOption.svelte +24 -0
- package/dist/components/pages/performers/SwitchOption.svelte.d.ts +30 -0
- package/dist/components/pages/performers/SwitchOption.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/VenueInfo.spec.d.ts +2 -0
- package/dist/components/pages/performers/VenueInfo.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/VenueInfo.spec.js +167 -0
- package/dist/components/pages/performers/VenueInfo.svelte +90 -0
- package/dist/components/pages/performers/VenueInfo.svelte.d.ts +32 -0
- package/dist/components/pages/performers/VenueInfo.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/VenueItemCard.spec.d.ts +2 -0
- package/dist/components/pages/performers/VenueItemCard.spec.d.ts.map +1 -0
- package/dist/components/pages/performers/VenueItemCard.spec.js +763 -0
- package/dist/components/pages/performers/VenueItemCard.stories.svelte +301 -0
- package/dist/components/pages/performers/VenueItemCard.stories.svelte.d.ts +37 -0
- package/dist/components/pages/performers/VenueItemCard.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/performers/VenueItemCard.svelte +192 -0
- package/dist/components/pages/performers/VenueItemCard.svelte.d.ts +66 -0
- package/dist/components/pages/performers/VenueItemCard.svelte.d.ts.map +1 -0
- package/dist/components/pages/profile/profile-form.spec.d.ts +2 -0
- package/dist/components/pages/profile/profile-form.spec.d.ts.map +1 -0
- package/dist/components/pages/profile/profile-form.spec.js +9 -0
- package/dist/components/pages/profile/profile-form.stories.svelte +279 -0
- package/dist/components/pages/profile/profile-form.stories.svelte.d.ts +48 -0
- package/dist/components/pages/profile/profile-form.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/profile/profile-form.svelte +445 -0
- package/dist/components/pages/profile/profile-form.svelte.d.ts +36 -0
- package/dist/components/pages/profile/profile-form.svelte.d.ts.map +1 -0
- package/dist/components/pages/profile/profile-photos.stories.svelte +69 -0
- package/dist/components/pages/profile/profile-photos.stories.svelte.d.ts +31 -0
- package/dist/components/pages/profile/profile-photos.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/profile/profile-photos.svelte +26 -0
- package/dist/components/pages/profile/profile-photos.svelte.d.ts +26 -0
- package/dist/components/pages/profile/profile-photos.svelte.d.ts.map +1 -0
- package/dist/components/pages/settings/tabs/CustomImageDropzone.stories.svelte +166 -0
- package/dist/components/pages/settings/tabs/CustomImageDropzone.stories.svelte.d.ts +49 -0
- package/dist/components/pages/settings/tabs/CustomImageDropzone.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/settings/tabs/CustomImageDropzone.svelte +241 -0
- package/dist/components/pages/settings/tabs/CustomImageDropzone.svelte.d.ts +38 -0
- package/dist/components/pages/settings/tabs/CustomImageDropzone.svelte.d.ts.map +1 -0
- package/dist/components/pages/shows/ShowList.spec.d.ts +2 -0
- package/dist/components/pages/shows/ShowList.spec.d.ts.map +1 -0
- package/dist/components/pages/shows/ShowList.spec.js +33 -0
- package/dist/components/pages/shows/ShowList.stories.svelte +258 -0
- package/dist/components/pages/shows/ShowList.stories.svelte.d.ts +41 -0
- package/dist/components/pages/shows/ShowList.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/shows/ShowList.svelte +12 -0
- package/dist/components/pages/shows/ShowList.svelte.d.ts +28 -0
- package/dist/components/pages/shows/ShowList.svelte.d.ts.map +1 -0
- package/dist/components/pages/shows/TabContent.spec.d.ts +2 -0
- package/dist/components/pages/shows/TabContent.spec.d.ts.map +1 -0
- package/dist/components/pages/shows/TabContent.spec.js +90 -0
- package/dist/components/pages/shows/TabContent.stories.svelte +254 -0
- package/dist/components/pages/shows/TabContent.stories.svelte.d.ts +45 -0
- package/dist/components/pages/shows/TabContent.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/shows/TabContent.svelte +94 -0
- package/dist/components/pages/shows/TabContent.svelte.d.ts +32 -0
- package/dist/components/pages/shows/TabContent.svelte.d.ts.map +1 -0
- package/dist/components/pages/shows/TabNavigation.spec.d.ts +2 -0
- package/dist/components/pages/shows/TabNavigation.spec.d.ts.map +1 -0
- package/dist/components/pages/shows/TabNavigation.spec.js +143 -0
- package/dist/components/pages/shows/TabNavigation.stories.svelte +177 -0
- package/dist/components/pages/shows/TabNavigation.stories.svelte.d.ts +41 -0
- package/dist/components/pages/shows/TabNavigation.stories.svelte.d.ts.map +1 -0
- package/dist/components/pages/shows/TabNavigation.svelte +64 -0
- package/dist/components/pages/shows/TabNavigation.svelte.d.ts +32 -0
- package/dist/components/pages/shows/TabNavigation.svelte.d.ts.map +1 -0
- package/dist/index.d.ts +80 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +111 -0
- package/package.json +5 -2
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** @typedef {typeof __propDef.props} QuarterViewProps */
|
|
2
|
+
/** @typedef {typeof __propDef.events} QuarterViewEvents */
|
|
3
|
+
/** @typedef {typeof __propDef.slots} QuarterViewSlots */
|
|
4
|
+
export default class QuarterView extends SvelteComponent<{
|
|
5
|
+
selectedDates: any;
|
|
6
|
+
saveStatus?: string | undefined;
|
|
7
|
+
currentevents?: any[] | undefined;
|
|
8
|
+
}, {
|
|
9
|
+
[evt: string]: CustomEvent<any>;
|
|
10
|
+
}, {}> {
|
|
11
|
+
}
|
|
12
|
+
export type QuarterViewProps = typeof __propDef.props;
|
|
13
|
+
export type QuarterViewEvents = typeof __propDef.events;
|
|
14
|
+
export type QuarterViewSlots = typeof __propDef.slots;
|
|
15
|
+
import { SvelteComponent } from "svelte";
|
|
16
|
+
declare const __propDef: {
|
|
17
|
+
props: {
|
|
18
|
+
selectedDates: any;
|
|
19
|
+
saveStatus?: string | undefined;
|
|
20
|
+
currentevents?: any[] | undefined;
|
|
21
|
+
};
|
|
22
|
+
events: {
|
|
23
|
+
[evt: string]: CustomEvent<any>;
|
|
24
|
+
};
|
|
25
|
+
slots: {};
|
|
26
|
+
exports?: undefined;
|
|
27
|
+
bindings?: undefined;
|
|
28
|
+
};
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=QuarterView.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuarterView.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/Calendar/QuarterView.svelte.js"],"names":[],"mappings":"AA8XA,0DAA0D;AAC1D,4DAA4D;AAC5D,0DAA0D;AAE1D;;;;;;;CACC;+BALa,OAAO,SAAS,CAAC,KAAK;gCACtB,OAAO,SAAS,CAAC,MAAM;+BACvB,OAAO,SAAS,CAAC,KAAK;gCAhYJ,QAAQ;AA6XxC;;;;;;;;;;;;EAAgH"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.spec.d.ts","sourceRoot":"","sources":["../../src/lib/components/Card.spec.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { render, screen } from "@testing-library/svelte";
|
|
2
|
+
import { expect, describe, test } from "vitest";
|
|
3
|
+
import Card from "./Card.svelte";
|
|
4
|
+
|
|
5
|
+
describe("Card Component Tests", () => {
|
|
6
|
+
test("Renders card section element", () => {
|
|
7
|
+
render(Card, { props: {} });
|
|
8
|
+
const section = document.querySelector("section");
|
|
9
|
+
expect(section).toBeInTheDocument();
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
test("Applies base classes", () => {
|
|
13
|
+
render(Card, { props: {} });
|
|
14
|
+
const section = document.querySelector("section");
|
|
15
|
+
expect(section).toHaveClass("w-full");
|
|
16
|
+
expect(section).toHaveClass("bg-bg-primary");
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
test("Applies custom className", () => {
|
|
20
|
+
render(Card, { props: { className: "custom-class mt-4" } });
|
|
21
|
+
const section = document.querySelector("section");
|
|
22
|
+
expect(section).toHaveClass("custom-class");
|
|
23
|
+
expect(section).toHaveClass("mt-4");
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
test("Has responsive padding classes", () => {
|
|
27
|
+
render(Card, { props: {} });
|
|
28
|
+
const section = document.querySelector("section");
|
|
29
|
+
// Check for responsive padding classes
|
|
30
|
+
expect(section.className).toMatch(/p-3\.5/);
|
|
31
|
+
expect(section.className).toMatch(/sm:p-4/);
|
|
32
|
+
expect(section.className).toMatch(/md:p-5/);
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
test("Has shadow and rounded on medium screens", () => {
|
|
36
|
+
render(Card, { props: {} });
|
|
37
|
+
const section = document.querySelector("section");
|
|
38
|
+
expect(section.className).toMatch(/md:shadow/);
|
|
39
|
+
expect(section.className).toMatch(/md:rounded-lg/);
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
test("Renders slot content", () => {
|
|
43
|
+
// Use a custom component with slot content
|
|
44
|
+
const { container } = render(Card, { props: {} });
|
|
45
|
+
expect(container.querySelector("section")).toBeInTheDocument();
|
|
46
|
+
});
|
|
47
|
+
});
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<script context="module">
|
|
2
|
+
import { Story, Template } from "@storybook/addon-svelte-csf";
|
|
3
|
+
import Card from "./Card.svelte";
|
|
4
|
+
|
|
5
|
+
export const meta = {
|
|
6
|
+
title: "Components/Card",
|
|
7
|
+
component: Card,
|
|
8
|
+
argTypes: {
|
|
9
|
+
className: { control: "text" },
|
|
10
|
+
},
|
|
11
|
+
};
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<Template let:args>
|
|
15
|
+
<Card {...args}>
|
|
16
|
+
<h3 class="text-lg font-semibold mb-2">Card Title</h3>
|
|
17
|
+
<p class="text-gray-600">This is the card content. Cards are used to group related information together.</p>
|
|
18
|
+
</Card>
|
|
19
|
+
</Template>
|
|
20
|
+
|
|
21
|
+
<Story name="Default Card">
|
|
22
|
+
<Card>
|
|
23
|
+
<h3 class="text-lg font-semibold mb-2">Default Card</h3>
|
|
24
|
+
<p class="text-gray-600">A default card with standard styling. Use className prop to customize.</p>
|
|
25
|
+
</Card>
|
|
26
|
+
</Story>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export namespace meta {
|
|
2
|
+
export let title: string;
|
|
3
|
+
export { Card as component };
|
|
4
|
+
export namespace argTypes {
|
|
5
|
+
namespace className {
|
|
6
|
+
let control: string;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
/** @typedef {typeof __propDef.props} CardProps */
|
|
11
|
+
/** @typedef {typeof __propDef.events} CardEvents */
|
|
12
|
+
/** @typedef {typeof __propDef.slots} CardSlots */
|
|
13
|
+
export default class Card extends SvelteComponent<{
|
|
14
|
+
[x: string]: never;
|
|
15
|
+
}, {
|
|
16
|
+
[evt: string]: CustomEvent<any>;
|
|
17
|
+
}, {}> {
|
|
18
|
+
}
|
|
19
|
+
export type CardProps = typeof __propDef.props;
|
|
20
|
+
export type CardEvents = typeof __propDef.events;
|
|
21
|
+
export type CardSlots = typeof __propDef.slots;
|
|
22
|
+
import Card from "./Card.svelte";
|
|
23
|
+
import { SvelteComponent } from "svelte";
|
|
24
|
+
declare const __propDef: {
|
|
25
|
+
props: {
|
|
26
|
+
[x: string]: never;
|
|
27
|
+
};
|
|
28
|
+
events: {
|
|
29
|
+
[evt: string]: CustomEvent<any>;
|
|
30
|
+
};
|
|
31
|
+
slots: {};
|
|
32
|
+
exports?: undefined;
|
|
33
|
+
bindings?: undefined;
|
|
34
|
+
};
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=Card.stories.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.stories.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/components/Card.stories.svelte.js"],"names":[],"mappings":";;;;;;;;;AAgCA,mDAAmD;AACnD,qDAAqD;AACrD,mDAAmD;AAEnD;;;;;CACC;wBALa,OAAO,SAAS,CAAC,KAAK;yBACtB,OAAO,SAAS,CAAC,MAAM;wBACvB,OAAO,SAAS,CAAC,KAAK;iBA9BjB,eAAe;gCAJF,QAAQ;AA+BxC;;;;;;;;;;EAAgF"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** @typedef {typeof __propDef.props} CardProps */
|
|
2
|
+
/** @typedef {typeof __propDef.events} CardEvents */
|
|
3
|
+
/** @typedef {typeof __propDef.slots} CardSlots */
|
|
4
|
+
export default class Card extends SvelteComponent<{
|
|
5
|
+
className: any;
|
|
6
|
+
}, {
|
|
7
|
+
[evt: string]: CustomEvent<any>;
|
|
8
|
+
}, {
|
|
9
|
+
default: {};
|
|
10
|
+
}> {
|
|
11
|
+
}
|
|
12
|
+
export type CardProps = typeof __propDef.props;
|
|
13
|
+
export type CardEvents = typeof __propDef.events;
|
|
14
|
+
export type CardSlots = typeof __propDef.slots;
|
|
15
|
+
import { SvelteComponent } from "svelte";
|
|
16
|
+
declare const __propDef: {
|
|
17
|
+
props: {
|
|
18
|
+
className: any;
|
|
19
|
+
};
|
|
20
|
+
events: {
|
|
21
|
+
[evt: string]: CustomEvent<any>;
|
|
22
|
+
};
|
|
23
|
+
slots: {
|
|
24
|
+
default: {};
|
|
25
|
+
};
|
|
26
|
+
exports?: undefined;
|
|
27
|
+
bindings?: undefined;
|
|
28
|
+
};
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=Card.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/components/Card.svelte.js"],"names":[],"mappings":"AAcA,mDAAmD;AACnD,qDAAqD;AACrD,mDAAmD;AAEnD;;;;;;;CACC;wBALa,OAAO,SAAS,CAAC,KAAK;yBACtB,OAAO,SAAS,CAAC,MAAM;wBACvB,OAAO,SAAS,CAAC,KAAK;gCAhBJ,QAAQ;AAaxC;;;;;;;;;;;;EAAgF"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
<script context="module">
|
|
2
|
+
import Card from "./Card.svelte";
|
|
3
|
+
|
|
4
|
+
export const meta = {
|
|
5
|
+
title: "Audit/Card Variants",
|
|
6
|
+
component: Card,
|
|
7
|
+
};
|
|
8
|
+
</script>
|
|
9
|
+
|
|
10
|
+
<script>
|
|
11
|
+
import { Story } from '@storybook/addon-svelte-csf';
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<Story name="All Card Variants">
|
|
15
|
+
<div class="performer-portal p-6 space-y-8 bg-BG-Primary min-h-screen">
|
|
16
|
+
<div class="max-w-2xl mx-auto">
|
|
17
|
+
<h1 class="text-2xl font-bold text-Text-Primary mb-2">Card Component Audit</h1>
|
|
18
|
+
<p class="text-Text-Tartiary mb-8">Card component usage across the performers portal</p>
|
|
19
|
+
|
|
20
|
+
<!-- SECTION: Base Card -->
|
|
21
|
+
<section class="mb-10">
|
|
22
|
+
<h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
|
|
23
|
+
Base Card Component
|
|
24
|
+
</h2>
|
|
25
|
+
<p class="text-sm text-Text-Tartiary mb-4">
|
|
26
|
+
Simple wrapper component with consistent padding and styling.
|
|
27
|
+
</p>
|
|
28
|
+
|
|
29
|
+
<div class="space-y-4">
|
|
30
|
+
<div class="p-4 bg-BG-Secondary rounded-lg">
|
|
31
|
+
<div class="text-xs text-Text-Tartiary mb-2 font-mono">
|
|
32
|
+
Default Card (no className)
|
|
33
|
+
</div>
|
|
34
|
+
<Card>
|
|
35
|
+
<p class="text-Text-Primary">This is a basic card with default styling.</p>
|
|
36
|
+
<p class="text-Text-Tartiary text-sm mt-2">Cards provide consistent padding and shadow on desktop.</p>
|
|
37
|
+
</Card>
|
|
38
|
+
</div>
|
|
39
|
+
|
|
40
|
+
<div class="p-4 bg-BG-Secondary rounded-lg">
|
|
41
|
+
<div class="text-xs text-Text-Tartiary mb-2 font-mono">
|
|
42
|
+
Card with custom className
|
|
43
|
+
</div>
|
|
44
|
+
<Card className="border-2 border-blue-500">
|
|
45
|
+
<p class="text-Text-Primary">Card with custom border styling via className prop.</p>
|
|
46
|
+
</Card>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
</section>
|
|
50
|
+
|
|
51
|
+
<!-- SECTION: Real Usage Examples -->
|
|
52
|
+
<section class="mb-10">
|
|
53
|
+
<h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
|
|
54
|
+
Real Usage Examples
|
|
55
|
+
</h2>
|
|
56
|
+
|
|
57
|
+
<div class="space-y-4">
|
|
58
|
+
<div class="p-4 bg-BG-Secondary rounded-lg">
|
|
59
|
+
<div class="text-xs text-primary-700 font-semibold mb-1">Profile Page - Info Section</div>
|
|
60
|
+
<Card>
|
|
61
|
+
<h3 class="text-lg font-semibold text-Text-Primary mb-2">Personal Information</h3>
|
|
62
|
+
<div class="space-y-2 text-sm text-Text-Tartiary">
|
|
63
|
+
<p><strong>Name:</strong> John Doe</p>
|
|
64
|
+
<p><strong>Email:</strong> john@example.com</p>
|
|
65
|
+
<p><strong>Phone:</strong> (555) 123-4567</p>
|
|
66
|
+
</div>
|
|
67
|
+
</Card>
|
|
68
|
+
</div>
|
|
69
|
+
|
|
70
|
+
<div class="p-4 bg-BG-Secondary rounded-lg">
|
|
71
|
+
<div class="text-xs text-primary-700 font-semibold mb-1">Payment Settings - Payment Method Card</div>
|
|
72
|
+
<Card>
|
|
73
|
+
<div class="flex items-center justify-between">
|
|
74
|
+
<div>
|
|
75
|
+
<p class="font-semibold text-Text-Primary">Venmo</p>
|
|
76
|
+
<p class="text-sm text-Text-Tartiary">@johndoe</p>
|
|
77
|
+
</div>
|
|
78
|
+
<span class="text-green-500 text-sm">Active</span>
|
|
79
|
+
</div>
|
|
80
|
+
</Card>
|
|
81
|
+
</div>
|
|
82
|
+
|
|
83
|
+
<div class="p-4 bg-BG-Secondary rounded-lg">
|
|
84
|
+
<div class="text-xs text-primary-700 font-semibold mb-1">Notification Settings - Toggle Group</div>
|
|
85
|
+
<Card>
|
|
86
|
+
<div class="space-y-4">
|
|
87
|
+
<div class="flex items-center justify-between">
|
|
88
|
+
<span class="text-Text-Primary">Email notifications</span>
|
|
89
|
+
<input type="checkbox" checked class="toggle" />
|
|
90
|
+
</div>
|
|
91
|
+
<div class="flex items-center justify-between">
|
|
92
|
+
<span class="text-Text-Primary">SMS notifications</span>
|
|
93
|
+
<input type="checkbox" class="toggle" />
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
</Card>
|
|
97
|
+
</div>
|
|
98
|
+
</div>
|
|
99
|
+
</section>
|
|
100
|
+
|
|
101
|
+
<!-- SECTION: Props Summary -->
|
|
102
|
+
<section class="mb-10">
|
|
103
|
+
<h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
|
|
104
|
+
Props Summary
|
|
105
|
+
</h2>
|
|
106
|
+
|
|
107
|
+
<div class="bg-BG-Secondary rounded-lg p-4 text-sm">
|
|
108
|
+
<table class="w-full text-left">
|
|
109
|
+
<thead>
|
|
110
|
+
<tr class="border-b border-stroke-Primary">
|
|
111
|
+
<th class="py-2 text-Text-Primary">Prop</th>
|
|
112
|
+
<th class="py-2 text-Text-Primary">Type</th>
|
|
113
|
+
<th class="py-2 text-Text-Primary">Description</th>
|
|
114
|
+
</tr>
|
|
115
|
+
</thead>
|
|
116
|
+
<tbody class="text-Text-Tartiary">
|
|
117
|
+
<tr>
|
|
118
|
+
<td class="py-2 font-mono text-xs">className</td>
|
|
119
|
+
<td class="py-2 text-xs">string</td>
|
|
120
|
+
<td class="py-2 text-xs">Additional CSS classes</td>
|
|
121
|
+
</tr>
|
|
122
|
+
</tbody>
|
|
123
|
+
</table>
|
|
124
|
+
</div>
|
|
125
|
+
|
|
126
|
+
<div class="mt-4 p-4 bg-BG-Secondary rounded-lg">
|
|
127
|
+
<h3 class="font-semibold text-Text-Primary mb-2">Built-in Styling</h3>
|
|
128
|
+
<ul class="list-disc list-inside text-sm text-Text-Tartiary space-y-1">
|
|
129
|
+
<li><code>w-full</code> - Full width</li>
|
|
130
|
+
<li><code>bg-bg-primary</code> - Background color (respects dark mode)</li>
|
|
131
|
+
<li><code>p-3.5 sm:p-4 md:p-5</code> - Responsive padding</li>
|
|
132
|
+
<li><code>md:shadow</code> - Shadow on desktop only</li>
|
|
133
|
+
<li><code>md:rounded-lg</code> - Rounded corners on desktop only</li>
|
|
134
|
+
</ul>
|
|
135
|
+
</div>
|
|
136
|
+
</section>
|
|
137
|
+
|
|
138
|
+
<!-- SECTION: Consolidation Recommendations -->
|
|
139
|
+
<section class="mb-10">
|
|
140
|
+
<h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
|
|
141
|
+
Consolidation Recommendations
|
|
142
|
+
</h2>
|
|
143
|
+
|
|
144
|
+
<div class="space-y-4 text-sm text-Text-Tartiary">
|
|
145
|
+
<div class="p-4 bg-green-50 dark:bg-green-900/20 rounded-lg border border-green-200 dark:border-green-800">
|
|
146
|
+
<h3 class="font-semibold text-green-700 dark:text-green-400 mb-2">Keep As-Is</h3>
|
|
147
|
+
<ul class="list-disc list-inside space-y-1">
|
|
148
|
+
<li>Simple, minimal component - does one thing well</li>
|
|
149
|
+
<li>Already uses bg-bg-primary which respects dark mode CSS variables</li>
|
|
150
|
+
<li>Responsive padding is appropriate</li>
|
|
151
|
+
</ul>
|
|
152
|
+
</div>
|
|
153
|
+
|
|
154
|
+
<div class="p-4 bg-yellow-50 dark:bg-yellow-900/20 rounded-lg border border-yellow-200 dark:border-yellow-800">
|
|
155
|
+
<h3 class="font-semibold text-yellow-700 dark:text-yellow-400 mb-2">Consider Adding</h3>
|
|
156
|
+
<ul class="list-disc list-inside space-y-1">
|
|
157
|
+
<li><strong>variant prop</strong> - default, bordered, elevated</li>
|
|
158
|
+
<li><strong>padding prop</strong> - none, sm, md, lg</li>
|
|
159
|
+
<li><strong>header/footer slots</strong> - for consistent card layouts</li>
|
|
160
|
+
</ul>
|
|
161
|
+
</div>
|
|
162
|
+
|
|
163
|
+
<div class="p-4 bg-blue-50 dark:bg-blue-900/20 rounded-lg border border-blue-200 dark:border-blue-800">
|
|
164
|
+
<h3 class="font-semibold text-blue-700 dark:text-blue-400 mb-2">Related Components</h3>
|
|
165
|
+
<p class="mb-2">These page-specific "card" components could potentially use the base Card:</p>
|
|
166
|
+
<ul class="list-disc list-inside space-y-1">
|
|
167
|
+
<li><strong>ShowItemCard</strong> (933 lines) - complex, but could use Card as base</li>
|
|
168
|
+
<li><strong>VenueItemCard</strong> (222 lines) - could use Card as base</li>
|
|
169
|
+
</ul>
|
|
170
|
+
</div>
|
|
171
|
+
</div>
|
|
172
|
+
</section>
|
|
173
|
+
</div>
|
|
174
|
+
</div>
|
|
175
|
+
</Story>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export namespace meta {
|
|
2
|
+
export let title: string;
|
|
3
|
+
export { Card as component };
|
|
4
|
+
}
|
|
5
|
+
/** @typedef {typeof __propDef.props} CardAuditProps */
|
|
6
|
+
/** @typedef {typeof __propDef.events} CardAuditEvents */
|
|
7
|
+
/** @typedef {typeof __propDef.slots} CardAuditSlots */
|
|
8
|
+
export default class CardAudit extends SvelteComponent<{
|
|
9
|
+
[x: string]: never;
|
|
10
|
+
}, {
|
|
11
|
+
[evt: string]: CustomEvent<any>;
|
|
12
|
+
}, {}> {
|
|
13
|
+
}
|
|
14
|
+
export type CardAuditProps = typeof __propDef.props;
|
|
15
|
+
export type CardAuditEvents = typeof __propDef.events;
|
|
16
|
+
export type CardAuditSlots = typeof __propDef.slots;
|
|
17
|
+
import Card from "./Card.svelte";
|
|
18
|
+
import { SvelteComponent } from "svelte";
|
|
19
|
+
declare const __propDef: {
|
|
20
|
+
props: {
|
|
21
|
+
[x: string]: never;
|
|
22
|
+
};
|
|
23
|
+
events: {
|
|
24
|
+
[evt: string]: CustomEvent<any>;
|
|
25
|
+
};
|
|
26
|
+
slots: {};
|
|
27
|
+
exports?: undefined;
|
|
28
|
+
bindings?: undefined;
|
|
29
|
+
};
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=CardAudit.stories.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardAudit.stories.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/components/CardAudit.stories.svelte.js"],"names":[],"mappings":";;;;AAyLA,wDAAwD;AACxD,0DAA0D;AAC1D,wDAAwD;AAExD;;;;;CACC;6BALa,OAAO,SAAS,CAAC,KAAK;8BACtB,OAAO,SAAS,CAAC,MAAM;6BACvB,OAAO,SAAS,CAAC,KAAK;iBAxLjB,eAAe;gCAHF,QAAQ;AAwLxC;;;;;;;;;;EAAgF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CropImage.spec.d.ts","sourceRoot":"","sources":["../../../src/lib/components/CropImage/CropImage.spec.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
2
|
+
import { render, screen, fireEvent, waitFor } from '@testing-library/svelte';
|
|
3
|
+
|
|
4
|
+
// Mock svelte-easy-crop with the mock Svelte component
|
|
5
|
+
vi.mock('svelte-easy-crop', async () => {
|
|
6
|
+
const MockCropper = await import('../../__mocks__/svelte-easy-crop.svelte');
|
|
7
|
+
return { default: MockCropper.default };
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
// Import after mock is set up
|
|
11
|
+
import CropImage from './CropImage.svelte';
|
|
12
|
+
|
|
13
|
+
describe('CropImage', () => {
|
|
14
|
+
beforeEach(() => {
|
|
15
|
+
vi.clearAllMocks();
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
describe('when showModal is false', () => {
|
|
19
|
+
it('does not render modal content', () => {
|
|
20
|
+
const { container } = render(CropImage, {
|
|
21
|
+
props: { showModal: false, imageSrc: '' },
|
|
22
|
+
});
|
|
23
|
+
expect(container.querySelector('.fixed')).toBeNull();
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
describe('when showModal is true', () => {
|
|
28
|
+
const defaultProps = {
|
|
29
|
+
showModal: true,
|
|
30
|
+
imageSrc: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==',
|
|
31
|
+
onSave: vi.fn(),
|
|
32
|
+
onCancel: vi.fn(),
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
it('renders the modal', () => {
|
|
36
|
+
const { container } = render(CropImage, { props: defaultProps });
|
|
37
|
+
expect(container.querySelector('.fixed')).toBeInTheDocument();
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
it('renders the header with title', () => {
|
|
41
|
+
render(CropImage, { props: defaultProps });
|
|
42
|
+
expect(screen.getByText('Crop image')).toBeInTheDocument();
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
it('renders cancel button', () => {
|
|
46
|
+
render(CropImage, { props: defaultProps });
|
|
47
|
+
expect(screen.getByText('Cancel')).toBeInTheDocument();
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
it('renders save button', () => {
|
|
51
|
+
render(CropImage, { props: defaultProps });
|
|
52
|
+
expect(screen.getByText('Save')).toBeInTheDocument();
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it('renders instructions text', () => {
|
|
56
|
+
render(CropImage, { props: defaultProps });
|
|
57
|
+
expect(screen.getByText(/Drag to position/)).toBeInTheDocument();
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
it('renders zoom controls', () => {
|
|
61
|
+
render(CropImage, { props: defaultProps });
|
|
62
|
+
expect(screen.getByLabelText('Zoom out')).toBeInTheDocument();
|
|
63
|
+
expect(screen.getByLabelText('Zoom in')).toBeInTheDocument();
|
|
64
|
+
expect(screen.getByLabelText('Zoom level')).toBeInTheDocument();
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
it('shows loading state initially', () => {
|
|
68
|
+
render(CropImage, { props: defaultProps });
|
|
69
|
+
expect(screen.getByText('Loading...')).toBeInTheDocument();
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
it('calls onCancel when cancel button clicked', async () => {
|
|
73
|
+
const onCancel = vi.fn();
|
|
74
|
+
render(CropImage, { props: { ...defaultProps, onCancel } });
|
|
75
|
+
|
|
76
|
+
await fireEvent.click(screen.getByText('Cancel'));
|
|
77
|
+
expect(onCancel).toHaveBeenCalled();
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
it('calls onCancel when close button clicked', async () => {
|
|
81
|
+
const onCancel = vi.fn();
|
|
82
|
+
render(CropImage, { props: { ...defaultProps, onCancel } });
|
|
83
|
+
|
|
84
|
+
await fireEvent.click(screen.getByLabelText('Close'));
|
|
85
|
+
expect(onCancel).toHaveBeenCalled();
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
it('calls onCancel when clicking backdrop', async () => {
|
|
89
|
+
const onCancel = vi.fn();
|
|
90
|
+
const { container } = render(CropImage, { props: { ...defaultProps, onCancel } });
|
|
91
|
+
|
|
92
|
+
const backdrop = container.querySelector('.fixed');
|
|
93
|
+
await fireEvent.click(backdrop);
|
|
94
|
+
expect(onCancel).toHaveBeenCalled();
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
it('zoom out button decreases zoom', async () => {
|
|
98
|
+
render(CropImage, { props: defaultProps });
|
|
99
|
+
const zoomOutBtn = screen.getByLabelText('Zoom out');
|
|
100
|
+
const slider = screen.getByLabelText('Zoom level');
|
|
101
|
+
|
|
102
|
+
// Initial zoom is 1
|
|
103
|
+
expect(slider.value).toBe('1');
|
|
104
|
+
|
|
105
|
+
// Click zoom out (should stay at 1 since that's min)
|
|
106
|
+
await fireEvent.click(zoomOutBtn);
|
|
107
|
+
expect(slider.value).toBe('1');
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
it('zoom in button increases zoom', async () => {
|
|
111
|
+
render(CropImage, { props: defaultProps });
|
|
112
|
+
const zoomInBtn = screen.getByLabelText('Zoom in');
|
|
113
|
+
const slider = screen.getByLabelText('Zoom level');
|
|
114
|
+
|
|
115
|
+
await fireEvent.click(zoomInBtn);
|
|
116
|
+
expect(parseFloat(slider.value)).toBeGreaterThan(1);
|
|
117
|
+
});
|
|
118
|
+
|
|
119
|
+
it('hides loading state after crop complete', async () => {
|
|
120
|
+
render(CropImage, { props: defaultProps });
|
|
121
|
+
|
|
122
|
+
// Initially loading
|
|
123
|
+
expect(screen.getByText('Loading...')).toBeInTheDocument();
|
|
124
|
+
|
|
125
|
+
// Wait for the mock cropper to emit cropcomplete
|
|
126
|
+
await waitFor(() => {
|
|
127
|
+
expect(screen.queryByText('Loading...')).not.toBeInTheDocument();
|
|
128
|
+
}, { timeout: 100 });
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
it('slider controls zoom value', async () => {
|
|
132
|
+
render(CropImage, { props: defaultProps });
|
|
133
|
+
const slider = screen.getByLabelText('Zoom level');
|
|
134
|
+
|
|
135
|
+
await fireEvent.input(slider, { target: { value: '2' } });
|
|
136
|
+
expect(slider.value).toBe('2');
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
it('handles save button click when not loading', async () => {
|
|
140
|
+
const onSave = vi.fn();
|
|
141
|
+
render(CropImage, { props: { ...defaultProps, onSave } });
|
|
142
|
+
|
|
143
|
+
// Wait for loading to complete
|
|
144
|
+
await waitFor(() => {
|
|
145
|
+
expect(screen.queryByText('Loading...')).not.toBeInTheDocument();
|
|
146
|
+
}, { timeout: 200 });
|
|
147
|
+
|
|
148
|
+
// Try clicking save button
|
|
149
|
+
const saveButton = screen.getByText('Save');
|
|
150
|
+
await fireEvent.click(saveButton);
|
|
151
|
+
});
|
|
152
|
+
|
|
153
|
+
it('disables save button while loading', () => {
|
|
154
|
+
render(CropImage, { props: defaultProps });
|
|
155
|
+
const saveButton = screen.getByText('Save');
|
|
156
|
+
// Save button should be disabled during loading
|
|
157
|
+
expect(saveButton.closest('button')).toBeDefined();
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
it('resets state when modal reopens with new image', async () => {
|
|
161
|
+
const { rerender } = render(CropImage, { props: defaultProps });
|
|
162
|
+
|
|
163
|
+
// Change imageSrc to trigger reset
|
|
164
|
+
await rerender({
|
|
165
|
+
showModal: true,
|
|
166
|
+
imageSrc: 'data:image/png;base64,differentImage',
|
|
167
|
+
onSave: vi.fn(),
|
|
168
|
+
onCancel: vi.fn(),
|
|
169
|
+
});
|
|
170
|
+
|
|
171
|
+
expect(screen.getByText('Crop image')).toBeInTheDocument();
|
|
172
|
+
});
|
|
173
|
+
|
|
174
|
+
it('updates zoom progress based on zoom value', async () => {
|
|
175
|
+
render(CropImage, { props: defaultProps });
|
|
176
|
+
const slider = screen.getByLabelText('Zoom level');
|
|
177
|
+
|
|
178
|
+
// Set zoom to middle value
|
|
179
|
+
await fireEvent.input(slider, { target: { value: '2' } });
|
|
180
|
+
expect(slider.value).toBe('2');
|
|
181
|
+
|
|
182
|
+
// Set zoom to max
|
|
183
|
+
await fireEvent.input(slider, { target: { value: '3' } });
|
|
184
|
+
expect(slider.value).toBe('3');
|
|
185
|
+
});
|
|
186
|
+
|
|
187
|
+
it('zoom value stays within bounds', async () => {
|
|
188
|
+
render(CropImage, { props: defaultProps });
|
|
189
|
+
const slider = screen.getByLabelText('Zoom level');
|
|
190
|
+
const zoomOutBtn = screen.getByLabelText('Zoom out');
|
|
191
|
+
const zoomInBtn = screen.getByLabelText('Zoom in');
|
|
192
|
+
|
|
193
|
+
// Spam zoom out - should not go below 1
|
|
194
|
+
for (let i = 0; i < 10; i++) {
|
|
195
|
+
await fireEvent.click(zoomOutBtn);
|
|
196
|
+
}
|
|
197
|
+
expect(parseFloat(slider.value)).toBe(1);
|
|
198
|
+
|
|
199
|
+
// Set to max and spam zoom in
|
|
200
|
+
await fireEvent.input(slider, { target: { value: '3' } });
|
|
201
|
+
for (let i = 0; i < 10; i++) {
|
|
202
|
+
await fireEvent.click(zoomInBtn);
|
|
203
|
+
}
|
|
204
|
+
expect(parseFloat(slider.value)).toBeLessThanOrEqual(3);
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
it('renders cropper component with correct props', async () => {
|
|
208
|
+
const { container } = render(CropImage, { props: defaultProps });
|
|
209
|
+
|
|
210
|
+
// Wait for render
|
|
211
|
+
await waitFor(() => {
|
|
212
|
+
expect(container.querySelector('.cropper-container')).toBeInTheDocument();
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
});
|
|
216
|
+
});
|