@explorins/pers-shared 2.1.166 → 2.1.168

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 (171) hide show
  1. package/dist/cjs/shared-lib/dto/analytics/campaign-claim-analytics-request.dto.d.ts +1 -1
  2. package/dist/cjs/shared-lib/dto/analytics/campaign-claim-analytics-request.dto.d.ts.map +1 -1
  3. package/dist/cjs/shared-lib/dto/analytics/redemption-redeem-analytics-request.dto.d.ts +1 -1
  4. package/dist/cjs/shared-lib/dto/analytics/redemption-redeem-analytics-request.dto.d.ts.map +1 -1
  5. package/dist/cjs/shared-lib/dto/analytics/transaction-analytics.request.dto.d.ts +1 -1
  6. package/dist/cjs/shared-lib/dto/analytics/transaction-analytics.request.dto.d.ts.map +1 -1
  7. package/dist/cjs/shared-lib/dto/analytics/user-analytics.dto.d.ts +1 -1
  8. package/dist/cjs/shared-lib/dto/analytics/user-analytics.dto.d.ts.map +1 -1
  9. package/dist/cjs/shared-lib/dto/booking/booking.dto.d.ts +76 -0
  10. package/dist/cjs/shared-lib/dto/booking/booking.dto.d.ts.map +1 -0
  11. package/dist/cjs/shared-lib/dto/booking/booking.dto.js +291 -0
  12. package/dist/cjs/shared-lib/dto/booking/booking.dto.js.map +1 -0
  13. package/dist/cjs/shared-lib/dto/booking/index.d.ts +2 -0
  14. package/dist/cjs/shared-lib/dto/booking/index.d.ts.map +1 -0
  15. package/dist/cjs/shared-lib/dto/booking/index.js +18 -0
  16. package/dist/cjs/shared-lib/dto/booking/index.js.map +1 -0
  17. package/dist/cjs/shared-lib/dto/campaign/campaignTrigger.dto.d.ts +1 -1
  18. package/dist/cjs/shared-lib/dto/campaign/campaignTrigger.dto.d.ts.map +1 -1
  19. package/dist/cjs/shared-lib/dto/campaign/campaignTrigger.dto.js.map +1 -1
  20. package/dist/cjs/shared-lib/dto/campaign/campaignUserClaim.dto.d.ts +2 -0
  21. package/dist/cjs/shared-lib/dto/campaign/campaignUserClaim.dto.d.ts.map +1 -1
  22. package/dist/cjs/shared-lib/dto/campaign/campaignUserClaim.dto.js +10 -0
  23. package/dist/cjs/shared-lib/dto/campaign/campaignUserClaim.dto.js.map +1 -1
  24. package/dist/cjs/shared-lib/dto/campaign/trigger-source.dto.d.ts +1 -1
  25. package/dist/cjs/shared-lib/dto/campaign/trigger-source.dto.d.ts.map +1 -1
  26. package/dist/cjs/shared-lib/dto/campaign/trigger-source.dto.js.map +1 -1
  27. package/dist/cjs/shared-lib/dto/index.d.ts +1 -0
  28. package/dist/cjs/shared-lib/dto/index.d.ts.map +1 -1
  29. package/dist/cjs/shared-lib/dto/index.js +2 -0
  30. package/dist/cjs/shared-lib/dto/index.js.map +1 -1
  31. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.d.ts +18 -3
  32. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.d.ts.map +1 -1
  33. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.js +28 -7
  34. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.js.map +1 -1
  35. package/dist/cjs/shared-lib/dto/redemption/redemptionCreate.request.dto.d.ts +3 -0
  36. package/dist/cjs/shared-lib/dto/redemption/redemptionCreate.request.dto.d.ts.map +1 -1
  37. package/dist/cjs/shared-lib/dto/redemption/redemptionCreate.request.dto.js +24 -0
  38. package/dist/cjs/shared-lib/dto/redemption/redemptionCreate.request.dto.js.map +1 -1
  39. package/dist/cjs/shared-lib/dto/redemption/redemptionRedeem.dto.d.ts +2 -0
  40. package/dist/cjs/shared-lib/dto/redemption/redemptionRedeem.dto.d.ts.map +1 -1
  41. package/dist/cjs/shared-lib/dto/redemption/redemptionRedeem.dto.js +10 -0
  42. package/dist/cjs/shared-lib/dto/redemption/redemptionRedeem.dto.js.map +1 -1
  43. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.d.ts +2 -2
  44. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.d.ts.map +1 -1
  45. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.js +4 -4
  46. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.js.map +1 -1
  47. package/dist/cjs/shared-lib/dto/token/token-metadata.dto.js +2 -2
  48. package/dist/cjs/shared-lib/dto/token/token-metadata.dto.js.map +1 -1
  49. package/dist/cjs/shared-lib/dto/user/custom-field-definition.dto.d.ts +2 -2
  50. package/dist/cjs/shared-lib/dto/user/custom-field-definition.dto.d.ts.map +1 -1
  51. package/dist/cjs/shared-lib/dto/user/custom-field-definition.dto.js +5 -25
  52. package/dist/cjs/shared-lib/dto/user/custom-field-definition.dto.js.map +1 -1
  53. package/dist/cjs/shared-lib/dto/user/user.dto.d.ts +2 -0
  54. package/dist/cjs/shared-lib/dto/user/user.dto.d.ts.map +1 -1
  55. package/dist/cjs/shared-lib/dto/user/user.dto.js +10 -0
  56. package/dist/cjs/shared-lib/dto/user/user.dto.js.map +1 -1
  57. package/dist/cjs/shared-lib/interfaces/local-storage-item.interface.d.ts +3 -0
  58. package/dist/cjs/shared-lib/interfaces/local-storage-item.interface.d.ts.map +1 -1
  59. package/dist/cjs/shared-lib/types/booking.type.d.ts +21 -0
  60. package/dist/cjs/shared-lib/types/booking.type.d.ts.map +1 -0
  61. package/dist/cjs/shared-lib/types/booking.type.js +15 -0
  62. package/dist/cjs/shared-lib/types/booking.type.js.map +1 -0
  63. package/dist/cjs/shared-lib/types/custom-fields.type.d.ts +19 -12
  64. package/dist/cjs/shared-lib/types/custom-fields.type.d.ts.map +1 -1
  65. package/dist/cjs/shared-lib/types/custom-fields.type.js +11 -4
  66. package/dist/cjs/shared-lib/types/custom-fields.type.js.map +1 -1
  67. package/dist/cjs/shared-lib/types/data-source.type.d.ts +90 -0
  68. package/dist/cjs/shared-lib/types/data-source.type.d.ts.map +1 -0
  69. package/dist/cjs/shared-lib/types/data-source.type.js +74 -0
  70. package/dist/cjs/shared-lib/types/data-source.type.js.map +1 -0
  71. package/dist/cjs/shared-lib/types/index.d.ts +2 -0
  72. package/dist/cjs/shared-lib/types/index.d.ts.map +1 -1
  73. package/dist/cjs/shared-lib/types/index.js +2 -0
  74. package/dist/cjs/shared-lib/types/index.js.map +1 -1
  75. package/dist/cjs/shared-lib/types/redemption-include-relation.type.d.ts +6 -4
  76. package/dist/cjs/shared-lib/types/redemption-include-relation.type.d.ts.map +1 -1
  77. package/dist/cjs/shared-lib/types/redemption-include-relation.type.js +2 -1
  78. package/dist/cjs/shared-lib/types/redemption-include-relation.type.js.map +1 -1
  79. package/dist/cjs/shared-lib/validation/field-validation.d.ts +2 -12
  80. package/dist/cjs/shared-lib/validation/field-validation.d.ts.map +1 -1
  81. package/dist/cjs/shared-lib/validation/field-validation.js +27 -79
  82. package/dist/cjs/shared-lib/validation/field-validation.js.map +1 -1
  83. package/dist/cjs/shared-lib/validation/validation.types.d.ts +13 -46
  84. package/dist/cjs/shared-lib/validation/validation.types.d.ts.map +1 -1
  85. package/dist/cjs/shared-lib/validation/validation.types.js.map +1 -1
  86. package/dist/esm/shared-lib/dto/analytics/campaign-claim-analytics-request.dto.d.ts +1 -1
  87. package/dist/esm/shared-lib/dto/analytics/campaign-claim-analytics-request.dto.d.ts.map +1 -1
  88. package/dist/esm/shared-lib/dto/analytics/redemption-redeem-analytics-request.dto.d.ts +1 -1
  89. package/dist/esm/shared-lib/dto/analytics/redemption-redeem-analytics-request.dto.d.ts.map +1 -1
  90. package/dist/esm/shared-lib/dto/analytics/transaction-analytics.request.dto.d.ts +1 -1
  91. package/dist/esm/shared-lib/dto/analytics/transaction-analytics.request.dto.d.ts.map +1 -1
  92. package/dist/esm/shared-lib/dto/analytics/user-analytics.dto.d.ts +1 -1
  93. package/dist/esm/shared-lib/dto/analytics/user-analytics.dto.d.ts.map +1 -1
  94. package/dist/esm/shared-lib/dto/booking/booking.dto.d.ts +76 -0
  95. package/dist/esm/shared-lib/dto/booking/booking.dto.d.ts.map +1 -0
  96. package/dist/esm/shared-lib/dto/booking/booking.dto.js +241 -0
  97. package/dist/esm/shared-lib/dto/booking/booking.dto.js.map +1 -0
  98. package/dist/esm/shared-lib/dto/booking/index.d.ts +2 -0
  99. package/dist/esm/shared-lib/dto/booking/index.d.ts.map +1 -0
  100. package/dist/esm/shared-lib/dto/booking/index.js +2 -0
  101. package/dist/esm/shared-lib/dto/booking/index.js.map +1 -0
  102. package/dist/esm/shared-lib/dto/campaign/campaignTrigger.dto.d.ts +1 -1
  103. package/dist/esm/shared-lib/dto/campaign/campaignTrigger.dto.d.ts.map +1 -1
  104. package/dist/esm/shared-lib/dto/campaign/campaignTrigger.dto.js.map +1 -1
  105. package/dist/esm/shared-lib/dto/campaign/campaignUserClaim.dto.d.ts +2 -0
  106. package/dist/esm/shared-lib/dto/campaign/campaignUserClaim.dto.d.ts.map +1 -1
  107. package/dist/esm/shared-lib/dto/campaign/campaignUserClaim.dto.js +9 -0
  108. package/dist/esm/shared-lib/dto/campaign/campaignUserClaim.dto.js.map +1 -1
  109. package/dist/esm/shared-lib/dto/campaign/trigger-source.dto.d.ts +1 -1
  110. package/dist/esm/shared-lib/dto/campaign/trigger-source.dto.d.ts.map +1 -1
  111. package/dist/esm/shared-lib/dto/campaign/trigger-source.dto.js.map +1 -1
  112. package/dist/esm/shared-lib/dto/index.d.ts +1 -0
  113. package/dist/esm/shared-lib/dto/index.d.ts.map +1 -1
  114. package/dist/esm/shared-lib/dto/index.js +2 -0
  115. package/dist/esm/shared-lib/dto/index.js.map +1 -1
  116. package/dist/esm/shared-lib/dto/redemption/redemption.dto.d.ts +18 -3
  117. package/dist/esm/shared-lib/dto/redemption/redemption.dto.d.ts.map +1 -1
  118. package/dist/esm/shared-lib/dto/redemption/redemption.dto.js +27 -7
  119. package/dist/esm/shared-lib/dto/redemption/redemption.dto.js.map +1 -1
  120. package/dist/esm/shared-lib/dto/redemption/redemptionCreate.request.dto.d.ts +3 -0
  121. package/dist/esm/shared-lib/dto/redemption/redemptionCreate.request.dto.d.ts.map +1 -1
  122. package/dist/esm/shared-lib/dto/redemption/redemptionCreate.request.dto.js +23 -1
  123. package/dist/esm/shared-lib/dto/redemption/redemptionCreate.request.dto.js.map +1 -1
  124. package/dist/esm/shared-lib/dto/redemption/redemptionRedeem.dto.d.ts +2 -0
  125. package/dist/esm/shared-lib/dto/redemption/redemptionRedeem.dto.d.ts.map +1 -1
  126. package/dist/esm/shared-lib/dto/redemption/redemptionRedeem.dto.js +10 -1
  127. package/dist/esm/shared-lib/dto/redemption/redemptionRedeem.dto.js.map +1 -1
  128. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.d.ts +2 -2
  129. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.d.ts.map +1 -1
  130. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.js +4 -4
  131. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.js.map +1 -1
  132. package/dist/esm/shared-lib/dto/token/token-metadata.dto.js +2 -2
  133. package/dist/esm/shared-lib/dto/token/token-metadata.dto.js.map +1 -1
  134. package/dist/esm/shared-lib/dto/user/custom-field-definition.dto.d.ts +2 -2
  135. package/dist/esm/shared-lib/dto/user/custom-field-definition.dto.d.ts.map +1 -1
  136. package/dist/esm/shared-lib/dto/user/custom-field-definition.dto.js +5 -24
  137. package/dist/esm/shared-lib/dto/user/custom-field-definition.dto.js.map +1 -1
  138. package/dist/esm/shared-lib/dto/user/user.dto.d.ts +2 -0
  139. package/dist/esm/shared-lib/dto/user/user.dto.d.ts.map +1 -1
  140. package/dist/esm/shared-lib/dto/user/user.dto.js +9 -0
  141. package/dist/esm/shared-lib/dto/user/user.dto.js.map +1 -1
  142. package/dist/esm/shared-lib/interfaces/local-storage-item.interface.d.ts +3 -0
  143. package/dist/esm/shared-lib/interfaces/local-storage-item.interface.d.ts.map +1 -1
  144. package/dist/esm/shared-lib/types/booking.type.d.ts +21 -0
  145. package/dist/esm/shared-lib/types/booking.type.d.ts.map +1 -0
  146. package/dist/esm/shared-lib/types/booking.type.js +12 -0
  147. package/dist/esm/shared-lib/types/booking.type.js.map +1 -0
  148. package/dist/esm/shared-lib/types/custom-fields.type.d.ts +19 -12
  149. package/dist/esm/shared-lib/types/custom-fields.type.d.ts.map +1 -1
  150. package/dist/esm/shared-lib/types/custom-fields.type.js +10 -3
  151. package/dist/esm/shared-lib/types/custom-fields.type.js.map +1 -1
  152. package/dist/esm/shared-lib/types/data-source.type.d.ts +90 -0
  153. package/dist/esm/shared-lib/types/data-source.type.d.ts.map +1 -0
  154. package/dist/esm/shared-lib/types/data-source.type.js +70 -0
  155. package/dist/esm/shared-lib/types/data-source.type.js.map +1 -0
  156. package/dist/esm/shared-lib/types/index.d.ts +2 -0
  157. package/dist/esm/shared-lib/types/index.d.ts.map +1 -1
  158. package/dist/esm/shared-lib/types/index.js +2 -0
  159. package/dist/esm/shared-lib/types/index.js.map +1 -1
  160. package/dist/esm/shared-lib/types/redemption-include-relation.type.d.ts +6 -4
  161. package/dist/esm/shared-lib/types/redemption-include-relation.type.d.ts.map +1 -1
  162. package/dist/esm/shared-lib/types/redemption-include-relation.type.js +2 -1
  163. package/dist/esm/shared-lib/types/redemption-include-relation.type.js.map +1 -1
  164. package/dist/esm/shared-lib/validation/field-validation.d.ts +2 -12
  165. package/dist/esm/shared-lib/validation/field-validation.d.ts.map +1 -1
  166. package/dist/esm/shared-lib/validation/field-validation.js +26 -77
  167. package/dist/esm/shared-lib/validation/field-validation.js.map +1 -1
  168. package/dist/esm/shared-lib/validation/validation.types.d.ts +13 -46
  169. package/dist/esm/shared-lib/validation/validation.types.d.ts.map +1 -1
  170. package/dist/esm/shared-lib/validation/validation.types.js.map +1 -1
  171. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"custom-fields.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/custom-fields.type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"custom-fields.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/custom-fields.type.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Unified data source tracking for analytics across all entities.
