grm-shared-library 1.1.200 → 1.1.201

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 (136) hide show
  1. package/dist/cjs/kafka/billing-topics.js +83 -0
  2. package/dist/cjs/kafka/billing-topics.js.map +1 -0
  3. package/dist/cjs/kafka/index.js +1 -0
  4. package/dist/cjs/kafka/index.js.map +1 -1
  5. package/dist/cjs/modules/partner/constants/partner-defaults.const.js +4 -0
  6. package/dist/cjs/modules/partner/constants/partner-defaults.const.js.map +1 -1
  7. package/dist/cjs/modules/partner/constants/partner-kafka.const.js +18 -1
  8. package/dist/cjs/modules/partner/constants/partner-kafka.const.js.map +1 -1
  9. package/dist/cjs/modules/partner/dtos/create-partner-integration.dto.js +34 -0
  10. package/dist/cjs/modules/partner/dtos/create-partner-integration.dto.js.map +1 -1
  11. package/dist/cjs/modules/partner/dtos/partner-member-profile-lookup.dto.js +52 -0
  12. package/dist/cjs/modules/partner/dtos/partner-member-profile-lookup.dto.js.map +1 -0
  13. package/dist/cjs/modules/partner/dtos/partner-member-profile.dto.js +91 -0
  14. package/dist/cjs/modules/partner/dtos/partner-member-profile.dto.js.map +1 -0
  15. package/dist/cjs/modules/partner/dtos/partner-membership-query.dto.js +75 -0
  16. package/dist/cjs/modules/partner/dtos/partner-membership-query.dto.js.map +1 -0
  17. package/dist/cjs/modules/partner/dtos/sync-partner-membership.dto.js +149 -0
  18. package/dist/cjs/modules/partner/dtos/sync-partner-membership.dto.js.map +1 -0
  19. package/dist/cjs/modules/partner/dtos/update-partner-membership.dto.js +38 -0
  20. package/dist/cjs/modules/partner/dtos/update-partner-membership.dto.js.map +1 -0
  21. package/dist/cjs/modules/partner/enums/partner-adapter-operation.enum.js +6 -0
  22. package/dist/cjs/modules/partner/enums/partner-adapter-operation.enum.js.map +1 -1
  23. package/dist/cjs/modules/partner/enums/partner-member-document-type.enum.js +17 -0
  24. package/dist/cjs/modules/partner/enums/partner-member-document-type.enum.js.map +1 -0
  25. package/dist/cjs/modules/partner/enums/partner-member-gender.enum.js +19 -0
  26. package/dist/cjs/modules/partner/enums/partner-member-gender.enum.js.map +1 -0
  27. package/dist/cjs/modules/partner/enums/partner-member-profile-field.enum.js +23 -0
  28. package/dist/cjs/modules/partner/enums/partner-member-profile-field.enum.js.map +1 -0
  29. package/dist/cjs/modules/partner/enums/partner-member-state.enum.js +49 -0
  30. package/dist/cjs/modules/partner/enums/partner-member-state.enum.js.map +1 -0
  31. package/dist/cjs/modules/partner/enums/partner-membership-package-scope.enum.js +24 -0
  32. package/dist/cjs/modules/partner/enums/partner-membership-package-scope.enum.js.map +1 -0
  33. package/dist/cjs/modules/partner/enums/partner-membership-status.enum.js +65 -0
  34. package/dist/cjs/modules/partner/enums/partner-membership-status.enum.js.map +1 -0
  35. package/dist/cjs/modules/partner/enums/partner-membership-subject-type.enum.js +18 -0
  36. package/dist/cjs/modules/partner/enums/partner-membership-subject-type.enum.js.map +1 -0
  37. package/dist/cjs/modules/partner/index.js +16 -0
  38. package/dist/cjs/modules/partner/index.js.map +1 -1
  39. package/dist/cjs/modules/partner/interfaces/partner-member-profile.js +3 -0
  40. package/dist/cjs/modules/partner/interfaces/partner-member-profile.js.map +1 -0
  41. package/dist/cjs/modules/partner/interfaces/partner-membership-descriptor.js +3 -0
  42. package/dist/cjs/modules/partner/interfaces/partner-membership-descriptor.js.map +1 -0
  43. package/dist/cjs/modules/partner/interfaces/partner-membership.js +3 -0
  44. package/dist/cjs/modules/partner/interfaces/partner-membership.js.map +1 -0
  45. package/dist/cjs/modules/partner/utils/partner-membership.util.js +291 -0
  46. package/dist/cjs/modules/partner/utils/partner-membership.util.js.map +1 -0
  47. package/dist/cjs/modules/partner/utils/partner-payload.util.js +84 -2
  48. package/dist/cjs/modules/partner/utils/partner-payload.util.js.map +1 -1
  49. package/dist/cjs/modules/permission/data/permissions.data.js +3 -1
  50. package/dist/cjs/modules/permission/data/permissions.data.js.map +1 -1
  51. package/dist/cjs/modules/permission/enums/permission-actions.enum.js +7 -0
  52. package/dist/cjs/modules/permission/enums/permission-actions.enum.js.map +1 -1
  53. package/dist/cjs/modules/role/data/roles.data.js +8 -0
  54. package/dist/cjs/modules/role/data/roles.data.js.map +1 -1
  55. package/dist/esm/kafka/billing-topics.js +80 -0
  56. package/dist/esm/kafka/billing-topics.js.map +1 -0
  57. package/dist/esm/kafka/index.js +1 -0
  58. package/dist/esm/kafka/index.js.map +1 -1
  59. package/dist/esm/modules/partner/constants/partner-defaults.const.js +4 -0
  60. package/dist/esm/modules/partner/constants/partner-defaults.const.js.map +1 -1
  61. package/dist/esm/modules/partner/constants/partner-kafka.const.js +17 -0
  62. package/dist/esm/modules/partner/constants/partner-kafka.const.js.map +1 -1
  63. package/dist/esm/modules/partner/dtos/create-partner-integration.dto.js +34 -0
  64. package/dist/esm/modules/partner/dtos/create-partner-integration.dto.js.map +1 -1
  65. package/dist/esm/modules/partner/dtos/partner-member-profile-lookup.dto.js +48 -0
  66. package/dist/esm/modules/partner/dtos/partner-member-profile-lookup.dto.js.map +1 -0
  67. package/dist/esm/modules/partner/dtos/partner-member-profile.dto.js +87 -0
  68. package/dist/esm/modules/partner/dtos/partner-member-profile.dto.js.map +1 -0
  69. package/dist/esm/modules/partner/dtos/partner-membership-query.dto.js +71 -0
  70. package/dist/esm/modules/partner/dtos/partner-membership-query.dto.js.map +1 -0
  71. package/dist/esm/modules/partner/dtos/sync-partner-membership.dto.js +144 -0
  72. package/dist/esm/modules/partner/dtos/sync-partner-membership.dto.js.map +1 -0
  73. package/dist/esm/modules/partner/dtos/update-partner-membership.dto.js +34 -0
  74. package/dist/esm/modules/partner/dtos/update-partner-membership.dto.js.map +1 -0
  75. package/dist/esm/modules/partner/enums/partner-adapter-operation.enum.js +6 -0
  76. package/dist/esm/modules/partner/enums/partner-adapter-operation.enum.js.map +1 -1
  77. package/dist/esm/modules/partner/enums/partner-member-document-type.enum.js +14 -0
  78. package/dist/esm/modules/partner/enums/partner-member-document-type.enum.js.map +1 -0
  79. package/dist/esm/modules/partner/enums/partner-member-gender.enum.js +16 -0
  80. package/dist/esm/modules/partner/enums/partner-member-gender.enum.js.map +1 -0
  81. package/dist/esm/modules/partner/enums/partner-member-profile-field.enum.js +20 -0
  82. package/dist/esm/modules/partner/enums/partner-member-profile-field.enum.js.map +1 -0
  83. package/dist/esm/modules/partner/enums/partner-member-state.enum.js +46 -0
  84. package/dist/esm/modules/partner/enums/partner-member-state.enum.js.map +1 -0
  85. package/dist/esm/modules/partner/enums/partner-membership-package-scope.enum.js +21 -0
  86. package/dist/esm/modules/partner/enums/partner-membership-package-scope.enum.js.map +1 -0
  87. package/dist/esm/modules/partner/enums/partner-membership-status.enum.js +62 -0
  88. package/dist/esm/modules/partner/enums/partner-membership-status.enum.js.map +1 -0
  89. package/dist/esm/modules/partner/enums/partner-membership-subject-type.enum.js +15 -0
  90. package/dist/esm/modules/partner/enums/partner-membership-subject-type.enum.js.map +1 -0
  91. package/dist/esm/modules/partner/index.js +16 -0
  92. package/dist/esm/modules/partner/index.js.map +1 -1
  93. package/dist/esm/modules/partner/interfaces/partner-member-profile.js +2 -0
  94. package/dist/esm/modules/partner/interfaces/partner-member-profile.js.map +1 -0
  95. package/dist/esm/modules/partner/interfaces/partner-membership-descriptor.js +2 -0
  96. package/dist/esm/modules/partner/interfaces/partner-membership-descriptor.js.map +1 -0
  97. package/dist/esm/modules/partner/interfaces/partner-membership.js +2 -0
  98. package/dist/esm/modules/partner/interfaces/partner-membership.js.map +1 -0
  99. package/dist/esm/modules/partner/utils/partner-membership.util.js +277 -0
  100. package/dist/esm/modules/partner/utils/partner-membership.util.js.map +1 -0
  101. package/dist/esm/modules/partner/utils/partner-payload.util.js +83 -1
  102. package/dist/esm/modules/partner/utils/partner-payload.util.js.map +1 -1
  103. package/dist/esm/modules/permission/data/permissions.data.js +3 -1
  104. package/dist/esm/modules/permission/data/permissions.data.js.map +1 -1
  105. package/dist/esm/modules/permission/enums/permission-actions.enum.js +7 -0
  106. package/dist/esm/modules/permission/enums/permission-actions.enum.js.map +1 -1
  107. package/dist/esm/modules/role/data/roles.data.js +8 -0
  108. package/dist/esm/modules/role/data/roles.data.js.map +1 -1
  109. package/dist/types/kafka/billing-topics.d.ts +77 -0
  110. package/dist/types/kafka/index.d.ts +1 -0
  111. package/dist/types/modules/partner/constants/partner-defaults.const.d.ts +4 -0
  112. package/dist/types/modules/partner/constants/partner-kafka.const.d.ts +17 -0
  113. package/dist/types/modules/partner/dtos/create-partner-integration.dto.d.ts +4 -0
  114. package/dist/types/modules/partner/dtos/partner-member-profile-lookup.dto.d.ts +45 -0
  115. package/dist/types/modules/partner/dtos/partner-member-profile.dto.d.ts +28 -0
  116. package/dist/types/modules/partner/dtos/partner-membership-query.dto.d.ts +19 -0
  117. package/dist/types/modules/partner/dtos/sync-partner-membership.dto.d.ts +114 -0
  118. package/dist/types/modules/partner/dtos/update-partner-membership.dto.d.ts +18 -0
  119. package/dist/types/modules/partner/enums/partner-adapter-operation.enum.d.ts +7 -1
  120. package/dist/types/modules/partner/enums/partner-member-document-type.enum.d.ts +12 -0
  121. package/dist/types/modules/partner/enums/partner-member-gender.enum.d.ts +14 -0
  122. package/dist/types/modules/partner/enums/partner-member-profile-field.enum.d.ts +18 -0
  123. package/dist/types/modules/partner/enums/partner-member-state.enum.d.ts +39 -0
  124. package/dist/types/modules/partner/enums/partner-membership-package-scope.enum.d.ts +19 -0
  125. package/dist/types/modules/partner/enums/partner-membership-status.enum.d.ts +53 -0
  126. package/dist/types/modules/partner/enums/partner-membership-subject-type.enum.d.ts +13 -0
  127. package/dist/types/modules/partner/index.d.ts +16 -0
  128. package/dist/types/modules/partner/interfaces/partner-integration.d.ts +22 -0
  129. package/dist/types/modules/partner/interfaces/partner-member-profile.d.ts +65 -0
  130. package/dist/types/modules/partner/interfaces/partner-membership-descriptor.d.ts +108 -0
  131. package/dist/types/modules/partner/interfaces/partner-membership.d.ts +149 -0
  132. package/dist/types/modules/partner/interfaces/partner-provider-descriptor.d.ts +16 -0
  133. package/dist/types/modules/partner/utils/partner-membership.util.d.ts +156 -0
  134. package/dist/types/modules/partner/utils/partner-payload.util.d.ts +27 -0
  135. package/dist/types/modules/permission/enums/permission-actions.enum.d.ts +2 -0
  136. package/package.json +1 -1
