@dmptool/types 1.1.0 → 1.1.2

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 (58) hide show
  1. package/README.md +2 -0
  2. package/dist/answers/__tests__/answers.spec.js +13 -7
  3. package/dist/answers/answer.d.ts +3 -3
  4. package/dist/answers/graphQLAnswers.d.ts +2 -2
  5. package/dist/answers/graphQLAnswers.js +2 -2
  6. package/dist/answers/index.d.ts +111 -74
  7. package/dist/answers/index.js +4 -4
  8. package/dist/answers/numberAnswers.d.ts +0 -25
  9. package/dist/answers/numberAnswers.js +1 -5
  10. package/dist/answers/optionBasedAnswers.d.ts +52 -2
  11. package/dist/answers/optionBasedAnswers.js +9 -1
  12. package/dist/answers/tableAnswers.d.ts +304 -140
  13. package/dist/answers/tableAnswers.js +3 -2
  14. package/dist/questions/__tests__/graphQLQuestions.spec.js +7 -7
  15. package/dist/questions/__tests__/numberQuestions.spec.js +0 -48
  16. package/dist/questions/__tests__/optionBasedQuestions.spec.js +98 -1
  17. package/dist/questions/dateQuestions.d.ts +47 -16
  18. package/dist/questions/dateQuestions.js +25 -1
  19. package/dist/questions/graphQLQuestions.d.ts +59 -28
  20. package/dist/questions/graphQLQuestions.js +40 -3
  21. package/dist/questions/index.d.ts +1567 -689
  22. package/dist/questions/index.js +7 -4
  23. package/dist/questions/numberQuestions.d.ts +71 -76
  24. package/dist/questions/numberQuestions.js +37 -8
  25. package/dist/questions/optionBasedQuestions.d.ts +227 -23
  26. package/dist/questions/optionBasedQuestions.js +89 -5
  27. package/dist/questions/question.d.ts +51 -4
  28. package/dist/questions/question.js +14 -2
  29. package/dist/questions/tableQuestions.d.ts +1965 -1056
  30. package/dist/questions/tableQuestions.js +14 -2
  31. package/dist/questions/textQuestions.d.ts +100 -40
  32. package/dist/questions/textQuestions.js +45 -7
  33. package/dist/schemas/affiliationSearchAnswer.schema.json +37 -0
  34. package/dist/schemas/affiliationSearchQuestion.schema.json +133 -0
  35. package/dist/schemas/anyAnswer.schema.json +41 -23
  36. package/dist/schemas/anyQuestion.schema.json +563 -146
  37. package/dist/schemas/anyTableColumnAnswer.schema.json +35 -14
  38. package/dist/schemas/anyTableColumnQuestion.schema.json +398 -119
  39. package/dist/schemas/booleanQuestion.schema.json +12 -0
  40. package/dist/schemas/checkboxesQuestion.schema.json +12 -0
  41. package/dist/schemas/currencyQuestion.schema.json +12 -0
  42. package/dist/schemas/dateQuestion.schema.json +12 -0
  43. package/dist/schemas/dateRangeQuestion.schema.json +12 -0
  44. package/dist/schemas/emailQuestion.schema.json +12 -0
  45. package/dist/schemas/filteredSearchQuestion.schema.json +10 -0
  46. package/dist/schemas/multiselectBoxAnswer.schema.json +40 -0
  47. package/dist/schemas/multiselectBoxQuestion.schema.json +90 -0
  48. package/dist/schemas/numberQuestion.schema.json +12 -0
  49. package/dist/schemas/numberRangeQuestion.schema.json +12 -0
  50. package/dist/schemas/radioButtonsQuestion.schema.json +12 -0
  51. package/dist/schemas/selectBoxAnswer.schema.json +1 -4
  52. package/dist/schemas/selectBoxQuestion.schema.json +18 -1
  53. package/dist/schemas/tableAnswer.schema.json +35 -14
  54. package/dist/schemas/tableQuestion.schema.json +420 -120
  55. package/dist/schemas/textAreaQuestion.schema.json +15 -4
  56. package/dist/schemas/textQuestion.schema.json +12 -0
  57. package/dist/schemas/urlQuestion.schema.json +12 -0
  58. package/package.json +1 -1
