@opencrvs/toolkit 1.9.2 → 1.9.3-rc.0b3cc48
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 +6 -1
- package/dist/commons/conditionals/conditionals.d.ts +44 -0
- package/dist/commons/conditionals/validate.d.ts +2 -1
- package/dist/commons/events/ActionConfig.d.ts +28 -0
- package/dist/commons/events/EventConfig.d.ts +25 -0
- package/dist/commons/events/FormConfig.d.ts +30 -0
- package/dist/commons/events/PageConfig.d.ts +6 -0
- package/dist/commons/events/WorkqueueConfig.d.ts +8 -8
- package/dist/commons/events/defineConfig.d.ts +5 -0
- package/dist/commons/events/field.d.ts +110 -0
- package/dist/commons/events/utils.d.ts +9 -0
- package/dist/conditionals/index.js +65 -5
- package/dist/events/index.js +326 -10
- package/dist/notification/index.js +322 -8
- package/package.json +1 -1
|
@@ -77,6 +77,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
77
77
|
days: (days: number) => {
|
|
78
78
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
79
79
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
80
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
81
|
+
$$field: string;
|
|
82
|
+
$$subfield: string[];
|
|
83
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
84
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
80
85
|
};
|
|
81
86
|
date: (date: string | {
|
|
82
87
|
$$field: string;
|
|
@@ -88,6 +93,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
88
93
|
days: (days: number) => {
|
|
89
94
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
90
95
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
96
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
97
|
+
$$field: string;
|
|
98
|
+
$$subfield: string[];
|
|
99
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
100
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
91
101
|
};
|
|
92
102
|
date: (date: `${string}-${string}-${string}` | {
|
|
93
103
|
$$field: string;
|
|
@@ -125,6 +135,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
125
135
|
days: (days: number) => {
|
|
126
136
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
127
137
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
138
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
139
|
+
$$field: string;
|
|
140
|
+
$$subfield: string[];
|
|
141
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
142
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
128
143
|
};
|
|
129
144
|
date: (date: string | {
|
|
130
145
|
$$field: string;
|
|
@@ -136,6 +151,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
136
151
|
days: (days: number) => {
|
|
137
152
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
138
153
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
154
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
155
|
+
$$field: string;
|
|
156
|
+
$$subfield: string[];
|
|
157
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
158
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
139
159
|
};
|
|
140
160
|
date: (date: `${string}-${string}-${string}` | {
|
|
141
161
|
$$field: string;
|
|
@@ -181,6 +201,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
181
201
|
days: (days: number) => {
|
|
182
202
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
183
203
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
204
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
205
|
+
$$field: string;
|
|
206
|
+
$$subfield: string[];
|
|
207
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
208
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
184
209
|
};
|
|
185
210
|
date: (date: string | {
|
|
186
211
|
$$field: string;
|
|
@@ -192,6 +217,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
192
217
|
days: (days: number) => {
|
|
193
218
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
194
219
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
220
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
221
|
+
$$field: string;
|
|
222
|
+
$$subfield: string[];
|
|
223
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
224
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
195
225
|
};
|
|
196
226
|
date: (date: `${string}-${string}-${string}` | {
|
|
197
227
|
$$field: string;
|
|
@@ -235,6 +265,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
235
265
|
days: (days: number) => {
|
|
236
266
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
237
267
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
268
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
269
|
+
$$field: string;
|
|
270
|
+
$$subfield: string[];
|
|
271
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
272
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
238
273
|
};
|
|
239
274
|
date: (date: string | {
|
|
240
275
|
$$field: string;
|
|
@@ -246,6 +281,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
246
281
|
days: (days: number) => {
|
|
247
282
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
248
283
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
284
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
285
|
+
$$field: string;
|
|
286
|
+
$$subfield: string[];
|
|
287
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
288
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
249
289
|
};
|
|
250
290
|
date: (date: `${string}-${string}-${string}` | {
|
|
251
291
|
$$field: string;
|
|
@@ -288,6 +328,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
288
328
|
days: (days: number) => {
|
|
289
329
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
290
330
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
331
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
332
|
+
$$field: string;
|
|
333
|
+
$$subfield: string[];
|
|
334
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
335
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
291
336
|
};
|
|
292
337
|
date: (date: string | {
|
|
293
338
|
$$field: string;
|
|
@@ -299,6 +344,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
299
344
|
days: (days: number) => {
|
|
300
345
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
301
346
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
347
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
348
|
+
$$field: string;
|
|
349
|
+
$$subfield: string[];
|
|
350
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
351
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
302
352
|
};
|
|
303
353
|
date: (date: `${string}-${string}-${string}` | {
|
|
304
354
|
$$field: string;
|
|
@@ -334,6 +384,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
334
384
|
days: (days: number) => {
|
|
335
385
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
336
386
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
387
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
388
|
+
$$field: string;
|
|
389
|
+
$$subfield: string[];
|
|
390
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
391
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
337
392
|
};
|
|
338
393
|
date: (date: string | {
|
|
339
394
|
$$field: string;
|
|
@@ -345,6 +400,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
345
400
|
days: (days: number) => {
|
|
346
401
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
347
402
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
403
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
404
|
+
$$field: string;
|
|
405
|
+
$$subfield: string[];
|
|
406
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
407
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
348
408
|
};
|
|
349
409
|
date: (date: `${string}-${string}-${string}` | {
|
|
350
410
|
$$field: string;
|
|
@@ -391,6 +451,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
391
451
|
days: (days: number) => {
|
|
392
452
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
393
453
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
454
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
455
|
+
$$field: string;
|
|
456
|
+
$$subfield: string[];
|
|
457
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
458
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
394
459
|
};
|
|
395
460
|
date: (date: string | {
|
|
396
461
|
$$field: string;
|
|
@@ -402,6 +467,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
402
467
|
days: (days: number) => {
|
|
403
468
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
404
469
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
470
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
471
|
+
$$field: string;
|
|
472
|
+
$$subfield: string[];
|
|
473
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
474
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
405
475
|
};
|
|
406
476
|
date: (date: `${string}-${string}-${string}` | {
|
|
407
477
|
$$field: string;
|
|
@@ -439,6 +509,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
439
509
|
days: (days: number) => {
|
|
440
510
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
441
511
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
512
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
513
|
+
$$field: string;
|
|
514
|
+
$$subfield: string[];
|
|
515
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
516
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
442
517
|
};
|
|
443
518
|
date: (date: string | {
|
|
444
519
|
$$field: string;
|
|
@@ -450,6 +525,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
450
525
|
days: (days: number) => {
|
|
451
526
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
452
527
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
528
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
529
|
+
$$field: string;
|
|
530
|
+
$$subfield: string[];
|
|
531
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
532
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
453
533
|
};
|
|
454
534
|
date: (date: `${string}-${string}-${string}` | {
|
|
455
535
|
$$field: string;
|
|
@@ -496,6 +576,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
496
576
|
days: (days: number) => {
|
|
497
577
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
498
578
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
579
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
580
|
+
$$field: string;
|
|
581
|
+
$$subfield: string[];
|
|
582
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
583
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
499
584
|
};
|
|
500
585
|
date: (date: string | {
|
|
501
586
|
$$field: string;
|
|
@@ -507,6 +592,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
507
592
|
days: (days: number) => {
|
|
508
593
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
509
594
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
595
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
596
|
+
$$field: string;
|
|
597
|
+
$$subfield: string[];
|
|
598
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
599
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
510
600
|
};
|
|
511
601
|
date: (date: `${string}-${string}-${string}` | {
|
|
512
602
|
$$field: string;
|
|
@@ -544,6 +634,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
544
634
|
days: (days: number) => {
|
|
545
635
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
546
636
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
637
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
638
|
+
$$field: string;
|
|
639
|
+
$$subfield: string[];
|
|
640
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
641
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
547
642
|
};
|
|
548
643
|
date: (date: string | {
|
|
549
644
|
$$field: string;
|
|
@@ -555,6 +650,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
555
650
|
days: (days: number) => {
|
|
556
651
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
557
652
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
653
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
654
|
+
$$field: string;
|
|
655
|
+
$$subfield: string[];
|
|
656
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
657
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
558
658
|
};
|
|
559
659
|
date: (date: `${string}-${string}-${string}` | {
|
|
560
660
|
$$field: string;
|
|
@@ -590,6 +690,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
590
690
|
days: (days: number) => {
|
|
591
691
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
592
692
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
693
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
694
|
+
$$field: string;
|
|
695
|
+
$$subfield: string[];
|
|
696
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
697
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
593
698
|
};
|
|
594
699
|
date: (date: string | {
|
|
595
700
|
$$field: string;
|
|
@@ -601,6 +706,11 @@ export declare function field(fieldId: string, options?: {
|
|
|
601
706
|
days: (days: number) => {
|
|
602
707
|
inPast: () => import("../conditionals/conditionals").JSONSchema;
|
|
603
708
|
inFuture: () => import("../conditionals/conditionals").JSONSchema;
|
|
709
|
+
fromDate: (date: `${string}-${string}-${string}` | {
|
|
710
|
+
$$field: string;
|
|
711
|
+
$$subfield: string[];
|
|
712
|
+
}) => import("../conditionals/conditionals").JSONSchema;
|
|
713
|
+
fromNow: () => import("../conditionals/conditionals").JSONSchema;
|
|
604
714
|
};
|
|
605
715
|
date: (date: `${string}-${string}-${string}` | {
|
|
606
716
|
$$field: string;
|
|
@@ -17,6 +17,7 @@ export declare function getDeclarationPages(configuration: EventConfig): {
|
|
|
17
17
|
id: string;
|
|
18
18
|
title: import("./TranslationConfig").TranslationConfig;
|
|
19
19
|
fields: FieldConfig[];
|
|
20
|
+
requireCompletionToContinue: boolean;
|
|
20
21
|
conditional?: import(".").JSONSchema | undefined;
|
|
21
22
|
}[];
|
|
22
23
|
export declare function getDeclaration(configuration: EventConfig): {
|
|
@@ -26,6 +27,7 @@ export declare function getDeclaration(configuration: EventConfig): {
|
|
|
26
27
|
id: string;
|
|
27
28
|
title: import("./TranslationConfig").TranslationConfig;
|
|
28
29
|
fields: FieldConfig[];
|
|
30
|
+
requireCompletionToContinue: boolean;
|
|
29
31
|
conditional?: import(".").JSONSchema | undefined;
|
|
30
32
|
}[];
|
|
31
33
|
};
|
|
@@ -34,6 +36,7 @@ export declare function getPrintCertificatePages(configuration: EventConfig): ({
|
|
|
34
36
|
id: string;
|
|
35
37
|
title: import("./TranslationConfig").TranslationConfig;
|
|
36
38
|
fields: FieldConfig[];
|
|
39
|
+
requireCompletionToContinue: boolean;
|
|
37
40
|
conditional?: import(".").JSONSchema | undefined;
|
|
38
41
|
} | {
|
|
39
42
|
type: "VERIFICATION";
|
|
@@ -52,6 +55,7 @@ export declare function getPrintCertificatePages(configuration: EventConfig): ({
|
|
|
52
55
|
};
|
|
53
56
|
};
|
|
54
57
|
fields: FieldConfig[];
|
|
58
|
+
requireCompletionToContinue: boolean;
|
|
55
59
|
conditional?: import(".").JSONSchema | undefined;
|
|
56
60
|
})[];
|
|
57
61
|
export declare const getActionAnnotationFields: (actionConfig: ActionConfig) => FieldConfig[];
|
|
@@ -239,6 +243,7 @@ export declare function getEventConfigById(eventConfigs: EventConfig[], id: stri
|
|
|
239
243
|
id: string;
|
|
240
244
|
title: import("./TranslationConfig").TranslationConfig;
|
|
241
245
|
fields: FieldConfig[];
|
|
246
|
+
requireCompletionToContinue: boolean;
|
|
242
247
|
conditional?: import(".").JSONSchema | undefined;
|
|
243
248
|
}[];
|
|
244
249
|
};
|
|
@@ -304,6 +309,7 @@ export declare function getEventConfigById(eventConfigs: EventConfig[], id: stri
|
|
|
304
309
|
id: string;
|
|
305
310
|
title: import("./TranslationConfig").TranslationConfig;
|
|
306
311
|
fields: FieldConfig[];
|
|
312
|
+
requireCompletionToContinue: boolean;
|
|
307
313
|
conditional?: import(".").JSONSchema | undefined;
|
|
308
314
|
} | {
|
|
309
315
|
type: "VERIFICATION";
|
|
@@ -322,6 +328,7 @@ export declare function getEventConfigById(eventConfigs: EventConfig[], id: stri
|
|
|
322
328
|
};
|
|
323
329
|
};
|
|
324
330
|
fields: FieldConfig[];
|
|
331
|
+
requireCompletionToContinue: boolean;
|
|
325
332
|
conditional?: import(".").JSONSchema | undefined;
|
|
326
333
|
})[];
|
|
327
334
|
};
|
|
@@ -335,6 +342,7 @@ export declare function getEventConfigById(eventConfigs: EventConfig[], id: stri
|
|
|
335
342
|
id: string;
|
|
336
343
|
title: import("./TranslationConfig").TranslationConfig;
|
|
337
344
|
fields: FieldConfig[];
|
|
345
|
+
requireCompletionToContinue: boolean;
|
|
338
346
|
conditional?: import(".").JSONSchema | undefined;
|
|
339
347
|
} | {
|
|
340
348
|
type: "VERIFICATION";
|
|
@@ -353,6 +361,7 @@ export declare function getEventConfigById(eventConfigs: EventConfig[], id: stri
|
|
|
353
361
|
};
|
|
354
362
|
};
|
|
355
363
|
fields: FieldConfig[];
|
|
364
|
+
requireCompletionToContinue: boolean;
|
|
356
365
|
conditional?: import(".").JSONSchema | undefined;
|
|
357
366
|
})[];
|
|
358
367
|
};
|
|
@@ -251,6 +251,34 @@ function getDateRangeToFieldReference(field, comparedField, clause) {
|
|
|
251
251
|
required: [field.$$field]
|
|
252
252
|
};
|
|
253
253
|
}
|
|
254
|
+
function getDayRangeToFieldReference(field, comparedField, days, clause) {
|
|
255
|
+
return {
|
|
256
|
+
type: "object",
|
|
257
|
+
properties: {
|
|
258
|
+
[field.$$field]: wrapToPath(
|
|
259
|
+
{
|
|
260
|
+
type: "string",
|
|
261
|
+
format: "date",
|
|
262
|
+
daysFromDate: {
|
|
263
|
+
referenceDate: {
|
|
264
|
+
$data: `${field.$$subfield.length + 1}/${jsonFieldPath(
|
|
265
|
+
comparedField
|
|
266
|
+
)}`
|
|
267
|
+
},
|
|
268
|
+
clause,
|
|
269
|
+
days
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
field.$$subfield
|
|
273
|
+
),
|
|
274
|
+
[comparedField.$$field]: wrapToPath(
|
|
275
|
+
{ type: "string", format: "date" },
|
|
276
|
+
comparedField.$$subfield
|
|
277
|
+
)
|
|
278
|
+
},
|
|
279
|
+
required: [field.$$field]
|
|
280
|
+
};
|
|
281
|
+
}
|
|
254
282
|
function defineComparison(field, value, keyword) {
|
|
255
283
|
if (isFieldReference(value)) {
|
|
256
284
|
const comparedField = value;
|
|
@@ -286,16 +314,17 @@ function defineComparison(field, value, keyword) {
|
|
|
286
314
|
});
|
|
287
315
|
}
|
|
288
316
|
function createFieldConditionals(fieldId) {
|
|
289
|
-
const getDayRange = (field, days, clause) => ({
|
|
317
|
+
const getDayRange = (field, days, clause, referenceDate) => ({
|
|
290
318
|
type: "object",
|
|
291
319
|
properties: {
|
|
292
320
|
[field.$$field]: wrapToPath(
|
|
293
321
|
{
|
|
294
322
|
type: "string",
|
|
295
323
|
format: "date",
|
|
296
|
-
|
|
324
|
+
daysFromDate: {
|
|
297
325
|
days,
|
|
298
|
-
clause
|
|
326
|
+
clause,
|
|
327
|
+
referenceDate
|
|
299
328
|
}
|
|
300
329
|
},
|
|
301
330
|
field.$$subfield
|
|
@@ -348,7 +377,19 @@ function createFieldConditionals(fieldId) {
|
|
|
348
377
|
return {
|
|
349
378
|
days: (days) => ({
|
|
350
379
|
inPast: () => defineFormConditional(getDayRange(this, -days, "after")),
|
|
351
|
-
inFuture: () => defineFormConditional(getDayRange(this, days, "after"))
|
|
380
|
+
inFuture: () => defineFormConditional(getDayRange(this, days, "after")),
|
|
381
|
+
fromDate: (date) => {
|
|
382
|
+
if (isFieldReference(date)) {
|
|
383
|
+
const comparedField = date;
|
|
384
|
+
return defineFormConditional(
|
|
385
|
+
getDayRangeToFieldReference(this, comparedField, days, "after")
|
|
386
|
+
);
|
|
387
|
+
}
|
|
388
|
+
return defineFormConditional(getDayRange(this, days, "after", date));
|
|
389
|
+
},
|
|
390
|
+
fromNow: () => {
|
|
391
|
+
return defineFormConditional(getDayRange(this, days, "after"));
|
|
392
|
+
}
|
|
352
393
|
}),
|
|
353
394
|
date: (date) => {
|
|
354
395
|
if (isFieldReference(date)) {
|
|
@@ -370,7 +411,26 @@ function createFieldConditionals(fieldId) {
|
|
|
370
411
|
return {
|
|
371
412
|
days: (days) => ({
|
|
372
413
|
inPast: () => defineFormConditional(getDayRange(this, -days, "before")),
|
|
373
|
-
inFuture: () => defineFormConditional(getDayRange(this, days, "before"))
|
|
414
|
+
inFuture: () => defineFormConditional(getDayRange(this, days, "before")),
|
|
415
|
+
fromDate: (date) => {
|
|
416
|
+
if (isFieldReference(date)) {
|
|
417
|
+
const comparedField = date;
|
|
418
|
+
return defineFormConditional(
|
|
419
|
+
getDayRangeToFieldReference(
|
|
420
|
+
this,
|
|
421
|
+
comparedField,
|
|
422
|
+
-days,
|
|
423
|
+
"before"
|
|
424
|
+
)
|
|
425
|
+
);
|
|
426
|
+
}
|
|
427
|
+
return defineFormConditional(
|
|
428
|
+
getDayRange(this, -days, "before", date)
|
|
429
|
+
);
|
|
430
|
+
},
|
|
431
|
+
fromNow: () => {
|
|
432
|
+
return defineFormConditional(getDayRange(this, -days, "before"));
|
|
433
|
+
}
|
|
374
434
|
}),
|
|
375
435
|
date: (date) => {
|
|
376
436
|
if (isFieldReference(date)) {
|