@@ -86,6 +86,10 @@ export const PARTNER_FIELD_LIMITS = {
86
86
  RELATIONSHIP_MAX_LENGTH: 50,
87
87
  /** Emergency-contact numbers offered to a partner, primary guardian first. */
88
88
  MAX_EMERGENCY_CONTACT_PHONE_NUMBERS: 5,
89
+ /** Human-readable membership description sent alongside a member id. */
90
+ MEMBERSHIP_LABEL_MAX_LENGTH: 100,
91
+ /** A person's full name as a partner membership records it. */
92
+ MEMBER_NAME_MAX_LENGTH: 200,
89
93
  };
90
94
  /**
91
95
  * Header carrying a caller-supplied idempotency key on routing requests. Kept
@@ -1 +1 @@
1
- {"version":3,"file":"partner-defaults.const.js","sourceRoot":"","sources":["../../../../../src/modules/partner/constants/partner-defaults.const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACrC,uFAAuF;IACvF,YAAY,EAAE,CAAC;IACf,8EAA8E;IAC9E,kBAAkB,EAAE,EAAE;IACtB,uDAAuD;IACvD,iBAAiB,EAAE,GAAG;IACtB,yEAAyE;IACzE,kBAAkB,EAAE,KAAK;IACzB,wEAAwE;IACxE,eAAe,EAAE,IAAI;IACrB;;;;OAIG;IACH,uBAAuB,EAAE,EAAE;IAC3B,0DAA0D;IAC1D,QAAQ,EAAE,GAAG;IACb;;;OAGG;IACH,yBAAyB,EAAE,EAAE;IAC7B,0FAA0F;IAC1F,uBAAuB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;CAC/B,CAAC;AAEX;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACjC,0EAA0E;IAC1E,eAAe,EAAE,EAAE;IACnB,0DAA0D;IAC1D,WAAW,EAAE,GAAG;IAChB;;;;;;;OAOG;IACH,aAAa,EAAE,EAAE;CACX,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAA+D;IACzG,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,KAAK;IACpD,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACtD,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACxD,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACtD,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACxD,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACvD,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC,OAAO;IAC/D,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,uBAAuB,CAAC,OAAO;IAC5D,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;CAC3D,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,kBAAkB,EAAE,GAAG;IACvB,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,GAAG;IAC5B,uBAAuB,EAAE,EAAE;IAC3B,8EAA8E;IAC9E,mCAAmC,EAAE,CAAC;CAChC,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,mCAAmC,CAAC"}
1
+ {"version":3,"file":"partner-defaults.const.js","sourceRoot":"","sources":["../../../../../src/modules/partner/constants/partner-defaults.const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACrC,uFAAuF;IACvF,YAAY,EAAE,CAAC;IACf,8EAA8E;IAC9E,kBAAkB,EAAE,EAAE;IACtB,uDAAuD;IACvD,iBAAiB,EAAE,GAAG;IACtB,yEAAyE;IACzE,kBAAkB,EAAE,KAAK;IACzB,wEAAwE;IACxE,eAAe,EAAE,IAAI;IACrB;;;;OAIG;IACH,uBAAuB,EAAE,EAAE;IAC3B,0DAA0D;IAC1D,QAAQ,EAAE,GAAG;IACb;;;OAGG;IACH,yBAAyB,EAAE,EAAE;IAC7B,0FAA0F;IAC1F,uBAAuB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;CAC/B,CAAC;AAEX;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACjC,0EAA0E;IAC1E,eAAe,EAAE,EAAE;IACnB,0DAA0D;IAC1D,WAAW,EAAE,GAAG;IAChB;;;;;;;OAOG;IACH,aAAa,EAAE,EAAE;CACX,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAA+D;IACzG,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,KAAK;IACpD,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACtD,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACxD,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACtD,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACxD,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC,OAAO;IACvD,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC,OAAO;IAC/D,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,uBAAuB,CAAC,OAAO;IAC5D,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO;CAC3D,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,kBAAkB,EAAE,GAAG;IACvB,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,GAAG;IAC5B,uBAAuB,EAAE,EAAE;IAC3B,8EAA8E;IAC9E,mCAAmC,EAAE,CAAC;IACtC,wEAAwE;IACxE,2BAA2B,EAAE,GAAG;IAChC,+DAA+D;IAC/D,sBAAsB,EAAE,GAAG;CACrB,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,mCAAmC,CAAC"}
@@ -14,4 +14,21 @@ export const PARTNER_CONSUMER_GROUPS = {
14
14
  * to.
15
15
  */