@@ -8,7 +8,7 @@
8
8
  "properties": {
9
9
  "type": {
10
10
  "type": "string",
11
- "const": "boolean"
11
+ "const": "affiliationSearch"
12
12
  },
13
13
  "attributes": {
14
14
  "type": "object",
@@ -21,9 +21,6 @@
21
21
  },
22
22
  "labelTranslationKey": {
23
23
  "type": "string"
24
- },
25
- "checked": {
26
- "type": "boolean"
27
24
  }
28
25
  },
29
26
  "additionalProperties": false
@@ -34,16 +31,102 @@
34
31
  "schemaVersion": {
35
32
  "type": "string",
36
33
  "const": "1.0"
34
+ },
35
+ "title": {
36
+ "type": "string",
37
+ "const": "Affiliation Search"
38
+ },
39
+ "usageDescription": {
40
+ "type": "string",
41
+ "const": "For questions that require the user to select from a controlled list of institutions."
42
+ },
43
+ "defaultJSON": {
44
+ "type": "string",
45
+ "const": "{\"type\":\"affiliationSearch\",\"attributes\":{},\"meta\":{\"schemaVersion\":\"1.0\"},\"graphQL\":{\"query\":\"query Affiliations($name: String!){affiliations(name: $name) { totalCount nextCursor items {id displayName uri}}}\",\"queryId\":\"useAffiliationsQuery\",\"variables\":[{\"name\":\"term\",\"type\":\"string\",\"label\":\"Search for your institution\",\"minLength\":3,\"labelTranslationKey\":\"SignupPage.institutionHelp\"}],\"answerField\":\"uri\",\"displayFields\":[{\"label\":\"Institution\",\"propertyName\":\"displayName\",\"labelTranslationKey\":\"SignupPage.institution\"}],\"responseField\":\"affiliations.items\"}}"
37
46
  }
38
47
  },
39
48
  "required": [
40
49
  "schemaVersion"
41
50
  ],
42
51
  "additionalProperties": false
52
+ },
53
+ "graphQL": {
54
+ "type": "object",
55
+ "properties": {
56
+ "displayFields": {
57
+ "type": "array",
58
+ "items": {
59
+ "type": "object",
60
+ "properties": {
61
+ "propertyName": {
62
+ "type": "string"
63
+ },
64
+ "label": {
65
+ "type": "string"
66
+ },
67
+ "labelTranslationKey": {
68
+ "type": "string"
69
+ }
70
+ },
71
+ "required": [
72
+ "propertyName",
73
+ "label"
74
+ ],
75
+ "additionalProperties": false
76
+ }
77
+ },
78
+ "localQueryId": {
79
+ "type": "string"
80
+ },
81
+ "query": {
82
+ "type": "string"
83
+ },
84
+ "responseField": {
85
+ "type": "string"
86
+ },
87
+ "variables": {
88
+ "type": "array",
89
+ "items": {
90
+ "type": "object",
91
+ "properties": {
92
+ "minLength": {
93
+ "type": "number"
94
+ },
95
+ "label": {
96
+ "type": "string"
97
+ },
98
+ "labelTranslationKey": {
99
+ "type": "string"
100
+ },
101
+ "name": {
102
+ "type": "string"
103
+ },
104
+ "type": {
105
+ "type": "string"
106
+ },
107
+ "defaultValue": {
108
+ "type": "string"
109
+ }
110
+ },
111
+ "required": [
112
+ "name",
113
+ "type"
114
+ ],
115
+ "additionalProperties": false
116
+ }
117
+ }
118
+ },
119
+ "required": [
120
+ "displayFields",
121
+ "responseField"
122
+ ],
123
+ "additionalProperties": false
43
124
  }
44
125
  },
45
126
  "required": [
46
- "type"
127
+ "type",
128
+ "meta",
129
+ "graphQL"
47
130
  ],
48
131
  "additionalProperties": false
49
132
  },
