@opencrvs/toolkit 1.8.0-rc.f8aa0c5 → 1.8.0-rc.f8be155

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 (30) hide show
  1. package/dist/commons/api/router.d.ts +9861 -5350
  2. package/dist/commons/events/ActionConfig.d.ts +0 -2856
  3. package/dist/commons/events/ActionDocument.d.ts +706 -805
  4. package/dist/commons/events/ActionInput.d.ts +602 -602
  5. package/dist/commons/events/AdvancedSearchConfig.d.ts +18 -222
  6. package/dist/commons/events/CompositeFieldValue.d.ts +6 -6
  7. package/dist/commons/events/CountryConfigQueryInput.d.ts +412 -1160
  8. package/dist/commons/events/Draft.d.ts +54 -59
  9. package/dist/commons/events/EventConfig.d.ts +0 -1564
  10. package/dist/commons/events/EventDocument.d.ts +441 -516
  11. package/dist/commons/events/EventIndex.d.ts +210 -630
  12. package/dist/commons/events/EventMetadata.d.ts +7 -49
  13. package/dist/commons/events/FieldConfig.d.ts +0 -198
  14. package/dist/commons/events/FieldTypeMapping.d.ts +16 -16
  15. package/dist/commons/events/FieldValue.d.ts +12 -12
  16. package/dist/commons/events/FormConfig.d.ts +0 -1200
  17. package/dist/commons/events/PageConfig.d.ts +0 -288
  18. package/dist/commons/events/WorkqueueColumnConfig.d.ts +11 -11
  19. package/dist/commons/events/WorkqueueConfig.d.ts +750 -3247
  20. package/dist/commons/events/defineConfig.d.ts +0 -316
  21. package/dist/commons/events/field.d.ts +0 -5
  22. package/dist/commons/events/index.d.ts +0 -1
  23. package/dist/commons/events/scopes.d.ts +2 -1
  24. package/dist/commons/events/test.utils.d.ts +15 -37
  25. package/dist/commons/events/utils.d.ts +9 -466
  26. package/dist/conditionals/index.js +17 -20
  27. package/dist/events/index.js +654 -1053
  28. package/dist/scopes/index.d.ts +7 -96
  29. package/dist/scopes/index.js +26 -105
  30. package/package.json +3 -3
@@ -1,5 +1,4 @@
1
1
  import { z } from 'zod';