16
16
  export const PARTNER_REALTIME_CHANNEL = 'partner:dispatch:events';
17
+ /**
18
+ * Consumer group clarion-partner-services joins to learn who has bought cover.
19
+ *
20
+ * Its own group, separate from every other billing consumer, so a partner
21
+ * membership backlog can never delay a renewal notification and a redeploy of
22
+ * one cannot rebalance the other.
23
+ */
24
+ export const PARTNER_MEMBERSHIP_CONSUMER_GROUP = 'partner-membership-billing';
25
+ /**
26
+ * How long a consumed billing event is remembered, to collapse redeliveries.
27
+ *
28
+ * Kafka gives at-least-once delivery and the outbox retries on its own, so the
29
+ * same activation can arrive several times. Provisioning is idempotent on the
30
+ * unique (integrationId, subjectReference) index anyway - this only saves the
31
+ * wasted work, so a generous window costs nothing.
32
+ */
33
+ export const PARTNER_MEMBERSHIP_EVENT_DEDUP_TTL_SECONDS = 6 * 60 * 60;
17
34
  //# sourceMappingURL=partner-kafka.const.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"partner-kafka.const.js","sourceRoot":"","sources":["../../../../../src/modules/partner/constants/partner-kafka.const.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,kFAAkF;IAClF,YAAY,EAAE,+BAA+B;IAC7C,qEAAqE;IACrE,QAAQ,EAAE,2BAA2B;CAC/B,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,yBAAyB,CAAC"}
