@voyant-travel/db 0.108.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 (336) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +60 -0
  3. package/dist/aggregate-snapshots.d.ts +66 -0
  4. package/dist/aggregate-snapshots.d.ts.map +1 -0
  5. package/dist/aggregate-snapshots.js +110 -0
  6. package/dist/aggregate-snapshots.js.map +1 -0
  7. package/dist/columns/collection.d.ts +37 -0
  8. package/dist/columns/collection.d.ts.map +1 -0
  9. package/dist/columns/collection.js +44 -0
  10. package/dist/columns/collection.js.map +1 -0
  11. package/dist/columns/cruise.d.ts +26 -0
  12. package/dist/columns/cruise.d.ts.map +1 -0
  13. package/dist/columns/cruise.js +31 -0
  14. package/dist/columns/cruise.js.map +1 -0
  15. package/dist/columns/departure-sub-tables.d.ts +179 -0
  16. package/dist/columns/departure-sub-tables.d.ts.map +1 -0
  17. package/dist/columns/departure-sub-tables.js +214 -0
  18. package/dist/columns/departure-sub-tables.js.map +1 -0
  19. package/dist/columns/departure.d.ts +20 -0
  20. package/dist/columns/departure.d.ts.map +1 -0
  21. package/dist/columns/departure.js +23 -0
  22. package/dist/columns/departure.js.map +1 -0
  23. package/dist/columns/destinations.d.ts +21 -0
  24. package/dist/columns/destinations.d.ts.map +1 -0
  25. package/dist/columns/destinations.js +24 -0
  26. package/dist/columns/destinations.js.map +1 -0
  27. package/dist/columns/index.d.ts +31 -0
  28. package/dist/columns/index.d.ts.map +1 -0
  29. package/dist/columns/index.js +57 -0
  30. package/dist/columns/index.js.map +1 -0
  31. package/dist/columns/itinerary-sub-tables.d.ts +177 -0
  32. package/dist/columns/itinerary-sub-tables.d.ts.map +1 -0
  33. package/dist/columns/itinerary-sub-tables.js +122 -0
  34. package/dist/columns/itinerary-sub-tables.js.map +1 -0
  35. package/dist/columns/itinerary.d.ts +17 -0
  36. package/dist/columns/itinerary.d.ts.map +1 -0
  37. package/dist/columns/itinerary.js +20 -0
  38. package/dist/columns/itinerary.js.map +1 -0
  39. package/dist/columns/lodging.d.ts +143 -0
  40. package/dist/columns/lodging.d.ts.map +1 -0
  41. package/dist/columns/lodging.js +164 -0
  42. package/dist/columns/lodging.js.map +1 -0
  43. package/dist/columns/offers.d.ts +31 -0
  44. package/dist/columns/offers.d.ts.map +1 -0
  45. package/dist/columns/offers.js +43 -0
  46. package/dist/columns/offers.js.map +1 -0
  47. package/dist/columns/pricing.d.ts +60 -0
  48. package/dist/columns/pricing.d.ts.map +1 -0
  49. package/dist/columns/pricing.js +71 -0
  50. package/dist/columns/pricing.js.map +1 -0
  51. package/dist/columns/product-accommodation.d.ts +99 -0
  52. package/dist/columns/product-accommodation.d.ts.map +1 -0
  53. package/dist/columns/product-accommodation.js +65 -0
  54. package/dist/columns/product-accommodation.js.map +1 -0
  55. package/dist/columns/product-addons.d.ts +18 -0
  56. package/dist/columns/product-addons.d.ts.map +1 -0
  57. package/dist/columns/product-addons.js +21 -0
  58. package/dist/columns/product-addons.js.map +1 -0
  59. package/dist/columns/product-availability-states.d.ts +65 -0
  60. package/dist/columns/product-availability-states.d.ts.map +1 -0
  61. package/dist/columns/product-availability-states.js +81 -0
  62. package/dist/columns/product-availability-states.js.map +1 -0
  63. package/dist/columns/product-availability.d.ts +21 -0
  64. package/dist/columns/product-availability.d.ts.map +1 -0
  65. package/dist/columns/product-availability.js +24 -0
  66. package/dist/columns/product-availability.js.map +1 -0
  67. package/dist/columns/product-booking-rules.d.ts +45 -0
  68. package/dist/columns/product-booking-rules.d.ts.map +1 -0
  69. package/dist/columns/product-booking-rules.js +55 -0
  70. package/dist/columns/product-booking-rules.js.map +1 -0
  71. package/dist/columns/product-category-assignments.d.ts +17 -0
  72. package/dist/columns/product-category-assignments.d.ts.map +1 -0
  73. package/dist/columns/product-category-assignments.js +20 -0
  74. package/dist/columns/product-category-assignments.js.map +1 -0
  75. package/dist/columns/product-extensions.d.ts +24 -0
  76. package/dist/columns/product-extensions.d.ts.map +1 -0
  77. package/dist/columns/product-extensions.js +27 -0
  78. package/dist/columns/product-extensions.js.map +1 -0
  79. package/dist/columns/product-media.d.ts +19 -0
  80. package/dist/columns/product-media.d.ts.map +1 -0
  81. package/dist/columns/product-media.js +22 -0
  82. package/dist/columns/product-media.js.map +1 -0
  83. package/dist/columns/product-overrides.d.ts +19 -0
  84. package/dist/columns/product-overrides.d.ts.map +1 -0
  85. package/dist/columns/product-overrides.js +22 -0
  86. package/dist/columns/product-overrides.js.map +1 -0
  87. package/dist/columns/product-preferences.d.ts +51 -0
  88. package/dist/columns/product-preferences.d.ts.map +1 -0
  89. package/dist/columns/product-preferences.js +59 -0
  90. package/dist/columns/product-preferences.js.map +1 -0
  91. package/dist/columns/product-publish-settings.d.ts +18 -0
  92. package/dist/columns/product-publish-settings.d.ts.map +1 -0
  93. package/dist/columns/product-publish-settings.js +21 -0
  94. package/dist/columns/product-publish-settings.js.map +1 -0
  95. package/dist/columns/product-rate-plans.d.ts +28 -0
  96. package/dist/columns/product-rate-plans.d.ts.map +1 -0
  97. package/dist/columns/product-rate-plans.js +33 -0
  98. package/dist/columns/product-rate-plans.js.map +1 -0
  99. package/dist/columns/product-translations.d.ts +24 -0
  100. package/dist/columns/product-translations.d.ts.map +1 -0
  101. package/dist/columns/product-translations.js +27 -0
  102. package/dist/columns/product-translations.js.map +1 -0
  103. package/dist/columns/product-versions.d.ts +19 -0
  104. package/dist/columns/product-versions.d.ts.map +1 -0
  105. package/dist/columns/product-versions.js +22 -0
  106. package/dist/columns/product-versions.js.map +1 -0
  107. package/dist/columns/product-visibility.d.ts +16 -0
  108. package/dist/columns/product-visibility.d.ts.map +1 -0
  109. package/dist/columns/product-visibility.js +19 -0
  110. package/dist/columns/product-visibility.js.map +1 -0
  111. package/dist/columns/product.d.ts +56 -0
  112. package/dist/columns/product.d.ts.map +1 -0
  113. package/dist/columns/product.js +44 -0
  114. package/dist/columns/product.js.map +1 -0
  115. package/dist/columns/room.d.ts +117 -0
  116. package/dist/columns/room.d.ts.map +1 -0
  117. package/dist/columns/room.js +86 -0
  118. package/dist/columns/room.js.map +1 -0
  119. package/dist/columns/ship.d.ts +22 -0
  120. package/dist/columns/ship.d.ts.map +1 -0
  121. package/dist/columns/ship.js +25 -0
  122. package/dist/columns/ship.js.map +1 -0
  123. package/dist/columns/tags.d.ts +33 -0
  124. package/dist/columns/tags.d.ts.map +1 -0
  125. package/dist/columns/tags.js +38 -0
  126. package/dist/columns/tags.js.map +1 -0
  127. package/dist/columns/transport.d.ts +53 -0
  128. package/dist/columns/transport.d.ts.map +1 -0
  129. package/dist/columns/transport.js +62 -0
  130. package/dist/columns/transport.js.map +1 -0
  131. package/dist/connection-config.d.ts +101 -0
  132. package/dist/connection-config.d.ts.map +1 -0
  133. package/dist/connection-config.js +106 -0
  134. package/dist/connection-config.js.map +1 -0
  135. package/dist/crud.d.ts +87 -0
  136. package/dist/crud.d.ts.map +1 -0
  137. package/dist/crud.js +190 -0
  138. package/dist/crud.js.map +1 -0
  139. package/dist/helpers.d.ts +33 -0
  140. package/dist/helpers.d.ts.map +1 -0
  141. package/dist/helpers.js +49 -0
  142. package/dist/helpers.js.map +1 -0
  143. package/dist/index.d.ts +109 -0
  144. package/dist/index.d.ts.map +1 -0
  145. package/dist/index.js +155 -0
  146. package/dist/index.js.map +1 -0
  147. package/dist/lib/index.d.ts +3 -0
  148. package/dist/lib/index.d.ts.map +1 -0
  149. package/dist/lib/index.js +5 -0
  150. package/dist/lib/index.js.map +1 -0
  151. package/dist/lib/typeid-column.d.ts +75 -0
  152. package/dist/lib/typeid-column.d.ts.map +1 -0
  153. package/dist/lib/typeid-column.js +92 -0
  154. package/dist/lib/typeid-column.js.map +1 -0
  155. package/dist/lib/typeid-core.d.ts +36 -0
  156. package/dist/lib/typeid-core.d.ts.map +1 -0
  157. package/dist/lib/typeid-core.js +67 -0
  158. package/dist/lib/typeid-core.js.map +1 -0
  159. package/dist/lib/typeid-prefixes.d.ts +342 -0
  160. package/dist/lib/typeid-prefixes.d.ts.map +1 -0
  161. package/dist/lib/typeid-prefixes.js +379 -0
  162. package/dist/lib/typeid-prefixes.js.map +1 -0
  163. package/dist/lib/typeid-schemas.d.ts +206 -0
  164. package/dist/lib/typeid-schemas.d.ts.map +1 -0
  165. package/dist/lib/typeid-schemas.js +207 -0
  166. package/dist/lib/typeid-schemas.js.map +1 -0
  167. package/dist/lib/typeid-zod.d.ts +16 -0
  168. package/dist/lib/typeid-zod.d.ts.map +1 -0
  169. package/dist/lib/typeid-zod.js +29 -0
  170. package/dist/lib/typeid-zod.js.map +1 -0
  171. package/dist/lib/typeid.d.ts +2 -0
  172. package/dist/lib/typeid.d.ts.map +1 -0
  173. package/dist/lib/typeid.js +6 -0
  174. package/dist/lib/typeid.js.map +1 -0
  175. package/dist/lifecycle.d.ts +24 -0
  176. package/dist/lifecycle.d.ts.map +1 -0
  177. package/dist/lifecycle.js +30 -0
  178. package/dist/lifecycle.js.map +1 -0
  179. package/dist/links.d.ts +22 -0
  180. package/dist/links.d.ts.map +1 -0
  181. package/dist/links.js +281 -0
  182. package/dist/links.js.map +1 -0
  183. package/dist/operators.d.ts +9 -0
  184. package/dist/operators.d.ts.map +1 -0
  185. package/dist/operators.js +9 -0
  186. package/dist/operators.js.map +1 -0
  187. package/dist/outbox.d.ts +87 -0
  188. package/dist/outbox.d.ts.map +1 -0
  189. package/dist/outbox.js +245 -0
  190. package/dist/outbox.js.map +1 -0
  191. package/dist/primitives/catalog-schemas.d.ts +101 -0
  192. package/dist/primitives/catalog-schemas.d.ts.map +1 -0
  193. package/dist/primitives/catalog-schemas.js +69 -0
  194. package/dist/primitives/catalog-schemas.js.map +1 -0
  195. package/dist/primitives/catalog.d.ts +47 -0
  196. package/dist/primitives/catalog.d.ts.map +1 -0
  197. package/dist/primitives/catalog.js +94 -0
  198. package/dist/primitives/catalog.js.map +1 -0
  199. package/dist/primitives/index.d.ts +4 -0
  200. package/dist/primitives/index.d.ts.map +1 -0
  201. package/dist/primitives/index.js +4 -0
  202. package/dist/primitives/index.js.map +1 -0
  203. package/dist/primitives/offers.d.ts +224 -0
  204. package/dist/primitives/offers.d.ts.map +1 -0
  205. package/dist/primitives/offers.js +132 -0
  206. package/dist/primitives/offers.js.map +1 -0
  207. package/dist/queries/index.d.ts +18 -0
  208. package/dist/queries/index.d.ts.map +1 -0
  209. package/dist/queries/index.js +30 -0
  210. package/dist/queries/index.js.map +1 -0
  211. package/dist/runtime/index.d.ts +4 -0
  212. package/dist/runtime/index.d.ts.map +1 -0
  213. package/dist/runtime/index.js +5 -0
  214. package/dist/runtime/index.js.map +1 -0
  215. package/dist/runtime/locks.d.ts +5 -0
  216. package/dist/runtime/locks.d.ts.map +1 -0
  217. package/dist/runtime/locks.js +36 -0
  218. package/dist/runtime/locks.js.map +1 -0
  219. package/dist/schema/00_ensure_schemas.d.ts +5 -0
  220. package/dist/schema/00_ensure_schemas.d.ts.map +1 -0
  221. package/dist/schema/00_ensure_schemas.js +6 -0
  222. package/dist/schema/00_ensure_schemas.js.map +1 -0
  223. package/dist/schema/aggregate-snapshots.d.ts +97 -0
  224. package/dist/schema/aggregate-snapshots.d.ts.map +1 -0
  225. package/dist/schema/aggregate-snapshots.js +27 -0
  226. package/dist/schema/aggregate-snapshots.js.map +1 -0
  227. package/dist/schema/iam/apikey.d.ts +396 -0
  228. package/dist/schema/iam/apikey.d.ts.map +1 -0
  229. package/dist/schema/iam/apikey.js +41 -0
  230. package/dist/schema/iam/apikey.js.map +1 -0
  231. package/dist/schema/iam/auth.d.ts +1026 -0
  232. package/dist/schema/iam/auth.d.ts.map +1 -0
  233. package/dist/schema/iam/auth.js +138 -0
  234. package/dist/schema/iam/auth.js.map +1 -0
  235. package/dist/schema/iam/cloud_auth.d.ts +446 -0
  236. package/dist/schema/iam/cloud_auth.d.ts.map +1 -0
  237. package/dist/schema/iam/cloud_auth.js +46 -0
  238. package/dist/schema/iam/cloud_auth.js.map +1 -0
  239. package/dist/schema/iam/index.d.ts +8 -0
  240. package/dist/schema/iam/index.d.ts.map +1 -0
  241. package/dist/schema/iam/index.js +8 -0
  242. package/dist/schema/iam/index.js.map +1 -0
  243. package/dist/schema/iam/invitations.d.ts +173 -0
  244. package/dist/schema/iam/invitations.d.ts.map +1 -0
  245. package/dist/schema/iam/invitations.js +27 -0
  246. package/dist/schema/iam/invitations.js.map +1 -0
  247. package/dist/schema/iam/kms.d.ts +53 -0
  248. package/dist/schema/iam/kms.d.ts.map +1 -0
  249. package/dist/schema/iam/kms.js +40 -0
  250. package/dist/schema/iam/kms.js.map +1 -0
  251. package/dist/schema/iam/roles.d.ts +12 -0
  252. package/dist/schema/iam/roles.d.ts.map +1 -0
  253. package/dist/schema/iam/roles.js +12 -0
  254. package/dist/schema/iam/roles.js.map +1 -0
  255. package/dist/schema/iam/user_profiles.d.ts +442 -0
  256. package/dist/schema/iam/user_profiles.d.ts.map +1 -0
  257. package/dist/schema/iam/user_profiles.js +125 -0
  258. package/dist/schema/iam/user_profiles.js.map +1 -0
  259. package/dist/schema/index.d.ts +5 -0
  260. package/dist/schema/index.d.ts.map +1 -0
  261. package/dist/schema/index.js +5 -0
  262. package/dist/schema/index.js.map +1 -0
  263. package/dist/schema/infra/domains.d.ts +609 -0
  264. package/dist/schema/infra/domains.d.ts.map +1 -0
  265. package/dist/schema/infra/domains.js +108 -0
  266. package/dist/schema/infra/domains.js.map +1 -0
  267. package/dist/schema/infra/email_domain_records.d.ts +255 -0
  268. package/dist/schema/infra/email_domain_records.d.ts.map +1 -0
  269. package/dist/schema/infra/email_domain_records.js +65 -0
  270. package/dist/schema/infra/email_domain_records.js.map +1 -0
  271. package/dist/schema/infra/event_outbox.d.ts +232 -0
  272. package/dist/schema/infra/event_outbox.d.ts.map +1 -0
  273. package/dist/schema/infra/event_outbox.js +59 -0
  274. package/dist/schema/infra/event_outbox.js.map +1 -0
  275. package/dist/schema/infra/idempotency_keys.d.ts +186 -0
  276. package/dist/schema/infra/idempotency_keys.d.ts.map +1 -0
  277. package/dist/schema/infra/idempotency_keys.js +40 -0
  278. package/dist/schema/infra/idempotency_keys.js.map +1 -0
  279. package/dist/schema/infra/index.d.ts +9 -0
  280. package/dist/schema/infra/index.d.ts.map +1 -0
  281. package/dist/schema/infra/index.js +10 -0
  282. package/dist/schema/infra/index.js.map +1 -0
  283. package/dist/schema/infra/public_document_delivery_grants.d.ts +356 -0
  284. package/dist/schema/infra/public_document_delivery_grants.d.ts.map +1 -0
  285. package/dist/schema/infra/public_document_delivery_grants.js +36 -0
  286. package/dist/schema/infra/public_document_delivery_grants.js.map +1 -0
  287. package/dist/schema/infra/rate_limit_buckets.d.ts +138 -0
  288. package/dist/schema/infra/rate_limit_buckets.d.ts.map +1 -0
  289. package/dist/schema/infra/rate_limit_buckets.js +52 -0
  290. package/dist/schema/infra/rate_limit_buckets.js.map +1 -0
  291. package/dist/schema/infra/webhook_deliveries.d.ts +572 -0
  292. package/dist/schema/infra/webhook_deliveries.d.ts.map +1 -0
  293. package/dist/schema/infra/webhook_deliveries.js +136 -0
  294. package/dist/schema/infra/webhook_deliveries.js.map +1 -0
  295. package/dist/schema/infra/webhook_subscriptions.d.ts +284 -0
  296. package/dist/schema/infra/webhook_subscriptions.d.ts.map +1 -0
  297. package/dist/schema/infra/webhook_subscriptions.js +64 -0
  298. package/dist/schema/infra/webhook_subscriptions.js.map +1 -0
  299. package/dist/schema/infra/write_intents.d.ts +185 -0
  300. package/dist/schema/infra/write_intents.d.ts.map +1 -0
  301. package/dist/schema/infra/write_intents.js +50 -0
  302. package/dist/schema/infra/write_intents.js.map +1 -0
  303. package/dist/schema/voyant/bookings.d.ts +2 -0
  304. package/dist/schema/voyant/bookings.d.ts.map +1 -0
  305. package/dist/schema/voyant/bookings.js +2 -0
  306. package/dist/schema/voyant/bookings.js.map +1 -0
  307. package/dist/schema/voyant/finance.d.ts +2 -0
  308. package/dist/schema/voyant/finance.d.ts.map +1 -0
  309. package/dist/schema/voyant/finance.js +2 -0
  310. package/dist/schema/voyant/finance.js.map +1 -0
  311. package/dist/test-utils.d.ts +17 -0
  312. package/dist/test-utils.d.ts.map +1 -0
  313. package/dist/test-utils.js +56 -0
  314. package/dist/test-utils.js.map +1 -0
  315. package/dist/transaction-capability.d.ts +11 -0
  316. package/dist/transaction-capability.d.ts.map +1 -0
  317. package/dist/transaction-capability.js +17 -0
  318. package/dist/transaction-capability.js.map +1 -0
  319. package/dist/transaction.d.ts +31 -0
  320. package/dist/transaction.d.ts.map +1 -0
  321. package/dist/transaction.js +72 -0
  322. package/dist/transaction.js.map +1 -0
  323. package/dist/tsconfig.tsbuildinfo +1 -0
  324. package/dist/types.d.ts +10 -0
  325. package/dist/types.d.ts.map +1 -0
  326. package/dist/types.js +2 -0
  327. package/dist/types.js.map +1 -0
  328. package/dist/utils.d.ts +2 -0
  329. package/dist/utils.d.ts.map +1 -0
  330. package/dist/utils.js +19 -0
  331. package/dist/utils.js.map +1 -0
  332. package/dist/write-intents.d.ts +51 -0
  333. package/dist/write-intents.d.ts.map +1 -0
  334. package/dist/write-intents.js +95 -0
  335. package/dist/write-intents.js.map +1 -0
  336. package/package.json +306 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outbox.js","sourceRoot":"","sources":["../src/outbox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ import { z } from "zod";