@@ -52,7 +135,7 @@
52
135
  "properties": {
53
136
  "type": {
54
137
  "type": "string",
55
- "const": "checkBoxes"
138
+ "const": "boolean"
56
139
  },
57
140
  "attributes": {
58
141
  "type": "object",
@@ -65,12 +148,76 @@
65
148
  },
66
149
  "labelTranslationKey": {
67
150
  "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/attributes/properties/labelTranslationKey"
151
+ },
152
+ "checked": {
153
+ "type": "boolean"
154
+ }
155
+ },
156
+ "additionalProperties": false
157
+ },
158
+ "meta": {
159
+ "type": "object",
160
+ "properties": {
161
+ "schemaVersion": {
162
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
163
+ },
164
+ "title": {
165
+ "type": "string",
166
+ "const": "Yes/No Field"
167
+ },
168
+ "usageDescription": {
169
+ "type": "string",
170
+ "const": "For questions that require a simple Yes/No response."
171
+ },
172
+ "defaultJSON": {
173
+ "type": "string",
174
+ "const": "{\n \"attributes\": {\n \"checked\": false\n },\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
68
175
  }
69
176
  },
177
+ "required": [
178
+ "schemaVersion"
179
+ ],
70
180
  "additionalProperties": false
181
+ }
182
+ },
183
+ "required": [
184
+ "type"
185
+ ],
186
+ "additionalProperties": false
187
+ },
188
+ {
189
+ "type": "object",
190
+ "properties": {
191
+ "type": {
192
+ "type": "string",
193
+ "const": "checkBoxes"
194
+ },
195
+ "attributes": {
196
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/attributes"
71
197
  },
72
198
  "meta": {
73
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
199
+ "type": "object",
200
+ "properties": {
201
+ "schemaVersion": {
202
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
203
+ },
204
+ "title": {
205
+ "type": "string",
206
+ "const": "Check Boxes"
207
+ },
208
+ "usageDescription": {
209
+ "type": "string",
210
+ "const": "For multiple choice questions where users can select multiple options."
211
+ },
212
+ "defaultJSON": {
213
+ "type": "string",
214
+ "const": "{\n \"type\": \"checkBoxes\",\n \"attributes\": {},\n \"options\": [\n {\n \"label\": \"Option 1\",\n \"value\": \"1\",\n \"checked\": false\n }\n ],\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
215
+ }
216
+ },
217
+ "required": [
218
+ "schemaVersion"
219
+ ],
220
+ "additionalProperties": false
74
221
  },
75
222
  "options": {
76
223
  "type": "array",
@@ -136,7 +283,28 @@
136
283
  "additionalProperties": false
137
284
  },
138
285
  "meta": {
139
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
286
+ "type": "object",
287
+ "properties": {
288
+ "schemaVersion": {
289
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
290
+ },
291
+ "title": {
292
+ "type": "string",
293
+ "const": "Currency Field"
294
+ },
295
+ "usageDescription": {
296
+ "type": "string",
297
+ "const": "For questions that require a monetary amount (e.g. Cost or Budget)."
298
+ },
299
+ "defaultJSON": {
300
+ "type": "string",
301
+ "const": "{\n \"type\": \"currency\",\n \"attributes\": {\n \"denomination\": \"USD\",\n \"min\": 0,\n \"step\": 1\n },\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
302
+ }
303
+ },
304
+ "required": [
305
+ "schemaVersion"
306
+ ],
307
+ "additionalProperties": false
140
308
  }
141
309
  },
142
310
  "required": [
@@ -176,7 +344,28 @@
176
344
  "additionalProperties": false
177
345
  },
178
346
  "meta": {
179
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
347
+ "type": "object",
348
+ "properties": {
349
+ "schemaVersion": {
350
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
351
+ },
352
+ "title": {
353
+ "type": "string",
354
+ "const": "Date Field"
355
+ },
356
+ "usageDescription": {
357
+ "type": "string",
358
+ "const": "For questions that require a date."
359
+ },
360
+ "defaultJSON": {
361
+ "type": "string",
362
+ "const": "{\"type\":\"date\",\"attributes\":{\"step\":1},\"meta\":{\"schemaVersion\":\"1.0\"}}"
363
+ }
364
+ },
365
+ "required": [
366
+ "schemaVersion"
367
+ ],
368
+ "additionalProperties": false
180
369
  }
181
370
  },
182
371
  "required": [
@@ -192,19 +381,40 @@
192
381
  "const": "dateRange"
193
382
  },
194
383
  "attributes": {
195
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/1/properties/attributes"
384
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/attributes"
196
385
  },