1
+ {"version":3,"file":"partner-kafka.const.js","sourceRoot":"","sources":["../../../../../src/modules/partner/constants/partner-kafka.const.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,kFAAkF;IAClF,YAAY,EAAE,+BAA+B;IAC7C,qEAAqE;IACrE,QAAQ,EAAE,2BAA2B;CAC/B,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,yBAAyB,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,4BAA4B,CAAC;AAE9E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC"}
@@ -12,6 +12,7 @@ import { Type } from 'class-transformer';
12
12
  import { ArrayNotEmpty, IsArray, IsBoolean, IsEmail, IsEnum, IsInt, IsObject, IsOptional, IsPositive, IsString, IsUrl, Matches, Max, MaxLength, Min, } from 'class-validator';
13
13
  import { CountryCode } from '../../country/enums/country-code.enum';
14
14
  import { PartnerIntegrationEnvironment } from '../enums/partner-integration-environment.enum';
15
+ import { PartnerMembershipPackageScope } from '../enums/partner-membership-package-scope.enum';
15
16
  import { PartnerProviderCode } from '../enums/partner-provider-code.enum';
16
17
  import { PartnerRoutingMode } from '../enums/partner-routing-mode.enum';
17
18
  import { PartnerServiceCapability } from '../enums/partner-service-capability.enum';
@@ -158,6 +159,39 @@ __decorate([
158
159
  IsOptional(),
159
160
  __metadata("design:type", Number)
160
161
  ], CreatePartnerIntegrationDto.prototype, "priority", void 0);
162
+ __decorate([
163
+ ApiPropertyOptional({
164
+ description: 'Register the subscribers of this organization with the partner as members, ahead of any emergency. ' +
165
+ 'Defaults to false: it sends personal details to a third party, which is a decision to be made ' +
166
+ 'deliberately rather than a side effect of saving the form.',
167
+ example: false,
168
+ }),
169
+ IsBoolean(),
170
+ IsOptional(),
171
+ __metadata("design:type", Boolean)
172
+ ], CreatePartnerIntegrationDto.prototype, "membershipEnabled", void 0);
173
+ __decorate([
174
+ ApiPropertyOptional({
175
+ enum: PartnerMembershipPackageScope,
176
+ description: 'Whose subscribers are registered. ALL (default) covers every package the organization sells; ' +
177
+ 'SELECTED registers only the packages named in membershipPackageIds.',
178
+ }),
179
+ IsEnum(PartnerMembershipPackageScope),
180
+ IsOptional(),
181
+ __metadata("design:type", String)
182
+ ], CreatePartnerIntegrationDto.prototype, "membershipPackageScope", void 0);
183
+ __decorate([
184
+ ApiPropertyOptional({
185
+ description: 'Billing package ids to register, when the scope is SELECTED.',
186
+ example: [12, 13],
187
+ type: [Number],
188
+ }),
189
+ IsArray(),
190
+ IsInt({ each: true }),
191
+ Type(() => Number),
192
+ IsOptional(),
193
+ __metadata("design:type", Array)
194
+ ], CreatePartnerIntegrationDto.prototype, "membershipPackageIds", void 0);
161
195
  __decorate([
162
196
  ApiPropertyOptional({ enum: CountryCode, description: 'Country the partnership operates in. Defaults to KE.' }),
163
197
  IsEnum(CountryCode),
@@ -1 +1 @@
1
- {"version":3,"file":"create-partner-integration.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/create-partner-integration.dto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-partner-integration.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/create-partner-integration.dto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Transform } from 'class-transformer';
11
+ import { ArrayMaxSize, ArrayNotEmpty, IsArray, IsInt, IsOptional, IsString, MaxLength } from 'class-validator';
12
+ /**
13
+ * Ask the service that owns people for the details a partner membership needs.
14
+ *
15
+ * PULLED at provision time rather than pushed on an event, and that is the
16
+ * whole point. An event payload is retained for as long as its topic is and is
17
+ * readable by every consumer group present and future, so a date of birth put
18
+ * on one can never be recalled - and clarion-billing's outbox archives every
19
+ * payload it has ever published in a table nothing prunes. Pulling also means a
20
+ * partner that later wants one more fact changes ONE producer and no event
21
+ * schema at all.
22
+ *
23
+ * Never called on the emergency path. A membership already provisioned carries
24
+ * its own frozen profile, so an alert never waits on this.
25
+ */
26
+ export class PartnerMemberProfileLookupDto {
27
+ }
28
+ __decorate([
29
+ IsArray(),
30
+ ArrayNotEmpty(),
31
+ ArrayMaxSize(200),
32
+ IsString({ each: true }),
33
+ Transform(({ value }) => typeof value === 'string'
34
+ ? value.split(',').map((entry) => entry.trim()).filter(Boolean)
35
+ : value),
36
+ __metadata("design:type", Array)
37
+ ], PartnerMemberProfileLookupDto.prototype, "references", void 0);
38
+ __decorate([
39
+ IsInt(),
40
+ __metadata("design:type", Number)
41
+ ], PartnerMemberProfileLookupDto.prototype, "organizationId", void 0);
42
+ __decorate([
43
+ IsOptional(),
44
+ IsString(),
45
+ MaxLength(2),
46
+ __metadata("design:type", String)
47
+ ], PartnerMemberProfileLookupDto.prototype, "countryCode", void 0);
48
+ //# sourceMappingURL=partner-member-profile-lookup.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-member-profile-lookup.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/partner-member-profile-lookup.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG/G;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,6BAA6B;CA0BzC;AAZG;IATC,OAAO,EAAE;IACT,aAAa,EAAE;IACf,YAAY,CAAC,GAAG,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACrB,OAAO,KAAK,KAAK,QAAQ;QACrB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAC/D,CAAC,CAAC,KAAK,CACd;;iEACqB;AAQtB;IADC,KAAK,EAAE;;qEACgB;AAGxB;IADC,UAAU,EAAE;IAAE,QAAQ,EAAE;IAAE,SAAS,CAAC,CAAC,CAAC;;kEAClB"}
@@ -0,0 +1,87 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { IsEmail, IsEnum, IsISO31661Alpha2, IsOptional, IsString, Length, Matches, MaxLength } from 'class-validator';
11
+ import { Transform } from 'class-transformer';
12
+ import { PartnerMemberDocumentType } from '../enums/partner-member-document-type.enum';
13
+ import { PartnerMemberGender } from '../enums/partner-member-gender.enum';
14
+ /** Blank strings mean "not supplied", not "supplied and empty". */
15
+ const blankToUndefined = ({ value }) => typeof value === 'string' && value.trim() === '' ? undefined : value;
16
+ /**
17
+ * The personal details a partner membership needs, as an operator or an
18
+ * internal caller supplies them.
19
+ *
20
+ * Validated HERE rather than at the partner, because the alternative is
21
+ * discovering that a date of birth was unparseable by watching a member fail to
22
+ * provision hours after somebody typed it. Every field is optional: this DTO is
23
+ * used both to create a profile and to patch one, and which fields are actually
24
+ * REQUIRED is the partner's business, answered from its descriptor.
25
+ */
26
+ export class PartnerMemberProfileDto {
27
+ }
28
+ __decorate([
29
+ IsOptional(),
30
+ IsString(),
31
+ MaxLength(200),
32
+ Transform(blankToUndefined),
33
+ __metadata("design:type", String)
34
+ ], PartnerMemberProfileDto.prototype, "fullName", void 0);
35
+ __decorate([
36
+ IsOptional(),
37
+ IsString(),
38
+ Transform(blankToUndefined),
39
+ Matches(/^\+[1-9]\d{9,14}$/, {
40
+ message: 'phoneNumber must be in international format, e.g. +254712345678',
41
+ }),
42
+ __metadata("design:type", String)
43
+ ], PartnerMemberProfileDto.prototype, "phoneNumber", void 0);
44
+ __decorate([
45
+ IsOptional(),
46
+ IsEmail(),
47
+ Transform(blankToUndefined),
48
+ __metadata("design:type", String)
49
+ ], PartnerMemberProfileDto.prototype, "email", void 0);
50
+ __decorate([
51
+ IsOptional(),
52
+ IsString(),
53
+ Transform(blankToUndefined),
54
+ Matches(/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/, {
55
+ message: 'dateOfBirth must be a calendar date in YYYY-MM-DD form',
56
+ }),
57
+ __metadata("design:type", String)
58
+ ], PartnerMemberProfileDto.prototype, "dateOfBirth", void 0);
59
+ __decorate([
60
+ IsOptional(),
61
+ IsEnum(PartnerMemberGender),
62
+ Transform(blankToUndefined),
63
+ __metadata("design:type", String)
64
+ ], PartnerMemberProfileDto.prototype, "gender", void 0);
65
+ __decorate([
66
+ IsOptional(),
67
+ IsEnum(PartnerMemberDocumentType),
68
+ Transform(blankToUndefined),
69
+ __metadata("design:type", String)
70
+ ], PartnerMemberProfileDto.prototype, "documentType", void 0);
71
+ __decorate([
72
+ IsOptional(),
73
+ IsString(),
74
+ Length(4, 20),
75
+ Transform(blankToUndefined),
76
+ Matches(/^[A-Za-z0-9]+$/, {
77
+ message: 'documentNumber must be alphanumeric',
78
+ }),
79
+ __metadata("design:type", String)
80
+ ], PartnerMemberProfileDto.prototype, "documentNumber", void 0);
81
+ __decorate([
82
+ IsOptional(),
83
+ IsISO31661Alpha2(),
84
+ Transform(({ value }) => typeof value === 'string' && value.trim() !== '' ? value.trim().toUpperCase() : undefined),
85
+ __metadata("design:type", String)
86
+ ], PartnerMemberProfileDto.prototype, "documentCountryCode", void 0);
87
+ //# sourceMappingURL=partner-member-profile.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-member-profile.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/partner-member-profile.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACtH,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,mEAAmE;AACnE,MAAM,gBAAgB,GAAG,CAAC,EAAE,KAAK,EAAsB,EAAE,EAAE,CACvD,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AAEzE;;;;;;;;;GASG;AACH,MAAM,OAAO,uBAAuB;CAiDnC;AA9CG;IAFC,UAAU,EAAE;IAAE,QAAQ,EAAE;IAAE,SAAS,CAAC,GAAG,CAAC;IACxC,SAAS,CAAC,gBAAgB,CAAC;;yDACV;AAWlB;IALC,UAAU,EAAE;IAAE,QAAQ,EAAE;IACxB,SAAS,CAAC,gBAAgB,CAAC;IAC3B,OAAO,CAAC,mBAAmB,EAAE;QAC1B,OAAO,EAAE,iEAAiE;KAC7E,CAAC;;4DACmB;AAIrB;IAFC,UAAU,EAAE;IAAE,OAAO,EAAE;IACvB,SAAS,CAAC,gBAAgB,CAAC;;sDACb;AAQf;IALC,UAAU,EAAE;IAAE,QAAQ,EAAE;IACxB,SAAS,CAAC,gBAAgB,CAAC;IAC3B,OAAO,CAAC,+CAA+C,EAAE;QACtD,OAAO,EAAE,wDAAwD;KACpE,CAAC;;4DACmB;AAIrB;IAFC,UAAU,EAAE;IAAE,MAAM,CAAC,mBAAmB,CAAC;IACzC,SAAS,CAAC,gBAAgB,CAAC;;uDACC;AAI7B;IAFC,UAAU,EAAE;IAAE,MAAM,CAAC,yBAAyB,CAAC;IAC/C,SAAS,CAAC,gBAAgB,CAAC;;6DACa;AAOzC;IALC,UAAU,EAAE;IAAE,QAAQ,EAAE;IAAE,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC;IACvC,SAAS,CAAC,gBAAgB,CAAC;IAC3B,OAAO,CAAC,gBAAgB,EAAE;QACvB,OAAO,EAAE,qCAAqC;KACjD,CAAC;;+DACsB;AAOxB;IAJC,UAAU,EAAE;IAAE,gBAAgB,EAAE;IAChC,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACrB,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAC5F;;oEAC4B"}
@@ -0,0 +1,71 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Transform, Type } from 'class-transformer';
11
+ import { IsBoolean, IsEnum, IsInt, IsOptional, IsString, Max, Min } from 'class-validator';
12
+ import { PartnerMembershipStatus } from '../enums/partner-membership-status.enum';
13
+ import { PartnerMembershipSubjectType } from '../enums/partner-membership-subject-type.enum';
14
+ /** Filters for the membership list an operator works from. */
15
+ export class PartnerMembershipQueryDto {
16
+ }
17
+ __decorate([
18
+ IsOptional(),
19
+ Type(() => Number),
20
+ IsInt(),
21
+ __metadata("design:type", Number)
22
+ ], PartnerMembershipQueryDto.prototype, "integrationId", void 0);
23
+ __decorate([
24
+ IsOptional(),
25
+ IsEnum(PartnerMembershipStatus),
26
+ __metadata("design:type", String)
27
+ ], PartnerMembershipQueryDto.prototype, "status", void 0);
28
+ __decorate([
29
+ IsOptional(),
30
+ IsEnum(PartnerMembershipSubjectType),
31
+ __metadata("design:type", String)
32
+ ], PartnerMembershipQueryDto.prototype, "subjectType", void 0);
33
+ __decorate([
34
+ IsOptional(),
35
+ Type(() => Number),
36
+ IsInt(),
37
+ __metadata("design:type", Number)
38
+ ], PartnerMembershipQueryDto.prototype, "userId", void 0);
39
+ __decorate([
40
+ IsOptional(),
41
+ Type(() => Number),
42
+ IsInt(),
43
+ __metadata("design:type", Number)
44
+ ], PartnerMembershipQueryDto.prototype, "subscriptionId", void 0);
45
+ __decorate([
46
+ IsOptional(),
47
+ IsString(),
48
+ __metadata("design:type", String)
49
+ ], PartnerMembershipQueryDto.prototype, "search", void 0);
50
+ __decorate([
51
+ IsOptional(),
52
+ IsBoolean(),
53
+ Transform(({ value }) => value === true || value === 'true'),
54
+ __metadata("design:type", Boolean)
55
+ ], PartnerMembershipQueryDto.prototype, "needsAttention", void 0);
56
+ __decorate([
57
+ IsOptional(),
58
+ Type(() => Number),
59
+ IsInt(),
60
+ Min(1),
61
+ __metadata("design:type", Number)
62
+ ], PartnerMembershipQueryDto.prototype, "page", void 0);
63
+ __decorate([
64
+ IsOptional(),
65
+ Type(() => Number),
66
+ IsInt(),
67
+ Min(1),
68
+ Max(200),
69
+ __metadata("design:type", Number)
70
+ ], PartnerMembershipQueryDto.prototype, "limit", void 0);
71
+ //# sourceMappingURL=partner-membership-query.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-membership-query.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/partner-membership-query.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAE7F,8DAA8D;AAC9D,MAAM,OAAO,yBAAyB;CAiCrC;AA/BG;IADC,UAAU,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE;;gEACnB;AAGvB;IADC,UAAU,EAAE;IAAE,MAAM,CAAC,uBAAuB,CAAC;;yDACb;AAGjC;IADC,UAAU,EAAE;IAAE,MAAM,CAAC,4BAA4B,CAAC;;8DACR;AAG3C;IADC,UAAU,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE;;yDAC1B;AAGhB;IADC,UAAU,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE;;iEAClB;AAIxB;IADC,UAAU,EAAE;IAAE,QAAQ,EAAE;;yDACT;AAQhB;IAFC,UAAU,EAAE;IAAE,SAAS,EAAE;IACzB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,CAAC;;iEACpC;AAGzB;IADC,UAAU,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE;IAAE,GAAG,CAAC,CAAC,CAAC;;uDACpC;AAGd;IADC,UAAU,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE;IAAE,GAAG,CAAC,CAAC,CAAC;IAAE,GAAG,CAAC,GAAG,CAAC;;wDAC7C"}
@@ -0,0 +1,144 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Type } from 'class-transformer';
11
+ import { ArrayMaxSize, IsArray, IsBoolean, IsEnum, IsInt, IsOptional, IsString, Max, MaxLength, Min, ValidateNested, } from 'class-validator';
12
+ import { CountryCode } from '../../country/enums/country-code.enum';
13
+ import { PartnerMembershipSubjectType } from '../enums/partner-membership-subject-type.enum';
14
+ /**
15
+ * One dependent carried on the subject's cover, BY REFERENCE.
16
+ *
17
+ * Deliberately carries no personal detail. This payload travels over Kafka,
18
+ * where it is retained for as long as the topic is and is readable by anything
19
+ * with consumer access - which is the wrong place for a child's date of birth.
20
+ * The receiving service resolves the person from clarion-authentication, the
21
+ * one service that owns people, at the moment it actually needs them.
22
+ */
23
+ export class SyncPartnerMembershipDependentDto {
24
+ }
25
+ __decorate([
26
+ IsString(),
27
+ MaxLength(100),
28
+ __metadata("design:type", String)
29
+ ], SyncPartnerMembershipDependentDto.prototype, "dependentReference", void 0);
30
+ __decorate([
31
+ IsOptional(),
32
+ IsInt(),
33
+ __metadata("design:type", Number)
34
+ ], SyncPartnerMembershipDependentDto.prototype, "userId", void 0);
35
+ __decorate([
36
+ IsOptional(),
37
+ IsString(),
38
+ MaxLength(50),
39
+ __metadata("design:type", String)
40
+ ], SyncPartnerMembershipDependentDto.prototype, "relationship", void 0);
41
+ /**
42
+ * "Here is everything true about this person's cover right now - make the
43
+ * partner's records agree." The single internal contract for membership
44
+ * provisioning, and deliberately a STATE statement rather than a change
45
+ * notification.
46
+ *
47
+ * Carries IDENTIFIERS AND COMMERCIAL FACTS ONLY - never a person's details.
48
+ * The subject's name, phone, date of birth and identity document are resolved
49
+ * from clarion-authentication when they are needed, because this payload is
50
+ * published on a Kafka topic: whatever is put in it is retained for the topic's
51
+ * lifetime and readable by every consumer, present and future. A date of birth
52
+ * does not belong there, and once it is there it cannot be recalled.
53
+ *
54
+ * It is otherwise SELF-CONTAINED - clarion-partner-services never calls back
55
+ * into clarion-billing to finish the job, the same rule
56
+ * `RouteIncidentToPartnersDto` follows, because the service that owns
57
+ * emergencies must not acquire a synchronous dependency on the service that
58
+ * owns money.
59
+ *
60
+ * It carries NO partnership id. Which partners a subscriber should be
61
+ * registered with is decided from coverage rules inside
62
+ * clarion-partner-services, because that is where the partnerships live;
63
+ * clarion-billing states the FACTS (who, what they bought, what it covers) and
64
+ * makes no partner decisions at all.
65
+ */
66
+ export class SyncPartnerMembershipDto {
67
+ }
68
+ __decorate([
69
+ IsOptional(),
70
+ Type(() => Number),
71
+ IsInt(),
72
+ Min(0),
73
+ __metadata("design:type", Number)
74
+ ], SyncPartnerMembershipDto.prototype, "sequence", void 0);
75
+ __decorate([
76
+ IsOptional(),
77
+ IsString(),
78
+ MaxLength(64),
79
+ __metadata("design:type", String)
80
+ ], SyncPartnerMembershipDto.prototype, "eventId", void 0);
81
+ __decorate([
82
+ IsInt(),
83
+ __metadata("design:type", Number)
84
+ ], SyncPartnerMembershipDto.prototype, "organizationId", void 0);
85
+ __decorate([
86
+ IsEnum(PartnerMembershipSubjectType),
87
+ __metadata("design:type", String)
88
+ ], SyncPartnerMembershipDto.prototype, "subjectType", void 0);
89
+ __decorate([
90
+ IsInt(),
91
+ __metadata("design:type", Number)
92
+ ], SyncPartnerMembershipDto.prototype, "subjectId", void 0);
93
+ __decorate([
94
+ IsOptional(),
95
+ IsInt(),
96
+ __metadata("design:type", Number)
97
+ ], SyncPartnerMembershipDto.prototype, "userId", void 0);
98
+ __decorate([
99
+ IsOptional(),
100
+ IsInt(),
101
+ __metadata("design:type", Number)
102
+ ], SyncPartnerMembershipDto.prototype, "subscriptionId", void 0);
103
+ __decorate([
104
+ IsOptional(),
105
+ IsInt(),
106
+ __metadata("design:type", Number)
107
+ ], SyncPartnerMembershipDto.prototype, "packageId", void 0);
108
+ __decorate([
109
+ IsOptional(),
110
+ IsString(),
111
+ MaxLength(100),
112
+ __metadata("design:type", String)
113
+ ], SyncPartnerMembershipDto.prototype, "packageName", void 0);
114
+ __decorate([
115
+ IsOptional(),
116
+ IsEnum(CountryCode),
117
+ __metadata("design:type", String)
118
+ ], SyncPartnerMembershipDto.prototype, "countryCode", void 0);
119
+ __decorate([
120
+ IsOptional(),
121
+ IsInt(),
122
+ Min(1),
123
+ Max(120),
124
+ __metadata("design:type", Number)
125
+ ], SyncPartnerMembershipDto.prototype, "billingIntervalMonths", void 0);
126
+ __decorate([
127
+ IsBoolean(),
128
+ __metadata("design:type", Boolean)
129
+ ], SyncPartnerMembershipDto.prototype, "active", void 0);
130
+ __decorate([
131
+ IsArray(),
132
+ IsInt({ each: true }),
133
+ ArrayMaxSize(500),
134
+ __metadata("design:type", Array)
135
+ ], SyncPartnerMembershipDto.prototype, "coveredIncidentTypeIds", void 0);
136
+ __decorate([
137
+ IsOptional(),
138
+ IsArray(),
139
+ ValidateNested({ each: true }),
140
+ Type(() => SyncPartnerMembershipDependentDto),
141
+ ArrayMaxSize(50),
142
+ __metadata("design:type", Array)
143
+ ], SyncPartnerMembershipDto.prototype, "dependents", void 0);
144
+ //# sourceMappingURL=sync-partner-membership.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-partner-membership.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/sync-partner-membership.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EACH,YAAY,EACZ,OAAO,EACP,SAAS,EACT,MAAM,EACN,KAAK,EACL,UAAU,EACV,QAAQ,EACR,GAAG,EACH,SAAS,EACT,GAAG,EACH,cAAc,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,OAAO,iCAAiC;CAkB7C;AARG;IADC,QAAQ,EAAE;IAAE,SAAS,CAAC,GAAG,CAAC;;6EACC;AAI5B;IADC,UAAU,EAAE;IAAE,KAAK,EAAE;;iEACN;AAGhB;IADC,UAAU,EAAE;IAAE,QAAQ,EAAE;IAAE,SAAS,CAAC,EAAE,CAAC;;uEAClB;AAG1B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,wBAAwB;CA4FpC;AAhFG;IADC,UAAU,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE;IAAE,GAAG,CAAC,CAAC,CAAC;;0DAChC;AAQlB;IADC,UAAU,EAAE;IAAE,QAAQ,EAAE;IAAE,SAAS,CAAC,EAAE,CAAC;;yDACvB;AAGjB;IADC,KAAK,EAAE;;gEACgB;AAGxB;IADC,MAAM,CAAC,4BAA4B,CAAC;;6DACM;AAI3C;IADC,KAAK,EAAE;;2DACW;AAInB;IADC,UAAU,EAAE;IAAE,KAAK,EAAE;;wDACN;AAGhB;IADC,UAAU,EAAE;IAAE,KAAK,EAAE;;gEACE;AAGxB;IADC,UAAU,EAAE;IAAE,KAAK,EAAE;;2DACH;AAInB;IADC,UAAU,EAAE;IAAE,QAAQ,EAAE;IAAE,SAAS,CAAC,GAAG,CAAC;;6DACpB;AAGrB;IADC,UAAU,EAAE;IAAE,MAAM,CAAC,WAAW,CAAC;;6DACR;AAS1B;IADC,UAAU,EAAE;IAAE,KAAK,EAAE;IAAE,GAAG,CAAC,CAAC,CAAC;IAAE,GAAG,CAAC,GAAG,CAAC;;uEACT;AAS/B;IADC,SAAS,EAAE;;wDACK;AASjB;IADC,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAAE,YAAY,CAAC,GAAG,CAAC;;wEAClB;AAiBlC;IAHC,UAAU,EAAE;IAAE,OAAO,EAAE;IAAE,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACvD,IAAI,CAAC,GAAG,EAAE,CAAC,iCAAiC,CAAC;IAC7C,YAAY,CAAC,EAAE,CAAC;;4DACgC"}
@@ -0,0 +1,34 @@
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
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Type } from 'class-transformer';
11
+ import { IsBoolean, IsOptional, ValidateNested } from 'class-validator';
12
+ import { PartnerMemberProfileDto } from './partner-member-profile.dto';
13
+ /**
14
+ * An operator completing or correcting the details behind one membership.
15
+ *
16
+ * The subject, the partnership and the subscription are NOT settable: a
17
+ * membership belongs to the person the platform decided it belongs to, and
18
+ * letting an edit re-point it at somebody else would silently transfer one
19
+ * person's ambulance cover to another.
20
+ */
21
+ export class UpdatePartnerMembershipDto {
22
+ }
23
+ __decorate([
24
+ IsOptional(),
25
+ ValidateNested(),
26
+ Type(() => PartnerMemberProfileDto),
27
+ __metadata("design:type", PartnerMemberProfileDto)
28
+ ], UpdatePartnerMembershipDto.prototype, "profile", void 0);
29
+ __decorate([
30
+ IsOptional(),
31
+ IsBoolean(),
32
+ __metadata("design:type", Boolean)
33
+ ], UpdatePartnerMembershipDto.prototype, "retryNow", void 0);
34
+ //# sourceMappingURL=update-partner-membership.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-partner-membership.dto.js","sourceRoot":"","sources":["../../../../../src/modules/partner/dtos/update-partner-membership.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;;;;;;GAOG;AACH,MAAM,OAAO,0BAA0B;CAWtC;AATG;IADC,UAAU,EAAE;IAAE,cAAc,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC;8BAC1D,uBAAuB;2DAAC;AAQlC;IADC,UAAU,EAAE;IAAE,SAAS,EAAE;;4DACP"}
@@ -24,5 +24,11 @@ export var PartnerAdapterOperation;
24
24
  * never arrived - the one case where re-sending could produce a duplicate.
25
25
  */
26
26
  PartnerAdapterOperation["LOOKUP"] = "LOOKUP";
27
+ /** Registering a person with the partner as a member, ahead of any emergency. */
28
+ PartnerAdapterOperation["PROVISION_MEMBERSHIP"] = "PROVISION_MEMBERSHIP";
29
+ /** Asking the partner whether it already knows this person as a member. */
30
+ PartnerAdapterOperation["LOOKUP_MEMBERSHIP"] = "LOOKUP_MEMBERSHIP";
31
+ /** Adding or correcting the dependents carried on an existing membership. */
32
+ PartnerAdapterOperation["SYNC_MEMBERSHIP_DEPENDENTS"] = "SYNC_MEMBERSHIP_DEPENDENTS";
27
33
  })(PartnerAdapterOperation || (PartnerAdapterOperation = {}));
