@opencrvs/toolkit 1.8.0-rc.f8aa0c5 → 1.8.0-rc.f8e0ee5
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.
- package/dist/commons/api/router.d.ts +7549 -6145
- package/dist/commons/conditionals/conditionals.d.ts +0 -4
- package/dist/commons/conditionals/validate.d.ts +0 -6
- package/dist/commons/events/ActionConfig.d.ts +20914 -46894
- package/dist/commons/events/ActionDocument.d.ts +494 -1997
- package/dist/commons/events/ActionInput.d.ts +306 -1506
- package/dist/commons/events/ActionType.d.ts +0 -4
- package/dist/commons/events/AdvancedSearchConfig.d.ts +3 -279
- package/dist/commons/events/CompositeFieldValue.d.ts +0 -28
- package/dist/commons/events/Constants.d.ts +0 -1
- package/dist/commons/events/CountryConfigQueryInput.d.ts +412 -1160
- package/dist/commons/events/CreatedAtLocation.d.ts +2 -1
- package/dist/commons/events/Draft.d.ts +40 -141
- package/dist/commons/events/EventConfig.d.ts +14286 -29320
- package/dist/commons/events/EventDocument.d.ts +355 -1294
- package/dist/commons/events/EventIndex.d.ts +191 -849
- package/dist/commons/events/EventMetadata.d.ts +64 -73
- package/dist/commons/events/FieldConfig.d.ts +888 -1875
- package/dist/commons/events/FieldType.d.ts +1 -4
- package/dist/commons/events/FieldTypeMapping.d.ts +50 -89
- package/dist/commons/events/FieldValue.d.ts +5 -41
- package/dist/commons/events/FormConfig.d.ts +2510 -8840
- package/dist/commons/events/PageConfig.d.ts +1638 -3184
- package/dist/commons/events/SummaryConfig.d.ts +5 -0
- package/dist/commons/events/WorkqueueColumnConfig.d.ts +11 -11
- package/dist/commons/events/WorkqueueConfig.d.ts +1778 -4553
- package/dist/commons/events/defineConfig.d.ts +1440 -4157
- package/dist/commons/events/field.d.ts +0 -9
- package/dist/commons/events/index.d.ts +0 -1
- package/dist/commons/events/scopes.d.ts +3 -2
- package/dist/commons/events/test.utils.d.ts +39 -148
- package/dist/commons/events/transactions.d.ts +1 -1
- package/dist/commons/events/utils.d.ts +19 -10122
- package/dist/conditionals/index.js +18 -38
- package/dist/events/index.js +1681 -2347
- package/dist/scopes/index.d.ts +7 -96
- package/dist/scopes/index.js +26 -105
- package/package.json +3 -3
package/dist/scopes/index.d.ts
CHANGED
@@ -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
|
-
|
90
|
-
declare const
|
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
|
239
|
-
export 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
|
198
|
+
* Parses a configurable scope string into a ConfigurableScopes object.
|
280
199
|
* @param {string} scope - The scope string to parse
|
281
|
-
* @returns {
|
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:
|
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
|
package/dist/scopes/index.js
CHANGED
@@ -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
|
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
|
-
|
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
|
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
|
-
|
324
|
-
|
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 =
|
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 =
|
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.
|
3
|
+
"version": "1.8.0-rc.f8e0ee5",
|
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.
|
23
|
-
"@trpc/server": "11.
|
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": {
|