2
+ export declare const productTypeSchema: z.ZodEnum<{
3
+ tour: "tour";
4
+ experience: "experience";
5
+ package: "package";
6
+ accommodation: "accommodation";
7
+ cruise: "cruise";
8
+ pilgrimage: "pilgrimage";
9
+ excursion: "excursion";
10
+ "city-break": "city-break";
11
+ }>;
12
+ export type ProductTypeSchema = z.infer<typeof productTypeSchema>;
13
+ export declare const productStatusSchema: z.ZodEnum<{
14
+ active: "active";
15
+ draft: "draft";
16
+ archived: "archived";
17
+ }>;
18
+ export type ProductStatusSchema = z.infer<typeof productStatusSchema>;
19
+ export declare const departureStatusSchema: z.ZodEnum<{
20
+ scheduled: "scheduled";
21
+ on_sale: "on_sale";
22
+ sold_out: "sold_out";
23
+ cancelled: "cancelled";
24
+ }>;
25
+ export type DepartureStatusSchema = z.infer<typeof departureStatusSchema>;
26
+ export declare const sourceKindSchema: z.ZodEnum<{
27
+ organization: "organization";
28
+ external_provider: "external_provider";
29
+ }>;
30
+ export type SourceKindSchema = z.infer<typeof sourceKindSchema>;
31
+ export declare const ownerKindSchema: z.ZodEnum<{
32
+ provider: "provider";
33
+ organization: "organization";
34
+ }>;
35
+ export type OwnerKindSchema = z.infer<typeof ownerKindSchema>;
36
+ export declare const publicationEntityTypeSchema: z.ZodEnum<{
37
+ product: "product";
38
+ departure: "departure";
39
+ }>;
40
+ export type PublicationEntityTypeSchema = z.infer<typeof publicationEntityTypeSchema>;
41
+ /**
42
+ * Core product fields schema - shared validation for common product columns.
43
+ * Used by both catalog.products and marketplace.publication_products.
44
+ */
45
+ export declare const productCoreFieldsSchema: z.ZodObject<{
46
+ title: z.ZodString;
47
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
48
+ language: z.ZodOptional<z.ZodNullable<z.ZodString>>;
49
+ currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
50
+ location: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
51
+ tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
52
+ attributes: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
53
+ }, z.core.$strip>;
54
+ export type ProductCoreFields = z.infer<typeof productCoreFieldsSchema>;
55
+ /**
56
+ * Timestamp fields schema with optional nullability.
57
+ */
58
+ export declare const timestampsSchema: z.ZodObject<{
59
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
60
+ updatedAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
61
+ }, z.core.$strip>;
62
+ export declare const timestampsRequiredSchema: z.ZodObject<{
63
+ createdAt: z.ZodDate;
64
+ updatedAt: z.ZodDate;
65
+ }, z.core.$strip>;
66
+ export type Timestamps = z.infer<typeof timestampsSchema>;
67
+ export type TimestampsRequired = z.infer<typeof timestampsRequiredSchema>;
68
+ /**
69
+ * Core departure fields schema - shared validation for common departure columns.
70
+ * Used by both catalog.departures and marketplace.publication_departures.
71
+ */
72
+ export declare const departureCoreFieldsSchema: z.ZodObject<{
73
+ startAt: z.ZodDate;
74
+ endAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
75
+ capacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
76
+ attributes: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
77
+ }, z.core.$strip>;
78
+ export type DepartureCoreFields = z.infer<typeof departureCoreFieldsSchema>;
79
+ /**
80
+ * Core itinerary fields schema - shared validation for common itinerary columns.
81
+ * Used by both catalog.itineraries and marketplace.publication_itineraries.
82
+ */
83
+ export declare const itineraryCoreFieldsSchema: z.ZodObject<{
84
+ name: z.ZodString;
85
+ }, z.core.$strip>;
86
+ export type ItineraryCoreFields = z.infer<typeof itineraryCoreFieldsSchema>;
87
+ /**
88
+ * Core ship fields schema - shared validation for common ship columns.
89
+ * Used by both cruise.ships and marketplace.publication_ships.
90
+ */
91
+ export declare const shipCoreFieldsSchema: z.ZodObject<{
92
+ name: z.ZodString;
93
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
94
+ yearBuilt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
95
+ yearRefurbished: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
96
+ capacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
97
+ crewSize: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
98
+ amenities: z.ZodOptional<z.ZodNullable<z.ZodAny>>;
99
+ }, z.core.$strip>;
100
+ export type ShipCoreFields = z.infer<typeof shipCoreFieldsSchema>;
101
+ //# sourceMappingURL=catalog-schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog-schemas.d.ts","sourceRoot":"","sources":["../../src/primitives/catalog-schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAevB,eAAO,MAAM,iBAAiB;;;;;;;;;EAAwB,CAAA;AACtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE,eAAO,MAAM,mBAAmB;;;;EAA2B,CAAA;AAC3D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAErE,eAAO,MAAM,qBAAqB;;;;;EAA6B,CAAA;AAC/D,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEzE,eAAO,MAAM,gBAAgB;;;EAAuB,CAAA;AACpD,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D,eAAO,MAAM,eAAe;;;EAAsB,CAAA;AAClD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D,eAAO,MAAM,2BAA2B;;;EAAmC,CAAA;AAC3E,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAMrF;;;GAGG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;iBAQlC,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;iBAG3B,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AACzD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;iBAKpC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE3E;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;iBAEpC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE3E;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;iBAQ/B,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
@@ -0,0 +1,69 @@
1
+ import { z } from "zod";
2
+ import { DEPARTURE_STATUSES, OWNER_KINDS, PRODUCT_STATUSES, PRODUCT_TYPES, PUBLICATION_ENTITY_TYPES, SOURCE_KINDS, } from "./catalog.js";
3
+ // -----------------------------------------------------------------------------
4
+ // Enum Schemas
5
+ // -----------------------------------------------------------------------------
6
+ export const productTypeSchema = z.enum(PRODUCT_TYPES);
7
+ export const productStatusSchema = z.enum(PRODUCT_STATUSES);
8
+ export const departureStatusSchema = z.enum(DEPARTURE_STATUSES);
9
+ export const sourceKindSchema = z.enum(SOURCE_KINDS);
10
+ export const ownerKindSchema = z.enum(OWNER_KINDS);
11
+ export const publicationEntityTypeSchema = z.enum(PUBLICATION_ENTITY_TYPES);
12
+ // -----------------------------------------------------------------------------
13
+ // Core Field Schemas (shared between db-main and db-marketplace)
14
+ // -----------------------------------------------------------------------------
15
+ /**
16
+ * Core product fields schema - shared validation for common product columns.
17
+ * Used by both catalog.products and marketplace.publication_products.
18
+ */
19
+ export const productCoreFieldsSchema = z.object({
20
+ title: z.string().min(1, "Title is required").max(300, "Title must be 300 characters or less"),
21
+ description: z.string().nullable().optional(),
22
+ language: z.string().nullable().optional(),
23
+ currency: z.string().length(3, "Currency must be a 3-letter ISO code").nullable().optional(),
24
+ location: z.record(z.string(), z.unknown()).nullable().optional(),
25
+ tags: z.array(z.string()).optional().default([]),
26
+ attributes: z.record(z.string(), z.unknown()).optional().default({}),
27
+ });
28
+ /**
29
+ * Timestamp fields schema with optional nullability.
30
+ */
31
+ export const timestampsSchema = z.object({
32
+ createdAt: z.date().nullable().optional(),
33
+ updatedAt: z.date().nullable().optional(),
34
+ });
35
+ export const timestampsRequiredSchema = z.object({
36
+ createdAt: z.date(),
37
+ updatedAt: z.date(),
38
+ });
39
+ /**
40
+ * Core departure fields schema - shared validation for common departure columns.
41
+ * Used by both catalog.departures and marketplace.publication_departures.
42
+ */
43
+ export const departureCoreFieldsSchema = z.object({
44
+ startAt: z.date(),
45
+ endAt: z.date().nullable().optional(),
46
+ capacity: z.number().int().nullable().optional(),
47
+ attributes: z.record(z.string(), z.unknown()).optional().default({}),
48
+ });
49
+ /**
50
+ * Core itinerary fields schema - shared validation for common itinerary columns.
51
+ * Used by both catalog.itineraries and marketplace.publication_itineraries.
52
+ */
53
+ export const itineraryCoreFieldsSchema = z.object({
54
+ name: z.string().min(1, "Name is required"),
55
+ });
56
+ /**
57
+ * Core ship fields schema - shared validation for common ship columns.
58
+ * Used by both cruise.ships and marketplace.publication_ships.
59
+ */
60
+ export const shipCoreFieldsSchema = z.object({
61
+ name: z.string().min(1, "Name is required"),
62
+ description: z.string().nullable().optional(),
63
+ yearBuilt: z.number().int().min(1800).max(2100).nullable().optional(),
64
+ yearRefurbished: z.number().int().min(1800).max(2100).nullable().optional(),
65
+ capacity: z.number().int().min(1).nullable().optional(),
66
+ crewSize: z.number().int().min(1).nullable().optional(),
67
+ amenities: z.any().nullable().optional(),
68
+ });
69
+ //# sourceMappingURL=catalog-schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog-schemas.js","sourceRoot":"","sources":["../../src/primitives/catalog-schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,wBAAwB,EACxB,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAEhF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AAGtD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;AAG3D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;AAG/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAGpD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;AAGlD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;AAG3E,gFAAgF;AAChF,iEAAiE;AACjE,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,sCAAsC,CAAC;IAC9F,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,sCAAsC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5F,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAChD,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACrE,CAAC,CAAA;AAIF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;CACpB,CAAC,CAAA;AAKF;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAChD,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACrE,CAAC,CAAA;AAIF;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;CAC5C,CAAC,CAAA;AAIF;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC3E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,SAAS,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAA"}
@@ -0,0 +1,47 @@
1
+ export declare const PRODUCT_TYPES: readonly ["tour", "experience", "package", "accommodation", "cruise", "pilgrimage", "excursion", "city-break"];
2
+ export type ProductType = (typeof PRODUCT_TYPES)[number];
3
+ export declare const PRODUCT_STATUSES: readonly ["draft", "active", "archived"];
4
+ export type ProductStatus = (typeof PRODUCT_STATUSES)[number];
5
+ export declare const DEPARTURE_STATUSES: readonly ["scheduled", "on_sale", "sold_out", "cancelled"];
6
+ export type DepartureStatus = (typeof DEPARTURE_STATUSES)[number];
7
+ export declare const SOURCE_KINDS: readonly ["organization", "external_provider"];
8
+ export type SourceKind = (typeof SOURCE_KINDS)[number];
9
+ export declare const OWNER_KINDS: readonly ["organization", "provider"];
10
+ export type OwnerKind = (typeof OWNER_KINDS)[number];
11
+ export declare const PUBLICATION_ENTITY_TYPES: readonly ["product", "departure"];
12
+ export type PublicationEntityType = (typeof PUBLICATION_ENTITY_TYPES)[number];
13
+ export declare const SOURCE_TYPES: readonly ["organization", "external_provider"];
14
+ export type SourceType = (typeof SOURCE_TYPES)[number];
15
+ export declare const FITNESS_LEVELS: readonly ["none", "low", "moderate", "high", "extreme"];
16
+ export type FitnessLevel = (typeof FITNESS_LEVELS)[number];
17
+ export declare const PRICE_KINDS: readonly ["base", "discount", "fee", "tax"];
18
+ export type PriceKind = (typeof PRICE_KINDS)[number];
19
+ export declare const AVAILABILITY_STATUSES: readonly ["open", "waitlist", "closed", "booked_out", "on_request"];
20
+ export type AvailabilityStatus = (typeof AVAILABILITY_STATUSES)[number];
21
+ export declare const BLACKOUT_REASONS: readonly ["maintenance", "weather", "staff_unavailable", "equipment_issue", "seasonal_closure", "private_event", "other"];
22
+ export type BlackoutReason = (typeof BLACKOUT_REASONS)[number];
23
+ export declare const DIETARY_OPTIONS: readonly ["vegetarian", "vegan", "gluten_free", "dairy_free", "nut_free", "halal", "kosher", "pescatarian", "low_sodium", "diabetic", "other"];
24
+ export type DietaryOption = (typeof DIETARY_OPTIONS)[number];
25
+ export declare const ACCESSIBILITY_SUPPORT_OPTIONS: readonly ["wheelchair", "mobility_aid", "hearing_loop", "sign_language", "visual_aids", "service_animal", "elevator_access", "accessible_restroom", "braille", "audio_description"];
26
+ export type AccessibilitySupport = (typeof ACCESSIBILITY_SUPPORT_OPTIONS)[number];
27
+ export declare const RATE_PLAN_CHANNELS: readonly ["website", "admin", "api", "marketplace"];
28
+ export type RatePlanChannel = (typeof RATE_PLAN_CHANNELS)[number];
29
+ export declare const RATE_PLAN_CHANNEL_STATUSES: readonly ["active", "hidden"];
30
+ export type RatePlanChannelStatus = (typeof RATE_PLAN_CHANNEL_STATUSES)[number];
31
+ export declare const EXTENSION_POSITIONS: readonly ["pre", "post"];
32
+ export type ExtensionPosition = (typeof EXTENSION_POSITIONS)[number];
33
+ export declare const EXTENSION_REF_SOURCES: readonly ["own", "provider"];
34
+ export type ExtensionRefSource = (typeof EXTENSION_REF_SOURCES)[number];
35
+ export declare const CATEGORY_ASSIGNMENT_SOURCES: readonly ["manual", "auto", "provider_map"];
36
+ export type CategoryAssignmentSource = (typeof CATEGORY_ASSIGNMENT_SOURCES)[number];
37
+ export declare const COLLECTION_STATUSES: readonly ["active", "draft", "archived"];
38
+ export type CollectionStatus = (typeof COLLECTION_STATUSES)[number];
39
+ export declare const COLLECTION_TYPES: readonly ["manual", "smart"];
40
+ export type CollectionType = (typeof COLLECTION_TYPES)[number];
41
+ export declare const COLLECTION_SORT_STRATEGIES: readonly ["manual", "newest", "price_asc", "price_desc", "random", "custom"];
42
+ export type CollectionSortStrategy = (typeof COLLECTION_SORT_STRATEGIES)[number];
43
+ export declare const COLLECTION_ITEM_TYPES: readonly ["product"];
44
+ export type CollectionItemType = (typeof COLLECTION_ITEM_TYPES)[number];
45
+ export declare const COLLECTION_ITEM_SOURCES: readonly ["manual", "rule", "override"];
46
+ export type CollectionItemSource = (typeof COLLECTION_ITEM_SOURCES)[number];
47
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/primitives/catalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ export const PRODUCT_TYPES = [
2
+ "tour",
3
+ "experience",
4
+ "package",
5
+ "accommodation",
6
+ "cruise",
7
+ "pilgrimage",
8
+ "excursion",
9
+ "city-break",
10
+ ];
11
+ export const PRODUCT_STATUSES = ["draft", "active", "archived"];
12
+ export const DEPARTURE_STATUSES = ["scheduled", "on_sale", "sold_out", "cancelled"];
13
+ export const SOURCE_KINDS = ["organization", "external_provider"];
14
+ export const OWNER_KINDS = ["organization", "provider"];
15
+ export const PUBLICATION_ENTITY_TYPES = ["product", "departure"];
16
+ // Source types for overrides (same as SOURCE_KINDS but used in product_overrides context)
17
+ export const SOURCE_TYPES = ["organization", "external_provider"];
18
+ // Fitness levels for booking rules
19
+ export const FITNESS_LEVELS = ["none", "low", "moderate", "high", "extreme"];
20
+ // Price kinds for catalog pricing
21
+ export const PRICE_KINDS = ["base", "discount", "fee", "tax"];
22
+ // Availability statuses
23
+ export const AVAILABILITY_STATUSES = [
24
+ "open",
25
+ "waitlist",
26
+ "closed",
27
+ "booked_out",
28
+ "on_request",
29
+ ];
30
+ // Blackout reasons
31
+ export const BLACKOUT_REASONS = [
32
+ "maintenance",
33
+ "weather",
34
+ "staff_unavailable",
35
+ "equipment_issue",
36
+ "seasonal_closure",
37
+ "private_event",
38
+ "other",
39
+ ];
40
+ // Dietary options
41
+ export const DIETARY_OPTIONS = [
42
+ "vegetarian",
43
+ "vegan",
44
+ "gluten_free",
45
+ "dairy_free",
46
+ "nut_free",
47
+ "halal",
48
+ "kosher",
49
+ "pescatarian",
50
+ "low_sodium",
51
+ "diabetic",
52
+ "other",
53
+ ];
54
+ // Accessibility support options
55
+ export const ACCESSIBILITY_SUPPORT_OPTIONS = [
56
+ "wheelchair",
57
+ "mobility_aid",
58
+ "hearing_loop",
59
+ "sign_language",
60
+ "visual_aids",
61
+ "service_animal",
62
+ "elevator_access",
63
+ "accessible_restroom",
64
+ "braille",
65
+ "audio_description",
66
+ ];
67
+ // Rate plan channels
68
+ export const RATE_PLAN_CHANNELS = ["website", "admin", "api", "marketplace"];
69
+ // Rate plan channel statuses
70
+ export const RATE_PLAN_CHANNEL_STATUSES = ["active", "hidden"];
71
+ // Extension positions
72
+ export const EXTENSION_POSITIONS = ["pre", "post"];
73
+ // Extension ref sources
74
+ export const EXTENSION_REF_SOURCES = ["own", "provider"];
75
+ // Category assignment sources
76
+ export const CATEGORY_ASSIGNMENT_SOURCES = ["manual", "auto", "provider_map"];
77
+ // Collection statuses
78
+ export const COLLECTION_STATUSES = ["active", "draft", "archived"];
79
+ // Collection types
80
+ export const COLLECTION_TYPES = ["manual", "smart"];
81
+ // Collection sort strategies
82
+ export const COLLECTION_SORT_STRATEGIES = [
83
+ "manual",
84
+ "newest",
85
+ "price_asc",
86
+ "price_desc",
87
+ "random",
88
+ "custom",
89
+ ];
90
+ // Collection item types
91
+ export const COLLECTION_ITEM_TYPES = ["product"];
92
+ // Collection item sources
93
+ export const COLLECTION_ITEM_SOURCES = ["manual", "rule", "override"];
94
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/primitives/catalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from "./catalog.js";
2
+ export * from "./catalog-schemas.js";
3
+ export * from "./offers.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from "./catalog.js";
2
+ export * from "./catalog-schemas.js";
3
+ export * from "./offers.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA"}
@@ -0,0 +1,224 @@
1
+ import { z } from "zod";
2
+ export declare const OFFER_STATUSES: readonly ["draft", "scheduled", "active", "paused", "expired", "archived"];
3
+ export type OfferStatus = (typeof OFFER_STATUSES)[number];
4
+ export declare const OFFER_DISCOUNT_TYPES: readonly ["percentage", "fixed_amount"];
5
+ export type OfferDiscountType = (typeof OFFER_DISCOUNT_TYPES)[number];
6
+ export declare const OFFER_CHANNELS: readonly ["website", "admin", "api", "marketplace"];
7
+ export type OfferChannel = (typeof OFFER_CHANNELS)[number];
8
+ export declare const OFFER_CUSTOMER_SEGMENTS: readonly ["new", "returning", "vip", "loyalty_gold", "loyalty_silver", "loyalty_bronze"];
9
+ export type OfferCustomerSegment = (typeof OFFER_CUSTOMER_SEGMENTS)[number];
10
+ /**
11
+ * Condition: Booking window (days before departure)
12
+ * Used for early bird / last minute deals
13
+ */
14
+ export declare const bookingWindowConditionSchema: z.ZodObject<{
15
+ type: z.ZodLiteral<"booking_window">;
16
+ minDaysBefore: z.ZodOptional<z.ZodNumber>;
17
+ maxDaysBefore: z.ZodOptional<z.ZodNumber>;
18
+ }, z.core.$strip>;
19
+ export type BookingWindowCondition = z.infer<typeof bookingWindowConditionSchema>;
20
+ /**
21
+ * Condition: Minimum travelers
22
+ * Used for group booking discounts
23
+ */
24
+ export declare const minPaxConditionSchema: z.ZodObject<{
25
+ type: z.ZodLiteral<"min_pax">;
26
+ minPassengers: z.ZodNumber;
27
+ }, z.core.$strip>;
28
+ export type MinPaxCondition = z.infer<typeof minPaxConditionSchema>;
29
+ /**
30
+ * Condition: Booking date range
31
+ * Offer applies when booking is made within date range
32
+ */
33
+ export declare const bookingDateConditionSchema: z.ZodObject<{
34
+ type: z.ZodLiteral<"booking_date">;
35
+ from: z.ZodOptional<z.ZodString>;
36
+ to: z.ZodOptional<z.ZodString>;
37
+ }, z.core.$strip>;
38
+ export type BookingDateCondition = z.infer<typeof bookingDateConditionSchema>;
39
+ /**
40
+ * Condition: Customer segments
41
+ * Offer applies to specific customer types
42
+ */
43
+ export declare const customerSegmentConditionSchema: z.ZodObject<{
44
+ type: z.ZodLiteral<"customer_segment">;
45
+ segments: z.ZodArray<z.ZodString>;
46
+ }, z.core.$strip>;
47
+ export type CustomerSegmentCondition = z.infer<typeof customerSegmentConditionSchema>;
48
+ /**
49
+ * Condition: Booking channels
50
+ * Offer applies on specific booking channels
51
+ */
52
+ export declare const channelConditionSchema: z.ZodObject<{
53
+ type: z.ZodLiteral<"channel">;
54
+ channels: z.ZodArray<z.ZodEnum<{
55
+ admin: "admin";
56
+ website: "website";
57
+ marketplace: "marketplace";
58
+ api: "api";
59
+ }>>;
60
+ }, z.core.$strip>;
61
+ export type ChannelCondition = z.infer<typeof channelConditionSchema>;
62
+ /**
63
+ * Condition: First-time customer
64
+ * Offer only for new customers
65
+ */
66
+ export declare const firstTimeCustomerConditionSchema: z.ZodObject<{
67
+ type: z.ZodLiteral<"first_time_customer">;
68
+ enabled: z.ZodBoolean;
69
+ }, z.core.$strip>;
70
+ export type FirstTimeCustomerCondition = z.infer<typeof firstTimeCustomerConditionSchema>;
71
+ /**
72
+ * Union of all condition types
73
+ */
74
+ export declare const offerConditionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
75
+ type: z.ZodLiteral<"booking_window">;
76
+ minDaysBefore: z.ZodOptional<z.ZodNumber>;
77
+ maxDaysBefore: z.ZodOptional<z.ZodNumber>;
78
+ }, z.core.$strip>, z.ZodObject<{
79
+ type: z.ZodLiteral<"min_pax">;
80
+ minPassengers: z.ZodNumber;
81
+ }, z.core.$strip>, z.ZodObject<{
82
+ type: z.ZodLiteral<"booking_date">;
83
+ from: z.ZodOptional<z.ZodString>;
84
+ to: z.ZodOptional<z.ZodString>;
85
+ }, z.core.$strip>, z.ZodObject<{
86
+ type: z.ZodLiteral<"customer_segment">;
87
+ segments: z.ZodArray<z.ZodString>;
88
+ }, z.core.$strip>, z.ZodObject<{
89
+ type: z.ZodLiteral<"channel">;
90
+ channels: z.ZodArray<z.ZodEnum<{
91
+ admin: "admin";
92
+ website: "website";
93
+ marketplace: "marketplace";
94
+ api: "api";
95
+ }>>;
96
+ }, z.core.$strip>, z.ZodObject<{
97
+ type: z.ZodLiteral<"first_time_customer">;
98
+ enabled: z.ZodBoolean;
99
+ }, z.core.$strip>], "type">;
100
+ export type OfferCondition = z.infer<typeof offerConditionSchema>;
101
+ /**
102
+ * Full conditions object (array of conditions - all must match)
103
+ */
104
+ export declare const offerConditionsSchema: z.ZodObject<{
105
+ conditions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
106
+ type: z.ZodLiteral<"booking_window">;
107
+ minDaysBefore: z.ZodOptional<z.ZodNumber>;
108
+ maxDaysBefore: z.ZodOptional<z.ZodNumber>;
109
+ }, z.core.$strip>, z.ZodObject<{
110
+ type: z.ZodLiteral<"min_pax">;
111
+ minPassengers: z.ZodNumber;
112
+ }, z.core.$strip>, z.ZodObject<{
113
+ type: z.ZodLiteral<"booking_date">;
114
+ from: z.ZodOptional<z.ZodString>;
115
+ to: z.ZodOptional<z.ZodString>;
116
+ }, z.core.$strip>, z.ZodObject<{
117
+ type: z.ZodLiteral<"customer_segment">;
118
+ segments: z.ZodArray<z.ZodString>;
119
+ }, z.core.$strip>, z.ZodObject<{
120
+ type: z.ZodLiteral<"channel">;
121
+ channels: z.ZodArray<z.ZodEnum<{
122
+ admin: "admin";
123
+ website: "website";
124
+ marketplace: "marketplace";
125
+ api: "api";
126
+ }>>;
127
+ }, z.core.$strip>, z.ZodObject<{
128
+ type: z.ZodLiteral<"first_time_customer">;
129
+ enabled: z.ZodBoolean;
130
+ }, z.core.$strip>], "type">>>>;
131
+ }, z.core.$strip>;
132
+ export type OfferConditions = z.infer<typeof offerConditionsSchema>;
133
+ export declare const offerStatusSchema: z.ZodEnum<{
134
+ active: "active";
135
+ draft: "draft";
136
+ archived: "archived";
137
+ scheduled: "scheduled";
138
+ paused: "paused";
139
+ expired: "expired";
140
+ }>;
141
+ export type OfferStatusSchema = z.infer<typeof offerStatusSchema>;
142
+ export declare const offerDiscountTypeSchema: z.ZodEnum<{
143
+ percentage: "percentage";
144
+ fixed_amount: "fixed_amount";
145
+ }>;
146
+ export type OfferDiscountTypeSchema = z.infer<typeof offerDiscountTypeSchema>;
147
+ export declare const offerChannelSchema: z.ZodEnum<{
148
+ admin: "admin";
149
+ website: "website";
150
+ marketplace: "marketplace";
151
+ api: "api";
152
+ }>;
153
+ export type OfferChannelSchema = z.infer<typeof offerChannelSchema>;
154
+ export declare const offerCustomerSegmentSchema: z.ZodEnum<{
155
+ returning: "returning";
156
+ new: "new";
157
+ vip: "vip";
158
+ loyalty_gold: "loyalty_gold";
159
+ loyalty_silver: "loyalty_silver";
160
+ loyalty_bronze: "loyalty_bronze";
161
+ }>;
162
+ export type OfferCustomerSegmentSchema = z.infer<typeof offerCustomerSegmentSchema>;
163
+ /**
164
+ * Core offer fields schema - shared validation for common offer columns.
165
+ * Used by both db-main and db-marketplace.
166
+ */
167
+ export declare const offerCoreFieldsSchema: z.ZodObject<{
168
+ name: z.ZodString;
169
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
170
+ badge: z.ZodOptional<z.ZodNullable<z.ZodString>>;
171
+ discountType: z.ZodEnum<{
172
+ percentage: "percentage";
173
+ fixed_amount: "fixed_amount";
174
+ }>;
175
+ discountValue: z.ZodString;
176
+ currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
177
+ applicableProductIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
178
+ applicableDepartureIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
179
+ validFrom: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
180
+ validTo: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
181
+ conditions: z.ZodDefault<z.ZodOptional<z.ZodObject<{
182
+ conditions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
183
+ type: z.ZodLiteral<"booking_window">;
184
+ minDaysBefore: z.ZodOptional<z.ZodNumber>;
185
+ maxDaysBefore: z.ZodOptional<z.ZodNumber>;
186
+ }, z.core.$strip>, z.ZodObject<{
187
+ type: z.ZodLiteral<"min_pax">;
188
+ minPassengers: z.ZodNumber;
189
+ }, z.core.$strip>, z.ZodObject<{
190
+ type: z.ZodLiteral<"booking_date">;
191
+ from: z.ZodOptional<z.ZodString>;
192
+ to: z.ZodOptional<z.ZodString>;
193
+ }, z.core.$strip>, z.ZodObject<{
194
+ type: z.ZodLiteral<"customer_segment">;
195
+ segments: z.ZodArray<z.ZodString>;
196
+ }, z.core.$strip>, z.ZodObject<{
197
+ type: z.ZodLiteral<"channel">;
198
+ channels: z.ZodArray<z.ZodEnum<{
199
+ admin: "admin";
200
+ website: "website";
201
+ marketplace: "marketplace";
202
+ api: "api";
203
+ }>>;
204
+ }, z.core.$strip>, z.ZodObject<{
205
+ type: z.ZodLiteral<"first_time_customer">;
206
+ enabled: z.ZodBoolean;
207
+ }, z.core.$strip>], "type">>>>;
208
+ }, z.core.$strip>>>;
209
+ stackable: z.ZodDefault<z.ZodBoolean>;
210
+ stackingGroup: z.ZodOptional<z.ZodNullable<z.ZodString>>;
211
+ priority: z.ZodDefault<z.ZodNumber>;
212
+ isActive: z.ZodDefault<z.ZodBoolean>;
213
+ displayPriority: z.ZodDefault<z.ZodNumber>;
214
+ }, z.core.$strip>;
215
+ export type OfferCoreFields = z.infer<typeof offerCoreFieldsSchema>;
216
+ /**
217
+ * Timestamp fields for offers
218
+ */
219
+ export declare const offerTimestampsSchema: z.ZodObject<{
220
+ createdAt: z.ZodDate;
221
+ updatedAt: z.ZodDate;
222
+ }, z.core.$strip>;
223
+ export type OfferTimestamps = z.infer<typeof offerTimestampsSchema>;
224
+ //# sourceMappingURL=offers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offers.d.ts","sourceRoot":"","sources":["../../src/primitives/offers.ts"],"names":[],"mappings":"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"}