@opencrvs/toolkit 1.8.0-rc.ff0a1b5 → 1.8.0-rc.ff1f8e0

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 (38) hide show
  1. package/dist/commons/api/router.d.ts +8086 -3911
  2. package/dist/commons/conditionals/conditionals.d.ts +7 -6
  3. package/dist/commons/events/ActionConfig.d.ts +22281 -7289
  4. package/dist/commons/events/ActionDocument.d.ts +533 -346
  5. package/dist/commons/events/ActionInput.d.ts +197 -125
  6. package/dist/commons/events/AdvancedSearchConfig.d.ts +603 -12
  7. package/dist/commons/events/Constants.d.ts +2 -0
  8. package/dist/commons/events/CountryConfigQueryInput.d.ts +2982 -0
  9. package/dist/commons/events/CreatedAtLocation.d.ts +2 -0
  10. package/dist/commons/events/Draft.d.ts +29 -24
  11. package/dist/commons/events/EventConfig.d.ts +17241 -9571
  12. package/dist/commons/events/EventDocument.d.ts +386 -267
  13. package/dist/commons/events/EventIndex.d.ts +343 -466
  14. package/dist/commons/events/EventInput.d.ts +0 -13
  15. package/dist/commons/events/EventMetadata.d.ts +72 -48
  16. package/dist/commons/events/FieldConfig.d.ts +991 -428
  17. package/dist/commons/events/FieldTypeMapping.d.ts +5 -2
  18. package/dist/commons/events/FieldValue.d.ts +2 -0
  19. package/dist/commons/events/FormConfig.d.ts +7190 -3722
  20. package/dist/commons/events/PageConfig.d.ts +1512 -660
  21. package/dist/commons/events/User.d.ts +31 -7
  22. package/dist/commons/events/WorkqueueColumnConfig.d.ts +53 -0
  23. package/dist/commons/events/WorkqueueConfig.d.ts +3506 -239
  24. package/dist/commons/events/defineConfig.d.ts +1632 -574
  25. package/dist/commons/events/event.d.ts +37 -10
  26. package/dist/commons/events/field.d.ts +25 -20
  27. package/dist/commons/events/index.d.ts +4 -0
  28. package/dist/commons/events/scopes.d.ts +20 -1
  29. package/dist/commons/events/serializer.d.ts +2 -0
  30. package/dist/commons/events/test.utils.d.ts +28 -7
  31. package/dist/commons/events/transactions.d.ts +1 -1
  32. package/dist/commons/events/utils.d.ts +443 -291
  33. package/dist/commons/events/workqueueDefaultColumns.d.ts +3 -0
  34. package/dist/conditionals/index.js +28 -8
  35. package/dist/events/index.js +2153 -865
  36. package/dist/scopes/index.d.ts +94 -6
  37. package/dist/scopes/index.js +42 -21
  38. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import { EventFieldId } from './AdvancedSearchConfig';
2
- import { EventMetadataKeys, EventMetadataParameter } from './EventMetadata';
3
2
  import { SelectOption } from './FieldConfig';
3
+ import { WorkqueueColumnKeys, WorkqueueColumnValue } from './WorkqueueColumnConfig';
4
4
  /**
5
5
  * Creates a function that acts like a callable + static method container.
6
6
  *
@@ -9,18 +9,45 @@ import { SelectOption } from './FieldConfig';
9
9
  * event.hasAction('CLICKED') // → returns conditional
10
10
  */
