@dmptool/types 1.0.8 → 1.1.0

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 (56) hide show
  1. package/dist/answers/__tests__/answers.spec.js +18 -17
  2. package/dist/answers/index.d.ts +50 -25
  3. package/dist/answers/index.js +19 -17
  4. package/dist/answers/{primitiveAnswers.d.ts → numberAnswers.d.ts} +0 -100
  5. package/dist/answers/numberAnswers.js +25 -0
  6. package/dist/answers/tableAnswers.d.ts +48 -48
  7. package/dist/answers/tableAnswers.js +9 -8
  8. package/dist/answers/textAnswers.d.ts +101 -0
  9. package/dist/answers/textAnswers.js +22 -0
  10. package/dist/questions/__tests__/dateQuestions.spec.js +20 -74
  11. package/dist/questions/__tests__/graphQLQuestions.spec.js +6 -0
  12. package/dist/questions/__tests__/numberQuestions.spec.js +156 -0
  13. package/dist/questions/__tests__/optionBasedQuestions.spec.js +41 -54
  14. package/dist/questions/__tests__/tableQuestion.spec.js +2 -0
  15. package/dist/questions/__tests__/textQuestions.spec.d.ts +1 -0
  16. package/dist/questions/__tests__/textQuestions.spec.js +120 -0
  17. package/dist/questions/dateQuestions.d.ts +159 -178
  18. package/dist/questions/dateQuestions.js +9 -15
  19. package/dist/questions/graphQLQuestions.d.ts +67 -38
  20. package/dist/questions/graphQLQuestions.js +3 -2
  21. package/dist/questions/index.d.ts +1616 -1356
  22. package/dist/questions/index.js +21 -19
  23. package/dist/questions/numberQuestions.d.ts +343 -0
  24. package/dist/questions/numberQuestions.js +34 -0
  25. package/dist/questions/optionBasedQuestions.d.ts +136 -158
  26. package/dist/questions/optionBasedQuestions.js +11 -20
  27. package/dist/questions/question.d.ts +29 -11
  28. package/dist/questions/question.js +10 -4
  29. package/dist/questions/tableQuestions.d.ts +2377 -2030
  30. package/dist/questions/tableQuestions.js +12 -10
  31. package/dist/questions/textQuestions.d.ts +261 -0
  32. package/dist/questions/textQuestions.js +42 -0
  33. package/dist/schemas/anyQuestion.schema.json +237 -239
  34. package/dist/schemas/anyTableColumnQuestion.schema.json +207 -217
  35. package/dist/schemas/booleanQuestion.schema.json +17 -12
  36. package/dist/schemas/checkboxesQuestion.schema.json +24 -27
  37. package/dist/schemas/currencyQuestion.schema.json +23 -18
  38. package/dist/schemas/dateQuestion.schema.json +21 -16
  39. package/dist/schemas/dateRangeQuestion.schema.json +31 -56
  40. package/dist/schemas/emailQuestion.schema.json +24 -19
  41. package/dist/schemas/filteredSearchQuestion.schema.json +18 -13
  42. package/dist/schemas/numberQuestion.schema.json +21 -16
  43. package/dist/schemas/numberRangeQuestion.schema.json +31 -56
  44. package/dist/schemas/radioButtonsQuestion.schema.json +24 -27
  45. package/dist/schemas/selectBoxQuestion.schema.json +27 -36
  46. package/dist/schemas/tableQuestion.schema.json +233 -235
  47. package/dist/schemas/textAreaQuestion.schema.json +22 -16
  48. package/dist/schemas/textQuestion.schema.json +21 -16
  49. package/dist/schemas/typeaheadSearchQuestion.schema.json +15 -4
  50. package/dist/schemas/urlQuestion.schema.json +21 -16
  51. package/package.json +1 -1
  52. package/dist/answers/primitiveAnswers.js +0 -41
  53. package/dist/questions/__tests__/primitiveQuestions.spec.js +0 -281
  54. package/dist/questions/primitiveQuestions.d.ts +0 -555
  55. package/dist/questions/primitiveQuestions.js +0 -86
  56. /package/dist/questions/__tests__/{primitiveQuestions.spec.d.ts → numberQuestions.spec.d.ts} +0 -0
