@dmptool/types 1.1.1 → 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 (54) hide show
  1. package/dist/answers/__tests__/answers.spec.js +11 -5
  2. package/dist/answers/answer.d.ts +3 -3
  3. package/dist/answers/graphQLAnswers.d.ts +2 -2
  4. package/dist/answers/graphQLAnswers.js +2 -2
  5. package/dist/answers/index.d.ts +92 -55
  6. package/dist/answers/index.js +2 -2
  7. package/dist/answers/optionBasedAnswers.d.ts +27 -2
  8. package/dist/answers/optionBasedAnswers.js +5 -1
  9. package/dist/answers/tableAnswers.d.ts +268 -104
  10. package/dist/answers/tableAnswers.js +2 -1
  11. package/dist/questions/__tests__/graphQLQuestions.spec.js +7 -7
  12. package/dist/questions/__tests__/optionBasedQuestions.spec.js +48 -1
  13. package/dist/questions/dateQuestions.d.ts +47 -16
  14. package/dist/questions/dateQuestions.js +25 -1
  15. package/dist/questions/graphQLQuestions.d.ts +59 -28
  16. package/dist/questions/graphQLQuestions.js +40 -3
  17. package/dist/questions/index.d.ts +1363 -646
  18. package/dist/questions/index.js +4 -2
  19. package/dist/questions/numberQuestions.d.ts +71 -25
  20. package/dist/questions/numberQuestions.js +36 -1
  21. package/dist/questions/optionBasedQuestions.d.ts +197 -44
  22. package/dist/questions/optionBasedQuestions.js +84 -6
  23. package/dist/questions/question.d.ts +51 -4
  24. package/dist/questions/question.js +14 -2
  25. package/dist/questions/tableQuestions.d.ts +1841 -932
  26. package/dist/questions/tableQuestions.js +13 -1
  27. package/dist/questions/textQuestions.d.ts +100 -40
  28. package/dist/questions/textQuestions.js +45 -7
  29. package/dist/schemas/affiliationSearchAnswer.schema.json +37 -0
  30. package/dist/schemas/affiliationSearchQuestion.schema.json +133 -0
  31. package/dist/schemas/anyAnswer.schema.json +41 -23
  32. package/dist/schemas/anyQuestion.schema.json +533 -149
  33. package/dist/schemas/anyTableColumnAnswer.schema.json +35 -14
  34. package/dist/schemas/anyTableColumnQuestion.schema.json +397 -119
  35. package/dist/schemas/booleanQuestion.schema.json +13 -2
  36. package/dist/schemas/checkboxesQuestion.schema.json +12 -0
  37. package/dist/schemas/currencyQuestion.schema.json +12 -0
  38. package/dist/schemas/dateQuestion.schema.json +12 -0
  39. package/dist/schemas/dateRangeQuestion.schema.json +12 -0
  40. package/dist/schemas/emailQuestion.schema.json +12 -0
  41. package/dist/schemas/filteredSearchQuestion.schema.json +10 -0
  42. package/dist/schemas/multiselectBoxAnswer.schema.json +40 -0
  43. package/dist/schemas/multiselectBoxQuestion.schema.json +90 -0
  44. package/dist/schemas/numberQuestion.schema.json +12 -0
  45. package/dist/schemas/numberRangeQuestion.schema.json +12 -0
  46. package/dist/schemas/radioButtonsQuestion.schema.json +12 -0
  47. package/dist/schemas/selectBoxAnswer.schema.json +1 -4
  48. package/dist/schemas/selectBoxQuestion.schema.json +18 -1
  49. package/dist/schemas/tableAnswer.schema.json +35 -14
  50. package/dist/schemas/tableQuestion.schema.json +419 -120
  51. package/dist/schemas/textAreaQuestion.schema.json +15 -4
  52. package/dist/schemas/textQuestion.schema.json +12 -0
  53. package/dist/schemas/urlQuestion.schema.json +12 -0
  54. package/package.json +1 -1
@@ -44,6 +44,18 @@
44
44
  "schemaVersion": {
45
45
  "type": "string",
46
46
  "const": "1.0"
47
+ },
48
+ "title": {
49
+ "type": "string",
50
+ "const": "Table"
51
+ },
52
+ "usageDescription": {
53
+ "type": "string",
54
+ "const": "For questions that require a tabular format."
55
+ },
56
+ "defaultJSON": {
57
+ "type": "string",
58
+ "const": "{\"type\":\"table\",\"columns\":[],\"attributes\":{\"canAddRows\":true,\"canRemoveRows\":true,\"initialRows\":1},\"meta\":{\"schemaVersion\":\"1.0\"}}"
47
59
  }