3
+ *
4
+ * Use this type to track the origin/channel of data for:
5
+ * - Users (registration source)
6
+ * - Claims (how the claim was initiated)
7
+ * - Redeems (redemption channel)
8
+ * - Bookings (booking source)
9
+ * - Purchases (transaction origin)
10
+ *
11
+ * ## HTTP Headers for SDK/API
12
+ *
13
+ * | Header | Purpose | Examples |
14
+ * |---------------------|----------------------------|-------------------------------------------------------|
15
+ * | `x-source-channel` | How the request arrived | `web`, `mobile`, `api`, `admin`, `webhook`, `import` |
16
+ * | `x-source-medium` | Marketing channel type | `email`, `referral`, `direct`, `organic`, `paid` |
17
+ * | `x-source-campaign` | Campaign ID for attribution| `summer_promo_2026`, `welcome_series`, `partner_launch`|
18
+ * | `x-source` | Traffic origin reference | `google`, `facebook`, `partner_xyz`, `qr_code_lobby` |
19
+ *
20
+ * ## Example Scenarios
21
+ *
22
+ * | Scenario | channel | medium | campaign | source |
23
+ * |-----------------------------|-----------|------------|--------------|--------------|
24
+ * | User clicks email link | `web` | `email` | `summer_promo`| `mailchimp` |
25
+ * | Mobile app registration | `mobile` | `app` | - | - |
26
+ * | Partner API integration | `api` | `affiliate`| - | `partner_xyz`|
27
+ * | QR code scan in hotel | `mobile` | `referral` | `lobby_qr` | `qr_code` |
28
+ * | Admin creates user | `admin` | - | - | - |
29
+ * | Webhook from Stripe | `webhook` | - | - | `stripe` |
30
+ *
31
+ * @example
32
+ * // Simple usage - just channel
33
+ * const source: DataSource = { channel: 'web' };
34
+ *
35
+ * // Full attribution tracking
36
+ * const source: DataSource = {
37
+ * channel: 'web',
38
+ * medium: 'email',
39
+ * campaign: 'summer_promo_2026',
40
+ * source: 'mailchimp',
41
+ * referrer: 'https://email.example.com/campaign/123'
42
+ * };
43
+ */
44
+ /**
45
+ * Primary ingestion channels for data source tracking.
46
+ */
47
+ export declare const DATA_SOURCE_CHANNELS: readonly ["web", "mobile", "api", "admin", "system", "import", "webhook", "sync", "migration"];
48
+ export type DataSourceChannel = typeof DATA_SOURCE_CHANNELS[number];
49
+ /**
50
+ * Unified data source tracking interface.
51
+ *
52
+ * Provides both simple channel categorization and optional
53
+ * detailed attribution fields for analytics.
54
+ */
55
+ export interface DataSource {
56
+ /**
57
+ * Primary ingestion channel.
58
+ * Required field for basic source categorization.
59
+ */
60
+ channel: DataSourceChannel;
61
+ /**
62
+ * Marketing medium for attribution.
63
+ * Examples: 'email', 'referral', 'direct', 'organic', 'paid', 'social', 'affiliate'
64
+ */
65
+ medium?: string;
66
+ /**
67
+ * Campaign identifier for tracking.
68
+ * Examples: 'summer_promo_2026', 'welcome_series', 'partner_launch'
69
+ */
70
+ campaign?: string;
71
+ /**
72
+ * Traffic source reference.
73
+ * Examples: 'google', 'facebook', 'partner_xyz', 'newsletter'
74
+ */
75
+ source?: string;
76
+ /**
77
+ * Original referrer URL.
78
+ * Full URL of the referring page.
79
+ */
80
+ referrer?: string;
81
+ }
82
+ /**
83
+ * Type guard to check if a value is a valid DataSourceChannel.
84
+ */
85
+ export declare function isDataSourceChannel(value: unknown): value is DataSourceChannel;
86
+ /**
87
+ * Default data source for manual/admin operations.
88
+ */
89
+ export declare const DEFAULT_DATA_SOURCE: DataSource;
90
+ //# sourceMappingURL=data-source.type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-source.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/data-source.type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,gGAUvB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,OAAO,EAAE,iBAAiB,CAAC;IAE3B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,iBAAiB,CAE9E;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAEjC,CAAC"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Unified data source tracking for analytics across all entities.
3
+ *
4
+ * Use this type to track the origin/channel of data for:
5
+ * - Users (registration source)
6
+ * - Claims (how the claim was initiated)
7
+ * - Redeems (redemption channel)
8
+ * - Bookings (booking source)
9
+ * - Purchases (transaction origin)
10
+ *
11
+ * ## HTTP Headers for SDK/API
12
+ *
13
+ * | Header | Purpose | Examples |
14
+ * |---------------------|----------------------------|-------------------------------------------------------|
15
+ * | `x-source-channel` | How the request arrived | `web`, `mobile`, `api`, `admin`, `webhook`, `import` |
16
+ * | `x-source-medium` | Marketing channel type | `email`, `referral`, `direct`, `organic`, `paid` |
17
+ * | `x-source-campaign` | Campaign ID for attribution| `summer_promo_2026`, `welcome_series`, `partner_launch`|
18
+ * | `x-source` | Traffic origin reference | `google`, `facebook`, `partner_xyz`, `qr_code_lobby` |
19
+ *
20
+ * ## Example Scenarios
21
+ *
22
+ * | Scenario | channel | medium | campaign | source |
23
+ * |-----------------------------|-----------|------------|--------------|--------------|
24
+ * | User clicks email link | `web` | `email` | `summer_promo`| `mailchimp` |
25
+ * | Mobile app registration | `mobile` | `app` | - | - |
26
+ * | Partner API integration | `api` | `affiliate`| - | `partner_xyz`|
27
+ * | QR code scan in hotel | `mobile` | `referral` | `lobby_qr` | `qr_code` |
28
+ * | Admin creates user | `admin` | - | - | - |
29
+ * | Webhook from Stripe | `webhook` | - | - | `stripe` |
30
+ *
31
+ * @example
32
+ * // Simple usage - just channel
33
+ * const source: DataSource = { channel: 'web' };
34
+ *
35
+ * // Full attribution tracking
36
+ * const source: DataSource = {
37
+ * channel: 'web',
38
+ * medium: 'email',
39
+ * campaign: 'summer_promo_2026',
40
+ * source: 'mailchimp',
41
+ * referrer: 'https://email.example.com/campaign/123'
42
+ * };
43
+ */
44
+ /**
45
+ * Primary ingestion channels for data source tracking.
46
+ */
47
+ export const DATA_SOURCE_CHANNELS = [
48
+ 'web', // Web application/browser
49
+ 'mobile', // Mobile app (iOS/Android)
50
+ 'api', // Direct API integration
51
+ 'admin', // Admin panel/back-office
52
+ 'system', // System-generated (automated)
53
+ 'import', // Bulk import/CSV upload
54
+ 'webhook', // External webhook callback
55
+ 'sync', // Synchronization from external system
56
+ 'migration', // Data migration
57
+ ];
58
+ /**
59
+ * Type guard to check if a value is a valid DataSourceChannel.
60
+ */
61
+ export function isDataSourceChannel(value) {
62
+ return typeof value === 'string' && DATA_SOURCE_CHANNELS.includes(value);
63
+ }
64
+ /**
65
+ * Default data source for manual/admin operations.
66
+ */
67
+ export const DEFAULT_DATA_SOURCE = {
68
+ channel: 'admin',
69
+ };
70
+ //# sourceMappingURL=data-source.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-source.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/data-source.type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,KAAK,EAAQ,0BAA0B;IACvC,QAAQ,EAAK,2BAA2B;IACxC,KAAK,EAAQ,yBAAyB;IACtC,OAAO,EAAM,0BAA0B;IACvC,QAAQ,EAAK,+BAA+B;IAC5C,QAAQ,EAAK,yBAAyB;IACtC,SAAS,EAAI,4BAA4B;IACzC,MAAM,EAAO,uCAAuC;IACpD,WAAW,EAAE,iBAAiB;CACtB,CAAC;AA0CX;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAChD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,oBAAoB,CAAC,QAAQ,CAAC,KAA0B,CAAC,CAAC;AAChG,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAe;IAC7C,OAAO,EAAE,OAAO;CACjB,CAAC"}
@@ -19,4 +19,6 @@ export * from './business-membership-include-relation.type';
19
19
  export * from './user-include-relation.type';
