@123usmanhaider321/ui 0.1.8 → 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.
Files changed (545) hide show
  1. package/README.md +416 -31
  2. package/dist/images/icon/1LINK.svg +50 -0
  3. package/dist/images/icon/CreditCard.svg +83 -0
  4. package/dist/images/icon/Easypaisa.png +0 -0
  5. package/dist/images/icon/MobileWallet.png +0 -0
  6. package/dist/images/icon/Raast-Logo.png +0 -0
  7. package/dist/images/icon/VISA.png +0 -0
  8. package/dist/images/icon/add-circle-1.svg +5 -0
  9. package/dist/images/icon/check-circle-broken.svg +3 -0
  10. package/dist/images/icon/close-circle.svg +5 -0
  11. package/dist/images/icon/jazzcash.png +0 -0
  12. package/dist/images/icon/loading_icon.json +3347 -0
  13. package/dist/images/icon/mastercard-logo.webp +0 -0
  14. package/dist/images/icon/paymo.jpeg +0 -0
  15. package/dist/images/icon/preview-svgrepo-com.svg +36 -0
  16. package/dist/images/icon/trash.svg +7 -0
  17. package/dist/images/icon/unionpay-logo.svg +9 -0
  18. package/dist/index-87FQZHOs.js +11119 -0
  19. package/dist/index-87FQZHOs.js.map +1 -0
  20. package/dist/index-Tl9g213f.js +60475 -0
  21. package/dist/index-Tl9g213f.js.map +1 -0
  22. package/dist/index.d.ts +1 -10
  23. package/dist/index.es-CpgTaa1Y.js +16734 -0
  24. package/dist/index.es-CpgTaa1Y.js.map +1 -0
  25. package/dist/index.js +40 -12
  26. package/dist/index.js.map +1 -1
  27. package/dist/loading_icon-n5H5dQBl.js +3375 -0
  28. package/dist/loading_icon-n5H5dQBl.js.map +1 -0
  29. package/dist/src/components/Alert/ErrorAlert.d.ts +6 -0
  30. package/dist/src/components/Alert/SuccessAlert.d.ts +6 -0
  31. package/dist/{components → src/components}/FormBuilder/DiscountInput.d.ts +3 -6
  32. package/dist/{components → src/components}/FormBuilder/FormBuilder.d.ts +2 -11
  33. package/dist/{components → src/components}/FormBuilder/QuestionCard.d.ts +0 -5
  34. package/dist/{components → src/components}/FormBuilder/QuestionEditor.d.ts +0 -5
  35. package/dist/{components → src/components}/FormBuilder/SortableQuestionList.d.ts +0 -5
  36. package/dist/src/components/FormBuilder/questionIcons.d.ts +5 -0
  37. package/dist/{components/EventAddForm → src/components/NewAddEvent}/AddEventLayout.d.ts +2 -1
  38. package/dist/{components/EventAddForm → src/components/NewAddEvent}/AddEventStepper.d.ts +2 -2
  39. package/dist/{components/EventAddForm → src/components/NewAddEvent}/common/ConfirmationModal.d.ts +1 -1
  40. package/dist/src/components/NewAddEvent/components/EventSubmissionConfirmationModal.d.ts +14 -0
  41. package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/StepTwo/TicketTierSection.d.ts +1 -1
  42. package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/TicketTierForm.d.ts +1 -1
  43. package/dist/{components/EventAddForm → src/components/NewAddEvent}/hooks/useStepperForm.d.ts +22 -22
  44. package/dist/{components/EventAddForm → src/components/NewAddEvent}/hooks/useTicketTierForm.d.ts +63 -15
  45. package/dist/src/components/NewAddEvent/schemas/step1.d.ts +211 -0
  46. package/dist/src/components/NewAddEvent/schemas/step2.d.ts +411 -0
  47. package/dist/{components/EventAddForm → src/components/NewAddEvent}/schemas/utils.d.ts +8 -2
  48. package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/IndividualFormStep.d.ts +1 -1
  49. package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/SocialProfilesStep.d.ts +1 -1
  50. package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/TeamFormStep.d.ts +1 -1
  51. package/dist/src/components/Spinner/spinner.d.ts +4 -0
  52. package/dist/src/components/TicketlyUIProvider.d.ts +35 -0
  53. package/dist/src/components/common/Loader/index.d.ts +8 -0
  54. package/dist/src/components/common/Modals/ConfirmationModal.d.ts +7 -0
  55. package/dist/{components/FormInput → src/components/ui}/FormInput.d.ts +1 -1
  56. package/dist/src/components/ui/Loader.d.ts +4 -0
  57. package/dist/{components/Button/Button.d.ts → src/components/ui/button.d.ts} +1 -1
  58. package/dist/src/index.d.ts +10 -0
  59. package/dist/{lib → src/lib}/actions.d.ts +0 -126
  60. package/dist/src/lib/dom-utils.d.ts +2 -0
  61. package/dist/src/lib/storage-utils.d.ts +5 -0
  62. package/dist/src/lib/types.d.ts +258 -0
  63. package/dist/src/redux/baseQuery.d.ts +16 -0
  64. package/dist/{services → src/redux/features}/eventApi.d.ts +1053 -1745
  65. package/dist/src/redux/features/globalSlice.d.ts +17 -0
  66. package/dist/{services → src/redux/features/single-event}/single-event-api.d.ts +856 -1190
  67. package/dist/src/redux/types.d.ts +2 -0
  68. package/dist/src/services/library-services.d.ts +15 -0
  69. package/dist/src/services/remote-config.d.ts +27 -0
  70. package/dist/{services → src/services}/utils.d.ts +1 -1
  71. package/dist/src/theme/colors.d.ts +127 -0
  72. package/dist/src/theme/typography.d.ts +13 -0
  73. package/dist/src/types/api.d.ts +18 -0
  74. package/dist/style.css +2984 -0
  75. package/dist/styles.css +3758 -4012
  76. package/package.json +78 -68
  77. package/dist/_virtual/_commonjsHelpers.js +0 -9
  78. package/dist/_virtual/_commonjsHelpers.js.map +0 -1
  79. package/dist/_virtual/customParseFormat.js +0 -5
  80. package/dist/_virtual/customParseFormat.js.map +0 -1
  81. package/dist/_virtual/dayjs.min.js +0 -5
  82. package/dist/_virtual/dayjs.min.js.map +0 -1
  83. package/dist/_virtual/duration.js +0 -5
  84. package/dist/_virtual/duration.js.map +0 -1
  85. package/dist/_virtual/index.js +0 -5
  86. package/dist/_virtual/index.js.map +0 -1
  87. package/dist/_virtual/isBetween.js +0 -5
  88. package/dist/_virtual/isBetween.js.map +0 -1
  89. package/dist/_virtual/relativeTime.js +0 -5
  90. package/dist/_virtual/relativeTime.js.map +0 -1
  91. package/dist/_virtual/use-sync-external-store-shim.development.js +0 -5
  92. package/dist/_virtual/use-sync-external-store-shim.development.js.map +0 -1
  93. package/dist/_virtual/use-sync-external-store-shim.production.js +0 -5
  94. package/dist/_virtual/use-sync-external-store-shim.production.js.map +0 -1
  95. package/dist/_virtual/with-selector.development.js +0 -5
  96. package/dist/_virtual/with-selector.development.js.map +0 -1
  97. package/dist/_virtual/with-selector.js +0 -5
  98. package/dist/_virtual/with-selector.js.map +0 -1
  99. package/dist/_virtual/with-selector.production.js +0 -5
  100. package/dist/_virtual/with-selector.production.js.map +0 -1
  101. package/dist/components/Alert/Alert.js +0 -51
  102. package/dist/components/Alert/Alert.js.map +0 -1
  103. package/dist/components/Button/Button.js +0 -52
  104. package/dist/components/Button/Button.js.map +0 -1
  105. package/dist/components/Button/Button.test.d.ts +0 -1
  106. package/dist/components/Button/index.d.ts +0 -1
  107. package/dist/components/Checkbox/Checkbox.js +0 -50
  108. package/dist/components/Checkbox/Checkbox.js.map +0 -1
  109. package/dist/components/Checkbox/Checkbox.test.d.ts +0 -1
  110. package/dist/components/Checkbox/index.d.ts +0 -1
  111. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +0 -25
  112. package/dist/components/CheckboxGroup/CheckboxGroup.js +0 -99
  113. package/dist/components/CheckboxGroup/CheckboxGroup.js.map +0 -1
  114. package/dist/components/ConfirmationModal/ConfirmationModal.d.ts +0 -15
  115. package/dist/components/ConfirmationModal/ConfirmationModal.js +0 -136
  116. package/dist/components/ConfirmationModal/ConfirmationModal.js.map +0 -1
  117. package/dist/components/ConfirmationModal/index.d.ts +0 -2
  118. package/dist/components/CustomSelect/CustomSelect.js +0 -259
  119. package/dist/components/CustomSelect/CustomSelect.js.map +0 -1
  120. package/dist/components/EventAddForm/AddEventLayout.js +0 -227
  121. package/dist/components/EventAddForm/AddEventLayout.js.map +0 -1
  122. package/dist/components/EventAddForm/AddEventStepper.js +0 -719
  123. package/dist/components/EventAddForm/AddEventStepper.js.map +0 -1
  124. package/dist/components/EventAddForm/common/ConfirmationModal.js +0 -136
  125. package/dist/components/EventAddForm/common/ConfirmationModal.js.map +0 -1
  126. package/dist/components/EventAddForm/common/DescriptionModal.js +0 -70
  127. package/dist/components/EventAddForm/common/DescriptionModal.js.map +0 -1
  128. package/dist/components/EventAddForm/components/AnimatedBackground.d.ts +0 -8
  129. package/dist/components/EventAddForm/components/ApprovalConfirmationModal.d.ts +0 -7
  130. package/dist/components/EventAddForm/components/CheckboxGroup.js +0 -92
  131. package/dist/components/EventAddForm/components/CheckboxGroup.js.map +0 -1
  132. package/dist/components/EventAddForm/components/CustomMeetingForm.js +0 -237
  133. package/dist/components/EventAddForm/components/CustomMeetingForm.js.map +0 -1
  134. package/dist/components/EventAddForm/components/DateTimeField.js +0 -173
  135. package/dist/components/EventAddForm/components/DateTimeField.js.map +0 -1
  136. package/dist/components/EventAddForm/components/EventSubmissionConfirmationModal.d.ts +0 -33
  137. package/dist/components/EventAddForm/components/EventSubmissionConfirmationModal.js +0 -366
  138. package/dist/components/EventAddForm/components/EventSubmissionConfirmationModal.js.map +0 -1
  139. package/dist/components/EventAddForm/components/FileUpload.js +0 -412
  140. package/dist/components/EventAddForm/components/FileUpload.js.map +0 -1
  141. package/dist/components/EventAddForm/components/FormBuilderProceedModal.js +0 -197
  142. package/dist/components/EventAddForm/components/FormBuilderProceedModal.js.map +0 -1
  143. package/dist/components/EventAddForm/components/GoogleMapsAutocompleteInput.js +0 -1179
  144. package/dist/components/EventAddForm/components/GoogleMapsAutocompleteInput.js.map +0 -1
  145. package/dist/components/EventAddForm/components/InputField.d.ts +0 -15
  146. package/dist/components/EventAddForm/components/RadioGroupButton.d.ts +0 -14
  147. package/dist/components/EventAddForm/components/SelectField.d.ts +0 -19
  148. package/dist/components/EventAddForm/components/SingleDateTimeInput.js +0 -102
  149. package/dist/components/EventAddForm/components/SingleDateTimeInput.js.map +0 -1
  150. package/dist/components/EventAddForm/components/StepTwo/CustomFormSection.js +0 -277
  151. package/dist/components/EventAddForm/components/StepTwo/CustomFormSection.js.map +0 -1
  152. package/dist/components/EventAddForm/components/StepTwo/TicketTierSection.js +0 -148
  153. package/dist/components/EventAddForm/components/StepTwo/TicketTierSection.js.map +0 -1
  154. package/dist/components/EventAddForm/components/TicketTierForm.js +0 -418
  155. package/dist/components/EventAddForm/components/TicketTierForm.js.map +0 -1
  156. package/dist/components/EventAddForm/components/TicketTypeSelection.js +0 -93
  157. package/dist/components/EventAddForm/components/TicketTypeSelection.js.map +0 -1
  158. package/dist/components/EventAddForm/hooks/useStepperForm.js +0 -371
  159. package/dist/components/EventAddForm/hooks/useStepperForm.js.map +0 -1
  160. package/dist/components/EventAddForm/hooks/useTicketTierForm.js +0 -237
  161. package/dist/components/EventAddForm/hooks/useTicketTierForm.js.map +0 -1
  162. package/dist/components/EventAddForm/index.d.ts +0 -3
  163. package/dist/components/EventAddForm/index.js +0 -41
  164. package/dist/components/EventAddForm/index.js.map +0 -1
  165. package/dist/components/EventAddForm/schemas/index.d.ts +0 -2
  166. package/dist/components/EventAddForm/schemas/step1.d.ts +0 -47
  167. package/dist/components/EventAddForm/schemas/step1.js +0 -135
  168. package/dist/components/EventAddForm/schemas/step1.js.map +0 -1
  169. package/dist/components/EventAddForm/schemas/step2.d.ts +0 -138
  170. package/dist/components/EventAddForm/schemas/step2.js +0 -94
  171. package/dist/components/EventAddForm/schemas/step2.js.map +0 -1
  172. package/dist/components/EventAddForm/schemas/utils.js +0 -28
  173. package/dist/components/EventAddForm/schemas/utils.js.map +0 -1
  174. package/dist/components/EventAddForm/steps/IndividualFormStep.js +0 -85
  175. package/dist/components/EventAddForm/steps/IndividualFormStep.js.map +0 -1
  176. package/dist/components/EventAddForm/steps/SocialProfilesStep.js +0 -123
  177. package/dist/components/EventAddForm/steps/SocialProfilesStep.js.map +0 -1
  178. package/dist/components/EventAddForm/steps/StepOne.js +0 -462
  179. package/dist/components/EventAddForm/steps/StepOne.js.map +0 -1
  180. package/dist/components/EventAddForm/steps/StepTwo.js +0 -173
  181. package/dist/components/EventAddForm/steps/StepTwo.js.map +0 -1
  182. package/dist/components/EventAddForm/steps/TeamFormStep.js +0 -13
  183. package/dist/components/EventAddForm/steps/TeamFormStep.js.map +0 -1
  184. package/dist/components/FormBuilder/CategoryList.js +0 -242
  185. package/dist/components/FormBuilder/CategoryList.js.map +0 -1
  186. package/dist/components/FormBuilder/DiscountInput.js +0 -366
  187. package/dist/components/FormBuilder/DiscountInput.js.map +0 -1
  188. package/dist/components/FormBuilder/FormBuilder.js +0 -918
  189. package/dist/components/FormBuilder/FormBuilder.js.map +0 -1
  190. package/dist/components/FormBuilder/OptionList.js +0 -120
  191. package/dist/components/FormBuilder/OptionList.js.map +0 -1
  192. package/dist/components/FormBuilder/PaymentPreview.d.ts +0 -12
  193. package/dist/components/FormBuilder/PaymentPreview.js +0 -70
  194. package/dist/components/FormBuilder/PaymentPreview.js.map +0 -1
  195. package/dist/components/FormBuilder/PreviewInput.d.ts +0 -10
  196. package/dist/components/FormBuilder/PreviewInput.js +0 -143
  197. package/dist/components/FormBuilder/PreviewInput.js.map +0 -1
  198. package/dist/components/FormBuilder/QuestionCard.js +0 -252
  199. package/dist/components/FormBuilder/QuestionCard.js.map +0 -1
  200. package/dist/components/FormBuilder/QuestionEditor.js +0 -166
  201. package/dist/components/FormBuilder/QuestionEditor.js.map +0 -1
  202. package/dist/components/FormBuilder/RequiredToggle.js +0 -43
  203. package/dist/components/FormBuilder/RequiredToggle.js.map +0 -1
  204. package/dist/components/FormBuilder/SortableQuestionList.js +0 -137
  205. package/dist/components/FormBuilder/SortableQuestionList.js.map +0 -1
  206. package/dist/components/FormBuilder/index.d.ts +0 -4
  207. package/dist/components/FormBuilder/utils.js +0 -229
  208. package/dist/components/FormBuilder/utils.js.map +0 -1
  209. package/dist/components/FormInput/FormInput.js +0 -126
  210. package/dist/components/FormInput/FormInput.js.map +0 -1
  211. package/dist/components/FormInput/FormInput.test.d.ts +0 -1
  212. package/dist/components/FormInput/index.d.ts +0 -2
  213. package/dist/components/ImageCropModal/index.js +0 -464
  214. package/dist/components/ImageCropModal/index.js.map +0 -1
  215. package/dist/components/InformationPopover/InformationPopover.d.ts +0 -7
  216. package/dist/components/InformationPopover/InformationPopover.js +0 -19
  217. package/dist/components/InformationPopover/InformationPopover.js.map +0 -1
  218. package/dist/components/InformationPopover.js +0 -19
  219. package/dist/components/InformationPopover.js.map +0 -1
  220. package/dist/components/InputErrorMessage/InputErrorMessage.js +0 -21
  221. package/dist/components/InputErrorMessage/InputErrorMessage.js.map +0 -1
  222. package/dist/components/Modal/Modal.d.ts +0 -15
  223. package/dist/components/Modal/Modal.js +0 -73
  224. package/dist/components/Modal/Modal.js.map +0 -1
  225. package/dist/components/Radio/Radio.js +0 -35
  226. package/dist/components/Radio/Radio.js.map +0 -1
  227. package/dist/components/Spinner/spinner.d.ts +0 -2
  228. package/dist/components/Spinner/spinner.js +0 -22
  229. package/dist/components/Spinner/spinner.js.map +0 -1
  230. package/dist/components/Toggle/Toggle.d.ts +0 -16
  231. package/dist/components/Toggle/index.d.ts +0 -2
  232. package/dist/components/Tooltip/Tooltip.d.ts +0 -12
  233. package/dist/components/Tooltip/Tooltip.js +0 -134
  234. package/dist/components/Tooltip/Tooltip.js.map +0 -1
  235. package/dist/components/common/FallbackImage.js +0 -47
  236. package/dist/components/common/FallbackImage.js.map +0 -1
  237. package/dist/components/ui/Calendar/calendar-utils.js +0 -51
  238. package/dist/components/ui/Calendar/calendar-utils.js.map +0 -1
  239. package/dist/components/ui/Calendar/index.js +0 -142
  240. package/dist/components/ui/Calendar/index.js.map +0 -1
  241. package/dist/components/ui/Checkbox.d.ts +0 -9
  242. package/dist/components/ui/Checkbox.js +0 -50
  243. package/dist/components/ui/Checkbox.js.map +0 -1
  244. package/dist/components/ui/DatePicker/index.js +0 -188
  245. package/dist/components/ui/DatePicker/index.js.map +0 -1
  246. package/dist/components/ui/FormInput.js +0 -129
  247. package/dist/components/ui/FormInput.js.map +0 -1
  248. package/dist/components/ui/InputErrorMessage.d.ts +0 -7
  249. package/dist/components/ui/InputErrorMessage.js +0 -21
  250. package/dist/components/ui/InputErrorMessage.js.map +0 -1
  251. package/dist/components/ui/Modal/index.js +0 -73
  252. package/dist/components/ui/Modal/index.js.map +0 -1
  253. package/dist/components/ui/Radio.d.ts +0 -6
  254. package/dist/components/ui/Radio.js +0 -35
  255. package/dist/components/ui/Radio.js.map +0 -1
  256. package/dist/components/ui/RichTextEditor.js +0 -242
  257. package/dist/components/ui/RichTextEditor.js.map +0 -1
  258. package/dist/components/ui/TimePicker/index.js +0 -215
  259. package/dist/components/ui/TimePicker/index.js.map +0 -1
  260. package/dist/components/ui/TimeSelector/index.js +0 -138
  261. package/dist/components/ui/TimeSelector/index.js.map +0 -1
  262. package/dist/components/ui/Tooltip.d.ts +0 -12
  263. package/dist/components/ui/Tooltip.js +0 -136
  264. package/dist/components/ui/Tooltip.js.map +0 -1
  265. package/dist/hooks/useDropdownPosition.d.ts +0 -11
  266. package/dist/hooks/useFirebaseAuthState.d.ts +0 -6
  267. package/dist/hooks/useFirebaseAuthState.js +0 -23
  268. package/dist/hooks/useFirebaseAuthState.js.map +0 -1
  269. package/dist/hooks/useTicketTierForm.d.ts +0 -61
  270. package/dist/lib/actions.js +0 -32
  271. package/dist/lib/actions.js.map +0 -1
  272. package/dist/lib/cropImage.js +0 -113
  273. package/dist/lib/cropImage.js.map +0 -1
  274. package/dist/lib/imageAnalysis.js +0 -58
  275. package/dist/lib/imageAnalysis.js.map +0 -1
  276. package/dist/lib/utils.js +0 -9
  277. package/dist/lib/utils.js.map +0 -1
  278. package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js +0 -60
  279. package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js.map +0 -1
  280. package/dist/node_modules/@dnd-kit/core/dist/core.esm.js +0 -3458
  281. package/dist/node_modules/@dnd-kit/core/dist/core.esm.js.map +0 -1
  282. package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js +0 -593
  283. package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js.map +0 -1
  284. package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js +0 -302
  285. package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js.map +0 -1
  286. package/dist/node_modules/@firebase/app/dist/esm/index.esm.js +0 -768
  287. package/dist/node_modules/@firebase/app/dist/esm/index.esm.js.map +0 -1
  288. package/dist/node_modules/@firebase/component/dist/esm/index.esm.js +0 -340
  289. package/dist/node_modules/@firebase/component/dist/esm/index.esm.js.map +0 -1
  290. package/dist/node_modules/@firebase/logger/dist/esm/index.esm.js +0 -123
  291. package/dist/node_modules/@firebase/logger/dist/esm/index.esm.js.map +0 -1
  292. package/dist/node_modules/@firebase/storage/dist/index.esm.js +0 -2623
  293. package/dist/node_modules/@firebase/storage/dist/index.esm.js.map +0 -1
  294. package/dist/node_modules/@firebase/util/dist/index.esm.js +0 -658
  295. package/dist/node_modules/@firebase/util/dist/index.esm.js.map +0 -1
  296. package/dist/node_modules/@firebase/util/dist/postinstall.js +0 -5
  297. package/dist/node_modules/@firebase/util/dist/postinstall.js.map +0 -1
  298. package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.js +0 -3179
  299. package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.js.map +0 -1
  300. package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.js +0 -60
  301. package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.js.map +0 -1
  302. package/dist/node_modules/@fortawesome/react-fontawesome/dist/index.js +0 -400
  303. package/dist/node_modules/@fortawesome/react-fontawesome/dist/index.js.map +0 -1
  304. package/dist/node_modules/@heroicons/react/20/solid/esm/CheckIcon.js +0 -27
  305. package/dist/node_modules/@heroicons/react/20/solid/esm/CheckIcon.js.map +0 -1
  306. package/dist/node_modules/@heroicons/react/20/solid/esm/ChevronDownIcon.js +0 -27
  307. package/dist/node_modules/@heroicons/react/20/solid/esm/ChevronDownIcon.js.map +0 -1
  308. package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowRightIcon.js +0 -29
  309. package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowRightIcon.js.map +0 -1
  310. package/dist/node_modules/@heroicons/react/24/outline/esm/ClockIcon.js +0 -29
  311. package/dist/node_modules/@heroicons/react/24/outline/esm/ClockIcon.js.map +0 -1
  312. package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentDuplicateIcon.js +0 -29
  313. package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentDuplicateIcon.js.map +0 -1
  314. package/dist/node_modules/@heroicons/react/24/outline/esm/InformationCircleIcon.js +0 -29
  315. package/dist/node_modules/@heroicons/react/24/outline/esm/InformationCircleIcon.js.map +0 -1
  316. package/dist/node_modules/@heroicons/react/24/outline/esm/LinkIcon.js +0 -29
  317. package/dist/node_modules/@heroicons/react/24/outline/esm/LinkIcon.js.map +0 -1
  318. package/dist/node_modules/@heroicons/react/24/outline/esm/MagnifyingGlassIcon.js +0 -29
  319. package/dist/node_modules/@heroicons/react/24/outline/esm/MagnifyingGlassIcon.js.map +0 -1
  320. package/dist/node_modules/@heroicons/react/24/outline/esm/MapPinIcon.js +0 -33
  321. package/dist/node_modules/@heroicons/react/24/outline/esm/MapPinIcon.js.map +0 -1
  322. package/dist/node_modules/@heroicons/react/24/outline/esm/VideoCameraIcon.js +0 -29
  323. package/dist/node_modules/@heroicons/react/24/outline/esm/VideoCameraIcon.js.map +0 -1
  324. package/dist/node_modules/@heroicons/react/24/outline/esm/XMarkIcon.js +0 -29
  325. package/dist/node_modules/@heroicons/react/24/outline/esm/XMarkIcon.js.map +0 -1
  326. package/dist/node_modules/@tiptap/core/dist/index.js +0 -5446
  327. package/dist/node_modules/@tiptap/core/dist/index.js.map +0 -1
  328. package/dist/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.js +0 -21
  329. package/dist/node_modules/@tiptap/core/dist/jsx-runtime/jsx-runtime.js.map +0 -1
  330. package/dist/node_modules/@tiptap/extension-blockquote/dist/index.js +0 -78
  331. package/dist/node_modules/@tiptap/extension-blockquote/dist/index.js.map +0 -1
  332. package/dist/node_modules/@tiptap/extension-bold/dist/index.js +0 -100
  333. package/dist/node_modules/@tiptap/extension-bold/dist/index.js.map +0 -1
  334. package/dist/node_modules/@tiptap/extension-code/dist/index.js +0 -70
  335. package/dist/node_modules/@tiptap/extension-code/dist/index.js.map +0 -1
  336. package/dist/node_modules/@tiptap/extension-code-block/dist/index.js +0 -317
  337. package/dist/node_modules/@tiptap/extension-code-block/dist/index.js.map +0 -1
  338. package/dist/node_modules/@tiptap/extension-document/dist/index.js +0 -16
  339. package/dist/node_modules/@tiptap/extension-document/dist/index.js.map +0 -1
  340. package/dist/node_modules/@tiptap/extension-hard-break/dist/index.js +0 -66
  341. package/dist/node_modules/@tiptap/extension-hard-break/dist/index.js.map +0 -1
  342. package/dist/node_modules/@tiptap/extension-heading/dist/index.js +0 -86
  343. package/dist/node_modules/@tiptap/extension-heading/dist/index.js.map +0 -1
  344. package/dist/node_modules/@tiptap/extension-horizontal-rule/dist/index.js +0 -80
  345. package/dist/node_modules/@tiptap/extension-horizontal-rule/dist/index.js.map +0 -1
  346. package/dist/node_modules/@tiptap/extension-italic/dist/index.js +0 -98
  347. package/dist/node_modules/@tiptap/extension-italic/dist/index.js.map +0 -1
  348. package/dist/node_modules/@tiptap/extension-link/dist/index.js +0 -423
  349. package/dist/node_modules/@tiptap/extension-link/dist/index.js.map +0 -1
  350. package/dist/node_modules/@tiptap/extension-list/dist/index.js +0 -1039
  351. package/dist/node_modules/@tiptap/extension-list/dist/index.js.map +0 -1
  352. package/dist/node_modules/@tiptap/extension-paragraph/dist/index.js +0 -61
  353. package/dist/node_modules/@tiptap/extension-paragraph/dist/index.js.map +0 -1
  354. package/dist/node_modules/@tiptap/extension-placeholder/dist/index.js +0 -7
  355. package/dist/node_modules/@tiptap/extension-placeholder/dist/index.js.map +0 -1
  356. package/dist/node_modules/@tiptap/extension-strike/dist/index.js +0 -79
  357. package/dist/node_modules/@tiptap/extension-strike/dist/index.js.map +0 -1
  358. package/dist/node_modules/@tiptap/extension-text/dist/index.js +0 -16
  359. package/dist/node_modules/@tiptap/extension-text/dist/index.js.map +0 -1
  360. package/dist/node_modules/@tiptap/extension-underline/dist/index.js +0 -76
  361. package/dist/node_modules/@tiptap/extension-underline/dist/index.js.map +0 -1
  362. package/dist/node_modules/@tiptap/extensions/dist/index.js +0 -376
  363. package/dist/node_modules/@tiptap/extensions/dist/index.js.map +0 -1
  364. package/dist/node_modules/@tiptap/react/dist/index.js +0 -650
  365. package/dist/node_modules/@tiptap/react/dist/index.js.map +0 -1
  366. package/dist/node_modules/@tiptap/starter-kit/dist/index.js +0 -97
  367. package/dist/node_modules/@tiptap/starter-kit/dist/index.js.map +0 -1
  368. package/dist/node_modules/dayjs/dayjs.min.js +0 -283
  369. package/dist/node_modules/dayjs/dayjs.min.js.map +0 -1
  370. package/dist/node_modules/dayjs/plugin/customParseFormat.js +0 -130
  371. package/dist/node_modules/dayjs/plugin/customParseFormat.js.map +0 -1
  372. package/dist/node_modules/dayjs/plugin/duration.js +0 -137
  373. package/dist/node_modules/dayjs/plugin/duration.js.map +0 -1
  374. package/dist/node_modules/dayjs/plugin/isBetween.js +0 -20
  375. package/dist/node_modules/dayjs/plugin/isBetween.js.map +0 -1
  376. package/dist/node_modules/dayjs/plugin/relativeTime.js +0 -49
  377. package/dist/node_modules/dayjs/plugin/relativeTime.js.map +0 -1
  378. package/dist/node_modules/fast-equals/dist/es/index.js +0 -442
  379. package/dist/node_modules/fast-equals/dist/es/index.js.map +0 -1
  380. package/dist/node_modules/idb/build/index.js +0 -70
  381. package/dist/node_modules/idb/build/index.js.map +0 -1
  382. package/dist/node_modules/idb/build/wrap-idb-value.js +0 -149
  383. package/dist/node_modules/idb/build/wrap-idb-value.js.map +0 -1
  384. package/dist/node_modules/linkifyjs/dist/linkify.js +0 -1159
  385. package/dist/node_modules/linkifyjs/dist/linkify.js.map +0 -1
  386. package/dist/node_modules/orderedmap/dist/index.js +0 -120
  387. package/dist/node_modules/orderedmap/dist/index.js.map +0 -1
  388. package/dist/node_modules/prosemirror-commands/dist/index.js +0 -527
  389. package/dist/node_modules/prosemirror-commands/dist/index.js.map +0 -1
  390. package/dist/node_modules/prosemirror-dropcursor/dist/index.js +0 -137
  391. package/dist/node_modules/prosemirror-dropcursor/dist/index.js.map +0 -1
  392. package/dist/node_modules/prosemirror-gapcursor/dist/index.js +0 -221
  393. package/dist/node_modules/prosemirror-gapcursor/dist/index.js.map +0 -1
  394. package/dist/node_modules/prosemirror-history/dist/index.js +0 -357
  395. package/dist/node_modules/prosemirror-history/dist/index.js.map +0 -1
  396. package/dist/node_modules/prosemirror-keymap/dist/index.js +0 -84
  397. package/dist/node_modules/prosemirror-keymap/dist/index.js.map +0 -1
  398. package/dist/node_modules/prosemirror-model/dist/index.js +0 -3209
  399. package/dist/node_modules/prosemirror-model/dist/index.js.map +0 -1
  400. package/dist/node_modules/prosemirror-schema-list/dist/index.js +0 -131
  401. package/dist/node_modules/prosemirror-schema-list/dist/index.js.map +0 -1
  402. package/dist/node_modules/prosemirror-state/dist/index.js +0 -936
  403. package/dist/node_modules/prosemirror-state/dist/index.js.map +0 -1
  404. package/dist/node_modules/prosemirror-transform/dist/index.js +0 -1881
  405. package/dist/node_modules/prosemirror-transform/dist/index.js.map +0 -1
  406. package/dist/node_modules/prosemirror-view/dist/index.js +0 -5232
  407. package/dist/node_modules/prosemirror-view/dist/index.js.map +0 -1
  408. package/dist/node_modules/rope-sequence/dist/index.js +0 -184
  409. package/dist/node_modules/rope-sequence/dist/index.js.map +0 -1
  410. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +0 -82
  411. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +0 -1
  412. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js +0 -78
  413. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js.map +0 -1
  414. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +0 -78
  415. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +0 -1
  416. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +0 -63
  417. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +0 -1
  418. package/dist/node_modules/use-sync-external-store/shim/index.js +0 -13
  419. package/dist/node_modules/use-sync-external-store/shim/index.js.map +0 -1
  420. package/dist/node_modules/use-sync-external-store/shim/with-selector.js +0 -13
  421. package/dist/node_modules/use-sync-external-store/shim/with-selector.js.map +0 -1
  422. package/dist/node_modules/w3c-keyname/index.js +0 -106
  423. package/dist/node_modules/w3c-keyname/index.js.map +0 -1
  424. package/dist/node_modules/zod/v4/classic/coerce.js +0 -10
  425. package/dist/node_modules/zod/v4/classic/coerce.js.map +0 -1
  426. package/dist/node_modules/zod/v4/classic/compat.js +0 -8
  427. package/dist/node_modules/zod/v4/classic/compat.js.map +0 -1
  428. package/dist/node_modules/zod/v4/classic/errors.js +0 -45
  429. package/dist/node_modules/zod/v4/classic/errors.js.map +0 -1
  430. package/dist/node_modules/zod/v4/classic/iso.js +0 -44
  431. package/dist/node_modules/zod/v4/classic/iso.js.map +0 -1
  432. package/dist/node_modules/zod/v4/classic/parse.js +0 -30
  433. package/dist/node_modules/zod/v4/classic/parse.js.map +0 -1
  434. package/dist/node_modules/zod/v4/classic/schemas.js +0 -711
  435. package/dist/node_modules/zod/v4/classic/schemas.js.map +0 -1
  436. package/dist/node_modules/zod/v4/core/api.js +0 -588
  437. package/dist/node_modules/zod/v4/core/api.js.map +0 -1
  438. package/dist/node_modules/zod/v4/core/checks.js +0 -411
  439. package/dist/node_modules/zod/v4/core/checks.js.map +0 -1
  440. package/dist/node_modules/zod/v4/core/core.js +0 -75
  441. package/dist/node_modules/zod/v4/core/core.js.map +0 -1
  442. package/dist/node_modules/zod/v4/core/doc.js +0 -38
  443. package/dist/node_modules/zod/v4/core/doc.js.map +0 -1
  444. package/dist/node_modules/zod/v4/core/errors.js +0 -73
  445. package/dist/node_modules/zod/v4/core/errors.js.map +0 -1
  446. package/dist/node_modules/zod/v4/core/json-schema-processors.js +0 -359
  447. package/dist/node_modules/zod/v4/core/json-schema-processors.js.map +0 -1
  448. package/dist/node_modules/zod/v4/core/parse.js +0 -96
  449. package/dist/node_modules/zod/v4/core/parse.js.map +0 -1
  450. package/dist/node_modules/zod/v4/core/regexes.js +0 -84
  451. package/dist/node_modules/zod/v4/core/regexes.js.map +0 -1
  452. package/dist/node_modules/zod/v4/core/registries.js +0 -52
  453. package/dist/node_modules/zod/v4/core/registries.js.map +0 -1
  454. package/dist/node_modules/zod/v4/core/schemas.js +0 -1391
  455. package/dist/node_modules/zod/v4/core/schemas.js.map +0 -1
  456. package/dist/node_modules/zod/v4/core/to-json-schema.js +0 -363
  457. package/dist/node_modules/zod/v4/core/to-json-schema.js.map +0 -1
  458. package/dist/node_modules/zod/v4/core/util.js +0 -431
  459. package/dist/node_modules/zod/v4/core/util.js.map +0 -1
  460. package/dist/node_modules/zod/v4/core/versions.js +0 -9
  461. package/dist/node_modules/zod/v4/core/versions.js.map +0 -1
  462. package/dist/redux/baseQuery.d.ts +0 -1
  463. package/dist/redux/baseQuery.js +0 -24
  464. package/dist/redux/baseQuery.js.map +0 -1
  465. package/dist/services/eventApi.js +0 -411
  466. package/dist/services/eventApi.js.map +0 -1
  467. package/dist/services/helpers.js +0 -115
  468. package/dist/services/helpers.js.map +0 -1
  469. package/dist/services/initialize-firebase.d.ts +0 -2
  470. package/dist/services/initialize-firebase.js +0 -20
  471. package/dist/services/initialize-firebase.js.map +0 -1
  472. package/dist/services/process-image-on-server.js +0 -30
  473. package/dist/services/process-image-on-server.js.map +0 -1
  474. package/dist/services/remote-config.d.ts +0 -5
  475. package/dist/services/remote-config.js +0 -9
  476. package/dist/services/remote-config.js.map +0 -1
  477. package/dist/services/single-event-api.js +0 -301
  478. package/dist/services/single-event-api.js.map +0 -1
  479. package/dist/services/utils.js +0 -107
  480. package/dist/services/utils.js.map +0 -1
  481. package/dist/setupTests.d.ts +0 -1
  482. package/dist/stories/Alert.stories.d.ts +0 -10
  483. package/dist/stories/Button.stories.d.ts +0 -13
  484. package/dist/types/redux-types.d.ts +0 -15
  485. package/dist/types/types.d.ts +0 -60
  486. package/dist/types/types.js +0 -10
  487. package/dist/types/types.js.map +0 -1
  488. package/dist/utils/cn.d.ts +0 -6
  489. package/dist/utils/cn.js +0 -9
  490. package/dist/utils/cn.js.map +0 -1
  491. package/dist/utils/date-range.d.ts +0 -4
  492. package/dist/utils/date-range.js +0 -13
  493. package/dist/utils/date-range.js.map +0 -1
  494. package/dist/utils/single-event-helpers.d.ts +0 -50
  495. package/dist/utils/single-event-helpers.js +0 -18
  496. package/dist/utils/single-event-helpers.js.map +0 -1
  497. package/dist/utils/social-validation.js +0 -42
  498. package/dist/utils/social-validation.js.map +0 -1
  499. package/dist/utils/utils.js +0 -20
  500. package/dist/utils/utils.js.map +0 -1
  501. /package/dist/{components/Alert/Alert.d.ts → src/components/Alert/index.d.ts} +0 -0
  502. /package/dist/{components → src/components}/FormBuilder/CategoryList.d.ts +0 -0
  503. /package/dist/{components → src/components}/FormBuilder/OptionList.d.ts +0 -0
  504. /package/dist/{components → src/components}/FormBuilder/RequiredToggle.d.ts +0 -0
  505. /package/dist/{components → src/components}/FormBuilder/types.d.ts +0 -0
  506. /package/dist/{components → src/components}/FormBuilder/utils.d.ts +0 -0
  507. /package/dist/{components → src/components}/ImageCropModal/index.d.ts +0 -0
  508. /package/dist/{components → src/components}/InformationPopover.d.ts +0 -0
  509. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/common/DescriptionModal.d.ts +0 -0
  510. /package/dist/{components/ui/FormInput.d.ts → src/components/NewAddEvent/components/AddEventFormInput.d.ts} +0 -0
  511. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/CheckboxGroup.d.ts +0 -0
  512. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/CustomMeetingForm.d.ts +0 -0
  513. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/DateTimeField.d.ts +0 -0
  514. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/FileUpload.d.ts +0 -0
  515. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/FormBuilderProceedModal.d.ts +0 -0
  516. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/GoogleMapsAutocompleteInput.d.ts +0 -0
  517. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/SingleDateTimeInput.d.ts +0 -0
  518. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/StepTwo/CustomFormSection.d.ts +0 -0
  519. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/components/TicketTypeSelection.d.ts +0 -0
  520. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/StepOne.d.ts +0 -0
  521. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/steps/StepTwo.d.ts +0 -0
  522. /package/dist/{components/EventAddForm → src/components/NewAddEvent}/types.d.ts +0 -0
  523. /package/dist/{components → src/components}/common/FallbackImage.d.ts +0 -0
  524. /package/dist/{components → src/components}/ui/Calendar/calendar-utils.d.ts +0 -0
  525. /package/dist/{components → src/components}/ui/Calendar/index.d.ts +0 -0
  526. /package/dist/{components/Checkbox → src/components/ui}/Checkbox.d.ts +0 -0
  527. /package/dist/{components/CustomSelect → src/components/ui}/CustomSelect.d.ts +0 -0
  528. /package/dist/{components → src/components}/ui/DatePicker/index.d.ts +0 -0
  529. /package/dist/{components/InputErrorMessage → src/components/ui}/InputErrorMessage.d.ts +0 -0
  530. /package/dist/{components → src/components}/ui/Modal/index.d.ts +0 -0
  531. /package/dist/{components/Radio → src/components/ui}/Radio.d.ts +0 -0
  532. /package/dist/{components → src/components}/ui/RichTextEditor.d.ts +0 -0
  533. /package/dist/{components → src/components}/ui/TimePicker/index.d.ts +0 -0
  534. /package/dist/{components → src/components}/ui/TimeSelector/index.d.ts +0 -0
  535. /package/dist/{components → src/components}/ui/Tooltip/index.d.ts +0 -0
  536. /package/dist/{lib → src/lib}/constants.d.ts +0 -0
  537. /package/dist/{lib → src/lib}/cropImage.d.ts +0 -0
  538. /package/dist/{lib → src/lib}/imageAnalysis.d.ts +0 -0
  539. /package/dist/{utils → src/lib}/social-validation.d.ts +0 -0
  540. /package/dist/{lib/utils.d.ts → src/lib/tailwind-merge.d.ts} +0 -0
  541. /package/dist/{utils → src/lib}/utils.d.ts +0 -0
  542. /package/dist/{services → src/redux/features/single-event}/helpers.d.ts +0 -0
  543. /package/dist/{services → src/services}/process-image-on-server.d.ts +0 -0
  544. /package/dist/{types → src/types}/events.d.ts +0 -0
  545. /package/dist/{types → src/types}/question.d.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTicketTierForm.js","sources":["../../../../src/components/EventAddForm/hooks/useTicketTierForm.ts"],"sourcesContent":["import { useState, useCallback, useEffect, useMemo } from \"react\";\r\nimport { z } from \"zod\";\r\nimport { TicketTierAvailabilityType } from \"@/types/types\";\r\nimport { preprocessNumber } from \"../schemas/utils\";\r\nimport dayjs from \"dayjs\";\r\nimport isBetween from \"dayjs/plugin/isBetween\";\r\nimport customParseFormat from \"dayjs/plugin/customParseFormat\";\r\n\r\ndayjs.extend(isBetween);\r\ndayjs.extend(customParseFormat);\r\n\r\nexport const getTicketTierSchema = (\r\n eventStart?: { date: string, time: string },\r\n eventEnd?: { date: string, time: string },\r\n registrationStart?: { date: string, time: string },\r\n registrationEnd?: { date: string, time: string },\r\n existingTierNames?: string[]\r\n) => z.object({\r\n name: z.string().trim().min(1, \"Name is required\"),\r\n description: z.string().trim().max(255, \"Description cannot exceed 255 characters\").optional(),\r\n price: preprocessNumber(0, \"Price must be a number\", true, 1000000, \"Price cannot exceed 1,000,000\"),\r\n capacity: preprocessNumber(1, \"Capacity must be at least 1.\"),\r\n members: preprocessNumber(1, \"Members is required.\"),\r\n availability_type: z.nativeEnum(TicketTierAvailabilityType),\r\n availability_schedule: z.array(z.string()),\r\n has_discount: z.boolean().optional(),\r\n discounted_price: z.coerce.number()\r\n .min(0, \"Discounted price must be positive\")\r\n .max(1000000, \"Discounted price cannot exceed 1,000,000\")\r\n .int(\"Price must be an integer\").optional(),\r\n discount_valid_till_date: z.string().optional(),\r\n discount_valid_till_time: z.string().optional(),\r\n}).superRefine((data, ctx) => {\r\n if (existingTierNames && existingTierNames.length > 0) {\r\n const trimmedName = data.name.trim().toLowerCase();\r\n if (existingTierNames.some(n => n.trim().toLowerCase() === trimmedName)) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Ticket tier name must be unique\",\r\n path: [\"name\"],\r\n });\r\n }\r\n }\r\n\r\n if ((data?.capacity || 1) % (data?.members || 1) !== 0) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Capacity must be evenly divisible by the number of members\",\r\n path: [\"capacity\"],\r\n });\r\n }\r\n\r\n if (data.availability_type === TicketTierAvailabilityType.CUSTOM && (!data.availability_schedule || data.availability_schedule.length === 0)) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Please select at least one date\",\r\n path: [\"availability_schedule\"],\r\n });\r\n }\r\n\r\n if (data.has_discount) {\r\n if (data.discounted_price === undefined) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Discounted price is required\",\r\n path: [\"discounted_price\"],\r\n });\r\n }\r\n else if (data.discounted_price >= (data?.price || 0)) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Discounted price must be less than the actual price\",\r\n path: [\"discounted_price\"],\r\n });\r\n }\r\n\r\n if (!data?.discount_valid_till_date && !data?.discount_valid_till_time) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Please select a discount expiry date and time\",\r\n path: [\"discount_valid_till\"],\r\n });\r\n }\r\n\r\n const { discount_valid_till_date: date, discount_valid_till_time: time } = data;\r\n\r\n if (!date) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Please select a discount expiry date\",\r\n path: [\"discount_valid_till_date\"],\r\n });\r\n }\r\n\r\n if (!time) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Please select a discount expiry time\",\r\n path: [\"discount_valid_till_time\"],\r\n });\r\n }\r\n\r\n if (date && time) {\r\n const combined = dayjs(`${date} ${time}`);\r\n if (!combined.isValid()) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Invalid discount expiry date/time\",\r\n path: [\"discount_valid_till\"],\r\n });\r\n } else {\r\n // Registration Date Validation (Discount should expire before registration ends)\r\n if (registrationStart?.date && registrationStart?.time && registrationEnd?.date && registrationEnd?.time) {\r\n const startObj = dayjs(`${registrationStart.date} ${registrationStart.time}`);\r\n const endObj = dayjs(`${registrationEnd.date} ${registrationEnd.time}`);\r\n\r\n if (startObj.isValid() && endObj.isValid()) {\r\n // Check if discount date is BEFORE registration start\r\n if (combined.isBefore(startObj)) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Discount cannot expire before ticket registration starts\",\r\n path: [\"discount_valid_till_date\"],\r\n });\r\n }\r\n // Check if discount date is AFTER registration end\r\n else if (combined.isAfter(endObj)) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Discount expiry cannot be after ticket registration closes\",\r\n path: [\"discount_valid_till_date\"],\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n});\r\n\r\nexport type TicketTierFormState = z.infer<ReturnType<typeof getTicketTierSchema>>;\r\n\r\ninterface UseTicketTierFormProps {\r\n initialData?: Partial<TicketTierFormState>;\r\n defaultState: TicketTierFormState;\r\n eventStart?: { date: string, time: string };\r\n eventEnd?: { date: string, time: string };\r\n registrationStart?: { date: string, time: string };\r\n registrationEnd?: { date: string, time: string };\r\n existingTierNames?: string[];\r\n}\r\n\r\nexport const useTicketTierForm = ({ initialData, defaultState, eventStart, eventEnd, registrationStart, registrationEnd, existingTierNames }: UseTicketTierFormProps) => {\r\n const [formState, setFormState] = useState<TicketTierFormState>({ ...defaultState, ...initialData });\r\n const [errors, setErrors] = useState<Record<string, string>>({});\r\n const [isSubmitting, setIsSubmitting] = useState(false);\r\n\r\n // Sync with initialData if it changes (re-initialization logic)\r\n useEffect(() => {\r\n if (initialData) {\r\n setFormState(prev => ({ ...prev, ...initialData }));\r\n }\r\n }, [initialData]);\r\n\r\n const schema = useMemo(() => getTicketTierSchema(eventStart, eventEnd, registrationStart, registrationEnd, existingTierNames), [eventStart, eventEnd, registrationStart, registrationEnd, existingTierNames]);\r\n\r\n // --- Enhanced Validation Logic ---\r\n\r\n const validateFields = useCallback((fields: (keyof TicketTierFormState)[], currentState: TicketTierFormState) => {\r\n const result = schema.safeParse(currentState);\r\n\r\n setErrors(prevErrors => {\r\n const newErrors = { ...prevErrors };\r\n\r\n fields.forEach(field => {\r\n const fieldKey = field as string;\r\n if (result.success) {\r\n delete newErrors[fieldKey];\r\n } else {\r\n const issue = result.error.issues.find(i => i.path[0] === fieldKey);\r\n if (issue) {\r\n newErrors[fieldKey] = issue.message;\r\n } else {\r\n delete newErrors[fieldKey];\r\n }\r\n }\r\n });\r\n\r\n // Special Case: Group Discount Date/Time errors\r\n if (fields.includes('discount_valid_till_date') || fields.includes('discount_valid_till_time')) {\r\n if (result.success) {\r\n delete newErrors.discount_valid_till;\r\n delete newErrors.discount_valid_till_date;\r\n delete newErrors.discount_valid_till_time;\r\n } else {\r\n // Check specifically for the combined error usually on \"discount_valid_till\"\r\n const combinedIssue = result.error.issues.find(i => i.path[0] === \"discount_valid_till\");\r\n if (combinedIssue) {\r\n // We might want to show this generally or map it\r\n // For now, let's map it to both if not specific\r\n if (!newErrors.discount_valid_till_date && !newErrors.discount_valid_till_time) {\r\n newErrors.discount_valid_till_date = combinedIssue.message;\r\n }\r\n } else {\r\n delete newErrors.discount_valid_till;\r\n }\r\n }\r\n }\r\n\r\n return newErrors;\r\n });\r\n }, [schema]);\r\n\r\n const setFields = useCallback((updates: Partial<TicketTierFormState>) => {\r\n if (setFormState) setFormState(prev => {\r\n const newState = { ...prev, ...updates };\r\n\r\n // Auto-clear availability schedule if type changed and not custom\r\n if (updates.availability_type !== undefined && updates.availability_type !== TicketTierAvailabilityType.CUSTOM) {\r\n newState.availability_schedule = [];\r\n }\r\n\r\n // Validation logic for updated fields\r\n const fieldsToValidate = Object.keys(updates) as (keyof TicketTierFormState)[];\r\n const hasExistingErrors = fieldsToValidate.some(f => errors[f as string]);\r\n const isDiscountUpdate = updates.discount_valid_till_date !== undefined || updates.discount_valid_till_time !== undefined;\r\n\r\n if (hasExistingErrors || isDiscountUpdate || updates.price !== undefined || updates.members !== undefined) {\r\n const fieldsForSchema = [...fieldsToValidate];\r\n if (updates.discount_valid_till_date !== undefined) fieldsForSchema.push('discount_valid_till_time', 'discount_valid_till' as any);\r\n if (updates.discount_valid_till_time !== undefined) fieldsForSchema.push('discount_valid_till_date', 'discount_valid_till' as any);\r\n\r\n // Cross-field dependencies\r\n if (updates.price !== undefined) fieldsForSchema.push('discounted_price');\r\n if (updates.members !== undefined) fieldsForSchema.push('capacity');\r\n\r\n validateFields(fieldsForSchema, newState);\r\n }\r\n\r\n return newState;\r\n });\r\n }, [errors, validateFields]);\r\n\r\n const setField = useCallback((field: keyof TicketTierFormState, value: any) => {\r\n setFields({ [field]: value });\r\n }, [setFields]);\r\n\r\n const handleBlur = useCallback((field: keyof TicketTierFormState) => {\r\n validateFields([field], formState);\r\n }, [formState, validateFields]);\r\n\r\n const validate = useCallback(() => {\r\n const result = schema.safeParse(formState);\r\n if (!result.success) {\r\n const newErrors: Record<string, string> = {};\r\n result.error.issues.forEach((issue) => {\r\n const path = issue.path[0] as string;\r\n if (path) {\r\n newErrors[path] = issue.message;\r\n }\r\n });\r\n setErrors(newErrors);\r\n return false;\r\n }\r\n setErrors({});\r\n return true;\r\n }, [formState, schema]);\r\n\r\n const handleSubmit = useCallback(async (onSubmit: (data: TicketTierFormState) => void) => {\r\n if (validate()) {\r\n setIsSubmitting(true);\r\n try {\r\n await onSubmit(formState);\r\n } finally {\r\n setIsSubmitting(false);\r\n }\r\n }\r\n }, [validate, formState]);\r\n\r\n const resetForm = useCallback(() => {\r\n setFormState(defaultState);\r\n setErrors({});\r\n }, [defaultState]);\r\n\r\n return {\r\n formState,\r\n setField,\r\n setFields,\r\n handleBlur,\r\n handleSubmit,\r\n errors,\r\n setErrors, // Exposing setErrors to allow manual error clearing if needed\r\n isSubmitting,\r\n setFormState,\r\n resetForm\r\n };\r\n};\r\n"],"names":["z.object","z.string","z.nativeEnum","z.array","z.boolean","z.coerce.number","z.ZodIssueCode"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- declare const AddEventPage: () => import("react/jsx-runtime").JSX.Element;
2
- export { AddEventPage as EventAddForm };
3
- export default AddEventPage;
@@ -1,41 +0,0 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { useSearchParams } from "next/navigation";
3
- import AddEventStepper from "./AddEventStepper.js";
4
- import { useState, useEffect } from "react";
5
- const AddEventPage = () => {
6
- const params = useSearchParams();
7
- const urlId = params.get("edit") ?? "";
8
- const organizer_id = params.get("organizer_id") ?? "";
9
- const isEditMode = params.get("edit") !== null && !!urlId;
10
- const [createId, setCreateId] = useState(null);
11
- useEffect(() => {
12
- if (!isEditMode && typeof window !== "undefined") {
13
- const saved = localStorage.getItem("current_creating_event_id");
14
- if (saved) setCreateId(saved);
15
- }
16
- }, [isEditMode]);
17
- const mode = params.get("mode");
18
- const step = params.get("step");
19
- const initialStepFromUrl = step ? parseInt(step) : void 0;
20
- const effectiveId = isEditMode ? urlId : createId || void 0;
21
- return /* @__PURE__ */ jsx(
22
- AddEventStepper,
23
- {
24
- edit: isEditMode,
25
- mode,
26
- initialStep: initialStepFromUrl,
27
- id: effectiveId,
28
- organizer_id: organizer_id || "",
29
- onEventCreated: (newId) => {
30
- if (!isEditMode) {
31
- localStorage.setItem("current_creating_event_id", newId);
32
- setCreateId(newId);
33
- }
34
- }
35
- }
36
- );
37
- };
38
- export {
39
- AddEventPage as EventAddForm
40
- };
41
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/EventAddForm/index.tsx"],"sourcesContent":["\"use client\";\r\nimport { useSearchParams } from \"next/navigation\";\r\nimport AddEventStepper from \"./AddEventStepper\";\r\nimport { useEffect, useState } from \"react\";\r\n\r\nconst AddEventPage = () => {\r\n const params = useSearchParams();\r\n const urlId = params.get(\"edit\") ?? \"\"\r\n const organizer_id = params.get(\"organizer_id\") ?? \"\"\r\n // const { organizer_id } = useParams<{ organizer_id: string }>();\r\n\r\n // We can infer edit mode from the presence of the 'edit' param or 'id' param depending on your URL strategy.\r\n // Assuming /add-event?edit=true&id=123\r\n const isEditMode = params.get(\"edit\") !== null && !!urlId;\r\n\r\n const [createId, setCreateId] = useState<string | null>(null);\r\n\r\n // Identify logic: Load draft ID for create mode\r\n useEffect(() => {\r\n if (!isEditMode && typeof window !== 'undefined') {\r\n const saved = localStorage.getItem('current_creating_event_id');\r\n if (saved) setCreateId(saved);\r\n }\r\n }, [isEditMode]);\r\n\r\n const mode = params.get(\"mode\") as \"questions\" | \"social\" | null;\r\n const step = params.get(\"step\");\r\n const initialStepFromUrl = step ? parseInt(step) : undefined;\r\n const effectiveId = isEditMode ? urlId : (createId || undefined);\r\n\r\n return (\r\n <AddEventStepper\r\n edit={isEditMode}\r\n mode={mode}\r\n initialStep={initialStepFromUrl}\r\n id={effectiveId}\r\n organizer_id={organizer_id || \"\"}\r\n onEventCreated={(newId: string) => {\r\n if (!isEditMode) {\r\n localStorage.setItem('current_creating_event_id', newId);\r\n setCreateId(newId);\r\n }\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport { AddEventPage as EventAddForm };\r\nexport default AddEventPage;\r\n"],"names":[],"mappings":";;;;AAKA,MAAM,eAAe,MAAM;AACvB,QAAM,SAAS,gBAAA;AACf,QAAM,QAAQ,OAAO,IAAI,MAAM,KAAK;AACpC,QAAM,eAAe,OAAO,IAAI,cAAc,KAAK;AAKnD,QAAM,aAAa,OAAO,IAAI,MAAM,MAAM,QAAQ,CAAC,CAAC;AAEpD,QAAM,CAAC,UAAU,WAAW,IAAI,SAAwB,IAAI;AAG5D,YAAU,MAAM;AACZ,QAAI,CAAC,cAAc,OAAO,WAAW,aAAa;AAC9C,YAAM,QAAQ,aAAa,QAAQ,2BAA2B;AAC9D,UAAI,mBAAmB,KAAK;AAAA,IAChC;AAAA,EACJ,GAAG,CAAC,UAAU,CAAC;AAEf,QAAM,OAAO,OAAO,IAAI,MAAM;AAC9B,QAAM,OAAO,OAAO,IAAI,MAAM;AAC9B,QAAM,qBAAqB,OAAO,SAAS,IAAI,IAAI;AACnD,QAAM,cAAc,aAAa,QAAS,YAAY;AAEtD,SACI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,MAAM;AAAA,MACN;AAAA,MACA,aAAa;AAAA,MACb,IAAI;AAAA,MACJ,cAAc,gBAAgB;AAAA,MAC9B,gBAAgB,CAAC,UAAkB;AAC/B,YAAI,CAAC,YAAY;AACb,uBAAa,QAAQ,6BAA6B,KAAK;AACvD,sBAAY,KAAK;AAAA,QACrB;AAAA,MACJ;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
@@ -1,2 +0,0 @@
1
- export * from './step1';
2
- export * from './step2';
@@ -1,47 +0,0 @@
1
- import { z } from 'zod';
2
-
3
- export declare const validateEventDates: (data: Partial<Step1Data>) => Record<string, string>;
4
- export interface LocationData {
5
- placeId: string;
6
- description?: string;
7
- displayName?: string;
8
- address?: string;
9
- type?: 'in-person' | 'online';
10
- coordinates?: {
11
- lat: number;
12
- lng: number;
13
- };
14
- platform?: string;
15
- meetingUrl?: string;
16
- }
17
- export declare const step1Schema: z.ZodObject<{
18
- name: z.ZodString;
19
- image_url: z.ZodString;
20
- thumbnail_url: z.ZodOptional<z.ZodString>;
21
- description: z.ZodString;
22
- event_type: z.ZodArray<z.ZodString>;
23
- event_start_timestamp: z.ZodObject<{
24
- date: z.ZodString;
25
- time: z.ZodString;
26
- }, z.core.$strip>;
27
- event_end_timestamp: z.ZodObject<{
28
- date: z.ZodString;
29
- time: z.ZodString;
30
- }, z.core.$strip>;
31
- registration_start_timestamp: z.ZodObject<{
32
- date: z.ZodString;
33
- time: z.ZodString;
34
- }, z.core.$strip>;
35
- registration_end_timestamp: z.ZodObject<{
36
- date: z.ZodString;
37
- time: z.ZodString;
38
- }, z.core.$strip>;
39
- venue: z.ZodString;
40
- venue_place_id: z.ZodOptional<z.ZodString>;
41
- location_data: z.ZodAny;
42
- location_type: z.ZodString;
43
- event_categories: z.ZodArray<z.ZodString>;
44
- custom_category: z.ZodOptional<z.ZodString>;
45
- institution_name: z.ZodOptional<z.ZodString>;
46
- }, z.core.$strip>;
47
- export type Step1Data = z.infer<typeof step1Schema>;
@@ -1,135 +0,0 @@
1
- import { timestampSchema } from "./utils.js";
2
- import { object, string, array, any } from "../../../node_modules/zod/v4/classic/schemas.js";
3
- import { ZodIssueCode } from "../../../node_modules/zod/v4/classic/compat.js";
4
- const validateEventDates = (data) => {
5
- const errors = {};
6
- const { event_start_timestamp, event_end_timestamp, registration_start_timestamp, registration_end_timestamp } = data;
7
- const getDates = (d) => {
8
- if (!(d == null ? void 0 : d.date)) return null;
9
- const [year, month, day] = d.date.split("-").map(Number);
10
- let hours = 0, minutes = 0;
11
- if (d.time) {
12
- [hours, minutes] = d.time.split(":").map(Number);
13
- }
14
- return new Date(year, month - 1, day, hours, minutes);
15
- };
16
- const eStart = getDates(event_start_timestamp);
17
- const eEnd = getDates(event_end_timestamp);
18
- const rStart = getDates(registration_start_timestamp);
19
- const rEnd = getDates(registration_end_timestamp);
20
- if (eStart && eEnd) {
21
- if (eEnd < eStart) {
22
- if (eStart.toDateString() === eEnd.toDateString()) {
23
- errors.event_end_timestamp = "Event end time cannot be before start time";
24
- } else {
25
- errors.event_end_timestamp = "Event end date cannot be before start date";
26
- }
27
- } else {
28
- const diffMinutes = (eEnd.getTime() - eStart.getTime()) / (1e3 * 60);
29
- if (diffMinutes < 30) {
30
- errors.event_end_timestamp = "Event duration must be at least 30 minutes";
31
- }
32
- }
33
- }
34
- if (rStart && rEnd && rStart >= rEnd) {
35
- errors.registration_start_timestamp = "Registration start must be before registration end";
36
- }
37
- if (rStart && eStart && rStart > eStart) {
38
- errors.registration_start_timestamp = "Registration start cannot be after event start";
39
- }
40
- if (rStart && eEnd && rStart > eEnd) {
41
- errors.registration_start_timestamp = "Registration start cannot be after event end";
42
- }
43
- if (rEnd && rStart && rEnd <= rStart) {
44
- errors.registration_end_timestamp = "Registration end must be after registration start";
45
- }
46
- if (rEnd && eEnd && rEnd > eEnd) {
47
- errors.registration_end_timestamp = "Registration end cannot be after event end";
48
- }
49
- if (eStart && rStart && eStart < rStart) {
50
- errors.event_start_timestamp = "Event start cannot be before registration start";
51
- }
52
- if (eEnd && rStart && eEnd < rStart) {
53
- errors.event_end_timestamp = "Event end cannot be before registration start";
54
- }
55
- if (eEnd && rEnd && eEnd < rEnd) {
56
- errors.event_end_timestamp = "Event end cannot be before registration end";
57
- }
58
- return errors;
59
- };
60
- const step1Schema = object({
61
- name: string().trim().min(1, "Event Name is required").min(3, "Name must be at least 3 characters").regex(/^[a-zA-Z0-9]/, "Event Name cannot start with a special character"),
62
- image_url: string().min(1, "Event Cover Image is required"),
63
- thumbnail_url: string().optional(),
64
- description: string().trim().min(1, "Description is required").min(10, "Please enter a valid description").refine((val) => val !== "<p><br></p>", "Description is required").refine((val) => {
65
- const stripped = val.replace(/<[^>]*>?/gm, "").trim();
66
- return stripped.replace(/&nbsp;/g, "").trim().length > 0;
67
- }, "Description cannot be empty spaces"),
68
- // Changed from string to array for multi-select checkboxes as requested
69
- event_type: array(string()).min(1, "At least one Event type is required"),
70
- // Dates
71
- event_start_timestamp: timestampSchema.refine((val) => !!val.date && !!val.time, "Event Start Date and Time are required"),
72
- event_end_timestamp: timestampSchema.refine((val) => !!val.date && !!val.time, "Event End Date and Time are required"),
73
- registration_start_timestamp: timestampSchema.refine((val) => !!val.date && !!val.time, "Registration Start Date and Time are required"),
74
- registration_end_timestamp: timestampSchema.refine((val) => !!val.date && !!val.time, "Registration End Date and Time are required"),
75
- // Location
76
- venue: string().trim().min(1, "Venue is required"),
77
- // Often set by location logic
78
- venue_place_id: string().optional(),
79
- location_data: any(),
80
- location_type: string().min(1, "Location type is required").refine((val) => ["in-person", "online"].includes(val), "Location type is required").superRefine((val, ctx) => {
81
- if (!val) {
82
- ctx.addIssue({
83
- code: ZodIssueCode.custom,
84
- message: "Location type is required",
85
- path: ["location_data"]
86
- });
87
- }
88
- }),
89
- // Categories (Multi-select)
90
- event_categories: array(string()).min(1, "Select at least one category").max(2, "Cannot select more than 2 categories"),
91
- custom_category: string().trim().optional(),
92
- institution_name: string().trim().optional()
93
- }).superRefine((data, ctx) => {
94
- var _a, _b, _c, _d, _e, _f;
95
- const dateErrors = validateEventDates(data);
96
- Object.entries(dateErrors).forEach(([field, message]) => {
97
- ctx.addIssue({
98
- code: ZodIssueCode.custom,
99
- message,
100
- path: [field]
101
- });
102
- });
103
- const loc = data.location_data;
104
- if (!loc || typeof loc !== "object") {
105
- ctx.addIssue({
106
- code: ZodIssueCode.custom,
107
- message: "Location data is required",
108
- path: ["location_data"]
109
- });
110
- } else {
111
- if (loc.type === "in-person") {
112
- if (!((_a = loc.displayName) == null ? void 0 : _a.trim())) {
113
- ctx.addIssue({ code: ZodIssueCode.custom, message: "Physical location name is required", path: ["venue"] });
114
- }
115
- if (!((_b = loc.address) == null ? void 0 : _b.trim())) {
116
- ctx.addIssue({ code: ZodIssueCode.custom, message: "Physical location address is required", path: ["venue"] });
117
- }
118
- } else if (loc.type === "online" && loc.platform !== "google-meet") {
119
- if (!((_c = loc.displayName) == null ? void 0 : _c.trim())) {
120
- ctx.addIssue({ code: ZodIssueCode.custom, message: "Virtual meeting name is required", path: ["venue"] });
121
- }
122
- if (!((_d = loc.meetingUrl) == null ? void 0 : _d.trim())) {
123
- ctx.addIssue({ code: ZodIssueCode.custom, message: "Meeting URL is required", path: ["venue"] });
124
- }
125
- }
126
- }
127
- if (((_e = data.event_type) == null ? void 0 : _e.includes("INTERNAL")) && !((_f = data.institution_name) == null ? void 0 : _f.trim())) {
128
- ctx.addIssue({ code: ZodIssueCode.custom, message: "Institution name is required", path: ["institution_name"] });
129
- }
130
- });
131
- export {
132
- step1Schema,
133
- validateEventDates
134
- };
135
- //# sourceMappingURL=step1.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"step1.js","sources":["../../../../src/components/EventAddForm/schemas/step1.ts"],"sourcesContent":["import { z } from \"zod\";\r\nimport { timestampSchema } from \"./utils\";\r\n\r\n// Adaptive validation function for dynamic checking\r\nexport const validateEventDates = (data: Partial<Step1Data>) => {\r\n const errors: Record<string, string> = {};\r\n const { event_start_timestamp, event_end_timestamp, registration_start_timestamp, registration_end_timestamp } = data;\r\n\r\n const getDates = (d?: { date: string, time: string }) => {\r\n if (!d?.date) return null; // Only need date for basic logic\r\n // Parse \"YYYY-MM-DD\" + optional time\r\n const [year, month, day] = d.date.split('-').map(Number);\r\n\r\n let hours = 0, minutes = 0;\r\n if (d.time) {\r\n [hours, minutes] = d.time.split(':').map(Number);\r\n }\r\n\r\n return new Date(year, month - 1, day, hours, minutes);\r\n };\r\n\r\n const eStart = getDates(event_start_timestamp);\r\n const eEnd = getDates(event_end_timestamp);\r\n const rStart = getDates(registration_start_timestamp);\r\n const rEnd = getDates(registration_end_timestamp);\r\n\r\n // 1. Event Dates Validation\r\n if (eStart && eEnd) {\r\n if (eEnd < eStart) {\r\n if (eStart.toDateString() === eEnd.toDateString()) {\r\n errors.event_end_timestamp = \"Event end time cannot be before start time\";\r\n } else {\r\n errors.event_end_timestamp = \"Event end date cannot be before start date\";\r\n }\r\n } else {\r\n const diffMinutes = (eEnd.getTime() - eStart.getTime()) / (1000 * 60);\r\n if (diffMinutes < 30) {\r\n errors.event_end_timestamp = \"Event duration must be at least 30 minutes\";\r\n }\r\n }\r\n }\r\n\r\n // 2. Registration vs General Rules\r\n // rStart cannot be after rEnd\r\n if (rStart && rEnd && rStart >= rEnd) {\r\n errors.registration_start_timestamp = \"Registration start must be before registration end\";\r\n }\r\n // rStart cannot be after eStart\r\n if (rStart && eStart && rStart > eStart) {\r\n errors.registration_start_timestamp = \"Registration start cannot be after event start\";\r\n }\r\n // rStart cannot be after eEnd\r\n if (rStart && eEnd && rStart > eEnd) {\r\n errors.registration_start_timestamp = \"Registration start cannot be after event end\";\r\n }\r\n\r\n // rEnd cannot be before rStart\r\n if (rEnd && rStart && rEnd <= rStart) {\r\n errors.registration_end_timestamp = \"Registration end must be after registration start\";\r\n }\r\n // rEnd cannot be after eEnd\r\n if (rEnd && eEnd && rEnd > eEnd) {\r\n errors.registration_end_timestamp = \"Registration end cannot be after event end\";\r\n }\r\n\r\n // eStart cannot be before rStart\r\n if (eStart && rStart && eStart < rStart) {\r\n errors.event_start_timestamp = \"Event start cannot be before registration start\";\r\n }\r\n\r\n // eEnd cannot be before rStart, rEnd, eStart\r\n if (eEnd && rStart && eEnd < rStart) {\r\n errors.event_end_timestamp = \"Event end cannot be before registration start\";\r\n }\r\n if (eEnd && rEnd && eEnd < rEnd) {\r\n errors.event_end_timestamp = \"Event end cannot be before registration end\";\r\n }\r\n\r\n return errors;\r\n};\r\n\r\n// Location Interface matching the one used in the app\r\nexport interface LocationData {\r\n placeId: string;\r\n description?: string;\r\n displayName?: string;\r\n address?: string;\r\n type?: 'in-person' | 'online';\r\n coordinates?: { lat: number; lng: number };\r\n platform?: string;\r\n meetingUrl?: string;\r\n}\r\n\r\n// --- Step 1 Schema ---\r\n\r\nexport const step1Schema = z.object({\r\n name: z.string().trim()\r\n .min(1, \"Event Name is required\")\r\n .min(3, \"Name must be at least 3 characters\")\r\n .regex(/^[a-zA-Z0-9]/, \"Event Name cannot start with a special character\"),\r\n image_url: z.string().min(1, \"Event Cover Image is required\"),\r\n thumbnail_url: z.string().optional(),\r\n description: z.string().trim()\r\n .min(1, \"Description is required\")\r\n .min(10, \"Please enter a valid description\")\r\n .refine(val => val !== \"<p><br></p>\", \"Description is required\")\r\n .refine(val => {\r\n const stripped = val.replace(/<[^>]*>?/gm, '').trim();\r\n // Handle edgecases from quill like just spaces\r\n return stripped.replace(/&nbsp;/g, \"\").trim().length > 0;\r\n }, \"Description cannot be empty spaces\"),\r\n\r\n // Changed from string to array for multi-select checkboxes as requested\r\n event_type: z.array(z.string()).min(1, \"At least one Event type is required\"),\r\n\r\n // Dates\r\n event_start_timestamp: timestampSchema.refine(val => !!val.date && !!val.time, \"Event Start Date and Time are required\"),\r\n event_end_timestamp: timestampSchema.refine(val => !!val.date && !!val.time, \"Event End Date and Time are required\"),\r\n registration_start_timestamp: timestampSchema.refine(val => !!val.date && !!val.time, \"Registration Start Date and Time are required\"),\r\n registration_end_timestamp: timestampSchema.refine(val => !!val.date && !!val.time, \"Registration End Date and Time are required\"),\r\n\r\n // Location\r\n venue: z.string().trim().min(1, \"Venue is required\"), // Often set by location logic\r\n venue_place_id: z.string().optional(),\r\n location_data: z.any(),\r\n location_type: z.string().min(1, \"Location type is required\").refine(val => [\"in-person\", \"online\"].includes(val), \"Location type is required\").superRefine((val, ctx) => {\r\n if (!val) {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Location type is required\",\r\n path: [\"location_data\"]\r\n });\r\n }\r\n }),\r\n\r\n // Categories (Multi-select)\r\n event_categories: z.array(z.string()).min(1, \"Select at least one category\").max(2, \"Cannot select more than 2 categories\"),\r\n\r\n custom_category: z.string().trim().optional(),\r\n\r\n institution_name: z.string().trim().optional(),\r\n\r\n}).superRefine((data, ctx) => {\r\n // 1. Timestamp Validation (Using the adaptive function)\r\n const dateErrors = validateEventDates(data as Partial<Step1Data>);\r\n Object.entries(dateErrors).forEach(([field, message]) => {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: message,\r\n path: [field]\r\n });\r\n });\r\n\r\n const loc = data.location_data as LocationData;\r\n if (!loc || typeof loc !== 'object') {\r\n ctx.addIssue({\r\n code: z.ZodIssueCode.custom,\r\n message: \"Location data is required\",\r\n path: [\"location_data\"]\r\n });\r\n } else {\r\n if (loc.type === 'in-person') {\r\n if (!loc.displayName?.trim()) {\r\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: \"Physical location name is required\", path: [\"venue\"] });\r\n }\r\n if (!loc.address?.trim()) {\r\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: \"Physical location address is required\", path: [\"venue\"] });\r\n }\r\n } else if (loc.type === 'online' && loc.platform !== 'google-meet') {\r\n if (!loc.displayName?.trim()) {\r\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: \"Virtual meeting name is required\", path: [\"venue\"] });\r\n }\r\n if (!loc.meetingUrl?.trim()) {\r\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: \"Meeting URL is required\", path: [\"venue\"] });\r\n }\r\n }\r\n }\r\n\r\n if (data.event_type?.includes('INTERNAL') && !data.institution_name?.trim()) {\r\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: \"Institution name is required\", path: [\"institution_name\"] });\r\n }\r\n});\r\n\r\nexport type Step1Data = z.infer<typeof step1Schema>;\r\n"],"names":["z.object","z.string","z.array","z.any","z.ZodIssueCode"],"mappings":"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"}
@@ -1,138 +0,0 @@
1
- import { z } from 'zod';
2
-
3
- export declare const ticketTierSchema: z.ZodObject<{
4
- ticket_type: z.ZodLiteral<"TICKET_TIER">;
5
- ticket_tiers: z.ZodPipe<z.ZodOptional<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny>]>>, z.ZodTransform<Record<string, any>, any[] | Record<string, any>>>;
6
- }, z.core.$strip>;
7
- export declare const individualSchema: z.ZodObject<{
8
- individual_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
9
- individual_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
10
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
11
- participants_type: z.ZodLiteral<"INDIVIDUAL">;
12
- }, z.core.$strip>;
13
- export declare const teamSchema: z.ZodObject<{
14
- team_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
15
- team_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
16
- min_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
17
- max_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
18
- per_member_fee: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
19
- charge_team_price: z.ZodOptional<z.ZodEnum<{
20
- YES: "YES";
21
- NO: "NO";
22
- }>>;
23
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
24
- participants_type: z.ZodLiteral<"TEAM">;
25
- }, z.core.$strip>;
26
- export declare const bothSchema: z.ZodObject<{
27
- team_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
28
- team_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
29
- min_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
30
- max_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
31
- per_member_fee: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
32
- charge_team_price: z.ZodOptional<z.ZodEnum<{
33
- YES: "YES";
34
- NO: "NO";
35
- }>>;
36
- individual_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
37
- individual_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
38
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
39
- participants_type: z.ZodLiteral<"BOTH">;
40
- }, z.core.$strip>;
41
- export declare const step2Schema: z.ZodUnion<readonly [z.ZodObject<{
42
- ticket_type: z.ZodLiteral<"TICKET_TIER">;
43
- ticket_tiers: z.ZodPipe<z.ZodOptional<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny>]>>, z.ZodTransform<Record<string, any>, any[] | Record<string, any>>>;
44
- }, z.core.$strip>, z.ZodObject<{
45
- individual_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
46
- individual_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
47
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
48
- participants_type: z.ZodLiteral<"INDIVIDUAL">;
49
- }, z.core.$strip>, z.ZodObject<{
50
- team_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
51
- team_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
52
- min_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
53
- max_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
54
- per_member_fee: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
55
- charge_team_price: z.ZodOptional<z.ZodEnum<{
56
- YES: "YES";
57
- NO: "NO";
58
- }>>;
59
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
60
- participants_type: z.ZodLiteral<"TEAM">;
61
- }, z.core.$strip>, z.ZodObject<{
62
- team_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
63
- team_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
64
- min_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
65
- max_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
66
- per_member_fee: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
67
- charge_team_price: z.ZodOptional<z.ZodEnum<{
68
- YES: "YES";
69
- NO: "NO";
70
- }>>;
71
- individual_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
72
- individual_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
73
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
74
- participants_type: z.ZodLiteral<"BOTH">;
75
- }, z.core.$strip>]>;
76
- export declare const getStep2Schema: (data: any) => z.ZodObject<{
77
- ticket_type: z.ZodLiteral<"TICKET_TIER">;
78
- ticket_tiers: z.ZodPipe<z.ZodOptional<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny>]>>, z.ZodTransform<Record<string, any>, any[] | Record<string, any>>>;
79
- }, z.core.$strip> | z.ZodObject<{
80
- individual_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
81
- individual_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
82
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
83
- participants_type: z.ZodLiteral<"INDIVIDUAL">;
84
- }, z.core.$strip> | z.ZodObject<{
85
- team_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
86
- team_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
87
- min_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
88
- max_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
89
- per_member_fee: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
90
- charge_team_price: z.ZodOptional<z.ZodEnum<{
91
- YES: "YES";
92
- NO: "NO";
93
- }>>;
94
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
95
- participants_type: z.ZodLiteral<"TEAM">;
96
- }, z.core.$strip> | z.ZodObject<{
97
- team_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
98
- team_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
99
- min_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
100
- max_members: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
101
- per_member_fee: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
102
- charge_team_price: z.ZodOptional<z.ZodEnum<{
103
- YES: "YES";
104
- NO: "NO";
105
- }>>;
106
- individual_price: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
107
- individual_capacity: z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber> | z.ZodOptional<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
108
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
109
- participants_type: z.ZodLiteral<"BOTH">;
110
- }, z.core.$strip> | z.ZodObject<{
111
- ticket_type: z.ZodLiteral<"CUSTOM_FORM">;
112
- participants_type: z.ZodEnum<{
113
- INDIVIDUAL: "INDIVIDUAL";
114
- TEAM: "TEAM";
115
- BOTH: "BOTH";
116
- }>;
117
- }, z.core.$strip> | z.ZodObject<{
118
- ticket_type: z.ZodEnum<{
119
- TICKET_TIER: "TICKET_TIER";
120
- CUSTOM_FORM: "CUSTOM_FORM";
121
- }>;
122
- }, z.core.$strip>;
123
- export type Step2Data = {
124
- ticket_type: "TICKET_TIER" | "CUSTOM_FORM";
125
- ticket_tiers?: Record<string, any>;
126
- custom_form?: boolean;
127
- participants_type?: "INDIVIDUAL" | "TEAM" | "BOTH";
128
- individual_price?: number;
129
- individual_capacity?: number;
130
- team_price?: number;
131
- team_capacity?: number;
132
- min_members?: number;
133
- max_members?: number;
134
- per_member_fee?: number;
135
- charge_per_delegate_fee?: "YES" | "NO";
136
- charge_team_price?: "YES" | "NO";
137
- event_form_schema?: any;
138
- };
@@ -1,94 +0,0 @@
1
- import { preprocessNumber } from "./utils.js";
2
- import { object, union, record, array, literal, enum as _enum, any, string } from "../../../node_modules/zod/v4/classic/schemas.js";
3
- import { ZodIssueCode } from "../../../node_modules/zod/v4/classic/compat.js";
4
- const teamFieldsFn = () => ({
5
- team_price: preprocessNumber(0, "Price must be a number", true, 1e6, "Team price cannot exceed 1,000,000"),
6
- team_capacity: preprocessNumber(1, "Capacity must be provided"),
7
- min_members: preprocessNumber(2, "Minimum 2 members required"),
8
- max_members: preprocessNumber(2, "Maximum members must be at least 2"),
9
- per_member_fee: preprocessNumber(0, "Fee must be a number", true, 1e6, "Per-member fee cannot exceed 1,000,000"),
10
- charge_team_price: _enum(["YES", "NO"]).optional()
11
- });
12
- const individualFieldsFn = () => ({
13
- individual_price: preprocessNumber(0, "Price must be a number", true, 1e6, "Individual price cannot exceed 1,000,000"),
14
- individual_capacity: preprocessNumber(1, "Capacity must be provided")
15
- });
16
- const teamRefinement = (data, ctx) => {
17
- if (typeof data.min_members === "number" && typeof data.max_members === "number") {
18
- if (data.max_members > 0 && data.min_members > data.max_members) {
19
- ctx.addIssue({ code: ZodIssueCode.custom, message: "Minimum Members should not exceed Maximum Members", path: ["min_members"] });
20
- }
21
- }
22
- if (typeof data.team_capacity === "number" && typeof data.max_members === "number") {
23
- if (data.team_capacity < data.max_members) {
24
- ctx.addIssue({ code: ZodIssueCode.custom, message: "Capacity must be greater than or equal to max members", path: ["team_capacity"] });
25
- }
26
- }
27
- };
28
- const ticketTierSchema = object({
29
- ticket_type: literal("TICKET_TIER"),
30
- ticket_tiers: union([
31
- record(string(), any()),
32
- array(any())
33
- ]).optional().transform((val) => {
34
- if (Array.isArray(val)) return {};
35
- return val || {};
36
- }).refine((data) => Object.keys(data).length > 0, {
37
- message: "Please add at least one ticket tier to proceed"
38
- })
39
- });
40
- const individualSchema = object({
41
- ticket_type: literal("CUSTOM_FORM"),
42
- participants_type: literal("INDIVIDUAL"),
43
- ...individualFieldsFn()
44
- });
45
- const teamSchema = object({
46
- ticket_type: literal("CUSTOM_FORM"),
47
- participants_type: literal("TEAM"),
48
- ...teamFieldsFn()
49
- }).superRefine(teamRefinement);
50
- const bothSchema = object({
51
- ticket_type: literal("CUSTOM_FORM"),
52
- participants_type: literal("BOTH"),
53
- ...individualFieldsFn(),
54
- ...teamFieldsFn()
55
- }).superRefine(teamRefinement);
56
- const baseCustomFormSchema = object({
57
- ticket_type: literal("CUSTOM_FORM"),
58
- participants_type: _enum(["INDIVIDUAL", "TEAM", "BOTH"])
59
- });
60
- const baseStep2Schema = object({
61
- ticket_type: _enum(["TICKET_TIER", "CUSTOM_FORM"])
62
- });
63
- union([
64
- ticketTierSchema,
65
- individualSchema,
66
- teamSchema,
67
- bothSchema
68
- ]);
69
- const getStep2Schema = (data) => {
70
- if ((data == null ? void 0 : data.ticket_type) === "TICKET_TIER") {
71
- return ticketTierSchema;
72
- }
73
- if ((data == null ? void 0 : data.ticket_type) === "CUSTOM_FORM") {
74
- switch (data == null ? void 0 : data.participants_type) {
75
- case "INDIVIDUAL":
76
- return individualSchema;
77
- case "TEAM":
78
- return teamSchema;
79
- case "BOTH":
80
- return bothSchema;
81
- default:
82
- return baseCustomFormSchema;
83
- }
84
- }
85
- return baseStep2Schema;
86
- };
87
- export {
88
- bothSchema,
89
- getStep2Schema,
90
- individualSchema,
91
- teamSchema,
92
- ticketTierSchema
93
- };
94
- //# sourceMappingURL=step2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"step2.js","sources":["../../../../src/components/EventAddForm/schemas/step2.ts"],"sourcesContent":["import { z } from \"zod\";\r\nimport { preprocessNumber } from \"./utils\";\r\n\r\nconst teamFieldsFn = () => ({\r\n team_price: preprocessNumber(0, \"Price must be a number\", true, 1000000, \"Team price cannot exceed 1,000,000\"),\r\n team_capacity: preprocessNumber(1, \"Capacity must be provided\"),\r\n min_members: preprocessNumber(2, \"Minimum 2 members required\"),\r\n max_members: preprocessNumber(2, \"Maximum members must be at least 2\"),\r\n per_member_fee: preprocessNumber(0, \"Fee must be a number\", true, 1000000, \"Per-member fee cannot exceed 1,000,000\"),\r\n charge_team_price: z.enum([\"YES\", \"NO\"]).optional(),\r\n});\r\n\r\nconst individualFieldsFn = () => ({\r\n individual_price: preprocessNumber(0, \"Price must be a number\", true, 1000000, \"Individual price cannot exceed 1,000,000\"),\r\n individual_capacity: preprocessNumber(1, \"Capacity must be provided\"),\r\n});\r\n\r\nconst teamRefinement = (data: any, ctx: z.RefinementCtx) => {\r\n // Only run these checks if the base numbers are valid (exist)\r\n if (typeof data.min_members === 'number' && typeof data.max_members === 'number') {\r\n if (data.max_members > 0 && data.min_members > data.max_members) {\r\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: \"Minimum Members should not exceed Maximum Members\", path: [\"min_members\"] });\r\n }\r\n }\r\n if (typeof data.team_capacity === 'number' && typeof data.max_members === 'number') {\r\n if (data.team_capacity < data.max_members) {\r\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: \"Capacity must be greater than or equal to max members\", path: [\"team_capacity\"] });\r\n }\r\n }\r\n};\r\n\r\n// 1. Ticket Tier Schema\r\nexport const ticketTierSchema = z.object({\r\n ticket_type: z.literal(\"TICKET_TIER\"),\r\n ticket_tiers: z.union([\r\n z.record(z.string(), z.any()),\r\n z.array(z.any())\r\n ]).optional()\r\n .transform((val) => {\r\n if (Array.isArray(val)) return {};\r\n return val || {};\r\n })\r\n .refine((data) => Object.keys(data).length > 0, {\r\n message: \"Please add at least one ticket tier to proceed\",\r\n }),\r\n});\r\n\r\n// 2. Individual Schema\r\nexport const individualSchema = z.object({\r\n ticket_type: z.literal(\"CUSTOM_FORM\"),\r\n participants_type: z.literal(\"INDIVIDUAL\"),\r\n ...individualFieldsFn()\r\n});\r\n\r\n// 3. Team Schema\r\nexport const teamSchema = z.object({\r\n ticket_type: z.literal(\"CUSTOM_FORM\"),\r\n participants_type: z.literal(\"TEAM\"),\r\n ...teamFieldsFn()\r\n}).superRefine(teamRefinement);\r\n\r\n// 4. Both Schema\r\nexport const bothSchema = z.object({\r\n ticket_type: z.literal(\"CUSTOM_FORM\"),\r\n participants_type: z.literal(\"BOTH\"),\r\n ...individualFieldsFn(),\r\n ...teamFieldsFn()\r\n}).superRefine(teamRefinement);\r\n\r\n// Fallback / Base Schema for partial data\r\nconst baseCustomFormSchema = z.object({\r\n ticket_type: z.literal(\"CUSTOM_FORM\"),\r\n participants_type: z.enum([\"INDIVIDUAL\", \"TEAM\", \"BOTH\"])\r\n});\r\n\r\nconst baseStep2Schema = z.object({\r\n ticket_type: z.enum([\"TICKET_TIER\", \"CUSTOM_FORM\"])\r\n});\r\n\r\n\r\nexport const step2Schema = z.union([\r\n ticketTierSchema,\r\n individualSchema,\r\n teamSchema,\r\n bothSchema\r\n]);\r\n\r\nexport const getStep2Schema = (data: any) => {\r\n if (data?.ticket_type === \"TICKET_TIER\") {\r\n return ticketTierSchema;\r\n }\r\n if (data?.ticket_type === \"CUSTOM_FORM\") {\r\n switch (data?.participants_type) {\r\n case \"INDIVIDUAL\":\r\n return individualSchema;\r\n case \"TEAM\":\r\n return teamSchema;\r\n case \"BOTH\":\r\n return bothSchema;\r\n default:\r\n return baseCustomFormSchema;\r\n }\r\n }\r\n return baseStep2Schema;\r\n};\r\n\r\n// Export a flat type for the form state to avoid union type issues in the generic hook\r\nexport type Step2Data = {\r\n ticket_type: \"TICKET_TIER\" | \"CUSTOM_FORM\";\r\n ticket_tiers?: Record<string, any>;\r\n custom_form?: boolean;\r\n participants_type?: \"INDIVIDUAL\" | \"TEAM\" | \"BOTH\";\r\n // Individual\r\n individual_price?: number;\r\n individual_capacity?: number;\r\n // Team\r\n team_price?: number;\r\n team_capacity?: number;\r\n min_members?: number;\r\n max_members?: number;\r\n per_member_fee?: number;\r\n charge_per_delegate_fee?: \"YES\" | \"NO\";\r\n charge_team_price?: \"YES\" | \"NO\";\r\n event_form_schema?: any;\r\n};\r\n"],"names":["z.enum","z.ZodIssueCode","z.object","z.literal","z.union","z.record","z.string","z.any","z.array"],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- import { object, string, number, preprocess } from "../../../node_modules/zod/v4/classic/schemas.js";
2
- const preprocessNumber = (min, requiredMessage, isOptional = false, max, maxMessage) => {
3
- let numberSchema = number().min(min, requiredMessage);
4
- if (max !== void 0) {
5
- numberSchema = numberSchema.max(max, maxMessage || `Value cannot exceed ${max.toLocaleString()}`);
6
- }
7
- const schema = preprocess(
8
- (val) => {
9
- if (val === "" || val === null || val === void 0) return 0;
10
- const parsed = Number(val);
11
- return isNaN(parsed) ? 0 : parsed;
12
- },
13
- numberSchema
14
- );
15
- if (isOptional) {
16
- return schema.optional();
17
- }
18
- return schema;
19
- };
20
- const timestampSchema = object({
21
- date: string(),
22
- time: string()
23
- });
24
- export {
25
- preprocessNumber,
26
- timestampSchema
27
- };
28
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/components/EventAddForm/schemas/utils.ts"],"sourcesContent":["import { z } from \"zod\";\r\n\r\nexport const preprocessNumber = (min: number, requiredMessage: string, isOptional = false, max?: number, maxMessage?: string) => {\r\n let numberSchema = z.number().min(min, requiredMessage);\r\n\r\n if (max !== undefined) {\r\n numberSchema = numberSchema.max(max, maxMessage || `Value cannot exceed ${max.toLocaleString()}`);\r\n }\r\n\r\n const schema = z.preprocess(\r\n (val) => {\r\n if (val === \"\" || val === null || val === undefined) return 0;\r\n const parsed = Number(val);\r\n return isNaN(parsed) ? 0 : parsed;\r\n },\r\n numberSchema\r\n );\r\n\r\n if (isOptional) {\r\n return schema.optional();\r\n }\r\n return schema;\r\n};\r\n\r\nexport const timestampSchema = z.object({\r\n date: z.string(),\r\n time: z.string()\r\n});\r\n"],"names":["z.number","z.preprocess","z.object","z.string"],"mappings":";AAEO,MAAM,mBAAmB,CAAC,KAAa,iBAAyB,aAAa,OAAO,KAAc,eAAwB;AAC7H,MAAI,eAAeA,OAAE,EAAS,IAAI,KAAK,eAAe;AAEtD,MAAI,QAAQ,QAAW;AACnB,mBAAe,aAAa,IAAI,KAAK,cAAc,uBAAuB,IAAI,eAAA,CAAgB,EAAE;AAAA,EACpG;AAEA,QAAM,SAASC;AAAAA,IACX,CAAC,QAAQ;AACL,UAAI,QAAQ,MAAM,QAAQ,QAAQ,QAAQ,OAAW,QAAO;AAC5D,YAAM,SAAS,OAAO,GAAG;AACzB,aAAO,MAAM,MAAM,IAAI,IAAI;AAAA,IAC/B;AAAA,IACA;AAAA,EAAA;AAGJ,MAAI,YAAY;AACZ,WAAO,OAAO,SAAA;AAAA,EAClB;AACA,SAAO;AACX;AAEO,MAAM,kBAAkBC,OAAS;AAAA,EACpC,MAAMC,OAAE;AAAA,EACR,MAAMA,OAAE;AACZ,CAAC;"}