48
60
  },
49
61
  "required": [
@@ -66,7 +78,7 @@
66
78
  "properties": {
67
79
  "type": {
68
80
  "type": "string",
69
- "const": "boolean"
81
+ "const": "affiliationSearch"
70
82
  },
71
83
  "attributes": {
72
84
  "type": "object",
@@ -79,20 +91,111 @@
79
91
  },
80
92
  "labelTranslationKey": {
81
93
  "$ref": "#/definitions/TableQuestion/properties/attributes/properties/labelTranslationKey"
82
- },
83
- "checked": {
84
- "type": "boolean"
85
94
  }
86
95
  },
87
96
  "additionalProperties": false
88
97
  },
89
98
  "meta": {
90
- "$ref": "#/definitions/TableQuestion/properties/meta"
99
+ "type": "object",
100
+ "properties": {
101
+ "schemaVersion": {
102
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
103
+ },
104
+ "title": {
105
+ "type": "string",
106
+ "const": "Affiliation Search"
107
+ },
108
+ "usageDescription": {
109
+ "type": "string",
110
+ "const": "For questions that require the user to select from a controlled list of institutions."
111
+ },
112
+ "defaultJSON": {
113
+ "type": "string",
114
+ "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\"}}"
115
+ }
116
+ },
117
+ "required": [
118
+ "schemaVersion"
119
+ ],
120
+ "additionalProperties": false
121
+ },
122
+ "graphQL": {
123
+ "type": "object",
124
+ "properties": {
125
+ "displayFields": {
126
+ "type": "array",
127
+ "items": {
128
+ "type": "object",
129
+ "properties": {
130
+ "propertyName": {
131
+ "type": "string"
132
+ },
133
+ "label": {
134
+ "type": "string"
135
+ },
136
+ "labelTranslationKey": {
137
+ "type": "string"
138
+ }
139
+ },
140
+ "required": [
141
+ "propertyName",
142
+ "label"
143
+ ],
144
+ "additionalProperties": false
145
+ }
146
+ },
147
+ "localQueryId": {
148
+ "type": "string"
149
+ },
150
+ "query": {
151
+ "type": "string"
152
+ },
153
+ "responseField": {
154
+ "type": "string"
155
+ },
156
+ "variables": {
157
+ "type": "array",
158
+ "items": {
159
+ "type": "object",
160
+ "properties": {
161
+ "minLength": {
162
+ "type": "number"
163
+ },
164
+ "label": {
165
+ "type": "string"
166
+ },
167
+ "labelTranslationKey": {
168
+ "type": "string"
169
+ },
170
+ "name": {
171
+ "type": "string"
172
+ },
173
+ "type": {
174
+ "type": "string"
175
+ },
176
+ "defaultValue": {
177
+ "type": "string"
178
+ }
179
+ },
180
+ "required": [
181
+ "name",
182
+ "type"
183
+ ],
184
+ "additionalProperties": false
185
+ }
186
+ }
187
+ },
188
+ "required": [
189
+ "displayFields",
190
+ "responseField"
191
+ ],
192
+ "additionalProperties": false
91
193
  }
92
194
  },
93
195
  "required": [
94
196
  "type",
95
- "attributes"
197
+ "meta",
198
+ "graphQL"
96
199
  ],
97
200
  "additionalProperties": false
98
201
  },
@@ -101,7 +204,7 @@
101
204
  "properties": {
102
205
  "type": {
103
206
  "type": "string",
104
- "const": "checkBoxes"
207
+ "const": "boolean"
105
208
  },
106
209
  "attributes": {
107
210
  "type": "object",
@@ -114,12 +217,76 @@
114
217
  },
115
218
  "labelTranslationKey": {
116
219
  "$ref": "#/definitions/TableQuestion/properties/attributes/properties/labelTranslationKey"
220
+ },
221
+ "checked": {
222
+ "type": "boolean"
117
223
  }
118
224
  },
119
225
  "additionalProperties": false
120
226
  },