2
- import { SearchScopeAccessLevels } from './events';
3
2
  export declare const SCOPES: {
4
3
  readonly NATLSYSADMIN: "natlsysadmin";
5
4
  readonly BYPASSRATELIMIT: "bypassratelimit";
@@ -86,79 +85,8 @@ export declare const SCOPES: {
86
85
  readonly CONFIG_UPDATE_ALL: "config.update:all";
87
86
  readonly USER_DATA_SEEDING: "user.data-seeding";
88
87
  };
89
- export declare const SearchScopes: z.ZodUnion<[z.ZodLiteral<"search.birth:my-jurisdiction">, z.ZodLiteral<"search.birth">, z.ZodLiteral<"search.death:my-jurisdiction">, z.ZodLiteral<"search.death">, z.ZodLiteral<"search.marriage:my-jurisdiction">, z.ZodLiteral<"search.marriage">]>;
90
- declare const LiteralScopes: z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"natlsysadmin">, z.ZodLiteral<"bypassratelimit">, z.ZodLiteral<"declare">, z.ZodLiteral<"register">, z.ZodLiteral<"validate">, z.ZodLiteral<"demo">, z.ZodLiteral<"certify">, z.ZodLiteral<"performance">, z.ZodLiteral<"sysadmin">, z.ZodLiteral<"teams">, z.ZodLiteral<"config">]>, z.ZodUnion<[z.ZodLiteral<"webhook">, z.ZodLiteral<"nationalId">, z.ZodLiteral<"notification-api">, z.ZodLiteral<"recordsearch">]>, z.ZodLiteral<"record.unassign-others">, z.ZodUnion<[z.ZodLiteral<"record.declare-birth">, z.ZodLiteral<"record.import">, z.ZodLiteral<"record.declare-birth">, z.ZodLiteral<"record.declare-birth:my-jurisdiction">, z.ZodLiteral<"record.declare-death">, z.ZodLiteral<"record.declare-death:my-jurisdiction">, z.ZodLiteral<"record.declare-marriage">, z.ZodLiteral<"record.declare-marriage:my-jurisdiction">, z.ZodLiteral<"record.declaration-submit-incomplete">, z.ZodLiteral<"record.declaration-submit-for-review">]>, z.ZodUnion<[z.ZodLiteral<"record.declaration-submit-for-approval">, z.ZodLiteral<"record.declaration-submit-for-updates">, z.ZodLiteral<"record.declaration-edit">, z.ZodLiteral<"record.review-duplicates">, z.ZodLiteral<"record.declaration-archive">, z.ZodLiteral<"record.declaration-reinstate">]>, z.ZodLiteral<"record.register">, z.ZodUnion<[z.ZodLiteral<"record.export-records">, z.ZodLiteral<"record.declaration-print">, z.ZodLiteral<"record.declaration-print-supporting-documents">, z.ZodLiteral<"record.registration-print">, z.ZodLiteral<"record.registration-print&issue-certified-copies">, z.ZodLiteral<"record.registration-print-certified-copies">, z.ZodLiteral<"record.registration-bulk-print-certified-copies">, z.ZodLiteral<"record.registration-verify-certified-copies">]>, z.ZodUnion<[z.ZodLiteral<"record.registration-request-correction">, z.ZodLiteral<"record.registration-correct">, z.ZodLiteral<"record.registration-request-revocation">, z.ZodLiteral<"record.registration-revoke">, z.ZodLiteral<"record.registration-request-reinstatement">, z.ZodLiteral<"record.registration-reinstate">, z.ZodLiteral<"record.confirm-registration">, z.ZodLiteral<"record.reject-registration">]>, z.ZodUnion<[z.ZodLiteral<"search.birth:my-jurisdiction">, z.ZodLiteral<"search.birth">, z.ZodLiteral<"search.death:my-jurisdiction">, z.ZodLiteral<"search.death">, z.ZodLiteral<"search.marriage:my-jurisdiction">, z.ZodLiteral<"search.marriage">]>, z.ZodUnion<[z.ZodLiteral<"record.read">, z.ZodLiteral<"record.read-audit">, z.ZodLiteral<"record.read-comments">, z.ZodLiteral<"record.create-comments">]>, z.ZodUnion<[z.ZodLiteral<"profile.update">, z.ZodLiteral<"profile.electronic-signature">]>, z.ZodUnion<[z.ZodLiteral<"performance.read">, z.ZodLiteral<"performance.read-dashboards">, z.ZodLiteral<"performance.vital-statistics-export">]>, z.ZodUnion<[z.ZodLiteral<"organisation.read-locations:all">, z.ZodLiteral<"organisation.read-locations:my-office">, z.ZodLiteral<"organisation.read-locations:my-jurisdiction">]>, z.ZodUnion<[z.ZodLiteral<"user.read:all">, z.ZodLiteral<"user.read:my-office">, z.ZodLiteral<"user.read:my-jurisdiction">, z.ZodLiteral<"user.read:only-my-audit">, z.ZodLiteral<"user.create:all">, z.ZodLiteral<"user.create:my-jurisdiction">, z.ZodLiteral<"user.update:all">, z.ZodLiteral<"user.update:my-jurisdiction">]>, z.ZodLiteral<"config.update:all">, z.ZodLiteral<"user.data-seeding">]>;
91
- declare const NotifyRecordScope: z.ZodObject<{
92
- type: z.ZodLiteral<"record.notify">;
93
- options: z.ZodObject<{
94
- event: z.ZodArray<z.ZodString, "many">;
95
- }, "strip", z.ZodTypeAny, {
96
- event: string[];
97
- }, {
98
- event: string[];
99
- }>;
100
- }, "strip", z.ZodTypeAny, {
101
- type: "record.notify";
102
- options: {
103
- event: string[];
104
- };
105
- }, {
106
- type: "record.notify";
107
- options: {
108
- event: string[];
109
- };
110
- }>;
111
- declare const SearchScope: z.ZodObject<{
112
- type: z.ZodLiteral<"search">;
113
- options: z.ZodObject<{
114
- event: z.ZodArray<z.ZodString, "many">;
115
- access: z.ZodArray<z.ZodEnum<["my-jurisdiction", "all"]>, "many">;
116
- }, "strip", z.ZodTypeAny, {
117
- event: string[];
118
- access: ("my-jurisdiction" | "all")[];
119
- }, {
120
- event: string[];
121
- access: ("my-jurisdiction" | "all")[];
122
- }>;
123
- }, "strip", z.ZodTypeAny, {
124
- type: "search";
125
- options: {
126
- event: string[];
127
- access: ("my-jurisdiction" | "all")[];
128
- };
129
- }, {
130
- type: "search";
131
- options: {
132
- event: string[];
133
- access: ("my-jurisdiction" | "all")[];
134
- };
135
- }>;
136
- export type SearchScope = z.infer<typeof SearchScope>;
137
- declare const ConfigurableRawScopes: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
138
- type: z.ZodLiteral<"search">;
139
- options: z.ZodObject<{
140
- event: z.ZodArray<z.ZodString, "many">;
141
- access: z.ZodArray<z.ZodEnum<["my-jurisdiction", "all"]>, "many">;
142
- }, "strip", z.ZodTypeAny, {
143
- event: string[];
144
- access: ("my-jurisdiction" | "all")[];
145
- }, {
146
- event: string[];
147
- access: ("my-jurisdiction" | "all")[];
148
- }>;
149
- }, "strip", z.ZodTypeAny, {
150
- type: "search";
151
- options: {
152
- event: string[];
153
- access: ("my-jurisdiction" | "all")[];
154
- };
155
- }, {
156
- type: "search";
157
- options: {
158
- event: string[];
159
- access: ("my-jurisdiction" | "all")[];
160
- };
161
- }>, z.ZodObject<{
88
+ declare const LiteralScopes: z.ZodUnion<[z.ZodLiteral<"natlsysadmin">, z.ZodLiteral<"bypassratelimit">, z.ZodLiteral<"declare">, z.ZodLiteral<"register">, z.ZodLiteral<"validate">, z.ZodLiteral<"demo">, z.ZodLiteral<"certify">, z.ZodLiteral<"performance">, z.ZodLiteral<"sysadmin">, z.ZodLiteral<"teams">, z.ZodLiteral<"config">, z.ZodLiteral<"webhook">, z.ZodLiteral<"nationalId">, z.ZodLiteral<"notification-api">, z.ZodLiteral<"recordsearch">, z.ZodLiteral<"record.import">, z.ZodLiteral<"record.declare-birth">, z.ZodLiteral<"record.declare-birth:my-jurisdiction">, z.ZodLiteral<"record.declare-death">, z.ZodLiteral<"record.declare-death:my-jurisdiction">, z.ZodLiteral<"record.declare-marriage">, z.ZodLiteral<"record.declare-marriage:my-jurisdiction">, z.ZodLiteral<"record.declaration-submit-incomplete">, z.ZodLiteral<"record.declaration-submit-for-review">, z.ZodLiteral<"record.unassign-others">, z.ZodLiteral<"record.declaration-submit-for-approval">, z.ZodLiteral<"record.declaration-submit-for-updates">, z.ZodLiteral<"record.declaration-edit">, z.ZodLiteral<"record.review-duplicates">, z.ZodLiteral<"record.declaration-archive">, z.ZodLiteral<"record.declaration-reinstate">, z.ZodLiteral<"record.register">, z.ZodLiteral<"record.export-records">, z.ZodLiteral<"record.declaration-print">, z.ZodLiteral<"record.declaration-print-supporting-documents">, z.ZodLiteral<"record.registration-print">, z.ZodLiteral<"record.registration-print&issue-certified-copies">, z.ZodLiteral<"record.registration-print-certified-copies">, z.ZodLiteral<"record.registration-bulk-print-certified-copies">, z.ZodLiteral<"record.registration-verify-certified-copies">, z.ZodLiteral<"record.registration-request-correction">, z.ZodLiteral<"record.registration-correct">, z.ZodLiteral<"record.registration-request-revocation">, z.ZodLiteral<"record.registration-revoke">, z.ZodLiteral<"record.registration-request-reinstatement">, z.ZodLiteral<"record.registration-reinstate">, z.ZodLiteral<"record.confirm-registration">, z.ZodLiteral<"record.reject-registration">, z.ZodLiteral<"search.birth:my-jurisdiction">, z.ZodLiteral<"search.birth">, z.ZodLiteral<"search.death:my-jurisdiction">, z.ZodLiteral<"search.death">, z.ZodLiteral<"search.marriage:my-jurisdiction">, z.ZodLiteral<"search.marriage">, z.ZodLiteral<"record.read">, z.ZodLiteral<"record.read-audit">, z.ZodLiteral<"record.read-comments">, z.ZodLiteral<"record.create-comments">, z.ZodLiteral<"profile.update">, z.ZodLiteral<"profile.electronic-signature">, z.ZodLiteral<"performance.read">, z.ZodLiteral<"performance.read-dashboards">, z.ZodLiteral<"performance.vital-statistics-export">, z.ZodLiteral<"organisation.read-locations:all">, z.ZodLiteral<"organisation.read-locations:my-office">, z.ZodLiteral<"organisation.read-locations:my-jurisdiction">, z.ZodLiteral<"user.read:all">, z.ZodLiteral<"user.read:my-office">, z.ZodLiteral<"user.read:my-jurisdiction">, z.ZodLiteral<"user.read:only-my-audit">, z.ZodLiteral<"user.create:all">, z.ZodLiteral<"user.create:my-jurisdiction">, z.ZodLiteral<"user.update:all">, z.ZodLiteral<"user.update:my-jurisdiction">, z.ZodLiteral<"config.update:all">, z.ZodLiteral<"user.data-seeding">]>;
89
+ declare const ConfigurableScopes: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
162
90
  type: z.ZodLiteral<"user.create">;
163
91
  options: z.ZodObject<{
164
92
  role: z.ZodArray<z.ZodString, "many">;
@@ -235,15 +163,8 @@ declare const ConfigurableRawScopes: z.ZodDiscriminatedUnion<"type", [z.ZodObjec
235
163
  event: string[];
236
164
  };
237
165
  }>]>;
