@explorins/pers-shared 2.1.168 → 2.1.170

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 (49) hide show
  1. package/dist/cjs/shared-lib/dto/booking/booking.dto.d.ts +11 -34
  2. package/dist/cjs/shared-lib/dto/booking/booking.dto.d.ts.map +1 -1
  3. package/dist/cjs/shared-lib/dto/booking/booking.dto.js +46 -191
  4. package/dist/cjs/shared-lib/dto/booking/booking.dto.js.map +1 -1
  5. package/dist/cjs/shared-lib/dto/data-source.dto.d.ts +13 -0
  6. package/dist/cjs/shared-lib/dto/data-source.dto.d.ts.map +1 -0
  7. package/dist/cjs/shared-lib/dto/data-source.dto.js +59 -0
  8. package/dist/cjs/shared-lib/dto/data-source.dto.js.map +1 -0
  9. package/dist/cjs/shared-lib/dto/index.d.ts +1 -0
  10. package/dist/cjs/shared-lib/dto/index.d.ts.map +1 -1
  11. package/dist/cjs/shared-lib/dto/index.js +2 -0
  12. package/dist/cjs/shared-lib/dto/index.js.map +1 -1
  13. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.d.ts +3 -2
  14. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.d.ts.map +1 -1
  15. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.js +13 -3
  16. package/dist/cjs/shared-lib/dto/redemption/redemption.dto.js.map +1 -1
  17. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.d.ts +3 -0
  18. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.d.ts.map +1 -1
  19. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.js +23 -0
  20. package/dist/cjs/shared-lib/dto/redemption/redemptionType.dto.js.map +1 -1
  21. package/dist/cjs/shared-lib/types/redemption-include-relation.type.d.ts +3 -3
  22. package/dist/cjs/shared-lib/types/redemption-include-relation.type.d.ts.map +1 -1
  23. package/dist/cjs/shared-lib/types/redemption-include-relation.type.js +1 -1
  24. package/dist/cjs/shared-lib/types/redemption-include-relation.type.js.map +1 -1
  25. package/dist/esm/shared-lib/dto/booking/booking.dto.d.ts +11 -34
  26. package/dist/esm/shared-lib/dto/booking/booking.dto.d.ts.map +1 -1
  27. package/dist/esm/shared-lib/dto/booking/booking.dto.js +48 -168
  28. package/dist/esm/shared-lib/dto/booking/booking.dto.js.map +1 -1
  29. package/dist/esm/shared-lib/dto/data-source.dto.d.ts +13 -0
  30. package/dist/esm/shared-lib/dto/data-source.dto.d.ts.map +1 -0
  31. package/dist/esm/shared-lib/dto/data-source.dto.js +47 -0
  32. package/dist/esm/shared-lib/dto/data-source.dto.js.map +1 -0
  33. package/dist/esm/shared-lib/dto/index.d.ts +1 -0
  34. package/dist/esm/shared-lib/dto/index.d.ts.map +1 -1
  35. package/dist/esm/shared-lib/dto/index.js +2 -0
  36. package/dist/esm/shared-lib/dto/index.js.map +1 -1
  37. package/dist/esm/shared-lib/dto/redemption/redemption.dto.d.ts +3 -2
  38. package/dist/esm/shared-lib/dto/redemption/redemption.dto.d.ts.map +1 -1
  39. package/dist/esm/shared-lib/dto/redemption/redemption.dto.js +12 -3
  40. package/dist/esm/shared-lib/dto/redemption/redemption.dto.js.map +1 -1
  41. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.d.ts +3 -0
  42. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.d.ts.map +1 -1
  43. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.js +22 -1
  44. package/dist/esm/shared-lib/dto/redemption/redemptionType.dto.js.map +1 -1
  45. package/dist/esm/shared-lib/types/redemption-include-relation.type.d.ts +3 -3
  46. package/dist/esm/shared-lib/types/redemption-include-relation.type.d.ts.map +1 -1
  47. package/dist/esm/shared-lib/types/redemption-include-relation.type.js +1 -1
  48. package/dist/esm/shared-lib/types/redemption-include-relation.type.js.map +1 -1
  49. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"redemptionType.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/redemption/redemptionType.dto.ts"],"names":[],"mappings":"AAKA,qBAAa,8BAA8B;IAMvC,IAAI,EAAE,MAAM,CAAM;IAOlB,WAAW,CAAC,EAAE,MAAM,CAAC;IAOrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAUlB,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;CACrC;AACD,qBAAa,iBAAkB,SAAQ,8BAA8B;IAIjE,EAAE,EAAE,MAAM,CAAK;IAOf,sBAAsB,EAAE,MAAM,EAAE,CAAM;CACzC"}
1
+ {"version":3,"file":"redemptionType.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/redemption/redemptionType.dto.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGvE,qBAAa,8BAA8B;IAMvC,IAAI,EAAE,MAAM,CAAM;IAOlB,WAAW,CAAC,EAAE,MAAM,CAAC;IAOrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAUlB,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAWlC,kBAAkB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CACtD;AACD,qBAAa,iBAAkB,SAAQ,8BAA8B;IAIjE,EAAE,EAAE,MAAM,CAAK;IAOf,sBAAsB,EAAE,MAAM,EAAE,CAAM;IAQtC,kBAAkB,EAAE,sBAAsB,GAAG,IAAI,CAAQ;CAC5D"}
@@ -18,6 +18,7 @@ class RedemptionTypeCreateRequestDTO {
18
18
  description;
19
19
  imageUrl;
20
20
  baseRequiredUserFields;
21
+ bookingRequirement;
21
22
  }
22
23
  exports.RedemptionTypeCreateRequestDTO = RedemptionTypeCreateRequestDTO;
