@opencrvs/toolkit 2.0.0-rc.fdc585a → 2.0.0-rc.ff04b30

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 (44) hide show
  1. package/create-countryconfig/index.js +73 -0
  2. package/create-countryconfig/package.json +11 -0
  3. package/dist/application-config/index.js +27 -28
  4. package/dist/cli.js +392 -128
  5. package/dist/commons/api/router.d.ts +3301 -247
  6. package/dist/commons/conditionals/validate.d.ts +1 -0
  7. package/dist/commons/events/ActionInput.d.ts +108 -0
  8. package/dist/commons/events/Draft.d.ts +3 -0
  9. package/dist/commons/events/EventIndex.d.ts +0 -3
  10. package/dist/commons/events/EventMetadata.d.ts +0 -7
  11. package/dist/commons/events/WorkqueueConfig.d.ts +146 -146
  12. package/dist/commons/events/locations.d.ts +21 -0
  13. package/dist/commons/events/mocks.test.utils.d.ts +19 -0
  14. package/dist/commons/events/scopes.d.ts +24 -1
  15. package/dist/commons/events/state/index.d.ts +0 -4
  16. package/dist/commons/events/state/utils.d.ts +0 -2
  17. package/dist/commons/events/utils.d.ts +1 -1
  18. package/dist/conditionals/index.js +3 -1
  19. package/dist/events/index.js +109 -76
  20. package/dist/migrations/v2.0/checkout-upstream-files.d.ts +1 -1
  21. package/dist/migrations/v2.0/checkout-upstream-files.d.ts.map +1 -1
  22. package/dist/migrations/v2.0/checkout-upstream-files.js +1 -2
  23. package/dist/migrations/v2.0/delete-infrastructure-directory.d.ts +9 -1
  24. package/dist/migrations/v2.0/delete-infrastructure-directory.d.ts.map +1 -1
  25. package/dist/migrations/v2.0/delete-infrastructure-directory.js +66 -20
  26. package/dist/migrations/v2.0/fix-accept-requested-registration-function-type.d.ts +3 -0
  27. package/dist/migrations/v2.0/fix-accept-requested-registration-function-type.d.ts.map +1 -0
  28. package/dist/migrations/v2.0/fix-accept-requested-registration-function-type.js +110 -0
  29. package/dist/migrations/v2.0/index.d.ts +5 -3
  30. package/dist/migrations/v2.0/index.d.ts.map +1 -1
  31. package/dist/migrations/v2.0/index.js +390 -126
  32. package/dist/migrations/v2.0/merge-infrastructure-directory.d.ts +11 -1
  33. package/dist/migrations/v2.0/merge-infrastructure-directory.d.ts.map +1 -1
  34. package/dist/migrations/v2.0/merge-infrastructure-directory.js +17 -16
  35. package/dist/migrations/v2.0/migrate-scopes.d.ts.map +1 -1
  36. package/dist/migrations/v2.0/migrate-scopes.js +54 -30
  37. package/dist/migrations/v2.0/migrate-workqueue-configs.d.ts.map +1 -1
  38. package/dist/migrations/v2.0/migrate-workqueue-configs.js +140 -59
  39. package/dist/notification/index.js +41 -46
  40. package/dist/scopes/index.js +3 -1
  41. package/opencrvs-toolkit-2.0.0-rc.ff04b30.tgz +0 -0
  42. package/package.json +1 -1
  43. package/tsconfig.tsbuildinfo +1 -1
  44. package/opencrvs-toolkit-2.0.0-rc.fdc585a.tgz +0 -0