238
- type ConfigurableRawScopes = z.infer<typeof ConfigurableRawScopes>;
239
- export type ConfigurableScopeType = ConfigurableRawScopes['type'];
240
- type FlattenedSearchScope = {
241
- type: 'search';
242
- options: Record<string, SearchScopeAccessLevels>;
243
- };
244
- export type ConfigurableScopes = Exclude<ConfigurableRawScopes, {
245
- type: 'search';
246
- }> | FlattenedSearchScope;
166
+ export type ConfigurableScopeType = ConfigurableScopes['type'];
167
+ export type ConfigurableScopes = z.infer<typeof ConfigurableScopes>;
247
168
  export declare function findScope<T extends ConfigurableScopeType>(scopes: string[], scopeType: T): Extract<{
248
169
  type: "user.create";
249
170
  options: {
@@ -272,24 +193,16 @@ export declare function findScope<T extends ConfigurableScopeType>(scopes: strin
272
193
  };
273
194
  }, {
274
195
  type: T;
275
- }> | Extract<FlattenedSearchScope, {
276
- type: T;
277
196
  }> | undefined;
278
197
  /**
279
- * Parses a configurable scope string into a ConfigurableRawScopes object.
198
+ * Parses a configurable scope string into a ConfigurableScopes object.
280
199
  * @param {string} scope - The scope string to parse
281
- * @returns {ConfigurableRawScopes | undefined} The parsed scope object if valid, undefined otherwise
200
+ * @returns {ConfigurableScopes | undefined} The parsed scope object if valid, undefined otherwise
282
201
  * @example
283
202
  * parseScope("user.create[role=field-agent|registration-agent]")
284
203
  * // Returns: { type: "user.create", options: { role: ["field-agent", "registration-agent"] } }
285
204
  */
286
205
  export declare function parseScope(scope: string): {
287
- type: "search";
288
- options: {
289
- event: string[];
290
- access: ("my-jurisdiction" | "all")[];
291
- };
292
- } | {
293
206
  type: "user.create";
294
207
  options: {
295
208
  role: string[];
@@ -323,12 +236,10 @@ export declare function parseScope(scope: string): {
323
236
  * })
324
237
  * // Returns: "record.notify[event=v2.birth|tennis-club-membership]"
325
238
  */
326
- export declare function stringifyScope(scope: z.infer<typeof NotifyRecordScope>): string;
239
+ export declare function stringifyScope(scope: ConfigurableScopes): string;
327
240
  export declare const scopes: Scope[];
328
241
  export type ParsedScopes = NonNullable<ReturnType<typeof parseScope>>;
329
242
  export type RawScopes = z.infer<typeof LiteralScopes> | (string & {});
330
243
  export type Scope = RawScopes;
331
- export declare const ActionScopes: z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"record.declare-birth">, z.ZodLiteral<"record.import">, z.ZodLiteral<"record.declare-birth">, z.ZodLiteral<"record.declare-birth:my-jurisdiction">, z.ZodLiteral<"record.declare-death">, z.ZodLiteral<"record.declare-death:my-jurisdiction">, z.ZodLiteral<"record.declare-marriage">, z.ZodLiteral<"record.declare-marriage:my-jurisdiction">, z.ZodLiteral<"record.declaration-submit-incomplete">, z.ZodLiteral<"record.declaration-submit-for-review">]>, z.ZodUnion<[z.ZodLiteral<"record.declaration-submit-for-approval">, z.ZodLiteral<"record.declaration-submit-for-updates">, z.ZodLiteral<"record.declaration-edit">, z.ZodLiteral<"record.review-duplicates">, z.ZodLiteral<"record.declaration-archive">, z.ZodLiteral<"record.declaration-reinstate">]>, z.ZodLiteral<"record.register">, z.ZodUnion<[z.ZodLiteral<"record.export-records">, z.ZodLiteral<"record.declaration-print">, z.ZodLiteral<"record.declaration-print-supporting-documents">, z.ZodLiteral<"record.registration-print">, z.ZodLiteral<"record.registration-print&issue-certified-copies">, z.ZodLiteral<"record.registration-print-certified-copies">, z.ZodLiteral<"record.registration-bulk-print-certified-copies">, z.ZodLiteral<"record.registration-verify-certified-copies">]>, z.ZodUnion<[z.ZodLiteral<"record.registration-request-correction">, z.ZodLiteral<"record.registration-correct">, z.ZodLiteral<"record.registration-request-revocation">, z.ZodLiteral<"record.registration-revoke">, z.ZodLiteral<"record.registration-request-reinstatement">, z.ZodLiteral<"record.registration-reinstate">, z.ZodLiteral<"record.confirm-registration">, z.ZodLiteral<"record.reject-registration">]>]>;
332
- export type ActionScopes = z.infer<typeof ActionScopes>;
333
244
  export {};