121
227
  "meta": {
122
- "$ref": "#/definitions/TableQuestion/properties/meta"
228
+ "type": "object",
229
+ "properties": {
230
+ "schemaVersion": {
231
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
232
+ },
233
+ "title": {
234
+ "type": "string",
235
+ "const": "Yes/No Field"
236
+ },
237
+ "usageDescription": {
238
+ "type": "string",
239
+ "const": "For questions that require a simple Yes/No response."
240
+ },
241
+ "defaultJSON": {
242
+ "type": "string",
243
+ "const": "{\n \"attributes\": {\n \"checked\": false\n },\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
244
+ }
245
+ },
246
+ "required": [
247
+ "schemaVersion"
248
+ ],
249
+ "additionalProperties": false
250
+ }
251
+ },
252
+ "required": [
253
+ "type"
254
+ ],
255
+ "additionalProperties": false
256
+ },
257
+ {
258
+ "type": "object",
259
+ "properties": {
260
+ "type": {
261
+ "type": "string",
262
+ "const": "checkBoxes"
263
+ },
264
+ "attributes": {
265
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/0/properties/attributes"
266
+ },
267
+ "meta": {
268
+ "type": "object",
269
+ "properties": {
270
+ "schemaVersion": {
271
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
272
+ },
273
+ "title": {
274
+ "type": "string",
275
+ "const": "Check Boxes"
276
+ },
277
+ "usageDescription": {
278
+ "type": "string",
279
+ "const": "For multiple choice questions where users can select multiple options."
280
+ },
281
+ "defaultJSON": {
282
+ "type": "string",
283
+ "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}"
284
+ }
285
+ },
286
+ "required": [
287
+ "schemaVersion"
288
+ ],
289
+ "additionalProperties": false
123
290
  },
124
291
  "options": {
125
292
  "type": "array",
@@ -185,7 +352,28 @@
185
352
  "additionalProperties": false
186
353
  },
187
354
  "meta": {
188
- "$ref": "#/definitions/TableQuestion/properties/meta"
355
+ "type": "object",
356
+ "properties": {
357
+ "schemaVersion": {
358
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
359
+ },
360
+ "title": {
361
+ "type": "string",
362
+ "const": "Currency Field"
363
+ },
364
+ "usageDescription": {
365
+ "type": "string",
366
+ "const": "For questions that require a monetary amount (e.g. Cost or Budget)."
367
+ },
368
+ "defaultJSON": {
369
+ "type": "string",
370
+ "const": "{\n \"type\": \"currency\",\n \"attributes\": {\n \"denomination\": \"USD\",\n \"min\": 0,\n \"step\": 1\n },\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
371
+ }
372
+ },
373
+ "required": [
374
+ "schemaVersion"
375
+ ],
376
+ "additionalProperties": false
189
377
  }
190
378
  },
191
379
  "required": [
@@ -225,7 +413,28 @@
225
413
  "additionalProperties": false
226
414
  },
227
415
  "meta": {
228
- "$ref": "#/definitions/TableQuestion/properties/meta"
416
+ "type": "object",
417
+ "properties": {
418
+ "schemaVersion": {
419
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
420
+ },
421
+ "title": {
422
+ "type": "string",
423
+ "const": "Date Field"
424
+ },
425
+ "usageDescription": {
426
+ "type": "string",
427
+ "const": "For questions that require a date."
428
+ },
429
+ "defaultJSON": {
430
+ "type": "string",
431
+ "const": "{\"type\":\"date\",\"attributes\":{\"step\":1},\"meta\":{\"schemaVersion\":\"1.0\"}}"
432
+ }
433
+ },
434
+ "required": [
435
+ "schemaVersion"
436
+ ],
437
+ "additionalProperties": false
229
438
  }
230
439
  },
231
440
  "required": [
@@ -241,19 +450,40 @@
241
450
  "const": "dateRange"
242
451
  },
243
452
  "attributes": {
244
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/1/properties/attributes"
453
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/0/properties/attributes"
245
454
  },
246
455
  "meta": {
247
- "$ref": "#/definitions/TableQuestion/properties/meta"
456
+ "type": "object",
457
+ "properties": {
458
+ "schemaVersion": {
459
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
460
+ },
461
+ "title": {
462
+ "type": "string",
463
+ "const": "Date Range"
464
+ },
465
+ "usageDescription": {
466
+ "type": "string",
467
+ "const": "For questions that require a date range (e.g. From/To, Start/End)"
468
+ },
469
+ "defaultJSON": {
470
+ "type": "string",
471
+ "const": "{\"type\":\"dateRange\",\"attributes\":{},\"columns\":{\"start\":{\"label\":\"Start\",\"step\":1},\"end\":{\"label\":\"End\",\"step\":1}}}"
472
+ }
473
+ },
474
+ "required": [
475
+ "schemaVersion"
476
+ ],
477
+ "additionalProperties": false
248
478
  },