@@ -293,7 +293,9 @@ var ScopeType = z2.enum([
293
293
  var EncodedScope = z2.string().brand("EncodedScope");
294
294
  var DEFAULT_SCOPE_OPTIONS = {
295
295
  placeOfEvent: JurisdictionFilter.enum.all,
296
- accessLevel: JurisdictionFilter.enum.all
296
+ accessLevel: JurisdictionFilter.enum.all,
297
+ registeredIn: JurisdictionFilter.enum.all,
298
+ declaredIn: JurisdictionFilter.enum.all
297
299
  };
298
300
 
299
301
  // ../commons/src/authentication.ts
@@ -652,7 +654,10 @@ var ActionConditional = z7.discriminatedUnion("type", [
652
654
  ShowConditional,
653
655
  // Action can be shown to the user in the list but as disabled
654
656
  EnableConditional
655
- ]);
657
+ ]).meta({
658
+ description: "Action conditional configuration",
659
+ id: "ActionConditional"
660
+ });
656
661
  var DisplayOnReviewConditional = z7.object({
657
662
  type: z7.literal(ConditionalType.DISPLAY_ON_REVIEW),
658
663
  conditional: Conditional
@@ -980,28 +985,20 @@ function schemaPriority(schema) {
980
985
  return idx === -1 ? 9999 : idx;
981
986
  }
982
987
  function safeUnion(schemas) {
988
+ const sortedSchemas = [...schemas].sort(
989
+ (a, b) => schemaPriority(a) - schemaPriority(b)
990
+ );
983
991
  return z12.any().superRefine((val, ctx) => {
984
- const successful = schemas.filter((s) => s.safeParse(val).success);
985
- if (successful.length === 1) {
986
- return;
987
- }
988
- if (successful.length === 0) {
989
- ctx.addIssue({
990
- code: "invalid_type",
991
- expected: "custom",
992
- message: "Value does not match any schema"
993
- });
994
- return;
995
- }
996
- successful.sort((a, b) => schemaPriority(a) - schemaPriority(b));
997
- const best = successful[0];
998
- if (!best.safeParse(val).success) {
999
- ctx.addIssue({
1000
- expected: "custom",
1001
- code: "invalid_type",
1002
- message: "Value did not match the best schema"
1003
- });
992
+ for (const schema of sortedSchemas) {
993
+ if (schema.safeParse(val).success) {
994
+ return;
995
+ }
1004
996
  }
997
+ ctx.addIssue({
998
+ code: "invalid_type",
999
+ expected: "custom",
1000
+ message: "Value does not match any schema"
1001
+ });
1005
1002
  }).meta({
1006
1003
  description: "Value that matches exactly one of the possible schema types (TextValue, DateValue, DateRangeFieldValue). The best matching schema is chosen by priority."
1007
1004
  });
@@ -1311,6 +1308,9 @@ var FlagConfig = z15.object({
1311
1308
  "Indicates if this flag expects an action to be performed to be cleared."
1312
1309
  ),
1313
1310
  label: TranslationConfig.describe("Human readable label of the flag.")
1311
+ }).meta({
1312
+ description: "Flag configuration",
1313
+ id: "FlagConfig"
1314
1314
  });
1315
1315
  var ActionFlagConfig = z15.object({
1316
1316
  id: Flag,
@@ -1318,6 +1318,9 @@ var ActionFlagConfig = z15.object({
1318
1318
  conditional: Conditional.optional().describe(
1319
1319
  "When conditional is met, the operation is performed on the flag. If not provided, the operation is performed unconditionally."
1320
1320
  )
1321
+ }).meta({
1322
+ description: "Action flag configuration",
1323
+ id: "ActionFlagConfig"
1321
1324
  });
1322
1325
 
1323
1326
  // ../commons/src/events/EventMetadata.ts
@@ -1339,8 +1342,7 @@ var ActionCreationMetadata = z16.object({
1339
1342
  ),
1340
1343
  createdByUserType: z16.enum(["user", "system"]).nullish().describe("Whether the user is a normal user or a system."),
1341
1344
  acceptedAt: z16.iso.datetime().describe("Timestamp when the action request was accepted."),
1342
- createdByRole: z16.string().optional().describe("Role of the user at the time of action request creation."),
1343
- createdBySignature: z16.string().nullish().describe("Signature of the user who created the action request.")
1345
+ createdByRole: z16.string().optional().describe("Role of the user at the time of action request creation.")
1344
1346
  });
1345
1347
  var RegistrationCreationMetadata = ActionCreationMetadata.extend({
1346
1348
  registrationNumber: z16.string().describe(
@@ -1368,9 +1370,6 @@ var EventMetadata = z16.object({
1368
1370
  createdAtLocation: UUID.nullish().describe(
1369
1371
  "Location of the user who created the event."
1370
1372
  ),
1371
- createdBySignature: DocumentPath.nullish().describe(
1372
- "Signature of the user who created the event."
1373
- ),
1374
1373
  updatedAtLocation: UUID.nullish().describe(
1375
1374
  "Location of the user who last changed the status."
1376
1375
  ),
@@ -1663,7 +1662,7 @@ var FieldId = import_v43.default.string().superRefine((val, ctx) => {
1663
1662
  }
1664
1663
  }).describe("Unique identifier for the field");
1665
1664
  var FieldReference = import_v43.default.object({
1666
- $$field: FieldId,
1665
+ $$field: FieldId.describe("Id of the field to reference"),
1667
1666
  $$subfield: import_v43.default.array(import_v43.default.string()).optional().default([]).describe(
1668
1667
  'If the FieldValue is an object, subfield can be used to refer to e.g. `["foo", "bar"]` in `{ foo: { bar: 3 } }`'
1669
1668
  )
@@ -2376,10 +2375,10 @@ var VerificationPageConfig = FormPageConfig.extend({
2376
2375
  type: z21.literal(PageTypes.enum.VERIFICATION),
2377
2376
  actions: VerificationActionConfig
2378
2377
  });
2379
- var PageConfig = z21.discriminatedUnion("type", [
2380
- FormPageConfig,
2381
- VerificationPageConfig
2382
- ]);
2378
+ var PageConfig = z21.discriminatedUnion("type", [FormPageConfig, VerificationPageConfig]).meta({
2379
+ description: "Page configuration",
2380
+ id: "PageConfig"
2381
+ });
2383
2382
 
2384
2383
  // ../commons/src/events/FormConfig.ts
2385
2384
  var DeclarationFormConfig = z22.object({
@@ -3679,7 +3678,7 @@ var _EventConfigBase = z33.object({
3679
3678
  ),
3680
3679
  label: TranslationConfig.describe("Human-readable label for the event type."),
3681
3680
  actions: z33.array(ActionConfig).describe(
3682
- "Configuration of system-defined actions associated with the event."
3681
+ "Configuration of core and custom actions associated with the event."
3683
3682
  ),
3684
3683
  actionOrder: z33.array(z33.string()).optional().describe(
3685
3684
  "Order of actions in the action menu. Use either the action type for core actions or the customActionType for custom actions."
@@ -3691,7 +3690,7 @@ var _EventConfigBase = z33.object({
3691
3690
  "Configuration of fields available in the advanced search feature."
3692
3691
  ),
3693
3692
  flags: z33.array(FlagConfig).optional().default([]).describe(
3694
- "Configuration of flags associated with the actions of this event type."
3693
+ "Configuration of custom flags associated with the actions of this event type."
3695
3694
  ),
3696
3695
  analytics: z33.boolean().optional().default(true).describe(
3697
3696
  "Indicates whether the records of this event type are included in analytics"
@@ -4129,18 +4128,11 @@ var WorkqueueConfigWithoutQuery = WorkqueueConfig.omit({
4129
4128
  query: true,
4130
4129
  columns: true
4131
4130
  });
4132
- var WorkqueueConfigInput = z37.object({
4133
- slug: z37.string().describe("Determines the url of the workqueue."),
4134
- name: TranslationConfig.describe(
4135
- "Title of the workflow (both in navigation and on the page)"
4136
- ),
4137
- query: CountryConfigQueryInputType,
4138
- action: z37.object({ type: WorkqueueActionType }).optional().describe(
4139
- "Workqueue call-to-action button configuration. This determines the quick action button shown on each event card and the action taken when the button is clicked."
4140
- ),
4141
- columns: z37.array(WorkqueueColumn).default(mandatoryColumns),
4142
- icon: AvailableIcons,
4143
- emptyMessage: TranslationConfig.optional()
4131
+ var WorkqueueConfigInput = WorkqueueConfig.extend({
4132
+ query: CountryConfigQueryInputType
4133
+ }).meta({
4134
+ description: "Workqueue configuration",
4135
+ id: "WorkqueueConfig"
4144
4136
  });
4145
4137
  var WorkqueueCountInput = z37.array(
4146
4138
  z37.object({ slug: z37.string(), query: QueryType })
@@ -4180,6 +4172,9 @@ var BaseActionInput = z38.object({
4180
4172
  originalActionId: UUID.optional(),
4181
4173
  // should not be part of base action.
4182
4174
  keepAssignment: z38.boolean().optional(),
4175
+ keepAssignmentIfAccepted: z38.boolean().optional(),
4176
+ keepAssignmentIfRejected: z38.boolean().optional(),
4177
+ waitFor: z38.boolean().optional(),
4183
4178
  // For normal users, the createdAtLocation is resolved on the backend from the user's primaryOfficeId.
4184
4179
  // @TODO: createdAtLocation should be limited to actions that system users can perform. For normal users, it should not be part of the base action.
4185
4180
  createdAtLocation: UUID.nullish().describe(
@@ -365,7 +365,9 @@ var decodeScope = (query) => {
365
365
  };
366
366
  var DEFAULT_SCOPE_OPTIONS = {
367
367
  placeOfEvent: JurisdictionFilter.enum.all,
368
- accessLevel: JurisdictionFilter.enum.all
368
+ accessLevel: JurisdictionFilter.enum.all,
369
+ registeredIn: JurisdictionFilter.enum.all,
370
+ declaredIn: JurisdictionFilter.enum.all
369
371
  };
370
372
  function getScopeOptionValue(scope, option) {
371
373
  const options = "options" in scope ? scope.options : void 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opencrvs/toolkit",
3
- "version": "2.0.0-rc.fdc585a",
3
+ "version": "2.0.0-rc.ff04b30",
4
4
  "description": "OpenCRVS toolkit for building country configurations",
5
5
  "license": "MPL-2.0",
6
6
  "bin": {
@@ -1 +1 @@
1
- {"root":["./src/cli.ts","./src/api/index.ts","./src/application-config/index.ts","./src/conditionals/index.ts","./src/events/deduplication.ts","./src/events/index.ts","./src/migrations/v2.0/add-birth-certificate-issuance-flag.ts","./src/migrations/v2.0/add-resend-invite-notification.ts","./src/migrations/v2.0/checkout-upstream-files.ts","./src/migrations/v2.0/convert-config-files-to-ts.ts","./src/migrations/v2.0/convert-paragraph-to-heading.ts","./src/migrations/v2.0/create-events-index.ts","./src/migrations/v2.0/delete-infrastructure-directory.ts","./src/migrations/v2.0/index.ts","./src/migrations/v2.0/make-built-in-validate-actions-custom.ts","./src/migrations/v2.0/merge-infrastructure-directory.ts","./src/migrations/v2.0/migrate-application-config-url.ts","./src/migrations/v2.0/migrate-scopes.ts","./src/migrations/v2.0/migrate-validated-workqueue-status-to-flag.ts","./src/migrations/v2.0/migrate-workqueue-configs.ts","./src/migrations/v2.0/remove-delete-actions.ts","./src/migrations/v2.0/remove-demo-scope.ts","./src/migrations/v2.0/remove-deprecated-imports.ts","./src/migrations/v2.0/remove-fhir-url-helpers.ts","./src/migrations/v2.0/remove-hearth-migrations.ts","./src/migrations/v2.0/remove-old-statistics-service.ts","./src/migrations/v2.0/remove-pending-certification-flag.ts","./src/migrations/v2.0/remove-review-from-register-action.ts","./src/migrations/v2.0/remove-unused-environment-variables.ts","./src/migrations/v2.0/rename-api-paths.ts","./src/migrations/v2.0/rename-location-parent-id.ts","./src/migrations/v2.0/simplify-analytics-precalculations.ts","./src/migrations/v2.0/update-package-json.ts","./src/notification/index.ts","./src/scopes/index.ts"],"version":"5.6.3"}
1
+ {"root":["./src/cli.ts","./src/api/index.ts","./src/application-config/index.ts","./src/conditionals/index.ts","./src/events/deduplication.ts","./src/events/index.ts","./src/migrations/v2.0/add-birth-certificate-issuance-flag.ts","./src/migrations/v2.0/add-resend-invite-notification.ts","./src/migrations/v2.0/checkout-upstream-files.ts","./src/migrations/v2.0/convert-config-files-to-ts.ts","./src/migrations/v2.0/convert-paragraph-to-heading.ts","./src/migrations/v2.0/create-events-index.ts","./src/migrations/v2.0/delete-infrastructure-directory.ts","./src/migrations/v2.0/fix-accept-requested-registration-function-type.ts","./src/migrations/v2.0/index.ts","./src/migrations/v2.0/make-built-in-validate-actions-custom.ts","./src/migrations/v2.0/merge-infrastructure-directory.ts","./src/migrations/v2.0/migrate-application-config-url.ts","./src/migrations/v2.0/migrate-scopes.ts","./src/migrations/v2.0/migrate-validated-workqueue-status-to-flag.ts","./src/migrations/v2.0/migrate-workqueue-configs.ts","./src/migrations/v2.0/remove-delete-actions.ts","./src/migrations/v2.0/remove-demo-scope.ts","./src/migrations/v2.0/remove-deprecated-imports.ts","./src/migrations/v2.0/remove-fhir-url-helpers.ts","./src/migrations/v2.0/remove-hearth-migrations.ts","./src/migrations/v2.0/remove-old-statistics-service.ts","./src/migrations/v2.0/remove-pending-certification-flag.ts","./src/migrations/v2.0/remove-review-from-register-action.ts","./src/migrations/v2.0/remove-unused-environment-variables.ts","./src/migrations/v2.0/rename-api-paths.ts","./src/migrations/v2.0/rename-location-parent-id.ts","./src/migrations/v2.0/simplify-analytics-precalculations.ts","./src/migrations/v2.0/update-package-json.ts","./src/notification/index.ts","./src/scopes/index.ts"],"version":"5.6.3"}