@explorins/pers-shared 2.1.184 → 2.1.186

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 (41) hide show
  1. package/dist/cjs/shared-lib/dto/analytics/index.d.ts +2 -0
  2. package/dist/cjs/shared-lib/dto/analytics/index.d.ts.map +1 -1
  3. package/dist/cjs/shared-lib/dto/analytics/index.js +3 -0
  4. package/dist/cjs/shared-lib/dto/analytics/index.js.map +1 -1
  5. package/dist/cjs/shared-lib/dto/analytics/tag-analytics.dto.d.ts +2 -10
  6. package/dist/cjs/shared-lib/dto/analytics/tag-analytics.dto.d.ts.map +1 -1
  7. package/dist/cjs/shared-lib/dto/analytics/tag-analytics.dto.js +8 -17
  8. package/dist/cjs/shared-lib/dto/analytics/tag-analytics.dto.js.map +1 -1
  9. package/dist/cjs/shared-lib/enum/index.d.ts +1 -0
  10. package/dist/cjs/shared-lib/enum/index.d.ts.map +1 -1
  11. package/dist/cjs/shared-lib/enum/index.js +1 -0
  12. package/dist/cjs/shared-lib/enum/index.js.map +1 -1
  13. package/dist/cjs/shared-lib/enum/taggable-entity-type.enum.d.ts +11 -0
  14. package/dist/cjs/shared-lib/enum/taggable-entity-type.enum.d.ts.map +1 -0
  15. package/dist/cjs/shared-lib/enum/taggable-entity-type.enum.js +15 -0
  16. package/dist/cjs/shared-lib/enum/taggable-entity-type.enum.js.map +1 -0
  17. package/dist/cjs/shared-lib/types/booking.type.d.ts +13 -0
  18. package/dist/cjs/shared-lib/types/booking.type.d.ts.map +1 -1
  19. package/dist/cjs/shared-lib/types/booking.type.js +29 -0
  20. package/dist/cjs/shared-lib/types/booking.type.js.map +1 -1
  21. package/dist/esm/shared-lib/dto/analytics/index.d.ts +2 -0
  22. package/dist/esm/shared-lib/dto/analytics/index.d.ts.map +1 -1
  23. package/dist/esm/shared-lib/dto/analytics/index.js +3 -0
  24. package/dist/esm/shared-lib/dto/analytics/index.js.map +1 -1
  25. package/dist/esm/shared-lib/dto/analytics/tag-analytics.dto.d.ts +2 -10
  26. package/dist/esm/shared-lib/dto/analytics/tag-analytics.dto.d.ts.map +1 -1
  27. package/dist/esm/shared-lib/dto/analytics/tag-analytics.dto.js +3 -11
  28. package/dist/esm/shared-lib/dto/analytics/tag-analytics.dto.js.map +1 -1
  29. package/dist/esm/shared-lib/enum/index.d.ts +1 -0
  30. package/dist/esm/shared-lib/enum/index.d.ts.map +1 -1
  31. package/dist/esm/shared-lib/enum/index.js +1 -0
  32. package/dist/esm/shared-lib/enum/index.js.map +1 -1
  33. package/dist/esm/shared-lib/enum/taggable-entity-type.enum.d.ts +11 -0
  34. package/dist/esm/shared-lib/enum/taggable-entity-type.enum.d.ts.map +1 -0
  35. package/dist/esm/shared-lib/enum/taggable-entity-type.enum.js +12 -0
  36. package/dist/esm/shared-lib/enum/taggable-entity-type.enum.js.map +1 -0
  37. package/dist/esm/shared-lib/types/booking.type.d.ts +13 -0
  38. package/dist/esm/shared-lib/types/booking.type.d.ts.map +1 -1
  39. package/dist/esm/shared-lib/types/booking.type.js +28 -0
  40. package/dist/esm/shared-lib/types/booking.type.js.map +1 -1
  41. package/package.json +1 -1
@@ -6,6 +6,8 @@ export * from './group-by-expression.dto';
6
6
  export * from './redemption-redeem-analytics-request.dto';
7
7
  export * from './retention-analytics.dto';
8
8
  export * from './tag-analytics.dto';
9
+ export * from './transaction-analytics.request.dto';
10
+ export * from './user-analytics.dto';
9
11
  export * from './user-ranking-analytics.dto';
10
12
  export * from './ai-analytics.dto';
11
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":"AAEA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qCAAqC,CAAC;AAEpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
@@ -22,6 +22,9 @@ __exportStar(require("./group-by-expression.dto"), exports);
22
22
  __exportStar(require("./redemption-redeem-analytics-request.dto"), exports);
23
23
  __exportStar(require("./retention-analytics.dto"), exports);
