@myrjfa/state 2.2.0 → 2.3.1

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 (249) hide show
  1. package/LICENSE +201 -201
  2. package/README.md +20 -3
  3. package/dist/index.d.ts +8 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +8 -0
  6. package/dist/lib/actions/actions.d.ts +13 -13
  7. package/dist/lib/actions/actions.d.ts.map +1 -1
  8. package/dist/lib/actions/actions.js +5 -4
  9. package/dist/lib/actions/adminDashboard.d.ts +4 -0
  10. package/dist/lib/actions/adminDashboard.d.ts.map +1 -0
  11. package/dist/lib/actions/adminDashboard.js +29 -0
  12. package/dist/lib/actions/adventure.d.ts +104 -0
  13. package/dist/lib/actions/adventure.d.ts.map +1 -0
  14. package/dist/lib/actions/adventure.js +203 -0
  15. package/dist/lib/actions/application.d.ts +35 -0
  16. package/dist/lib/actions/application.d.ts.map +1 -0
  17. package/dist/lib/actions/application.js +573 -0
  18. package/dist/lib/actions/auth.d.ts +108 -3
  19. package/dist/lib/actions/auth.d.ts.map +1 -1
  20. package/dist/lib/actions/auth.js +38 -8
  21. package/dist/lib/actions/blog.d.ts +61 -0
  22. package/dist/lib/actions/blog.d.ts.map +1 -0
  23. package/dist/lib/actions/blog.js +762 -0
  24. package/dist/lib/actions/brand.d.ts +83 -0
  25. package/dist/lib/actions/brand.d.ts.map +1 -0
  26. package/dist/lib/actions/brand.js +28 -0
  27. package/dist/lib/actions/chat.d.ts +261 -24
  28. package/dist/lib/actions/chat.d.ts.map +1 -1
  29. package/dist/lib/actions/chat.js +525 -41
  30. package/dist/lib/actions/companion.d.ts +174 -0
  31. package/dist/lib/actions/companion.d.ts.map +1 -0
  32. package/dist/lib/actions/companion.js +276 -0
  33. package/dist/lib/actions/event.d.ts +178 -0
  34. package/dist/lib/actions/event.d.ts.map +1 -0
  35. package/dist/lib/actions/event.js +214 -0
  36. package/dist/lib/actions/fetcher.d.ts.map +1 -1
  37. package/dist/lib/actions/fetcher.js +18 -8
  38. package/dist/lib/actions/guide.d.ts +55 -0
  39. package/dist/lib/actions/guide.d.ts.map +1 -0
  40. package/dist/lib/actions/guide.js +128 -0
  41. package/dist/lib/actions/hostDashboard.d.ts +122 -0
  42. package/dist/lib/actions/hostDashboard.d.ts.map +1 -0
  43. package/dist/lib/actions/hostDashboard.js +329 -0
  44. package/dist/lib/actions/location.d.ts +141 -0
  45. package/dist/lib/actions/location.d.ts.map +1 -0
  46. package/dist/lib/actions/location.js +113 -0
  47. package/dist/lib/actions/notifications.d.ts +91 -0
  48. package/dist/lib/actions/notifications.d.ts.map +1 -0
  49. package/dist/lib/actions/notifications.js +83 -0
  50. package/dist/lib/actions/opportunity.d.ts +44 -0
  51. package/dist/lib/actions/opportunity.d.ts.map +1 -0
  52. package/dist/lib/actions/opportunity.js +318 -0
  53. package/dist/lib/actions/package.d.ts +85 -0
  54. package/dist/lib/actions/package.d.ts.map +1 -0
  55. package/dist/lib/actions/package.js +167 -0
  56. package/dist/lib/actions/place.d.ts +191 -0
  57. package/dist/lib/actions/place.d.ts.map +1 -0
  58. package/dist/lib/actions/place.js +57 -0
  59. package/dist/lib/actions/portfolio.d.ts +65 -0
  60. package/dist/lib/actions/portfolio.d.ts.map +1 -0
  61. package/dist/lib/actions/portfolio.js +62 -0
  62. package/dist/lib/actions/property.d.ts +17 -0
  63. package/dist/lib/actions/property.d.ts.map +1 -0
  64. package/dist/lib/actions/property.js +16 -0
  65. package/dist/lib/actions/rental.d.ts +87 -0
  66. package/dist/lib/actions/rental.d.ts.map +1 -0
  67. package/dist/lib/actions/rental.js +205 -0
  68. package/dist/lib/actions/review.d.ts +8 -0
  69. package/dist/lib/actions/review.d.ts.map +1 -0
  70. package/dist/lib/actions/review.js +102 -0
  71. package/dist/lib/actions/room.d.ts +39 -0
  72. package/dist/lib/actions/room.d.ts.map +1 -0
  73. package/dist/lib/actions/room.js +74 -0
  74. package/dist/lib/actions/serverActions.d.ts +1 -0
  75. package/dist/lib/actions/serverActions.d.ts.map +1 -1
  76. package/dist/lib/actions/serverActions.js +15 -0
  77. package/dist/lib/actions/socket.d.ts.map +1 -1
  78. package/dist/lib/actions/socket.js +5 -1
  79. package/dist/lib/actions/stay.d.ts +97 -0
  80. package/dist/lib/actions/stay.d.ts.map +1 -0
  81. package/dist/lib/actions/stay.js +138 -0
  82. package/dist/lib/actions/travelPackage.d.ts +104 -0
  83. package/dist/lib/actions/travelPackage.d.ts.map +1 -0
  84. package/dist/lib/actions/travelPackage.js +487 -0
  85. package/dist/lib/actions.d.ts +24 -24
  86. package/dist/lib/actions.d.ts.map +1 -1
  87. package/dist/lib/actions.js +14 -11
  88. package/dist/lib/adminDashboardActions.d.ts +15 -3
  89. package/dist/lib/adminDashboardActions.d.ts.map +1 -1
  90. package/dist/lib/adminDashboardActions.js +16 -7
  91. package/dist/lib/authSessionManager.d.ts.map +1 -1
  92. package/dist/lib/authSessionManager.js +4 -3
  93. package/dist/lib/authSessionPolicy.d.ts +10 -0
  94. package/dist/lib/authSessionPolicy.d.ts.map +1 -0
  95. package/dist/lib/authSessionPolicy.js +9 -0
  96. package/dist/lib/authorizationActions.d.ts +77 -0
  97. package/dist/lib/authorizationActions.d.ts.map +1 -0
  98. package/dist/lib/authorizationActions.js +61 -0
  99. package/dist/lib/context/ChatContext.d.ts +25 -6
  100. package/dist/lib/context/ChatContext.d.ts.map +1 -1
  101. package/dist/lib/context/ChatContext.js +356 -245
  102. package/dist/lib/data/adventureDummyData.d.ts +3 -0
  103. package/dist/lib/data/adventureDummyData.d.ts.map +1 -0
  104. package/dist/lib/data/adventureDummyData.js +138 -0
  105. package/dist/lib/data/adventureFormPage.d.ts +28 -0
  106. package/dist/lib/data/adventureFormPage.d.ts.map +1 -0
  107. package/dist/lib/data/adventureFormPage.js +58 -0
  108. package/dist/lib/data/companionDummyData.d.ts +99 -0
  109. package/dist/lib/data/companionDummyData.d.ts.map +1 -0
  110. package/dist/lib/data/companionDummyData.js +203 -0
  111. package/dist/lib/data/destinations.d.ts +14 -0
  112. package/dist/lib/data/destinations.d.ts.map +1 -0
  113. package/dist/lib/data/destinations.js +203 -0
  114. package/dist/lib/data/eventFormPage.d.ts +38 -0
  115. package/dist/lib/data/eventFormPage.d.ts.map +1 -0
  116. package/dist/lib/data/eventFormPage.js +56 -0
  117. package/dist/lib/data/eventsDummyData.d.ts +54 -0
  118. package/dist/lib/data/eventsDummyData.d.ts.map +1 -0
  119. package/dist/lib/data/eventsDummyData.js +586 -0
  120. package/dist/lib/data/guideDummyData.d.ts +3 -0
  121. package/dist/lib/data/guideDummyData.d.ts.map +1 -0
  122. package/dist/lib/data/guideDummyData.js +66 -0
  123. package/dist/lib/data/opportunityFormData.d.ts +13 -0
  124. package/dist/lib/data/opportunityFormData.d.ts.map +1 -0
  125. package/dist/lib/data/opportunityFormData.js +62 -0
  126. package/dist/lib/data/opportunityFormPage.d.ts +12 -0
  127. package/dist/lib/data/opportunityFormPage.d.ts.map +1 -0
  128. package/dist/lib/data/opportunityFormPage.js +33 -0
  129. package/dist/lib/data/packageDummyData.d.ts +3 -0
  130. package/dist/lib/data/packageDummyData.d.ts.map +1 -0
  131. package/dist/lib/data/packageDummyData.js +56 -0
  132. package/dist/lib/data/rentalDummyData.d.ts +3 -0
  133. package/dist/lib/data/rentalDummyData.d.ts.map +1 -0
  134. package/dist/lib/data/rentalDummyData.js +382 -0
  135. package/dist/lib/data/rentalFormPage.d.ts +11 -0
  136. package/dist/lib/data/rentalFormPage.d.ts.map +1 -0
  137. package/dist/lib/data/rentalFormPage.js +86 -0
  138. package/dist/lib/data/staysDummyData.d.ts +72 -0
  139. package/dist/lib/data/staysDummyData.d.ts.map +1 -0
  140. package/dist/lib/data/staysDummyData.js +694 -0
  141. package/dist/lib/data/storeDummyData.d.ts +33 -0
  142. package/dist/lib/data/storeDummyData.d.ts.map +1 -0
  143. package/dist/lib/data/storeDummyData.js +336 -0
  144. package/dist/lib/data/travelPackageFormData.d.ts +19 -0
  145. package/dist/lib/data/travelPackageFormData.d.ts.map +1 -0
  146. package/dist/lib/data/travelPackageFormData.js +51 -0
  147. package/dist/lib/data/travelPackageFormPage.d.ts +22 -0
  148. package/dist/lib/data/travelPackageFormPage.d.ts.map +1 -0
  149. package/dist/lib/data/travelPackageFormPage.js +40 -0
  150. package/dist/lib/data/vehicleData.d.ts +2 -0
  151. package/dist/lib/data/vehicleData.d.ts.map +1 -0
  152. package/dist/lib/data/vehicleData.js +187 -0
  153. package/dist/lib/data/vehicleModels.d.ts +2 -0
  154. package/dist/lib/data/vehicleModels.d.ts.map +1 -0
  155. package/dist/lib/data/vehicleModels.js +128 -0
  156. package/dist/lib/discountActions.d.ts +43 -0
  157. package/dist/lib/discountActions.d.ts.map +1 -0
  158. package/dist/lib/discountActions.js +69 -0
  159. package/dist/lib/hooks/usePersistentDraftState.d.ts +20 -0
  160. package/dist/lib/hooks/usePersistentDraftState.d.ts.map +1 -0
  161. package/dist/lib/hooks/usePersistentDraftState.js +47 -0
  162. package/dist/lib/loyaltyActions.d.ts +32 -0
  163. package/dist/lib/loyaltyActions.d.ts.map +1 -0
  164. package/dist/lib/loyaltyActions.js +92 -0
  165. package/dist/lib/models/adventure.d.ts +0 -2
  166. package/dist/lib/models/adventure.d.ts.map +1 -1
  167. package/dist/lib/models/authorization.d.ts +107 -0
  168. package/dist/lib/models/authorization.d.ts.map +1 -0
  169. package/dist/lib/models/authorization.js +263 -0
  170. package/dist/lib/models/blog.d.ts +2 -2
  171. package/dist/lib/models/booking.d.ts +7 -2
  172. package/dist/lib/models/booking.d.ts.map +1 -1
  173. package/dist/lib/models/chat.d.ts +418 -32
  174. package/dist/lib/models/chat.d.ts.map +1 -1
  175. package/dist/lib/models/chat.js +5 -1
  176. package/dist/lib/models/discount.d.ts +587 -136
  177. package/dist/lib/models/discount.d.ts.map +1 -1
  178. package/dist/lib/models/discount.js +118 -96
  179. package/dist/lib/models/forms.d.ts +384 -0
  180. package/dist/lib/models/forms.d.ts.map +1 -0
  181. package/dist/lib/models/forms.js +121 -0
  182. package/dist/lib/models/guide.d.ts +0 -2
  183. package/dist/lib/models/guide.d.ts.map +1 -1
  184. package/dist/lib/models/loyalty.d.ts +88 -0
  185. package/dist/lib/models/loyalty.d.ts.map +1 -0
  186. package/dist/lib/models/loyalty.js +1 -0
  187. package/dist/lib/models/notifications.d.ts +4 -4
  188. package/dist/lib/models/opportunities/freelance.d.ts +66 -20
  189. package/dist/lib/models/opportunities/freelance.d.ts.map +1 -1
  190. package/dist/lib/models/opportunities/internship.d.ts +66 -20
  191. package/dist/lib/models/opportunities/internship.d.ts.map +1 -1
  192. package/dist/lib/models/opportunities/job.d.ts +66 -20
  193. package/dist/lib/models/opportunities/job.d.ts.map +1 -1
  194. package/dist/lib/models/opportunities/opportunity.d.ts +66 -20
  195. package/dist/lib/models/opportunities/opportunity.d.ts.map +1 -1
  196. package/dist/lib/models/opportunities/opportunity.js +2 -0
  197. package/dist/lib/models/opportunities/volunteerJob.d.ts +66 -20
  198. package/dist/lib/models/opportunities/volunteerJob.d.ts.map +1 -1
  199. package/dist/lib/models/package.d.ts +81 -220
  200. package/dist/lib/models/package.d.ts.map +1 -1
  201. package/dist/lib/models/package.js +0 -2
  202. package/dist/lib/models/props.d.ts +1 -1
  203. package/dist/lib/models/props.d.ts.map +1 -1
  204. package/dist/lib/models/rental.d.ts +0 -2
  205. package/dist/lib/models/rental.d.ts.map +1 -1
  206. package/dist/lib/models/stay.d.ts +4 -4
  207. package/dist/lib/models/store.d.ts +71 -0
  208. package/dist/lib/models/store.d.ts.map +1 -0
  209. package/dist/lib/models/store.js +1 -0
  210. package/dist/lib/models/tile.d.ts +0 -2
  211. package/dist/lib/models/tile.d.ts.map +1 -1
  212. package/dist/lib/models/travelPackage.d.ts +206 -305
  213. package/dist/lib/models/travelPackage.d.ts.map +1 -1
  214. package/dist/lib/models/travelPackage.js +0 -2
  215. package/dist/lib/models/user.d.ts +28 -4
  216. package/dist/lib/models/user.d.ts.map +1 -1
  217. package/dist/lib/models/user.js +10 -1
  218. package/dist/lib/opportunityFormPage.d.ts +1 -0
  219. package/dist/lib/opportunityFormPage.d.ts.map +1 -1
  220. package/dist/lib/opportunityFormPage.js +1 -0
  221. package/dist/lib/pricingActions.d.ts +13 -0
  222. package/dist/lib/pricingActions.d.ts.map +1 -0
  223. package/dist/lib/pricingActions.js +16 -0
  224. package/dist/lib/rentalActions.js +0 -1
  225. package/dist/lib/rentalDummyData.d.ts.map +1 -1
  226. package/dist/lib/rentalDummyData.js +0 -35
  227. package/dist/lib/rentalFormPage.d.ts +0 -2
  228. package/dist/lib/rentalFormPage.d.ts.map +1 -1
  229. package/dist/lib/rentalFormPage.js +0 -3
  230. package/dist/lib/storeActions.d.ts +25 -0
  231. package/dist/lib/storeActions.d.ts.map +1 -0
  232. package/dist/lib/storeActions.js +46 -0
  233. package/dist/lib/storeDummyData.d.ts +2 -26
  234. package/dist/lib/storeDummyData.d.ts.map +1 -1
  235. package/dist/lib/userAtom.d.ts +71 -36
  236. package/dist/lib/userAtom.d.ts.map +1 -1
  237. package/dist/lib/userAtom.js +11 -17
  238. package/dist/lib/utils/entitySubmission.d.ts +21 -0
  239. package/dist/lib/utils/entitySubmission.d.ts.map +1 -0
  240. package/dist/lib/utils/entitySubmission.js +10 -0
  241. package/dist/lib/utils/imageUpload.d.ts +4 -0
  242. package/dist/lib/utils/imageUpload.d.ts.map +1 -0
  243. package/dist/lib/utils/imageUpload.js +36 -0
  244. package/dist/lib/utils/tileConverters.d.ts +8 -0
  245. package/dist/lib/utils/tileConverters.d.ts.map +1 -0
  246. package/dist/lib/utils/tileConverters.js +59 -0
  247. package/dist/lib/utils.d.ts.map +1 -1
  248. package/dist/lib/utils.js +1 -1
  249. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"discount.d.ts","sourceRoot":"","sources":["../../../src/lib/models/discount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBjC,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEzB,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD,wBAAgB,2BAA2B,IAAI,QAAQ,CAkDtD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,QAAQ,CAItE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,GAAG,MAAM,CAO1G;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,SAAS,EACrC,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,IAAiB,EAC9B,UAAU,GAAE,MAAW,GACtB,gBAAgB,GAAG,SAAS,CAY9B"}