23
24
  __decorate([
@@ -55,9 +56,22 @@ __decorate([
55
56
  (0, class_validator_1.IsString)({ each: true }),
56
57
  __metadata("design:type", Array)
57
58
  ], RedemptionTypeCreateRequestDTO.prototype, "baseRequiredUserFields", void 0);
59
+ __decorate([
60
+ (0, swagger_1.ApiPropertyOptional)({
61
+ description: 'Default booking requirement for all redemptions of this type. Individual redemptions can override via specificBookingRequirement.',
62
+ type: String,
63
+ enum: ['active', 'future', 'past', 'active_future', 'any'],
64
+ nullable: true
65
+ }),
66
+ (0, decorators_1.OptionalStrip)(),
67
+ (0, class_validator_1.IsEnum)(['active', 'future', 'past', 'active_future', 'any']),
68
+ (0, class_validator_1.IsOptional)(),
69
+ __metadata("design:type", Object)
70
+ ], RedemptionTypeCreateRequestDTO.prototype, "bookingRequirement", void 0);
58
71
  class RedemptionTypeDTO extends RedemptionTypeCreateRequestDTO {
59
72
  id = 0;
60
73
  baseRequiredUserFields = [];
74
+ bookingRequirement = null;
61
75
  }
62
76
  exports.RedemptionTypeDTO = RedemptionTypeDTO;
63
77
  __decorate([
@@ -74,4 +88,13 @@ __decorate([
74
88
  }),
75
89
  __metadata("design:type", Array)
76
90
  ], RedemptionTypeDTO.prototype, "baseRequiredUserFields", void 0);
91
+ __decorate([
92
+ (0, swagger_1.ApiPropertyOptional)({
93
+ description: 'Default booking requirement for all redemptions of this type. Individual redemptions can override via specificBookingRequirement.',
94
+ type: String,
95
+ enum: ['active', 'future', 'past', 'active_future', 'any'],
96
+ nullable: true
97
+ }),
98
+ __metadata("design:type", Object)
99
+ ], RedemptionTypeDTO.prototype, "bookingRequirement", void 0);
77
100
  //# sourceMappingURL=redemptionType.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"redemptionType.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/redemption/redemptionType.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,qDAAuE;AACvE,iDAAiD;AAGjD,MAAa,8BAA8B;IAMvC,IAAI,GAAW,EAAE,CAAC;IAOlB,WAAW,CAAU;IAOrB,QAAQ,CAAU;IAUlB,sBAAsB,CAAY;CACrC;AA/BD,wEA+BC;AAzBG;IALC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,QAAQ;QACrB,WAAW,EAAE,sBAAsB;KACtC,CAAC;IACL,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;4DACO;AAOlB;IALC,IAAA,6BAAmB,EAAC,EAAE,IAAI,EAAE,QAAQ;QAC7B,WAAW,EAAE,6BAA6B;KAC7C,CAAC;IACL,IAAA,0BAAa,GAAE;IACf,IAAA,0BAAQ,GAAE;;mEACU;AAOrB;IALC,IAAA,6BAAmB,EAAC,EAAE,IAAI,EAAE,QAAQ;QAC7B,WAAW,EAAE,2BAA2B;KAC3C,CAAC;IACL,IAAA,0BAAa,GAAE;IACf,IAAA,uBAAK,GAAE;;gEACU;AAUlB;IARC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,kJAAkJ;QAC/J,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,EAAE;KACd,CAAC;IACD,IAAA,0BAAa,GAAE;IACf,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;8EACS;AAEtC,MAAa,iBAAkB,SAAQ,8BAA8B;IAIjE,EAAE,GAAW,CAAC,CAAC;IAOf,sBAAsB,GAAa,EAAE,CAAC;CACzC;AAZD,8CAYC;AARG;IAHC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,oBAAoB;KACpC,CAAC;;6CACa;AAOf;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,kJAAkJ;QAC/J,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,EAAE;KACd,CAAC;;iEACoC"}
1
+ {"version":3,"file":"redemptionType.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/redemption/redemptionType.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,qDAA2F;AAC3F,iDAAiD;AAIjD,MAAa,8BAA8B;IAMvC,IAAI,GAAW,EAAE,CAAC;IAOlB,WAAW,CAAU;IAOrB,QAAQ,CAAU;IAUlB,sBAAsB,CAAY;IAWlC,kBAAkB,CAAiC;CACtD;AA1CD,wEA0CC;AApCG;IALC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,QAAQ;QACrB,WAAW,EAAE,sBAAsB;KACtC,CAAC;IACL,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;4DACO;AAOlB;IALC,IAAA,6BAAmB,EAAC,EAAE,IAAI,EAAE,QAAQ;QAC7B,WAAW,EAAE,6BAA6B;KAC7C,CAAC;IACL,IAAA,0BAAa,GAAE;IACf,IAAA,0BAAQ,GAAE;;mEACU;AAOrB;IALC,IAAA,6BAAmB,EAAC,EAAE,IAAI,EAAE,QAAQ;QAC7B,WAAW,EAAE,2BAA2B;KAC3C,CAAC;IACL,IAAA,0BAAa,GAAE;IACf,IAAA,uBAAK,GAAE;;gEACU;AAUlB;IARC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,kJAAkJ;QAC/J,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,EAAE;KACd,CAAC;IACD,IAAA,0BAAa,GAAE;IACf,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;8EACS;AAWlC;IATC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,mIAAmI;QAChJ,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC;QAC1D,QAAQ,EAAE,IAAI;KACjB,CAAC;IACD,IAAA,0BAAa,GAAE;IACf,IAAA,wBAAM,EAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;IAC5D,IAAA,4BAAU,GAAE;;0EACsC;AAEvD,MAAa,iBAAkB,SAAQ,8BAA8B;IAIjE,EAAE,GAAW,CAAC,CAAC;IAOf,sBAAsB,GAAa,EAAE,CAAC;IAQtC,kBAAkB,GAAkC,IAAI,CAAC;CAC5D;AApBD,8CAoBC;AAhBG;IAHC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,oBAAoB;KACpC,CAAC;;6CACa;AAOf;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,kJAAkJ;QAC/J,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,EAAE;KACd,CAAC;;iEACoC;AAQtC;IANC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,mIAAmI;QAChJ,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC;QAC1D,QAAQ,EAAE,IAAI;KACjB,CAAC;;6DACuD"}
@@ -3,17 +3,17 @@
3
3
  *
4
4
  * Follows JSON:API sideloading convention
5
5
  *
6
- * Usage: GET /redemptions?include=redeemCount,ownerBusiness,userInfo,booking
6
+ * Usage: GET /redemptions?include=redeemCount,ownerBusiness,requiredUserInfo,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
- * - userInfo: Include user info validation with field definitions and isValid flag.
10
+ * - requiredUserInfo: Include required user info validation with field definitions and isValid flag.
11
11
  * When user is authenticated, each definition includes `isMissing: boolean` to indicate
12
12
  * if the user lacks that field. `isValid` summarizes if all required fields are satisfied.
13
13
  * - booking: Include booking validation status. When user is authenticated and
14
14
  * redemption has booking requirement, includes `isValid` flag and matching `data`.
15
15
  */
16
- export type RedemptionIncludeRelation = 'redeemCount' | 'ownerBusiness' | 'userInfo' | 'booking';
16
+ export type RedemptionIncludeRelation = 'redeemCount' | 'ownerBusiness' | 'requiredUserInfo' | 'booking';
17
17
  /**
18
18
  * Array of all valid redemption include relations
19
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;;;;;;;;;;;;;;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"}
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,kBAAkB,GAAG,SAAS,CAAC;AAEzG;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,yBAAyB,EAKjE,CAAC;AAEX;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,yBAAyB,CAE3F"}
@@ -9,7 +9,7 @@ exports.isValidRedemptionRelation = isValidRedemptionRelation;
9
9
  exports.VALID_REDEMPTION_RELATIONS = [
10
10
  'redeemCount',
11
11
  'ownerBusiness',
12
- 'userInfo',
12
+ 'requiredUserInfo',
13
13
  'booking'
14
14
  ];
15
15
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"redemption-include-relation.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/redemption-include-relation.type.ts"],"names":[],"mappings":";;;AAkCA,8DAEC;AAnBD;;;GAGG;AACU,QAAA,0BAA0B,GAAyC;IAC9E,aAAa;IACb,eAAe;IACf,UAAU;IACV,SAAS;CACD,CAAC;AAEX;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAC,KAAa;IACrD,OAAO,kCAA0B,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":";;;AAkCA,8DAEC;AAnBD;;;GAGG;AACU,QAAA,0BAA0B,GAAyC;IAC9E,aAAa;IACb,eAAe;IACf,kBAAkB;IAClB,SAAS;CACD,CAAC;AAEX;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAC,KAAa;IACrD,OAAO,kCAA0B,CAAC,QAAQ,CAAC,KAAkC,CAAC,CAAC;AACjF,CAAC"}
@@ -1,21 +1,13 @@
1
1
  import type { BookingStatus, LocationType } from '../../types/booking.type';
2
- import type { DataSource, DataSourceChannel } from '../../types/data-source.type';
3
- /**
4
- * DTO for DataSource tracking (nested object).
5
- */
6
- export declare class DataSourceDTO {
7
- channel: DataSourceChannel;
8
- medium?: string;
9
- campaign?: string;
10
- source?: string;
11
- referrer?: string;
12
- }
2
+ import type { DataSource } from '../../types/data-source.type';
3
+ export { DataSourceDTO } from '../data-source.dto';
13
4
  /**
14
5
  * Booking DTO for API responses.
6
+ * Contains all fields including computed/system fields.
15
7
  */
16
8
  export declare class BookingDTO {
17
9
  id: string;
18
- userId: string;
10
+ userId?: string;
19
11
  locationName: string;
20
12
  locationType: LocationType;
21
13
  businessId?: string | null;
@@ -30,35 +22,20 @@ export declare class BookingDTO {
30
22
  createdAt: Date;
31
23
  updatedAt: Date;
32
24
  }
25
+ declare const CreateBookingDTO_base: import("@nestjs/common").Type<Omit<BookingDTO, "id" | "createdAt" | "updatedAt" | "status">>;
33
26
  /**
34
27
  * DTO for creating a new booking.
28
+ * Omits system-managed fields (id, status, timestamps).
29
+ * userId is optional (can be inferred from route param).
35
30
  */
36
- export declare class CreateBookingDTO {
37
- userId?: string;
38
- locationName: string;
39
- locationType?: LocationType;
40
- businessId?: string;
41
- checkInDate: string;
42
- checkOutDate: string;
43
- confirmationNumber?: string;
44
- externalRef?: string;
45
- guests?: number;
46
- dataSource?: DataSourceDTO;
47
- notes?: string;
31
+ export declare class CreateBookingDTO extends CreateBookingDTO_base {
48
32
  }
33
+ declare const UpdateBookingDTO_base: import("@nestjs/common").Type<Partial<Omit<BookingDTO, "userId" | "id" | "createdAt" | "updatedAt" | "status">>>;
49
34
  /**
50
35
  * DTO for updating an existing booking.
36
+ * All fields optional. userId cannot be changed after creation.
51
37
  */
52
- export declare class UpdateBookingDTO {
53
- locationName?: string;
54
- locationType?: LocationType;
55
- businessId?: string | null;
56
- checkInDate?: string;
57
- checkOutDate?: string;
58
- confirmationNumber?: string | null;
59
- externalRef?: string | null;
60
- guests?: number;
61
- notes?: string | null;
38
+ export declare class UpdateBookingDTO extends UpdateBookingDTO_base {
62
39
  }
63
40
  /**
64
41
  * Filter options for querying bookings.
@@ -1 +1 @@
1
- {"version":3,"file":"booking.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/booking/booking.dto.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAkB,MAAM,0BAA0B,CAAC;AAC5F,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAwB,MAAM,8BAA8B,CAAC;AAExG;;GAEG;AACH,qBAAa,aAAa;IAGxB,OAAO,EAAE,iBAAiB,CAAW;IAKrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAKlB,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,UAAU;IAErB,EAAE,EAAE,MAAM,CAAM;IAGhB,MAAM,EAAE,MAAM,CAAM;IAGpB,YAAY,EAAE,MAAM,CAAM;IAG1B,YAAY,EAAE,YAAY,CAAc;IAGxC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAM;IAGhC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAM;IAGjC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGnC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,UAAU,CAAC,EAAE,UAAU,CAAC;IAGxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGtB,MAAM,CAAC,EAAE,aAAa,CAAC;IAGvB,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;CAC9B;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAI3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,YAAY,EAAE,MAAM,CAAM;IAK1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAK5B,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,WAAW,EAAE,MAAM,CAAM;IAIzB,YAAY,EAAE,MAAM,CAAM;IAK1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAK5B,WAAW,CAAC,EAAE,MAAM,CAAC;IAOrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAMhB,UAAU,CAAC,EAAE,aAAa,CAAC;IAK3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAI3B,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAK5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAK3B,WAAW,CAAC,EAAE,MAAM,CAAC;IAKrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAKnC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;IACzC,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB"}
1
+ {"version":3,"file":"booking.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/booking/booking.dto.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAI/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;GAGG;AACH,qBAAa,UAAU;IAErB,EAAE,EAAE,MAAM,CAAM;IAKhB,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,YAAY,EAAE,MAAM,CAAM;IAQ1B,YAAY,EAAE,YAAY,CAAc;IAKxC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAM;IAIhC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAM;IAKjC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAKnC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAMhB,UAAU,CAAC,EAAE,UAAU,CAAC;IAKxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGtB,MAAM,CAAC,EAAE,aAAa,CAAC;IAGvB,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;CAC9B;;AAOD;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,qBAA2C;CAAG;;AAEpF;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,qBAErC;CAAG;AAEJ;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;IACzC,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB"}
@@ -4,49 +4,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
7
+ import { ApiProperty, ApiPropertyOptional, OmitType, PartialType } from '@nestjs/swagger';
8
8
  import { IsString, IsUUID, IsDateString, IsOptional, IsInt, IsEnum, Min, Max, ValidateNested } from 'class-validator';
9
9
  import { Type } from 'class-transformer';
10
- /**
11
- * DTO for DataSource tracking (nested object).
12
- */
13
- export class DataSourceDTO {
14
- channel = 'admin';
15
- medium;
16
- campaign;
17
- source;
18
- referrer;
19
- }
20
- __decorate([
21
- ApiProperty({ description: 'Primary data channel', enum: ['web', 'mobile', 'api', 'admin', 'system', 'import', 'webhook', 'sync', 'migration'] }),
22
- IsEnum(['web', 'mobile', 'api', 'admin', 'system', 'import', 'webhook', 'sync', 'migration'])
23
- ], DataSourceDTO.prototype, "channel", void 0);
24
- __decorate([
25
- ApiPropertyOptional({ description: 'Marketing medium (email, referral, direct, etc.)' }),
26
- IsString(),
27
- IsOptional()
28
- ], DataSourceDTO.prototype, "medium", void 0);
29
- __decorate([
30
- ApiPropertyOptional({ description: 'Campaign identifier' }),
31
- IsString(),
32
- IsOptional()
33
- ], DataSourceDTO.prototype, "campaign", void 0);
34
- __decorate([
35
- ApiPropertyOptional({ description: 'Traffic source reference' }),
36
- IsString(),
37
- IsOptional()
38
- ], DataSourceDTO.prototype, "source", void 0);
39
- __decorate([
40
- ApiPropertyOptional({ description: 'Referrer URL' }),
41
- IsString(),
42
- IsOptional()
43
- ], DataSourceDTO.prototype, "referrer", void 0);
10
+ import { DataSourceDTO } from '../data-source.dto.js';
11
+ // Re-export for backward compatibility
12
+ export { DataSourceDTO } from '../data-source.dto.js';
44
13
  /**
45
14
  * Booking DTO for API responses.
15
+ * Contains all fields including computed/system fields.
46
16
  */
47
17
  export class BookingDTO {
48
18
  id = '';
49
- userId = '';
19
+ userId;
50
20
  locationName = '';
51
21
  locationType = 'property';
52
22
  businessId;
@@ -65,177 +35,87 @@ __decorate([
65
35
  ApiProperty({ description: 'Booking ID' })
66
36
  ], BookingDTO.prototype, "id", void 0);
67
37
  __decorate([
68
- ApiProperty({ description: 'User ID who owns this booking' })
69
- ], BookingDTO.prototype, "userId", void 0);
70
- __decorate([
71
- ApiProperty({ description: 'Location/venue name' })
72
- ], BookingDTO.prototype, "locationName", void 0);
73
- __decorate([
74
- ApiProperty({ description: 'Location type', enum: ['property', 'service', 'event', 'experience', 'destination'] })
75
- ], BookingDTO.prototype, "locationType", void 0);
76
- __decorate([
77
- ApiPropertyOptional({ description: 'Optional link to business entity' })
78
- ], BookingDTO.prototype, "businessId", void 0);
79
- __decorate([
80
- ApiProperty({ description: 'Check-in/start date (YYYY-MM-DD)', type: String })
81
- ], BookingDTO.prototype, "checkInDate", void 0);
82
- __decorate([
83
- ApiProperty({ description: 'Check-out/end date (YYYY-MM-DD)', type: String })
84
- ], BookingDTO.prototype, "checkOutDate", void 0);
85
- __decorate([
86
- ApiPropertyOptional({ description: 'Confirmation or booking reference number' })
87
- ], BookingDTO.prototype, "confirmationNumber", void 0);
88
- __decorate([
89
- ApiPropertyOptional({ description: 'External reference ID (PMS, OTA)' })
90
- ], BookingDTO.prototype, "externalRef", void 0);
91
- __decorate([
92
- ApiPropertyOptional({ description: 'Number of guests', default: 1 })
93
- ], BookingDTO.prototype, "guests", void 0);
94
- __decorate([
95
- ApiPropertyOptional({ description: 'Data source tracking', type: DataSourceDTO })
96
- ], BookingDTO.prototype, "dataSource", void 0);
97
- __decorate([
98
- ApiPropertyOptional({ description: 'Additional notes' })
99
- ], BookingDTO.prototype, "notes", void 0);
100
- __decorate([
101
- ApiPropertyOptional({ description: 'Computed booking status', enum: ['past', 'active', 'future'] })
102
- ], BookingDTO.prototype, "status", void 0);
103
- __decorate([
104
- ApiProperty({ description: 'Created timestamp' })
105
- ], BookingDTO.prototype, "createdAt", void 0);
106
- __decorate([
107
- ApiProperty({ description: 'Updated timestamp' })
108
- ], BookingDTO.prototype, "updatedAt", void 0);
109
- /**
110
- * DTO for creating a new booking.
111
- */
112
- export class CreateBookingDTO {
113
- userId;
114
- locationName = '';
115
- locationType;
116
- businessId;
117
- checkInDate = '';
118
- checkOutDate = '';
119
- confirmationNumber;
120
- externalRef;
121
- guests;
122
- dataSource;
123
- notes;
124
- }
125
- __decorate([
126
- ApiPropertyOptional({ description: 'User ID (required when not using /users/:userId endpoint)' }),
38
+ ApiPropertyOptional({ description: 'User ID who owns this booking (always present in responses, optional in create when using route param)' }),
127
39
  IsUUID(),
128
40
  IsOptional()
129
- ], CreateBookingDTO.prototype, "userId", void 0);
41
+ ], BookingDTO.prototype, "userId", void 0);
130
42
  __decorate([
131
43
  ApiProperty({ description: 'Location/venue name' }),
132
44
  IsString()
133
- ], CreateBookingDTO.prototype, "locationName", void 0);
45
+ ], BookingDTO.prototype, "locationName", void 0);
134
46
  __decorate([
135
- ApiPropertyOptional({ description: 'Location type', enum: ['property', 'service', 'event', 'experience', 'destination'], default: 'property' }),
136
- IsEnum(['property', 'service', 'event', 'experience', 'destination']),
137
- IsOptional()
138
- ], CreateBookingDTO.prototype, "locationType", void 0);
47
+ ApiProperty({
48
+ description: 'Location type',
49
+ enum: ['property', 'service', 'event', 'experience', 'destination'],
50
+ default: 'property'
51
+ }),
52
+ IsEnum(['property', 'service', 'event', 'experience', 'destination'])
53
+ ], BookingDTO.prototype, "locationType", void 0);
139
54
  __decorate([
140
55
  ApiPropertyOptional({ description: 'Optional link to business entity' }),
141
56
  IsUUID(),
142
57
  IsOptional()
143
- ], CreateBookingDTO.prototype, "businessId", void 0);
58
+ ], BookingDTO.prototype, "businessId", void 0);
144
59
  __decorate([
145
- ApiProperty({ description: 'Check-in/start date (YYYY-MM-DD)', example: '2026-06-01' }),
60
+ ApiProperty({ description: 'Check-in/start date (YYYY-MM-DD)', type: String, example: '2026-06-01' }),
146
61
  IsDateString()
147
- ], CreateBookingDTO.prototype, "checkInDate", void 0);
62
+ ], BookingDTO.prototype, "checkInDate", void 0);
148
63
  __decorate([
149
- ApiProperty({ description: 'Check-out/end date (YYYY-MM-DD)', example: '2026-06-05' }),
64
+ ApiProperty({ description: 'Check-out/end date (YYYY-MM-DD)', type: String, example: '2026-06-05' }),
150
65
  IsDateString()
151
- ], CreateBookingDTO.prototype, "checkOutDate", void 0);
66
+ ], BookingDTO.prototype, "checkOutDate", void 0);
152
67
  __decorate([
153
68
  ApiPropertyOptional({ description: 'Confirmation or booking reference number' }),
154
69
  IsString(),
155
70
  IsOptional()
156
- ], CreateBookingDTO.prototype, "confirmationNumber", void 0);
71
+ ], BookingDTO.prototype, "confirmationNumber", void 0);
157
72
  __decorate([
158
73
  ApiPropertyOptional({ description: 'External reference ID (PMS, OTA)' }),
159
74
  IsString(),
160
75
  IsOptional()
161
- ], CreateBookingDTO.prototype, "externalRef", void 0);
76
+ ], BookingDTO.prototype, "externalRef", void 0);
162
77
  __decorate([
163
78
  ApiPropertyOptional({ description: 'Number of guests', default: 1, minimum: 1, maximum: 100 }),
164
79
  IsInt(),
165
80
  Min(1),
166
81
  Max(100),
167
82
  IsOptional()
168
- ], CreateBookingDTO.prototype, "guests", void 0);
83
+ ], BookingDTO.prototype, "guests", void 0);
169
84
  __decorate([
170
85
  ApiPropertyOptional({ description: 'Data source tracking', type: DataSourceDTO }),
171
86
  ValidateNested(),
172
87
  Type(() => DataSourceDTO),
173
88
  IsOptional()
174
- ], CreateBookingDTO.prototype, "dataSource", void 0);
89
+ ], BookingDTO.prototype, "dataSource", void 0);
175
90
  __decorate([
176
91
  ApiPropertyOptional({ description: 'Additional notes' }),
177
92
  IsString(),
178
93
  IsOptional()
179
- ], CreateBookingDTO.prototype, "notes", void 0);
94
+ ], BookingDTO.prototype, "notes", void 0);
95
+ __decorate([
96
+ ApiPropertyOptional({ description: 'Computed booking status', enum: ['past', 'active', 'future'] })
97
+ ], BookingDTO.prototype, "status", void 0);
98
+ __decorate([
99
+ ApiProperty({ description: 'Created timestamp' })
100
+ ], BookingDTO.prototype, "createdAt", void 0);
101
+ __decorate([
102
+ ApiProperty({ description: 'Updated timestamp' })
103
+ ], BookingDTO.prototype, "updatedAt", void 0);
104
+ /**
105
+ * Fields that are system-managed and not user-provided.
106
+ */
107
+ const BOOKING_SYSTEM_FIELDS = ['id', 'status', 'createdAt', 'updatedAt'];
108
+ /**
109
+ * DTO for creating a new booking.
110
+ * Omits system-managed fields (id, status, timestamps).
111
+ * userId is optional (can be inferred from route param).
112
+ */
113
+ export class CreateBookingDTO extends OmitType(BookingDTO, BOOKING_SYSTEM_FIELDS) {
114
+ }
180
115
  /**
181
116
  * DTO for updating an existing booking.
117
+ * All fields optional. userId cannot be changed after creation.
182
118
  */