197
386
  "meta": {
198
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
387
+ "type": "object",
388
+ "properties": {
389
+ "schemaVersion": {
390
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
391
+ },
392
+ "title": {
393
+ "type": "string",
394
+ "const": "Date Range"
395
+ },
396
+ "usageDescription": {
397
+ "type": "string",
398
+ "const": "For questions that require a date range (e.g. From/To, Start/End)"
399
+ },
400
+ "defaultJSON": {
401
+ "type": "string",
402
+ "const": "{\"type\":\"dateRange\",\"attributes\":{},\"columns\":{\"start\":{\"label\":\"Start\",\"step\":1},\"end\":{\"label\":\"End\",\"step\":1}}}"
403
+ }
404
+ },
405
+ "required": [
406
+ "schemaVersion"
407
+ ],
408
+ "additionalProperties": false
199
409
  },
200
410
  "columns": {
201
411
  "type": "object",
202
412
  "properties": {
203
413
  "start": {
204
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/3/properties/attributes"
414
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/4/properties/attributes"
205
415
  },
206
416
  "end": {
207
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/3/properties/attributes"
417
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/4/properties/attributes"
208
418
  }
209
419
  },
210
420
  "additionalProperties": false
@@ -251,7 +461,28 @@
251
461
  "additionalProperties": false
252
462
  },
253
463
  "meta": {
254
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
464
+ "type": "object",
465
+ "properties": {
466
+ "schemaVersion": {
467
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
468
+ },
469
+ "title": {
470
+ "type": "string",
471
+ "const": "Email Field"
472
+ },
473
+ "usageDescription": {
474
+ "type": "string",
475
+ "const": "For questions that require require email address(es)."
476
+ },
477
+ "defaultJSON": {
478
+ "type": "string",
479
+ "const": "{\"type\":\"email\",\"attributes\":{\"maxLength\":255,\"minLength\":1,\"multiple\":false},\"meta\":{\"schemaVersion\":\"1.0\"}}"
480
+ }
481
+ },
482
+ "required": [
483
+ "schemaVersion"
484
+ ],
485
+ "additionalProperties": false
255
486
  }
256
487
  },
257
488
  "required": [
@@ -285,79 +516,29 @@
285
516
  "additionalProperties": false
286
517
  },
287
518
  "meta": {
288
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
289
- },
290
- "graphQL": {
291
519
  "type": "object",
292
520
  "properties": {
293
- "displayFields": {
294
- "type": "array",
295
- "items": {
296
- "type": "object",
297
- "properties": {
298
- "propertyName": {
299
- "type": "string"
300
- },
301
- "label": {
302
- "type": "string"
303
- },
304
- "labelTranslationKey": {
305
- "type": "string"
306
- }
307
- },
308
- "required": [
309
- "propertyName",
310
- "label"
311
- ],
312
- "additionalProperties": false
313
- }
521
+ "schemaVersion": {
522
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
314
523
  },
315
- "localQueryId": {
316
- "type": "string"
524
+ "title": {
525
+ "type": "string",
526
+ "const": "Not yet implemented"
317
527
  },
318
- "query": {
528
+ "usageDescription": {
319
529
  "type": "string"
320
530
  },
321
- "responseField": {
531
+ "defaultJSON": {
322
532
  "type": "string"
323
- },
324
- "variables": {
325
- "type": "array",
326
- "items": {
327
- "type": "object",
328
- "properties": {
329
- "minLength": {
330
- "type": "number"
331
- },
332
- "label": {
333
- "type": "string"
334
- },
335
- "labelTranslationKey": {
336
- "type": "string"
337
- },
338
- "name": {
339
- "type": "string"
340
- },
341
- "type": {
342
- "type": "string"
343
- },
344
- "defaultValue": {
345
- "type": "string"
346
- }
347
- },
348
- "required": [
349
- "name",
350
- "type"
351
- ],
352
- "additionalProperties": false
353
- }
354
533
  }
355
534
  },
356
535
  "required": [
357
- "displayFields",
358
- "responseField"
536
+ "schemaVersion"
359
537
  ],
360
538
  "additionalProperties": false
539
+ },
540
+ "graphQL": {
541
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/graphQL"
361
542
  }
362
543
  },
363
544
  "required": [
@@ -386,19 +567,40 @@
386
567
  "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/attributes/properties/labelTranslationKey"
387
568
  },
388
569
  "max": {
389
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/2/properties/attributes/properties/max"
570
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/3/properties/attributes/properties/max"
390
571
  },
391
572
  "min": {
392
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/2/properties/attributes/properties/min"
573
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/3/properties/attributes/properties/min"
393
574
  },
394
575
  "step": {
395
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/2/properties/attributes/properties/step"
576
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/3/properties/attributes/properties/step"
396
577
  }
397
578
  },
398
579
  "additionalProperties": false
399
580
  },
400
581
  "meta": {
401
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
582
+ "type": "object",
583
+ "properties": {
584
+ "schemaVersion": {
585
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
586
+ },
587
+ "title": {
588
+ "type": "string",
589
+ "const": "Number Field"
590
+ },
591
+ "usageDescription": {
592
+ "type": "string",
593
+ "const": "For questions that require a single numeric value."
594
+ },
595
+ "defaultJSON": {
596
+ "type": "string",
597
+ "const": "{\n \"type\": \"number\",\n \"attributes\": {\n \"min\": 0,\n \"step\": 1\n },\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
598
+ }
599
+ },
600
+ "required": [
601
+ "schemaVersion"
602
+ ],
603
+ "additionalProperties": false
402
604
  }
403
605
  },