28
34
  //# sourceMappingURL=partner-adapter-operation.enum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"partner-adapter-operation.enum.js","sourceRoot":"","sources":["../../../../../src/modules/partner/enums/partner-adapter-operation.enum.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,uBAoBX;AApBD,WAAY,uBAAuB;IAC/B,uEAAuE;IACvE,wDAA6B,CAAA;IAC7B,yCAAyC;IACzC,wDAA6B,CAAA;IAC7B,uCAAuC;IACvC,gDAAqB,CAAA;IACrB,kDAAkD;IAClD,wDAA6B,CAAA;IAC7B,oEAAoE;IACpE,gDAAqB,CAAA;IACrB,yEAAyE;IACzE,0CAAe,CAAA;IACf;;;;;OAKG;IACH,4CAAiB,CAAA;AACrB,CAAC,EApBW,uBAAuB,KAAvB,uBAAuB,QAoBlC"}
1
+ {"version":3,"file":"partner-adapter-operation.enum.js","sourceRoot":"","sources":["../../../../../src/modules/partner/enums/partner-adapter-operation.enum.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,uBA0BX;AA1BD,WAAY,uBAAuB;IAC/B,uEAAuE;IACvE,wDAA6B,CAAA;IAC7B,yCAAyC;IACzC,wDAA6B,CAAA;IAC7B,uCAAuC;IACvC,gDAAqB,CAAA;IACrB,kDAAkD;IAClD,wDAA6B,CAAA;IAC7B,oEAAoE;IACpE,gDAAqB,CAAA;IACrB,yEAAyE;IACzE,0CAAe,CAAA;IACf;;;;;OAKG;IACH,4CAAiB,CAAA;IACjB,iFAAiF;IACjF,wEAA6C,CAAA;IAC7C,2EAA2E;IAC3E,kEAAuC,CAAA;IACvC,6EAA6E;IAC7E,oFAAyD,CAAA;AAC7D,CAAC,EA1BW,uBAAuB,KAAvB,uBAAuB,QA0BlC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * The kind of identity document a partner membership records.
3
+ *
4
+ * Neutral values; each adapter maps them onto its own partner's spelling.
5
+ */
6
+ export var PartnerMemberDocumentType;
7
+ (function (PartnerMemberDocumentType) {
8
+ PartnerMemberDocumentType["PASSPORT"] = "PASSPORT";
9
+ PartnerMemberDocumentType["NATIONAL_ID"] = "NATIONAL_ID";
10
+ PartnerMemberDocumentType["DRIVING_LICENCE"] = "DRIVING_LICENCE";
11
+ /** Any other government-issued identifier. */
12
+ PartnerMemberDocumentType["OTHER"] = "OTHER";
13
+ })(PartnerMemberDocumentType || (PartnerMemberDocumentType = {}));
14
+ //# sourceMappingURL=partner-member-document-type.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-member-document-type.enum.js","sourceRoot":"","sources":["../../../../../src/modules/partner/enums/partner-member-document-type.enum.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,yBAMX;AAND,WAAY,yBAAyB;IACjC,kDAAqB,CAAA;IACrB,wDAA2B,CAAA;IAC3B,gEAAmC,CAAA;IACnC,8CAA8C;IAC9C,4CAAe,CAAA;AACnB,CAAC,EANW,yBAAyB,KAAzB,yBAAyB,QAMpC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Gender, in the platform's own vocabulary.
3
+ *
4
+ * Values are NEUTRAL, not any one partner's wire literals. Rescue.co happens to
5
+ * spell these lowercase; the next partner will spell them differently, and a
6
+ * shared enum carrying the first partner's spelling makes every later adapter
7
+ * translate away from a standard that was never a standard.
8
+ */
9
+ export var PartnerMemberGender;
10
+ (function (PartnerMemberGender) {
11
+ PartnerMemberGender["MALE"] = "MALE";
12
+ PartnerMemberGender["FEMALE"] = "FEMALE";
13
+ PartnerMemberGender["OTHER"] = "OTHER";
14
+ PartnerMemberGender["UNSPECIFIED"] = "UNSPECIFIED";
15
+ })(PartnerMemberGender || (PartnerMemberGender = {}));
16
+ //# sourceMappingURL=partner-member-gender.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-member-gender.enum.js","sourceRoot":"","sources":["../../../../../src/modules/partner/enums/partner-member-gender.enum.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC3B,oCAAa,CAAA;IACb,wCAAiB,CAAA;IACjB,sCAAe,CAAA;IACf,kDAA2B,CAAA;AAC/B,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * The provider-neutral facts about a person that a partner membership may need.
3
+ *
4
+ * The VALUES are the property names on {@link PartnerMemberProfile}, which is
5
+ * what lets "which of this partner's required fields are missing?" be a generic
6
+ * loop rather than a per-partner if-ladder - the same trick that lets one admin
7
+ * form serve every partner's `configFields`.
8
+ */
9
+ export var PartnerMemberProfileField;
10
+ (function (PartnerMemberProfileField) {
11
+ PartnerMemberProfileField["FULL_NAME"] = "fullName";
12
+ PartnerMemberProfileField["PHONE_NUMBER"] = "phoneNumber";
13
+ PartnerMemberProfileField["EMAIL"] = "email";
14
+ PartnerMemberProfileField["DATE_OF_BIRTH"] = "dateOfBirth";
15
+ PartnerMemberProfileField["GENDER"] = "gender";
16
+ PartnerMemberProfileField["DOCUMENT_TYPE"] = "documentType";
17
+ PartnerMemberProfileField["DOCUMENT_NUMBER"] = "documentNumber";
18
+ PartnerMemberProfileField["DOCUMENT_COUNTRY_CODE"] = "documentCountryCode";
19
+ })(PartnerMemberProfileField || (PartnerMemberProfileField = {}));
20
+ //# sourceMappingURL=partner-member-profile-field.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partner-member-profile-field.enum.js","sourceRoot":"","sources":["../../../../../src/modules/partner/enums/partner-member-profile-field.enum.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,yBASX;AATD,WAAY,yBAAyB;IACjC,mDAAsB,CAAA;IACtB,yDAA4B,CAAA;IAC5B,4CAAe,CAAA;IACf,0DAA6B,CAAA;IAC7B,8CAAiB,CAAA;IACjB,2DAA8B,CAAA;IAC9B,+DAAkC,CAAA;IAClC,0EAA6C,CAAA;AACjD,CAAC,EATW,yBAAyB,KAAzB,yBAAyB,QASpC"}