1
+ {"version":3,"file":"discount.d.ts","sourceRoot":"","sources":["../../../src/lib/models/discount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,yBAAyB,kFAAgF,CAAC;AACvH,eAAO,MAAM,0BAA0B,oLAGrC,CAAC;AACH,eAAO,MAAM,oBAAoB,2DAAyD,CAAC;AAC3F,eAAO,MAAM,oBAAoB,0FAAwF,CAAC;AAC1H,eAAO,MAAM,2BAA2B,sEAAoE,CAAC;AAE7G,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAIhC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBnC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BjC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBrC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB9B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;IAC5F,MAAM,EAAE,QAAQ,GAAG,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;IACrE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,MAAM,GAAE,cAAuB,GAAG,gBAAgB,CAoB7F"}
@@ -1,106 +1,128 @@
1
1
  import { z } from "zod";
2
+ export const DiscountFeatureTypeSchema = z.enum(["stay", "rental", "adventure", "event", "package", "guide", "store"]);
3
+ export const DiscountStrategyTypeSchema = z.enum([
4
+ "duration", "early_booking", "last_minute", "scheduled", "recurring", "group", "quantity",
5
+ "coupon", "first_booking", "checkout_recovery", "payment_offer", "partner",
6
+ ]);
7
+ export const DiscountOriginSchema = z.enum(["host", "staff_suggestion", "staff_campaign"]);
8
+ export const DiscountStatusSchema = z.enum(["draft", "suggested", "active", "paused", "rejected", "expired", "archived"]);
9
+ export const DiscountStackingGroupSchema = z.enum(["automatic", "coupon", "payment", "partner", "recovery"]);
10
+ export const DiscountFundingSchema = z.object({
11
+ hostPercentagePoints: z.number().min(0).default(0),
12
+ platformPercentagePoints: z.number().min(0).default(0),
13
+ partnerPercentagePoints: z.number().min(0).default(0),
14
+ });
15
+ export const DiscountConditionsSchema = z.object({
16
+ minUnits: z.number().min(0).nullable().optional(),
17
+ maxUnits: z.number().min(0).nullable().optional(),
18
+ minQuantity: z.number().min(0).nullable().optional(),
19
+ minParticipants: z.number().min(0).nullable().optional(),
20
+ minSubtotal: z.number().min(0).nullable().optional(),
21
+ bookingLeadMinMinutes: z.number().min(0).nullable().optional(),
22
+ bookingLeadMaxMinutes: z.number().min(0).nullable().optional(),
23
+ bookingStartsAt: z.string().nullable().optional(),
24
+ bookingEndsAt: z.string().nullable().optional(),
25
+ serviceStartsAt: z.string().nullable().optional(),
26
+ serviceEndsAt: z.string().nullable().optional(),
27
+ recurringDays: z.array(z.number().min(0).max(6)).default([]),
28
+ recurringStartTime: z.string().optional(),
29
+ recurringEndTime: z.string().optional(),
30
+ timezone: z.string().default("Asia/Kolkata"),
31
+ firstBookingOnly: z.boolean().default(false),
32
+ checkoutDelayMinutes: z.number().min(0).nullable().optional(),
33
+ paymentMethods: z.array(z.string()).default([]),
34
+ cardTypes: z.array(z.string()).default([]),
35
+ issuers: z.array(z.string()).default([]),
36
+ networks: z.array(z.string()).default([]),
37
+ partnerProgramIds: z.array(z.string()).default([]),
38
+ });
2
39
  export const DiscountStrategySchema = z.object({
3
- type: z.enum(["duration", "last-minute", "temporary-promotion", "coupon"]).default("duration"),
40
+ _id: z.string().optional(),
41
+ name: z.string().min(1),
42
+ description: z.string().default(""),
43
+ strategyType: DiscountStrategyTypeSchema,
44
+ origin: DiscountOriginSchema,
45
+ status: DiscountStatusSchema.default("draft"),
46
+ sourceStrategyId: z.string().nullable().optional(),
47
+ hostId: z.union([z.string(), z.object({ _id: z.string() })]).nullable().optional(),
48
+ targetScope: z.enum(["platform", "host", "listing", "subtarget"]).default("platform"),
49
+ featureTypes: z.array(DiscountFeatureTypeSchema).default([]),
50
+ targetId: z.string().nullable().optional(),
51
+ targetIds: z.array(z.string()).default([]),
52
+ subTargetId: z.string().nullable().optional(),
53
+ pricingStrategyIds: z.array(z.string()).default([]),
54
+ percentage: z.number().positive().max(100),
55
+ funding: DiscountFundingSchema,
56
+ conditions: DiscountConditionsSchema.default({}),
57
+ stacking: z.object({
58
+ group: DiscountStackingGroupSchema.default("automatic"),
59
+ priority: z.number().default(0),
60
+ compatibleGroups: z.array(DiscountStackingGroupSchema).default([]),
61
+ }).default({}),
62
+ usageLimits: z.object({ total: z.number().positive().nullable().optional(), perUser: z.number().positive().nullable().optional() }).default({}),
63
+ redemptionCount: z.number().min(0).default(0),
4
64
  couponCode: z.string().optional(),
5
- couponScope: z.enum(["listing", "host", "platform"]).optional(),
6
- discountAppliesTo: z.enum(["booking-total", "platform-fees"]).optional(),
7
- createdBy: z.enum(["admin", "host"]).optional(),
8
- maxRedemptions: z.number().min(0).optional(),
9
- maxRedemptionsPerUser: z.number().min(0).optional(),
10
- minimumOrderValue: z.number().min(0).optional(),
11
- durationType: z.enum(["weekly", "fifteen-days", "monthly", "custom", ""]).default(""),
12
- minDays: z.number().min(0).default(0),
13
- discountType: z.enum(["percentage", "flat"]).default("percentage"),
14
- discountValue: z.number().min(0).default(0),
65
+ couponPreview: z.string().optional(),
66
+ razorpayOfferId: z.string().optional(),
67
+ createdAt: z.string().optional(),
68
+ updatedAt: z.string().optional(),
69
+ });
70
+ export const DiscountQuoteRequestSchema = z.object({
71
+ featureType: DiscountFeatureTypeSchema,
72
+ targetId: z.string(),
73
+ subTargetId: z.string().optional(),
74
+ pricingStrategyId: z.string().optional(),
75
+ selectedPricingIndex: z.number().optional(),
76
+ quantity: z.number().positive().optional(),
77
+ participants: z.number().positive().optional(),
15
78
  startDate: z.string().optional(),
16
79
  endDate: z.string().optional(),
17
- description: z.string().default(""),
18
- suggestedByPlatform: z.boolean().default(false),
19
- active: z.boolean().default(true),
80
+ startTime: z.string().optional(),
81
+ pickupTime: z.string().optional(),
82
+ orderType: z.enum(["purchase", "rental"]).optional(),
83
+ activityTotal: z.number().min(0).optional(),
84
+ couponCode: z.string().optional(),
85
+ checkoutStartedAt: z.string().optional(),
20
86
  });
21
- export const DiscountSchema = z.object({
22
- discountStrategies: z.array(DiscountStrategySchema).default([]),
87
+ export const DiscountQuoteSchema = z.object({
88
+ quoteId: z.string(),
89
+ currency: z.string(),
90
+ combinedPercentage: z.number(),
91
+ totalDiscount: z.number(),
92
+ funding: z.object({ host: z.number(), platform: z.number(), partner: z.number() }),
93
+ totalBeforeDiscount: z.number(),
94
+ totalAfterDiscount: z.number(),
95
+ grantId: z.string().nullable().optional(),
96
+ selected: z.array(z.object({
97
+ strategyId: z.string(), name: z.string(), description: z.string().optional(), strategyType: DiscountStrategyTypeSchema,
98
+ percentage: z.number(), amount: z.number(), funding: z.object({ host: z.number(), platform: z.number(), partner: z.number() }),
99
+ stackingGroup: DiscountStackingGroupSchema, razorpayOfferId: z.string().optional(),
100
+ paymentEligibility: z.object({
101
+ paymentMethods: z.array(z.string()).default([]), cardTypes: z.array(z.string()).default([]),
102
+ issuers: z.array(z.string()).default([]), networks: z.array(z.string()).default([]),
103
+ }).optional(),
104
+ })),
105
+ rejected: z.array(z.object({ strategyId: z.string().optional(), name: z.string(), reason: z.string() })),
106
+ createdAt: z.string().or(z.date()),
23
107
  });
24
- export function createDefaultRentalDiscount() {
108
+ export function createEmptyDiscountStrategy(origin = "host") {
25
109
  return {
26
- discountStrategies: [
27
- {
28
- type: "duration",
29
- couponCode: "",
30
- couponScope: "listing",
31
- discountAppliesTo: "booking-total",
32
- createdBy: "host",
33
- minimumOrderValue: 0,
34
- durationType: "weekly",
35
- minDays: 7,
36
- discountType: "percentage",
37
- discountValue: 0,
38
- description: "Weekly discount",
39
- suggestedByPlatform: false,
40
- active: true,
41
- },
42
- {
43
- type: "duration",
44
- couponCode: "",
45
- couponScope: "listing",
46
- discountAppliesTo: "booking-total",
47
- createdBy: "host",
48
- minimumOrderValue: 0,
49
- durationType: "fifteen-days",
50
- minDays: 15,
51
- discountType: "percentage",
52
- discountValue: 0,
53
- description: "15 day discount",
54
- suggestedByPlatform: false,
55
- active: true,
56
- },
57
- {
58
- type: "duration",
59
- couponCode: "",
60
- couponScope: "listing",
61
- discountAppliesTo: "booking-total",
62
- createdBy: "host",
63
- minimumOrderValue: 0,
64
- durationType: "monthly",
65
- minDays: 30,
66
- discountType: "percentage",
67
- discountValue: 0,
68
- description: "Monthly discount",
69
- suggestedByPlatform: false,
70
- active: true,
71
- },
72
- ],
110
+ name: "",
111
+ description: "",
112
+ strategyType: "scheduled",
113
+ origin,
114
+ status: "draft",
115
+ targetScope: "listing",
116
+ featureTypes: [],
117
+ targetIds: [],
118
+ pricingStrategyIds: [],
119
+ percentage: 10,
120
+ funding: origin === "staff_campaign"
121
+ ? { hostPercentagePoints: 0, platformPercentagePoints: 10, partnerPercentagePoints: 0 }
122
+ : { hostPercentagePoints: 10, platformPercentagePoints: 0, partnerPercentagePoints: 0 },
123
+ conditions: { recurringDays: [], timezone: "Asia/Kolkata", firstBookingOnly: false, paymentMethods: [], cardTypes: [], issuers: [], networks: [], partnerProgramIds: [] },
124
+ stacking: { group: "automatic", priority: 0, compatibleGroups: [] },
125
+ usageLimits: {},
126
+ redemptionCount: 0,
73
127
  };
74
128
  }
75
- export function normalizeDiscount(discount) {
76
- return {
77
- discountStrategies: discount?.discountStrategies || [],
78
- };
79
- }
80
- export function calculateDiscountAmount(total, strategy) {
81
- if (!strategy)
82
- return 0;
83
- const discountValue = Math.max(Number(strategy.discountValue) || 0, 0);
84
- if (strategy.discountType === "flat") {
85
- return Math.min(discountValue, total);
86
- }
87
- return Math.min(Math.round((total * discountValue) / 100), total);
88
- }
89
- export function getApplicableDiscountStrategy(discount, days, bookingDate = new Date(), couponCode = "") {
90
- const normalizedCoupon = couponCode.trim().toUpperCase();
91
- return (discount?.discountStrategies || [])
92
- .filter((strategy) => {
93
- if (!strategy.active)
94
- return false;
95
- if (Number(strategy.minDays || 0) > days)
96
- return false;
97
- if (strategy.startDate && bookingDate < new Date(strategy.startDate))
98
- return false;
99
- if (strategy.endDate && bookingDate > new Date(strategy.endDate))
100
- return false;
101
- if (strategy.type === "coupon" && (strategy.couponCode || "").trim().toUpperCase() !== normalizedCoupon)
102
- return false;
103
- return Number(strategy.discountValue || 0) > 0;
104
- })
105
- .sort((a, b) => Number(b.minDays || 0) - Number(a.minDays || 0))[0];
106
- }
@@ -0,0 +1,384 @@
1
+ import * as z from "zod";
2
+ export declare const opportunitySchema: z.ZodObject<{
3
+ opportunityType: z.ZodEnum<["volunteer" | "internship" | "freelance" | "job" | "contentCreator", ...("volunteer" | "internship" | "freelance" | "job" | "contentCreator")[]]>;
4
+ title: z.ZodString;
5
+ description: z.ZodString;
6
+ categoryId: z.ZodOptional<z.ZodString>;
7
+ city: z.ZodString;
8
+ country: z.ZodString;
9
+ state: z.ZodString;
10
+ address: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
11
+ workMode: z.ZodOptional<z.ZodEnum<["onsite" | "remote" | "hybrid", ...("onsite" | "remote" | "hybrid")[]]>>;
12
+ compensationType: z.ZodOptional<z.ZodEnum<["free" | "stipend" | "salary" | "project-based", ...("free" | "stipend" | "salary" | "project-based")[]]>>;
13
+ compensationAmount: z.ZodOptional<z.ZodNumber>;
14
+ compensationCurrency: z.ZodOptional<z.ZodString>;
15
+ compensationFrequency: z.ZodOptional<z.ZodEnum<["daily" | "weekly" | "monthly" | "yearly" | "one-time", ...("daily" | "weekly" | "monthly" | "yearly" | "one-time")[]]>>;
16
+ availableFrom: z.ZodDate;
17
+ minDuration: z.ZodNumber;
18
+ maxDuration: z.ZodNumber;
19
+ urgent: z.ZodBoolean;
20
+ peopleRequired: z.ZodNumber;
21
+ questions: z.ZodArray<z.ZodObject<{
22
+ question: z.ZodString;
23
+ answer: z.ZodString;
24
+ }, "strip", z.ZodTypeAny, {
25
+ question: string;
26
+ answer: string;
27
+ }, {
28
+ question: string;
29
+ answer: string;
30
+ }>, "many">;
31
+ hostingType: z.ZodString;
32
+ adminApproval: z.ZodBoolean;
33
+ hostId: z.ZodOptional<z.ZodString>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ opportunityType: "volunteer" | "internship" | "freelance" | "job" | "contentCreator";
36
+ title: string;
37
+ description: string;
38
+ city: string;
39
+ country: string;
40
+ state: string;
41
+ availableFrom: Date;
42
+ minDuration: number;
43
+ maxDuration: number;
44
+ urgent: boolean;
45
+ peopleRequired: number;
46
+ questions: {
47
+ question: string;
48
+ answer: string;
49
+ }[];
50
+ hostingType: string;
51
+ adminApproval: boolean;
52
+ categoryId?: string | undefined;
53
+ address?: string | undefined;
54
+ workMode?: "onsite" | "remote" | "hybrid" | undefined;
55
+ compensationType?: "free" | "stipend" | "salary" | "project-based" | undefined;
56
+ compensationAmount?: number | undefined;
57
+ compensationCurrency?: string | undefined;
58
+ compensationFrequency?: "daily" | "weekly" | "monthly" | "yearly" | "one-time" | undefined;
59
+ hostId?: string | undefined;
60
+ }, {
61
+ opportunityType: "volunteer" | "internship" | "freelance" | "job" | "contentCreator";
62
+ title: string;
63
+ description: string;
64
+ city: string;
65
+ country: string;
66
+ state: string;
67
+ availableFrom: Date;
68
+ minDuration: number;
69
+ maxDuration: number;
70
+ urgent: boolean;
71
+ peopleRequired: number;
72
+ questions: {
73
+ question: string;
74
+ answer: string;
75
+ }[];
76
+ hostingType: string;
77
+ adminApproval: boolean;
78
+ categoryId?: string | undefined;
79
+ address?: string | undefined;
80
+ workMode?: "onsite" | "remote" | "hybrid" | undefined;
81
+ compensationType?: "free" | "stipend" | "salary" | "project-based" | undefined;
82
+ compensationAmount?: number | undefined;
83
+ compensationCurrency?: string | undefined;
84
+ compensationFrequency?: "daily" | "weekly" | "monthly" | "yearly" | "one-time" | undefined;
85
+ hostId?: string | undefined;
86
+ }>;
87
+ export type OpportunityFormValues = z.infer<typeof opportunitySchema>;
88
+ export declare const travelPackageSchema: z.ZodObject<{
89
+ title: z.ZodString;
90
+ description: z.ZodOptional<z.ZodString>;
91
+ categoryId: z.ZodOptional<z.ZodString>;
92
+ bookingMode: z.ZodDefault<z.ZodEnum<["enquiry", "booking", "both"]>>;
93
+ pricing: z.ZodObject<{
94
+ currency: z.ZodString;
95
+ pricingStrategies: z.ZodArray<z.ZodObject<{
96
+ basePrice: z.ZodOptional<z.ZodNumber>;
97
+ finalBasePrice: z.ZodNumber;
98
+ description: z.ZodString;
99
+ gst: z.ZodNumber;
100
+ governmentTaxes: z.ZodNumber;
101
+ convenienceFee: z.ZodNumber;
102
+ platformFee: z.ZodNumber;
103
+ }, "strip", z.ZodTypeAny, {
104
+ description: string;
105
+ finalBasePrice: number;
106
+ gst: number;
107
+ governmentTaxes: number;
108
+ convenienceFee: number;
109
+ platformFee: number;
110
+ basePrice?: number | undefined;
111
+ }, {
112
+ description: string;
113
+ finalBasePrice: number;
114
+ gst: number;
115
+ governmentTaxes: number;
116
+ convenienceFee: number;
117
+ platformFee: number;
118
+ basePrice?: number | undefined;
119
+ }>, "many">;
120
+ }, "strip", z.ZodTypeAny, {
121
+ currency: string;
122
+ pricingStrategies: {
123
+ description: string;
124
+ finalBasePrice: number;
125
+ gst: number;
126
+ governmentTaxes: number;
127
+ convenienceFee: number;
128
+ platformFee: number;
129
+ basePrice?: number | undefined;
130
+ }[];
131
+ }, {
132
+ currency: string;
133
+ pricingStrategies: {
134
+ description: string;
135
+ finalBasePrice: number;
136
+ gst: number;
137
+ governmentTaxes: number;
138
+ convenienceFee: number;
139
+ platformFee: number;
140
+ basePrice?: number | undefined;
141
+ }[];
142
+ }>;
143
+ difficultyLevel: z.ZodOptional<z.ZodEnum<[string, ...string[]]>>;
144
+ city: z.ZodString;
145
+ state: z.ZodString;
146
+ country: z.ZodString;
147
+ availableFrom: z.ZodDate;
148
+ duration: z.ZodNumber;
149
+ urgent: z.ZodBoolean;
150
+ peopleRequired: z.ZodNumber;
151
+ questions: z.ZodArray<z.ZodObject<{
152
+ question: z.ZodString;
153
+ answer: z.ZodString;
154
+ }, "strip", z.ZodTypeAny, {
155
+ question: string;
156
+ answer: string;
157
+ }, {
158
+ question: string;
159
+ answer: string;
160
+ }>, "many">;
161
+ hostId: z.ZodOptional<z.ZodString>;
162
+ }, "strip", z.ZodTypeAny, {
163
+ title: string;
164
+ city: string;
165
+ country: string;
166
+ state: string;
167
+ availableFrom: Date;
168
+ urgent: boolean;
169
+ peopleRequired: number;
170
+ questions: {
171
+ question: string;
172
+ answer: string;
173
+ }[];
174
+ bookingMode: "enquiry" | "booking" | "both";
175
+ pricing: {
176
+ currency: string;
177
+ pricingStrategies: {
178
+ description: string;
179
+ finalBasePrice: number;
180
+ gst: number;
181
+ governmentTaxes: number;
182
+ convenienceFee: number;
183
+ platformFee: number;
184
+ basePrice?: number | undefined;
185
+ }[];
186
+ };
187
+ duration: number;
188
+ description?: string | undefined;
189
+ categoryId?: string | undefined;
190
+ hostId?: string | undefined;
191
+ difficultyLevel?: string | undefined;
192
+ }, {
193
+ title: string;
194
+ city: string;
195
+ country: string;
196
+ state: string;
197
+ availableFrom: Date;
198
+ urgent: boolean;
199
+ peopleRequired: number;
200
+ questions: {
201
+ question: string;
202
+ answer: string;
203
+ }[];
204
+ pricing: {
205
+ currency: string;
206
+ pricingStrategies: {
207
+ description: string;
208
+ finalBasePrice: number;
209
+ gst: number;
210
+ governmentTaxes: number;
211
+ convenienceFee: number;
212
+ platformFee: number;
213
+ basePrice?: number | undefined;
214
+ }[];
215
+ };
216
+ duration: number;
217
+ description?: string | undefined;
218
+ categoryId?: string | undefined;
219
+ hostId?: string | undefined;
220
+ bookingMode?: "enquiry" | "booking" | "both" | undefined;
221
+ difficultyLevel?: string | undefined;
222
+ }>;
223
+ export type TravelPackageFormValues = z.infer<typeof travelPackageSchema>;
224
+ export declare const rentalSchema: z.ZodObject<{
225
+ title: z.ZodOptional<z.ZodString>;
226
+ description: z.ZodString;
227
+ vehicleType: z.ZodString;
228
+ brand: z.ZodString;
229
+ model: z.ZodString;
230
+ year: z.ZodNumber;
231
+ city: z.ZodString;
232
+ state: z.ZodString;
233
+ address: z.ZodString;
234
+ mapLink: z.ZodOptional<z.ZodString>;
235
+ pricing: z.ZodObject<{
236
+ currency: z.ZodString;
237
+ pricingStrategies: z.ZodArray<z.ZodObject<{
238
+ basePrice: z.ZodOptional<z.ZodNumber>;
239
+ finalBasePrice: z.ZodNumber;
240
+ description: z.ZodString;
241
+ gst: z.ZodNumber;
242
+ governmentTaxes: z.ZodNumber;
243
+ convenienceFee: z.ZodNumber;
244
+ platformFee: z.ZodNumber;
245
+ }, "strip", z.ZodTypeAny, {
246
+ description: string;
247
+ finalBasePrice: number;
248
+ gst: number;
249
+ governmentTaxes: number;
250
+ convenienceFee: number;
251
+ platformFee: number;
252
+ basePrice?: number | undefined;
253
+ }, {
254
+ description: string;
255
+ finalBasePrice: number;
256
+ gst: number;
257
+ governmentTaxes: number;
258
+ convenienceFee: number;
259
+ platformFee: number;
260
+ basePrice?: number | undefined;
261
+ }>, "many">;
262
+ }, "strip", z.ZodTypeAny, {
263
+ currency: string;
264
+ pricingStrategies: {
265
+ description: string;
266
+ finalBasePrice: number;
267
+ gst: number;
268
+ governmentTaxes: number;
269
+ convenienceFee: number;
270
+ platformFee: number;
271
+ basePrice?: number | undefined;
272
+ }[];
273
+ }, {
274
+ currency: string;
275
+ pricingStrategies: {
276
+ description: string;
277
+ finalBasePrice: number;
278
+ gst: number;
279
+ governmentTaxes: number;
280
+ convenienceFee: number;
281
+ platformFee: number;
282
+ basePrice?: number | undefined;
283
+ }[];
284
+ }>;
285
+ weeklyPrice: z.ZodOptional<z.ZodNumber>;
286
+ monthlyPrice: z.ZodOptional<z.ZodNumber>;
287
+ depositAmount: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
288
+ inventoryCount: z.ZodNumber;
289
+ fuelType: z.ZodOptional<z.ZodString>;
290
+ transmission: z.ZodOptional<z.ZodString>;
291
+ seatingCapacity: z.ZodOptional<z.ZodNumber>;
292
+ fuelPolicy: z.ZodDefault<z.ZodOptional<z.ZodString>>;
293
+ driverOption: z.ZodDefault<z.ZodOptional<z.ZodString>>;
294
+ damagePolicy: z.ZodOptional<z.ZodString>;
295
+ cancellationPolicy: z.ZodOptional<z.ZodString>;
296
+ instantBook: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
297
+ homeDeliveryAvailable: z.ZodDefault<z.ZodBoolean>;
298
+ homeDeliveryPrice: z.ZodDefault<z.ZodNumber>;
299
+ distanceLimit: z.ZodDefault<z.ZodString>;
300
+ operatingHoursStart: z.ZodDefault<z.ZodString>;
301
+ operatingHoursEnd: z.ZodDefault<z.ZodString>;
302
+ }, "strip", z.ZodTypeAny, {
303
+ description: string;
304
+ city: string;
305
+ state: string;
306
+ address: string;
307
+ pricing: {
308
+ currency: string;
309
+ pricingStrategies: {
310
+ description: string;
311
+ finalBasePrice: number;
312
+ gst: number;
313
+ governmentTaxes: number;
314
+ convenienceFee: number;
315
+ platformFee: number;
316
+ basePrice?: number | undefined;
317
+ }[];
318
+ };
319
+ vehicleType: string;
320
+ brand: string;
321
+ model: string;
322
+ year: number;
323
+ depositAmount: number;
324
+ inventoryCount: number;
325
+ fuelPolicy: string;
326
+ driverOption: string;
327
+ instantBook: boolean;
328
+ homeDeliveryAvailable: boolean;
329
+ homeDeliveryPrice: number;
330
+ distanceLimit: string;
331
+ operatingHoursStart: string;
332
+ operatingHoursEnd: string;
333
+ title?: string | undefined;
334
+ mapLink?: string | undefined;
335
+ weeklyPrice?: number | undefined;
336
+ monthlyPrice?: number | undefined;
337
+ fuelType?: string | undefined;
338
+ transmission?: string | undefined;
339
+ seatingCapacity?: number | undefined;
340
+ damagePolicy?: string | undefined;
341
+ cancellationPolicy?: string | undefined;
342
+ }, {
343
+ description: string;
344
+ city: string;
345
+ state: string;
346
+ address: string;
347
+ pricing: {
348
+ currency: string;
349
+ pricingStrategies: {
350
+ description: string;
351
+ finalBasePrice: number;
352
+ gst: number;
353
+ governmentTaxes: number;
354
+ convenienceFee: number;
355
+ platformFee: number;
356
+ basePrice?: number | undefined;
357
+ }[];
358
+ };
359
+ vehicleType: string;
360
+ brand: string;
361
+ model: string;
362
+ year: number;
363
+ inventoryCount: number;
364
+ title?: string | undefined;
365
+ mapLink?: string | undefined;
366
+ weeklyPrice?: number | undefined;
367
+ monthlyPrice?: number | undefined;
368
+ depositAmount?: number | undefined;
369
+ fuelType?: string | undefined;
370
+ transmission?: string | undefined;
371
+ seatingCapacity?: number | undefined;
372
+ fuelPolicy?: string | undefined;
373
+ driverOption?: string | undefined;
374
+ damagePolicy?: string | undefined;
375
+ cancellationPolicy?: string | undefined;
376
+ instantBook?: boolean | undefined;
377
+ homeDeliveryAvailable?: boolean | undefined;
378
+ homeDeliveryPrice?: number | undefined;
379
+ distanceLimit?: string | undefined;
380
+ operatingHoursStart?: string | undefined;
381
+ operatingHoursEnd?: string | undefined;
382
+ }>;
383
+ export type RentalFormValues = z.infer<typeof rentalSchema>;
384
+ //# sourceMappingURL=forms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forms.d.ts","sourceRoot":"","sources":["../../../src/lib/models/forms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAezB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+B5B,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAKtE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkC9B,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAK1E,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqDvB,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}