404
606
  "required": [
@@ -414,10 +616,31 @@
414
616
  "const": "radioButtons"
415
617
  },
416
618
  "attributes": {
417
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/1/properties/attributes"
619
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/attributes"
418
620
  },
419
621
  "meta": {
420
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
622
+ "type": "object",
623
+ "properties": {
624
+ "schemaVersion": {
625
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
626
+ },
627
+ "title": {
628
+ "type": "string",
629
+ "const": "Radio Buttons"
630
+ },
631
+ "usageDescription": {
632
+ "type": "string",
633
+ "const": "For multiple choice questions where users select just one option."
634
+ },
635
+ "defaultJSON": {
636
+ "type": "string",
637
+ "const": "{\n \"type\": \"radioButtons\",\n \"attributes\": {},\n \"options\": [\n {\n \"label\": \"Option 1\",\n \"value\": \"option1\",\n \"selected\": false\n }\n ],\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
638
+ }
639
+ },
640
+ "required": [
641
+ "schemaVersion"
642
+ ],
643
+ "additionalProperties": false
421
644
  },
422
645
  "options": {
423
646
  "type": "array",
@@ -425,10 +648,10 @@
425
648
  "type": "object",
426
649
  "properties": {
427
650
  "label": {
428
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/1/properties/options/items/properties/label"
651
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/2/properties/options/items/properties/label"
429
652
  },
430
653
  "value": {
431
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/1/properties/options/items/properties/value"
654
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/2/properties/options/items/properties/value"
432
655
  },
433
656
  "selected": {
434
657
  "type": "boolean"
@@ -468,23 +691,49 @@
468
691
  "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/attributes/properties/labelTranslationKey"
469
692
  },
470
693
  "multiple": {
471
- "type": "boolean"
694
+ "type": "boolean",
695
+ "const": false
472
696
  }
473
697
  },
698
+ "required": [
699
+ "multiple"
700
+ ],
474
701
  "additionalProperties": false
475
702
  },
476
703
  "meta": {
477
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
704
+ "type": "object",
705
+ "properties": {
706
+ "schemaVersion": {
707
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
708
+ },
709
+ "title": {
710
+ "type": "string",
711
+ "const": "Select Box"
712
+ },
713
+ "usageDescription": {
714
+ "type": "string",
715
+ "const": "For questions where users select one option from a list."
716
+ },
717
+ "defaultJSON": {
718
+ "type": "string",
719
+ "const": "{\n \"type\": \"selectBox\",\n \"attributes\": {\n \"multiple\": false\n },\n \"options\": [\n {\n \"label\": \"Option 1\",\n \"value\": \"option1\"\n }\n ],\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
720
+ }
721
+ },
722
+ "required": [
723
+ "schemaVersion"
724
+ ],
725
+ "additionalProperties": false
478
726
  },
479
727
  "options": {
480
728
  "type": "array",
481
729
  "items": {
482
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/8/properties/options/items"
730
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/9/properties/options/items"
483
731
  }
484
732
  }
485
733
  },
486
734
  "required": [
487
735
  "type",
736
+ "attributes",
488
737
  "options"
489
738
  ],
490
739
  "additionalProperties": false
@@ -519,6 +768,9 @@
519
768
  },
520
769
  "rows": {
521
770
  "type": "number"
771
+ },
772
+ "asRichText": {
773
+ "type": "boolean"
522
774
  }
