@dmptool/types 1.2.6 → 2.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 (103) hide show
  1. package/README.md +1 -1
  2. package/dist/answers/__tests__/defaults.spec.js +216 -0
  3. package/dist/answers/answer.d.ts +29 -14
  4. package/dist/answers/answer.js +11 -5
  5. package/dist/answers/dateAnswers.d.ts +20 -47
  6. package/dist/answers/dateAnswers.js +20 -10
  7. package/dist/answers/graphQLAnswers.d.ts +48 -120
  8. package/dist/answers/graphQLAnswers.js +46 -21
  9. package/dist/answers/index.d.ts +155 -1439
  10. package/dist/answers/index.js +26 -1
  11. package/dist/answers/numberAnswers.d.ts +38 -92
  12. package/dist/answers/numberAnswers.js +38 -19
  13. package/dist/answers/optionBasedAnswers.d.ts +42 -87
  14. package/dist/answers/optionBasedAnswers.js +37 -21
  15. package/dist/answers/tableAnswers.d.ts +348 -3032
  16. package/dist/answers/tableAnswers.js +25 -61
  17. package/dist/answers/textAnswers.d.ts +32 -68
  18. package/dist/answers/textAnswers.js +30 -17
  19. package/dist/dmp/__tests__/commonStandard.spec.d.ts +1 -0
  20. package/dist/dmp/__tests__/commonStandard.spec.js +210 -0
  21. package/dist/dmp/__tests__/extensions.spec.d.ts +1 -0
  22. package/dist/dmp/__tests__/extensions.spec.js +99 -0
  23. package/dist/dmp/extension.d.ts +1006 -0
  24. package/dist/dmp/extension.js +234 -0
  25. package/dist/dmp/index.d.ts +9 -0
  26. package/dist/dmp/index.js +23 -0
  27. package/dist/index.d.ts +1 -0
  28. package/dist/index.js +1 -0
  29. package/dist/questions/__tests__/dateQuestions.spec.js +3 -0
  30. package/dist/questions/__tests__/defaults.spec.d.ts +1 -0
  31. package/dist/questions/__tests__/defaults.spec.js +668 -0
  32. package/dist/questions/__tests__/optionBasedQuestions.spec.js +3 -2
  33. package/dist/questions/__tests__/tableQuestion.spec.js +22 -23
  34. package/dist/questions/__tests__/textQuestions.spec.js +32 -0
  35. package/dist/questions/dateQuestions.d.ts +45 -191
  36. package/dist/questions/dateQuestions.js +26 -23
  37. package/dist/questions/graphQLQuestions.d.ts +262 -556
  38. package/dist/questions/graphQLQuestions.js +225 -223
  39. package/dist/questions/index.d.ts +670 -7441
  40. package/dist/questions/index.js +26 -1
  41. package/dist/questions/numberQuestions.d.ts +85 -331
  42. package/dist/questions/numberQuestions.js +50 -36
  43. package/dist/questions/optionBasedQuestions.d.ts +83 -290
  44. package/dist/questions/optionBasedQuestions.js +58 -41
  45. package/dist/questions/question.d.ts +72 -35
  46. package/dist/questions/question.js +14 -5
  47. package/dist/questions/tableQuestions.d.ts +2228 -9599
  48. package/dist/questions/tableQuestions.js +185 -192
  49. package/dist/questions/textQuestions.d.ts +70 -226
  50. package/dist/questions/textQuestions.js +31 -31
  51. package/dist/schemas/affiliationSearchAnswer.schema.json +35 -33
  52. package/dist/schemas/affiliationSearchQuestion.schema.json +124 -122
  53. package/dist/schemas/anyAnswer.schema.json +1229 -408
  54. package/dist/schemas/anyQuestion.schema.json +4312 -2023
  55. package/dist/schemas/anyTableColumnAnswer.schema.json +535 -314
  56. package/dist/schemas/anyTableColumnQuestion.schema.json +1309 -874
  57. package/dist/schemas/booleanAnswer.schema.json +22 -23
  58. package/dist/schemas/booleanQuestion.schema.json +39 -43
  59. package/dist/schemas/checkboxesAnswer.schema.json +27 -28
  60. package/dist/schemas/checkboxesQuestion.schema.json +63 -62
  61. package/dist/schemas/currencyAnswer.schema.json +22 -23
  62. package/dist/schemas/currencyQuestion.schema.json +57 -54
  63. package/dist/schemas/dateAnswer.schema.json +22 -23
  64. package/dist/schemas/dateQuestion.schema.json +50 -49
  65. package/dist/schemas/dateRangeAnswer.schema.json +35 -33
  66. package/dist/schemas/dateRangeQuestion.schema.json +87 -78
  67. package/dist/schemas/dmp.schema.json +2070 -0
  68. package/dist/schemas/dmpExtension.schema.json +1874 -0
  69. package/dist/schemas/emailAnswer.schema.json +22 -23
  70. package/dist/schemas/emailQuestion.schema.json +55 -53
  71. package/dist/schemas/licenseSearchAnswer.schema.json +40 -38
  72. package/dist/schemas/licenseSearchQuestion.schema.json +122 -146
  73. package/dist/schemas/metadataStandardSearchAnswer.schema.json +40 -38
  74. package/dist/schemas/metadataStandardSearchQuestion.schema.json +123 -156
  75. package/dist/schemas/multiselectBoxAnswer.schema.json +27 -28
  76. package/dist/schemas/multiselectBoxQuestion.schema.json +70 -71
  77. package/dist/schemas/numberAnswer.schema.json +22 -23
  78. package/dist/schemas/numberQuestion.schema.json +52 -50
  79. package/dist/schemas/numberRangeAnswer.schema.json +35 -33
  80. package/dist/schemas/numberRangeQuestion.schema.json +91 -60
  81. package/dist/schemas/numberWithContextAnswer.schema.json +35 -33
  82. package/dist/schemas/numberWithContextQuestion.schema.json +81 -70
  83. package/dist/schemas/radioButtonsAnswer.schema.json +22 -23
  84. package/dist/schemas/radioButtonsQuestion.schema.json +63 -62
  85. package/dist/schemas/repositorySearchAnswer.schema.json +40 -38
  86. package/dist/schemas/repositorySearchQuestion.schema.json +122 -162
  87. package/dist/schemas/researchOutputTableAnswer.schema.json +16622 -411
  88. package/dist/schemas/researchOutputTableQuestion.schema.json +114 -1157
  89. package/dist/schemas/selectBoxAnswer.schema.json +22 -23
  90. package/dist/schemas/selectBoxQuestion.schema.json +70 -71
  91. package/dist/schemas/tableAnswer.schema.json +581 -360
  92. package/dist/schemas/tableQuestion.schema.json +1388 -942
  93. package/dist/schemas/textAnswer.schema.json +22 -23
  94. package/dist/schemas/textAreaAnswer.schema.json +22 -23
  95. package/dist/schemas/textAreaQuestion.schema.json +65 -57
  96. package/dist/schemas/textQuestion.schema.json +50 -49
  97. package/dist/schemas/urlAnswer.schema.json +22 -23
  98. package/dist/schemas/urlQuestion.schema.json +50 -49
  99. package/package.json +6 -4
  100. package/dist/answers/__tests__/usage.spec.js +0 -178
  101. package/dist/questions/__tests__/usage.spec.d.ts +0 -8
  102. package/dist/questions/__tests__/usage.spec.js +0 -473
  103. /package/dist/answers/__tests__/{usage.spec.d.ts → defaults.spec.d.ts} +0 -0