249
479
  "columns": {
250
480
  "type": "object",
251
481
  "properties": {
252
482
  "start": {
253
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/3/properties/attributes"
483
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/4/properties/attributes"
254
484
  },
255
485
  "end": {
256
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/3/properties/attributes"
486
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/4/properties/attributes"
257
487
  }
258
488
  },
259
489
  "additionalProperties": false
@@ -300,7 +530,28 @@
300
530
  "additionalProperties": false
301
531
  },
302
532
  "meta": {
303
- "$ref": "#/definitions/TableQuestion/properties/meta"
533
+ "type": "object",
534
+ "properties": {
535
+ "schemaVersion": {
536
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
537
+ },
538
+ "title": {
539
+ "type": "string",
540
+ "const": "Email Field"
541
+ },
542
+ "usageDescription": {
543
+ "type": "string",
544
+ "const": "For questions that require require email address(es)."
545
+ },
546
+ "defaultJSON": {
547
+ "type": "string",
548
+ "const": "{\"type\":\"email\",\"attributes\":{\"maxLength\":255,\"minLength\":1,\"multiple\":false},\"meta\":{\"schemaVersion\":\"1.0\"}}"
549
+ }
550
+ },
551
+ "required": [
552
+ "schemaVersion"
553
+ ],
554
+ "additionalProperties": false
304
555
  }
305
556
  },
306
557
  "required": [
@@ -334,79 +585,29 @@
334
585
  "additionalProperties": false
335
586
  },
336
587
  "meta": {
337
- "$ref": "#/definitions/TableQuestion/properties/meta"
338
- },
339
- "graphQL": {
340
588
  "type": "object",
341
589
  "properties": {
342
- "displayFields": {
343
- "type": "array",
344
- "items": {
345
- "type": "object",
346
- "properties": {
347
- "propertyName": {
348
- "type": "string"
349
- },
350
- "label": {
351
- "type": "string"
352
- },
353
- "labelTranslationKey": {
354
- "type": "string"
355
- }
356
- },
357
- "required": [
358
- "propertyName",
359
- "label"
360
- ],
361
- "additionalProperties": false
362
- }
590
+ "schemaVersion": {
591
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
363
592
  },
364
- "localQueryId": {
365
- "type": "string"
593
+ "title": {
594
+ "type": "string",
595
+ "const": "Not yet implemented"
366
596
  },
367
- "query": {
597
+ "usageDescription": {
368
598
  "type": "string"
369
599
  },
370
- "responseField": {
600
+ "defaultJSON": {
371
601
  "type": "string"
372
- },
373
- "variables": {
374
- "type": "array",
375
- "items": {
376
- "type": "object",
377
- "properties": {
378
- "minLength": {
379
- "type": "number"
380
- },
381
- "label": {
382
- "type": "string"
383
- },
384
- "labelTranslationKey": {
385
- "type": "string"
386
- },
387
- "name": {
388
- "type": "string"
389
- },
390
- "type": {
391
- "type": "string"
392
- },
393
- "defaultValue": {
394
- "type": "string"
395
- }
396
- },
397
- "required": [
398
- "name",
399
- "type"
400
- ],
401
- "additionalProperties": false
402
- }
403
602
  }
404
603
  },
405
604
  "required": [
406
- "displayFields",
407
- "responseField"
605
+ "schemaVersion"
408
606
  ],
409
607
  "additionalProperties": false
608
+ },
609
+ "graphQL": {
610
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/0/properties/graphQL"
410
611
  }
411
612
  },
412
613
  "required": [
@@ -435,19 +636,40 @@
435
636
  "$ref": "#/definitions/TableQuestion/properties/attributes/properties/labelTranslationKey"
436
637
  },
437
638
  "max": {
438
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/2/properties/attributes/properties/max"
639
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/3/properties/attributes/properties/max"
439
640
  },
440
641
  "min": {
441
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/2/properties/attributes/properties/min"
642
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/3/properties/attributes/properties/min"
442
643
  },
443
644
  "step": {
444
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/2/properties/attributes/properties/step"
645
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/3/properties/attributes/properties/step"
445
646
  }
446
647
  },
447
648
  "additionalProperties": false
448
649
  },
449
650
  "meta": {
450
- "$ref": "#/definitions/TableQuestion/properties/meta"
651
+ "type": "object",
652
+ "properties": {
653
+ "schemaVersion": {
654
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
655
+ },
656
+ "title": {
657
+ "type": "string",
658
+ "const": "Number Field"
659
+ },
660
+ "usageDescription": {
661
+ "type": "string",
662
+ "const": "For questions that require a single numeric value."
663
+ },
664
+ "defaultJSON": {
665
+ "type": "string",
666
+ "const": "{\n \"type\": \"number\",\n \"attributes\": {\n \"min\": 0,\n \"step\": 1\n },\n \"meta\": {\n \"schemaVersion\": \"1.0\"\n }\n}"
667
+ }
668
+ },
669
+ "required": [
670
+ "schemaVersion"
671
+ ],
672
+ "additionalProperties": false
451
673
  }
452
674
  },