@@ -4,16 +4,17 @@ const globals_1 = require("@jest/globals");
4
4
  const dateAnswers_1 = require("../dateAnswers");
5
5
  const graphQLAnswers_1 = require("../graphQLAnswers");
6
6
  const optionBasedAnswers_1 = require("../optionBasedAnswers");
7
- const primitiveAnswers_1 = require("../primitiveAnswers");
7
+ const numberAnswers_1 = require("../numberAnswers");
8
+ const textAnswers_1 = require("../textAnswers");
8
9
  const tableAnswers_1 = require("../tableAnswers");
9
10
  const __1 = require("..");
10
11
  const questions_1 = require("../../questions");
11
12
  (0, globals_1.describe)('Answer Type Validations', () => {
12
13
  (0, globals_1.it)('should validate BooleanAnswer', () => {
13
14
  const validData = { type: 'boolean', answer: true, meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
14
- (0, globals_1.expect)(() => primitiveAnswers_1.BooleanAnswerSchema.parse(validData)).not.toThrow();
15
+ (0, globals_1.expect)(() => numberAnswers_1.BooleanAnswerSchema.parse(validData)).not.toThrow();
15
16
  const invalidData = { type: 'boolean', answer: 'true' };
16
- (0, globals_1.expect)(() => primitiveAnswers_1.BooleanAnswerSchema.parse(invalidData)).toThrow();
17
+ (0, globals_1.expect)(() => numberAnswers_1.BooleanAnswerSchema.parse(invalidData)).toThrow();
17
18
  });
18
19
  (0, globals_1.it)('should validate CheckboxesAnswer', () => {
19
20
  const validData = { type: 'checkBoxes', answer: ['option1', 'option2'], meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
@@ -23,9 +24,9 @@ const questions_1 = require("../../questions");
23
24
  });
24
25
  (0, globals_1.it)('should validate CurrencyAnswer', () => {
25
26
  const validData = { type: 'currency', answer: 100.5, meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
26
- (0, globals_1.expect)(() => primitiveAnswers_1.CurrencyAnswerSchema.parse(validData)).not.toThrow();
27
+ (0, globals_1.expect)(() => numberAnswers_1.CurrencyAnswerSchema.parse(validData)).not.toThrow();
27
28
  const invalidData = { type: 'currency', answer: '100.5', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
28
- (0, globals_1.expect)(() => primitiveAnswers_1.CurrencyAnswerSchema.parse(invalidData)).toThrow();
29
+ (0, globals_1.expect)(() => numberAnswers_1.CurrencyAnswerSchema.parse(invalidData)).toThrow();
29
30
  });
30
31
  (0, globals_1.it)('should validate DateAnswer', () => {
31
32
  const validData = { type: 'date', answer: '2023-10-01', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
@@ -49,9 +50,9 @@ const questions_1 = require("../../questions");
49
50
  });
50
51
  (0, globals_1.it)('should validate EmailAnswer', () => {
51
52
  const validData = { type: 'email', answer: 'test@example.com', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
52
- (0, globals_1.expect)(() => primitiveAnswers_1.EmailAnswerSchema.parse(validData)).not.toThrow();
53
+ (0, globals_1.expect)(() => textAnswers_1.EmailAnswerSchema.parse(validData)).not.toThrow();
53
54
  const invalidData = { type: 'email', answer: 12345 };
54
- (0, globals_1.expect)(() => primitiveAnswers_1.EmailAnswerSchema.parse(invalidData)).toThrow();
55
+ (0, globals_1.expect)(() => textAnswers_1.EmailAnswerSchema.parse(invalidData)).toThrow();
55
56
  });
56
57
  (0, globals_1.it)('should validate FilteredSearchAnswer', () => {
57
58
  const validData = { type: 'filteredSearch', answer: ['item1', 'item2'], meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
@@ -61,9 +62,9 @@ const questions_1 = require("../../questions");
61
62
  });
62
63
  (0, globals_1.it)('should validate NumberAnswer', () => {
63
64
  const validData = { type: 'number', answer: 42, meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
64
- (0, globals_1.expect)(() => primitiveAnswers_1.NumberAnswerSchema.parse(validData)).not.toThrow();
65
+ (0, globals_1.expect)(() => numberAnswers_1.NumberAnswerSchema.parse(validData)).not.toThrow();
65
66
  const invalidData = { type: 'number', answer: '42', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
66
- (0, globals_1.expect)(() => primitiveAnswers_1.NumberAnswerSchema.parse(invalidData)).toThrow();
67
+ (0, globals_1.expect)(() => numberAnswers_1.NumberAnswerSchema.parse(invalidData)).toThrow();
67
68
  });
68
69
  (0, globals_1.it)('should validate NumberRangeAnswer', () => {
69
70
  const validData = {
@@ -71,13 +72,13 @@ const questions_1 = require("../../questions");
71
72
  answer: { start: 1, end: 10 },
72
73
  meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION }
73
74
  };
74
- (0, globals_1.expect)(() => primitiveAnswers_1.NumberRangeAnswerSchema.parse(validData)).not.toThrow();
75
+ (0, globals_1.expect)(() => numberAnswers_1.NumberRangeAnswerSchema.parse(validData)).not.toThrow();
75
76
  const invalidData = {
76
77
  type: 'numberRange',
77
78
  answer: { start: '1', end: 10 },
78
79
  meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION }
79
80
  };
80
- (0, globals_1.expect)(() => primitiveAnswers_1.NumberRangeAnswerSchema.parse(invalidData)).toThrow();
81
+ (0, globals_1.expect)(() => numberAnswers_1.NumberRangeAnswerSchema.parse(invalidData)).toThrow();
81
82
  });
82
83
  (0, globals_1.it)('should validate RadioButtonsAnswer', () => {
83
84
  const validData = { type: 'radioButtons', answer: 'option1', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
@@ -93,15 +94,15 @@ const questions_1 = require("../../questions");
93
94
  });
94
95
  (0, globals_1.it)('should validate TextAnswer', () => {
95
96
  const validData = { type: 'text', answer: 'Some text', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
96
- (0, globals_1.expect)(() => primitiveAnswers_1.TextAnswerSchema.parse(validData)).not.toThrow();
97
+ (0, globals_1.expect)(() => textAnswers_1.TextAnswerSchema.parse(validData)).not.toThrow();
97
98
  const invalidData = { type: 'text', answer: 12345, meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
98
- (0, globals_1.expect)(() => primitiveAnswers_1.TextAnswerSchema.parse(invalidData)).toThrow();
99
+ (0, globals_1.expect)(() => textAnswers_1.TextAnswerSchema.parse(invalidData)).toThrow();
99
100
  });
100
101
  (0, globals_1.it)('should validate TextAreaAnswer', () => {
101
102
  const validData = { type: 'textArea', answer: 'Some long text', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
102
- (0, globals_1.expect)(() => primitiveAnswers_1.TextAreaAnswerSchema.parse(validData)).not.toThrow();
103
+ (0, globals_1.expect)(() => textAnswers_1.TextAreaAnswerSchema.parse(validData)).not.toThrow();
103
104
  const invalidData = { type: 'textArea', answer: 12345, meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
104
- (0, globals_1.expect)(() => primitiveAnswers_1.TextAreaAnswerSchema.parse(invalidData)).toThrow();
105
+ (0, globals_1.expect)(() => textAnswers_1.TextAreaAnswerSchema.parse(invalidData)).toThrow();
105
106
  });
106
107
  (0, globals_1.it)('should validate TypeaheadSearchAnswer', () => {
107
108
  const validData = { type: 'typeaheadSearch', answer: 'Search term', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
@@ -111,9 +112,9 @@ const questions_1 = require("../../questions");
111
112
  });
112
113
  (0, globals_1.it)('should validate URLAnswer', () => {
113
114
  const validData = { type: 'url', answer: 'https://example.com', meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
114
- (0, globals_1.expect)(() => primitiveAnswers_1.URLAnswerSchema.parse(validData)).not.toThrow();
115
+ (0, globals_1.expect)(() => textAnswers_1.URLAnswerSchema.parse(validData)).not.toThrow();
115
116
  const invalidData = { type: 'url', answer: 12345, meta: { schemaVersion: questions_1.CURRENT_SCHEMA_VERSION } };
116
- (0, globals_1.expect)(() => primitiveAnswers_1.URLAnswerSchema.parse(invalidData)).toThrow();
117
+ (0, globals_1.expect)(() => textAnswers_1.URLAnswerSchema.parse(invalidData)).toThrow();
117
118
  });
118
119
  (0, globals_1.it)('should validate TableAnswer', () => {
119
120
  const validData = {
@@ -1,11 +1,18 @@
1
1
  import { z } from 'zod';
2
+ import { DateAnswerType, DateRangeAnswerType } from './dateAnswers';
3
+ import { FilteredSearchAnswerType, TypeaheadSearchAnswerType } from './graphQLAnswers';
4
+ import { CheckboxesAnswerType, RadioButtonsAnswerType, SelectBoxAnswerType } from './optionBasedAnswers';
5
+ import { BooleanAnswerType, CurrencyAnswerType, NumberAnswerType, NumberRangeAnswerType } from './numberAnswers';
6
+ import { TableAnswerType } from './tableAnswers';
7
+ import { EmailAnswerType, TextAnswerType, TextAreaAnswerType, URLAnswerType } from './textAnswers';
2
8
  import { QuestionTypesEnum } from '../questions';
3
9
  export * from './answer';
4
10
  export * from './dateAnswers';
5
11
  export * from './graphQLAnswers';
12
+ export * from './numberAnswers';
6
13
  export * from './optionBasedAnswers';
7
- export * from './primitiveAnswers';
8
14
  export * from './tableAnswers';
15
+ export * from './textAnswers';
9
16
  export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
10
17
  meta: z.ZodObject<{
11
18
  schemaVersion: z.ZodLiteral<"1.0">;
@@ -662,17 +669,17 @@ export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObje
662
669
  };
663
670
  answer: number;
664
671
  } | {
665
- type: "email";
672
+ type: "number";
666
673
  meta: {
667
674
  schemaVersion: "1.0";
668
675
  };
669
- answer: string;
676
+ answer: number;
670
677
  } | {
671
- type: "number";
678
+ type: "email";
672
679
  meta: {
673
680
  schemaVersion: "1.0";
674
681
  };
675
- answer: number;
682
+ answer: string;
676
683
  } | {
677
684
  type: "text";
678
685
  meta: {
@@ -752,17 +759,17 @@ export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObje
752
759
  };
753
760
  answer: number;
754
761
  } | {
755
- type: "email";
762
+ type: "number";
756
763
  meta: {
757
764
  schemaVersion: "1.0";
758
765
  };
759
- answer: string;
766
+ answer: number;
760
767
  } | {
761
- type: "number";
768
+ type: "email";
762
769
  meta: {
763
770
  schemaVersion: "1.0";
764
771
  };
765
- answer: number;
772
+ answer: string;
766
773
  } | {
767
774
  type: "text";
768
775
  meta: {
@@ -844,17 +851,17 @@ export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObje
844
851
  };
845
852
  answer: number;
846
853
  } | {
847
- type: "email";
854
+ type: "number";
848
855
  meta: {
849
856
  schemaVersion: "1.0";
850
857
  };
851
- answer: string;
858
+ answer: number;
852
859
  } | {
853
- type: "number";
860
+ type: "email";
854
861
  meta: {
855
862
  schemaVersion: "1.0";
856
863
  };
857
- answer: number;
864
+ answer: string;
858
865
  } | {
859
866
  type: "text";
860
867
  meta: {
@@ -936,17 +943,17 @@ export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObje
936
943
  };
937
944
  answer: number;
938
945
  } | {
939
- type: "email";
946
+ type: "number";
940
947
  meta: {
941
948
  schemaVersion: "1.0";
942
949
  };
943
- answer: string;
950
+ answer: number;
944
951
  } | {
945
- type: "number";
952
+ type: "email";
946
953
  meta: {
947
954
  schemaVersion: "1.0";
948
955
  };
949
- answer: number;
956
+ answer: string;
950
957
  } | {
951
958
  type: "text";
952
959
  meta: {
@@ -1034,17 +1041,17 @@ export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObje
1034
1041
  };
1035
1042
  answer: number;
1036
1043
  } | {
1037
- type: "email";
1044
+ type: "number";
1038
1045
  meta: {
1039
1046
  schemaVersion: "1.0";
1040
1047
  };
1041
- answer: string;
1048
+ answer: number;
1042
1049
  } | {
1043
- type: "number";
1050
+ type: "email";
1044
1051
  meta: {
1045
1052
  schemaVersion: "1.0";
1046
1053
  };
1047
- answer: number;
1054
+ answer: string;
1048
1055
  } | {
1049
1056
  type: "text";
1050
1057
  meta: {
@@ -1132,17 +1139,17 @@ export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObje
1132
1139
  };
1133
1140
  answer: number;
1134
1141
  } | {
1135
- type: "email";
1142
+ type: "number";
1136
1143
  meta: {
1137
1144
  schemaVersion: "1.0";
1138
1145
  };
1139
- answer: string;
1146
+ answer: number;
1140
1147
  } | {
1141
- type: "number";
1148
+ type: "email";
1142
1149
  meta: {
1143
1150
  schemaVersion: "1.0";
1144
1151
  };
1145
- answer: number;
1152
+ answer: string;
1146
1153
  } | {
1147
1154
  type: "text";
1148
1155
  meta: {
@@ -1259,3 +1266,21 @@ export declare const AnyAnswerSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObje
1259
1266
  }>]>;
1260
1267
  export declare const AnswerSchemaMap: Record<z.infer<typeof QuestionTypesEnum>, z.ZodTypeAny>;
1261
1268
  export type AnyAnswerType = z.infer<typeof AnyAnswerSchema>;
1269
+ export interface AnswerTypeMap {
1270
+ boolean: BooleanAnswerType;
1271
+ checkBoxes: CheckboxesAnswerType;
1272
+ currency: CurrencyAnswerType;
1273
+ date: DateAnswerType;
1274
+ dateRange: DateRangeAnswerType;
1275
+ email: EmailAnswerType;
1276
+ filteredSearch: FilteredSearchAnswerType;
1277
+ number: NumberAnswerType;
1278
+ numberRange: NumberRangeAnswerType;
1279
+ radioButtons: RadioButtonsAnswerType;
1280
+ selectBox: SelectBoxAnswerType;
1281
+ table: TableAnswerType;
1282
+ text: TextAnswerType;
1283
+ textArea: TextAreaAnswerType;
1284
+ typeaheadSearch: TypeaheadSearchAnswerType;
1285
+ url: URLAnswerType;
1286
+ }
@@ -19,49 +19,51 @@ const zod_1 = require("zod");
19
19
  const dateAnswers_1 = require("./dateAnswers");
20
20
  const graphQLAnswers_1 = require("./graphQLAnswers");
21
21
  const optionBasedAnswers_1 = require("./optionBasedAnswers");
22
- const primitiveAnswers_1 = require("./primitiveAnswers");
22
+ const numberAnswers_1 = require("./numberAnswers");
23
23
  const tableAnswers_1 = require("./tableAnswers");
24
+ const textAnswers_1 = require("./textAnswers");
24
25
  // reexport everything
25
26
  __exportStar(require("./answer"), exports);
26
27
  __exportStar(require("./dateAnswers"), exports);
27
28
  __exportStar(require("./graphQLAnswers"), exports);
29
+ __exportStar(require("./numberAnswers"), exports);
28
30
  __exportStar(require("./optionBasedAnswers"), exports);
29
- __exportStar(require("./primitiveAnswers"), exports);
30
31
  __exportStar(require("./tableAnswers"), exports);
32
+ __exportStar(require("./textAnswers"), exports);
31
33
  // Union of all possible answers
32
34
  exports.AnyAnswerSchema = zod_1.z.discriminatedUnion('type', [
33
- primitiveAnswers_1.BooleanAnswerSchema,
35
+ numberAnswers_1.BooleanAnswerSchema,
34
36
  optionBasedAnswers_1.CheckboxesAnswerSchema,
35
- primitiveAnswers_1.CurrencyAnswerSchema,
37
+ numberAnswers_1.CurrencyAnswerSchema,
36
38
  dateAnswers_1.DateAnswerSchema,
37
39
  dateAnswers_1.DateRangeAnswerSchema,
38
- primitiveAnswers_1.EmailAnswerSchema,
40
+ textAnswers_1.EmailAnswerSchema,
39
41
  graphQLAnswers_1.FilteredSearchAnswerSchema,
40
- primitiveAnswers_1.NumberAnswerSchema,
42
+ numberAnswers_1.NumberAnswerSchema,
41
43
  optionBasedAnswers_1.RadioButtonsAnswerSchema,
42
44
  optionBasedAnswers_1.SelectBoxAnswerSchema,
43
45
  tableAnswers_1.TableAnswerSchema,
44
- primitiveAnswers_1.TextAnswerSchema,
45
- primitiveAnswers_1.TextAreaAnswerSchema,
46
+ textAnswers_1.TextAnswerSchema,
47
+ textAnswers_1.TextAreaAnswerSchema,
46
48
  graphQLAnswers_1.TypeaheadSearchAnswerSchema,
47
- primitiveAnswers_1.URLAnswerSchema
49
+ textAnswers_1.URLAnswerSchema
48
50
  ]);
49
51
  // Export a mapping between question types and their corresponding answer schemas
50
52
  exports.AnswerSchemaMap = {
51
- boolean: primitiveAnswers_1.BooleanAnswerSchema,
53
+ boolean: numberAnswers_1.BooleanAnswerSchema,
52
54
  checkBoxes: optionBasedAnswers_1.CheckboxesAnswerSchema,
53
- currency: primitiveAnswers_1.CurrencyAnswerSchema,
55
+ currency: numberAnswers_1.CurrencyAnswerSchema,
54
56
  date: dateAnswers_1.DateAnswerSchema,
55
57
  dateRange: dateAnswers_1.DateRangeAnswerSchema,
56
- email: primitiveAnswers_1.EmailAnswerSchema,
58
+ email: textAnswers_1.EmailAnswerSchema,
57
59
  filteredSearch: graphQLAnswers_1.FilteredSearchAnswerSchema,
58
- number: primitiveAnswers_1.NumberAnswerSchema,
59
- numberRange: primitiveAnswers_1.NumberRangeAnswerSchema,
60
+ number: numberAnswers_1.NumberAnswerSchema,
61
+ numberRange: numberAnswers_1.NumberRangeAnswerSchema,
60
62
  radioButtons: optionBasedAnswers_1.RadioButtonsAnswerSchema,
61
63
  selectBox: optionBasedAnswers_1.SelectBoxAnswerSchema,
62
64
  table: tableAnswers_1.TableAnswerSchema,
63
- text: primitiveAnswers_1.TextAnswerSchema,
64
- textArea: primitiveAnswers_1.TextAreaAnswerSchema,
65
+ text: textAnswers_1.TextAnswerSchema,
66
+ textArea: textAnswers_1.TextAreaAnswerSchema,
65
67
  typeaheadSearch: graphQLAnswers_1.TypeaheadSearchAnswerSchema,
66
- url: primitiveAnswers_1.URLAnswerSchema
68
+ url: textAnswers_1.URLAnswerSchema
67
69
  };
@@ -47,30 +47,6 @@ export declare const CurrencyAnswerSchema: z.ZodObject<{
47
47
  };
48
48
  answer: number;
49
49
  }>;
50
- export declare const EmailAnswerSchema: z.ZodObject<{
51
- meta: z.ZodObject<{
52
- schemaVersion: z.ZodLiteral<"1.0">;
53
- }, "strip", z.ZodTypeAny, {
54
- schemaVersion: "1.0";
55
- }, {
56
- schemaVersion: "1.0";
57
- }>;
58
- } & {
59
- type: z.ZodLiteral<"email">;
60
- answer: z.ZodString;
61
- }, "strip", z.ZodTypeAny, {
62
- type: "email";
63
- meta: {
64
- schemaVersion: "1.0";
65
- };
66
- answer: string;
67
- }, {
68
- type: "email";
69
- meta: {
70
- schemaVersion: "1.0";
71
- };
72
- answer: string;
73
- }>;
74
50
  export declare const NumberAnswerSchema: z.ZodObject<{
75
51
  meta: z.ZodObject<{
76
52
  schemaVersion: z.ZodLiteral<"1.0">;
@@ -134,83 +110,7 @@ export declare const NumberRangeAnswerSchema: z.ZodObject<{
134
110
  end: number;
135
111
  };
136
112
  }>;
137
- export declare const TextAnswerSchema: z.ZodObject<{
138
- meta: z.ZodObject<{
139
- schemaVersion: z.ZodLiteral<"1.0">;
140
- }, "strip", z.ZodTypeAny, {
141
- schemaVersion: "1.0";
142
- }, {
143
- schemaVersion: "1.0";
144
- }>;
145
- } & {
146
- type: z.ZodLiteral<"text">;
147
- answer: z.ZodString;
148
- }, "strip", z.ZodTypeAny, {
149
- type: "text";
150
- meta: {
151
- schemaVersion: "1.0";
152
- };
153
- answer: string;
154
- }, {
155
- type: "text";
156
- meta: {
157
- schemaVersion: "1.0";
158
- };
159
- answer: string;
160
- }>;
161
- export declare const TextAreaAnswerSchema: z.ZodObject<{
162
- meta: z.ZodObject<{
163
- schemaVersion: z.ZodLiteral<"1.0">;
164
- }, "strip", z.ZodTypeAny, {
165
- schemaVersion: "1.0";
166
- }, {
167
- schemaVersion: "1.0";
168
- }>;
169
- } & {
170
- type: z.ZodLiteral<"textArea">;
171
- answer: z.ZodString;
172
- }, "strip", z.ZodTypeAny, {
173
- type: "textArea";
174
- meta: {
175
- schemaVersion: "1.0";
176
- };
177
- answer: string;
178
- }, {
179
- type: "textArea";
180
- meta: {
181
- schemaVersion: "1.0";
182
- };
183
- answer: string;
184
- }>;
185
- export declare const URLAnswerSchema: z.ZodObject<{
186
- meta: z.ZodObject<{
187
- schemaVersion: z.ZodLiteral<"1.0">;
188
- }, "strip", z.ZodTypeAny, {
189
- schemaVersion: "1.0";
190
- }, {
191
- schemaVersion: "1.0";
192
- }>;
193
- } & {
194
- type: z.ZodLiteral<"url">;
195
- answer: z.ZodString;
196
- }, "strip", z.ZodTypeAny, {
197
- type: "url";
198
- meta: {
199
- schemaVersion: "1.0";
200
- };
201
- answer: string;
202
- }, {
203
- type: "url";
204
- meta: {
205
- schemaVersion: "1.0";
206
- };
207
- answer: string;
208
- }>;
209
113
  export type BooleanAnswerType = z.infer<typeof BooleanAnswerSchema>;
210
114
  export type CurrencyAnswerType = z.infer<typeof CurrencyAnswerSchema>;
211
- export type EmailAnswerType = z.infer<typeof EmailAnswerSchema>;
212
115
  export type NumberAnswerType = z.infer<typeof NumberAnswerSchema>;
213
116
  export type NumberRangeAnswerType = z.infer<typeof NumberRangeAnswerSchema>;
214
- export type TextAnswerType = z.infer<typeof TextAnswerSchema>;
215
- export type TextAreaAnswerType = z.infer<typeof TextAreaAnswerSchema>;
216
- export type URLAnswerType = z.infer<typeof URLAnswerSchema>;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NumberRangeAnswerSchema = exports.NumberAnswerSchema = exports.CurrencyAnswerSchema = exports.BooleanAnswerSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const answer_1 = require("./answer");
6
+ // Answers to Number Question Types
7
+ exports.BooleanAnswerSchema = answer_1.AnswerSchema.merge(zod_1.z.object({
8
+ type: zod_1.z.literal('boolean'), // The type of answer
9
+ answer: zod_1.z.boolean() // The answer to the question (true/false)
10
+ }));
11
+ exports.CurrencyAnswerSchema = answer_1.AnswerSchema.merge(zod_1.z.object({
12
+ type: zod_1.z.literal('currency'), // The type of answer
13
+ answer: zod_1.z.number() // The answer to the question (number)
14
+ }));
15
+ exports.NumberAnswerSchema = answer_1.AnswerSchema.merge(zod_1.z.object({
16
+ type: zod_1.z.literal('number'), // The type of answer
17
+ answer: zod_1.z.number() // The answer to the question (number)
18
+ }));
19
+ exports.NumberRangeAnswerSchema = answer_1.AnswerSchema.merge(zod_1.z.object({
20
+ type: zod_1.z.literal('numberRange'), // The type of answer
21
+ answer: zod_1.z.object({
22
+ start: zod_1.z.number(), // The start number (number)
23
+ end: zod_1.z.number() // The end number (number)
24
+ })
25
+ }));