24
24
  __exportStar(require("./tag-analytics.dto"), exports);
25
+ __exportStar(require("./transaction-analytics.request.dto"), exports);
26
+ // export * from './usage-analytics.dto'; // Placeholder - all exports commented out
27
+ __exportStar(require("./user-analytics.dto"), exports);
25
28
  __exportStar(require("./user-ranking-analytics.dto"), exports);
26
29
  __exportStar(require("./ai-analytics.dto"), exports);
27
30
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,uDAAqC;AACrC,mEAAiD;AACjD,iEAA+C;AAC/C,yEAAuD;AACvD,4DAA0C;AAC1C,4EAA0D;AAC1D,4DAA0C;AAC1C,sDAAoC;AACpC,+DAA6C;AAC7C,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,uDAAqC;AACrC,mEAAiD;AACjD,iEAA+C;AAC/C,yEAAuD;AACvD,4DAA0C;AAC1C,4EAA0D;AAC1D,4DAA0C;AAC1C,sDAAoC;AACpC,sEAAoD;AACpD,qFAAqF;AACrF,uDAAqC;AACrC,+DAA6C;AAC7C,qDAAmC"}
@@ -1,13 +1,5 @@
1
- /**
2
- * Entity types that support tags for aggregation
3
- */
4
- export declare enum TaggableEntityType {
5
- CAMPAIGN = "campaign",
6
- REDEMPTION = "redemption",
7
- BUSINESS = "business",
8
- TOKEN_METADATA = "token_metadata",
9
- USER_STATUS_TYPE = "user_status_type"
10
- }
1
+ import { TaggableEntityType } from '../../enum/taggable-entity-type.enum';
2
+ export { TaggableEntityType };
11
3
  /**
12
4
  * Request DTO for tags analytics
13
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tag-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;CACtC;AAED;;;;GAIG;AACH,qBAAa,sBAAsB;IAUjC,WAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAM7B,UAAU,EAAE,kBAAkB,CAA+B;IAM7D,KAAK,EAAE,MAAM,CAAK;CACnB;AAED;;GAEG;AACH,qBAAa,WAAW;IAMtB,GAAG,EAAE,MAAM,CAAM;IAMjB,KAAK,EAAE,MAAM,CAAK;IAYlB,iBAAiB,EAAE,kBAAkB,EAAE,CAAM;CAC9C;AAED;;;;;GAKG;AACH,qBAAa,uBAAuB;IAKlC,IAAI,EAAE,WAAW,EAAE,CAAM;IAMzB,SAAS,EAAE,MAAM,CAAK;IAMtB,UAAU,EAAE,MAAM,CAAK;IAUvB,WAAW,EAAE,kBAAkB,EAAE,CAAM;CACxC"}
1
+ {"version":3,"file":"tag-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAG1E,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B;;;;GAIG;AACH,qBAAa,sBAAsB;IAUjC,WAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAM7B,UAAU,EAAE,kBAAkB,CAA+B;IAM7D,KAAK,EAAE,MAAM,CAAK;CACnB;AAED;;GAEG;AACH,qBAAa,WAAW;IAMtB,GAAG,EAAE,MAAM,CAAM;IAMjB,KAAK,EAAE,MAAM,CAAK;IAYlB,iBAAiB,EAAE,kBAAkB,EAAE,CAAM;CAC9C;AAED;;;;;GAKG;AACH,qBAAa,uBAAuB;IAKlC,IAAI,EAAE,WAAW,EAAE,CAAM;IAMzB,SAAS,EAAE,MAAM,CAAK;IAMtB,UAAU,EAAE,MAAM,CAAK;IAUvB,WAAW,EAAE,kBAAkB,EAAE,CAAM;CACxC"}
@@ -12,17 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.TagAnalyticsResponseDTO = exports.TagUsageDTO = exports.EntityTypeUsageDTO = exports.TagAnalyticsRequestDTO = exports.TaggableEntityType = void 0;
13
13
  const swagger_1 = require("@nestjs/swagger");
14
14
  const class_validator_1 = require("class-validator");
15
- /**
16
- * Entity types that support tags for aggregation
17
- */
18
- var TaggableEntityType;
19
- (function (TaggableEntityType) {
20
- TaggableEntityType["CAMPAIGN"] = "campaign";
21
- TaggableEntityType["REDEMPTION"] = "redemption";
22
- TaggableEntityType["BUSINESS"] = "business";
23
- TaggableEntityType["TOKEN_METADATA"] = "token_metadata";
24
- TaggableEntityType["USER_STATUS_TYPE"] = "user_status_type";
25
- })(TaggableEntityType || (exports.TaggableEntityType = TaggableEntityType = {}));
15
+ const taggable_entity_type_enum_1 = require("../../enum/taggable-entity-type.enum");
16
+ Object.defineProperty(exports, "TaggableEntityType", { enumerable: true, get: function () { return taggable_entity_type_enum_1.TaggableEntityType; } });
26
17
  /**
27
18
  * Request DTO for tags analytics
28
19
  *
@@ -36,26 +27,26 @@ __decorate([
36
27
  (0, swagger_1.ApiPropertyOptional)({
37
28
  description: 'Filter tags by entity types. If empty or not provided, returns tags from all taggable entities.',
38
29
  example: ['campaign', 'business'],
39
- enum: TaggableEntityType,
30
+ enum: taggable_entity_type_enum_1.TaggableEntityType,
40
31
  isArray: true
41
32
  }),
42
33
  (0, class_validator_1.IsOptional)(),
43
34
  (0, class_validator_1.IsArray)(),
44
- (0, class_validator_1.IsEnum)(TaggableEntityType, { each: true }),
35
+ (0, class_validator_1.IsEnum)(taggable_entity_type_enum_1.TaggableEntityType, { each: true }),
45
36
  __metadata("design:type", Array)
46
37
  ], TagAnalyticsRequestDTO.prototype, "entityTypes", void 0);
47
38
  /**
48
39
  * Usage count per entity type
49
40
  */