@@ -1,34 +1,33 @@
1
1
  {
2
- "$ref": "#/definitions/RadioButtonsAnswer",
3
- "definitions": {
4
- "RadioButtonsAnswer": {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "type": {
6
+ "type": "string",
7
+ "const": "radioButtons"
8
+ },
9
+ "meta": {
5
10
  "type": "object",
6
11
  "properties": {
7
- "type": {
8
- "type": "string",
9
- "const": "radioButtons"
10
- },
11
- "meta": {
12
- "type": "object",
13
- "properties": {
14
- "schemaVersion": {
15
- "type": "string",
16
- "default": "1.0"
17
- }
18
- },
19
- "additionalProperties": false,
20
- "default": {}
21
- },
22
- "answer": {
23
- "type": "string",
24
- "default": ""
12
+ "schemaVersion": {
13
+ "default": "1.0",
14
+ "type": "string"
25
15
  }
26
16
  },
27
17
  "required": [
28
- "type"
18
+ "schemaVersion"
29
19
  ],
30
20
  "additionalProperties": false
21
+ },
22
+ "answer": {
23
+ "default": "",
24
+ "type": "string"
31
25
  }
32
26
  },
33
- "$schema": "http://json-schema.org/draft-07/schema#"
27
+ "required": [
28
+ "type",
29
+ "meta",
30
+ "answer"
31
+ ],
32
+ "additionalProperties": false
34
33
  }
@@ -1,76 +1,77 @@
1
1
  {
2
- "$ref": "#/definitions/RadioButtonsQuestion",
3
- "definitions": {
4
- "RadioButtonsQuestion": {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "type": {
6
+ "type": "string",
7
+ "const": "radioButtons"
8
+ },
9
+ "attributes": {
5
10
  "type": "object",
6
11
  "properties": {
7
- "type": {
8
- "type": "string",
9
- "const": "radioButtons"
12
+ "label": {
13
+ "type": "string"
10
14
  },
11
- "attributes": {
12
- "type": "object",
13
- "properties": {
14
- "label": {
15
- "type": "string"
16
- },
17
- "help": {
18
- "type": "string"
19
- },
20
- "labelTranslationKey": {
21
- "type": "string"
22
- }
23
- },
24
- "additionalProperties": false,
25
- "default": {}
15
+ "help": {
16
+ "type": "string"
26
17
  },
27
- "meta": {
28
- "type": "object",
29
- "properties": {
30
- "schemaVersion": {
31
- "type": "string",
32
- "default": "1.0"
33
- },
34
- "title": {
35
- "type": "string"
36
- },
37
- "usageDescription": {
38
- "type": "string"
39
- }
40
- },
41
- "additionalProperties": false,
42
- "default": {}
18
+ "labelTranslationKey": {
19
+ "type": "string"
20
+ }
21
+ },
22
+ "additionalProperties": false
23
+ },
24
+ "meta": {
25
+ "type": "object",
26
+ "properties": {
27
+ "schemaVersion": {
28
+ "default": "1.0",
29
+ "type": "string"
43
30
  },
44
- "options": {
45
- "type": "array",
46
- "items": {
47
- "type": "object",
48
- "properties": {
49
- "label": {
50
- "type": "string",
51
- "default": "Option A"
52
- },
53
- "value": {
54
- "type": "string",
55
- "default": "a"
56
- },
57
- "selected": {
58
- "type": "boolean",
59
- "default": false
60
- }
61
- },
62
- "additionalProperties": false
63
- },
64
- "default": [
65
- {}
66
- ]
31
+ "title": {
32
+ "type": "string"
33
+ },
34
+ "usageDescription": {
35
+ "type": "string"
67
36
  }
68
37
  },
69
38
  "required": [
70
- "type"
39
+ "schemaVersion"
71
40
  ],
72
41
  "additionalProperties": false
42
+ },
43
+ "options": {
44
+ "type": "array",
45
+ "items": {
46
+ "type": "object",
47
+ "properties": {
48
+ "label": {
49
+ "default": "Option A",
50
+ "type": "string"
51
+ },
52
+ "value": {
53
+ "default": "a",
54
+ "type": "string"
55
+ },
56
+ "selected": {
57
+ "default": false,
58
+ "type": "boolean"
59
+ }
60
+ },
61
+ "required": [
62
+ "label",
63
+ "value",
64
+ "selected"
65
+ ],
66
+ "additionalProperties": false
67
+ }
73
68
  }
74
69
  },
75
- "$schema": "http://json-schema.org/draft-07/schema#"
70
+ "required": [
71
+ "type",
72
+ "attributes",
73
+ "meta",
74
+ "options"
75
+ ],
76
+ "additionalProperties": false
76
77
  }
@@ -1,49 +1,51 @@
1
1
  {
2
- "$ref": "#/definitions/RepositorySearchAnswer",
3
- "definitions": {
4
- "RepositorySearchAnswer": {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "type": {
6
+ "type": "string",
7
+ "const": "repositorySearch"
8
+ },
9
+ "meta": {
5
10
  "type": "object",
6
11
  "properties": {
7
- "type": {
8
- "type": "string",
9
- "const": "repositorySearch"
10
- },
11
- "meta": {
12
- "type": "object",
13
- "properties": {
14
- "schemaVersion": {
15
- "type": "string",
16
- "default": "1.0"
17
- }
18
- },
19
- "additionalProperties": false,
20
- "default": {}
21
- },
22
- "answer": {
23
- "type": "array",
24
- "items": {
25
- "type": "object",
26
- "properties": {
27
- "repositoryId": {
28
- "type": "string",
29
- "default": ""
30
- },
31
- "repositoryName": {
32
- "type": "string",
33
- "default": ""
34
- }
35
- },
36
- "additionalProperties": false,
37
- "default": {}
38
- },
39
- "default": []
12
+ "schemaVersion": {
13
+ "default": "1.0",
14
+ "type": "string"
40
15
  }
41
16
  },
42
17
  "required": [
43
- "type"
18
+ "schemaVersion"
44
19
  ],
45
20
  "additionalProperties": false
21
+ },
22
+ "answer": {
23
+ "default": [],
24
+ "type": "array",
25
+ "items": {
26
+ "type": "object",
27
+ "properties": {
28
+ "repositoryId": {
29
+ "default": "",
30
+ "type": "string"
31
+ },
32
+ "repositoryName": {
33
+ "default": "",
34
+ "type": "string"
35
+ }
36
+ },
37
+ "required": [
38
+ "repositoryId",
39
+ "repositoryName"
40
+ ],
41
+ "additionalProperties": false
42
+ }
46
43
  }
47
44
  },
48
- "$schema": "http://json-schema.org/draft-07/schema#"
45
+ "required": [
46
+ "type",
47
+ "meta",
48
+ "answer"
49
+ ],
50
+ "additionalProperties": false
49
51
  }
@@ -1,180 +1,140 @@
1
1
  {
2
- "$ref": "#/definitions/RepositorySearchQuestion",
3
- "definitions": {
4
- "RepositorySearchQuestion": {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "type": {
6
+ "type": "string",
7
+ "const": "repositorySearch"
8
+ },
9
+ "attributes": {
5
10
  "type": "object",
6
11
  "properties": {
7
- "type": {
8
- "type": "string",
9
- "const": "repositorySearch"
12
+ "label": {
13
+ "type": "string"
10
14
  },
11
- "attributes": {
12
- "type": "object",
13
- "properties": {
14
- "label": {
15
- "type": "string"
16
- },
17
- "help": {
18
- "type": "string"
19
- },
20
- "labelTranslationKey": {
21
- "type": "string"
22
- }
23
- },
24
- "additionalProperties": false,
25
- "default": {}
15
+ "help": {
16
+ "type": "string"
26
17
  },
27
- "meta": {
28
- "type": "object",
29
- "properties": {
30
- "schemaVersion": {
31
- "type": "string",
32
- "default": "1.0"
33
- },
34
- "title": {
35
- "type": "string"
36
- },
37
- "usageDescription": {
38
- "type": "string"
39
- }
40
- },
41
- "additionalProperties": false,
42
- "default": {}
18
+ "labelTranslationKey": {
19
+ "type": "string"
20
+ }
21
+ },
22
+ "additionalProperties": false
23
+ },
24
+ "meta": {
25
+ "type": "object",
26
+ "properties": {
27
+ "schemaVersion": {
28
+ "default": "1.0",
29
+ "type": "string"
30
+ },
31
+ "title": {
32
+ "type": "string"
43
33
  },
44
- "graphQL": {
45
- "type": "object",
46
- "properties": {
47
- "displayFields": {
48
- "type": "array",
49
- "items": {
50
- "type": "object",
51
- "properties": {
52
- "propertyName": {
53
- "type": "string",
54
- "default": "id"
55
- },
56
- "label": {
57
- "type": "string",
58
- "default": "Id"
59
- },
60
- "labelTranslationKey": {
61
- "type": "string"
62
- }
63
- },
64
- "additionalProperties": false
34
+ "usageDescription": {
35
+ "type": "string"
36
+ }
37
+ },
38
+ "required": [
39
+ "schemaVersion"
40
+ ],
41
+ "additionalProperties": false
42
+ },
43
+ "graphQL": {
44
+ "type": "object",
45
+ "properties": {
46
+ "displayFields": {
47
+ "type": "array",
48
+ "items": {
49
+ "type": "object",
50
+ "properties": {
51
+ "propertyName": {
52
+ "default": "id",
53
+ "type": "string"
65
54
  },
66
- "default": [
67
- {
68
- "propertyName": "name",
69
- "label": "Name"
70
- },
71
- {
72
- "propertyName": "description",
73
- "label": "Description"
74
- },
75
- {
76
- "propertyName": "website",
77
- "label": "Website"
78
- },
79
- {
80
- "propertyName": "keywords",
81
- "label": "Subject Areas"
82
- }
83
- ]
84
- },
85
- "localQueryId": {
86
- "type": "string"
87
- },
88
- "query": {
89
- "type": "string",
90
- "const": "query Repositories($term: String, $keywords: [String!], $repositoryType: String, $paginationOptions: PaginationOptions){ repositories(term: $term, keywords: $keywords, repositoryType: $repositoryType, paginationOptions: $paginationOptions) { totalCount currentOffset limit hasNextPage hasPreviousPage availableSortFields items { id name uri description website keywords repositoryTypes } } }",
91
- "default": "query Repositories($term: String, $keywords: [String!], $repositoryType: String, $paginationOptions: PaginationOptions){ repositories(term: $term, keywords: $keywords, repositoryType: $repositoryType, paginationOptions: $paginationOptions) { totalCount currentOffset limit hasNextPage hasPreviousPage availableSortFields items { id name uri description website keywords repositoryTypes } } }"
92
- },
93
- "responseField": {
94
- "type": "string",
95
- "const": "repositories.items",
96
- "default": "repositories.items"
97
- },
98
- "variables": {
99
- "type": "array",
100
- "items": {
101
- "type": "object",
102
- "properties": {
103
- "minLength": {
104
- "type": "number"
105
- },
106
- "label": {
107
- "type": "string"
108
- },
109
- "labelTranslationKey": {
110
- "type": "string"
111
- },
112
- "name": {
113
- "type": "string",
114
- "default": "search"
115
- },
116
- "type": {
117
- "type": "string",
118
- "default": "string"
119
- },
120
- "defaultValue": {
121
- "type": "string"
122
- }
123
- },
124
- "additionalProperties": false
55
+ "label": {
56
+ "default": "Id",
57
+ "type": "string"
125
58
  },
126
- "default": [
127
- {
128
- "minLength": 3,
129
- "label": "Search for a repository",
130
- "name": "term",
131
- "type": "string"
132
- },
133
- {
134
- "minLength": 3,
135
- "label": "Subject Areas",
136
- "name": "keywords",
137
- "type": "string"
138
- },
139
- {
140
- "minLength": 3,
141
- "label": "Repository type",
142
- "name": "repositoryType",
143
- "type": "string"
144
- },
145
- {
146
- "label": "Pagination Options",
147
- "name": "paginationOptions",
148
- "type": "paginationOptions",
149
- "options": {
150
- "type": "OFFSET",
151
- "limit": 10,
152
- "offset": 0,
153
- "sortField": "name",
154
- "sortOrder": "ASC"
155
- }
156
- }
157
- ]
59
+ "labelTranslationKey": {
60
+ "type": "string"
61
+ }
158
62
  },
159
- "queryId": {
160
- "type": "string",
161
- "default": "useRepositoriesQuery"
63
+ "required": [
64
+ "propertyName",
65
+ "label"
66
+ ],
67
+ "additionalProperties": false
68
+ }
69
+ },
70
+ "localQueryId": {
71
+ "type": "string"
72
+ },
73
+ "query": {
74
+ "type": "string",
75
+ "const": "query Repositories($term: String, $keywords: [String!], $repositoryType: String, $paginationOptions: PaginationOptions){ repositories(term: $term, keywords: $keywords, repositoryType: $repositoryType, paginationOptions: $paginationOptions) { totalCount currentOffset limit hasNextPage hasPreviousPage availableSortFields items { id name uri description website keywords repositoryTypes } } }"
76
+ },
77
+ "responseField": {
78
+ "type": "string",
79
+ "const": "repositories.items"
80
+ },
81
+ "variables": {
82
+ "type": "array",
83
+ "items": {
84
+ "type": "object",
85
+ "properties": {
86
+ "minLength": {
87
+ "type": "number"
88
+ },
89
+ "label": {
90
+ "type": "string"
91
+ },
92
+ "labelTranslationKey": {
93
+ "type": "string"
94
+ },
95
+ "name": {
96
+ "default": "search",
97
+ "type": "string"
98
+ },
99
+ "type": {
100
+ "default": "string",
101
+ "type": "string"
102
+ },
103
+ "defaultValue": {
104
+ "type": "string"
105
+ }
162
106
  },
163
- "answerField": {
164
- "type": "string",
165
- "const": "uri",
166
- "default": "uri"
167
- }
168
- },
169
- "additionalProperties": false,
170
- "default": {}
107
+ "required": [
108
+ "name",
109
+ "type"
110
+ ],
111
+ "additionalProperties": false
112
+ }
113
+ },
114
+ "queryId": {
115
+ "default": "useRepositoriesQuery",
116
+ "type": "string"
117
+ },
118
+ "answerField": {
119
+ "type": "string",
120
+ "const": "uri"
171
121
  }
172
122
  },
173
123
  "required": [
174
- "type"
124
+ "displayFields",
125
+ "query",
126
+ "responseField",
127
+ "variables",
128
+ "answerField"
175
129
  ],
176
130
  "additionalProperties": false
177
131
  }
178
132
  },
179
- "$schema": "http://json-schema.org/draft-07/schema#"
133
+ "required": [
134
+ "type",
135
+ "attributes",
136
+ "meta",
137
+ "graphQL"
138
+ ],
139
+ "additionalProperties": false
180
140
  }