183
- export class UpdateBookingDTO {
184
- locationName;
185
- locationType;
186
- businessId;
187
- checkInDate;
188
- checkOutDate;
189
- confirmationNumber;
190
- externalRef;
191
- guests;
192
- notes;
119
+ export class UpdateBookingDTO extends PartialType(OmitType(BookingDTO, [...BOOKING_SYSTEM_FIELDS, 'userId'])) {
193
120
  }
194
- __decorate([
195
- ApiPropertyOptional({ description: 'Location/venue name' }),
196
- IsString(),
197
- IsOptional()
198
- ], UpdateBookingDTO.prototype, "locationName", void 0);
199
- __decorate([
200
- ApiPropertyOptional({ description: 'Location type', enum: ['property', 'service', 'event', 'experience', 'destination'] }),
201
- IsEnum(['property', 'service', 'event', 'experience', 'destination']),
202
- IsOptional()
203
- ], UpdateBookingDTO.prototype, "locationType", void 0);
204
- __decorate([
205
- ApiPropertyOptional({ description: 'Optional link to business entity' }),
206
- IsUUID(),
207
- IsOptional()
208
- ], UpdateBookingDTO.prototype, "businessId", void 0);
209
- __decorate([
210
- ApiPropertyOptional({ description: 'Check-in/start date (YYYY-MM-DD)' }),
211
- IsDateString(),
212
- IsOptional()
213
- ], UpdateBookingDTO.prototype, "checkInDate", void 0);
214
- __decorate([
215
- ApiPropertyOptional({ description: 'Check-out/end date (YYYY-MM-DD)' }),
216
- IsDateString(),
217
- IsOptional()
218
- ], UpdateBookingDTO.prototype, "checkOutDate", void 0);
219
- __decorate([
220
- ApiPropertyOptional({ description: 'Confirmation or booking reference number' }),
221
- IsString(),
222
- IsOptional()
223
- ], UpdateBookingDTO.prototype, "confirmationNumber", void 0);
224
- __decorate([
225
- ApiPropertyOptional({ description: 'External reference ID (PMS, OTA)' }),
226
- IsString(),
227
- IsOptional()
228
- ], UpdateBookingDTO.prototype, "externalRef", void 0);
229
- __decorate([
230
- ApiPropertyOptional({ description: 'Number of guests' }),
231
- IsInt(),
232
- Min(1),
233
- Max(100),
234
- IsOptional()
235
- ], UpdateBookingDTO.prototype, "guests", void 0);
236
- __decorate([
237
- ApiPropertyOptional({ description: 'Additional notes' }),
238
- IsString(),
239
- IsOptional()
240
- ], UpdateBookingDTO.prototype, "notes", void 0);
241
121
  //# sourceMappingURL=booking.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"booking.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/booking/booking.dto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"booking.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/booking/booking.dto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { DataSourceChannel } from '../types/data-source.type';
2
+ /**
3
+ * DTO for DataSource tracking.
4
+ * Tracks where data originated from for analytics and attribution.
5
+ */
6
+ export declare class DataSourceDTO {
7
+ channel: DataSourceChannel;
8
+ medium?: string;
9
+ campaign?: string;
10
+ source?: string;
11
+ referrer?: string;
12
+ }
13
+ //# sourceMappingURL=data-source.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-source.dto.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/dto/data-source.dto.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;GAGG;AACH,qBAAa,aAAa;IAMxB,OAAO,EAAE,iBAAiB,CAAW;IAKrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAKlB,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,47 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
8
+ import { IsString, IsOptional, IsEnum } from 'class-validator';
9
+ /**
10
+ * DTO for DataSource tracking.
11
+ * Tracks where data originated from for analytics and attribution.
12
+ */
13
+ export class DataSourceDTO {
14
+ channel = 'admin';
15
+ medium;
16
+ campaign;
17
+ source;
18
+ referrer;
19
+ }
20
+ __decorate([
21
+ ApiProperty({
22
+ description: 'Primary data channel',
23
+ enum: ['web', 'mobile', 'api', 'admin', 'system', 'import', 'webhook', 'sync', 'migration']
24
+ }),
25
+ IsEnum(['web', 'mobile', 'api', 'admin', 'system', 'import', 'webhook', 'sync', 'migration'])
26
+ ], DataSourceDTO.prototype, "channel", void 0);
27
+ __decorate([
28
+ ApiPropertyOptional({ description: 'Marketing medium (email, referral, direct, etc.)' }),
29
+ IsString(),
30
+ IsOptional()
31
+ ], DataSourceDTO.prototype, "medium", void 0);
32
+ __decorate([
33
+ ApiPropertyOptional({ description: 'Campaign identifier' }),
34
+ IsString(),
35
+ IsOptional()
36
+ ], DataSourceDTO.prototype, "campaign", void 0);
37
+ __decorate([
38
+ ApiPropertyOptional({ description: 'Traffic source reference' }),
39
+ IsString(),
40
+ IsOptional()
41
+ ], DataSourceDTO.prototype, "source", void 0);
42
+ __decorate([
43
+ ApiPropertyOptional({ description: 'Referrer URL' }),
44
+ IsString(),
45
+ IsOptional()
46
+ ], DataSourceDTO.prototype, "referrer", void 0);
47
+ //# sourceMappingURL=data-source.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-source.dto.js","sourceRoot":"","sources":["../../../../src/shared-lib/dto/data-source.dto.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAG/D;;;GAGG;AACH,MAAM,OAAO,aAAa;IAMxB,OAAO,GAAsB,OAAO,CAAC;IAKrC,MAAM,CAAU;IAKhB,QAAQ,CAAU;IAKlB,MAAM,CAAU;IAKhB,QAAQ,CAAU;CACnB;AArBC;IALC,WAAW,CAAC;QACX,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC;KAC5F,CAAC;IACD,MAAM,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;8CACzD;AAKrC;IAHC,mBAAmB,CAAC,EAAE,WAAW,EAAE,kDAAkD,EAAE,CAAC;IACxF,QAAQ,EAAE;IACV,UAAU,EAAE;6CACG;AAKhB;IAHC,mBAAmB,CAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC;IAC3D,QAAQ,EAAE;IACV,UAAU,EAAE;+CACK;AAKlB;IAHC,mBAAmB,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAChE,QAAQ,EAAE;IACV,UAAU,EAAE;6CACG;AAKhB;IAHC,mBAAmB,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC;IACpD,QAAQ,EAAE;IACV,UAAU,EAAE;+CACK"}
@@ -16,6 +16,7 @@ export * from './tag.dto';
16
16
  export * from './wallet.dto';
17
17
  export * from './token';
18
18
  export * from './transaction';
19
+ export * from './data-source.dto';
19
20
  export * from './purchase';
20
21
  export * from './redemption';
21
22
  export * from './api-key';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/dto/index.ts"],"names":[],"mappings":"AAIA,cAAc,MAAM,CAAC;AAGrB,cAAc,aAAa,CAAC;AAG5B,cAAc,QAAQ,CAAC;AAGvB,cAAc,YAAY,CAAA;AAE1B,cAAc,QAAQ,CAAA;AAGtB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAG/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAI3B,cAAc,cAAc,CAAC;AAE7B,cAAc,WAAW,CAAA;AAGzB,cAAc,YAAY,CAAC;AAI3B,cAAc,mBAAmB,CAAA;AAGjC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,cAAc,CAAC;AAE7B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/dto/index.ts"],"names":[],"mappings":"AAIA,cAAc,MAAM,CAAC;AAGrB,cAAc,aAAa,CAAC;AAG5B,cAAc,QAAQ,CAAC;AAGvB,cAAc,YAAY,CAAA;AAE1B,cAAc,QAAQ,CAAA;AAGtB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAG/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,eAAe,CAAC;AAG9B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,YAAY,CAAC;AAI3B,cAAc,cAAc,CAAC;AAE7B,cAAc,WAAW,CAAA;AAGzB,cAAc,YAAY,CAAC;AAI3B,cAAc,mBAAmB,CAAA;AAGjC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,cAAc,CAAC;AAE7B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC"}
@@ -26,6 +26,8 @@ export * from './wallet.dto.js';
26
26
  export * from './token/index.js';
27
27
  // Transaction DTOs
28
28
  export * from './transaction/index.js';
29
+ // Data Source DTO (shared)
30
+ export * from './data-source.dto.js';
29
31
  // Purchase DTOs
30
32
  export * from './purchase/index.js';
31
33
  // Redemption DTOs
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/dto/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,qFAAqF;AAErF,UAAU;AACV,cAAc,MAAM,CAAC;AAErB,iBAAiB;AACjB,cAAc,aAAa,CAAC;AAE5B,YAAY;AACZ,cAAc,QAAQ,CAAC;AAEvB,gBAAgB;AAChB,cAAc,YAAY,CAAA;AAE1B,cAAc,QAAQ,CAAA;AAEtB,YAAY;AACZ,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAE/C,sBAAsB;AACtB,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAE7B,aAAa;AACb,cAAc,SAAS,CAAC;AAExB,mBAAmB;AACnB,cAAc,eAAe,CAAC;AAE9B,gBAAgB;AAChB,cAAc,YAAY,CAAC;AAG3B,kBAAkB;AAClB,cAAc,cAAc,CAAC;AAE7B,cAAc,WAAW,CAAA;AAEzB,gBAAgB;AAChB,cAAc,YAAY,CAAC;AAG3B,uBAAuB;AACvB,cAAc,mBAAmB,CAAA;AAEjC,mBAAmB;AACnB,cAAc,wBAAwB,CAAC;AAEvC,aAAa;AACb,cAAc,cAAc,CAAC;AAE7B,cAAc,mBAAmB,CAAC;AAElC,aAAa;AACb,cAAc,kBAAkB,CAAC;AAEjC,aAAa;AACb,cAAc,SAAS,CAAC;AAExB,eAAe;AACf,cAAc,WAAW,CAAC;AAE1B,eAAe;AACf,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/dto/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,qFAAqF;AAErF,UAAU;AACV,cAAc,MAAM,CAAC;AAErB,iBAAiB;AACjB,cAAc,aAAa,CAAC;AAE5B,YAAY;AACZ,cAAc,QAAQ,CAAC;AAEvB,gBAAgB;AAChB,cAAc,YAAY,CAAA;AAE1B,cAAc,QAAQ,CAAA;AAEtB,YAAY;AACZ,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAE/C,sBAAsB;AACtB,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAE7B,aAAa;AACb,cAAc,SAAS,CAAC;AAExB,mBAAmB;AACnB,cAAc,eAAe,CAAC;AAE9B,2BAA2B;AAC3B,cAAc,mBAAmB,CAAC;AAElC,gBAAgB;AAChB,cAAc,YAAY,CAAC;AAG3B,kBAAkB;AAClB,cAAc,cAAc,CAAC;AAE7B,cAAc,WAAW,CAAA;AAEzB,gBAAgB;AAChB,cAAc,YAAY,CAAC;AAG3B,uBAAuB;AACvB,cAAc,mBAAmB,CAAA;AAEjC,mBAAmB;AACnB,cAAc,wBAAwB,CAAC;AAEvC,aAAa;AACb,cAAc,cAAc,CAAC;AAE7B,cAAc,mBAAmB,CAAC;AAElC,aAAa;AACb,cAAc,kBAAkB,CAAC;AAEjC,aAAa;AACb,cAAc,SAAS,CAAC;AAExB,eAAe;AACf,cAAc,WAAW,CAAC;AAE1B,eAAe;AACf,cAAc,WAAW,CAAC"}
@@ -38,12 +38,13 @@ export declare class RedemptionDTO {
38
38
  context?: DynamicContext;
39
39
  specificRequiredUserFields: string[];
40
40
  requiredUserFields: string[];
41
+ specificBookingRequirement?: BookingRequirementType | null;
41
42
  bookingRequirement?: BookingRequirementType | null;
42
43
  included?: {
43
44
  redeemCount?: number;
44
45
  ownerBusiness?: BusinessDTO;
45
- /** User info validation. Only set when requiredUserFields is non-empty + user authenticated. */
46
- userInfo?: {
46
+ /** Required user info validation. Only set when requiredUserFields is non-empty + user authenticated. */
47
+ requiredUserInfo?: {
47
48
  /** Field definitions with isMissing status. Filter by isMissing to see what's missing. */
48
49
  fieldDefinitions: RequiredFieldDefinitionWithStatus[];
49
50
  /** True if user has all required fields. */
@@ -1 +1 @@
1
- {"version":3,"file":"redemption.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/redemption/redemption.dto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,sGAAsG;AACtG,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG,sBAAsB,CAAC;AAExF,uGAAuG;AACvG,MAAM,MAAM,iCAAiC,GAAG,uBAAuB,GAAG;IACtE,kIAAkI;IAClI,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAGF,qBAAa,aAAa;IAKtB,EAAE,EAAE,MAAM,CAAM;IAOhB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAOtC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAOlC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO/B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO9B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO5B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAQ;IAO9B,OAAO,EAAE,IAAI,GAAG,IAAI,CAAQ;IAK5B,QAAQ,EAAE,OAAO,CAAS;IAK1B,iBAAiB,EAAE,MAAM,CAAK;IAO9B,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAO;IAMrC,UAAU,EAAE,YAAY,EAAE,CAAM;IAOhC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAI;IAQxB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAO;IAKhC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAO1B,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAO;IAOlD,uBAAuB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAQ;IAQhD,IAAI,EAAE,MAAM,EAAE,CAAM;IAOpB,OAAO,CAAC,EAAE,cAAc,CAAC;IAOzB,0BAA0B,EAAE,MAAM,EAAE,CAAM;IAO1C,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAQlC,kBAAkB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAwCnD,QAAQ,CAAC,EAAE;QACP,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,WAAW,CAAC;QAC5B,gGAAgG;QAChG,QAAQ,CAAC,EAAE;YACP,0FAA0F;YAC1F,gBAAgB,EAAE,iCAAiC,EAAE,CAAC;YACtD,4CAA4C;YAC5C,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,wFAAwF;QACxF,OAAO,CAAC,EAAE;YACN,kDAAkD;YAClD,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;YACxB,2DAA2D;YAC3D,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;KACL,CAAC;CACL"}
1
+ {"version":3,"file":"redemption.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/redemption/redemption.dto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,sGAAsG;AACtG,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG,sBAAsB,CAAC;AAExF,uGAAuG;AACvG,MAAM,MAAM,iCAAiC,GAAG,uBAAuB,GAAG;IACtE,kIAAkI;IAClI,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAGF,qBAAa,aAAa;IAKtB,EAAE,EAAE,MAAM,CAAM;IAOhB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAOtC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAOlC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO/B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO9B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAO5B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAQ;IAO9B,OAAO,EAAE,IAAI,GAAG,IAAI,CAAQ;IAK5B,QAAQ,EAAE,OAAO,CAAS;IAK1B,iBAAiB,EAAE,MAAM,CAAK;IAO9B,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAO;IAMrC,UAAU,EAAE,YAAY,EAAE,CAAM;IAOhC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAI;IAQxB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAO;IAKhC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAO1B,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAO;IAOlD,uBAAuB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAQ;IAQhD,IAAI,EAAE,MAAM,EAAE,CAAM;IAOpB,OAAO,CAAC,EAAE,cAAc,CAAC;IAOzB,0BAA0B,EAAE,MAAM,EAAE,CAAM;IAO1C,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAQlC,0BAA0B,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAQ3D,kBAAkB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAwCnD,QAAQ,CAAC,EAAE;QACP,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,WAAW,CAAC;QAC5B,yGAAyG;QACzG,gBAAgB,CAAC,EAAE;YACf,0FAA0F;YAC1F,gBAAgB,EAAE,iCAAiC,EAAE,CAAC;YACtD,4CAA4C;YAC5C,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,wFAAwF;QACxF,OAAO,CAAC,EAAE;YACN,kDAAkD;YAClD,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;YACxB,2DAA2D;YAC3D,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;KACL,CAAC;CACL"}