20
20
  export * from './token-metadata-include-relation.type';
21
21
  export * from './filter-options.type';
22
+ export * from './booking.type';
23
+ export * from './data-source.type';
22
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC"}
@@ -20,4 +20,6 @@ export * from './business-membership-include-relation.type.js';
20
20
  export * from './user-include-relation.type.js';
21
21
  export * from './token-metadata-include-relation.type.js';
22
22
  export * from './filter-options.type.js';
23
+ export * from './booking.type.js';
24
+ export * from './data-source.type.js';
23
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/index.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/index.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC"}
@@ -3,15 +3,17 @@
3
3
  *
4
4
  * Follows JSON:API sideloading convention
5
5
  *
6
- * Usage: GET /redemptions?include=redeemCount,ownerBusiness,requiredUserFieldDefinitions
6
+ * Usage: GET /redemptions?include=redeemCount,ownerBusiness,userInfo,booking
7
7
  *
8
8
  * - redeemCount: Include total number of redeems for the redemption
9
9
  * - ownerBusiness: Include the owner business entity (when ownerBusinessId is set)
10
- * - requiredUserFieldDefinitions: Include full field definitions for requiredUserFields.
10
+ * - userInfo: Include user info validation with field definitions and isValid flag.
11
11
  * When user is authenticated, each definition includes `isMissing: boolean` to indicate