523
775
  },
524
776
  "additionalProperties": false
@@ -529,8 +781,17 @@
529
781
  "schemaVersion": {
530
782
  "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
531
783
  },
532
- "asRichText": {
533
- "type": "boolean"
784
+ "title": {
785
+ "type": "string",
786
+ "const": "Text Area"
787
+ },
788
+ "usageDescription": {
789
+ "type": "string",
790
+ "const": "For questions that require longer answers, you can select formatting options too."
791
+ },
792
+ "defaultJSON": {
793
+ "type": "string",
794
+ "const": "{\"type\":\"textArea\",\"attributes\":{\"cols\":20,\"rows\":2,\"asRichText\":true},\"meta\":{\"schemaVersion\":\"1.0\"}}"
534
795
  }
535
796
  },
536
797
  "required": [
@@ -540,8 +801,7 @@
540
801
  }
541
802
  },
542
803
  "required": [
543
- "type",
544
- "meta"
804
+ "type"
545
805
  ],
546
806
  "additionalProperties": false
547
807
  },
@@ -565,19 +825,40 @@
565
825
  "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/attributes/properties/labelTranslationKey"
566
826
  },
567
827
  "maxLength": {
568
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/5/properties/attributes/properties/maxLength"
828
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/6/properties/attributes/properties/maxLength"
569
829
  },
570
830
  "minLength": {
571
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/5/properties/attributes/properties/minLength"
831
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/6/properties/attributes/properties/minLength"
572
832
  },
573
833
  "pattern": {
574
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/5/properties/attributes/properties/pattern"
834
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/6/properties/attributes/properties/pattern"
575
835
  }
576
836
  },
577
837
  "additionalProperties": false
578
838
  },
579
839
  "meta": {
580
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
840
+ "type": "object",
841
+ "properties": {
842
+ "schemaVersion": {
843
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
844
+ },
845
+ "title": {
846
+ "type": "string",
847
+ "const": "Text Field"
848
+ },
849
+ "usageDescription": {
850
+ "type": "string",
851
+ "const": "For questions that require short, simple answers."
852
+ },
853
+ "defaultJSON": {
854
+ "type": "string",
855
+ "const": "{\"type\":\"text\",\"attributes\":{\"maxLength\":255},\"meta\":{\"schemaVersion\":\"1.0\"}}"
856
+ }
857
+ },
858
+ "required": [
859
+ "schemaVersion"
860
+ ],
861
+ "additionalProperties": false
581
862
  }
582
863
  },
583
864
  "required": [
@@ -585,29 +866,6 @@
585
866
  ],
586
867
  "additionalProperties": false
587
868
  },
588
- {
589
- "type": "object",
590
- "properties": {
591
- "type": {
592
- "type": "string",
593
- "const": "typeaheadSearch"
594
- },
595
- "attributes": {
596
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/1/properties/attributes"
597
- },
598
- "meta": {
599
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
600
- },
601
- "graphQL": {
602
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/6/properties/graphQL"
603
- }
604
- },
605
- "required": [
606
- "type",
607
- "graphQL"
608
- ],
609
- "additionalProperties": false
610
- },
611
869
  {
612
870
  "type": "object",
613
871
  "properties": {
@@ -616,10 +874,31 @@
616
874
  "const": "url"
617
875
  },
618
876
  "attributes": {
619
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/11/properties/attributes"
877
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/12/properties/attributes"
620
878
  },
621
879
  "meta": {
622
- "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta"
880
+ "type": "object",
881
+ "properties": {
882
+ "schemaVersion": {
883
+ "$ref": "#/definitions/AnyTableColumnQuestion/anyOf/0/properties/meta/properties/schemaVersion"
884
+ },
885
+ "title": {
886
+ "type": "string",
887
+ "const": "URL Field"
888
+ },
889
+ "usageDescription": {
890
+ "type": "string",
891
+ "const": "For questions that require a website, DOI or other URL."
892
+ },
893
+ "defaultJSON": {
894
+ "type": "string",
895
+ "const": "{\"type\":\"url\",\"attributes\":{\"maxLength\":255},\"meta\":{\"schemaVersion\":\"1.0\"}}"
896
+ }
897
+ },
898
+ "required": [
899
+ "schemaVersion"
900
+ ],
901
+ "additionalProperties": false
623
902
  }
624
903
  },
625
904
  "required": [