453
675
  "required": [
@@ -463,10 +685,31 @@
463
685
  "const": "radioButtons"
464
686
  },
465
687
  "attributes": {
466
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/1/properties/attributes"
688
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/0/properties/attributes"
467
689
  },
468
690
  "meta": {
469
- "$ref": "#/definitions/TableQuestion/properties/meta"
691
+ "type": "object",
692
+ "properties": {
693
+ "schemaVersion": {
694
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
695
+ },
696
+ "title": {
697
+ "type": "string",
698
+ "const": "Radio Buttons"
699
+ },
700
+ "usageDescription": {
701
+ "type": "string",
702
+ "const": "For multiple choice questions where users select just one option."
703
+ },
704
+ "defaultJSON": {
705
+ "type": "string",
706
+ "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}"
707
+ }
708
+ },
709
+ "required": [
710
+ "schemaVersion"
711
+ ],
712
+ "additionalProperties": false
470
713
  },
471
714
  "options": {
472
715
  "type": "array",
@@ -474,10 +717,10 @@
474
717
  "type": "object",
475
718
  "properties": {
476
719
  "label": {
477
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/1/properties/options/items/properties/label"
720
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/2/properties/options/items/properties/label"
478
721
  },
479
722
  "value": {
480
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/1/properties/options/items/properties/value"
723
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/2/properties/options/items/properties/value"
481
724
  },
482
725
  "selected": {
483
726
  "type": "boolean"
@@ -517,23 +760,49 @@
517
760
  "$ref": "#/definitions/TableQuestion/properties/attributes/properties/labelTranslationKey"
518
761
  },
519
762
  "multiple": {
520
- "type": "boolean"
763
+ "type": "boolean",
764
+ "const": false
521
765
  }
522
766
  },
767
+ "required": [
768
+ "multiple"
769
+ ],
523
770
  "additionalProperties": false
524
771
  },
525
772
  "meta": {
526
- "$ref": "#/definitions/TableQuestion/properties/meta"
773
+ "type": "object",
774
+ "properties": {
775
+ "schemaVersion": {
776
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
777
+ },
778
+ "title": {
779
+ "type": "string",
780
+ "const": "Select Box"
781
+ },
782
+ "usageDescription": {
783
+ "type": "string",
784
+ "const": "For questions where users select one option from a list."
785
+ },
786
+ "defaultJSON": {
787
+ "type": "string",
788
+ "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}"
789
+ }
790
+ },
791
+ "required": [
792
+ "schemaVersion"
793
+ ],
794
+ "additionalProperties": false
527
795
  },
528
796
  "options": {
529
797
  "type": "array",
530
798
  "items": {
531
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/8/properties/options/items"
799
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/9/properties/options/items"
532
800
  }
533
801
  }
534
802
  },
535
803
  "required": [
536
804
  "type",
805
+ "attributes",
537
806
  "options"
538
807
  ],
539
808
  "additionalProperties": false
@@ -568,6 +837,9 @@
568
837
  },
569
838
  "rows": {
570
839
  "type": "number"
840
+ },
841
+ "asRichText": {
842
+ "type": "boolean"
571
843
  }
572
844
  },
573
845
  "additionalProperties": false
@@ -578,8 +850,17 @@
578
850
  "schemaVersion": {
579
851
  "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
580
852
  },