12
- * if the user lacks that field. Filter by `isMissing: true` to check eligibility.
12
+ * if the user lacks that field. `isValid` summarizes if all required fields are satisfied.
13
+ * - booking: Include booking validation status. When user is authenticated and
14
+ * redemption has booking requirement, includes `isValid` flag and matching `data`.
13
15
  */
14
- export type RedemptionIncludeRelation = 'redeemCount' | 'ownerBusiness' | 'requiredUserFieldDefinitions';
16
+ export type RedemptionIncludeRelation = 'redeemCount' | 'ownerBusiness' | 'userInfo' | 'booking';
15
17
  /**
16
18
  * Array of all valid redemption include relations
17
19
  * Used for runtime validation
@@ -1 +1 @@
1
- {"version":3,"file":"redemption-include-relation.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/redemption-include-relation.type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,yBAAyB,GAAG,aAAa,GAAG,eAAe,GAAG,8BAA8B,CAAC;AAEzG;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,yBAAyB,EAIjE,CAAC;AAEX;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,yBAAyB,CAE3F"}
1
+ {"version":3,"file":"redemption-include-relation.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/redemption-include-relation.type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,yBAAyB,GAAG,aAAa,GAAG,eAAe,GAAG,UAAU,GAAG,SAAS,CAAC;AAEjG;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,yBAAyB,EAKjE,CAAC;AAEX;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,yBAAyB,CAE3F"}
@@ -5,7 +5,8 @@
5
5
  export const VALID_REDEMPTION_RELATIONS = [
6
6
  'redeemCount',
7
7
  'ownerBusiness',
8
- 'requiredUserFieldDefinitions'
8
+ 'userInfo',
9
+ 'booking'
9
10
  ];
10
11
  /**
11
12
  * Type guard to validate redemption include relation at runtime
@@ -1 +1 @@
1
- {"version":3,"file":"redemption-include-relation.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/redemption-include-relation.type.ts"],"names":[],"mappings":"AAeA;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAyC;IAC9E,aAAa;IACb,eAAe;IACf,8BAA8B;CACtB,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa;IACrD,OAAO,0BAA0B,CAAC,QAAQ,CAAC,KAAkC,CAAC,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"redemption-include-relation.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/redemption-include-relation.type.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAyC;IAC9E,aAAa;IACb,eAAe;IACf,UAAU;IACV,SAAS;CACD,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa;IACrD,OAAO,0BAA0B,CAAC,QAAQ,CAAC,KAAkC,CAAC,CAAC;AACjF,CAAC"}
@@ -2,8 +2,8 @@
2
2
  * Field Validation Functions
3
3
  * Shared between backend and frontend for consistent validation.
4
4
  */
