@123usmanhaider321/ui 0.1.6 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +416 -31
- package/dist/images/icon/1LINK.svg +50 -0
- package/dist/images/icon/CreditCard.svg +83 -0
- package/dist/images/icon/Easypaisa.png +0 -0
- package/dist/images/icon/MobileWallet.png +0 -0
- package/dist/images/icon/Raast-Logo.png +0 -0
- package/dist/images/icon/VISA.png +0 -0
- package/dist/images/icon/add-circle-1.svg +5 -0
- package/dist/images/icon/check-circle-broken.svg +3 -0
- package/dist/images/icon/close-circle.svg +5 -0
- package/dist/images/icon/jazzcash.png +0 -0
- package/dist/images/icon/loading_icon.json +3347 -0
- package/dist/images/icon/mastercard-logo.webp +0 -0
- package/dist/images/icon/paymo.jpeg +0 -0
- package/dist/images/icon/preview-svgrepo-com.svg +36 -0
- package/dist/images/icon/trash.svg +7 -0
- package/dist/images/icon/unionpay-logo.svg +9 -0
- package/dist/index-87FQZHOs.js +11119 -0
- package/dist/index-87FQZHOs.js.map +1 -0
- package/dist/index-Tl9g213f.js +60475 -0
- package/dist/index-Tl9g213f.js.map +1 -0
- package/dist/index.d.ts +1 -10
- package/dist/index.es-CpgTaa1Y.js +16734 -0
- package/dist/index.es-CpgTaa1Y.js.map +1 -0
- package/dist/index.js +40 -12
- package/dist/index.js.map +1 -1
- package/dist/loading_icon-n5H5dQBl.js +3375 -0
- package/dist/loading_icon-n5H5dQBl.js.map +1 -0
- package/dist/src/components/Alert/ErrorAlert.d.ts +6 -0
- package/dist/src/components/Alert/SuccessAlert.d.ts +6 -0
- package/dist/{components → src/components}/FormBuilder/DiscountInput.d.ts +3 -6
- package/dist/{components → src/components}/FormBuilder/FormBuilder.d.ts +2 -11
- package/dist/{components → src/components}/FormBuilder/QuestionCard.d.ts +0 -5
- package/dist/{components → src/components}/FormBuilder/QuestionEditor.d.ts +0 -5
- package/dist/{components → src/components}/FormBuilder/SortableQuestionList.d.ts +0 -5
- package/dist/src/components/FormBuilder/questionIcons.d.ts +5 -0
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/AddEventLayout.d.ts +2 -1
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/AddEventStepper.d.ts +2 -2
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/common/ConfirmationModal.d.ts +1 -1
- package/dist/src/components/NewAddEvent/components/EventSubmissionConfirmationModal.d.ts +14 -0
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/StepTwo/TicketTierSection.d.ts +1 -1
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/TicketTierForm.d.ts +1 -1
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/hooks/useStepperForm.d.ts +22 -22
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/hooks/useTicketTierForm.d.ts +63 -15
- package/dist/src/components/NewAddEvent/schemas/step1.d.ts +211 -0
- package/dist/src/components/NewAddEvent/schemas/step2.d.ts +411 -0
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/schemas/utils.d.ts +8 -2
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/IndividualFormStep.d.ts +1 -1
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/SocialProfilesStep.d.ts +1 -1
- package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/TeamFormStep.d.ts +1 -1
- package/dist/src/components/Spinner/spinner.d.ts +4 -0
- package/dist/src/components/TicketlyUIProvider.d.ts +35 -0
- package/dist/src/components/common/Loader/index.d.ts +8 -0
- package/dist/src/components/common/Modals/ConfirmationModal.d.ts +7 -0
- package/dist/{components/FormInput → src/components/ui}/FormInput.d.ts +1 -1
- package/dist/src/components/ui/Loader.d.ts +4 -0
- package/dist/{components/Button/Button.d.ts → src/components/ui/button.d.ts} +1 -1
- package/dist/src/index.d.ts +10 -0
- package/dist/{lib → src/lib}/actions.d.ts +0 -126
- package/dist/src/lib/dom-utils.d.ts +2 -0
- package/dist/src/lib/storage-utils.d.ts +5 -0
- package/dist/src/lib/types.d.ts +258 -0
- package/dist/src/redux/baseQuery.d.ts +16 -0
- package/dist/{services → src/redux/features}/eventApi.d.ts +1053 -1745
- package/dist/src/redux/features/globalSlice.d.ts +17 -0
- package/dist/{services → src/redux/features/single-event}/single-event-api.d.ts +856 -1190
- package/dist/src/redux/types.d.ts +2 -0
- package/dist/src/services/library-services.d.ts +15 -0
- package/dist/src/services/remote-config.d.ts +27 -0
- package/dist/{services → src/services}/utils.d.ts +1 -1
- package/dist/src/theme/colors.d.ts +127 -0
- package/dist/src/theme/typography.d.ts +13 -0
- package/dist/src/types/api.d.ts +18 -0
- package/dist/style.css +2984 -0
- package/dist/styles.css +3758 -3636
- package/package.json +78 -68
- package/dist/_virtual/_commonjsHelpers.js +0 -9
- package/dist/_virtual/_commonjsHelpers.js.map +0 -1
- package/dist/_virtual/customParseFormat.js +0 -5
- package/dist/_virtual/customParseFormat.js.map +0 -1
- package/dist/_virtual/dayjs.min.js +0 -5
- package/dist/_virtual/dayjs.min.js.map +0 -1
- package/dist/_virtual/duration.js +0 -5
- package/dist/_virtual/duration.js.map +0 -1
- package/dist/_virtual/index.js +0 -5
- package/dist/_virtual/index.js.map +0 -1
- package/dist/_virtual/isBetween.js +0 -5
- package/dist/_virtual/isBetween.js.map +0 -1
- package/dist/_virtual/relativeTime.js +0 -5
- package/dist/_virtual/relativeTime.js.map +0 -1
- package/dist/_virtual/use-sync-external-store-shim.development.js +0 -5
- package/dist/_virtual/use-sync-external-store-shim.development.js.map +0 -1
- package/dist/_virtual/use-sync-external-store-shim.production.js +0 -5
- package/dist/_virtual/use-sync-external-store-shim.production.js.map +0 -1
- package/dist/_virtual/with-selector.development.js +0 -5
- package/dist/_virtual/with-selector.development.js.map +0 -1
- package/dist/_virtual/with-selector.js +0 -5
- package/dist/_virtual/with-selector.js.map +0 -1
- package/dist/_virtual/with-selector.production.js +0 -5
- package/dist/_virtual/with-selector.production.js.map +0 -1
- package/dist/components/Alert/Alert.js +0 -51
- package/dist/components/Alert/Alert.js.map +0 -1
- package/dist/components/Button/Button.js +0 -52
- package/dist/components/Button/Button.js.map +0 -1
- package/dist/components/Button/Button.test.d.ts +0 -1
- package/dist/components/Button/index.d.ts +0 -1
- package/dist/components/Checkbox/Checkbox.js +0 -50
- package/dist/components/Checkbox/Checkbox.js.map +0 -1
- package/dist/components/Checkbox/Checkbox.test.d.ts +0 -1
- package/dist/components/Checkbox/index.d.ts +0 -1
- package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +0 -25
- package/dist/components/CheckboxGroup/CheckboxGroup.js +0 -99
- package/dist/components/CheckboxGroup/CheckboxGroup.js.map +0 -1
- package/dist/components/ConfirmationModal/ConfirmationModal.d.ts +0 -15
- package/dist/components/ConfirmationModal/ConfirmationModal.js +0 -136
- package/dist/components/ConfirmationModal/ConfirmationModal.js.map +0 -1
- package/dist/components/ConfirmationModal/index.d.ts +0 -2
- package/dist/components/CustomSelect/CustomSelect.js +0 -259
- package/dist/components/CustomSelect/CustomSelect.js.map +0 -1
- package/dist/components/EventAddForm/AddEventLayout.js +0 -227
- package/dist/components/EventAddForm/AddEventLayout.js.map +0 -1
- package/dist/components/EventAddForm/AddEventStepper.js +0 -719
- package/dist/components/EventAddForm/AddEventStepper.js.map +0 -1
- package/dist/components/EventAddForm/common/ConfirmationModal.js +0 -136
- package/dist/components/EventAddForm/common/ConfirmationModal.js.map +0 -1
- package/dist/components/EventAddForm/common/DescriptionModal.js +0 -70
- package/dist/components/EventAddForm/common/DescriptionModal.js.map +0 -1
- package/dist/components/EventAddForm/components/AnimatedBackground.d.ts +0 -8
- package/dist/components/EventAddForm/components/ApprovalConfirmationModal.d.ts +0 -7
- package/dist/components/EventAddForm/components/CheckboxGroup.js +0 -92
- package/dist/components/EventAddForm/components/CheckboxGroup.js.map +0 -1
- package/dist/components/EventAddForm/components/CustomMeetingForm.js +0 -237
- package/dist/components/EventAddForm/components/CustomMeetingForm.js.map +0 -1
- package/dist/components/EventAddForm/components/DateTimeField.js +0 -173
- package/dist/components/EventAddForm/components/DateTimeField.js.map +0 -1
- package/dist/components/EventAddForm/components/EventSubmissionConfirmationModal.d.ts +0 -33
- package/dist/components/EventAddForm/components/EventSubmissionConfirmationModal.js +0 -366
- package/dist/components/EventAddForm/components/EventSubmissionConfirmationModal.js.map +0 -1
- package/dist/components/EventAddForm/components/FileUpload.js +0 -412
- package/dist/components/EventAddForm/components/FileUpload.js.map +0 -1
- package/dist/components/EventAddForm/components/FormBuilderProceedModal.js +0 -197
- package/dist/components/EventAddForm/components/FormBuilderProceedModal.js.map +0 -1
- package/dist/components/EventAddForm/components/GoogleMapsAutocompleteInput.js +0 -1179
- package/dist/components/EventAddForm/components/GoogleMapsAutocompleteInput.js.map +0 -1
- package/dist/components/EventAddForm/components/InputField.d.ts +0 -15
- package/dist/components/EventAddForm/components/RadioGroupButton.d.ts +0 -14
- package/dist/components/EventAddForm/components/SelectField.d.ts +0 -19
- package/dist/components/EventAddForm/components/SingleDateTimeInput.js +0 -102
- package/dist/components/EventAddForm/components/SingleDateTimeInput.js.map +0 -1
- package/dist/components/EventAddForm/components/StepTwo/CustomFormSection.js +0 -277
- package/dist/components/EventAddForm/components/StepTwo/CustomFormSection.js.map +0 -1
- package/dist/components/EventAddForm/components/StepTwo/TicketTierSection.js +0 -148
- package/dist/components/EventAddForm/components/StepTwo/TicketTierSection.js.map +0 -1
- package/dist/components/EventAddForm/components/TicketTierForm.js +0 -418
- package/dist/components/EventAddForm/components/TicketTierForm.js.map +0 -1
- package/dist/components/EventAddForm/components/TicketTypeSelection.js +0 -93
- package/dist/components/EventAddForm/components/TicketTypeSelection.js.map +0 -1
- package/dist/components/EventAddForm/hooks/useStepperForm.js +0 -371
- package/dist/components/EventAddForm/hooks/useStepperForm.js.map +0 -1
- package/dist/components/EventAddForm/hooks/useTicketTierForm.js +0 -237
- package/dist/components/EventAddForm/hooks/useTicketTierForm.js.map +0 -1
- package/dist/components/EventAddForm/index.d.ts +0 -3
- package/dist/components/EventAddForm/index.js +0 -41
- package/dist/components/EventAddForm/index.js.map +0 -1
- package/dist/components/EventAddForm/schemas/index.d.ts +0 -2
- package/dist/components/EventAddForm/schemas/step1.d.ts +0 -47
- package/dist/components/EventAddForm/schemas/step1.js +0 -135
- package/dist/components/EventAddForm/schemas/step1.js.map +0 -1
- package/dist/components/EventAddForm/schemas/step2.d.ts +0 -138
- package/dist/components/EventAddForm/schemas/step2.js +0 -94
- package/dist/components/EventAddForm/schemas/step2.js.map +0 -1
- package/dist/components/EventAddForm/schemas/utils.js +0 -28
- package/dist/components/EventAddForm/schemas/utils.js.map +0 -1
- package/dist/components/EventAddForm/steps/IndividualFormStep.js +0 -85
- package/dist/components/EventAddForm/steps/IndividualFormStep.js.map +0 -1
- package/dist/components/EventAddForm/steps/SocialProfilesStep.js +0 -123
- package/dist/components/EventAddForm/steps/SocialProfilesStep.js.map +0 -1
- package/dist/components/EventAddForm/steps/StepOne.js +0 -462
- package/dist/components/EventAddForm/steps/StepOne.js.map +0 -1
- package/dist/components/EventAddForm/steps/StepTwo.js +0 -173
- package/dist/components/EventAddForm/steps/StepTwo.js.map +0 -1
- package/dist/components/EventAddForm/steps/TeamFormStep.js +0 -13
- package/dist/components/EventAddForm/steps/TeamFormStep.js.map +0 -1
- package/dist/components/FormBuilder/CategoryList.js +0 -242
- package/dist/components/FormBuilder/CategoryList.js.map +0 -1
- package/dist/components/FormBuilder/DiscountInput.js +0 -366
- package/dist/components/FormBuilder/DiscountInput.js.map +0 -1
- package/dist/components/FormBuilder/FormBuilder.js +0 -918
- package/dist/components/FormBuilder/FormBuilder.js.map +0 -1
- package/dist/components/FormBuilder/OptionList.js +0 -120
- package/dist/components/FormBuilder/OptionList.js.map +0 -1
- package/dist/components/FormBuilder/PaymentPreview.d.ts +0 -12
- package/dist/components/FormBuilder/PaymentPreview.js +0 -70
- package/dist/components/FormBuilder/PaymentPreview.js.map +0 -1
- package/dist/components/FormBuilder/PreviewInput.d.ts +0 -10
- package/dist/components/FormBuilder/PreviewInput.js +0 -143
- package/dist/components/FormBuilder/PreviewInput.js.map +0 -1
- package/dist/components/FormBuilder/QuestionCard.js +0 -252
- package/dist/components/FormBuilder/QuestionCard.js.map +0 -1
- package/dist/components/FormBuilder/QuestionEditor.js +0 -166
- package/dist/components/FormBuilder/QuestionEditor.js.map +0 -1
- package/dist/components/FormBuilder/RequiredToggle.js +0 -43
- package/dist/components/FormBuilder/RequiredToggle.js.map +0 -1
- package/dist/components/FormBuilder/SortableQuestionList.js +0 -137
- package/dist/components/FormBuilder/SortableQuestionList.js.map +0 -1
- package/dist/components/FormBuilder/index.d.ts +0 -4
- package/dist/components/FormBuilder/utils.js +0 -229
- package/dist/components/FormBuilder/utils.js.map +0 -1
- package/dist/components/FormInput/FormInput.js +0 -126
- package/dist/components/FormInput/FormInput.js.map +0 -1
- package/dist/components/FormInput/FormInput.test.d.ts +0 -1
- package/dist/components/FormInput/index.d.ts +0 -2
- package/dist/components/ImageCropModal/index.js +0 -464
- package/dist/components/ImageCropModal/index.js.map +0 -1
- package/dist/components/InformationPopover/InformationPopover.d.ts +0 -7
- package/dist/components/InformationPopover/InformationPopover.js +0 -19
- package/dist/components/InformationPopover/InformationPopover.js.map +0 -1
- package/dist/components/InformationPopover.js +0 -19
- package/dist/components/InformationPopover.js.map +0 -1
- package/dist/components/InputErrorMessage/InputErrorMessage.js +0 -21
- package/dist/components/InputErrorMessage/InputErrorMessage.js.map +0 -1
- package/dist/components/Modal/Modal.d.ts +0 -15
- package/dist/components/Modal/Modal.js +0 -73
- package/dist/components/Modal/Modal.js.map +0 -1
- package/dist/components/Radio/Radio.js +0 -35
- package/dist/components/Radio/Radio.js.map +0 -1
- package/dist/components/Spinner/spinner.d.ts +0 -2
- package/dist/components/Spinner/spinner.js +0 -22
- package/dist/components/Spinner/spinner.js.map +0 -1
- package/dist/components/Toggle/Toggle.d.ts +0 -16
- package/dist/components/Toggle/index.d.ts +0 -2
- package/dist/components/Tooltip/Tooltip.d.ts +0 -12
- package/dist/components/Tooltip/Tooltip.js +0 -134
- package/dist/components/Tooltip/Tooltip.js.map +0 -1
- package/dist/components/common/FallbackImage.js +0 -47
- package/dist/components/common/FallbackImage.js.map +0 -1
- package/dist/components/ui/Calendar/calendar-utils.js +0 -51
- package/dist/components/ui/Calendar/calendar-utils.js.map +0 -1
- package/dist/components/ui/Calendar/index.js +0 -142
- package/dist/components/ui/Calendar/index.js.map +0 -1
- package/dist/components/ui/Checkbox.d.ts +0 -9
- package/dist/components/ui/Checkbox.js +0 -50
- package/dist/components/ui/Checkbox.js.map +0 -1
- package/dist/components/ui/DatePicker/index.js +0 -188
- package/dist/components/ui/DatePicker/index.js.map +0 -1
- package/dist/components/ui/FormInput.js +0 -129
- package/dist/components/ui/FormInput.js.map +0 -1
- package/dist/components/ui/InputErrorMessage.d.ts +0 -7
- package/dist/components/ui/InputErrorMessage.js +0 -21
- package/dist/components/ui/InputErrorMessage.js.map +0 -1
- package/dist/components/ui/Modal/index.js +0 -73
- package/dist/components/ui/Modal/index.js.map +0 -1
- package/dist/components/ui/Radio.d.ts +0 -6
- package/dist/components/ui/Radio.js +0 -35
- package/dist/components/ui/Radio.js.map +0 -1
- package/dist/components/ui/RichTextEditor.js +0 -242
- package/dist/components/ui/RichTextEditor.js.map +0 -1
- package/dist/components/ui/TimePicker/index.js +0 -215
- package/dist/components/ui/TimePicker/index.js.map +0 -1
- package/dist/components/ui/TimeSelector/index.js +0 -138
- package/dist/components/ui/TimeSelector/index.js.map +0 -1
- package/dist/components/ui/Tooltip.d.ts +0 -12
- package/dist/components/ui/Tooltip.js +0 -136
- package/dist/components/ui/Tooltip.js.map +0 -1
- package/dist/hooks/useDropdownPosition.d.ts +0 -11
- package/dist/hooks/useFirebaseAuthState.d.ts +0 -6
- package/dist/hooks/useFirebaseAuthState.js +0 -23
- package/dist/hooks/useFirebaseAuthState.js.map +0 -1
- package/dist/hooks/useTicketTierForm.d.ts +0 -61
- package/dist/lib/actions.js +0 -32
- package/dist/lib/actions.js.map +0 -1
- package/dist/lib/cropImage.js +0 -113
- package/dist/lib/cropImage.js.map +0 -1
- package/dist/lib/imageAnalysis.js +0 -58
- package/dist/lib/imageAnalysis.js.map +0 -1
- package/dist/lib/utils.js +0 -9
- package/dist/lib/utils.js.map +0 -1
- package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js +0 -60
- package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js.map +0 -1
- package/dist/node_modules/@dnd-kit/core/dist/core.esm.js +0 -3458
- package/dist/node_modules/@dnd-kit/core/dist/core.esm.js.map +0 -1
- package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js +0 -593
- package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js.map +0 -1
- package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js +0 -302
- package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js.map +0 -1
- package/dist/node_modules/@firebase/app/dist/esm/index.esm.js +0 -768
- package/dist/node_modules/@firebase/app/dist/esm/index.esm.js.map +0 -1
- package/dist/node_modules/@firebase/component/dist/esm/index.esm.js +0 -340
- package/dist/node_modules/@firebase/component/dist/esm/index.esm.js.map +0 -1
- package/dist/node_modules/@firebase/logger/dist/esm/index.esm.js +0 -123
- package/dist/node_modules/@firebase/logger/dist/esm/index.esm.js.map +0 -1
- package/dist/node_modules/@firebase/storage/dist/index.esm.js +0 -2623
- package/dist/node_modules/@firebase/storage/dist/index.esm.js.map +0 -1
- package/dist/node_modules/@firebase/util/dist/index.esm.js +0 -658
- package/dist/node_modules/@firebase/util/dist/index.esm.js.map +0 -1
- package/dist/node_modules/@firebase/util/dist/postinstall.js +0 -5
- package/dist/node_modules/@firebase/util/dist/postinstall.js.map +0 -1
- package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.js +0 -3179
- package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.js.map +0 -1
- package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.js +0 -60
- package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.js.map +0 -1
- package/dist/node_modules/@fortawesome/react-fontawesome/dist/index.js +0 -400
- package/dist/node_modules/@fortawesome/react-fontawesome/dist/index.js.map +0 -1
- package/dist/node_modules/@heroicons/react/20/solid/esm/CheckIcon.js +0 -27
- package/dist/node_modules/@heroicons/react/20/solid/esm/CheckIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/20/solid/esm/ChevronDownIcon.js +0 -27
- package/dist/node_modules/@heroicons/react/20/solid/esm/ChevronDownIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowRightIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowRightIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/ClockIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/ClockIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentDuplicateIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentDuplicateIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/InformationCircleIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/InformationCircleIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/LinkIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/LinkIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/MagnifyingGlassIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/MagnifyingGlassIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/MapPinIcon.js +0 -33
- package/dist/node_modules/@heroicons/react/24/outline/esm/MapPinIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/VideoCameraIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/VideoCameraIcon.js.map +0 -1
- package/dist/node_modules/@heroicons/react/24/outline/esm/XMarkIcon.js +0 -29
- package/dist/node_modules/@heroicons/react/24/outline/esm/XMarkIcon.js.map +0 -1
- package/dist/node_modules/@tiptap/core/dist/index.js +0 -5446
- package/dist/node_modules/@tiptap/core/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.js +0 -21
- package/dist/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-blockquote/dist/index.js +0 -78
- package/dist/node_modules/@tiptap/extension-blockquote/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-bold/dist/index.js +0 -100
- package/dist/node_modules/@tiptap/extension-bold/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-code/dist/index.js +0 -70
- package/dist/node_modules/@tiptap/extension-code/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-code-block/dist/index.js +0 -317
- package/dist/node_modules/@tiptap/extension-code-block/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-document/dist/index.js +0 -16
- package/dist/node_modules/@tiptap/extension-document/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-hard-break/dist/index.js +0 -66
- package/dist/node_modules/@tiptap/extension-hard-break/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-heading/dist/index.js +0 -86
- package/dist/node_modules/@tiptap/extension-heading/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-horizontal-rule/dist/index.js +0 -80
- package/dist/node_modules/@tiptap/extension-horizontal-rule/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-italic/dist/index.js +0 -98
- package/dist/node_modules/@tiptap/extension-italic/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-link/dist/index.js +0 -423
- package/dist/node_modules/@tiptap/extension-link/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-list/dist/index.js +0 -1039
- package/dist/node_modules/@tiptap/extension-list/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-paragraph/dist/index.js +0 -61
- package/dist/node_modules/@tiptap/extension-paragraph/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-placeholder/dist/index.js +0 -7
- package/dist/node_modules/@tiptap/extension-placeholder/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-strike/dist/index.js +0 -79
- package/dist/node_modules/@tiptap/extension-strike/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-text/dist/index.js +0 -16
- package/dist/node_modules/@tiptap/extension-text/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extension-underline/dist/index.js +0 -76
- package/dist/node_modules/@tiptap/extension-underline/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/extensions/dist/index.js +0 -376
- package/dist/node_modules/@tiptap/extensions/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/react/dist/index.js +0 -650
- package/dist/node_modules/@tiptap/react/dist/index.js.map +0 -1
- package/dist/node_modules/@tiptap/starter-kit/dist/index.js +0 -97
- package/dist/node_modules/@tiptap/starter-kit/dist/index.js.map +0 -1
- package/dist/node_modules/dayjs/dayjs.min.js +0 -283
- package/dist/node_modules/dayjs/dayjs.min.js.map +0 -1
- package/dist/node_modules/dayjs/plugin/customParseFormat.js +0 -130
- package/dist/node_modules/dayjs/plugin/customParseFormat.js.map +0 -1
- package/dist/node_modules/dayjs/plugin/duration.js +0 -137
- package/dist/node_modules/dayjs/plugin/duration.js.map +0 -1
- package/dist/node_modules/dayjs/plugin/isBetween.js +0 -20
- package/dist/node_modules/dayjs/plugin/isBetween.js.map +0 -1
- package/dist/node_modules/dayjs/plugin/relativeTime.js +0 -49
- package/dist/node_modules/dayjs/plugin/relativeTime.js.map +0 -1
- package/dist/node_modules/fast-equals/dist/es/index.js +0 -442
- package/dist/node_modules/fast-equals/dist/es/index.js.map +0 -1
- package/dist/node_modules/idb/build/index.js +0 -70
- package/dist/node_modules/idb/build/index.js.map +0 -1
- package/dist/node_modules/idb/build/wrap-idb-value.js +0 -149
- package/dist/node_modules/idb/build/wrap-idb-value.js.map +0 -1
- package/dist/node_modules/linkifyjs/dist/linkify.js +0 -1159
- package/dist/node_modules/linkifyjs/dist/linkify.js.map +0 -1
- package/dist/node_modules/orderedmap/dist/index.js +0 -120
- package/dist/node_modules/orderedmap/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-commands/dist/index.js +0 -527
- package/dist/node_modules/prosemirror-commands/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-dropcursor/dist/index.js +0 -137
- package/dist/node_modules/prosemirror-dropcursor/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-gapcursor/dist/index.js +0 -221
- package/dist/node_modules/prosemirror-gapcursor/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-history/dist/index.js +0 -357
- package/dist/node_modules/prosemirror-history/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-keymap/dist/index.js +0 -84
- package/dist/node_modules/prosemirror-keymap/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-model/dist/index.js +0 -3209
- package/dist/node_modules/prosemirror-model/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-schema-list/dist/index.js +0 -131
- package/dist/node_modules/prosemirror-schema-list/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-state/dist/index.js +0 -936
- package/dist/node_modules/prosemirror-state/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-transform/dist/index.js +0 -1881
- package/dist/node_modules/prosemirror-transform/dist/index.js.map +0 -1
- package/dist/node_modules/prosemirror-view/dist/index.js +0 -5232
- package/dist/node_modules/prosemirror-view/dist/index.js.map +0 -1
- package/dist/node_modules/rope-sequence/dist/index.js +0 -184
- package/dist/node_modules/rope-sequence/dist/index.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +0 -82
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js +0 -78
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +0 -78
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +0 -63
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/shim/index.js +0 -13
- package/dist/node_modules/use-sync-external-store/shim/index.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/shim/with-selector.js +0 -13
- package/dist/node_modules/use-sync-external-store/shim/with-selector.js.map +0 -1
- package/dist/node_modules/w3c-keyname/index.js +0 -106
- package/dist/node_modules/w3c-keyname/index.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/coerce.js +0 -10
- package/dist/node_modules/zod/v4/classic/coerce.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/compat.js +0 -8
- package/dist/node_modules/zod/v4/classic/compat.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/errors.js +0 -45
- package/dist/node_modules/zod/v4/classic/errors.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/iso.js +0 -44
- package/dist/node_modules/zod/v4/classic/iso.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/parse.js +0 -30
- package/dist/node_modules/zod/v4/classic/parse.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/schemas.js +0 -711
- package/dist/node_modules/zod/v4/classic/schemas.js.map +0 -1
- package/dist/node_modules/zod/v4/core/api.js +0 -588
- package/dist/node_modules/zod/v4/core/api.js.map +0 -1
- package/dist/node_modules/zod/v4/core/checks.js +0 -411
- package/dist/node_modules/zod/v4/core/checks.js.map +0 -1
- package/dist/node_modules/zod/v4/core/core.js +0 -75
- package/dist/node_modules/zod/v4/core/core.js.map +0 -1
- package/dist/node_modules/zod/v4/core/doc.js +0 -38
- package/dist/node_modules/zod/v4/core/doc.js.map +0 -1
- package/dist/node_modules/zod/v4/core/errors.js +0 -73
- package/dist/node_modules/zod/v4/core/errors.js.map +0 -1
- package/dist/node_modules/zod/v4/core/json-schema-processors.js +0 -359
- package/dist/node_modules/zod/v4/core/json-schema-processors.js.map +0 -1
- package/dist/node_modules/zod/v4/core/parse.js +0 -96
- package/dist/node_modules/zod/v4/core/parse.js.map +0 -1
- package/dist/node_modules/zod/v4/core/regexes.js +0 -84
- package/dist/node_modules/zod/v4/core/regexes.js.map +0 -1
- package/dist/node_modules/zod/v4/core/registries.js +0 -52
- package/dist/node_modules/zod/v4/core/registries.js.map +0 -1
- package/dist/node_modules/zod/v4/core/schemas.js +0 -1391
- package/dist/node_modules/zod/v4/core/schemas.js.map +0 -1
- package/dist/node_modules/zod/v4/core/to-json-schema.js +0 -363
- package/dist/node_modules/zod/v4/core/to-json-schema.js.map +0 -1
- package/dist/node_modules/zod/v4/core/util.js +0 -431
- package/dist/node_modules/zod/v4/core/util.js.map +0 -1
- package/dist/node_modules/zod/v4/core/versions.js +0 -9
- package/dist/node_modules/zod/v4/core/versions.js.map +0 -1
- package/dist/redux/baseQuery.d.ts +0 -1
- package/dist/redux/baseQuery.js +0 -24
- package/dist/redux/baseQuery.js.map +0 -1
- package/dist/services/eventApi.js +0 -411
- package/dist/services/eventApi.js.map +0 -1
- package/dist/services/helpers.js +0 -115
- package/dist/services/helpers.js.map +0 -1
- package/dist/services/initialize-firebase.d.ts +0 -2
- package/dist/services/initialize-firebase.js +0 -20
- package/dist/services/initialize-firebase.js.map +0 -1
- package/dist/services/process-image-on-server.js +0 -30
- package/dist/services/process-image-on-server.js.map +0 -1
- package/dist/services/remote-config.d.ts +0 -5
- package/dist/services/remote-config.js +0 -9
- package/dist/services/remote-config.js.map +0 -1
- package/dist/services/single-event-api.js +0 -301
- package/dist/services/single-event-api.js.map +0 -1
- package/dist/services/utils.js +0 -107
- package/dist/services/utils.js.map +0 -1
- package/dist/setupTests.d.ts +0 -1
- package/dist/stories/Alert.stories.d.ts +0 -10
- package/dist/stories/Button.stories.d.ts +0 -13
- package/dist/types/redux-types.d.ts +0 -15
- package/dist/types/types.d.ts +0 -60
- package/dist/types/types.js +0 -10
- package/dist/types/types.js.map +0 -1
- package/dist/utils/cn.d.ts +0 -6
- package/dist/utils/cn.js +0 -9
- package/dist/utils/cn.js.map +0 -1
- package/dist/utils/date-range.d.ts +0 -4
- package/dist/utils/date-range.js +0 -13
- package/dist/utils/date-range.js.map +0 -1
- package/dist/utils/single-event-helpers.d.ts +0 -50
- package/dist/utils/single-event-helpers.js +0 -18
- package/dist/utils/single-event-helpers.js.map +0 -1
- package/dist/utils/social-validation.js +0 -42
- package/dist/utils/social-validation.js.map +0 -1
- package/dist/utils/utils.js +0 -20
- package/dist/utils/utils.js.map +0 -1
- /package/dist/{components/Alert/Alert.d.ts → src/components/Alert/index.d.ts} +0 -0
- /package/dist/{components → src/components}/FormBuilder/CategoryList.d.ts +0 -0
- /package/dist/{components → src/components}/FormBuilder/OptionList.d.ts +0 -0
- /package/dist/{components → src/components}/FormBuilder/RequiredToggle.d.ts +0 -0
- /package/dist/{components → src/components}/FormBuilder/types.d.ts +0 -0
- /package/dist/{components → src/components}/FormBuilder/utils.d.ts +0 -0
- /package/dist/{components → src/components}/ImageCropModal/index.d.ts +0 -0
- /package/dist/{components → src/components}/InformationPopover.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/common/DescriptionModal.d.ts +0 -0
- /package/dist/{components/ui/FormInput.d.ts → src/components/NewAddEvent/components/AddEventFormInput.d.ts} +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/CheckboxGroup.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/CustomMeetingForm.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/DateTimeField.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/FileUpload.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/FormBuilderProceedModal.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/GoogleMapsAutocompleteInput.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/SingleDateTimeInput.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/StepTwo/CustomFormSection.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/TicketTypeSelection.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/StepOne.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/StepTwo.d.ts +0 -0
- /package/dist/{components/EventAddForm → src/components/NewAddEvent}/types.d.ts +0 -0
- /package/dist/{components → src/components}/common/FallbackImage.d.ts +0 -0
- /package/dist/{components → src/components}/ui/Calendar/calendar-utils.d.ts +0 -0
- /package/dist/{components → src/components}/ui/Calendar/index.d.ts +0 -0
- /package/dist/{components/Checkbox → src/components/ui}/Checkbox.d.ts +0 -0
- /package/dist/{components/CustomSelect → src/components/ui}/CustomSelect.d.ts +0 -0
- /package/dist/{components → src/components}/ui/DatePicker/index.d.ts +0 -0
- /package/dist/{components/InputErrorMessage → src/components/ui}/InputErrorMessage.d.ts +0 -0
- /package/dist/{components → src/components}/ui/Modal/index.d.ts +0 -0
- /package/dist/{components/Radio → src/components/ui}/Radio.d.ts +0 -0
- /package/dist/{components → src/components}/ui/RichTextEditor.d.ts +0 -0
- /package/dist/{components → src/components}/ui/TimePicker/index.d.ts +0 -0
- /package/dist/{components → src/components}/ui/TimeSelector/index.d.ts +0 -0
- /package/dist/{components → src/components}/ui/Tooltip/index.d.ts +0 -0
- /package/dist/{lib → src/lib}/constants.d.ts +0 -0
- /package/dist/{lib → src/lib}/cropImage.d.ts +0 -0
- /package/dist/{lib → src/lib}/imageAnalysis.d.ts +0 -0
- /package/dist/{utils → src/lib}/social-validation.d.ts +0 -0
- /package/dist/{lib/utils.d.ts → src/lib/tailwind-merge.d.ts} +0 -0
- /package/dist/{utils → src/lib}/utils.d.ts +0 -0
- /package/dist/{services → src/redux/features/single-event}/helpers.d.ts +0 -0
- /package/dist/{services → src/services}/process-image-on-server.d.ts +0 -0
- /package/dist/{types → src/types}/events.d.ts +0 -0
- /package/dist/{types → src/types}/question.d.ts +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/ui/Calendar/index.tsx"],"sourcesContent":["import { useState, useEffect, memo } from \"react\";\r\nimport { motion } from \"framer-motion\";\r\nimport { ChevronLeft, ChevronRight } from \"lucide-react\";\r\nimport { daysOfWeek, getDaysInMonth, months } from \"./calendar-utils\";\r\nimport { cn } from \"@/lib/utils\";\r\nimport Tooltip from \"../Tooltip\";\r\n\r\ninterface CalendarProps {\r\n value?: Date | null;\r\n onChange?: (date: Date) => void;\r\n className?: string;\r\n minDate?: Date;\r\n maxDate?: Date;\r\n disabledDates?: (date: Date) => boolean;\r\n minDateMessage?: string;\r\n maxDateMessage?: string;\r\n disabledDateMessage?: string;\r\n defaultMonth?: Date;\r\n}\r\n\r\nconst Calendar = ({\r\n value,\r\n onChange,\r\n className,\r\n minDate,\r\n maxDate,\r\n disabledDates,\r\n minDateMessage = \"Date is before minimum allowed date\",\r\n maxDateMessage = \"Date is after maximum allowed date\",\r\n disabledDateMessage = \"Date is unavailable\",\r\n defaultMonth\r\n}: CalendarProps) => {\r\n const [currentMonth, setCurrentMonth] = useState(value || defaultMonth || new Date());\r\n\r\n // Update view if value changes externally\r\n useEffect(() => {\r\n if (value) {\r\n setCurrentMonth(value);\r\n } else if (defaultMonth) {\r\n setCurrentMonth(defaultMonth);\r\n }\r\n }, [value, defaultMonth]);\r\n\r\n const days = getDaysInMonth(currentMonth);\r\n\r\n const prevMonth = () => {\r\n setCurrentMonth(\r\n new Date(currentMonth.getFullYear(), currentMonth.getMonth() - 1, 1)\r\n );\r\n };\r\n\r\n const nextMonth = () => {\r\n setCurrentMonth(\r\n new Date(currentMonth.getFullYear(), currentMonth.getMonth() + 1, 1)\r\n );\r\n };\r\n\r\n const handleDateClick = (date: Date) => {\r\n if (isDateDisabled(date)) return;\r\n if (onChange) {\r\n onChange(date);\r\n }\r\n };\r\n\r\n const isSelected = (date: Date) => {\r\n if (!value) return false;\r\n return (\r\n date.getDate() === value.getDate() &&\r\n date.getMonth() === value.getMonth() &&\r\n date.getFullYear() === value.getFullYear()\r\n );\r\n };\r\n\r\n const isToday = (date: Date) => {\r\n const today = new Date();\r\n return (\r\n date.getDate() === today.getDate() &&\r\n date.getMonth() === today.getMonth() &&\r\n date.getFullYear() === today.getFullYear()\r\n );\r\n };\r\n\r\n // Returns a string reason if disabled, otherwise null\r\n const getDisabledReason = (date: Date): string | null => {\r\n if (minDate && date < new Date(minDate.setHours(0, 0, 0, 0))) {\r\n return minDateMessage;\r\n }\r\n if (maxDate && date > new Date(maxDate.setHours(23, 59, 59, 999))) {\r\n return maxDateMessage;\r\n }\r\n if (disabledDates && disabledDates(date)) {\r\n return disabledDateMessage;\r\n }\r\n return null;\r\n };\r\n\r\n const isDateDisabled = (date: Date) => {\r\n return !!getDisabledReason(date);\r\n };\r\n\r\n return (\r\n <div className={cn(\"p-4 bg-white rounded-lg shadow-sm border border-stroke w-full max-w-[320px]\", className)}>\r\n {/* Header */}\r\n <div className=\"flex items-center justify-between mb-4\">\r\n <button\r\n type=\"button\"\r\n onClick={prevMonth}\r\n className=\"p-1 hover:bg-grey-100 rounded-full transition-colors\"\r\n >\r\n <ChevronLeft className=\"w-5 h-5 text-gray-600\" />\r\n </button>\r\n <div className=\"font-semibold text-gray-900\">\r\n {months[currentMonth.getMonth()]} {currentMonth.getFullYear()}\r\n </div>\r\n <button\r\n type=\"button\"\r\n onClick={nextMonth}\r\n className=\"p-1 hover:bg-grey-100 rounded-full transition-colors\"\r\n >\r\n <ChevronRight className=\"w-5 h-5 text-gray-600\" />\r\n </button>\r\n </div>\r\n\r\n {/* Days of Week */}\r\n <div className=\"grid grid-cols-7 mb-2\">\r\n {daysOfWeek.map((day) => (\r\n <div\r\n key={day}\r\n className=\"text-center text-xs font-medium text-grey-500 py-1\"\r\n >\r\n {day}\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {/* Dates Grid */}\r\n <motion.div\r\n className=\"grid grid-cols-7 gap-1 overflow-hidden\"\r\n initial={{ height: 'auto' }}\r\n animate={{ height: 'auto' }}\r\n transition={{ duration: 0.2, ease: \"easeInOut\" }}\r\n >\r\n {days.map((dayObj, index) => {\r\n if (!dayObj.cwMonth) {\r\n return <div key={index} className=\"w-full h-9\" />;\r\n }\r\n\r\n const disabledReason = getDisabledReason(dayObj.date);\r\n const disabled = !!disabledReason;\r\n\r\n const dateButton = (\r\n <button\r\n type=\"button\"\r\n onClick={() => handleDateClick(dayObj.date)}\r\n disabled={disabled}\r\n className={cn(\r\n \"p-2 text-sm rounded-md transition-colors relative flex items-center justify-center h-9 w-full mx-auto\",\r\n disabled && !isSelected(dayObj.date) && \"opacity-30 cursor-not-allowed hover:bg-transparent\",\r\n disabled && isSelected(dayObj.date) && \"cursor-not-allowed opacity-80\",\r\n\r\n isSelected(dayObj.date) && \"bg-primaryx-500 text-white hover:bg-primaryx-600\",\r\n !disabled && !isSelected(dayObj.date) && isToday(dayObj.date) && \"border border-primaryx-500 text-primaryx-500\",\r\n !disabled && !isSelected(dayObj.date) && \"hover:bg-grey-100\"\r\n )}\r\n >\r\n {dayObj.date.getDate()}\r\n </button>\r\n );\r\n\r\n return (\r\n <div key={index} className=\"w-full flex justify-center\">\r\n {disabled ? (\r\n <Tooltip content={disabledReason}>\r\n {dateButton}\r\n </Tooltip>\r\n ) : (\r\n dateButton\r\n )}\r\n </div>\r\n );\r\n })}\r\n </motion.div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default memo(Calendar);\r\n"],"names":[],"mappings":";;;;;;;AAoBA,MAAM,WAAW,CAAC;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,sBAAsB;AAAA,EACtB;AACJ,MAAqB;AACjB,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,SAAS,gBAAgB,oBAAI,MAAM;AAGpF,YAAU,MAAM;AACZ,QAAI,OAAO;AACP,sBAAgB,KAAK;AAAA,IACzB,WAAW,cAAc;AACrB,sBAAgB,YAAY;AAAA,IAChC;AAAA,EACJ,GAAG,CAAC,OAAO,YAAY,CAAC;AAExB,QAAM,OAAO,eAAe,YAAY;AAExC,QAAM,YAAY,MAAM;AACpB;AAAA,MACI,IAAI,KAAK,aAAa,YAAA,GAAe,aAAa,SAAA,IAAa,GAAG,CAAC;AAAA,IAAA;AAAA,EAE3E;AAEA,QAAM,YAAY,MAAM;AACpB;AAAA,MACI,IAAI,KAAK,aAAa,YAAA,GAAe,aAAa,SAAA,IAAa,GAAG,CAAC;AAAA,IAAA;AAAA,EAE3E;AAEA,QAAM,kBAAkB,CAAC,SAAe;AACpC,QAAI,eAAe,IAAI,EAAG;AAC1B,QAAI,UAAU;AACV,eAAS,IAAI;AAAA,IACjB;AAAA,EACJ;AAEA,QAAM,aAAa,CAAC,SAAe;AAC/B,QAAI,CAAC,MAAO,QAAO;AACnB,WACI,KAAK,QAAA,MAAc,MAAM,QAAA,KACzB,KAAK,SAAA,MAAe,MAAM,cAC1B,KAAK,YAAA,MAAkB,MAAM,YAAA;AAAA,EAErC;AAEA,QAAM,UAAU,CAAC,SAAe;AAC5B,UAAM,4BAAY,KAAA;AAClB,WACI,KAAK,QAAA,MAAc,MAAM,QAAA,KACzB,KAAK,SAAA,MAAe,MAAM,cAC1B,KAAK,YAAA,MAAkB,MAAM,YAAA;AAAA,EAErC;AAGA,QAAM,oBAAoB,CAAC,SAA8B;AACrD,QAAI,WAAW,OAAO,IAAI,KAAK,QAAQ,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG;AAC1D,aAAO;AAAA,IACX;AACA,QAAI,WAAW,OAAO,IAAI,KAAK,QAAQ,SAAS,IAAI,IAAI,IAAI,GAAG,CAAC,GAAG;AAC/D,aAAO;AAAA,IACX;AACA,QAAI,iBAAiB,cAAc,IAAI,GAAG;AACtC,aAAO;AAAA,IACX;AACA,WAAO;AAAA,EACX;AAEA,QAAM,iBAAiB,CAAC,SAAe;AACnC,WAAO,CAAC,CAAC,kBAAkB,IAAI;AAAA,EACnC;AAEA,8BACK,OAAA,EAAI,WAAW,GAAG,+EAA+E,SAAS,GAEvG,UAAA;AAAA,IAAA,qBAAC,OAAA,EAAI,WAAU,0CACX,UAAA;AAAA,MAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,MAAK;AAAA,UACL,SAAS;AAAA,UACT,WAAU;AAAA,UAEV,UAAA,oBAAC,aAAA,EAAY,WAAU,wBAAA,CAAwB;AAAA,QAAA;AAAA,MAAA;AAAA,MAEnD,qBAAC,OAAA,EAAI,WAAU,+BACV,UAAA;AAAA,QAAA,OAAO,aAAa,UAAU;AAAA,QAAE;AAAA,QAAE,aAAa,YAAA;AAAA,MAAY,GAChE;AAAA,MACA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,MAAK;AAAA,UACL,SAAS;AAAA,UACT,WAAU;AAAA,UAEV,UAAA,oBAAC,cAAA,EAAa,WAAU,wBAAA,CAAwB;AAAA,QAAA;AAAA,MAAA;AAAA,IACpD,GACJ;AAAA,wBAGC,OAAA,EAAI,WAAU,yBACV,UAAA,WAAW,IAAI,CAAC,QACb;AAAA,MAAC;AAAA,MAAA;AAAA,QAEG,WAAU;AAAA,QAET,UAAA;AAAA,MAAA;AAAA,MAHI;AAAA,IAAA,CAKZ,GACL;AAAA,IAGA;AAAA,MAAC,OAAO;AAAA,MAAP;AAAA,QACG,WAAU;AAAA,QACV,SAAS,EAAE,QAAQ,OAAA;AAAA,QACnB,SAAS,EAAE,QAAQ,OAAA;AAAA,QACnB,YAAY,EAAE,UAAU,KAAK,MAAM,YAAA;AAAA,QAElC,UAAA,KAAK,IAAI,CAAC,QAAQ,UAAU;AACzB,cAAI,CAAC,OAAO,SAAS;AACjB,mBAAO,oBAAC,OAAA,EAAgB,WAAU,aAAA,GAAjB,KAA8B;AAAA,UACnD;AAEA,gBAAM,iBAAiB,kBAAkB,OAAO,IAAI;AACpD,gBAAM,WAAW,CAAC,CAAC;AAEnB,gBAAM,aACF;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,MAAK;AAAA,cACL,SAAS,MAAM,gBAAgB,OAAO,IAAI;AAAA,cAC1C;AAAA,cACA,WAAW;AAAA,gBACP;AAAA,gBACA,YAAY,CAAC,WAAW,OAAO,IAAI,KAAK;AAAA,gBACxC,YAAY,WAAW,OAAO,IAAI,KAAK;AAAA,gBAEvC,WAAW,OAAO,IAAI,KAAK;AAAA,gBAC3B,CAAC,YAAY,CAAC,WAAW,OAAO,IAAI,KAAK,QAAQ,OAAO,IAAI,KAAK;AAAA,gBACjE,CAAC,YAAY,CAAC,WAAW,OAAO,IAAI,KAAK;AAAA,cAAA;AAAA,cAG5C,UAAA,OAAO,KAAK,QAAA;AAAA,YAAQ;AAAA,UAAA;AAI7B,iBACI,oBAAC,OAAA,EAAgB,WAAU,8BACtB,UAAA,WACG,oBAAC,SAAA,EAAQ,SAAS,gBACb,UAAA,WAAA,CACL,IAEA,WAAA,GANE,KAQV;AAAA,QAER,CAAC;AAAA,MAAA;AAAA,IAAA;AAAA,EACL,GACJ;AAER;AAEA,MAAA,aAAe,KAAK,QAAQ;"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
export interface CheckboxProps extends React.InputHTMLAttributes<HTMLInputElement> {
|
|
4
|
-
label?: string;
|
|
5
|
-
onCheckedChange?: (checked: boolean) => void;
|
|
6
|
-
filled?: boolean;
|
|
7
|
-
}
|
|
8
|
-
declare const Checkbox: React.ForwardRefExoticComponent<CheckboxProps & React.RefAttributes<HTMLInputElement>>;
|
|
9
|
-
export { Checkbox };
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import React__default from "react";
|
|
3
|
-
import { cn } from "../../lib/utils.js";
|
|
4
|
-
import { Check } from "lucide-react";
|
|
5
|
-
const Checkbox = React__default.forwardRef(
|
|
6
|
-
({ className, checked, onCheckedChange, onChange, filled = true, ...props }, ref) => {
|
|
7
|
-
const handleChange = (e) => {
|
|
8
|
-
onChange == null ? void 0 : onChange(e);
|
|
9
|
-
onCheckedChange == null ? void 0 : onCheckedChange(e.target.checked);
|
|
10
|
-
};
|
|
11
|
-
return /* @__PURE__ */ jsxs("div", { className: "relative flex items-center justify-center shrink-0", children: [
|
|
12
|
-
/* @__PURE__ */ jsx(
|
|
13
|
-
"input",
|
|
14
|
-
{
|
|
15
|
-
type: "checkbox",
|
|
16
|
-
className: cn("peer sr-only", className),
|
|
17
|
-
ref,
|
|
18
|
-
checked,
|
|
19
|
-
onChange: handleChange,
|
|
20
|
-
...props
|
|
21
|
-
}
|
|
22
|
-
),
|
|
23
|
-
/* @__PURE__ */ jsx(
|
|
24
|
-
"div",
|
|
25
|
-
{
|
|
26
|
-
className: cn(
|
|
27
|
-
"flex items-center justify-center w-4 h-4 rounded transition-all duration-200",
|
|
28
|
-
checked ? `border border-primaryx-500 ${filled ? "bg-primaryx-500" : ""}` : "input-border bg-white group-hover:border-primaryx-300",
|
|
29
|
-
"peer-focus-visible:ring-2 peer-focus-visible:ring-primaryx-500 peer-focus-visible:ring-offset-2"
|
|
30
|
-
),
|
|
31
|
-
children: /* @__PURE__ */ jsx(
|
|
32
|
-
Check,
|
|
33
|
-
{
|
|
34
|
-
className: cn(
|
|
35
|
-
"w-3 h-3 transition-all duration-200",
|
|
36
|
-
checked ? `opacity-100 scale-100 ${filled ? "text-white" : "text-primaryx-500"}` : "opacity-0 scale-0"
|
|
37
|
-
),
|
|
38
|
-
strokeWidth: 3
|
|
39
|
-
}
|
|
40
|
-
)
|
|
41
|
-
}
|
|
42
|
-
)
|
|
43
|
-
] });
|
|
44
|
-
}
|
|
45
|
-
);
|
|
46
|
-
Checkbox.displayName = "Checkbox";
|
|
47
|
-
export {
|
|
48
|
-
Checkbox
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=Checkbox.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","sources":["../../../src/components/ui/Checkbox.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Check } from \"lucide-react\";\r\n\r\nexport interface CheckboxProps extends React.InputHTMLAttributes<HTMLInputElement> {\r\n label?: string;\r\n onCheckedChange?: (checked: boolean) => void;\r\n filled?: boolean;\r\n}\r\n\r\nconst Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>(\r\n ({ className, checked, onCheckedChange, onChange, filled = true, ...props }, ref) => {\r\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n onChange?.(e);\r\n onCheckedChange?.(e.target.checked);\r\n };\r\n\r\n return (\r\n <div className=\"relative flex items-center justify-center shrink-0\">\r\n <input\r\n type=\"checkbox\"\r\n className={cn(\"peer sr-only\", className)}\r\n ref={ref}\r\n checked={checked}\r\n onChange={handleChange}\r\n {...props}\r\n />\r\n <div\r\n className={cn(\r\n \"flex items-center justify-center w-4 h-4 rounded transition-all duration-200\",\r\n checked\r\n ? `border border-primaryx-500 ${filled ? 'bg-primaryx-500' : ''}`\r\n : \"input-border bg-white group-hover:border-primaryx-300\",\r\n \"peer-focus-visible:ring-2 peer-focus-visible:ring-primaryx-500 peer-focus-visible:ring-offset-2\"\r\n )}\r\n >\r\n <Check\r\n className={cn(\r\n \"w-3 h-3 transition-all duration-200\",\r\n checked ? `opacity-100 scale-100 ${filled ? \"text-white\" : \"text-primaryx-500\"}` : \"opacity-0 scale-0\",\r\n )}\r\n strokeWidth={3}\r\n />\r\n </div>\r\n </div>\r\n );\r\n }\r\n);\r\nCheckbox.displayName = \"Checkbox\";\r\n\r\nexport { Checkbox };\r\n"],"names":["React"],"mappings":";;;;AAUA,MAAM,WAAWA,eAAM;AAAA,EACnB,CAAC,EAAE,WAAW,SAAS,iBAAiB,UAAU,SAAS,MAAM,GAAG,MAAA,GAAS,QAAQ;AACjF,UAAM,eAAe,CAAC,MAA2C;AAC7D,2CAAW;AACX,yDAAkB,EAAE,OAAO;AAAA,IAC/B;AAEA,WACI,qBAAC,OAAA,EAAI,WAAU,sDACX,UAAA;AAAA,MAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,MAAK;AAAA,UACL,WAAW,GAAG,gBAAgB,SAAS;AAAA,UACvC;AAAA,UACA;AAAA,UACA,UAAU;AAAA,UACT,GAAG;AAAA,QAAA;AAAA,MAAA;AAAA,MAER;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAW;AAAA,YACP;AAAA,YACA,UACM,8BAA8B,SAAS,oBAAoB,EAAE,KAC7D;AAAA,YACN;AAAA,UAAA;AAAA,UAGJ,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,WAAW;AAAA,gBACP;AAAA,gBACA,UAAU,yBAAyB,SAAS,eAAe,mBAAmB,KAAK;AAAA,cAAA;AAAA,cAEvF,aAAa;AAAA,YAAA;AAAA,UAAA;AAAA,QACjB;AAAA,MAAA;AAAA,IACJ,GACJ;AAAA,EAER;AACJ;AACA,SAAS,cAAc;"}
|
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useState, useRef, useEffect } from "react";
|
|
3
|
-
import { createPortal } from "react-dom";
|
|
4
|
-
import { Calendar } from "lucide-react";
|
|
5
|
-
import { AnimatePresence, motion } from "framer-motion";
|
|
6
|
-
import Calendar$1 from "../Calendar/index.js";
|
|
7
|
-
import dayjs from "../../../node_modules/dayjs/dayjs.min.js";
|
|
8
|
-
import { IMaskInput, IMask } from "react-imask";
|
|
9
|
-
import customParseFormat from "../../../node_modules/dayjs/plugin/customParseFormat.js";
|
|
10
|
-
dayjs.extend(customParseFormat);
|
|
11
|
-
const DatePicker = ({
|
|
12
|
-
value,
|
|
13
|
-
onChange,
|
|
14
|
-
placeholder = "Select date",
|
|
15
|
-
minDate,
|
|
16
|
-
maxDate,
|
|
17
|
-
disabled = false,
|
|
18
|
-
error,
|
|
19
|
-
className = "",
|
|
20
|
-
inputClassName = "",
|
|
21
|
-
position = "auto",
|
|
22
|
-
defaultMonth
|
|
23
|
-
}) => {
|
|
24
|
-
const [isOpen, setIsOpen] = useState(false);
|
|
25
|
-
const [coords, setCoords] = useState({ top: 0, left: 0, position: "bottom" });
|
|
26
|
-
const containerRef = useRef(null);
|
|
27
|
-
const triggerRef = useRef(null);
|
|
28
|
-
const popoverRef = useRef(null);
|
|
29
|
-
useEffect(() => {
|
|
30
|
-
const handleClickOutside = (event) => {
|
|
31
|
-
var _a, _b;
|
|
32
|
-
const target = event.target;
|
|
33
|
-
const isClickInsideContainer = (_a = containerRef.current) == null ? void 0 : _a.contains(target);
|
|
34
|
-
const isClickInsidePopover = (_b = popoverRef.current) == null ? void 0 : _b.contains(target);
|
|
35
|
-
if (!isClickInsideContainer && !isClickInsidePopover) {
|
|
36
|
-
setIsOpen(false);
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
if (isOpen) {
|
|
40
|
-
document.addEventListener("mousedown", handleClickOutside);
|
|
41
|
-
window.addEventListener("scroll", updatePosition, true);
|
|
42
|
-
window.addEventListener("resize", updatePosition);
|
|
43
|
-
}
|
|
44
|
-
return () => {
|
|
45
|
-
document.removeEventListener("mousedown", handleClickOutside);
|
|
46
|
-
window.removeEventListener("scroll", updatePosition, true);
|
|
47
|
-
window.removeEventListener("resize", updatePosition);
|
|
48
|
-
};
|
|
49
|
-
}, [isOpen]);
|
|
50
|
-
const updatePosition = () => {
|
|
51
|
-
if (triggerRef.current) {
|
|
52
|
-
const rect = triggerRef.current.getBoundingClientRect();
|
|
53
|
-
const spaceBelow = window.innerHeight - rect.bottom;
|
|
54
|
-
const spaceAbove = rect.top;
|
|
55
|
-
let position2 = "bottom";
|
|
56
|
-
if (spaceBelow < 350 && spaceAbove > 350) {
|
|
57
|
-
position2 = "top";
|
|
58
|
-
}
|
|
59
|
-
setCoords({
|
|
60
|
-
top: position2 === "bottom" ? rect.bottom + window.scrollY + 8 : rect.top + window.scrollY - 8,
|
|
61
|
-
left: rect.left + window.scrollX,
|
|
62
|
-
position: position2
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
useEffect(() => {
|
|
67
|
-
if (isOpen) {
|
|
68
|
-
updatePosition();
|
|
69
|
-
}
|
|
70
|
-
}, [isOpen, position]);
|
|
71
|
-
const [inputValue, setInputValue] = useState("");
|
|
72
|
-
useEffect(() => {
|
|
73
|
-
if (value) {
|
|
74
|
-
setInputValue(dayjs(value).format("DD/MM/YYYY"));
|
|
75
|
-
} else {
|
|
76
|
-
setInputValue("");
|
|
77
|
-
}
|
|
78
|
-
}, [value]);
|
|
79
|
-
const handleDateSelect = (date) => {
|
|
80
|
-
onChange(date);
|
|
81
|
-
setIsOpen(false);
|
|
82
|
-
};
|
|
83
|
-
const toggleOpen = () => {
|
|
84
|
-
if (!disabled) {
|
|
85
|
-
if (!isOpen) {
|
|
86
|
-
updatePosition();
|
|
87
|
-
}
|
|
88
|
-
setIsOpen(!isOpen);
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
return /* @__PURE__ */ jsxs("div", { ref: containerRef, className: `relative w-full ${className}`, children: [
|
|
92
|
-
/* @__PURE__ */ jsxs(
|
|
93
|
-
"div",
|
|
94
|
-
{
|
|
95
|
-
ref: triggerRef,
|
|
96
|
-
className: `w-full h-10 px-3 flex items-center justify-between bg-white rounded-lg ease-in-out focus-within:ring-2 focus-within:ring-primaryx-500/20 focus-within:border-primaryx-500 transition-all duration-200 ${disabled ? "bg-grey-50 cursor-not-allowed opacity-60" : ""} ${error ? "ring-1 ring-error-500 text-error-900" : "input-border text-grey-700"} ${inputClassName}`,
|
|
97
|
-
onClick: () => {
|
|
98
|
-
if (!isOpen && !disabled) toggleOpen();
|
|
99
|
-
},
|
|
100
|
-
children: [
|
|
101
|
-
/* @__PURE__ */ jsx(
|
|
102
|
-
IMaskInput,
|
|
103
|
-
{
|
|
104
|
-
mask: "d/m/Y",
|
|
105
|
-
blocks: {
|
|
106
|
-
d: {
|
|
107
|
-
mask: IMask.MaskedRange,
|
|
108
|
-
from: 1,
|
|
109
|
-
to: 31,
|
|
110
|
-
maxLength: 2
|
|
111
|
-
},
|
|
112
|
-
m: {
|
|
113
|
-
mask: IMask.MaskedRange,
|
|
114
|
-
from: 1,
|
|
115
|
-
to: 12,
|
|
116
|
-
maxLength: 2
|
|
117
|
-
},
|
|
118
|
-
Y: {
|
|
119
|
-
mask: IMask.MaskedRange,
|
|
120
|
-
from: 1900,
|
|
121
|
-
to: 2999,
|
|
122
|
-
maxLength: 4
|
|
123
|
-
}
|
|
124
|
-
},
|
|
125
|
-
value: inputValue,
|
|
126
|
-
onAccept: (value2) => {
|
|
127
|
-
setInputValue(value2);
|
|
128
|
-
if (!value2) {
|
|
129
|
-
onChange(null);
|
|
130
|
-
} else {
|
|
131
|
-
const date = dayjs(value2, "DD/MM/YYYY", true);
|
|
132
|
-
if (date.isValid()) {
|
|
133
|
-
onChange(date.toDate());
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
},
|
|
137
|
-
placeholder: "DD/MM/YYYY",
|
|
138
|
-
lazy: false,
|
|
139
|
-
disabled,
|
|
140
|
-
className: "imask-input w-full h-full bg-transparent border-none outline-none focus:border-none focus:outline-none focus:border-none! focus:outline-none! focus:ring-0 focus:ring-0! ring-0 text-sm placeholder-grey-400 px-0"
|
|
141
|
-
}
|
|
142
|
-
),
|
|
143
|
-
/* @__PURE__ */ jsx("button", { type: "button", onClick: (e) => {
|
|
144
|
-
e.stopPropagation();
|
|
145
|
-
toggleOpen();
|
|
146
|
-
}, className: "focus:outline-none", children: /* @__PURE__ */ jsx(Calendar, { className: `w-4 h-4 ${!value ? "text-grey-400" : "text-grey-600"}` }) })
|
|
147
|
-
]
|
|
148
|
-
}
|
|
149
|
-
),
|
|
150
|
-
typeof document !== "undefined" && createPortal(
|
|
151
|
-
/* @__PURE__ */ jsx(AnimatePresence, { children: isOpen && /* @__PURE__ */ jsx(
|
|
152
|
-
motion.div,
|
|
153
|
-
{
|
|
154
|
-
ref: popoverRef,
|
|
155
|
-
initial: { opacity: 0, y: coords.position === "bottom" ? -10 : 10, scale: 0.95 },
|
|
156
|
-
animate: { opacity: 1, y: 0, scale: 1 },
|
|
157
|
-
exit: { opacity: 0, y: coords.position === "bottom" ? -10 : 10, scale: 0.95 },
|
|
158
|
-
transition: { duration: 0.15 },
|
|
159
|
-
style: {
|
|
160
|
-
position: "absolute",
|
|
161
|
-
top: coords.top,
|
|
162
|
-
left: coords.left,
|
|
163
|
-
zIndex: 99999,
|
|
164
|
-
// Ensure it's above modals
|
|
165
|
-
transformOrigin: coords.position === "bottom" ? "top left" : "bottom left"
|
|
166
|
-
},
|
|
167
|
-
className: `p-1 w-max ${coords.position === "top" ? "-translate-y-full" : ""}`,
|
|
168
|
-
children: /* @__PURE__ */ jsx("div", { className: coords.position === "top" ? "mb-2" : "", children: /* @__PURE__ */ jsx(
|
|
169
|
-
Calendar$1,
|
|
170
|
-
{
|
|
171
|
-
value,
|
|
172
|
-
defaultMonth,
|
|
173
|
-
onChange: handleDateSelect,
|
|
174
|
-
className: "w-max shadow-xl border-grey-200 bg-white rounded-lg",
|
|
175
|
-
minDate,
|
|
176
|
-
maxDate
|
|
177
|
-
}
|
|
178
|
-
) })
|
|
179
|
-
}
|
|
180
|
-
) }),
|
|
181
|
-
document.body
|
|
182
|
-
)
|
|
183
|
-
] });
|
|
184
|
-
};
|
|
185
|
-
export {
|
|
186
|
-
DatePicker as default
|
|
187
|
-
};
|
|
188
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/ui/DatePicker/index.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect } from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport { Calendar as CalendarIcon } from \"lucide-react\";\r\nimport { AnimatePresence, motion } from \"framer-motion\";\r\nimport Calendar from \"@/components/ui/Calendar\";\r\nimport dayjs from \"dayjs\";\r\nimport { IMaskInput, IMask } from 'react-imask';\r\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\r\n\r\ndayjs.extend(customParseFormat);\r\n\r\ninterface DatePickerProps {\r\n value?: Date | null;\r\n onChange: (date: Date | null) => void;\r\n placeholder?: string;\r\n minDate?: Date;\r\n maxDate?: Date;\r\n disabled?: boolean;\r\n error?: string;\r\n className?: string;\r\n inputClassName?: string;\r\n position?: 'top' | 'bottom' | 'auto';\r\n defaultMonth?: Date;\r\n}\r\n\r\nconst DatePicker = ({\r\n value,\r\n onChange,\r\n placeholder = \"Select date\",\r\n minDate,\r\n maxDate,\r\n disabled = false,\r\n error,\r\n className = \"\",\r\n inputClassName = \"\",\r\n position = \"auto\",\r\n defaultMonth\r\n}: DatePickerProps) => {\r\n const [isOpen, setIsOpen] = useState(false);\r\n const [coords, setCoords] = useState<{ top: number; left: number; position: 'top' | 'bottom' }>({ top: 0, left: 0, position: 'bottom' });\r\n const containerRef = useRef<HTMLDivElement>(null);\r\n const triggerRef = useRef<HTMLButtonElement>(null);\r\n const popoverRef = useRef<HTMLDivElement>(null);\r\n\r\n // Close when clicking outside\r\n useEffect(() => {\r\n const handleClickOutside = (event: MouseEvent) => {\r\n const target = event.target as Node;\r\n const isClickInsideContainer = containerRef.current?.contains(target);\r\n const isClickInsidePopover = popoverRef.current?.contains(target);\r\n\r\n if (!isClickInsideContainer && !isClickInsidePopover) {\r\n setIsOpen(false);\r\n }\r\n };\r\n\r\n if (isOpen) {\r\n document.addEventListener('mousedown', handleClickOutside);\r\n window.addEventListener('scroll', updatePosition, true);\r\n window.addEventListener('resize', updatePosition);\r\n }\r\n\r\n return () => {\r\n document.removeEventListener('mousedown', handleClickOutside);\r\n window.removeEventListener('scroll', updatePosition, true);\r\n window.removeEventListener('resize', updatePosition);\r\n };\r\n }, [isOpen]);\r\n\r\n const updatePosition = () => {\r\n if (triggerRef.current) {\r\n const rect = triggerRef.current.getBoundingClientRect();\r\n const spaceBelow = window.innerHeight - rect.bottom;\r\n const spaceAbove = rect.top;\r\n\r\n // Prefer bottom, unless limited space\r\n let position: 'top' | 'bottom' = 'bottom';\r\n if (spaceBelow < 350 && spaceAbove > 350) {\r\n position = 'top';\r\n }\r\n\r\n setCoords({\r\n top: position === 'bottom' ? rect.bottom + window.scrollY + 8 : rect.top + window.scrollY - 8,\r\n left: rect.left + window.scrollX,\r\n position\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (isOpen) {\r\n updatePosition();\r\n }\r\n }, [isOpen, position]);\r\n\r\n const [inputValue, setInputValue] = useState(\"\");\r\n\r\n useEffect(() => {\r\n if (value) {\r\n setInputValue(dayjs(value).format('DD/MM/YYYY'));\r\n } else {\r\n setInputValue(\"\");\r\n }\r\n }, [value]);\r\n\r\n const handleInputBlur = () => {\r\n if (value) {\r\n setInputValue(dayjs(value).format('DD/MM/YYYY'));\r\n } else {\r\n setInputValue(\"\");\r\n }\r\n };\r\n\r\n const handleDateSelect = (date: Date) => {\r\n onChange(date);\r\n setIsOpen(false);\r\n };\r\n\r\n const toggleOpen = () => {\r\n if (!disabled) {\r\n if (!isOpen) {\r\n updatePosition();\r\n }\r\n setIsOpen(!isOpen);\r\n }\r\n };\r\n\r\n return (\r\n <div ref={containerRef} className={`relative w-full ${className}`}>\r\n <div\r\n ref={triggerRef as any}\r\n className={`w-full h-10 px-3 flex items-center justify-between bg-white rounded-lg ease-in-out focus-within:ring-2 focus-within:ring-primaryx-500/20 focus-within:border-primaryx-500 transition-all duration-200 ${disabled ? 'bg-grey-50 cursor-not-allowed opacity-60' : ''\r\n } ${error\r\n ? 'ring-1 ring-error-500 text-error-900'\r\n : 'input-border text-grey-700'\r\n } ${inputClassName}`}\r\n onClick={() => {\r\n if (!isOpen && !disabled) toggleOpen();\r\n }}\r\n >\r\n <IMaskInput\r\n mask=\"d/m/Y\"\r\n blocks={{\r\n d: {\r\n mask: IMask.MaskedRange,\r\n from: 1,\r\n to: 31,\r\n maxLength: 2,\r\n },\r\n m: {\r\n mask: IMask.MaskedRange,\r\n from: 1,\r\n to: 12,\r\n maxLength: 2,\r\n },\r\n Y: {\r\n mask: IMask.MaskedRange,\r\n from: 1900,\r\n to: 2999,\r\n maxLength: 4,\r\n }\r\n }}\r\n value={inputValue}\r\n onAccept={(value: string) => {\r\n setInputValue(value);\r\n if (!value) {\r\n onChange(null);\r\n } else {\r\n const date = dayjs(value, 'DD/MM/YYYY', true);\r\n if (date.isValid()) {\r\n onChange(date.toDate());\r\n }\r\n }\r\n }}\r\n placeholder={\"DD/MM/YYYY\"}\r\n lazy={false}\r\n disabled={disabled}\r\n className=\"imask-input w-full h-full bg-transparent border-none outline-none focus:border-none focus:outline-none focus:border-none! focus:outline-none! focus:ring-0 focus:ring-0! ring-0 text-sm placeholder-grey-400 px-0\"\r\n />\r\n <button type=\"button\" onClick={(e) => { e.stopPropagation(); toggleOpen(); }} className=\"focus:outline-none\">\r\n <CalendarIcon className={`w-4 h-4 ${!value ? \"text-grey-400\" : \"text-grey-600\"}`} />\r\n </button>\r\n </div>\r\n\r\n {typeof document !== 'undefined' && createPortal(\r\n <AnimatePresence>\r\n {isOpen && (\r\n <motion.div\r\n ref={popoverRef}\r\n initial={{ opacity: 0, y: coords.position === 'bottom' ? -10 : 10, scale: 0.95 }}\r\n animate={{ opacity: 1, y: 0, scale: 1 }}\r\n exit={{ opacity: 0, y: coords.position === 'bottom' ? -10 : 10, scale: 0.95 }}\r\n transition={{ duration: 0.15 }}\r\n style={{\r\n position: 'absolute',\r\n top: coords.top,\r\n left: coords.left,\r\n zIndex: 99999, // Ensure it's above modals\r\n transformOrigin: coords.position === 'bottom' ? 'top left' : 'bottom left'\r\n }}\r\n className={`p-1 w-max ${coords.position === 'top' ? '-translate-y-full' : ''}`}\r\n >\r\n <div className={coords.position === 'top' ? 'mb-2' : ''}>\r\n <Calendar\r\n value={value}\r\n defaultMonth={defaultMonth}\r\n onChange={handleDateSelect}\r\n className=\"w-max shadow-xl border-grey-200 bg-white rounded-lg\"\r\n minDate={minDate}\r\n maxDate={maxDate}\r\n />\r\n </div>\r\n </motion.div>\r\n )}\r\n </AnimatePresence>,\r\n document.body\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default DatePicker;\r\n"],"names":["position","value","CalendarIcon","Calendar"],"mappings":"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"}
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import { jsx, Fragment, jsxs } from "react/jsx-runtime";
|
|
2
|
-
import React__default, { memo, useState, useRef } from "react";
|
|
3
|
-
import { Info } from "lucide-react";
|
|
4
|
-
import { FontAwesomeIcon } from "../../node_modules/@fortawesome/react-fontawesome/dist/index.js";
|
|
5
|
-
import { faEyeSlash, faEye } from "../../node_modules/@fortawesome/free-solid-svg-icons/index.js";
|
|
6
|
-
import { cn } from "../../utils/utils.js";
|
|
7
|
-
import InputErrorMessage from "./InputErrorMessage.js";
|
|
8
|
-
import Tooltip from "./Tooltip.js";
|
|
9
|
-
import RichTextEditor from "./RichTextEditor.js";
|
|
10
|
-
const FormInput = ({
|
|
11
|
-
label,
|
|
12
|
-
icon: Icon,
|
|
13
|
-
type,
|
|
14
|
-
placeholder,
|
|
15
|
-
value,
|
|
16
|
-
onChange,
|
|
17
|
-
onBlur,
|
|
18
|
-
error,
|
|
19
|
-
showPasswordToggle = false,
|
|
20
|
-
required = false,
|
|
21
|
-
description,
|
|
22
|
-
disabled,
|
|
23
|
-
min,
|
|
24
|
-
isTextArea = false,
|
|
25
|
-
className = "",
|
|
26
|
-
inputCon = "",
|
|
27
|
-
inputClassName = "",
|
|
28
|
-
animated = false,
|
|
29
|
-
autoFocus = false,
|
|
30
|
-
tooltip,
|
|
31
|
-
suffix
|
|
32
|
-
}) => {
|
|
33
|
-
const [showPassword, setShowPassword] = useState(false);
|
|
34
|
-
const inputType = showPasswordToggle && showPassword ? "text" : type;
|
|
35
|
-
const [richTextEditorFocus, setRichTextEditorFocus] = useState(false);
|
|
36
|
-
useRef(null);
|
|
37
|
-
const localInputRef = useRef(null);
|
|
38
|
-
const [isMounted, setIsMounted] = useState(false);
|
|
39
|
-
React__default.useEffect(() => {
|
|
40
|
-
setIsMounted(true);
|
|
41
|
-
}, []);
|
|
42
|
-
React__default.useEffect(() => {
|
|
43
|
-
if (autoFocus && localInputRef.current) {
|
|
44
|
-
localInputRef.current.focus();
|
|
45
|
-
}
|
|
46
|
-
}, [autoFocus]);
|
|
47
|
-
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("div", { className: `text-sm space-y-2 ${className} ${animated ? "group" : ""}`, children: [
|
|
48
|
-
label && /* @__PURE__ */ jsx("div", { className: "flex items-center justify-between", children: /* @__PURE__ */ jsxs("div", { className: "w-full flex items-center gap-2", children: [
|
|
49
|
-
/* @__PURE__ */ jsxs("label", { className: "text-sm font-medium text-gray-700 block", children: [
|
|
50
|
-
label,
|
|
51
|
-
" ",
|
|
52
|
-
required && /* @__PURE__ */ jsx("span", { className: "text-error-500", children: "*" })
|
|
53
|
-
] }),
|
|
54
|
-
tooltip && /* @__PURE__ */ jsx(Tooltip, { content: tooltip, placement: "top", children: /* @__PURE__ */ jsx(Info, { className: "h-4 w-4 text-grey-700 hover:text-grey-800 cursor-default transition-colors" }) })
|
|
55
|
-
] }) }),
|
|
56
|
-
isTextArea ? /* @__PURE__ */ jsx("div", { className: "relative space-y-1", children: /* @__PURE__ */ jsx(
|
|
57
|
-
RichTextEditor,
|
|
58
|
-
{
|
|
59
|
-
value: value || "",
|
|
60
|
-
onChange,
|
|
61
|
-
placeholder,
|
|
62
|
-
error: !!error,
|
|
63
|
-
onBlur
|
|
64
|
-
}
|
|
65
|
-
) }) : /* @__PURE__ */ jsxs("div", { className: cn(
|
|
66
|
-
"relative",
|
|
67
|
-
animated ? "bg-white rounded-xl px-3 py-2 transition-all duration-200 hover:shadow-sm focus-within:shadow-md overflow-hidden" : "",
|
|
68
|
-
animated && error ? "ring-2 ring-error-500" : "",
|
|
69
|
-
inputCon,
|
|
70
|
-
error && "rounded-xl"
|
|
71
|
-
), children: [
|
|
72
|
-
Icon && /* @__PURE__ */ jsx(Icon, { className: "absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400 h-5 w-5" }),
|
|
73
|
-
/* @__PURE__ */ jsx(
|
|
74
|
-
"input",
|
|
75
|
-
{
|
|
76
|
-
ref: localInputRef,
|
|
77
|
-
type: inputType,
|
|
78
|
-
placeholder,
|
|
79
|
-
value,
|
|
80
|
-
onChange,
|
|
81
|
-
onKeyDown: (e) => {
|
|
82
|
-
if (type === "number" && ["e", "E", "+", "-", "."].includes(e.key)) {
|
|
83
|
-
e.preventDefault();
|
|
84
|
-
}
|
|
85
|
-
},
|
|
86
|
-
onWheel: (e) => type === "number" && e.currentTarget.blur(),
|
|
87
|
-
onBlur: () => {
|
|
88
|
-
if (typeof value === "string" && type !== "password") {
|
|
89
|
-
const trimmed = (value == null ? void 0 : value.trim()) || "";
|
|
90
|
-
if (trimmed !== value) {
|
|
91
|
-
onChange({ target: { value: trimmed } });
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
if (onBlur) onBlur();
|
|
95
|
-
},
|
|
96
|
-
disabled,
|
|
97
|
-
min,
|
|
98
|
-
required,
|
|
99
|
-
className: cn(
|
|
100
|
-
animated ? `w-full text-[26px] font-medium placeholder-gray-400 outline-none border-gray-300 hover:border-gray-400 focus:outline-none focus:ring-0 p-0 bg-transparent transition-colors duration-200 text-grey-900 cursor-text` : `text-sm w-full ${Icon ? "pl-10" : "pl-3"} py-2 border ${error ? "!border-error-500" : "border-gray-300 hover:border-gray-400"} rounded-lg focus:ring-2 focus:ring-primaryx-500/20 focus:border-primaryx-500 transition-all duration-200 text-gray-900 placeholder-gray-400 bg-white ${showPasswordToggle ? "pr-10" : "pr-3"} ${suffix ? "pr-12" : ""} ${disabled ? "bg-grey-50 cursor-not-allowed" : ""}`,
|
|
101
|
-
inputClassName
|
|
102
|
-
)
|
|
103
|
-
}
|
|
104
|
-
),
|
|
105
|
-
suffix && /* @__PURE__ */ jsx("span", { className: "absolute right-3 top-1/2 -translate-y-1/2 text-md text-gray-900 pointer-events-none uppercase", children: suffix }),
|
|
106
|
-
showPasswordToggle && /* @__PURE__ */ jsx(
|
|
107
|
-
"button",
|
|
108
|
-
{
|
|
109
|
-
type: "button",
|
|
110
|
-
onClick: () => setShowPassword((prev) => !prev),
|
|
111
|
-
className: "absolute right-3 top-1/2 transform -translate-y-1/2 text-sm text-grey-500 hover:text-grey-700 focus:outline-none",
|
|
112
|
-
children: /* @__PURE__ */ jsx(FontAwesomeIcon, { icon: showPassword ? faEyeSlash : faEye })
|
|
113
|
-
}
|
|
114
|
-
),
|
|
115
|
-
animated && /* @__PURE__ */ jsxs("div", { className: "absolute bottom-0 left-0 right-0 h-0.5 overflow-hidden", children: [
|
|
116
|
-
/* @__PURE__ */ jsx("div", { className: "absolute inset-0 bg-grey-300 rounded-full" }),
|
|
117
|
-
/* @__PURE__ */ jsx("div", { className: `absolute inset-0 rounded-full transform origin-left transition-transform duration-300 ease-out ${error ? "" : "bg-primaryx-500 group-hover:scale-x-100 scale-x-0"}` }),
|
|
118
|
-
/* @__PURE__ */ jsx("div", { className: `absolute inset-0 rounded-full transform origin-left transition-transform duration-300 ease-out ${error ? "" : "bg-primaryx-500 group-focus-within:scale-x-100 scale-x-0"}` })
|
|
119
|
-
] })
|
|
120
|
-
] }),
|
|
121
|
-
description && /* @__PURE__ */ jsx("p", { className: "text-xs text-grey-500", children: description }),
|
|
122
|
-
/* @__PURE__ */ jsx(InputErrorMessage, { error: error || "" })
|
|
123
|
-
] }) });
|
|
124
|
-
};
|
|
125
|
-
const FormInput$1 = memo(FormInput);
|
|
126
|
-
export {
|
|
127
|
-
FormInput$1 as default
|
|
128
|
-
};
|
|
129
|
-
//# sourceMappingURL=FormInput.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FormInput.js","sources":["../../../src/components/ui/FormInput.tsx"],"sourcesContent":["'use client'\r\n\r\nimport React, { memo, useState, useRef } from 'react';\r\nimport { LucideIcon, Info } from 'lucide-react';\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faEye, faEyeSlash } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { cn } from '@/utils/utils';\r\nimport InputErrorMessage from '@/components/ui/InputErrorMessage';\r\nimport Tooltip from '@/components/ui/Tooltip';\r\nimport RichTextEditor from '@/components/ui/RichTextEditor';\r\n\r\ninterface FormInputProps {\r\n label?: string;\r\n icon?: LucideIcon;\r\n type: string;\r\n placeholder: string;\r\n value: string;\r\n onChange: (e: React.ChangeEvent<HTMLInputElement> | string) => void;\r\n onBlur?: () => void;\r\n error?: string;\r\n showPasswordToggle?: boolean;\r\n required?: boolean;\r\n description?: string;\r\n disabled?: boolean;\r\n min?: number;\r\n isTextArea?: boolean;\r\n className?: string;\r\n inputCon?: string;\r\n inputClassName?: string;\r\n animated?: boolean;\r\n autoFocus?: boolean;\r\n tooltip?: string;\r\n suffix?: string;\r\n}\r\n\r\nconst FormInput = (\r\n {\r\n label,\r\n icon: Icon,\r\n type,\r\n placeholder,\r\n value,\r\n onChange,\r\n onBlur,\r\n error,\r\n showPasswordToggle = false,\r\n required = false,\r\n description,\r\n disabled,\r\n min,\r\n isTextArea = false,\r\n className = \"\",\r\n inputCon = \"\",\r\n inputClassName = \"\",\r\n animated = false,\r\n autoFocus = false,\r\n tooltip,\r\n suffix,\r\n }: FormInputProps\r\n) => {\r\n const [showPassword, setShowPassword] = useState(false);\r\n const inputType = showPasswordToggle && showPassword ? \"text\" : type;\r\n const [richTextEditorFocus, setRichTextEditorFocus] = useState(false);\r\n const editorRef = useRef<HTMLDivElement | null>(null);\r\n const localInputRef = useRef<HTMLInputElement>(null);\r\n const [isMounted, setIsMounted] = useState(false);\r\n\r\n React.useEffect(() => {\r\n setIsMounted(true);\r\n }, []);\r\n\r\n // Auto-focus logic\r\n React.useEffect(() => {\r\n if (autoFocus && localInputRef.current) {\r\n localInputRef.current.focus();\r\n }\r\n }, [autoFocus]);\r\n\r\n return (<>\r\n <div className={`text-sm space-y-2 ${className} ${animated ? 'group' : ''}`}>\r\n {\r\n label &&\r\n <div className=\"flex items-center justify-between\">\r\n <div className=\"w-full flex items-center gap-2\">\r\n <label className=\"text-sm font-medium text-gray-700 block\">\r\n {label} {required && <span className=\"text-error-500\">*</span>}\r\n </label>\r\n {tooltip && (\r\n <Tooltip content={tooltip} placement=\"top\">\r\n <Info className=\"h-4 w-4 text-grey-700 hover:text-grey-800 cursor-default transition-colors\" />\r\n </Tooltip>\r\n )}\r\n </div>\r\n </div>\r\n }\r\n\r\n {isTextArea ? (\r\n <div className=\"relative space-y-1\">\r\n <RichTextEditor\r\n value={value || ''}\r\n onChange={onChange}\r\n placeholder={placeholder}\r\n error={!!error}\r\n onBlur={onBlur}\r\n />\r\n </div>\r\n ) : (\r\n <div className={cn(\r\n \"relative\",\r\n animated ? 'bg-white rounded-xl px-3 py-2 transition-all duration-200 hover:shadow-sm focus-within:shadow-md overflow-hidden' : '',\r\n animated && error ? 'ring-2 ring-error-500' : '',\r\n inputCon,\r\n error && 'rounded-xl'\r\n )}>\r\n {Icon && <Icon className=\"absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400 h-5 w-5\" />}\r\n\r\n <input\r\n ref={localInputRef}\r\n type={inputType}\r\n placeholder={placeholder}\r\n value={value}\r\n onChange={onChange as (e: React.ChangeEvent<HTMLInputElement>) => void}\r\n onKeyDown={(e) => {\r\n if (type === \"number\" && [\"e\", \"E\", \"+\", \"-\", \".\"].includes(e.key)) {\r\n e.preventDefault();\r\n }\r\n }}\r\n onWheel={(e) => type === \"number\" && e.currentTarget.blur()}\r\n onBlur={() => {\r\n if (typeof value === 'string' && type !== 'password') {\r\n const trimmed = value?.trim() || \"\";\r\n if (trimmed !== value) {\r\n onChange({ target: { value: trimmed } } as any);\r\n }\r\n }\r\n if (onBlur) onBlur();\r\n }}\r\n disabled={disabled}\r\n min={min}\r\n required={required}\r\n className={\r\n cn(animated ?\r\n `w-full text-[26px] font-medium placeholder-gray-400 outline-none border-gray-300 hover:border-gray-400 focus:outline-none focus:ring-0 p-0 bg-transparent transition-colors duration-200 text-grey-900 cursor-text`\r\n : `text-sm w-full ${Icon ? 'pl-10' : 'pl-3'} py-2 border ${error ? '!border-error-500' : 'border-gray-300 hover:border-gray-400'} rounded-lg focus:ring-2 focus:ring-primaryx-500/20 focus:border-primaryx-500 transition-all duration-200 text-gray-900 placeholder-gray-400 bg-white ${showPasswordToggle ? 'pr-10' : 'pr-3'} ${suffix ? 'pr-12' : ''} ${disabled ? 'bg-grey-50 cursor-not-allowed' : ''}`,\r\n inputClassName\r\n )\r\n }\r\n />\r\n\r\n {suffix && (\r\n <span className=\"absolute right-3 top-1/2 -translate-y-1/2 text-md text-gray-900 pointer-events-none uppercase\">\r\n {suffix}\r\n </span>\r\n )}\r\n\r\n {showPasswordToggle && (\r\n <button\r\n type=\"button\"\r\n onClick={() => setShowPassword(prev => !prev)}\r\n className=\"absolute right-3 top-1/2 transform -translate-y-1/2 text-sm text-grey-500 hover:text-grey-700 focus:outline-none\"\r\n >\r\n <FontAwesomeIcon icon={showPassword ? faEyeSlash : faEye} />\r\n </button>\r\n )}\r\n\r\n {animated && (\r\n <div className=\"absolute bottom-0 left-0 right-0 h-0.5 overflow-hidden\">\r\n <div className=\"absolute inset-0 bg-grey-300 rounded-full\" />\r\n <div className={`absolute inset-0 rounded-full transform origin-left transition-transform duration-300 ease-out ${error ? '' : 'bg-primaryx-500 group-hover:scale-x-100 scale-x-0'}`} />\r\n <div className={`absolute inset-0 rounded-full transform origin-left transition-transform duration-300 ease-out ${error ? '' : 'bg-primaryx-500 group-focus-within:scale-x-100 scale-x-0'}`} />\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n {description && <p className=\"text-xs text-grey-500\">{description}</p>}\r\n <InputErrorMessage error={error || \"\"} />\r\n </div>\r\n </>);\r\n};\r\n\r\nexport default memo(FormInput);\r\n"],"names":["React"],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { cn } from "../../utils/cn.js";
|
|
3
|
-
import { AnimatePresence, motion } from "framer-motion";
|
|
4
|
-
import { memo } from "react";
|
|
5
|
-
const InputErrorMessage = ({ error, className }) => {
|
|
6
|
-
return /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(AnimatePresence, { children: error && /* @__PURE__ */ jsx(
|
|
7
|
-
motion.div,
|
|
8
|
-
{
|
|
9
|
-
initial: { opacity: 0, y: -10, height: 0 },
|
|
10
|
-
animate: { opacity: 1, y: 0, height: "auto" },
|
|
11
|
-
exit: { opacity: 0, y: -10, height: 0 },
|
|
12
|
-
className: cn("overflow-hidden", className),
|
|
13
|
-
children: /* @__PURE__ */ jsx("p", { className: "text-xs font-medium text-error-600", children: error })
|
|
14
|
-
}
|
|
15
|
-
) }) });
|
|
16
|
-
};
|
|
17
|
-
const InputErrorMessage$1 = memo(InputErrorMessage);
|
|
18
|
-
export {
|
|
19
|
-
InputErrorMessage$1 as default
|
|
20
|
-
};
|
|
21
|
-
//# sourceMappingURL=InputErrorMessage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InputErrorMessage.js","sources":["../../../src/components/ui/InputErrorMessage.tsx"],"sourcesContent":["import { cn } from '../../utils/cn'\r\nimport { AnimatePresence, motion } from 'framer-motion'\r\nimport React, { memo } from 'react'\r\n\r\nconst InputErrorMessage = ({ error, className }: { error: string; className?: string; }) => {\r\n return (\r\n <div>\r\n <AnimatePresence>\r\n {error &&\r\n <motion.div\r\n initial={{ opacity: 0, y: -10, height: 0 }}\r\n animate={{ opacity: 1, y: 0, height: \"auto\" }}\r\n exit={{ opacity: 0, y: -10, height: 0 }}\r\n className={cn(\"overflow-hidden\", className)}\r\n >\r\n <p className=\"text-xs font-medium text-error-600\">\r\n {error}\r\n </p>\r\n </motion.div>\r\n }\r\n </AnimatePresence>\r\n </div>\r\n )\r\n}\r\n\r\nexport default memo(InputErrorMessage)\r\n"],"names":[],"mappings":";;;;AAIA,MAAM,oBAAoB,CAAC,EAAE,OAAO,gBAAwD;AACxF,SACI,oBAAC,OAAA,EACG,UAAA,oBAAC,iBAAA,EACI,UAAA,SACG;AAAA,IAAC,OAAO;AAAA,IAAP;AAAA,MACG,SAAS,EAAE,SAAS,GAAG,GAAG,KAAK,QAAQ,EAAA;AAAA,MACvC,SAAS,EAAE,SAAS,GAAG,GAAG,GAAG,QAAQ,OAAA;AAAA,MACrC,MAAM,EAAE,SAAS,GAAG,GAAG,KAAK,QAAQ,EAAA;AAAA,MACpC,WAAW,GAAG,mBAAmB,SAAS;AAAA,MAE1C,UAAA,oBAAC,KAAA,EAAE,WAAU,sCACR,UAAA,MAAA,CACL;AAAA,IAAA;AAAA,EAAA,GAGZ,EAAA,CACJ;AAER;AAEA,MAAA,sBAAe,KAAK,iBAAiB;"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { cn } from "../../../lib/utils.js";
|
|
3
|
-
import { Transition, Dialog } from "@headlessui/react";
|
|
4
|
-
import { memo, Fragment } from "react";
|
|
5
|
-
const Modal = ({
|
|
6
|
-
children,
|
|
7
|
-
open,
|
|
8
|
-
handleClose,
|
|
9
|
-
className,
|
|
10
|
-
overlayClassName,
|
|
11
|
-
panelClassName,
|
|
12
|
-
closeOnOutsideClick = true,
|
|
13
|
-
closeOnEscape = true,
|
|
14
|
-
applyDefaultPanel = false
|
|
15
|
-
}) => {
|
|
16
|
-
return /* @__PURE__ */ jsx(Transition, { appear: true, show: open, as: Fragment, children: /* @__PURE__ */ jsxs(
|
|
17
|
-
Dialog,
|
|
18
|
-
{
|
|
19
|
-
as: "div",
|
|
20
|
-
className: cn("relative z-[10000]", className),
|
|
21
|
-
onClose: () => {
|
|
22
|
-
},
|
|
23
|
-
onKeyDown: (e) => {
|
|
24
|
-
if (e.key === "Escape" && closeOnEscape) {
|
|
25
|
-
handleClose();
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
children: [
|
|
29
|
-
/* @__PURE__ */ jsx(
|
|
30
|
-
Transition.Child,
|
|
31
|
-
{
|
|
32
|
-
as: Fragment,
|
|
33
|
-
enter: "ease-out duration-300",
|
|
34
|
-
enterFrom: "opacity-0",
|
|
35
|
-
enterTo: "opacity-100",
|
|
36
|
-
leave: "ease-in duration-200",
|
|
37
|
-
leaveFrom: "opacity-100",
|
|
38
|
-
leaveTo: "opacity-0",
|
|
39
|
-
children: /* @__PURE__ */ jsx(
|
|
40
|
-
"div",
|
|
41
|
-
{
|
|
42
|
-
className: cn("fixed inset-0 bg-black/40 backdrop-blur-sm", overlayClassName),
|
|
43
|
-
onClick: () => {
|
|
44
|
-
if (closeOnOutsideClick) {
|
|
45
|
-
handleClose();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
)
|
|
50
|
-
}
|
|
51
|
-
),
|
|
52
|
-
applyDefaultPanel ? /* @__PURE__ */ jsx("div", { className: "fixed inset-0 overflow-y-auto", children: /* @__PURE__ */ jsx("div", { className: "flex min-h-full items-center justify-center p-4 text-center", children: /* @__PURE__ */ jsx(
|
|
53
|
-
Transition.Child,
|
|
54
|
-
{
|
|
55
|
-
as: Fragment,
|
|
56
|
-
enter: "ease-out duration-300",
|
|
57
|
-
enterFrom: "opacity-0 scale-95",
|
|
58
|
-
enterTo: "opacity-100 scale-100",
|
|
59
|
-
leave: "ease-in duration-200",
|
|
60
|
-
leaveFrom: "opacity-100 scale-100",
|
|
61
|
-
leaveTo: "opacity-0 scale-95",
|
|
62
|
-
children: /* @__PURE__ */ jsx(Dialog.Panel, { className: cn("w-full max-w-2xl transform rounded-2xl overflow-x-hidden bg-white p-8 text-left align-middle shadow-xl transition-all border border-grey-100", panelClassName), children })
|
|
63
|
-
}
|
|
64
|
-
) }) }) : children
|
|
65
|
-
]
|
|
66
|
-
}
|
|
67
|
-
) });
|
|
68
|
-
};
|
|
69
|
-
const Modal$1 = memo(Modal);
|
|
70
|
-
export {
|
|
71
|
-
Modal$1 as default
|
|
72
|
-
};
|
|
73
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/ui/Modal/index.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\r\nimport { Dialog, Transition } from \"@headlessui/react\";\r\nimport { Fragment, memo, ReactNode } from \"react\";\r\n\r\nconst Modal = ({\r\n children,\r\n open,\r\n handleClose,\r\n className,\r\n overlayClassName,\r\n panelClassName,\r\n closeOnOutsideClick = true,\r\n closeOnEscape = true,\r\n applyDefaultPanel = false,\r\n}: {\r\n children: ReactNode,\r\n open: boolean,\r\n handleClose: () => void,\r\n className?: string\r\n overlayClassName?: string\r\n panelClassName?: string\r\n closeOnOutsideClick?: boolean\r\n closeOnEscape?: boolean\r\n applyDefaultPanel?: boolean\r\n}) => {\r\n return (\r\n <Transition appear show={open} as={Fragment}>\r\n <Dialog\r\n as=\"div\"\r\n className={cn(\"relative z-[10000]\", className)}\r\n onClose={() => { }}\r\n onKeyDown={(e) => {\r\n if (e.key === 'Escape' && closeOnEscape) {\r\n handleClose();\r\n }\r\n }}\r\n >\r\n <Transition.Child\r\n as={Fragment}\r\n enter=\"ease-out duration-300\"\r\n enterFrom=\"opacity-0\"\r\n enterTo=\"opacity-100\"\r\n leave=\"ease-in duration-200\"\r\n leaveFrom=\"opacity-100\"\r\n leaveTo=\"opacity-0\"\r\n >\r\n <div\r\n className={cn(\"fixed inset-0 bg-black/40 backdrop-blur-sm\", overlayClassName)}\r\n onClick={() => {\r\n if (closeOnOutsideClick) {\r\n handleClose();\r\n }\r\n }}\r\n />\r\n </Transition.Child>\r\n\r\n {applyDefaultPanel ? (\r\n <div className=\"fixed inset-0 overflow-y-auto\">\r\n <div className=\"flex min-h-full items-center justify-center p-4 text-center\">\r\n <Transition.Child\r\n as={Fragment}\r\n enter=\"ease-out duration-300\"\r\n enterFrom=\"opacity-0 scale-95\"\r\n enterTo=\"opacity-100 scale-100\"\r\n leave=\"ease-in duration-200\"\r\n leaveFrom=\"opacity-100 scale-100\"\r\n leaveTo=\"opacity-0 scale-95\"\r\n >\r\n <Dialog.Panel className={cn(\"w-full max-w-2xl transform rounded-2xl overflow-x-hidden bg-white p-8 text-left align-middle shadow-xl transition-all border border-grey-100\", panelClassName)}>\r\n {children}\r\n </Dialog.Panel>\r\n </Transition.Child>\r\n </div>\r\n </div>\r\n ) : children}\r\n </Dialog>\r\n </Transition>)\r\n}\r\n\r\nexport default memo(Modal)\r\n"],"names":[],"mappings":";;;;AAIA,MAAM,QAAQ,CAAC;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,sBAAsB;AAAA,EACtB,gBAAgB;AAAA,EAChB,oBAAoB;AACxB,MAUM;AACF,6BACK,YAAA,EAAW,QAAM,MAAC,MAAM,MAAM,IAAI,UAC/B,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,IAAG;AAAA,MACH,WAAW,GAAG,sBAAsB,SAAS;AAAA,MAC7C,SAAS,MAAM;AAAA,MAAE;AAAA,MACjB,WAAW,CAAC,MAAM;AACd,YAAI,EAAE,QAAQ,YAAY,eAAe;AACrC,sBAAA;AAAA,QACJ;AAAA,MACJ;AAAA,MAEA,UAAA;AAAA,QAAA;AAAA,UAAC,WAAW;AAAA,UAAX;AAAA,YACG,IAAI;AAAA,YACJ,OAAM;AAAA,YACN,WAAU;AAAA,YACV,SAAQ;AAAA,YACR,OAAM;AAAA,YACN,WAAU;AAAA,YACV,SAAQ;AAAA,YAER,UAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACG,WAAW,GAAG,8CAA8C,gBAAgB;AAAA,gBAC5E,SAAS,MAAM;AACX,sBAAI,qBAAqB;AACrB,gCAAA;AAAA,kBACJ;AAAA,gBACJ;AAAA,cAAA;AAAA,YAAA;AAAA,UACJ;AAAA,QAAA;AAAA,QAGH,wCACI,OAAA,EAAI,WAAU,iCACX,UAAA,oBAAC,OAAA,EAAI,WAAU,+DACX,UAAA;AAAA,UAAC,WAAW;AAAA,UAAX;AAAA,YACG,IAAI;AAAA,YACJ,OAAM;AAAA,YACN,WAAU;AAAA,YACV,SAAQ;AAAA,YACR,OAAM;AAAA,YACN,WAAU;AAAA,YACV,SAAQ;AAAA,YAER,UAAA,oBAAC,OAAO,OAAP,EAAa,WAAW,GAAG,gJAAgJ,cAAc,GACrL,SAAA,CACL;AAAA,UAAA;AAAA,QAAA,EACJ,CACJ,GACJ,IACA;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAEZ;AACR;AAEA,MAAA,UAAe,KAAK,KAAK;"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import React__default from "react";
|
|
3
|
-
import { cn } from "../../lib/utils.js";
|
|
4
|
-
const Radio = React__default.forwardRef(
|
|
5
|
-
({ className, checked, ...props }, ref) => {
|
|
6
|
-
return /* @__PURE__ */ jsxs("div", { className: "relative flex items-center justify-center shrink-0", children: [
|
|
7
|
-
/* @__PURE__ */ jsx(
|
|
8
|
-
"input",
|
|
9
|
-
{
|
|
10
|
-
type: "radio",
|
|
11
|
-
className: cn("peer sr-only", className),
|
|
12
|
-
ref,
|
|
13
|
-
checked,
|
|
14
|
-
...props
|
|
15
|
-
}
|
|
16
|
-
),
|
|
17
|
-
/* @__PURE__ */ jsx(
|
|
18
|
-
"div",
|
|
19
|
-
{
|
|
20
|
-
className: cn(
|
|
21
|
-
"w-4 h-4 rounded-full bg-white transition-all duration-200",
|
|
22
|
-
checked ? "border border-primaryx-500" : "input-border",
|
|
23
|
-
"peer-focus-visible:ring-2 peer-focus-visible:ring-primaryx-500 peer-focus-visible:ring-offset-2"
|
|
24
|
-
)
|
|
25
|
-
}
|
|
26
|
-
),
|
|
27
|
-
checked && /* @__PURE__ */ jsx("div", { className: "absolute w-1.5 h-1.5 rounded-full bg-primaryx-500 pointer-events-none" })
|
|
28
|
-
] });
|
|
29
|
-
}
|
|
30
|
-
);
|
|
31
|
-
Radio.displayName = "Radio";
|
|
32
|
-
export {
|
|
33
|
-
Radio
|
|
34
|
-
};
|
|
35
|
-
//# sourceMappingURL=Radio.js.map
|