@opencrvs/toolkit 1.9.6 → 1.9.7-rc.03e4d07
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 +29431 -2353
- package/dist/commons/conditionals/conditionals.d.ts +10 -1
- package/dist/commons/conditionals/validate.d.ts +11 -4
- package/dist/commons/events/ActionConfig.d.ts +25043 -1552
- package/dist/commons/events/ActionDocument.d.ts +803 -1856
- package/dist/commons/events/ActionInput.d.ts +277 -1073
- package/dist/commons/events/ActionType.d.ts +86 -9
- package/dist/commons/events/AdvancedSearchConfig.d.ts +228 -1238
- package/dist/commons/events/CompositeFieldValue.d.ts +29 -190
- package/dist/commons/events/Conditional.d.ts +26 -38
- package/dist/commons/events/Constants.d.ts +1 -1
- package/dist/commons/events/CountryConfigQueryInput.d.ts +1195 -4223
- package/dist/commons/events/DeduplicationConfig.d.ts +18 -150
- package/dist/commons/events/Draft.d.ts +70 -105
- package/dist/commons/events/DynamicFieldValue.d.ts +7 -91
- package/dist/commons/events/EventConfig.d.ts +19988 -2120
- package/dist/commons/events/EventConfigInput.d.ts +1 -1
- package/dist/commons/events/EventDocument.d.ts +320 -1332
- package/dist/commons/events/EventIndex.d.ts +193 -980
- package/dist/commons/events/EventInput.d.ts +3 -8
- package/dist/commons/events/EventMetadata.d.ts +106 -347
- package/dist/commons/events/FieldConfig.d.ts +4545 -12303
- package/dist/commons/events/FieldType.d.ts +20 -4
- package/dist/commons/events/FieldTypeMapping.d.ts +193 -897
- package/dist/commons/events/FieldValue.d.ts +87 -396
- package/dist/commons/events/Flag.d.ts +67 -0
- package/dist/commons/events/FormConfig.d.ts +14022 -721
- package/dist/commons/events/PageConfig.d.ts +9368 -319
- package/dist/commons/events/SummaryConfig.d.ts +14 -161
- package/dist/commons/events/TemplateConfig.d.ts +2 -3
- package/dist/commons/events/TranslationConfig.d.ts +2 -2
- package/dist/commons/events/WorkqueueColumnConfig.d.ts +74 -37
- package/dist/commons/events/WorkqueueConfig.d.ts +1865 -7177
- package/dist/commons/events/deduplication.d.ts +40 -3
- package/dist/commons/events/defineConfig.d.ts +26571 -147
- package/dist/commons/events/eventConfigValidation.d.ts +8 -0
- package/dist/commons/events/index.d.ts +1 -0
- package/dist/commons/events/locations.d.ts +26 -19
- package/dist/commons/events/scopes.d.ts +5 -4
- package/dist/commons/events/state/availableActions.d.ts +0 -2
- package/dist/commons/events/state/flags.d.ts +21 -3
- package/dist/commons/events/state/index.d.ts +22 -19
- package/dist/commons/events/state/utils.d.ts +130 -112
- package/dist/commons/events/test.utils.d.ts +31 -8
- package/dist/commons/events/transactions.d.ts +1 -1
- package/dist/commons/events/utils.d.ts +53180 -367
- package/dist/commons/notification/UserNotifications.d.ts +55 -636
- package/dist/conditionals/index.d.ts.map +1 -1
- package/dist/conditionals/index.js +45 -11
- package/dist/events/deduplication.d.ts +40 -3
- package/dist/events/deduplication.js +34 -0
- package/dist/events/index.js +2077 -1714
- package/dist/notification/index.d.ts.map +1 -1
- package/dist/notification/index.js +1677 -1558
- package/dist/scopes/index.d.ts +167 -132
- package/dist/scopes/index.d.ts.map +1 -1
- package/dist/scopes/index.js +133 -94
- package/package.json +5 -5
- package/dist/commons/events/CreatedAtLocation.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/conditionals/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/conditionals/index.ts"],"names":[],"mappings":"AAaA,cAAc,gCAAgC,CAAA"}
|
|
@@ -35,22 +35,25 @@ __export(conditionals_exports, {
|
|
|
35
35
|
createFieldConditionals: () => createFieldConditionals,
|
|
36
36
|
defineConditional: () => defineConditional,
|
|
37
37
|
defineFormConditional: () => defineFormConditional,
|
|
38
|
+
flag: () => flag,
|
|
38
39
|
isFieldReference: () => isFieldReference,
|
|
39
40
|
never: () => never,
|
|
40
41
|
not: () => not,
|
|
41
42
|
now: () => now,
|
|
42
43
|
or: () => or,
|
|
44
|
+
status: () => status,
|
|
43
45
|
user: () => user
|
|
44
46
|
});
|
|
45
47
|
module.exports = __toCommonJS(conditionals_exports);
|
|
48
|
+
var z4 = __toESM(require("zod/v4"));
|
|
46
49
|
|
|
47
50
|
// ../commons/src/conditionals/conditionals.ts
|
|
48
51
|
var objectHash = __toESM(require("object-hash"));
|
|
49
52
|
|
|
50
53
|
// ../commons/src/events/serializers/user/serializer.ts
|
|
51
|
-
var
|
|
52
|
-
var SerializedUserField =
|
|
53
|
-
$userField:
|
|
54
|
+
var z = __toESM(require("zod/v4"));
|
|
55
|
+
var SerializedUserField = z.object({
|
|
56
|
+
$userField: z.enum([
|
|
54
57
|
"id",
|
|
55
58
|
"name",
|
|
56
59
|
"role",
|
|
@@ -59,11 +62,12 @@ var SerializedUserField = import_zod.z.object({
|
|
|
59
62
|
"firstname",
|
|
60
63
|
"middlename",
|
|
61
64
|
"surname",
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"primaryOfficeId"
|
|
65
|
+
"signature",
|
|
66
|
+
"avatar",
|
|
67
|
+
"primaryOfficeId",
|
|
68
|
+
"administrativeAreaId"
|
|
65
69
|
]),
|
|
66
|
-
$location:
|
|
70
|
+
$location: z.string().optional()
|
|
67
71
|
});
|
|
68
72
|
function userSerializer(userField) {
|
|
69
73
|
return {
|
|
@@ -83,7 +87,7 @@ function userSerializer(userField) {
|
|
|
83
87
|
}
|
|
84
88
|
|
|
85
89
|
// ../commons/src/utils.ts
|
|
86
|
-
var z2 = __toESM(require("zod"));
|
|
90
|
+
var z2 = __toESM(require("zod/v4"));
|
|
87
91
|
var FullNameV1 = z2.array(
|
|
88
92
|
z2.object({
|
|
89
93
|
use: z2.string(),
|
|
@@ -108,9 +112,9 @@ function omitKeyDeep(obj, keyToRemove) {
|
|
|
108
112
|
}
|
|
109
113
|
|
|
110
114
|
// ../commons/src/events/serializers/date/serializer.ts
|
|
111
|
-
var
|
|
112
|
-
var SerializedNowDateTime =
|
|
113
|
-
$$now:
|
|
115
|
+
var import_zod = require("zod");
|
|
116
|
+
var SerializedNowDateTime = import_zod.z.object({
|
|
117
|
+
$$now: import_zod.z.literal(true)
|
|
114
118
|
});
|
|
115
119
|
function todayDateTimeValueSerializer() {
|
|
116
120
|
return { $$now: true };
|
|
@@ -329,6 +333,33 @@ function defineComparison(field, value, keyword) {
|
|
|
329
333
|
required: [field.$$field]
|
|
330
334
|
});
|
|
331
335
|
}
|
|
336
|
+
function flag(flagvalue) {
|
|
337
|
+
return defineConditional({
|
|
338
|
+
type: "object",
|
|
339
|
+
properties: {
|
|
340
|
+
$flags: {
|
|
341
|
+
type: "array",
|
|
342
|
+
contains: {
|
|
343
|
+
type: "string",
|
|
344
|
+
const: flagvalue
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
},
|
|
348
|
+
required: ["$flags"]
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
function status(statusValue) {
|
|
352
|
+
return defineConditional({
|
|
353
|
+
type: "object",
|
|
354
|
+
properties: {
|
|
355
|
+
$status: {
|
|
356
|
+
type: "string",
|
|
357
|
+
const: statusValue
|
|
358
|
+
}
|
|
359
|
+
},
|
|
360
|
+
required: ["$status"]
|
|
361
|
+
});
|
|
362
|
+
}
|
|
332
363
|
function createFieldConditionals(fieldId) {
|
|
333
364
|
const getDayRange = (field, days, clause, referenceDate) => ({
|
|
334
365
|
type: "object",
|
|
@@ -682,3 +713,6 @@ function createFieldConditionals(fieldId) {
|
|
|
682
713
|
})
|
|
683
714
|
};
|
|
684
715
|
}
|
|
716
|
+
|
|
717
|
+
// src/conditionals/index.ts
|
|
718
|
+
z4.globalRegistry.clear();
|
|
@@ -7,25 +7,62 @@ export declare function field(fieldId: string): {
|
|
|
7
7
|
fieldId: string;
|
|
8
8
|
type: "fuzzy";
|
|
9
9
|
options: {
|
|
10
|
-
boost?: number | undefined;
|
|
11
10
|
fuzziness?: string | number | undefined;
|
|
11
|
+
boost?: number | undefined;
|
|
12
|
+
matchAgainst?: string | undefined;
|
|
12
13
|
} | undefined;
|
|
13
14
|
};
|
|
14
15
|
strictMatches: (options?: StrictMatcherOptions) => {
|
|
15
16
|
fieldId: string;
|
|
16
17
|
type: "strict";
|
|
17
18
|
options: {
|
|
18
|
-
value?: string | undefined;
|
|
19
19
|
boost?: number | undefined;
|
|
20
|
+
value?: string | undefined;
|
|
21
|
+
matchAgainst?: string | undefined;
|
|
20
22
|
} | undefined;
|
|
21
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* Creates a date range matcher that finds records where date field fall within a specified range.
|
|
26
|
+
*
|
|
27
|
+
* By default, matches against the field specified in `field()` (e.g., 'mother.dob').
|
|
28
|
+
* When `matchAgainst` is provided, it overwrites the default field and searches against that field with OR logic .
|
|
29
|
+
*
|
|
30
|
+
* @param options - Configuration for the date range matching
|
|
31
|
+
* @param options.days - Number of days before and after the target date to search (creates a ±days range)
|
|
32
|
+
* @param options.pivot - Optional. Distance in days where relevance scoring drops by 50%. Defaults to ⌊(days * 2) / 3⌋
|
|
33
|
+
* @param options.boost - Optional. Scoring boost multiplier for matching results. Defaults to 1
|
|
34
|
+
* @param options.matchAgainst - Optional. Additional field to match against. When provided,
|
|
35
|
+
* the query matches if the field fall within the date range. The default field is always excluded in the search in that case.
|
|
36
|
+
*
|
|
37
|
+
* @returns A clause that matches records where at least one of the specified date field is within the range
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* // Matches only against mother.dob (±365 days)
|
|
41
|
+
* field('mother.dob').dateRangeMatches({ days: 365 })
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* // Matches against mother.age OR spouse.dob, not mother.dob
|
|
45
|
+
* field('mother.dob').dateRangeMatches({
|
|
46
|
+
* days: 365,
|
|
47
|
+
* matchAgainst: $field('mother.age')
|
|
48
|
+
* })
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* // With custom pivot and boost
|
|
52
|
+
* field('mother.dob').dateRangeMatches({
|
|
53
|
+
* days: 730,
|
|
54
|
+
* pivot: 365,
|
|
55
|
+
* boost: 2
|
|
56
|
+
* })
|
|
57
|
+
*/
|
|
22
58
|
dateRangeMatches: (options: DateRangeMatcherOptions) => {
|
|
23
59
|
fieldId: string;
|
|
24
60
|
type: "dateRange";
|
|
25
61
|
options: {
|
|
26
62
|
days: number;
|
|
27
|
-
boost?: number | undefined;
|
|
28
63
|
pivot?: number | undefined;
|
|
64
|
+
boost?: number | undefined;
|
|
65
|
+
matchAgainst?: string | undefined;
|
|
29
66
|
};
|
|
30
67
|
};
|
|
31
68
|
};
|
|
@@ -58,6 +58,40 @@ function field(fieldId) {
|
|
|
58
58
|
type: "strict",
|
|
59
59
|
options
|
|
60
60
|
}),
|
|
61
|
+
/**
|
|
62
|
+
* Creates a date range matcher that finds records where date field fall within a specified range.
|
|
63
|
+
*
|
|
64
|
+
* By default, matches against the field specified in `field()` (e.g., 'mother.dob').
|
|
65
|
+
* When `matchAgainst` is provided, it overwrites the default field and searches against that field with OR logic .
|
|
66
|
+
*
|
|
67
|
+
* @param options - Configuration for the date range matching
|
|
68
|
+
* @param options.days - Number of days before and after the target date to search (creates a ±days range)
|
|
69
|
+
* @param options.pivot - Optional. Distance in days where relevance scoring drops by 50%. Defaults to ⌊(days * 2) / 3⌋
|
|
70
|
+
* @param options.boost - Optional. Scoring boost multiplier for matching results. Defaults to 1
|
|
71
|
+
* @param options.matchAgainst - Optional. Additional field to match against. When provided,
|
|
72
|
+
* the query matches if the field fall within the date range. The default field is always excluded in the search in that case.
|
|
73
|
+
*
|
|
74
|
+
* @returns A clause that matches records where at least one of the specified date field is within the range
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* // Matches only against mother.dob (±365 days)
|
|
78
|
+
* field('mother.dob').dateRangeMatches({ days: 365 })
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* // Matches against mother.age OR spouse.dob, not mother.dob
|
|
82
|
+
* field('mother.dob').dateRangeMatches({
|
|
83
|
+
* days: 365,
|
|
84
|
+
* matchAgainst: $field('mother.age')
|
|
85
|
+
* })
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* // With custom pivot and boost
|
|
89
|
+
* field('mother.dob').dateRangeMatches({
|
|
90
|
+
* days: 730,
|
|
91
|
+
* pivot: 365,
|
|
92
|
+
* boost: 2
|
|
93
|
+
* })
|
|
94
|
+
*/
|
|
61
95
|
dateRangeMatches: (options) => ({
|
|
62
96
|
fieldId,
|
|
63
97
|
type: "dateRange",
|