5
- import type { ComparisonOperator, FieldComparison, FieldDefinition, FieldType, FieldValidationRules, ObjectFieldSchema, ValidationErrorDetail } from './validation.types';
6
- export type { ComparisonOperator, FieldComparison, FieldComparisonToField, FieldComparisonToValue, FieldDefinition, FieldType, FieldValidationRules, ObjectFieldSchema, ValidationErrorDetail, } from './validation.types';
5
+ import type { ComparisonOperator, FieldComparison, FieldDefinition, FieldType, FieldValidationRules, ValidationErrorDetail } from './validation.types';
6
+ export type { ComparisonOperator, FieldComparison, FieldComparisonToField, FieldComparisonToValue, FieldDefinition, FieldType, FieldValidationRules, ValidationErrorDetail, } from './validation.types';
7
7
  export { operatorText } from './validation.types';
8
8
  export { isValidEmail, isValidUrl, isValidWalletAddress, isValidNonEmptyString, isValidUuid, EMAIL_REGEX, EMAIL_MAX_LENGTH, URL_REGEX, WALLET_ADDRESS_REGEX, UUID_REGEX, } from './validators';
9
9
  /**
@@ -23,16 +23,6 @@ export declare const validateFieldValue: (value: unknown, rules: FieldValidation
23
23
  * Supports comparing to another field OR a literal value.
24
24
  */