581
- "asRichText": {
582
- "type": "boolean"
853
+ "title": {
854
+ "type": "string",
855
+ "const": "Text Area"
856
+ },
857
+ "usageDescription": {
858
+ "type": "string",
859
+ "const": "For questions that require longer answers, you can select formatting options too."
860
+ },
861
+ "defaultJSON": {
862
+ "type": "string",
863
+ "const": "{\"type\":\"textArea\",\"attributes\":{\"cols\":20,\"rows\":2,\"asRichText\":true},\"meta\":{\"schemaVersion\":\"1.0\"}}"
583
864
  }
584
865
  },
585
866
  "required": [
@@ -589,8 +870,7 @@
589
870
  }
590
871
  },
591
872
  "required": [
592
- "type",
593
- "meta"
873
+ "type"
594
874
  ],
595
875
  "additionalProperties": false
596
876
  },
@@ -614,19 +894,40 @@
614
894
  "$ref": "#/definitions/TableQuestion/properties/attributes/properties/labelTranslationKey"
615
895
  },
616
896
  "maxLength": {
617
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/5/properties/attributes/properties/maxLength"
897
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/6/properties/attributes/properties/maxLength"
618
898
  },
619
899
  "minLength": {
620
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/5/properties/attributes/properties/minLength"
900
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/6/properties/attributes/properties/minLength"
621
901
  },
622
902
  "pattern": {
623
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/5/properties/attributes/properties/pattern"
903
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/6/properties/attributes/properties/pattern"
624
904
  }
625
905
  },
626
906
  "additionalProperties": false
627
907
  },
628
908
  "meta": {
629
- "$ref": "#/definitions/TableQuestion/properties/meta"
909
+ "type": "object",
910
+ "properties": {
911
+ "schemaVersion": {
912
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
913
+ },
914
+ "title": {
915
+ "type": "string",
916
+ "const": "Text Field"
917
+ },
918
+ "usageDescription": {
919
+ "type": "string",
920
+ "const": "For questions that require short, simple answers."
921
+ },
922
+ "defaultJSON": {
923
+ "type": "string",
924
+ "const": "{\"type\":\"text\",\"attributes\":{\"maxLength\":255},\"meta\":{\"schemaVersion\":\"1.0\"}}"
925
+ }
926
+ },
927
+ "required": [
928
+ "schemaVersion"
929
+ ],
930
+ "additionalProperties": false
630
931
  }
631
932
  },
632
933
  "required": [
@@ -634,29 +935,6 @@
634
935
  ],
635
936
  "additionalProperties": false
636
937
  },
637
- {
638
- "type": "object",
639
- "properties": {
640
- "type": {
641
- "type": "string",
642
- "const": "typeaheadSearch"
643
- },
644
- "attributes": {
645
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/1/properties/attributes"
646
- },
647
- "meta": {
648
- "$ref": "#/definitions/TableQuestion/properties/meta"
649
- },
650
- "graphQL": {
651
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/6/properties/graphQL"
652
- }
653
- },
654
- "required": [
655
- "type",
656
- "graphQL"
657
- ],
658
- "additionalProperties": false
659
- },
660
938
  {
661
939
  "type": "object",
662
940
  "properties": {
@@ -665,10 +943,31 @@
665
943
  "const": "url"
666
944
  },
667
945
  "attributes": {
668
- "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/11/properties/attributes"
946
+ "$ref": "#/definitions/TableQuestion/properties/columns/items/properties/content/anyOf/12/properties/attributes"
669
947
  },
670
948
  "meta": {
671
- "$ref": "#/definitions/TableQuestion/properties/meta"
949
+ "type": "object",
950
+ "properties": {
951
+ "schemaVersion": {
952
+ "$ref": "#/definitions/TableQuestion/properties/meta/properties/schemaVersion"
953
+ },
954
+ "title": {
955
+ "type": "string",
956
+ "const": "URL Field"
957
+ },
958
+ "usageDescription": {
959
+ "type": "string",
960
+ "const": "For questions that require a website, DOI or other URL."
961
+ },
962
+ "defaultJSON": {
963
+ "type": "string",
964
+ "const": "{\"type\":\"url\",\"attributes\":{\"maxLength\":255},\"meta\":{\"schemaVersion\":\"1.0\"}}"
965
+ }
966
+ },
967
+ "required": [
968
+ "schemaVersion"
969
+ ],
970
+ "additionalProperties": false
672
971
  }
673
972
  },
674
973
  "required": [