@dmptool/types 1.1.2 → 1.2.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 (78) hide show
  1. package/README.md +119 -47
  2. package/dist/answers/__tests__/answers.spec.js +20 -28
  3. package/dist/answers/__tests__/usage.spec.d.ts +1 -0
  4. package/dist/answers/__tests__/usage.spec.js +175 -0
  5. package/dist/answers/answer.d.ts +12 -15
  6. package/dist/answers/answer.js +3 -4
  7. package/dist/answers/dateAnswers.d.ts +30 -30
  8. package/dist/answers/dateAnswers.js +6 -5
  9. package/dist/answers/graphQLAnswers.d.ts +25 -25
  10. package/dist/answers/graphQLAnswers.js +4 -4
  11. package/dist/answers/index.d.ts +860 -1088
  12. package/dist/answers/index.js +2 -2
  13. package/dist/answers/numberAnswers.d.ts +41 -41
  14. package/dist/answers/numberAnswers.js +8 -8
  15. package/dist/answers/optionBasedAnswers.d.ts +55 -55
  16. package/dist/answers/optionBasedAnswers.js +10 -10
  17. package/dist/answers/tableAnswers.d.ts +811 -1772
  18. package/dist/answers/tableAnswers.js +12 -8
  19. package/dist/answers/textAnswers.d.ts +44 -44
  20. package/dist/answers/textAnswers.js +8 -8
  21. package/dist/questions/__tests__/graphQLQuestions.spec.js +6 -4
  22. package/dist/questions/__tests__/optionBasedQuestions.spec.js +4 -12
  23. package/dist/questions/__tests__/usage.spec.d.ts +8 -0
  24. package/dist/questions/__tests__/usage.spec.js +312 -0
  25. package/dist/questions/dateQuestions.d.ts +90 -101
  26. package/dist/questions/dateQuestions.js +15 -34
  27. package/dist/questions/graphQLQuestions.d.ts +176 -182
  28. package/dist/questions/graphQLQuestions.js +44 -45
  29. package/dist/questions/index.d.ts +1791 -2170
  30. package/dist/questions/index.js +2 -2
  31. package/dist/questions/numberQuestions.d.ts +126 -142
  32. package/dist/questions/numberQuestions.js +11 -45
  33. package/dist/questions/optionBasedQuestions.d.ts +197 -225
  34. package/dist/questions/optionBasedQuestions.js +24 -88
  35. package/dist/questions/question.d.ts +24 -56
  36. package/dist/questions/question.js +78 -18
  37. package/dist/questions/tableQuestions.d.ts +2637 -2930
  38. package/dist/questions/tableQuestions.js +9 -21
  39. package/dist/questions/textQuestions.d.ts +125 -145
  40. package/dist/questions/textQuestions.js +16 -57
  41. package/dist/schemas/affiliationSearchAnswer.schema.json +9 -12
  42. package/dist/schemas/affiliationSearchQuestion.schema.json +57 -50
  43. package/dist/schemas/anyAnswer.schema.json +228 -237
  44. package/dist/schemas/anyQuestion.schema.json +349 -517
  45. package/dist/schemas/anyTableColumnAnswer.schema.json +93 -106
  46. package/dist/schemas/anyTableColumnQuestion.schema.json +259 -382
  47. package/dist/schemas/booleanAnswer.schema.json +8 -11
  48. package/dist/schemas/booleanQuestion.schema.json +9 -15
  49. package/dist/schemas/checkboxesAnswer.schema.json +13 -14
  50. package/dist/schemas/checkboxesQuestion.schema.json +18 -24
  51. package/dist/schemas/currencyAnswer.schema.json +8 -11
  52. package/dist/schemas/currencyQuestion.schema.json +13 -17
  53. package/dist/schemas/dateAnswer.schema.json +8 -11
  54. package/dist/schemas/dateQuestion.schema.json +9 -15
  55. package/dist/schemas/dateRangeAnswer.schema.json +16 -21
  56. package/dist/schemas/dateRangeQuestion.schema.json +40 -21
  57. package/dist/schemas/emailAnswer.schema.json +8 -11
  58. package/dist/schemas/emailQuestion.schema.json +11 -16
  59. package/dist/schemas/filteredSearchQuestion.schema.json +0 -3
  60. package/dist/schemas/multiselectBoxAnswer.schema.json +13 -14
  61. package/dist/schemas/multiselectBoxQuestion.schema.json +20 -25
  62. package/dist/schemas/numberAnswer.schema.json +8 -11
  63. package/dist/schemas/numberQuestion.schema.json +11 -16
  64. package/dist/schemas/numberRangeAnswer.schema.json +17 -22
  65. package/dist/schemas/numberRangeQuestion.schema.json +22 -21
  66. package/dist/schemas/radioButtonsAnswer.schema.json +8 -11
  67. package/dist/schemas/radioButtonsQuestion.schema.json +18 -24
  68. package/dist/schemas/selectBoxAnswer.schema.json +8 -11
  69. package/dist/schemas/selectBoxQuestion.schema.json +20 -25
  70. package/dist/schemas/tableAnswer.schema.json +337 -343
  71. package/dist/schemas/tableQuestion.schema.json +279 -416
  72. package/dist/schemas/textAnswer.schema.json +8 -11
  73. package/dist/schemas/textAreaAnswer.schema.json +8 -11
  74. package/dist/schemas/textAreaQuestion.schema.json +13 -17
  75. package/dist/schemas/textQuestion.schema.json +9 -15
  76. package/dist/schemas/urlAnswer.schema.json +8 -11
  77. package/dist/schemas/urlQuestion.schema.json +9 -15
  78. package/package.json +1 -1