25
25
  export declare const validateFieldComparisons: (fieldKey: string, value: unknown, comparisons: FieldComparison[] | undefined, allData: Record<string, unknown>, fieldType: FieldType) => ValidationErrorDetail[];
26
- /**
27
- * Validate each item in an object array against the object schema.
28
- * Checks required properties, type validation, and validates each property.
29
- *
30
- * @param fieldKey - Parent field key (for error reporting)
31
- * @param items - Array of objects to validate
32
- * @param schema - Schema defining expected properties
33
- * @returns Array of validation errors with item index in field path (e.g., "contacts[0].phone")
34
- */
35
- export declare const validateObjectArrayItems: (fieldKey: string, items: unknown[], schema: ObjectFieldSchema[]) => ValidationErrorDetail[];
36
26
  /**
37
27
  * Validate all fields in a data object against their definitions.
38
28
  * Runs both single-field and comparison validations.
@@ -1 +1 @@
1
- {"version":3,"file":"field-validation.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/validation/field-validation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EAEf,eAAe,EACf,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAK5B,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EACL,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,oBAAoB,EACpB,UAAU,GACX,MAAM,cAAc,CAAC;AAMtB;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,MAAM,GAAG,IAAI,GAAG,MAAM,EAC5D,GAAG,CAAC,EACJ,GAAG,CAAC,EACJ,IAAI,kBAAkB,KACrB,OASF,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,eAAe,GAAI,IAAI,kBAAkB,KAAG,MAA0B,CAAC;AAMpF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,OAAO,EACd,OAAO,oBAAoB,GAAG,IAAI,GAAG,SAAS,EAC9C,WAAW,SAAS,KACnB,qBAAqB,GAAG,IA6G1B,CAAC;AAUF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,MAAM,EAChB,OAAO,OAAO,EACd,aAAa,eAAe,EAAE,GAAG,SAAS,EAC1C,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,WAAW,SAAS,KACnB,qBAAqB,EA6DvB,CAAC;AAMF;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,MAAM,EAChB,OAAO,OAAO,EAAE,EAChB,QAAQ,iBAAiB,EAAE,KAC1B,qBAAqB,EAgEvB,CAAC;AAMF;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,aAAa,eAAe,EAAE,KAC7B,qBAAqB,EAkCvB,CAAC"}
1
+ {"version":3,"file":"field-validation.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/validation/field-validation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EAEf,eAAe,EACf,SAAS,EACT,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAK5B,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,SAAS,EACT,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EACL,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,oBAAoB,EACpB,UAAU,GACX,MAAM,cAAc,CAAC;AAMtB;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,MAAM,GAAG,IAAI,GAAG,MAAM,EAC5D,GAAG,CAAC,EACJ,GAAG,CAAC,EACJ,IAAI,kBAAkB,KACrB,OASF,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,eAAe,GAAI,IAAI,kBAAkB,KAAG,MAA0B,CAAC;AAMpF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,OAAO,EACd,OAAO,oBAAoB,GAAG,IAAI,GAAG,SAAS,EAC9C,WAAW,SAAS,KACnB,qBAAqB,GAAG,IAsI1B,CAAC;AAUF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,MAAM,EAChB,OAAO,OAAO,EACd,aAAa,eAAe,EAAE,GAAG,SAAS,EAC1C,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,WAAW,SAAS,KACnB,qBAAqB,EA6DvB,CAAC;AAMF;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,aAAa,eAAe,EAAE,KAC7B,qBAAqB,EA4BvB,CAAC"}
@@ -114,15 +114,38 @@ export const validateFieldValue = (value, rules, fieldType) => {
114
114
  }
115
115
  }
116
116
  break;
117
- case 'objectArray':
117
+ case 'phone':
118
+ // Basic phone validation - allows digits, spaces, dashes, parentheses, plus
119
+ const phoneRegex = /^[\d\s\-\(\)\+]+$/;
120
+ if (!phoneRegex.test(stringValue)) {
121
+ return { field: '', message: 'Invalid phone number format', code: 'phone' };
122
+ }
123
+ if (rules.minLength && stringValue.replace(/\D/g, '').length < rules.minLength) {
124
+ return { field: '', message: `Phone number too short`, code: 'minLength' };
125
+ }
126
+ if (rules.maxLength && stringValue.length > rules.maxLength) {
127
+ return { field: '', message: `Maximum ${rules.maxLength} characters allowed`, code: 'maxLength' };
128
+ }
129
+ break;
130
+ case 'select':
131
+ // Single selection - just validate it's a string (option validation done separately)
132
+ if (typeof value !== 'string') {
133
+ return { field: '', message: 'Must be a string', code: 'type' };
134
+ }
135
+ break;
136
+ case 'multiselect':
118
137
  if (!Array.isArray(value)) {
119
138
  return { field: '', message: 'Must be an array', code: 'type' };
120
139
  }
121
140
  if (rules.minItems !== undefined && value.length < rules.minItems) {
122
- return { field: '', message: `Minimum ${rules.minItems} items required`, code: 'minItems' };
141
+ return { field: '', message: `Select at least ${rules.minItems} options`, code: 'minItems' };
123
142
  }
124
143
  if (rules.maxItems !== undefined && value.length > rules.maxItems) {
125
- return { field: '', message: `Maximum ${rules.maxItems} items allowed`, code: 'maxItems' };
144
+ return { field: '', message: `Select at most ${rules.maxItems} options`, code: 'maxItems' };
145
+ }
146
+ // Validate each item is a string
147
+ if (!value.every(item => typeof item === 'string')) {
148
+ return { field: '', message: 'All selections must be strings', code: 'type' };
126
149
  }
127
150
  break;
128
151
  }
@@ -194,75 +217,6 @@ export const validateFieldComparisons = (fieldKey, value, comparisons, allData,
194
217
  return errors;
195
218
  };
196
219
  // ============================================================================
197
- // Object Array Item Validation
198
- // ============================================================================
199
- /**
200
- * Validate each item in an object array against the object schema.
201
- * Checks required properties, type validation, and validates each property.
202
- *
203
- * @param fieldKey - Parent field key (for error reporting)
204
- * @param items - Array of objects to validate
205
- * @param schema - Schema defining expected properties
206
- * @returns Array of validation errors with item index in field path (e.g., "contacts[0].phone")
207
- */
208
- export const validateObjectArrayItems = (fieldKey, items, schema) => {
209
- const errors = [];
210
- if (!Array.isArray(items))
211
- return errors;
212
- items.forEach((item, index) => {
213
- if (typeof item !== 'object' || item === null) {
214
- errors.push({
215
- field: `${fieldKey}[${index}]`,
216
- code: 'type',
217
- message: 'Item must be an object',
218
- });
219
- return;
220
- }
221
- const obj = item;
222
- // Check each schema property
223
- for (const prop of schema) {
224
- const value = obj[prop.key];
225
- const propPath = `${fieldKey}[${index}].${prop.key}`;
226
- const isEmpty = value === null || value === undefined || value === '';
227
- // Required check for nested properties (ObjectFieldSchema.required)
228
- if (prop.required && isEmpty) {
229
- errors.push({
230
- field: propPath,
231
- code: 'required',
232
- message: `${prop.label} is required`,
233
- });
234
- continue;
235
- }
236
- if (isEmpty)
237
- continue;
238
- // Convert ObjectFieldSchema inline rules to FieldValidationRules
239
- const rules = {
240
- min: prop.min,
241
- max: prop.max,
242
- minLength: prop.minLength,
243
- maxLength: prop.maxLength,
244
- pattern: prop.pattern,
245
- patternMessage: prop.patternMessage,
246
- };
247
- // Validate the property value
248
- const error = validateFieldValue(value, rules, prop.fieldType);
249
- if (error) {
250
- errors.push({ ...error, field: propPath });
251
- }
252
- }
253
- // Cross-property comparisons within the same object item
254
- // e.g., checkOutDate > checkInDate within each reservation
255
- for (const prop of schema) {
256
- const value = obj[prop.key];
257
- if (value === null || value === undefined || value === '')
258
- continue;
259
- // ObjectFieldSchema doesn't currently have comparisons, but we could
260
- // validate date fields against 'now' using minDate/maxDate if we extend the schema
261
- }
262
- });
263
- return errors;
264
- };
265
- // ============================================================================
266
220
  // Full Data Validation