50
41
  class EntityTypeUsageDTO {
51
- entityType = TaggableEntityType.CAMPAIGN;
42
+ entityType = taggable_entity_type_enum_1.TaggableEntityType.CAMPAIGN;
52
43
  count = 0;
53
44
  }
54
45
  exports.EntityTypeUsageDTO = EntityTypeUsageDTO;
55
46
  __decorate([
56
47
  (0, swagger_1.ApiProperty)({
57
48
  description: 'The entity type',
58
- enum: TaggableEntityType,
49
+ enum: taggable_entity_type_enum_1.TaggableEntityType,
59
50
  example: 'campaign'
60
51
  }),
61
52
  __metadata("design:type", String)
@@ -142,11 +133,11 @@ __decorate([
142
133
  (0, swagger_1.ApiProperty)({
143
134
  description: 'Entity types included in this aggregation',
144
135
  example: ['campaign', 'redemption', 'business', 'token_metadata', 'user_status_type'],
145
- enum: TaggableEntityType,
136
+ enum: taggable_entity_type_enum_1.TaggableEntityType,
146
137
  isArray: true
147
138
  }),
148
139
  (0, class_validator_1.IsArray)(),
149
- (0, class_validator_1.IsEnum)(TaggableEntityType, { each: true }),
140
+ (0, class_validator_1.IsEnum)(taggable_entity_type_enum_1.TaggableEntityType, { each: true }),
150
141
  __metadata("design:type", Array)
151
142
  ], TagAnalyticsResponseDTO.prototype, "entityTypes", void 0);
152
143
  //# sourceMappingURL=tag-analytics.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tag-analytics.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,qDAAwE;AAExE;;GAEG;AACH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,2CAAqB,CAAA;IACrB,+CAAyB,CAAA;IACzB,2CAAqB,CAAA;IACrB,uDAAiC,CAAA;IACjC,2DAAqC,CAAA;AACvC,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B;AAED;;;;GAIG;AACH,MAAa,sBAAsB;IAUjC,WAAW,CAAwB;CACpC;AAXD,wDAWC;AADC;IATC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,iGAAiG;QAC9G,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;QACjC,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,IAAI;KACd,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;IACT,IAAA,wBAAM,EAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;2DACR;AAGrC;;GAEG;AACH,MAAa,kBAAkB;IAM7B,UAAU,GAAuB,kBAAkB,CAAC,QAAQ,CAAC;IAM7D,KAAK,GAAW,CAAC,CAAC;CACnB;AAbD,gDAaC;AAPC;IALC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,UAAU;KACpB,CAAC;;sDAC2D;AAM7D;IAJC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,CAAC;KACX,CAAC;;iDACgB;AAGpB;;GAEG;AACH,MAAa,WAAW;IAMtB,GAAG,GAAW,EAAE,CAAC;IAMjB,KAAK,GAAW,CAAC,CAAC;IAYlB,iBAAiB,GAAyB,EAAE,CAAC;CAC9C;AAzBD,kCAyBC;AAnBC;IALC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,yBAAyB;QACtC,OAAO,EAAE,aAAa;KACvB,CAAC;IACD,IAAA,0BAAQ,GAAE;;wCACM;AAMjB;IAJC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,mEAAmE;QAChF,OAAO,EAAE,EAAE;KACZ,CAAC;;0CACgB;AAYlB;IAVC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,iCAAiC;QAC9C,IAAI,EAAE,CAAC,kBAAkB,CAAC;QAC1B,OAAO,EAAE;YACP,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE;YACpC,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE;YACpC,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE;SAC3C;KACF,CAAC;IACD,IAAA,yBAAO,GAAE;;sDACmC;AAG/C;;;;;GAKG;AACH,MAAa,uBAAuB;IAKlC,IAAI,GAAkB,EAAE,CAAC;IAMzB,SAAS,GAAW,CAAC,CAAC;IAMtB,UAAU,GAAW,CAAC,CAAC;IAUvB,WAAW,GAAyB,EAAE,CAAC;CACxC;AA5BD,0DA4BC;AAvBC;IAJC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,qCAAqC;QAClD,IAAI,EAAE,CAAC,WAAW,CAAC;KACpB,CAAC;;qDACuB;AAMzB;IAJC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,6BAA6B;QAC1C,OAAO,EAAE,EAAE;KACZ,CAAC;;0DACoB;AAMtB;IAJC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,wEAAwE;QACrF,OAAO,EAAE,GAAG;KACb,CAAC;;2DACqB;AAUvB;IARC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,2CAA2C;QACxD,OAAO,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;QACrF,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,IAAI;KACd,CAAC;IACD,IAAA,yBAAO,GAAE;IACT,IAAA,wBAAM,EAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;4DACJ"}
1
+ {"version":3,"file":"tag-analytics.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export * from './file-upload-entity-type.enum';
20
20
  export * from './signed-url-type.enum';
21
21
  export * from './token-validity-type.enum';
22
22
  export * from './balance-migration-type.enum';
23
+ export * from './taggable-entity-type.enum';
23
24
  export * from './purchase';
24
25
  export * from './campaign';
25
26
  export * from './ai-operation-type.enum';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,YAAY,CAAC;AAE3B,cAAc,YAAY,CAAC;AAE3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,gBAAgB,CAAC;AAG/B,cAAc,wBAAwB,CAAC;AAGvC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,qBAAqB,CAAC;AAGpC,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,YAAY,CAAC;AAE3B,cAAc,YAAY,CAAC;AAE3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,gBAAgB,CAAC;AAG/B,cAAc,wBAAwB,CAAC;AAGvC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,qBAAqB,CAAC;AAGpC,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC"}
@@ -38,6 +38,7 @@ __exportStar(require("./file-upload-entity-type.enum"), exports);
38
38
  __exportStar(require("./signed-url-type.enum"), exports);
39
39
  __exportStar(require("./token-validity-type.enum"), exports);
40
40
  __exportStar(require("./balance-migration-type.enum"), exports);
41
+ __exportStar(require("./taggable-entity-type.enum"), exports);
41
42
  __exportStar(require("./purchase"), exports);
42
43
  __exportStar(require("./campaign"), exports);
43
44
  __exportStar(require("./ai-operation-type.enum"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,0DAAwC;AACxC,0DAAwC;AACxC,4DAA0C;AAC1C,0EAAwD;AACxD,sDAAoC;AACpC,oDAAkC;AAClC,yDAAuC;AACvC,4DAA0C;AAC1C,oDAAkC;AAClC,qDAAmC;AACnC,yDAAuC;AACvC,iEAA+C;AAC/C,kEAAgD;AAChD,gEAA8C;AAC9C,gDAA8B;AAC9B,gDAA8B;AAC9B,oDAAkC;AAClC,+DAA6C;AAC7C,iEAA+C;AAC/C,yDAAuC;AACvC,6DAA2C;AAC3C,gEAA8C;AAE9C,6CAA2B;AAE3B,6CAA2B;AAE3B,2DAAyC;AACzC,iEAA+C;AAC/C,6DAA2C;AAE3C,gBAAgB;AAChB,iDAA+B;AAE/B,6BAA6B;AAC7B,yDAAuC;AAEvC,2DAA2D;AAC3D,8DAA4C;AAE5C,yDAAyD;AACzD,sDAAoC;AAEpC,4BAA4B;AAC5B,wFAA0E;AAAjE,2HAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,0DAAwC;AACxC,0DAAwC;AACxC,4DAA0C;AAC1C,0EAAwD;AACxD,sDAAoC;AACpC,oDAAkC;AAClC,yDAAuC;AACvC,4DAA0C;AAC1C,oDAAkC;AAClC,qDAAmC;AACnC,yDAAuC;AACvC,iEAA+C;AAC/C,kEAAgD;AAChD,gEAA8C;AAC9C,gDAA8B;AAC9B,gDAA8B;AAC9B,oDAAkC;AAClC,+DAA6C;AAC7C,iEAA+C;AAC/C,yDAAuC;AACvC,6DAA2C;AAC3C,gEAA8C;AAC9C,8DAA4C;AAE5C,6CAA2B;AAE3B,6CAA2B;AAE3B,2DAAyC;AACzC,iEAA+C;AAC/C,6DAA2C;AAE3C,gBAAgB;AAChB,iDAA+B;AAE/B,6BAA6B;AAC7B,yDAAuC;AAEvC,2DAA2D;AAC3D,8DAA4C;AAE5C,yDAAyD;AACzD,sDAAoC;AAEpC,4BAA4B;AAC5B,wFAA0E;AAAjE,2HAAA,aAAa,OAAA"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Entity types that support tags for aggregation
3
+ */
4
+ export declare enum TaggableEntityType {
5
+ CAMPAIGN = "campaign",
6
+ REDEMPTION = "redemption",
7
+ BUSINESS = "business",
8
+ TOKEN_METADATA = "token_metadata",
9
+ USER_STATUS_TYPE = "user_status_type"
10
+ }
11
+ //# sourceMappingURL=taggable-entity-type.enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taggable-entity-type.enum.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/taggable-entity-type.enum.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;CACtC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TaggableEntityType = void 0;
4
+ /**
5
+ * Entity types that support tags for aggregation
6
+ */
7
+ var TaggableEntityType;
8
+ (function (TaggableEntityType) {
9
+ TaggableEntityType["CAMPAIGN"] = "campaign";
10
+ TaggableEntityType["REDEMPTION"] = "redemption";
11
+ TaggableEntityType["BUSINESS"] = "business";
12
+ TaggableEntityType["TOKEN_METADATA"] = "token_metadata";
13
+ TaggableEntityType["USER_STATUS_TYPE"] = "user_status_type";
14
+ })(TaggableEntityType || (exports.TaggableEntityType = TaggableEntityType = {}));
15
+ //# sourceMappingURL=taggable-entity-type.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taggable-entity-type.enum.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/taggable-entity-type.enum.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,2CAAqB,CAAA;IACrB,+CAAyB,CAAA;IACzB,2CAAqB,CAAA;IACrB,uDAAiC,CAAA;IACjC,2DAAqC,CAAA;AACvC,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B"}
@@ -18,4 +18,17 @@ export type LocationType = typeof LOCATION_TYPES[number];
18
18
  * Keeping for backward compatibility during migration.
19
19
  */
20
20
  export type BookingSource = 'manual' | 'api' | 'import' | 'migration';
21
+ /**
22
+ * Check if a booking status satisfies a requirement type.
23
+ *
24
+ * @param status - Current booking status ('past', 'active', 'future')
25
+ * @param requirement - Required booking status for eligibility
26
+ * @returns true if the status satisfies the requirement
27
+ *
28
+ * @example
29
+ * isBookingStatusValid('active', 'active_future'); // true
30
+ * isBookingStatusValid('past', 'active_future'); // false
31
+ * isBookingStatusValid('future', 'any'); // true
32
+ */
33
+ export declare function isBookingStatusValid(status: BookingStatus, requirement: BookingRequirementType): boolean;
21
34
  //# sourceMappingURL=booking.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"booking.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAC9B,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,eAAe,GACf,KAAK,CAAC;AAEV;;;GAGG;AACH,eAAO,MAAM,cAAc,wEAMjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC"}
1
+ {"version":3,"file":"booking.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAC9B,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,eAAe,GACf,KAAK,CAAC;AAEV;;;GAGG;AACH,eAAO,MAAM,cAAc,wEAMjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEtE;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,sBAAsB,GAClC,OAAO,CAeT"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LOCATION_TYPES = void 0;
4
+ exports.isBookingStatusValid = isBookingStatusValid;
4
5
  /**
5
6
  * Location types for bookings.
6
7
  * Broad categories for different booking contexts.
@@ -12,4 +13,32 @@ exports.LOCATION_TYPES = [
12
13
  'experience', // Experience package (multi-activity, bundle)
13
14
  'destination', // Destination/location-based (city pass, area access)
14
15
  ];
16
+ /**
17
+ * Check if a booking status satisfies a requirement type.
18
+ *
19
+ * @param status - Current booking status ('past', 'active', 'future')
20
+ * @param requirement - Required booking status for eligibility
21
+ * @returns true if the status satisfies the requirement
22
+ *
23
+ * @example
24
+ * isBookingStatusValid('active', 'active_future'); // true
25
+ * isBookingStatusValid('past', 'active_future'); // false
26
+ * isBookingStatusValid('future', 'any'); // true
27
+ */
28
+ function isBookingStatusValid(status, requirement) {
29
+ switch (requirement) {
30
+ case 'active':
31
+ return status === 'active';
32
+ case 'future':
33
+ return status === 'future';
34
+ case 'past':
35
+ return status === 'past';
36
+ case 'active_future':
37
+ return status === 'active' || status === 'future';
38
+ case 'any':
39
+ return true;
40
+ default:
41
+ return false;
42
+ }
43
+ }
15
44
  //# sourceMappingURL=booking.type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"booking.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":";;;AAgBA;;;GAGG;AACU,QAAA,cAAc,GAAG;IAC5B,UAAU,EAAM,qDAAqD;IACrE,SAAS,EAAO,iDAAiD;IACjE,OAAO,EAAS,gDAAgD;IAChE,YAAY,EAAI,8CAA8C;IAC9D,aAAa,EAAG,sDAAsD;CAC9D,CAAC"}
1
+ {"version":3,"file":"booking.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":";;;AAgDA,oDAkBC;AAlDD;;;GAGG;AACU,QAAA,cAAc,GAAG;IAC5B,UAAU,EAAM,qDAAqD;IACrE,SAAS,EAAO,iDAAiD;IACjE,OAAO,EAAS,gDAAgD;IAChE,YAAY,EAAI,8CAA8C;IAC9D,aAAa,EAAG,sDAAsD;CAC9D,CAAC;AAUX;;;;;;;;;;;GAWG;AACH,SAAgB,oBAAoB,CAClC,MAAqB,EACrB,WAAmC;IAEnC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,MAAM,KAAK,QAAQ,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,MAAM,KAAK,QAAQ,CAAC;QAC7B,KAAK,MAAM;YACT,OAAO,MAAM,KAAK,MAAM,CAAC;QAC3B,KAAK,eAAe;YAClB,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ,CAAC;QACpD,KAAK,KAAK;YACR,OAAO,IAAI,CAAC;QACd;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
@@ -6,6 +6,8 @@ export * from './group-by-expression.dto';
6
6
  export * from './redemption-redeem-analytics-request.dto';
7
7
  export * from './retention-analytics.dto';
8
8
  export * from './tag-analytics.dto';
9
+ export * from './transaction-analytics.request.dto';
10
+ export * from './user-analytics.dto';
9
11
  export * from './user-ranking-analytics.dto';
10
12
  export * from './ai-analytics.dto';
11
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":"AAEA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qCAAqC,CAAC;AAEpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
@@ -6,6 +6,9 @@ export * from './group-by-expression.dto.js';
6
6
  export * from './redemption-redeem-analytics-request.dto.js';
7
7
  export * from './retention-analytics.dto.js';
8
8
  export * from './tag-analytics.dto.js';
9
+ export * from './transaction-analytics.request.dto.js';
10
+ // export * from './usage-analytics.dto.js'; // Placeholder - all exports commented out
11
+ export * from './user-analytics.dto.js';
9
12
  export * from './user-ranking-analytics.dto.js';
10
13
  export * from './ai-analytics.dto.js';
11
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":"AAEA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qCAAqC,CAAC;AACpD,qFAAqF;AACrF,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
@@ -1,13 +1,5 @@
1
- /**
2
- * Entity types that support tags for aggregation
3
- */
4
- export declare enum TaggableEntityType {
5
- CAMPAIGN = "campaign",
6
- REDEMPTION = "redemption",
7
- BUSINESS = "business",
8
- TOKEN_METADATA = "token_metadata",
9
- USER_STATUS_TYPE = "user_status_type"
10
- }
1
+ import { TaggableEntityType } from '../../enum/taggable-entity-type.enum';
2
+ export { TaggableEntityType };
11
3
  /**
12
4
  * Request DTO for tags analytics
13
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tag-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;CACtC;AAED;;;;GAIG;AACH,qBAAa,sBAAsB;IAUjC,WAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAM7B,UAAU,EAAE,kBAAkB,CAA+B;IAM7D,KAAK,EAAE,MAAM,CAAK;CACnB;AAED;;GAEG;AACH,qBAAa,WAAW;IAMtB,GAAG,EAAE,MAAM,CAAM;IAMjB,KAAK,EAAE,MAAM,CAAK;IAYlB,iBAAiB,EAAE,kBAAkB,EAAE,CAAM;CAC9C;AAED;;;;;GAKG;AACH,qBAAa,uBAAuB;IAKlC,IAAI,EAAE,WAAW,EAAE,CAAM;IAMzB,SAAS,EAAE,MAAM,CAAK;IAMtB,UAAU,EAAE,MAAM,CAAK;IAUvB,WAAW,EAAE,kBAAkB,EAAE,CAAM;CACxC"}
1
+ {"version":3,"file":"tag-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAG1E,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B;;;;GAIG;AACH,qBAAa,sBAAsB;IAUjC,WAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAM7B,UAAU,EAAE,kBAAkB,CAA+B;IAM7D,KAAK,EAAE,MAAM,CAAK;CACnB;AAED;;GAEG;AACH,qBAAa,WAAW;IAMtB,GAAG,EAAE,MAAM,CAAM;IAMjB,KAAK,EAAE,MAAM,CAAK;IAYlB,iBAAiB,EAAE,kBAAkB,EAAE,CAAM;CAC9C;AAED;;;;;GAKG;AACH,qBAAa,uBAAuB;IAKlC,IAAI,EAAE,WAAW,EAAE,CAAM;IAMzB,SAAS,EAAE,MAAM,CAAK;IAMtB,UAAU,EAAE,MAAM,CAAK;IAUvB,WAAW,EAAE,kBAAkB,EAAE,CAAM;CACxC"}
@@ -6,17 +6,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
8
8
  import { IsArray, IsEnum, IsOptional, IsString } from 'class-validator';
9
- /**
10
- * Entity types that support tags for aggregation
11
- */
12
- export var TaggableEntityType;
13
- (function (TaggableEntityType) {
14
- TaggableEntityType["CAMPAIGN"] = "campaign";
15
- TaggableEntityType["REDEMPTION"] = "redemption";
16
- TaggableEntityType["BUSINESS"] = "business";
17
- TaggableEntityType["TOKEN_METADATA"] = "token_metadata";
18
- TaggableEntityType["USER_STATUS_TYPE"] = "user_status_type";
19
- })(TaggableEntityType || (TaggableEntityType = {}));
9
+ import { TaggableEntityType } from '../../enum/taggable-entity-type.enum.js';
10
+ // Re-export for backwards compatibility
11
+ export { TaggableEntityType };
20
12
  /**
21
13
  * Request DTO for tags analytics
22
14
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tag-analytics.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tag-analytics.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/tag-analytics.dto.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export * from './file-upload-entity-type.enum';
20
20
  export * from './signed-url-type.enum';
21
21
  export * from './token-validity-type.enum';
22
22
  export * from './balance-migration-type.enum';
23
+ export * from './taggable-entity-type.enum';
23
24
  export * from './purchase';
24
25
  export * from './campaign';
25
26
  export * from './ai-operation-type.enum';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,YAAY,CAAC;AAE3B,cAAc,YAAY,CAAC;AAE3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,gBAAgB,CAAC;AAG/B,cAAc,wBAAwB,CAAC;AAGvC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,qBAAqB,CAAC;AAGpC,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,YAAY,CAAC;AAE3B,cAAc,YAAY,CAAC;AAE3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,gBAAgB,CAAC;AAG/B,cAAc,wBAAwB,CAAC;AAGvC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,qBAAqB,CAAC;AAGpC,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC"}
@@ -21,6 +21,7 @@ export * from './file-upload-entity-type.enum.js';
21
21
  export * from './signed-url-type.enum.js';
22
22
  export * from './token-validity-type.enum.js';
23
23
  export * from './balance-migration-type.enum.js';
24
+ export * from './taggable-entity-type.enum.js';
24
25
  export * from './purchase/index.js';
25
26
  export * from './campaign/index.js';
26
27
  export * from './ai-operation-type.enum.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,YAAY,CAAC;AAE3B,cAAc,YAAY,CAAC;AAE3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAE3C,gBAAgB;AAChB,cAAc,gBAAgB,CAAC;AAE/B,6BAA6B;AAC7B,cAAc,wBAAwB,CAAC;AAEvC,2DAA2D;AAC3D,cAAc,6BAA6B,CAAC;AAE5C,yDAAyD;AACzD,cAAc,qBAAqB,CAAC;AAEpC,4BAA4B;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/index.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,YAAY,CAAC;AAE3B,cAAc,YAAY,CAAC;AAE3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAE3C,gBAAgB;AAChB,cAAc,gBAAgB,CAAC;AAE/B,6BAA6B;AAC7B,cAAc,wBAAwB,CAAC;AAEvC,2DAA2D;AAC3D,cAAc,6BAA6B,CAAC;AAE5C,yDAAyD;AACzD,cAAc,qBAAqB,CAAC;AAEpC,4BAA4B;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Entity types that support tags for aggregation
3
+ */
4
+ export declare enum TaggableEntityType {
5
+ CAMPAIGN = "campaign",
6
+ REDEMPTION = "redemption",
7
+ BUSINESS = "business",
8
+ TOKEN_METADATA = "token_metadata",
9
+ USER_STATUS_TYPE = "user_status_type"
10
+ }
11
+ //# sourceMappingURL=taggable-entity-type.enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taggable-entity-type.enum.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/taggable-entity-type.enum.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;CACtC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Entity types that support tags for aggregation
3
+ */
4
+ export var TaggableEntityType;
5
+ (function (TaggableEntityType) {
6
+ TaggableEntityType["CAMPAIGN"] = "campaign";
7
+ TaggableEntityType["REDEMPTION"] = "redemption";
8
+ TaggableEntityType["BUSINESS"] = "business";
9
+ TaggableEntityType["TOKEN_METADATA"] = "token_metadata";
10
+ TaggableEntityType["USER_STATUS_TYPE"] = "user_status_type";
11
+ })(TaggableEntityType || (TaggableEntityType = {}));
12
+ //# sourceMappingURL=taggable-entity-type.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taggable-entity-type.enum.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/taggable-entity-type.enum.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,2CAAqB,CAAA;IACrB,+CAAyB,CAAA;IACzB,2CAAqB,CAAA;IACrB,uDAAiC,CAAA;IACjC,2DAAqC,CAAA;AACvC,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B"}
@@ -18,4 +18,17 @@ export type LocationType = typeof LOCATION_TYPES[number];
18
18
  * Keeping for backward compatibility during migration.
19
19
  */
20
20
  export type BookingSource = 'manual' | 'api' | 'import' | 'migration';
21
+ /**
22
+ * Check if a booking status satisfies a requirement type.
23
+ *
24
+ * @param status - Current booking status ('past', 'active', 'future')
25
+ * @param requirement - Required booking status for eligibility
26
+ * @returns true if the status satisfies the requirement
27
+ *
28
+ * @example
29
+ * isBookingStatusValid('active', 'active_future'); // true
30
+ * isBookingStatusValid('past', 'active_future'); // false
31
+ * isBookingStatusValid('future', 'any'); // true
32
+ */
33
+ export declare function isBookingStatusValid(status: BookingStatus, requirement: BookingRequirementType): boolean;
21
34
  //# sourceMappingURL=booking.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"booking.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAC9B,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,eAAe,GACf,KAAK,CAAC;AAEV;;;GAGG;AACH,eAAO,MAAM,cAAc,wEAMjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC"}
1
+ {"version":3,"file":"booking.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAC9B,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,eAAe,GACf,KAAK,CAAC;AAEV;;;GAGG;AACH,eAAO,MAAM,cAAc,wEAMjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEtE;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,sBAAsB,GAClC,OAAO,CAeT"}
@@ -9,4 +9,32 @@ export const LOCATION_TYPES = [
9
9
  'experience', // Experience package (multi-activity, bundle)
10
10
  'destination', // Destination/location-based (city pass, area access)
11
11
  ];
12
+ /**
13
+ * Check if a booking status satisfies a requirement type.
14
+ *
15
+ * @param status - Current booking status ('past', 'active', 'future')
16
+ * @param requirement - Required booking status for eligibility
17
+ * @returns true if the status satisfies the requirement
18
+ *
19
+ * @example
20
+ * isBookingStatusValid('active', 'active_future'); // true
21
+ * isBookingStatusValid('past', 'active_future'); // false
22
+ * isBookingStatusValid('future', 'any'); // true
23
+ */
24
+ export function isBookingStatusValid(status, requirement) {
25
+ switch (requirement) {
26
+ case 'active':
27
+ return status === 'active';
28
+ case 'future':
29
+ return status === 'future';
30
+ case 'past':
31
+ return status === 'past';
32
+ case 'active_future':
33
+ return status === 'active' || status === 'future';
34
+ case 'any':
35
+ return true;
36
+ default:
37
+ return false;
38
+ }
39
+ }
12
40
  //# sourceMappingURL=booking.type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"booking.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAM,qDAAqD;IACrE,SAAS,EAAO,iDAAiD;IACjE,OAAO,EAAS,gDAAgD;IAChE,YAAY,EAAI,8CAA8C;IAC9D,aAAa,EAAG,sDAAsD;CAC9D,CAAC"}
1
+ {"version":3,"file":"booking.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/booking.type.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAM,qDAAqD;IACrE,SAAS,EAAO,iDAAiD;IACjE,OAAO,EAAS,gDAAgD;IAChE,YAAY,EAAI,8CAA8C;IAC9D,aAAa,EAAG,sDAAsD;CAC9D,CAAC;AAUX;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAqB,EACrB,WAAmC;IAEnC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,MAAM,KAAK,QAAQ,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,MAAM,KAAK,QAAQ,CAAC;QAC7B,KAAK,MAAM;YACT,OAAO,MAAM,KAAK,MAAM,CAAC;QAC3B,KAAK,eAAe;YAClB,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ,CAAC;QACpD,KAAK,KAAK;YACR,OAAO,IAAI,CAAC;QACd;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@explorins/pers-shared",
3
- "version": "2.1.184",
3
+ "version": "2.1.186",
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",