@takeshape/schema 8.16.0 → 8.20.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 (117) hide show
  1. package/es/enum.js +1 -1
  2. package/es/get-is-leaf.js +5 -5
  3. package/es/layers/type-utils.js +2 -2
  4. package/es/migration.js +59 -1
  5. package/es/project-schema/index.js +1 -0
  6. package/es/project-schema/v3.10.0.js +1 -0
  7. package/es/refs.js +19 -19
  8. package/es/schema-util.js +7 -7
  9. package/es/schemas/index.js +15 -15
  10. package/es/schemas/index.ts +26 -25
  11. package/es/schemas/project-schema/v3.10.0.json +2091 -0
  12. package/es/schemas/project-schema/v4.0.0.json +8 -6
  13. package/es/schemas/project-schema.json +2 -1
  14. package/es/types/types.js +1 -1
  15. package/es/types/utils.js +20 -19
  16. package/es/util/detect-cycles.js +1 -1
  17. package/es/validate.js +10 -7
  18. package/examples/latest/blog-schema.json +32 -32
  19. package/examples/latest/brewery-schema.json +53 -53
  20. package/examples/latest/complex-project-schema.json +3278 -3278
  21. package/examples/latest/fabric-ecommerce.json +130 -130
  22. package/examples/latest/frank-and-fred-schema.json +15588 -15588
  23. package/examples/latest/massive-schema.json +5836 -5836
  24. package/examples/latest/mill-components-schema.json +876 -876
  25. package/examples/latest/pet-oneof-array.json +77 -77
  26. package/examples/latest/post-schema.json +23 -23
  27. package/examples/latest/pruned-shopify-product-schema.json +19 -19
  28. package/examples/latest/real-world-schema.json +166 -166
  29. package/examples/latest/recursive-repeater-schema.json +14 -14
  30. package/examples/latest/recursive-schema.json +14 -14
  31. package/examples/latest/rick-and-morty-ast.json +1875 -1896
  32. package/examples/latest/rick-and-morty-graphql.json +1093 -1093
  33. package/examples/latest/rick-and-morty-rest.json +20 -20
  34. package/examples/latest/schema-with-repeater-draftjs.json +9 -9
  35. package/examples/latest/shape-books-v3_2_0.json +218 -218
  36. package/examples/latest/shape-books.json +218 -218
  37. package/examples/latest/shopify-lookbook.json +147 -147
  38. package/examples/latest/shopify-store-with-widget.json +10420 -10420
  39. package/examples/latest/stripe-starter-resolved.json +1018 -1018
  40. package/examples/latest/user-schema-no-required.json +19 -19
  41. package/examples/latest/user-schema-with-defaults.json +20 -20
  42. package/examples/source/rick-and-morty-ast.json +0 -21
  43. package/lib/content-schema-transform.d.ts +13 -13
  44. package/lib/content-schema-transform.d.ts.map +1 -1
  45. package/lib/enum.d.ts +2 -2
  46. package/lib/enum.d.ts.map +1 -1
  47. package/lib/enum.js +2 -2
  48. package/lib/get-is-leaf.d.ts +2 -2
  49. package/lib/get-is-leaf.d.ts.map +1 -1
  50. package/lib/get-is-leaf.js +5 -5
  51. package/lib/layers/type-utils.js +1 -1
  52. package/lib/migration.d.ts +6 -5
  53. package/lib/migration.d.ts.map +1 -1
  54. package/lib/migration.js +60 -0
  55. package/lib/project-schema/index.d.ts +3 -1
  56. package/lib/project-schema/index.d.ts.map +1 -1
  57. package/lib/project-schema/index.js +25 -12
  58. package/lib/project-schema/latest.d.ts +260 -238
  59. package/lib/project-schema/latest.d.ts.map +1 -1
  60. package/lib/project-schema/v1.0.0.d.ts +14 -7
  61. package/lib/project-schema/v1.0.0.d.ts.map +1 -1
  62. package/lib/project-schema/v3.0.0.d.ts +24 -25
  63. package/lib/project-schema/v3.0.0.d.ts.map +1 -1
  64. package/lib/project-schema/v3.1.0.d.ts +42 -43
  65. package/lib/project-schema/v3.1.0.d.ts.map +1 -1
  66. package/lib/project-schema/v3.10.0.d.ts +1202 -0
  67. package/lib/project-schema/v3.10.0.d.ts.map +1 -0
  68. package/lib/project-schema/v3.10.0.js +5 -0
  69. package/lib/project-schema/v3.2.0.d.ts +42 -43
  70. package/lib/project-schema/v3.2.0.d.ts.map +1 -1
  71. package/lib/project-schema/v3.3.0.d.ts +42 -43
  72. package/lib/project-schema/v3.3.0.d.ts.map +1 -1
  73. package/lib/project-schema/v3.4.0.d.ts +42 -43
  74. package/lib/project-schema/v3.4.0.d.ts.map +1 -1
  75. package/lib/project-schema/v3.5.0.d.ts +42 -43
  76. package/lib/project-schema/v3.5.0.d.ts.map +1 -1
  77. package/lib/project-schema/v3.5.1.d.ts +42 -43
  78. package/lib/project-schema/v3.5.1.d.ts.map +1 -1
  79. package/lib/project-schema/v3.6.0.d.ts +42 -43
  80. package/lib/project-schema/v3.6.0.d.ts.map +1 -1
  81. package/lib/project-schema/v3.7.0.d.ts +42 -43
  82. package/lib/project-schema/v3.7.0.d.ts.map +1 -1
  83. package/lib/project-schema/v3.8.0.d.ts +42 -43
  84. package/lib/project-schema/v3.8.0.d.ts.map +1 -1
  85. package/lib/project-schema/v3.9.0.d.ts +42 -43
  86. package/lib/project-schema/v3.9.0.d.ts.map +1 -1
  87. package/lib/project-schema/v4.0.0.d.ts +54 -52
  88. package/lib/project-schema/v4.0.0.d.ts.map +1 -1
  89. package/lib/refs.d.ts +8 -8
  90. package/lib/refs.d.ts.map +1 -1
  91. package/lib/refs.js +19 -19
  92. package/lib/schema-util.d.ts +23 -23
  93. package/lib/schema-util.d.ts.map +1 -1
  94. package/lib/schema-util.js +7 -7
  95. package/lib/schemas/index.d.ts +3421 -3420
  96. package/lib/schemas/index.d.ts.map +1 -1
  97. package/lib/schemas/index.js +26 -30
  98. package/lib/schemas/index.ts +26 -25
  99. package/lib/schemas/project-schema/v3.10.0.json +2091 -0
  100. package/lib/schemas/project-schema/v4.0.0.json +8 -6
  101. package/lib/schemas/project-schema.json +2 -1
  102. package/lib/types/types.d.ts +8 -7
  103. package/lib/types/types.d.ts.map +1 -1
  104. package/lib/types/types.js +1 -1
  105. package/lib/types/utils.d.ts +9 -8
  106. package/lib/types/utils.d.ts.map +1 -1
  107. package/lib/types/utils.js +25 -23
  108. package/lib/unions.d.ts +8 -8
  109. package/lib/unions.d.ts.map +1 -1
  110. package/lib/util/detect-cycles.d.ts +2 -2
  111. package/lib/util/detect-cycles.d.ts.map +1 -1
  112. package/lib/util/detect-cycles.js +1 -1
  113. package/lib/validate.d.ts.map +1 -1
  114. package/lib/validate.js +9 -6
  115. package/lib/workflows.d.ts +2 -2
  116. package/lib/workflows.d.ts.map +1 -1
  117. package/package.json +5 -5
