@valentine-efagene/qshelter-common 2.0.109 → 2.0.111

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.
@@ -5179,6 +5179,7 @@ export declare const DocumentationPlanStepScalarFieldEnum: {
5179
5179
  readonly requiresManualReview: "requiresManualReview";
5180
5180
  readonly minFiles: "minFiles";
5181
5181
  readonly maxFiles: "maxFiles";
5182
+ readonly condition: "condition";
5182
5183
  readonly createdAt: "createdAt";
5183
5184
  readonly updatedAt: "updatedAt";
5184
5185
  };
@@ -459,6 +459,7 @@ export const DocumentationPlanStepScalarFieldEnum = {
459
459
  requiresManualReview: 'requiresManualReview',
460
460
  minFiles: 'minFiles',
461
461
  maxFiles: 'maxFiles',
462
+ condition: 'condition',
462
463
  createdAt: 'createdAt',
463
464
  updatedAt: 'updatedAt'
464
465
  };
@@ -445,6 +445,7 @@ export declare const DocumentationPlanStepScalarFieldEnum: {
445
445
  readonly requiresManualReview: "requiresManualReview";
446
446
  readonly minFiles: "minFiles";
447
447
  readonly maxFiles: "maxFiles";
448
+ readonly condition: "condition";
448
449
  readonly createdAt: "createdAt";
449
450
  readonly updatedAt: "updatedAt";
450
451
  };
@@ -431,6 +431,7 @@ export const DocumentationPlanStepScalarFieldEnum = {
431
431
  requiresManualReview: 'requiresManualReview',
432
432
  minFiles: 'minFiles',
433
433
  maxFiles: 'maxFiles',
434
+ condition: 'condition',
434
435
  createdAt: 'createdAt',
435
436
  updatedAt: 'updatedAt'
436
437
  };