267
221
  // ============================================================================
268
222
  /**
@@ -290,11 +244,6 @@ export const validateAllFields = (data, definitions) => {
290
244
  const comparisonErrors = validateFieldComparisons(key, value, def.validation.comparisons, data, def.fieldType);
291
245
  errors.push(...comparisonErrors);
292
246
  }
293
- // Object array item validation (validate each item's properties against objectSchema)
294
- if (def.fieldType === 'objectArray' && def.objectSchema && Array.isArray(value)) {
295
- const itemErrors = validateObjectArrayItems(key, value, def.objectSchema);
296
- errors.push(...itemErrors);
297
- }
298
247
  }
299
248
  return errors;
300
249
  };
@@ -1 +1 @@
1
- {"version":3,"file":"field-validation.js","sourceRoot":"","sources":["../../../../src/shared-lib/validation/field-validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-validation.js","sourceRoot":"","sources":["../../../../src/shared-lib/validation/field-validation.ts"],"names":[],"mappings":"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"}
@@ -36,63 +36,30 @@ export interface FieldValidationRules {
36
36
  maxDate?: string;
37
37
  /** Cross-field / literal comparison rules */
38
38
  comparisons?: FieldComparison[];
39
- /** For objectArray: append new items to existing array instead of replacing */
40
- appendOnly?: boolean;
41
- /** For objectArray: minimum number of items */
39
+ /** For multiselect: minimum number of selections */
42
40
  minItems?: number;