11
11
  declare function eventFn(fieldId: EventFieldId, options?: SelectOption[]): {
12
- fieldId: "status" | "trackingId";
13
- options: {
14
- value: string;
15
- label: import("./TranslationConfig").TranslationConfig;
16
- }[] | undefined;
17
- config: {
18
- type: "exact";
12
+ range: () => {
13
+ fieldId: "status" | "updatedAt" | "trackingId" | "legalStatus.REGISTERED.createdAt" | "legalStatus.REGISTERED.createdAtLocation";
14
+ options: {
15
+ value: string;
16
+ label: import("./TranslationConfig").TranslationConfig;
17
+ }[] | undefined;
18
+ fieldType: "event";
19
+ } & {
20
+ config: {
21
+ type: "range";
22
+ };
23
+ };
24
+ exact: () => {
25
+ fieldId: "status" | "updatedAt" | "trackingId" | "legalStatus.REGISTERED.createdAt" | "legalStatus.REGISTERED.createdAtLocation";
26
+ options: {
27
+ value: string;
28
+ label: import("./TranslationConfig").TranslationConfig;
29
+ }[] | undefined;
30
+ fieldType: "event";
31
+ } & {
32
+ config: {
33
+ type: "exact";
34
+ };
35
+ };
36
+ fuzzy: () => {
37
+ fieldId: "status" | "updatedAt" | "trackingId" | "legalStatus.REGISTERED.createdAt" | "legalStatus.REGISTERED.createdAtLocation";
38
+ options: {
39
+ value: string;
40
+ label: import("./TranslationConfig").TranslationConfig;
41
+ }[] | undefined;
42
+ fieldType: "event";
43
+ } & {
44
+ config: {
45
+ type: "fuzzy";
46
+ };
19
47
  };
20
- fieldType: "event";
21
48
  };
22
49
  declare const event: typeof eventFn & {
23
- field(field: EventMetadataKeys): EventMetadataParameter;
50
+ field(field: WorkqueueColumnKeys): WorkqueueColumnValue;
24
51
  hasAction: (action: import("./ActionType").ActionType) => import("../conditionals/conditionals").JSONSchema;
25
52
  };
26
53
  export { event };
@@ -1,38 +1,52 @@
1
+ import { FieldConditional } from './Conditional';
2
+ import { TranslationConfig } from './TranslationConfig';
1
3
  /**
2
4
  * Entry point for defining conditional logic or configuration for a form field.
3
5
  * @param fieldId - The ID of the field to define rules or config for.
4
6
  * @returns An object combining conditional methods and configuration builders.
5
7
  */
6
- export declare function field(fieldId: string): {
8
+ export declare function field(fieldId: string, options?: {
9
+ conditionals?: FieldConditional[];
10
+ searchCriteriaLabelPrefix?: TranslationConfig;
11
+ }): {
7
12
  range: () => {
13
+ conditionals?: FieldConditional[];
14
+ searchCriteriaLabelPrefix?: TranslationConfig;
15
+ fieldId: string;
16
+ fieldType: "field";
17
+ } & {
8
18
  config: {
9
19
  type: "range";
10
20
  };
11
- fieldId: string;
12
- fieldType: "field";
13
21
  };
14
22
  exact: () => {
23
+ conditionals?: FieldConditional[];
24
+ searchCriteriaLabelPrefix?: TranslationConfig;
25
+ fieldId: string;
26
+ fieldType: "field";
27
+ } & {
15
28
  config: {
16
29
  type: "exact";
17
30
  };
18
- fieldId: string;
19
- fieldType: "field";
20
31
  };
21
32
  fuzzy: () => {
33
+ conditionals?: FieldConditional[];
34
+ searchCriteriaLabelPrefix?: TranslationConfig;
35
+ fieldId: string;
36
+ fieldType: "field";
37
+ } & {
22
38
  config: {
23
39
  type: "fuzzy";
24
40
  };
25
- fieldId: string;
26
- fieldType: "field";
27
41
  };
42
+ $$field: string;
28
43
  isAfter: () => {
29
44
  days: (days: number) => {
30
45
  inPast: () => import("../conditionals/conditionals").JSONSchema;
31
46
  inFuture: () => import("../conditionals/conditionals").JSONSchema;
32
47
  };
33
48
  date: (date: string | {
34
- [key: string]: unknown;
35
- _fieldId: string;
49
+ $$field: string;
36
50
  }) => import("../conditionals/conditionals").JSONSchema;
37
51
  now: () => import("../conditionals/conditionals").JSONSchema;
38
52
  };
@@ -42,14 +56,12 @@ export declare function field(fieldId: string): {
42
56
  inFuture: () => import("../conditionals/conditionals").JSONSchema;
43
57
  };
44
58
  date: (date: string | {
45
- [key: string]: unknown;
46
- _fieldId: string;
59
+ $$field: string;
47
60
  }) => import("../conditionals/conditionals").JSONSchema;
48
61
  now: () => import("../conditionals/conditionals").JSONSchema;
49
62
  };
50
63
  isEqualTo: (value: string | boolean | {
51
- [key: string]: unknown;
52
- _fieldId: string;
64
+ $$field: string;
53
65
  }) => import("../conditionals/conditionals").JSONSchema;
54
66
  isFalsy: () => import("../conditionals/conditionals").JSONSchema;
55
67
  isUndefined: () => import("../conditionals/conditionals").JSONSchema;
@@ -57,12 +69,5 @@ export declare function field(fieldId: string): {
57
69
  isValidEnglishName: () => import("../conditionals/conditionals").JSONSchema;
58
70
  matches: (pattern: string) => import("../conditionals/conditionals").JSONSchema;
59
71
  isBetween: (min: number, max: number) => import("../conditionals/conditionals").JSONSchema;
60
- getId: () => {
61
- fieldId: string;
62
- };
63
- /**
64
- * @private Internal property used for field reference tracking.
65
- */
66
- _fieldId: string;
67
72
  };
68
73
  //# sourceMappingURL=field.d.ts.map
@@ -1,3 +1,4 @@
1
+ export * from './Constants';
1
2
  export * from './ActionConfig';
2
3
  export * from './offline';
3
4
  export * from './EventConfig';
@@ -6,6 +7,8 @@ export * from './FieldConfig';
6
7
  export * from './PageConfig';
7
8
  export * from './SummaryConfig';
8
9
  export * from './WorkqueueConfig';
10
+ export * from './WorkqueueColumnConfig';
11
+ export * from './workqueueDefaultColumns';
9
12
  export * from './Draft';
10
13
  export * from './EventMetadata';
11
14
  export * from './EventInput';
@@ -31,6 +34,7 @@ export * from './AdvancedSearchConfig';
31
34
  export * from './test.utils';
32
35
  export * from './TemplateConfig';
33
36
  export * from './scopes';
37
+ export * from './serializer';
34
38
  export * from '../conditionals/conditionals';
35
39
  export * from '../conditionals/validate';
36
40
  export * from './field';
@@ -1,6 +1,5 @@
1
1
  import { Scope } from '../scopes';
2
2
  import { ActionType } from './ActionType';
3
- export declare function hasAnyOfScopes(a: Scope[], b: Scope[]): boolean;
4
3
  export declare const CONFIG_GET_ALLOWED_SCOPES: ["record.declare-birth", "record.read", "record.declaration-submit-incomplete", "record.declaration-submit-for-review", "record.register", "record.export-records", "config", "config.update:all"];
5
4
  export declare const CONFIG_SEARCH_ALLOWED_SCOPES: ("search.birth:my-jurisdiction" | "search.birth" | "search.death:my-jurisdiction" | "search.death" | "search.marriage:my-jurisdiction" | "search.marriage")[];
6
5
  export declare const ACTION_ALLOWED_SCOPES: {
@@ -22,5 +21,25 @@ export declare const ACTION_ALLOWED_SCOPES: {
22
21
  UNASSIGN: null;
23
22
  DETECT_DUPLICATE: [];
24
23
  };
24
+ export declare const ACTION_ALLOWED_CONFIGURABLE_SCOPES: {
25
+ READ: never[];
26
+ CREATE: "record.notify"[];
27
+ NOTIFY: "record.notify"[];
28
+ DECLARE: never[];
29
+ DELETE: never[];
30
+ VALIDATE: never[];
31
+ REGISTER: never[];
32
+ PRINT_CERTIFICATE: never[];
33
+ REQUEST_CORRECTION: never[];
34
+ REJECT_CORRECTION: never[];
35
+ APPROVE_CORRECTION: never[];
36
+ MARKED_AS_DUPLICATE: never[];
37
+ ARCHIVE: never[];
38
+ REJECT: never[];
39
+ ASSIGN: never[];
40
+ UNASSIGN: never[];
41
+ DETECT_DUPLICATE: never[];
42
+ };
43
+ export declare function hasAnyOfScopes(a: Scope[], b: Scope[]): boolean;
25
44
  export declare function filterUnallowedActions(actions: ActionType[], userScopes: Scope[]): ActionType[];
26
45
  //# sourceMappingURL=scopes.d.ts.map
@@ -0,0 +1,2 @@
1
+ export { deserializeQuery } from './serializers/user/deserializer';
2
+ //# sourceMappingURL=serializer.d.ts.map
@@ -1,3 +1,4 @@
1
+ import { UUID } from '../uuid';
1
2
  import { ActionDocument, ActionUpdate, EventState } from './ActionDocument';
2
3
  import { ArchiveActionInput, AssignActionInput, DeclareActionInput, RegisterActionInput, RejectDeclarationActionInput, RequestCorrectionActionInput, UnassignActionInput, ValidateActionInput } from './ActionInput';
3
4
  import { ActionType } from './ActionType';
@@ -6,8 +7,8 @@ import { EventConfig } from './EventConfig';
6
7
  import { EventDocument } from './EventDocument';
7
8
  import { EventIndex } from './EventIndex';
8
9
  import { EventInput } from './EventInput';
9
- import { FieldValue } from './FieldValue';
10
10
  import { TranslationConfig } from './TranslationConfig';
11
+ import { WorkqueueConfig } from './WorkqueueConfig';
11
12
  export declare function generateActionDeclarationInput(configuration: EventConfig, action: ActionType): EventState;
12
13
  export declare function generateActionAnnotationInput(configuration: EventConfig, action: ActionType): {};
13
14
  export declare const eventPayloadGenerator: {
@@ -21,7 +22,7 @@ export declare const eventPayloadGenerator: {
21
22
  id: string;
22
23
  };
23
24
  draft: ({ eventId, actionType }: {
24
- eventId: string;
25
+ eventId: UUID;
25
26
  actionType: ActionType;
26
27
  }, input?: Partial<Draft>) => Draft;
27
28
  actions: {
@@ -181,11 +182,13 @@ export declare const eventPayloadGenerator: {
181
182
  type: "ARCHIVE";
182
183
  transactionId: string;
183
184
  declaration: {};
184
- annotation: {
185
- isDuplicate: boolean;
186
- };
185
+ annotation: {};
187
186
  duplicates: never[];
188
187
  eventId: string;
188
+ reason: {
189
+ message: string;
190
+ isDuplicate: boolean;
191
+ };
189
192
  };
190
193
  reject: (eventId: string, input?: Partial<Pick<RejectDeclarationActionInput, "transactionId" | "annotation">>) => {
191
194
  type: "REJECT";
@@ -194,6 +197,9 @@ export declare const eventPayloadGenerator: {
194
197
  annotation: {};
195
198
  duplicates: never[];
196
199
  eventId: string;
200
+ reason: {
201
+ message: string;
202
+ };
197
203
  };
198
204
  register: (eventId: string, input?: Partial<Pick<RegisterActionInput, "transactionId" | "declaration" | "annotation">>) => {
199
205
  type: "REGISTER";
@@ -319,7 +325,22 @@ export declare function generateEventDocument({ configuration, actions }: {
319
325
  configuration: EventConfig;
320
326
  actions: ActionType[];
321
327
  }): EventDocument;
322
- export declare function generateEventDraftDocument(eventId: string, actionType?: ActionType, declaration?: Record<string, FieldValue>): Draft;
323
- export declare const eventQueryDataGenerator: (overrides?: Partial<EventIndex>) => EventIndex;
328
+ export declare function generateEventDraftDocument(eventId: UUID, actionType?: ActionType, declaration?: EventState): Draft;
329
+ export declare function getRandomDatetime(rng: () => number, start: Date, end: Date): string;
330
+ /**
331
+ * Useful for testing when we need deterministic outcome.
332
+ * @param seed - Seed value for the pseudo-random number generator
333
+ *
334
+ * @returns A function that generates pseudo-random numbers between 0 and 1
335
+ */
336
+ export declare function createPseudoRandomNumberGenerator(seed: number): () => number;
337
+ export declare function generateRandomSignature(rng: () => number): string;
338
+ export declare const eventQueryDataGenerator: (overrides?: Partial<EventIndex>, seed?: number) => EventIndex;
324
339
  export declare const generateTranslationConfig: (message: string) => TranslationConfig;
340
+ export declare const BearerTokenByUserType: {
341
+ fieldAgent: string;
342
+ registrationAgent: string;
343
+ localRegistrar: string;
344
+ };
345
+ export declare const generateWorkqueues: (slug?: string) => WorkqueueConfig[];
325
346
  //# sourceMappingURL=test.utils.d.ts.map
@@ -1,2 +1,2 @@
1
- export declare function generateTransactionId(): import("../uuid").UUID;
1
+ export declare function generateTransactionId(): string & import("zod").BRAND<"UUID">;
2
2
  //# sourceMappingURL=transactions.d.ts.map