@@ -79,6 +79,7 @@ export type DocumentationPlanStepCountAggregateOutputType = {
79
79
  requiresManualReview: number;
80
80
  minFiles: number;
81
81
  maxFiles: number;
82
+ condition: number;
82
83
  createdAt: number;
83
84
  updatedAt: number;
84
85
  _all: number;
@@ -149,6 +150,7 @@ export type DocumentationPlanStepCountAggregateInputType = {
149
150
  requiresManualReview?: true;
150
151
  minFiles?: true;
151
152
  maxFiles?: true;
153
+ condition?: true;
152
154
  createdAt?: true;
153
155
  updatedAt?: true;
154
156
  _all?: true;
@@ -245,6 +247,7 @@ export type DocumentationPlanStepGroupByOutputType = {
245
247
  requiresManualReview: boolean;
246
248
  minFiles: number;
247
249
  maxFiles: number;
250
+ condition: runtime.JsonValue | null;
248
251
  createdAt: Date;
249
252
  updatedAt: Date;
250
253
  _count: DocumentationPlanStepCountAggregateOutputType | null;
@@ -275,6 +278,7 @@ export type DocumentationPlanStepWhereInput = {
275
278
  requiresManualReview?: Prisma.BoolFilter<"DocumentationPlanStep"> | boolean;
276
279
  minFiles?: Prisma.IntFilter<"DocumentationPlanStep"> | number;
277
280
  maxFiles?: Prisma.IntFilter<"DocumentationPlanStep"> | number;
281
+ condition?: Prisma.JsonNullableFilter<"DocumentationPlanStep">;
278
282
  createdAt?: Prisma.DateTimeFilter<"DocumentationPlanStep"> | Date | string;
279
283
  updatedAt?: Prisma.DateTimeFilter<"DocumentationPlanStep"> | Date | string;
280
284
  plan?: Prisma.XOR<Prisma.DocumentationPlanScalarRelationFilter, Prisma.DocumentationPlanWhereInput>;
@@ -295,6 +299,7 @@ export type DocumentationPlanStepOrderByWithRelationInput = {
295
299
  requiresManualReview?: Prisma.SortOrder;
296
300
  minFiles?: Prisma.SortOrder;
297
301
  maxFiles?: Prisma.SortOrder;
302
+ condition?: Prisma.SortOrderInput | Prisma.SortOrder;
298
303
  createdAt?: Prisma.SortOrder;
299
304
  updatedAt?: Prisma.SortOrder;
300
305
  plan?: Prisma.DocumentationPlanOrderByWithRelationInput;
@@ -319,6 +324,7 @@ export type DocumentationPlanStepWhereUniqueInput = Prisma.AtLeast<{
319
324
  requiresManualReview?: Prisma.BoolFilter<"DocumentationPlanStep"> | boolean;
320
325
  minFiles?: Prisma.IntFilter<"DocumentationPlanStep"> | number;
321
326
  maxFiles?: Prisma.IntFilter<"DocumentationPlanStep"> | number;
327
+ condition?: Prisma.JsonNullableFilter<"DocumentationPlanStep">;
322
328
  createdAt?: Prisma.DateTimeFilter<"DocumentationPlanStep"> | Date | string;
323
329
  updatedAt?: Prisma.DateTimeFilter<"DocumentationPlanStep"> | Date | string;
324
330
  plan?: Prisma.XOR<Prisma.DocumentationPlanScalarRelationFilter, Prisma.DocumentationPlanWhereInput>;
@@ -339,6 +345,7 @@ export type DocumentationPlanStepOrderByWithAggregationInput = {
339
345
  requiresManualReview?: Prisma.SortOrder;
340
346
  minFiles?: Prisma.SortOrder;
341
347
  maxFiles?: Prisma.SortOrder;
348
+ condition?: Prisma.SortOrderInput | Prisma.SortOrder;
342
349
  createdAt?: Prisma.SortOrder;
343
350
  updatedAt?: Prisma.SortOrder;
344
351
  _count?: Prisma.DocumentationPlanStepCountOrderByAggregateInput;
@@ -366,6 +373,7 @@ export type DocumentationPlanStepScalarWhereWithAggregatesInput = {
366
373
  requiresManualReview?: Prisma.BoolWithAggregatesFilter<"DocumentationPlanStep"> | boolean;
367
374
  minFiles?: Prisma.IntWithAggregatesFilter<"DocumentationPlanStep"> | number;
368
375
  maxFiles?: Prisma.IntWithAggregatesFilter<"DocumentationPlanStep"> | number;
376
+ condition?: Prisma.JsonNullableWithAggregatesFilter<"DocumentationPlanStep">;
369
377
  createdAt?: Prisma.DateTimeWithAggregatesFilter<"DocumentationPlanStep"> | Date | string;
370
378
  updatedAt?: Prisma.DateTimeWithAggregatesFilter<"DocumentationPlanStep"> | Date | string;
371
379
  };
@@ -384,6 +392,7 @@ export type DocumentationPlanStepCreateInput = {
384
392
  requiresManualReview?: boolean;
385
393
  minFiles?: number;
386
394
  maxFiles?: number;
395
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
387
396
  createdAt?: Date | string;
388
397
  updatedAt?: Date | string;
389
398
  plan: Prisma.DocumentationPlanCreateNestedOneWithoutStepsInput;
@@ -404,6 +413,7 @@ export type DocumentationPlanStepUncheckedCreateInput = {
404
413
  requiresManualReview?: boolean;
405
414
  minFiles?: number;
406
415
  maxFiles?: number;
416
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
407
417
  createdAt?: Date | string;
408
418
  updatedAt?: Date | string;
409
419
  };
@@ -422,6 +432,7 @@ export type DocumentationPlanStepUpdateInput = {
422
432
  requiresManualReview?: Prisma.BoolFieldUpdateOperationsInput | boolean;
423
433
  minFiles?: Prisma.IntFieldUpdateOperationsInput | number;
424
434
  maxFiles?: Prisma.IntFieldUpdateOperationsInput | number;
435
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
425
436
  createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
426
437
  updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
427
438
  plan?: Prisma.DocumentationPlanUpdateOneRequiredWithoutStepsNestedInput;
@@ -442,6 +453,7 @@ export type DocumentationPlanStepUncheckedUpdateInput = {
442
453
  requiresManualReview?: Prisma.BoolFieldUpdateOperationsInput | boolean;
443
454
  minFiles?: Prisma.IntFieldUpdateOperationsInput | number;
444
455
  maxFiles?: Prisma.IntFieldUpdateOperationsInput | number;
456
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
445
457
  createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
446
458
  updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
447
459
  };
@@ -461,6 +473,7 @@ export type DocumentationPlanStepCreateManyInput = {
461
473
  requiresManualReview?: boolean;
462
474
  minFiles?: number;
463
475
  maxFiles?: number;
476
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
464
477
  createdAt?: Date | string;
465
478
  updatedAt?: Date | string;
466
479
  };
@@ -479,6 +492,7 @@ export type DocumentationPlanStepUpdateManyMutationInput = {
479
492
  requiresManualReview?: Prisma.BoolFieldUpdateOperationsInput | boolean;
480
493
  minFiles?: Prisma.IntFieldUpdateOperationsInput | number;
481
494
  maxFiles?: Prisma.IntFieldUpdateOperationsInput | number;
495
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
482
496
  createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
483
497
  updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
484
498
  };
@@ -498,6 +512,7 @@ export type DocumentationPlanStepUncheckedUpdateManyInput = {
498
512
  requiresManualReview?: Prisma.BoolFieldUpdateOperationsInput | boolean;
499
513
  minFiles?: Prisma.IntFieldUpdateOperationsInput | number;
500
514
  maxFiles?: Prisma.IntFieldUpdateOperationsInput | number;
515
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
501
516
  createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
502
517
  updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
503
518
  };
@@ -530,6 +545,7 @@ export type DocumentationPlanStepCountOrderByAggregateInput = {
530
545
  requiresManualReview?: Prisma.SortOrder;
531
546
  minFiles?: Prisma.SortOrder;
532
547
  maxFiles?: Prisma.SortOrder;
548
+ condition?: Prisma.SortOrder;
533
549
  createdAt?: Prisma.SortOrder;
534
550
  updatedAt?: Prisma.SortOrder;
535
551
  };
@@ -639,6 +655,7 @@ export type DocumentationPlanStepCreateWithoutPlanInput = {
639
655
  requiresManualReview?: boolean;
640
656
  minFiles?: number;
641
657
  maxFiles?: number;
658
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
642
659
  createdAt?: Date | string;
643
660
  updatedAt?: Date | string;
644
661
  };
@@ -657,6 +674,7 @@ export type DocumentationPlanStepUncheckedCreateWithoutPlanInput = {
657
674
  requiresManualReview?: boolean;
658
675
  minFiles?: number;
659
676
  maxFiles?: number;
677
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
660
678
  createdAt?: Date | string;
661
679
  updatedAt?: Date | string;
662
680
  };
@@ -700,6 +718,7 @@ export type DocumentationPlanStepScalarWhereInput = {
700
718
  requiresManualReview?: Prisma.BoolFilter<"DocumentationPlanStep"> | boolean;
701
719
  minFiles?: Prisma.IntFilter<"DocumentationPlanStep"> | number;
702
720
  maxFiles?: Prisma.IntFilter<"DocumentationPlanStep"> | number;
721
+ condition?: Prisma.JsonNullableFilter<"DocumentationPlanStep">;
703
722
  createdAt?: Prisma.DateTimeFilter<"DocumentationPlanStep"> | Date | string;
704
723
  updatedAt?: Prisma.DateTimeFilter<"DocumentationPlanStep"> | Date | string;
705
724
  };
@@ -718,6 +737,7 @@ export type DocumentationPlanStepCreateManyPlanInput = {
718
737
  requiresManualReview?: boolean;
719
738
  minFiles?: number;
720
739
  maxFiles?: number;
740
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
721
741
  createdAt?: Date | string;
722
742
  updatedAt?: Date | string;
723
743
  };
@@ -736,6 +756,7 @@ export type DocumentationPlanStepUpdateWithoutPlanInput = {
736
756
  requiresManualReview?: Prisma.BoolFieldUpdateOperationsInput | boolean;
737
757
  minFiles?: Prisma.IntFieldUpdateOperationsInput | number;
738
758
  maxFiles?: Prisma.IntFieldUpdateOperationsInput | number;
759
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
739
760
  createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
740
761
  updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
741
762
  };
@@ -754,6 +775,7 @@ export type DocumentationPlanStepUncheckedUpdateWithoutPlanInput = {
754
775
  requiresManualReview?: Prisma.BoolFieldUpdateOperationsInput | boolean;
755
776
  minFiles?: Prisma.IntFieldUpdateOperationsInput | number;
756
777
  maxFiles?: Prisma.IntFieldUpdateOperationsInput | number;
778
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
757
779
  createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
758
780
  updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
759
781
  };
@@ -772,6 +794,7 @@ export type DocumentationPlanStepUncheckedUpdateManyWithoutPlanInput = {
772
794
  requiresManualReview?: Prisma.BoolFieldUpdateOperationsInput | boolean;
773
795
  minFiles?: Prisma.IntFieldUpdateOperationsInput | number;
774
796
  maxFiles?: Prisma.IntFieldUpdateOperationsInput | number;
797
+ condition?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue;
775
798
  createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
776
799
  updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
777
800
  };
@@ -791,6 +814,7 @@ export type DocumentationPlanStepSelect<ExtArgs extends runtime.Types.Extensions
791
814
  requiresManualReview?: boolean;
792
815
  minFiles?: boolean;
793
816
  maxFiles?: boolean;
817
+ condition?: boolean;
794
818
  createdAt?: boolean;
795
819
  updatedAt?: boolean;
796
820
  plan?: boolean | Prisma.DocumentationPlanDefaultArgs<ExtArgs>;
@@ -811,10 +835,11 @@ export type DocumentationPlanStepSelectScalar = {
811
835
  requiresManualReview?: boolean;
812
836
  minFiles?: boolean;
813
837
  maxFiles?: boolean;
838
+ condition?: boolean;
814
839
  createdAt?: boolean;
815
840
  updatedAt?: boolean;
816
841
  };
817
- export type DocumentationPlanStepOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "planId" | "name" | "stepType" | "order" | "documentType" | "metadata" | "isRequired" | "description" | "maxSizeBytes" | "allowedMimeTypes" | "expiryDays" | "requiresManualReview" | "minFiles" | "maxFiles" | "createdAt" | "updatedAt", ExtArgs["result"]["documentationPlanStep"]>;
842
+ export type DocumentationPlanStepOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "planId" | "name" | "stepType" | "order" | "documentType" | "metadata" | "isRequired" | "description" | "maxSizeBytes" | "allowedMimeTypes" | "expiryDays" | "requiresManualReview" | "minFiles" | "maxFiles" | "condition" | "createdAt" | "updatedAt", ExtArgs["result"]["documentationPlanStep"]>;
818
843
  export type DocumentationPlanStepInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
819
844
  plan?: boolean | Prisma.DocumentationPlanDefaultArgs<ExtArgs>;
820
845
  };
@@ -839,6 +864,7 @@ export type $DocumentationPlanStepPayload<ExtArgs extends runtime.Types.Extensio
839
864
  requiresManualReview: boolean;
840
865
  minFiles: number;
841
866
  maxFiles: number;
867
+ condition: runtime.JsonValue | null;
842
868
  createdAt: Date;
843
869
  updatedAt: Date;
844
870
  }, ExtArgs["result"]["documentationPlanStep"]>;
@@ -1159,6 +1185,7 @@ export interface DocumentationPlanStepFieldRefs {
1159
1185
  readonly requiresManualReview: Prisma.FieldRef<"DocumentationPlanStep", 'Boolean'>;
1160
1186
  readonly minFiles: Prisma.FieldRef<"DocumentationPlanStep", 'Int'>;
1161
1187
  readonly maxFiles: Prisma.FieldRef<"DocumentationPlanStep", 'Int'>;
1188
+ readonly condition: Prisma.FieldRef<"DocumentationPlanStep", 'Json'>;
1162
1189
  readonly createdAt: Prisma.FieldRef<"DocumentationPlanStep", 'DateTime'>;
1163
1190
  readonly updatedAt: Prisma.FieldRef<"DocumentationPlanStep", 'DateTime'>;
1164
1191
  }
@@ -1,6 +1,7 @@
1
1
  export * from './types/response';
2
2
  export * from './types/action-status';
3
3
  export * from './utils/errors';
4
+ export * from './utils/condition-operators';
4
5
  export * from './config';
5
6
  export { PrismaClient, Prisma } from '../generated/client/client';
6
7
  export * from '../generated/client/enums';
package/dist/src/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './types/response';
2
2
  export * from './types/action-status';
3
3
  export * from './utils/errors';
4
+ export * from './utils/condition-operators';
4
5
  export * from './config';
5
6
  export { PrismaClient, Prisma } from '../generated/client/client';
6
7
  export * from '../generated/client/enums';
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Condition operators for evaluating step conditions against questionnaire answers.
3
+ * Used in DocumentationPlanStep.condition to conditionally require documents
4
+ * based on prequalification answers.
5
+ */
6
+ /**
7
+ * Supported condition operators for evaluating document step conditions.
8
+ */
9
+ export declare const CONDITION_OPERATORS: {
10
+ /** Value equals the specified value */
11
+ readonly EQUALS: "EQUALS";
12
+ /** Value does not equal the specified value */
13
+ readonly NOT_EQUALS: "NOT_EQUALS";
14
+ /** Value is in the specified array of values */
15
+ readonly IN: "IN";
16
+ /** Value is not in the specified array of values */
17
+ readonly NOT_IN: "NOT_IN";
18
+ /** Numeric value is greater than the specified value */
19
+ readonly GREATER_THAN: "GREATER_THAN";
20
+ /** Numeric value is less than the specified value */
21
+ readonly LESS_THAN: "LESS_THAN";
22
+ /** Value exists (is not null/undefined) */
23
+ readonly EXISTS: "EXISTS";
24
+ };
25
+ /**
26
+ * Type representing a valid condition operator.
27
+ */
28
+ export type ConditionOperator = keyof typeof CONDITION_OPERATORS;
29
+ /**
30
+ * Interface for a simple condition that checks a single question answer.
31
+ */
32
+ export interface SimpleCondition {
33
+ /** The question key to check the answer for */
34
+ questionKey: string;
35
+ /** The comparison operator */
36
+ operator: ConditionOperator;
37
+ /** The value to compare against (for EQUALS, NOT_EQUALS, GREATER_THAN, LESS_THAN) */
38
+ value?: string | number | boolean;
39
+ /** The values to compare against (for IN, NOT_IN) */
40
+ values?: (string | number)[];
41
+ }
42
+ /**
43
+ * Interface for a compound condition that combines multiple conditions.
44
+ */
45
+ export interface CompoundCondition {
46
+ /** All conditions must be true (AND) */
47
+ all?: StepCondition[];
48
+ /** At least one condition must be true (OR) */
49
+ any?: StepCondition[];
50
+ }
51
+ /**
52
+ * A step condition can be either a simple condition or a compound condition.
53
+ */
54
+ export type StepCondition = SimpleCondition | CompoundCondition;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Condition operators for evaluating step conditions against questionnaire answers.
3
+ * Used in DocumentationPlanStep.condition to conditionally require documents
4
+ * based on prequalification answers.
5
+ */
6
+ /**
7
+ * Supported condition operators for evaluating document step conditions.
8
+ */
9
+ export const CONDITION_OPERATORS = {
10
+ /** Value equals the specified value */
11
+ EQUALS: 'EQUALS',
12
+ /** Value does not equal the specified value */
13
+ NOT_EQUALS: 'NOT_EQUALS',
14
+ /** Value is in the specified array of values */
15
+ IN: 'IN',
16
+ /** Value is not in the specified array of values */
17
+ NOT_IN: 'NOT_IN',
18
+ /** Numeric value is greater than the specified value */
19
+ GREATER_THAN: 'GREATER_THAN',
20
+ /** Numeric value is less than the specified value */
21
+ LESS_THAN: 'LESS_THAN',
22
+ /** Value exists (is not null/undefined) */
23
+ EXISTS: 'EXISTS',
24
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@valentine-efagene/qshelter-common",
3
- "version": "2.0.109",
3
+ "version": "2.0.111",
4
4
  "description": "Shared database schemas and utilities for QShelter services",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",