334
245
  //# sourceMappingURL=scopes.d.ts.map
@@ -20,9 +20,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/scopes/index.ts
21
21
  var scopes_exports = {};
22
22
  __export(scopes_exports, {
23
- ActionScopes: () => ActionScopes,
24
23
  SCOPES: () => SCOPES,
25
- SearchScopes: () => SearchScopes,
26
24
  findScope: () => findScope,
27
25
  parseScope: () => parseScope,
28
26
  scopes: () => scopes,
@@ -144,7 +142,7 @@ var SCOPES = {
144
142
  // data seeding
145
143
  USER_DATA_SEEDING: "user.data-seeding"
146
144
  };
147
- var LegacyScopes = import_zod.z.union([
145
+ var LiteralScopes = import_zod.z.union([
148
146
  import_zod.z.literal(SCOPES.NATLSYSADMIN),
149
147
  import_zod.z.literal(SCOPES.BYPASSRATELIMIT),
150
148
  import_zod.z.literal(SCOPES.DECLARE),
@@ -155,16 +153,11 @@ var LegacyScopes = import_zod.z.union([
155
153
  import_zod.z.literal(SCOPES.PERFORMANCE),
156
154
  import_zod.z.literal(SCOPES.SYSADMIN),
157
155
  import_zod.z.literal(SCOPES.TEAMS),
158
- import_zod.z.literal(SCOPES.CONFIG)
159
- ]);
160
- var IntegrationScopes = import_zod.z.union([
156
+ import_zod.z.literal(SCOPES.CONFIG),
161
157
  import_zod.z.literal(SCOPES.WEBHOOK),
162
158
  import_zod.z.literal(SCOPES.NATIONALID),
163
159
  import_zod.z.literal(SCOPES.NOTIFICATION_API),
164
- import_zod.z.literal(SCOPES.RECORDSEARCH)
165
- ]);
166
- var DeclareScopes = import_zod.z.union([
167
- import_zod.z.literal(SCOPES.RECORD_DECLARE),
160
+ import_zod.z.literal(SCOPES.RECORDSEARCH),
168
161
  import_zod.z.literal(SCOPES.RECORD_IMPORT),
169
162
  import_zod.z.literal(SCOPES.RECORD_DECLARE_BIRTH),
170
163
  import_zod.z.literal(SCOPES.RECORD_DECLARE_BIRTH_MY_JURISDICTION),
@@ -173,19 +166,15 @@ var DeclareScopes = import_zod.z.union([
173
166
  import_zod.z.literal(SCOPES.RECORD_DECLARE_MARRIAGE),
174
167
  import_zod.z.literal(SCOPES.RECORD_DECLARE_MARRIAGE_MY_JURISDICTION),
175
168
  import_zod.z.literal(SCOPES.RECORD_SUBMIT_INCOMPLETE),
176
- import_zod.z.literal(SCOPES.RECORD_SUBMIT_FOR_REVIEW)
177
- ]);
178
- var UnassignScope = import_zod.z.literal(SCOPES.RECORD_UNASSIGN_OTHERS);
179
- var ValidateScopes = import_zod.z.union([
169
+ import_zod.z.literal(SCOPES.RECORD_SUBMIT_FOR_REVIEW),
170
+ import_zod.z.literal(SCOPES.RECORD_UNASSIGN_OTHERS),
180
171
  import_zod.z.literal(SCOPES.RECORD_SUBMIT_FOR_APPROVAL),
181
172
  import_zod.z.literal(SCOPES.RECORD_SUBMIT_FOR_UPDATES),
182
173
  import_zod.z.literal(SCOPES.RECORD_DECLARATION_EDIT),
183
174
  import_zod.z.literal(SCOPES.RECORD_REVIEW_DUPLICATES),
184
175
  import_zod.z.literal(SCOPES.RECORD_DECLARATION_ARCHIVE),
185
- import_zod.z.literal(SCOPES.RECORD_DECLARATION_REINSTATE)
186
- ]);
187
- var RegisterScope = import_zod.z.literal(SCOPES.RECORD_REGISTER);
188
- var CertifyScopes = import_zod.z.union([
176
+ import_zod.z.literal(SCOPES.RECORD_DECLARATION_REINSTATE),
177
+ import_zod.z.literal(SCOPES.RECORD_REGISTER),
189
178
  import_zod.z.literal(SCOPES.RECORD_EXPORT_RECORDS),
190
179
  import_zod.z.literal(SCOPES.RECORD_DECLARATION_PRINT),
191
180
  import_zod.z.literal(SCOPES.RECORD_PRINT_RECORDS_SUPPORTING_DOCUMENTS),
@@ -193,9 +182,7 @@ var CertifyScopes = import_zod.z.union([
193
182
  import_zod.z.literal(SCOPES.RECORD_PRINT_ISSUE_CERTIFIED_COPIES),
194
183
  import_zod.z.literal(SCOPES.RECORD_PRINT_CERTIFIED_COPIES),
195
184
  import_zod.z.literal(SCOPES.RECORD_BULK_PRINT_CERTIFIED_COPIES),
196
- import_zod.z.literal(SCOPES.RECORD_REGISTRATION_VERIFY_CERTIFIED_COPIES)
197
- ]);
198
- var CorrectionScopes = import_zod.z.union([
185
+ import_zod.z.literal(SCOPES.RECORD_REGISTRATION_VERIFY_CERTIFIED_COPIES),
199
186
  import_zod.z.literal(SCOPES.RECORD_REGISTRATION_REQUEST_CORRECTION),
200
187
  import_zod.z.literal(SCOPES.RECORD_REGISTRATION_CORRECT),
201
188
  import_zod.z.literal(SCOPES.RECORD_REGISTRATION_REQUEST_REVOCATION),
@@ -203,37 +190,25 @@ var CorrectionScopes = import_zod.z.union([
203
190
  import_zod.z.literal(SCOPES.RECORD_REGISTRATION_REQUEST_REINSTATEMENT),
204
191
  import_zod.z.literal(SCOPES.RECORD_REGISTRATION_REINSTATE),
205
192
  import_zod.z.literal(SCOPES.RECORD_CONFIRM_REGISTRATION),
206
- import_zod.z.literal(SCOPES.RECORD_REJECT_REGISTRATION)
207
- ]);
208
- var SearchScopes = import_zod.z.union([
193
+ import_zod.z.literal(SCOPES.RECORD_REJECT_REGISTRATION),
209
194
  import_zod.z.literal(SCOPES.SEARCH_BIRTH_MY_JURISDICTION),
210
195
  import_zod.z.literal(SCOPES.SEARCH_BIRTH),
211
196
  import_zod.z.literal(SCOPES.SEARCH_DEATH_MY_JURISDICTION),
212
197
  import_zod.z.literal(SCOPES.SEARCH_DEATH),
213
198
  import_zod.z.literal(SCOPES.SEARCH_MARRIAGE_MY_JURISDICTION),
214
- import_zod.z.literal(SCOPES.SEARCH_MARRIAGE)
215
- ]);
216
- var AuditScopes = import_zod.z.union([
199
+ import_zod.z.literal(SCOPES.SEARCH_MARRIAGE),
217
200
  import_zod.z.literal(SCOPES.RECORD_READ),
218
201
  import_zod.z.literal(SCOPES.RECORD_READ_AUDIT),
219
202
  import_zod.z.literal(SCOPES.RECORD_READ_COMMENTS),
220
- import_zod.z.literal(SCOPES.RECORD_CREATE_COMMENTS)
221
- ]);
222
- var ProfileScopes = import_zod.z.union([
203
+ import_zod.z.literal(SCOPES.RECORD_CREATE_COMMENTS),
223
204
  import_zod.z.literal(SCOPES.PROFILE_UPDATE),
224
- import_zod.z.literal(SCOPES.PROFILE_ELECTRONIC_SIGNATURE)
225
- ]);
226
- var PerformanceScopes = import_zod.z.union([
205
+ import_zod.z.literal(SCOPES.PROFILE_ELECTRONIC_SIGNATURE),
227
206
  import_zod.z.literal(SCOPES.PERFORMANCE_READ),
228
207
  import_zod.z.literal(SCOPES.PERFORMANCE_READ_DASHBOARDS),
229
- import_zod.z.literal(SCOPES.PERFORMANCE_EXPORT_VITAL_STATISTICS)
230
- ]);
231
- var OrganisationScopes = import_zod.z.union([
208
+ import_zod.z.literal(SCOPES.PERFORMANCE_EXPORT_VITAL_STATISTICS),
232
209
  import_zod.z.literal(SCOPES.ORGANISATION_READ_LOCATIONS),
233
210
  import_zod.z.literal(SCOPES.ORGANISATION_READ_LOCATIONS_MY_OFFICE),
234
- import_zod.z.literal(SCOPES.ORGANISATION_READ_LOCATIONS_MY_JURISDICTION)
235
- ]);
236
- var UserScopes = import_zod.z.union([
211
+ import_zod.z.literal(SCOPES.ORGANISATION_READ_LOCATIONS_MY_JURISDICTION),
237
212
  import_zod.z.literal(SCOPES.USER_READ),
238
213
  import_zod.z.literal(SCOPES.USER_READ_MY_OFFICE),
239
214
  import_zod.z.literal(SCOPES.USER_READ_MY_JURISDICTION),
@@ -241,27 +216,9 @@ var UserScopes = import_zod.z.union([
241
216
  import_zod.z.literal(SCOPES.USER_CREATE),
242
217
  import_zod.z.literal(SCOPES.USER_CREATE_MY_JURISDICTION),
243
218
  import_zod.z.literal(SCOPES.USER_UPDATE),
244
- import_zod.z.literal(SCOPES.USER_UPDATE_MY_JURISDICTION)
245
- ]);
246
- var ConfigScope = import_zod.z.literal(SCOPES.CONFIG_UPDATE_ALL);
247
- var DataSeedingScope = import_zod.z.literal(SCOPES.USER_DATA_SEEDING);
248
- var LiteralScopes = import_zod.z.union([
249
- LegacyScopes,
250
- IntegrationScopes,
251
- UnassignScope,
252
- DeclareScopes,
253
- ValidateScopes,
254
- RegisterScope,
255
- CertifyScopes,
256
- CorrectionScopes,
257
- SearchScopes,
258
- AuditScopes,
259
- ProfileScopes,
260
- PerformanceScopes,
261
- OrganisationScopes,
262
- UserScopes,
263
- ConfigScope,
264
- DataSeedingScope
219
+ import_zod.z.literal(SCOPES.USER_UPDATE_MY_JURISDICTION),
220
+ import_zod.z.literal(SCOPES.CONFIG_UPDATE_ALL),
221
+ import_zod.z.literal(SCOPES.USER_DATA_SEEDING)
265
222
  ]);
266
223
  var rawConfigurableScopeRegex = /^([a-zA-Z\.]+)\[((?:\w+=[\w.-]+(?:\|[\w.-]+)*)(?:,[\w]+=[\w.-]+(?:\|[\w.-]+)*)*)\]$/;
267
224
  var rawConfigurableScope = import_zod.z.string().regex(rawConfigurableScopeRegex);
@@ -289,51 +246,18 @@ var NotifyRecordScope = import_zod.z.object({
289
246
  event: import_zod.z.array(import_zod.z.string())
290
247
  })
291
248
  });
292
- var SearchScope = import_zod.z.object({
293
- type: import_zod.z.literal("search"),
294
- options: import_zod.z.object({
295
- event: import_zod.z.array(import_zod.z.string()).length(1),
296
- access: import_zod.z.array(import_zod.z.enum(["my-jurisdiction", "all"])).length(1)
297
- })
298
- });
299
- var ConfigurableRawScopes = import_zod.z.discriminatedUnion("type", [
300
- SearchScope,
249
+ var ConfigurableScopes = import_zod.z.discriminatedUnion("type", [
301
250
  CreateUserScope,
302
251
  EditUserScope,
303
252
  WorkqueueScope,
304
253
  NotifyRecordScope
305
254
  ]);
306
- function flattenAndMergeScopes(scopes2) {
307
- if (scopes2.length === 0) return null;
308
- const type = scopes2[0].type;
309
- const mergedOptions = {};
310
- for (const scope of scopes2) {
311
- const entries = Object.entries(scope.options);
312
- if (entries.length < 2) continue;
313
- const sourceValues = entries[0][1];
314
- const targetValues = entries[1][1];
315
- for (let i = 0; i < sourceValues.length; i++) {
316
- mergedOptions[sourceValues[i]] = targetValues[i];
317
- }
318
- }
319
- return { type, options: mergedOptions };
320
- }
321
255
  function findScope(scopes2, scopeType) {
322
256
  const parsedScopes = scopes2.map((rawScope) => parseScope(rawScope));
323
- const searchScopes = parsedScopes.filter((scope) => scope?.type === "search");
324
- const otherScopes = parsedScopes.filter((scope) => scope?.type !== "search");
325
- const mergedSearchScope = flattenAndMergeScopes(searchScopes);
326
- return [...otherScopes, mergedSearchScope].find(
327
- (scope) => scope?.type === scopeType
257
+ return parsedScopes.find(
258
+ (parsedScope) => parsedScope?.type === scopeType
328
259
  );
329
260
  }
330
- function getScopeOptions(rawOptions) {
331
- return rawOptions.split(",").reduce((acc, option) => {
332
- const [key, value] = option.split("=");
333
- acc[key] = value.split("|");
334
- return acc;
335
- }, {});
336
- }
337
261
  function parseScope(scope) {
338
262
  const maybeLiteralScope = LiteralScopes.safeParse(scope);
339
263
  if (maybeLiteralScope.success) {
@@ -347,12 +271,16 @@ function parseScope(scope) {
347
271
  }
348
272
  const rawScope = maybeConfigurableScope.data;
349
273
  const [, type, rawOptions] = rawScope.match(rawConfigurableScopeRegex) ?? [];
350
- const options = getScopeOptions(rawOptions);
274
+ const options = rawOptions.split(",").reduce((acc, option) => {
275
+ const [key, value] = option.split("=");
276
+ acc[key] = value.split("|");
277
+ return acc;
278
+ }, {});
351
279
  const parsedScope = {
352
280
  type,
353
281
  options
354
282
  };
355
- const result = ConfigurableRawScopes.safeParse(parsedScope);
283
+ const result = ConfigurableScopes.safeParse(parsedScope);
356
284
  return result.success ? result.data : void 0;
357
285
  }
358
286
  function stringifyScope(scope) {
@@ -360,10 +288,3 @@ function stringifyScope(scope) {
360
288
  return `${scope.type}[${options}]`;
361
289
  }
362
290
  var scopes = Object.values(SCOPES);
363
- var ActionScopes = import_zod.z.union([
364
- DeclareScopes,
365
- ValidateScopes,
366
- RegisterScope,
367
- CertifyScopes,
368
- CorrectionScopes
369
- ]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opencrvs/toolkit",
3
- "version": "1.8.0-rc.f8aa0c5",
3
+ "version": "1.8.0-rc.f8be155",
4
4
  "description": "OpenCRVS toolkit for building country configurations",
5
5
  "license": "MPL-2.0",
6
6
  "exports": {
@@ -19,8 +19,8 @@
19
19
  "ajv": "^8.17.1",
20
20
  "ajv-formats": "^3.0.1",
21
21
  "superjson": "1.9.0-0",
22
- "@trpc/client": "11.4.2",
23
- "@trpc/server": "11.4.2",
22
+ "@trpc/client": "^11.0.0-rc.648",
23
+ "@trpc/server": "^11.0.0-rc.532",
24
24
  "zod-openapi": "^4.2.4"
25
25
  },
26
26
  "devDependencies": {