@@ -38,7 +38,7 @@ exports.AnyQuestionSchema = zod_1.z.discriminatedUnion('type', [
38
38
  dateQuestions_1.DateQuestionSchema,
39
39
  dateQuestions_1.DateRangeQuestionSchema,
40
40
  textQuestions_1.EmailQuestionSchema,
41
- graphQLQuestions_1.FilteredSearchQuestionSchema,
41
+ // FilteredSearchQuestionSchema,
42
42
  optionBasedQuestions_1.MultiselectBoxQuestionSchema,
43
43
  numberQuestions_1.NumberQuestionSchema,
44
44
  numberQuestions_1.NumberRangeQuestionSchema,
@@ -58,7 +58,7 @@ exports.QuestionSchemaMap = {
58
58
  date: dateQuestions_1.DateQuestionSchema,
59
59
  dateRange: dateQuestions_1.DateRangeQuestionSchema,
60
60
  email: textQuestions_1.EmailQuestionSchema,
61
- filteredSearch: graphQLQuestions_1.FilteredSearchQuestionSchema,
61
+ // filteredSearch: FilteredSearchQuestionSchema,
62
62
  multiselectBox: optionBasedQuestions_1.MultiselectBoxQuestionSchema,
63
63
  number: numberQuestions_1.NumberQuestionSchema,
64
64
  numberRange: numberQuestions_1.NumberRangeQuestionSchema,
@@ -1,24 +1,38 @@
1
1
  import { z } from "zod";
2
- export declare const CurrencyQuestionSchema: z.ZodObject<{} & {
2
+ export declare const CurrencyQuestionSchema: z.ZodObject<{
3
+ meta: z.ZodDefault<z.ZodObject<{
4
+ schemaVersion: z.ZodDefault<z.ZodString>;
5
+ title: z.ZodOptional<z.ZodString>;
6
+ usageDescription: z.ZodOptional<z.ZodString>;
7
+ }, "strip", z.ZodTypeAny, {
8
+ schemaVersion: string;
9
+ title?: string | undefined;
10
+ usageDescription?: string | undefined;
11
+ }, {
12
+ schemaVersion?: string | undefined;
13
+ title?: string | undefined;
14
+ usageDescription?: string | undefined;
15
+ }>>;
16
+ } & {
3
17
  type: z.ZodLiteral<"currency">;
4
- attributes: z.ZodOptional<z.ZodObject<{
18
+ attributes: z.ZodDefault<z.ZodObject<{
5
19
  label: z.ZodOptional<z.ZodString>;
6
20
  help: z.ZodOptional<z.ZodString>;
7
21
  labelTranslationKey: z.ZodOptional<z.ZodString>;
8
22
  } & {
9
23
  max: z.ZodOptional<z.ZodNumber>;
10
- min: z.ZodOptional<z.ZodNumber>;
11
- step: z.ZodOptional<z.ZodNumber>;
24
+ min: z.ZodDefault<z.ZodNumber>;
25
+ step: z.ZodDefault<z.ZodNumber>;
12
26
  } & {
13
- denomination: z.ZodOptional<z.ZodString>;
27
+ denomination: z.ZodDefault<z.ZodString>;
14
28
  }, "strip", z.ZodTypeAny, {
29
+ min: number;
30
+ step: number;
31
+ denomination: string;
15
32
  label?: string | undefined;
16
33
  help?: string | undefined;
17
34
  labelTranslationKey?: string | undefined;
18
35
  max?: number | undefined;
19
- min?: number | undefined;
20
- step?: number | undefined;
21
- denomination?: string | undefined;
22
36
  }, {
23
37
  label?: string | undefined;
24
38
  help?: string | undefined;
@@ -28,40 +42,22 @@ export declare const CurrencyQuestionSchema: z.ZodObject<{} & {
28
42
  step?: number | undefined;
29
43
  denomination?: string | undefined;
30
44
  }>>;
31
- meta: z.ZodOptional<z.ZodObject<{
32
- schemaVersion: z.ZodLiteral<"1.0">;
33
- } & {
34
- title: z.ZodOptional<z.ZodLiteral<"Currency Field">>;
35
- usageDescription: z.ZodOptional<z.ZodLiteral<"For questions that require a monetary amount (e.g. Cost or Budget).">>;
36
- defaultJSON: z.ZodOptional<z.ZodLiteral<string>>;
37
- }, "strip", z.ZodTypeAny, {
38
- schemaVersion: "1.0";
39
- title?: "Currency Field" | undefined;
40
- usageDescription?: "For questions that require a monetary amount (e.g. Cost or Budget)." | undefined;
41
- defaultJSON?: string | undefined;
42
- }, {
43
- schemaVersion: "1.0";
44
- title?: "Currency Field" | undefined;
45
- usageDescription?: "For questions that require a monetary amount (e.g. Cost or Budget)." | undefined;
46
- defaultJSON?: string | undefined;
47
- }>>;
48
45
  }, "strip", z.ZodTypeAny, {
49
46
  type: "currency";
50
- attributes?: {
47
+ attributes: {
48
+ min: number;
49
+ step: number;
50
+ denomination: string;
51
51
  label?: string | undefined;
52
52
  help?: string | undefined;
53
53
  labelTranslationKey?: string | undefined;
54
54
  max?: number | undefined;
55
- min?: number | undefined;
56
- step?: number | undefined;
57
- denomination?: string | undefined;
58
- } | undefined;
59
- meta?: {
60
- schemaVersion: "1.0";
61
- title?: "Currency Field" | undefined;
62
- usageDescription?: "For questions that require a monetary amount (e.g. Cost or Budget)." | undefined;
63
- defaultJSON?: string | undefined;
64
- } | undefined;
55
+ };
56
+ meta: {
57
+ schemaVersion: string;
58
+ title?: string | undefined;
59
+ usageDescription?: string | undefined;
60
+ };
65
61
  }, {
66
62
  type: "currency";
67
63
  attributes?: {
@@ -74,29 +70,42 @@ export declare const CurrencyQuestionSchema: z.ZodObject<{} & {
74
70
  denomination?: string | undefined;
75
71
  } | undefined;
76
72
  meta?: {
77
- schemaVersion: "1.0";
78
- title?: "Currency Field" | undefined;
79
- usageDescription?: "For questions that require a monetary amount (e.g. Cost or Budget)." | undefined;
80
- defaultJSON?: string | undefined;
73
+ schemaVersion?: string | undefined;
74
+ title?: string | undefined;
75
+ usageDescription?: string | undefined;
81
76
  } | undefined;
82
77
  }>;
83
- export declare const NumberQuestionSchema: z.ZodObject<{} & {
78
+ export declare const NumberQuestionSchema: z.ZodObject<{
79
+ meta: z.ZodDefault<z.ZodObject<{
80
+ schemaVersion: z.ZodDefault<z.ZodString>;
81
+ title: z.ZodOptional<z.ZodString>;
82
+ usageDescription: z.ZodOptional<z.ZodString>;
83
+ }, "strip", z.ZodTypeAny, {
84
+ schemaVersion: string;
85
+ title?: string | undefined;
86
+ usageDescription?: string | undefined;
87
+ }, {
88
+ schemaVersion?: string | undefined;
89
+ title?: string | undefined;
90
+ usageDescription?: string | undefined;
91
+ }>>;
92
+ } & {
84
93
  type: z.ZodLiteral<"number">;
85
- attributes: z.ZodOptional<z.ZodObject<{
94
+ attributes: z.ZodDefault<z.ZodObject<{
86
95
  label: z.ZodOptional<z.ZodString>;
87
96
  help: z.ZodOptional<z.ZodString>;
88
97
  labelTranslationKey: z.ZodOptional<z.ZodString>;
89
98
  } & {
90
99
  max: z.ZodOptional<z.ZodNumber>;
91
- min: z.ZodOptional<z.ZodNumber>;
92
- step: z.ZodOptional<z.ZodNumber>;
100
+ min: z.ZodDefault<z.ZodNumber>;
101
+ step: z.ZodDefault<z.ZodNumber>;
93
102
  }, "strip", z.ZodTypeAny, {
103
+ min: number;
104
+ step: number;
94
105
  label?: string | undefined;
95
106
  help?: string | undefined;
96
107
  labelTranslationKey?: string | undefined;
97
108
  max?: number | undefined;
98
- min?: number | undefined;
99
- step?: number | undefined;
100
109
  }, {
101
110
  label?: string | undefined;
102
111
  help?: string | undefined;
@@ -105,39 +114,21 @@ export declare const NumberQuestionSchema: z.ZodObject<{} & {
105
114
  min?: number | undefined;
106
115
  step?: number | undefined;
107
116
  }>>;
108
- meta: z.ZodOptional<z.ZodObject<{
109
- schemaVersion: z.ZodLiteral<"1.0">;
110
- } & {
111
- title: z.ZodOptional<z.ZodLiteral<"Number Field">>;
112
- usageDescription: z.ZodOptional<z.ZodLiteral<"For questions that require a single numeric value.">>;
113
- defaultJSON: z.ZodOptional<z.ZodLiteral<string>>;
114
- }, "strip", z.ZodTypeAny, {
115
- schemaVersion: "1.0";
116
- title?: "Number Field" | undefined;
117
- usageDescription?: "For questions that require a single numeric value." | undefined;
118
- defaultJSON?: string | undefined;
119
- }, {
120
- schemaVersion: "1.0";
121
- title?: "Number Field" | undefined;
122
- usageDescription?: "For questions that require a single numeric value." | undefined;
123
- defaultJSON?: string | undefined;
124
- }>>;
125
117
  }, "strip", z.ZodTypeAny, {
126
118
  type: "number";
127
- attributes?: {
119
+ attributes: {
120
+ min: number;
121
+ step: number;
128
122
  label?: string | undefined;
129
123
  help?: string | undefined;
130
124
  labelTranslationKey?: string | undefined;
131
125
  max?: number | undefined;
132
- min?: number | undefined;
133
- step?: number | undefined;
134
- } | undefined;
135
- meta?: {
136
- schemaVersion: "1.0";
137
- title?: "Number Field" | undefined;
138
- usageDescription?: "For questions that require a single numeric value." | undefined;
139
- defaultJSON?: string | undefined;
140
- } | undefined;
126
+ };
127
+ meta: {
128
+ schemaVersion: string;
129
+ title?: string | undefined;
130
+ usageDescription?: string | undefined;
131
+ };
141
132
  }, {
142
133
  type: "number";
143
134
  attributes?: {
@@ -149,14 +140,28 @@ export declare const NumberQuestionSchema: z.ZodObject<{} & {
149
140
  step?: number | undefined;
150
141
  } | undefined;
151
142
  meta?: {
152
- schemaVersion: "1.0";
153
- title?: "Number Field" | undefined;
154
- usageDescription?: "For questions that require a single numeric value." | undefined;
155
- defaultJSON?: string | undefined;
143
+ schemaVersion?: string | undefined;
144
+ title?: string | undefined;
145
+ usageDescription?: string | undefined;
156
146
  } | undefined;
157
147
  }>;
158
148
  export declare const NumberRangeQuestionSchema: z.ZodObject<{
159
- attributes: z.ZodOptional<z.ZodObject<{
149
+ meta: z.ZodDefault<z.ZodObject<{
150
+ schemaVersion: z.ZodDefault<z.ZodString>;
151
+ title: z.ZodOptional<z.ZodString>;
152
+ usageDescription: z.ZodOptional<z.ZodString>;
153
+ }, "strip", z.ZodTypeAny, {
154
+ schemaVersion: string;
155
+ title?: string | undefined;
156
+ usageDescription?: string | undefined;
157
+ }, {
158
+ schemaVersion?: string | undefined;
159
+ title?: string | undefined;
160
+ usageDescription?: string | undefined;
161
+ }>>;
162
+ } & {
163
+ type: z.ZodLiteral<"numberRange">;
164
+ attributes: z.ZodDefault<z.ZodObject<{
160
165
  label: z.ZodOptional<z.ZodString>;
161
166
  help: z.ZodOptional<z.ZodString>;
162
167
  labelTranslationKey: z.ZodOptional<z.ZodString>;
@@ -169,24 +174,22 @@ export declare const NumberRangeQuestionSchema: z.ZodObject<{
169
174
  help?: string | undefined;
170
175
  labelTranslationKey?: string | undefined;
171
176
  }>>;
172
- } & {
173
- type: z.ZodLiteral<"numberRange">;
174
- columns: z.ZodObject<{
175
- start: z.ZodOptional<z.ZodObject<{
177
+ columns: z.ZodDefault<z.ZodObject<{
178
+ start: z.ZodDefault<z.ZodObject<{
176
179
  label: z.ZodOptional<z.ZodString>;
177
180
  help: z.ZodOptional<z.ZodString>;
178
181
  labelTranslationKey: z.ZodOptional<z.ZodString>;
179
182
  } & {
180
183
  max: z.ZodOptional<z.ZodNumber>;
181
- min: z.ZodOptional<z.ZodNumber>;
182
- step: z.ZodOptional<z.ZodNumber>;
184
+ min: z.ZodDefault<z.ZodNumber>;
185
+ step: z.ZodDefault<z.ZodNumber>;
183
186
  }, "strip", z.ZodTypeAny, {
187
+ min: number;
188
+ step: number;
184
189
  label?: string | undefined;
185
190
  help?: string | undefined;
186
191
  labelTranslationKey?: string | undefined;
187
192
  max?: number | undefined;
188
- min?: number | undefined;
189
- step?: number | undefined;
190
193
  }, {
191
194
  label?: string | undefined;
192
195
  help?: string | undefined;
@@ -195,21 +198,21 @@ export declare const NumberRangeQuestionSchema: z.ZodObject<{
195
198
  min?: number | undefined;
196
199
  step?: number | undefined;
197
200
  }>>;
198
- end: z.ZodOptional<z.ZodObject<{
201
+ end: z.ZodDefault<z.ZodObject<{
199
202
  label: z.ZodOptional<z.ZodString>;
200
203
  help: z.ZodOptional<z.ZodString>;
201
204
  labelTranslationKey: z.ZodOptional<z.ZodString>;
202
205
  } & {
203
206
  max: z.ZodOptional<z.ZodNumber>;
204
- min: z.ZodOptional<z.ZodNumber>;
205
- step: z.ZodOptional<z.ZodNumber>;
207
+ min: z.ZodDefault<z.ZodNumber>;
208
+ step: z.ZodDefault<z.ZodNumber>;
206
209
  }, "strip", z.ZodTypeAny, {
210
+ min: number;
211
+ step: number;
207
212
  label?: string | undefined;
208
213
  help?: string | undefined;
209
214
  labelTranslationKey?: string | undefined;
210
215
  max?: number | undefined;
211
- min?: number | undefined;
212
- step?: number | undefined;
213
216
  }, {
214
217
  label?: string | undefined;
215
218
  help?: string | undefined;
@@ -219,22 +222,22 @@ export declare const NumberRangeQuestionSchema: z.ZodObject<{
219
222
  step?: number | undefined;
220
223
  }>>;
221
224
  }, "strip", z.ZodTypeAny, {
222
- start?: {
225
+ start: {
226
+ min: number;
227
+ step: number;
223
228
  label?: string | undefined;
224
229
  help?: string | undefined;
225
230
  labelTranslationKey?: string | undefined;
226
231
  max?: number | undefined;
227
- min?: number | undefined;
228
- step?: number | undefined;
229
- } | undefined;
230
- end?: {
232
+ };
233
+ end: {
234
+ min: number;
235
+ step: number;
231
236
  label?: string | undefined;
232
237
  help?: string | undefined;
233
238
  labelTranslationKey?: string | undefined;
234
239
  max?: number | undefined;
235
- min?: number | undefined;
236
- step?: number | undefined;
237
- } | undefined;
240
+ };
238
241
  }, {
239
242
  start?: {
240
243
  label?: string | undefined;
@@ -252,58 +255,50 @@ export declare const NumberRangeQuestionSchema: z.ZodObject<{
252
255
  min?: number | undefined;
253
256
  step?: number | undefined;
254
257
  } | undefined;
255
- }>;
256
- meta: z.ZodOptional<z.ZodObject<{
257
- schemaVersion: z.ZodLiteral<"1.0">;
258
- } & {
259
- title: z.ZodOptional<z.ZodLiteral<"Number Range">>;
260
- usageDescription: z.ZodOptional<z.ZodLiteral<"For questions that require a numerical range (e.g. From/To, Min/Max).">>;
261
- defaultJSON: z.ZodOptional<z.ZodLiteral<string>>;
262
- }, "strip", z.ZodTypeAny, {
263
- schemaVersion: "1.0";
264
- title?: "Number Range" | undefined;
265
- usageDescription?: "For questions that require a numerical range (e.g. From/To, Min/Max)." | undefined;
266
- defaultJSON?: string | undefined;
267
- }, {
268
- schemaVersion: "1.0";
269
- title?: "Number Range" | undefined;
270
- usageDescription?: "For questions that require a numerical range (e.g. From/To, Min/Max)." | undefined;
271
- defaultJSON?: string | undefined;
272
258
  }>>;
273
259
  }, "strip", z.ZodTypeAny, {
274
260
  type: "numberRange";
261
+ attributes: {
262
+ label?: string | undefined;
263
+ help?: string | undefined;
264
+ labelTranslationKey?: string | undefined;
265
+ };
266
+ meta: {
267
+ schemaVersion: string;
268
+ title?: string | undefined;
269
+ usageDescription?: string | undefined;
270
+ };
275
271
  columns: {
276
- start?: {
272
+ start: {
273
+ min: number;
274
+ step: number;
277
275
  label?: string | undefined;
278
276
  help?: string | undefined;
279
277
  labelTranslationKey?: string | undefined;
280
278
  max?: number | undefined;
281
- min?: number | undefined;
282
- step?: number | undefined;
283
- } | undefined;
284
- end?: {
279
+ };
280
+ end: {
281
+ min: number;
282
+ step: number;
285
283
  label?: string | undefined;
286
284
  help?: string | undefined;
287
285
  labelTranslationKey?: string | undefined;
288
286
  max?: number | undefined;
289
- min?: number | undefined;
290
- step?: number | undefined;
291
- } | undefined;
287
+ };
292
288
  };
289
+ }, {
290
+ type: "numberRange";
293
291
  attributes?: {
294
292
  label?: string | undefined;
295
293
  help?: string | undefined;
296
294
  labelTranslationKey?: string | undefined;
297
295
  } | undefined;
298
296
  meta?: {
299
- schemaVersion: "1.0";
300
- title?: "Number Range" | undefined;
301
- usageDescription?: "For questions that require a numerical range (e.g. From/To, Min/Max)." | undefined;
302
- defaultJSON?: string | undefined;
297
+ schemaVersion?: string | undefined;
298
+ title?: string | undefined;
299
+ usageDescription?: string | undefined;
303
300
  } | undefined;
304
- }, {
305
- type: "numberRange";
306
- columns: {
301
+ columns?: {
307
302
  start?: {
308
303
  label?: string | undefined;
309
304
  help?: string | undefined;
@@ -320,17 +315,6 @@ export declare const NumberRangeQuestionSchema: z.ZodObject<{
320
315
  min?: number | undefined;
321
316
  step?: number | undefined;
322
317
  } | undefined;
323
- };
324
- attributes?: {
325
- label?: string | undefined;
326
- help?: string | undefined;
327
- labelTranslationKey?: string | undefined;
328
- } | undefined;
329
- meta?: {
330
- schemaVersion: "1.0";
331
- title?: "Number Range" | undefined;
332
- usageDescription?: "For questions that require a numerical range (e.g. From/To, Min/Max)." | undefined;
333
- defaultJSON?: string | undefined;
334
318
  } | undefined;
335
319
  }>;
336
320
  export type CurrencyQuestionType = z.infer<typeof CurrencyQuestionSchema>;
@@ -4,60 +4,26 @@ exports.NumberRangeQuestionSchema = exports.NumberQuestionSchema = exports.Curre
4
4
  const zod_1 = require("zod");
5
5
  const question_1 = require("./question");
6
6
  const BaseAttributes = question_1.QuestionSchema.shape.attributes;
7
- const BaseMeta = question_1.QuestionSchema.shape.meta;
8
- const NumberAttributesSchema = BaseAttributes.unwrap().merge(zod_1.z.object({
9
- max: zod_1.z.number().optional(), // The highest value allowed (default no max)
10
- min: zod_1.z.number().optional(), // The lowest amount allowed (default 0)
11
- step: zod_1.z.number().optional() // The amount to increment. To allow decimals, use 0.01 (default 1)
7
+ const NumberAttributesSchema = BaseAttributes.merge(zod_1.z.object({
8
+ max: zod_1.z.number().optional(),
9
+ min: zod_1.z.number().default(0),
10
+ step: zod_1.z.number().default(1) // For floats, use a decimal with the level of precision: 0.01
12
11
  }));
13
- const defaultCurrencyJSON = {
14
- type: 'currency',
15
- attributes: Object.assign(Object.assign({}, question_1.defaultAttributes), { denomination: 'USD', max: undefined, min: 0, step: 1 }),
16
- meta: Object.assign({}, question_1.defaultMeta)
17
- };
18
12
  exports.CurrencyQuestionSchema = question_1.QuestionSchema.merge(zod_1.z.object({
19
13
  type: zod_1.z.literal('currency'),
20
14
  attributes: NumberAttributesSchema.merge(zod_1.z.object({
21
- denomination: zod_1.z.string().optional(), // The currency type (default is "USD")
22
- })).optional(),
23
- meta: BaseMeta.unwrap().merge(zod_1.z.object({
24
- title: zod_1.z.literal('Currency Field').optional(),
25
- usageDescription: zod_1.z.literal('For questions that require a monetary amount (e.g. Cost or Budget).').optional(),
26
- defaultJSON: zod_1.z.literal(JSON.stringify(defaultCurrencyJSON, null, 2)).optional(),
27
- })).optional()
15
+ denomination: zod_1.z.string().default('USD')
16
+ })).default({})
28
17
  }));
29
- const defaultNumberJSON = {
30
- type: 'number',
31
- attributes: Object.assign(Object.assign({}, question_1.defaultAttributes), { max: undefined, min: 0, step: 1 }),
32
- meta: Object.assign({}, question_1.defaultMeta)
33
- };
34
18
  exports.NumberQuestionSchema = question_1.QuestionSchema.merge(zod_1.z.object({
35
19
  type: zod_1.z.literal('number'),
36
- attributes: NumberAttributesSchema.optional(),
37
- meta: BaseMeta.unwrap().merge(zod_1.z.object({
38
- title: zod_1.z.literal('Number Field').optional(),
39
- usageDescription: zod_1.z.literal('For questions that require a single numeric value.').optional(),
40
- defaultJSON: zod_1.z.literal(JSON.stringify(defaultNumberJSON, null, 2)).optional(),
41
- })).optional()
20
+ attributes: NumberAttributesSchema.default({})
42
21
  }));
43
- const defaultNumberRangeJSON = {
44
- type: 'numberRange',
45
- attributes: Object.assign({}, question_1.defaultAttributes),
46
- columns: {
47
- start: Object.assign(Object.assign({}, question_1.defaultAttributes), { label: 'From', max: undefined, min: 0, step: 1 }),
48
- end: Object.assign(Object.assign({}, question_1.defaultAttributes), { label: 'To', max: undefined, min: 0, step: 1 })
49
- },
50
- meta: Object.assign({}, question_1.defaultMeta)
51
- };
52
22
  exports.NumberRangeQuestionSchema = question_1.QuestionSchema.merge(zod_1.z.object({
53
23
  type: zod_1.z.literal('numberRange'),
24
+ attributes: BaseAttributes.default({}),
54
25
  columns: zod_1.z.object({
55
- start: NumberAttributesSchema.optional(),
56
- end: NumberAttributesSchema.optional()
57
- }),
58
- meta: BaseMeta.unwrap().merge(zod_1.z.object({
59
- title: zod_1.z.literal('Number Range').optional(),
60
- usageDescription: zod_1.z.literal('For questions that require a numerical range (e.g. From/To, Min/Max).').optional(),
61
- defaultJSON: zod_1.z.literal(JSON.stringify(defaultNumberRangeJSON, null, 2)).optional(),
62
- })).optional()
26
+ start: NumberAttributesSchema.default({ label: 'From' }),
27
+ end: NumberAttributesSchema.default({ label: 'To' }),
28
+ }).default({})
63
29
  }));