@@ -3,29 +3,65 @@
3
3
  * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
4
4
  * and run json-schema-to-typescript to regenerate this file.
5
5
  */
6
- export declare type Args = string | ContentObjectSchema;
7
- export declare type ContentObjectSchema = AllOfSchema | OneOfSchema | RefSchema | RefSchemaLegacy | ObjectSchema | ArraySchema;
8
- export declare type ObjectSchema = ContentSchema & {
6
+ /**
7
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
8
+ * via the `definition` "args".
9
+ */
10
+ export declare type Args = string | ObjectSchema;
11
+ /**
12
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
13
+ * via the `definition` "objectSchema".
14
+ */
15
+ export declare type ObjectSchema = PropertySchema & {
9
16
  type: 'object';
10
17
  properties: {
11
- [k: string]: ContentSchema;
18
+ [k: string]: PropertySchema;
12
19
  };
13
- [k: string]: any;
14
20
  };
15
21
  /**
16
- * This interface was referenced by `ContentSchema`'s JSON-Schema
22
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
23
+ * via the `definition` "nonNegativeInteger".
24
+ */
25
+ export declare type NonNegativeInteger = number;
26
+ /**
27
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
28
+ * via the `definition` "nonNegativeIntegerDefault0".
29
+ */
30
+ export declare type NonNegativeIntegerDefault0 = NonNegativeInteger;
31
+ /**
32
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
33
+ * via the `definition` "stringArray".
34
+ */
35
+ export declare type StringArray = string[];
36
+ /**
37
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
38
+ * via the `definition` "simpleTypes".
39
+ */
40
+ export declare type SimpleTypes = 'array' | 'boolean' | 'integer' | 'null' | 'number' | 'object' | 'string';
41
+ /**
42
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
43
+ * via the `definition` "schemaArray".
44
+ */
45
+ export declare type SchemaArray = PropertySchema[];
46
+ /**
47
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
17
48
  * via the `definition` "fieldMapping".
18
49
  */
19
- export declare type FieldMapping = string | string[];
50
+ export declare type FieldMapping = MappingString | MappingString[];
20
51
  /**
21
- * This interface was referenced by `ContentSchema`'s JSON-Schema
52
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
53
+ * via the `definition` "mappingString".
54
+ */
55
+ export declare type MappingString = string;
56
+ /**
57
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
22
58
  * via the `definition` "resolver".
23
59
  */
24
60
  export declare type Resolver = BasicResolver | ComposeResolver;
25
61
  /**
26
62
  * A single resolver, can be composed with the ComposeResolver.
27
63
  *
28
- * This interface was referenced by `ContentSchema`'s JSON-Schema
64
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
29
65
  * via the `definition` "basicResolver".
30
66
  */
31
67
  export declare type BasicResolver = UtilResolver | TakeshapeResolver | InternalTakeshapeResolver | GraphqlResolver | RestResolver | AwsLambdaResolver;
@@ -36,43 +72,44 @@ export declare type UtilResolverName = 'debug:noop' | 'util:wrap';
36
72
  /**
37
73
  * An object describing an operation to generate a parameter.
38
74
  *
39
- * This interface was referenced by `ContentSchema`'s JSON-Schema
75
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
40
76
  * via the `definition` "parameterOp".
41
77
  */
42
78
  export declare type ParameterOp = ParameterOpNested | ParameterOpValue | ParameterOpMapping | ParameterOpOp;
43
79
  /**
44
80
  * A tuple with a string directive name, and options to pass to the directive
45
81
  *
46
- * This interface was referenced by `ContentSchema`'s JSON-Schema
82
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
47
83
  * via the `definition` "directiveConfigItem".
48
84
  */
49
- export declare type DirectiveConfigItem = [string, DirectiveOptions];
85
+ export declare type DirectiveConfigItem = [DirectiveName, DirectiveOptions];
86
+ export declare type DirectiveName = string;
50
87
  /**
51
88
  * An array of individual directive config items to process in order
52
89
  *
53
90
  * This interface was referenced by `DirectiveMappingMap`'s JSON-Schema definition
54
91
  * via the `patternProperty` "[0-9A-Za-z_-]+".
55
92
  *
56
- * This interface was referenced by `ContentSchema`'s JSON-Schema
93
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
57
94
  * via the `definition` "directiveConfig".
58
95
  */
59
96
  export declare type DirectiveConfig = DirectiveConfigItem[];
60
97
  /**
61
- * This interface was referenced by `ContentSchema`'s JSON-Schema
98
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
62
99
  * via the `definition` "parameterOpList".
63
100
  */
64
101
  export declare type ParameterOpList = ParameterOp[];
65
102
  /**
66
103
  * Maps a query's input args to the input expected by the service's endpoint.
67
104
  *
68
- * This interface was referenced by `ContentSchema`'s JSON-Schema
105
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
69
106
  * via the `definition` "argsMapping".
70
107
  */
71
108
  export declare type ArgsMapping = DirectiveMappingMap | DirectiveConfig;
72
109
  /**
73
110
  * Maps a service endpoint's response results to the expected shape of the query's response.
74
111
  *
75
- * This interface was referenced by `ContentSchema`'s JSON-Schema
112
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
76
113
  * via the `definition` "resultsMapping".
77
114
  */
78
115
  export declare type ResultsMapping = DirectiveMappingMap | DirectiveConfig;
@@ -95,7 +132,7 @@ export declare type RestResolverName = 'rest:get' | 'rest:head' | 'rest:post' |
95
132
  /**
96
133
  * A tuple with a string key and a directive config to evaluate
97
134
  *
98
- * This interface was referenced by `ContentSchema`'s JSON-Schema
135
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
99
136
  * via the `definition` "directiveMappingArrayItem".
100
137
  */
101
138
  export declare type DirectiveMappingArrayItem = [string, DirectiveConfig];
@@ -108,23 +145,83 @@ export declare type SearchParamsMapping = DirectiveMappingArrayItem[];
108
145
  */
109
146
  export declare type AwsLambdaResolverName = 'awsLambda:invoke';
110
147
  /**
111
- * This interface was referenced by `ContentSchema`'s JSON-Schema
112
- * via the `definition` "arraySchema".
148
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
149
+ * via the `definition` "ref".
113
150
  */
114
- export declare type ArraySchema = ContentSchema & {
151
+ export declare type Ref = string;
152
+ /**
153
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
154
+ * via the `definition` "returnShape".
155
+ */
156
+ export declare type ReturnShape = string | ReturnShapeArraySchema;
157
+ /**
158
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
159
+ * via the `definition` "returnShapeArraySchema".
160
+ */
161
+ export declare type ReturnShapeArraySchema = PropertySchema & {
115
162
  type: 'array';
116
- items: ContentObjectSchema;
117
- [k: string]: any;
163
+ items: RefSchema | {
164
+ type: 'boolean' | 'integer' | 'number' | 'string';
165
+ [k: string]: any;
166
+ };
118
167
  };
168
+ export declare type ModelType = 'single' | 'multiple' | 'taxonomy';
119
169
  /**
120
- * This interface was referenced by `ContentSchema`'s JSON-Schema
121
- * via the `definition` "returnShape".
170
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
171
+ * via the `definition` "shapeSchema".
172
+ */
173
+ export declare type ShapeSchema = ShapeSchemaAllOf | ShapeSchemaOneOf | ShapeSchemaEnum | ObjectSchema;
174
+ /**
175
+ * Human-readable id for use in the UI
176
+ */
177
+ export declare type WorkflowName = string;
178
+ /**
179
+ * machine-readable slug
180
+ */
181
+ export declare type Name = string;
182
+ /**
183
+ * Human-readable id for use in the UI
184
+ */
185
+ export declare type Title = string;
186
+ export declare type Description = string;
187
+ /**
188
+ * Hex color code
189
+ */
190
+ export declare type Color = string;
191
+ /**
192
+ * Value to indicate whether items in the state should be returned in list queries
193
+ */
194
+ export declare type Live = boolean;
195
+ /**
196
+ * machine-readable id
197
+ */
198
+ export declare type Key = string;
199
+ export declare type Steps = WorkflowStep[];
200
+ /**
201
+ * The general type of this service, specifying how and where it will be utilized.
202
+ *
203
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
204
+ * via the `definition` "serviceType".
205
+ */
206
+ export declare type ServiceType = 'deployment' | 'authentication' | 'takeshape' | 'rest' | 'graphql' | 'openapi' | 'aws' | 'unknown';
207
+ /**
208
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
209
+ * via the `definition` "allOfSchema".
122
210
  */
123
- export declare type ReturnShape = string | ArraySchema;
211
+ export declare type AllOfSchema = PropertySchema & {
212
+ allOf: (RefSchema | RefSchemaLegacy | ObjectSchema)[];
213
+ };
214
+ /**
215
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
216
+ * via the `definition` "oneOfSchema".
217
+ */
218
+ export declare type OneOfSchema = PropertySchema & {
219
+ oneOf: (RefSchema | RefSchemaLegacy | ObjectSchema)[];
220
+ };
124
221
  /**
125
222
  * Options to be passed to the serialization routine.
126
223
  *
127
- * This interface was referenced by `ContentSchema`'s JSON-Schema
224
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
128
225
  * via the `definition` "parameterSerializeOptions".
129
226
  *
130
227
  * This interface was referenced by `undefined`'s JSON-Schema definition
@@ -134,26 +231,17 @@ export declare type ParameterSerializeOptions = ParameterSerializeStyleOptions |
134
231
  /**
135
232
  * An array of key / value or directive config tuples
136
233
  *
137
- * This interface was referenced by `ContentSchema`'s JSON-Schema
234
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
138
235
  * via the `definition` "directiveMappingArray".
139
236
  */
140
237
  export declare type DirectiveMappingArray = DirectiveMappingArrayItem[];
141
238
  /**
142
239
  * An array of key / value or directive config tuples
143
240
  *
144
- * This interface was referenced by `ContentSchema`'s JSON-Schema
241
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
145
242
  * via the `definition` "searchParamsMapping".
146
243
  */
147
244
  export declare type SearchParamsMapping1 = DirectiveMappingArrayItem[];
148
- export declare type ModelType = 'single' | 'multiple' | 'taxonomy';
149
- export declare type Steps = WorkflowStep[];
150
- /**
151
- * The general type of this service, specifying how and where it will be utilized.
152
- *
153
- * This interface was referenced by `ProjectSchema`'s JSON-Schema
154
- * via the `definition` "serviceType".
155
- */
156
- export declare type ServiceType = 'deployment' | 'authentication' | 'takeshape' | 'rest' | 'graphql' | 'openapi' | 'aws' | 'unknown';
157
245
  /**
158
246
  * This interface was referenced by `ProjectSchema`'s JSON-Schema
159
247
  * via the `definition` "shapeWithObjectSchema".
@@ -192,7 +280,7 @@ export interface ProjectSchema {
192
280
  /**
193
281
  * The version of the schema format your project is using. We increase the version as we make breaking changes to the schema format.
194
282
  */
195
- schemaVersion: '3.9.0';
283
+ schemaVersion: '3.10.0';
196
284
  /**
197
285
  * The ID of the TakeShape project this schema belongs to.
198
286
  */
@@ -224,12 +312,19 @@ export interface ProjectSchema {
224
312
  dataKey: string;
225
313
  services?: StoredServiceMap;
226
314
  }
315
+ /**
316
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
317
+ * via the `definition` "queryMap".
318
+ */
227
319
  export interface QueryMap {
228
320
  [k: string]: Query;
229
321
  }
230
322
  /**
231
323
  * This interface was referenced by `QueryMap`'s JSON-Schema definition
232
324
  * via the `patternProperty` "[0-9A-Za-z_-]+".
325
+ *
326
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
327
+ * via the `definition` "query".
233
328
  */
234
329
  export interface Query {
235
330
  args?: Args;
@@ -241,127 +336,48 @@ export interface Query {
241
336
  description?: string;
242
337
  [k: string]: any;
243
338
  }
244
- export interface AllOfSchema {
245
- allOf: (RefSchema | RefSchemaLegacy | ObjectSchema)[];
246
- }
247
- /**
248
- * This interface was referenced by `ContentSchema`'s JSON-Schema
249
- * via the `definition` "refSchema".
250
- */
251
- export interface RefSchema {
252
- /**
253
- * This interface was referenced by `ContentSchema`'s JSON-Schema
254
- * via the `definition` "ref".
255
- */
256
- '@ref': string;
257
- [k: string]: any;
258
- }
259
339
  /**
260
- * This interface was referenced by `ContentSchema`'s JSON-Schema
261
- * via the `definition` "refSchemaLegacy".
340
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
341
+ * via the `definition` "propertySchema".
262
342
  */
263
- export interface RefSchemaLegacy {
264
- /**
265
- * This interface was referenced by `ContentSchema`'s JSON-Schema
266
- * via the `definition` "ref".
267
- */
268
- $ref: string;
269
- [k: string]: any;
270
- }
271
- export interface ContentSchema {
272
- $id?: string;
273
- $schema?: string;
343
+ export interface PropertySchema {
274
344
  $ref?: string;
275
- $comment?: string;
276
345
  title?: string;
277
346
  description?: string;
278
347
  default?: any;
279
348
  readOnly?: boolean;
280
- examples?: any[];
281
349
  multipleOf?: number;
282
350
  maximum?: number;
283
351
  exclusiveMaximum?: number;
284
352
  minimum?: number;
285
353
  exclusiveMinimum?: number;
286
- /**
287
- * This interface was referenced by `ContentSchema`'s JSON-Schema
288
- * via the `definition` "nonNegativeInteger".
289
- */
290
- maxLength?: number;
291
- /**
292
- * This interface was referenced by `ContentSchema`'s JSON-Schema
293
- * via the `definition` "nonNegativeIntegerDefault0".
294
- */
295
- minLength?: number;
354
+ maxLength?: NonNegativeInteger;
355
+ minLength?: NonNegativeIntegerDefault0;
296
356
  pattern?: string;
297
- additionalItems?: ContentSchema;
298
- items?: ContentSchema;
299
- /**
300
- * This interface was referenced by `ContentSchema`'s JSON-Schema
301
- * via the `definition` "nonNegativeInteger".
302
- */
303
- maxItems?: number;
304
- /**
305
- * This interface was referenced by `ContentSchema`'s JSON-Schema
306
- * via the `definition` "nonNegativeIntegerDefault0".
307
- */
308
- minItems?: number;
357
+ additionalItems?: PropertySchema;
358
+ items?: PropertySchema;
359
+ maxItems?: NonNegativeInteger;
360
+ minItems?: NonNegativeIntegerDefault0;
309
361
  uniqueItems?: boolean;
310
- contains?: ContentSchema;
311
- /**
312
- * This interface was referenced by `ContentSchema`'s JSON-Schema
313
- * via the `definition` "nonNegativeInteger".
314
- */
315
- maxProperties?: number;
316
- /**
317
- * This interface was referenced by `ContentSchema`'s JSON-Schema
318
- * via the `definition` "nonNegativeIntegerDefault0".
319
- */
320
- minProperties?: number;
321
- /**
322
- * This interface was referenced by `ContentSchema`'s JSON-Schema
323
- * via the `definition` "stringArray".
324
- */
325
- required?: string[];
326
- additionalProperties?: ContentSchema | false;
362
+ contains?: PropertySchema;
363
+ maxProperties?: NonNegativeInteger;
364
+ minProperties?: NonNegativeIntegerDefault0;
365
+ required?: StringArray;
366
+ additionalProperties?: PropertySchema | false;
327
367
  definitions?: {
328
- [k: string]: ContentSchema;
368
+ [k: string]: PropertySchema;
329
369
  };
330
370
  properties?: {
331
- [k: string]: ContentSchema;
332
- };
333
- patternProperties?: {
334
- [k: string]: ContentSchema;
371
+ [k: string]: PropertySchema;
335
372
  };
336
- dependencies?: {
337
- [k: string]: ContentSchema | string[];
338
- };
339
- propertyNames?: ContentSchema;
340
373
  const?: any;
341
374
  enum?: any[];
342
- type?: ('array' | 'boolean' | 'integer' | 'null' | 'number' | 'object' | 'string') | ('array' | 'boolean' | 'integer' | 'null' | 'number' | 'object' | 'string')[];
375
+ type?: SimpleTypes | SimpleTypes[];
343
376
  format?: string;
344
377
  contentMediaType?: string;
345
378
  contentEncoding?: string;
346
- if?: ContentSchema;
347
- then?: ContentSchema;
348
- else?: ContentSchema;
349
- /**
350
- * This interface was referenced by `ContentSchema`'s JSON-Schema
351
- * via the `definition` "schemaArray".
352
- */
353
- allOf?: ContentSchema[];
354
- /**
355
- * This interface was referenced by `ContentSchema`'s JSON-Schema
356
- * via the `definition` "schemaArray".
357
- */
358
- anyOf?: ContentSchema[];
359
- /**
360
- * This interface was referenced by `ContentSchema`'s JSON-Schema
361
- * via the `definition` "schemaArray".
362
- */
363
- oneOf?: ContentSchema[];
364
- not?: ContentSchema;
379
+ allOf?: SchemaArray;
380
+ oneOf?: SchemaArray;
365
381
  '@relationship'?: Relationship;
366
382
  '@syncLocaleStructure'?: boolean;
367
383
  '@sensitive'?: boolean;
@@ -376,16 +392,11 @@ export interface ContentSchema {
376
392
  '@user'?: boolean;
377
393
  '@args'?: Args;
378
394
  '@resolver'?: Resolver;
379
- /**
380
- * This interface was referenced by `ContentSchema`'s JSON-Schema
381
- * via the `definition` "ref".
382
- */
383
- '@ref'?: string;
395
+ '@ref'?: Ref;
384
396
  '@derivedFrom'?: string;
385
- value?: string;
386
397
  }
387
398
  /**
388
- * This interface was referenced by `ContentSchema`'s JSON-Schema
399
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
389
400
  * via the `definition` "relationship".
390
401
  */
391
402
  export interface Relationship {
@@ -394,7 +405,7 @@ export interface Relationship {
394
405
  relatedName?: string;
395
406
  }
396
407
  /**
397
- * This interface was referenced by `ContentSchema`'s JSON-Schema
408
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
398
409
  * via the `definition` "utilResolver".
399
410
  */
400
411
  export interface UtilResolver {
@@ -415,7 +426,7 @@ export interface UtilResolverOptions {
415
426
  [k: string]: any;
416
427
  }
417
428
  /**
418
- * This interface was referenced by `ContentSchema`'s JSON-Schema
429
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
419
430
  * via the `definition` "parameterConfigForJson".
420
431
  */
421
432
  export interface ParameterConfigForJson {
@@ -424,7 +435,7 @@ export interface ParameterConfigForJson {
424
435
  /**
425
436
  * An object describing an operation to generate a parameter, using a nested OpList.
426
437
  *
427
- * This interface was referenced by `ContentSchema`'s JSON-Schema
438
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
428
439
  * via the `definition` "parameterOpNested".
429
440
  */
430
441
  export interface ParameterOpNested {
@@ -441,7 +452,7 @@ export interface ParameterOpNested {
441
452
  /**
442
453
  * An object describing an operation to generate a parameter using a value.
443
454
  *
444
- * This interface was referenced by `ContentSchema`'s JSON-Schema
455
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
445
456
  * via the `definition` "parameterOpValue".
446
457
  */
447
458
  export interface ParameterOpValue {
@@ -463,7 +474,7 @@ export interface ParameterOpValue {
463
474
  /**
464
475
  * An object describing an operation to generate a parameter using a mapping.
465
476
  *
466
- * This interface was referenced by `ContentSchema`'s JSON-Schema
477
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
467
478
  * via the `definition` "parameterOpMapping".
468
479
  */
469
480
  export interface ParameterOpMapping {
@@ -486,7 +497,7 @@ export interface DirectiveOptions {
486
497
  /**
487
498
  * An object describing an operation to generate a parameter using a mapping.
488
499
  *
489
- * This interface was referenced by `ContentSchema`'s JSON-Schema
500
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
490
501
  * via the `definition` "parameterOpOp".
491
502
  */
492
503
  export interface ParameterOpOp {
@@ -502,14 +513,14 @@ export interface ParameterOpOp {
502
513
  /**
503
514
  * An map of object keys / key paths to directive configs
504
515
  *
505
- * This interface was referenced by `ContentSchema`'s JSON-Schema
516
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
506
517
  * via the `definition` "directiveMappingMap".
507
518
  */
508
519
  export interface DirectiveMappingMap {
509
520
  [k: string]: DirectiveConfig;
510
521
  }
511
522
  /**
512
- * This interface was referenced by `ContentSchema`'s JSON-Schema
523
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
513
524
  * via the `definition` "takeshapeResolver".
514
525
  */
515
526
  export interface TakeshapeResolver {
@@ -534,7 +545,7 @@ export interface TakeshapeResolverOptions {
534
545
  [k: string]: any;
535
546
  }
536
547
  /**
537
- * This interface was referenced by `ContentSchema`'s JSON-Schema
548
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
538
549
  * via the `definition` "internalTakeshapeResolver".
539
550
  */
540
551
  export interface InternalTakeshapeResolver {
@@ -555,7 +566,7 @@ export interface InternalTakeshapeResolver {
555
566
  resultsMapping?: ResultsMapping;
556
567
  }
557
568
  /**
558
- * This interface was referenced by `ContentSchema`'s JSON-Schema
569
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
559
570
  * via the `definition` "graphqlResolver".
560
571
  */
561
572
  export interface GraphqlResolver {
@@ -591,7 +602,7 @@ export interface GraphqlResolverOptions {
591
602
  [k: string]: any;
592
603
  }
593
604
  /**
594
- * This interface was referenced by `ContentSchema`'s JSON-Schema
605
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
595
606
  * via the `definition` "parameterConfigForHeaders".
596
607
  */
597
608
  export interface ParameterConfigForHeaders {
@@ -601,7 +612,7 @@ export interface ParameterConfigForHeaders {
601
612
  /**
602
613
  * Top-level paths to use headers serialization options for.
603
614
  *
604
- * This interface was referenced by `ContentSchema`'s JSON-Schema
615
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
605
616
  * via the `definition` "parameterSerializeConfigForHeaders".
606
617
  */
607
618
  export interface ParameterSerializeConfigForHeaders {
@@ -617,7 +628,7 @@ export interface ParameterSerializeConfigForHeaders {
617
628
  /**
618
629
  * Options to be passed to the serialization routine.
619
630
  *
620
- * This interface was referenced by `ContentSchema`'s JSON-Schema
631
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
621
632
  * via the `definition` "parameterSerializeStyleOptionsForHeaders".
622
633
  */
623
634
  export interface ParameterSerializeStyleOptionsForHeaders {
@@ -627,7 +638,7 @@ export interface ParameterSerializeStyleOptionsForHeaders {
627
638
  /**
628
639
  * Options to be passed to the serialization routine.
629
640
  *
630
- * This interface was referenced by `ContentSchema`'s JSON-Schema
641
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
631
642
  * via the `definition` "parameterSerializeContentOptions".
632
643
  */
633
644
  export interface ParameterSerializeContentOptions {
@@ -645,7 +656,7 @@ export interface ParameterSerializeContentOptions {
645
656
  };
646
657
  }
647
658
  /**
648
- * This interface was referenced by `ContentSchema`'s JSON-Schema
659
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
649
660
  * via the `definition` "parameterConfigForSearchParams".
650
661
  */
651
662
  export interface ParameterConfigForSearchParams {
@@ -655,7 +666,7 @@ export interface ParameterConfigForSearchParams {
655
666
  /**
656
667
  * Top-level paths to use search params serialization options for.
657
668
  *
658
- * This interface was referenced by `ContentSchema`'s JSON-Schema
669
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
659
670
  * via the `definition` "parameterSerializeConfigForSearchParams".
660
671
  */
661
672
  export interface ParameterSerializeConfigForSearchParams {
@@ -671,7 +682,7 @@ export interface ParameterSerializeConfigForSearchParams {
671
682
  /**
672
683
  * Options to be passed to the serialization routine.
673
684
  *
674
- * This interface was referenced by `ContentSchema`'s JSON-Schema
685
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
675
686
  * via the `definition` "parameterSerializeStyleOptionsForSearchParams".
676
687
  */
677
688
  export interface ParameterSerializeStyleOptionsForSearchParams {
@@ -685,7 +696,7 @@ export interface ParameterSerializeStyleOptionsForSearchParams {
685
696
  skipEncoding?: boolean;
686
697
  }
687
698
  /**
688
- * This interface was referenced by `ContentSchema`'s JSON-Schema
699
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
689
700
  * via the `definition` "restResolver".
690
701
  */
691
702
  export interface RestResolver {
@@ -722,7 +733,7 @@ export interface RestResolverOptions {
722
733
  [k: string]: any;
723
734
  }
724
735
  /**
725
- * This interface was referenced by `ContentSchema`'s JSON-Schema
736
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
726
737
  * via the `definition` "parameterConfigForBody".
727
738
  */
728
739
  export interface ParameterConfigForBody {
@@ -732,14 +743,14 @@ export interface ParameterConfigForBody {
732
743
  /**
733
744
  * Top-level paths to use serialization options for.
734
745
  *
735
- * This interface was referenced by `ContentSchema`'s JSON-Schema
746
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
736
747
  * via the `definition` "parameterSerializeConfigForBody".
737
748
  */
738
749
  export interface ParameterSerializeConfigForBody {
739
750
  content?: ParameterSerializeContentOptions;
740
751
  }
741
752
  /**
742
- * This interface was referenced by `ContentSchema`'s JSON-Schema
753
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
743
754
  * via the `definition` "parameterConfigForPathParams".
744
755
  */
745
756
  export interface ParameterConfigForPathParams {
@@ -749,7 +760,7 @@ export interface ParameterConfigForPathParams {
749
760
  /**
750
761
  * Top-level paths to use path params serialization options for.
751
762
  *
752
- * This interface was referenced by `ContentSchema`'s JSON-Schema
763
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
753
764
  * via the `definition` "parameterSerializeConfigForPathParams".
754
765
  */
755
766
  export interface ParameterSerializeConfigForPathParams {
@@ -769,7 +780,7 @@ export interface ParameterSerializeConfigForPathParams {
769
780
  /**
770
781
  * Options to be passed to the serialization routine.
771
782
  *
772
- * This interface was referenced by `ContentSchema`'s JSON-Schema
783
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
773
784
  * via the `definition` "parameterSerializeStyleOptionsForPathParams".
774
785
  */
775
786
  export interface ParameterSerializeStyleOptionsForPathParams {
@@ -783,7 +794,7 @@ export interface ParameterSerializeStyleOptionsForPathParams {
783
794
  skipEncoding?: boolean;
784
795
  }
785
796
  /**
786
- * This interface was referenced by `ContentSchema`'s JSON-Schema
797
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
787
798
  * via the `definition` "awsLambdaResolver".
788
799
  */
789
800
  export interface AwsLambdaResolver {
@@ -811,7 +822,7 @@ export interface AwsLambdaResolverOptions {
811
822
  [k: string]: any;
812
823
  }
813
824
  /**
814
- * This interface was referenced by `ContentSchema`'s JSON-Schema
825
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
815
826
  * via the `definition` "parameterConfigForAwsLambda".
816
827
  */
817
828
  export interface ParameterConfigForAwsLambda {
@@ -819,7 +830,7 @@ export interface ParameterConfigForAwsLambda {
819
830
  serialize: ParameterSerializeConfigForPathParams;
820
831
  }
821
832
  /**
822
- * This interface was referenced by `ContentSchema`'s JSON-Schema
833
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
823
834
  * via the `definition` "composeResolver".
824
835
  */
825
836
  export interface ComposeResolver {
@@ -828,50 +839,12 @@ export interface ComposeResolver {
828
839
  results?: ParameterConfigForJson;
829
840
  }
830
841
  /**
831
- * This interface was referenced by `ContentSchema`'s JSON-Schema
832
- * via the `definition` "oneOfSchema".
833
- */
834
- export interface OneOfSchema {
835
- oneOf: (RefSchema | RefSchemaLegacy | ObjectSchema)[];
836
- }
837
- /**
838
- * All possible options for the more specific ParameterSerializeStyleOptions types.
839
- *
840
- * This interface was referenced by `ContentSchema`'s JSON-Schema
841
- * via the `definition` "parameterSerializeStyleOptions".
842
- */
843
- export interface ParameterSerializeStyleOptions {
844
- style: 'simple' | 'label' | 'matrix' | 'form' | 'spaceDelimited' | 'pipeDelimited' | 'deepObject' | 'none';
845
- explode?: boolean;
846
- allowEmptyValue?: boolean;
847
- /**
848
- * The allowReserved keyword specifies whether the reserved characters :/?#[]@!$&'()*+,;= in parameter values are allowed to be sent as they are.
849
- */
850
- allowReserved?: boolean;
851
- skipEncoding?: boolean;
852
- }
853
- /**
854
- * All possible options for the more specific ParameterSerializeConfig types.
855
- *
856
- * This interface was referenced by `ContentSchema`'s JSON-Schema
857
- * via the `definition` "parameterSerializeConfig".
858
- */
859
- export interface ParameterSerializeConfig {
860
- content?: ParameterSerializeContentOptions;
861
- defaults?: ParameterSerializeOptions;
862
- paths?: {
863
- [k: string]: ParameterSerializeOptions;
864
- };
865
- }
866
- /**
867
- * All possible options for the more specific ParameterConfig types.
868
- *
869
- * This interface was referenced by `ContentSchema`'s JSON-Schema
870
- * via the `definition` "parameterConfig".
842
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
843
+ * via the `definition` "refSchema".
871
844
  */
872
- export interface ParameterConfig {
873
- ops: ParameterOpList;
874
- serialize?: ParameterSerializeConfig;
845
+ export interface RefSchema {
846
+ '@ref': Ref;
847
+ [k: string]: any;
875
848
  }
876
849
  /**
877
850
  * This interface was referenced by `ProjectSchema`'s JSON-Schema
@@ -910,9 +883,37 @@ export interface Shape {
910
883
  type: ModelType;
911
884
  };
912
885
  workflow?: string;
913
- schema: ContentObjectSchema;
886
+ schema: ShapeSchema;
887
+ }
888
+ /**
889
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
890
+ * via the `definition` "shapeSchemaAllOf".
891
+ */
892
+ export interface ShapeSchemaAllOf {
893
+ allOf: (RefSchema | RefSchemaLegacy | ObjectSchema)[];
894
+ }
895
+ /**
896
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
897
+ * via the `definition` "refSchemaLegacy".
898
+ */
899
+ export interface RefSchemaLegacy {
900
+ $ref: Ref;
914
901
  [k: string]: any;
915
902
  }
903
+ /**
904
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
905
+ * via the `definition` "shapeSchemaOneOf".
906
+ */
907
+ export interface ShapeSchemaOneOf {
908
+ oneOf: (RefSchema | RefSchemaLegacy | ObjectSchema)[];
909
+ }
910
+ /**
911
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
912
+ * via the `definition` "shapeSchemaEnum".
913
+ */
914
+ export interface ShapeSchemaEnum {
915
+ enum: string[];
916
+ }
916
917
  /**
917
918
  * This interface was referenced by `ProjectSchema`'s JSON-Schema
918
919
  * via the `definition` "indexedShapeMap".
@@ -980,10 +981,7 @@ export interface Workflow {
980
981
  * machine-readable id
981
982
  */
982
983
  name: string;
983
- /**
984
- * Human-readable id for use in the UI
985
- */
986
- title: string;
984
+ title: WorkflowName;
987
985
  steps: Steps;
988
986
  [k: string]: any;
989
987
  }
@@ -992,27 +990,12 @@ export interface Workflow {
992
990
  * via the `definition` "workflowStep".
993
991
  */
994
992
  export interface WorkflowStep {
995
- /**
996
- * machine-readable slug
997
- */
998
- name: string;
999
- /**
1000
- * Human-readable id for use in the UI
1001
- */
1002
- title: string;
1003
- description?: string;
1004
- /**
1005
- * Hex color code
1006
- */
1007
- color: string;
1008
- /**
1009
- * Value to indicate whether items in the state should be returned in list queries
1010
- */
1011
- live: boolean;
1012
- /**
1013
- * machine-readable id
1014
- */
1015
- key: string;
993
+ name: Name;
994
+ title: Title;
995
+ description?: Description;
996
+ color: Color;
997
+ live: Live;
998
+ key: Key;
1016
999
  }
1017
1000
  /**
1018
1001
  * This interface was referenced by `ProjectSchema`'s JSON-Schema
@@ -1056,6 +1039,45 @@ export interface StoredServiceConfig {
1056
1039
  [k: string]: any;
1057
1040
  };
1058
1041
  }
1042
+ /**
1043
+ * All possible options for the more specific ParameterSerializeStyleOptions types.
1044
+ *
1045
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
1046
+ * via the `definition` "parameterSerializeStyleOptions".
1047
+ */
1048
+ export interface ParameterSerializeStyleOptions {
1049
+ style: 'simple' | 'label' | 'matrix' | 'form' | 'spaceDelimited' | 'pipeDelimited' | 'deepObject' | 'none';
1050
+ explode?: boolean;
1051
+ allowEmptyValue?: boolean;
1052
+ /**
1053
+ * The allowReserved keyword specifies whether the reserved characters :/?#[]@!$&'()*+,;= in parameter values are allowed to be sent as they are.
1054
+ */
1055
+ allowReserved?: boolean;
1056
+ skipEncoding?: boolean;
1057
+ }
1058
+ /**
1059
+ * All possible options for the more specific ParameterSerializeConfig types.
1060
+ *
1061
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
1062
+ * via the `definition` "parameterSerializeConfig".
1063
+ */
1064
+ export interface ParameterSerializeConfig {
1065
+ content?: ParameterSerializeContentOptions;
1066
+ defaults?: ParameterSerializeOptions;
1067
+ paths?: {
1068
+ [k: string]: ParameterSerializeOptions;
1069
+ };
1070
+ }
1071
+ /**
1072
+ * All possible options for the more specific ParameterConfig types.
1073
+ *
1074
+ * This interface was referenced by `ProjectSchema`'s JSON-Schema
1075
+ * via the `definition` "parameterConfig".
1076
+ */
1077
+ export interface ParameterConfig {
1078
+ ops: ParameterOpList;
1079
+ serialize?: ParameterSerializeConfig;
1080
+ }
1059
1081
  /**
1060
1082
  * This interface was referenced by `ProjectSchema`'s JSON-Schema
1061
1083
  * via the `definition` "formScalarConfig".