43
- /** For objectArray: maximum number of items */
41
+ /** For multiselect: maximum number of selections */
44
42
  maxItems?: number;
45
43
  }
46
- export type FieldType = 'text' | 'number' | 'date' | 'select' | 'boolean' | 'url' | 'email' | 'objectArray';
47
44
  /**
48
- * Schema for a single field within an objectArray item.
49
- * Defines structure of objects in the array.
50
- *
51
- * Example:
52
- * ```
53
- * {
54
- * key: 'guests',
55
- * fieldType: 'objectArray',
56
- * objectSchema: [
57
- * { key: 'name', label: 'Name', fieldType: 'text', required: true },
58
- * { key: 'email', label: 'Email', fieldType: 'email' },
59
- * { key: 'age', label: 'Age', fieldType: 'number', min: 0, max: 120 }
60
- * ]
61
- * }
62
- * ```
45
+ * Supported field types for custom fields.
46
+ * - text: Free-form text input
47
+ * - email: Email address with format validation
48
+ * - phone: Phone number
49
+ * - number: Numeric value
50
+ * - date: Date value (ISO format)
51
+ * - boolean: True/false toggle
52
+ * - url: URL with format validation
53
+ * - select: Single selection from options
54
+ * - multiselect: Multiple selections from options (array of strings)
63
55
  */
64
- export interface ObjectFieldSchema {
65
- /** Field key within the object */
66
- key: string;
67
- /** Display label */
68
- label: string;
69
- /** Field type (cannot be nested objectArray) */
70
- fieldType: Exclude<FieldType, 'objectArray'>;
71
- /** Is this field required within each object */
72
- required?: boolean;
73
- /** Description/help text */
74
- description?: string;
75
- /** For select type: static options */
76
- selectOptions?: {
77
- value: string;
78
- label: string;
79
- }[];
80
- /** Validation rules */
81
- min?: number;
82
- max?: number;
83
- minLength?: number;
84
- maxLength?: number;
85
- pattern?: string;
86
- patternMessage?: string;
87
- }
56
+ export type FieldType = 'text' | 'email' | 'phone' | 'number' | 'date' | 'boolean' | 'url' | 'select' | 'multiselect';
88
57
  export type { ValidationErrorDetail } from '../errors/base/error-classification-enums';
89
58
  export interface FieldDefinition {
90
59
  key: string;
91
60
  fieldType: FieldType;
92
61
  label: string;
93
62
  validation?: FieldValidationRules | null;
94
- /** Schema for objectArray field types */
95
- objectSchema?: ObjectFieldSchema[] | null;
96
63
  }
97
64
  export declare const operatorText: Record<ComparisonOperator, string>;
98
65
  //# sourceMappingURL=validation.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.types.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/validation/validation.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,MAAM,kBAAkB,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEvE;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACjC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,kEAAkE;AAClE,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,sBAAsB,CAAC;AAM9E,MAAM,WAAW,oBAAoB;IAGnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAGhC,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,aAAa,CAAC;AAM5G;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAC7C,gDAAgD;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,aAAa,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnD,uBAAuB;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAMD,YAAY,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAEvF,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACzC,yCAAyC;IACzC,YAAY,CAAC,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;CAC3C;AAMD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAO3D,CAAC"}
1
+ {"version":3,"file":"validation.types.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/validation/validation.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,MAAM,kBAAkB,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEvE;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACjC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,kEAAkE;AAClE,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,sBAAsB,CAAC;AAM9E,MAAM,WAAW,oBAAoB;IAGnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAEhC,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,aAAa,CAAC;AAMtH,YAAY,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAEvF,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CAC1C;AAMD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAO3D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validation.types.js","sourceRoot":"","sources":["../../../../src/shared-lib/validation/validation.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAwHH,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,YAAY,GAAuC;IAC9D,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,uBAAuB;IAC7B,GAAG,EAAE,cAAc;IACnB,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,cAAc;CACrB,CAAC"}
1
+ {"version":3,"file":"validation.types.js","sourceRoot":"","sources":["../../../../src/shared-lib/validation/validation.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAoFH,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,YAAY,GAAuC;IAC9D,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,uBAAuB;IAC7B,GAAG,EAAE,cAAc;IACnB,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,cAAc;CACrB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@explorins/pers-shared",
3
- "version": "2.1.166",
3
+ "version": "2.1.168",
4
4
  "scripts": {
5
5
  "clean": "find dist -type f -delete 2>/dev/null || true",
6
6
  "build:esm": "tsc -p tsconfig.esm.json && node scripts/add-js-extensions.js",