@luvio/compiler 0.50.0 → 0.53.1

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 (66) hide show
  1. package/dist/codegen/adapter/adapter-browser-factory.js +2 -2
  2. package/dist/codegen/adapter/adapter-browser-factory.js.map +1 -1
  3. package/dist/codegen/adapter/adapter-fragment.js +8 -8
  4. package/dist/codegen/adapter/adapter-fragment.js.map +1 -1
  5. package/dist/codegen/adapter/constants.d.ts +2 -0
  6. package/dist/codegen/adapter/constants.js +3 -1
  7. package/dist/codegen/adapter/constants.js.map +1 -1
  8. package/dist/codegen/pagination-utils/constants.d.ts +4 -0
  9. package/dist/codegen/pagination-utils/constants.js +8 -0
  10. package/dist/codegen/pagination-utils/constants.js.map +1 -0
  11. package/dist/codegen/pagination-utils/cursor-based.d.ts +0 -2
  12. package/dist/codegen/pagination-utils/cursor-based.js +27 -23
  13. package/dist/codegen/pagination-utils/cursor-based.js.map +1 -1
  14. package/dist/codegen/resource/composite/ingest-success.js +2 -2
  15. package/dist/codegen/resource/composite/ingest-success.js.map +1 -1
  16. package/dist/codegen/resource/composite/select-child-resource-params.js +2 -2
  17. package/dist/codegen/resource/composite/select-child-resource-params.js.map +1 -1
  18. package/dist/codegen/resource/constants.d.ts +2 -0
  19. package/dist/codegen/resource/constants.js +7 -0
  20. package/dist/codegen/resource/constants.js.map +1 -0
  21. package/dist/codegen/resource/ingest-success.js +3 -7
  22. package/dist/codegen/resource/ingest-success.js.map +1 -1
  23. package/dist/codegen/resource/key-builder.js +2 -1
  24. package/dist/codegen/resource/key-builder.js.map +1 -1
  25. package/dist/codegen/resource/pagination/create-pagination-params.d.ts +4 -0
  26. package/dist/codegen/resource/pagination/create-pagination-params.js +52 -0
  27. package/dist/codegen/resource/pagination/create-pagination-params.js.map +1 -0
  28. package/dist/codegen/resource/pagination/select.d.ts +3 -0
  29. package/dist/codegen/resource/pagination/select.js +23 -0
  30. package/dist/codegen/resource/pagination/select.js.map +1 -0
  31. package/dist/codegen/resource/select.d.ts +0 -1
  32. package/dist/codegen/resource/select.js +14 -7
  33. package/dist/codegen/resource/select.js.map +1 -1
  34. package/dist/codegen/shape/constants.d.ts +5 -0
  35. package/dist/codegen/shape/constants.js +6 -1
  36. package/dist/codegen/shape/constants.js.map +1 -1
  37. package/dist/codegen/shape/shape-dynamic-select.d.ts +1 -1
  38. package/dist/codegen/shape/shape-dynamic-select.js.map +1 -1
  39. package/dist/codegen/shape/shape-keybuilder.js +3 -1
  40. package/dist/codegen/shape/shape-keybuilder.js.map +1 -1
  41. package/dist/codegen/shape/shape-normalize.js +4 -8
  42. package/dist/codegen/shape/shape-normalize.js.map +1 -1
  43. package/dist/codegen/shape/shape-select-discriminator.js +2 -2
  44. package/dist/codegen/shape/shape-select-discriminator.js.map +1 -1
  45. package/dist/codegen/shape/shape-select-utils.d.ts +19 -0
  46. package/dist/codegen/shape/shape-select-utils.js +381 -0
  47. package/dist/codegen/shape/shape-select-utils.js.map +1 -0
  48. package/dist/codegen/shape/shape-select.d.ts +0 -1
  49. package/dist/codegen/shape/shape-select.js +25 -381
  50. package/dist/codegen/shape/shape-select.js.map +1 -1
  51. package/dist/codegen/shape/shape-utils-ingest.js +0 -3
  52. package/dist/codegen/shape/shape-utils-ingest.js.map +1 -1
  53. package/dist/codegen/shared/constants.d.ts +2 -0
  54. package/dist/codegen/shared/constants.js +4 -1
  55. package/dist/codegen/shared/constants.js.map +1 -1
  56. package/dist/parser/annotation-paginated.d.ts +2 -1
  57. package/dist/parser/annotation-paginated.js +20 -4
  58. package/dist/parser/annotation-paginated.js.map +1 -1
  59. package/dist/parser/annotation-paginationParams.js +5 -0
  60. package/dist/parser/annotation-paginationParams.js.map +1 -1
  61. package/dist/parser/main.js +1 -1
  62. package/dist/parser/main.js.map +1 -1
  63. package/dist/utils/shape.d.ts +3 -0
  64. package/dist/utils/shape.js +9 -1
  65. package/dist/utils/shape.js.map +1 -1
  66. package/package.json +3 -3
@@ -0,0 +1,381 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.selectNonOpaque = exports.selectOpaque = exports.selectShape = void 0;
7
+ const deindent_1 = __importDefault(require("../../utils/deindent"));
8
+ const utils_1 = require("../../intermediate/utils");
9
+ const inheritance_1 = require("../../intermediate/inheritance");
10
+ const shape_select_discriminator_1 = require("./shape-select-discriminator");
11
+ const constants_1 = require("../adapter/constants");
12
+ const constants_2 = require("../shape/constants");
13
+ function selectShape(shape, state) {
14
+ if (shape.isLink) {
15
+ return selectLink(shape, state);
16
+ }
17
+ if (utils_1.isNodeShape(shape)) {
18
+ return selectObject(shape, state);
19
+ }
20
+ else if (utils_1.isScalarShape(shape) || utils_1.isNilShape(shape)) {
21
+ return selectScalar(state);
22
+ }
23
+ else if (utils_1.isArrayShape(shape)) {
24
+ return selectArray(shape, state);
25
+ }
26
+ else if (utils_1.isUnionShape(shape)) {
27
+ return selectUnion(shape, state);
28
+ }
29
+ else if (utils_1.isAnyShape(shape)) {
30
+ return selectAny(state);
31
+ }
32
+ throw new Error(`Unsupported shape "${shape.name}"`);
33
+ }
34
+ exports.selectShape = selectShape;
35
+ function selectAny(state) {
36
+ return deindent_1.default `
37
+ {
38
+ name: ${state.propertyName},
39
+ kind: 'Object',
40
+ // any
41
+ }
42
+ `;
43
+ }
44
+ function selectUnion(shape, state) {
45
+ let nullableScalar = null;
46
+ let nonScalar = null;
47
+ shape.anyOf.forEach((anyOf) => {
48
+ if (utils_1.isScalarShape(anyOf) || utils_1.isNilShape(anyOf)) {
49
+ if (utils_1.isNilShape(anyOf)) {
50
+ nullableScalar = anyOf;
51
+ }
52
+ return;
53
+ }
54
+ nonScalar = anyOf;
55
+ });
56
+ // Union pointing to another shape
57
+ if (nonScalar !== null && nullableScalar !== null) {
58
+ return selectShape(nonScalar, {
59
+ ...state,
60
+ nullable: true,
61
+ });
62
+ }
63
+ // We have a union between scalars
64
+ if (nonScalar === null) {
65
+ return selectShape(shape.anyOf[0], {
66
+ ...state,
67
+ });
68
+ }
69
+ // We have a union between non-null scalar and a link shape.
70
+ // The only way we can codegen this today is with a greedy, deep selector
71
+ return deindent_1.default `
72
+ {
73
+ kind: 'Object',
74
+ name: ${state.propertyName},
75
+ // Complex union deep
76
+ }
77
+ `;
78
+ }
79
+ function selectArray(shape, state) {
80
+ return selectShape(shape.items, {
81
+ ...state,
82
+ isArray: true,
83
+ });
84
+ }
85
+ function selectInheritedLink(shape, state) {
86
+ const { importContext } = state;
87
+ const linkName = shape.linkLabel;
88
+ const isNormalizable = state.modelInfo.normalizableShapeDefinitions[shape.id];
89
+ if (isNormalizable) {
90
+ return deindent_1.default `
91
+ {
92
+ kind: 'Link',
93
+ name: ${state.propertyName},
94
+ fragment: ${importContext.importRamlArtifact(shape.linkTarget.id, shape_select_discriminator_1.SHAPE_SELECT_CHILDREN_IDENTIFIER)}()
95
+ }
96
+ `;
97
+ }
98
+ const selectionsIdentifier = `${linkName}__unionSelections`;
99
+ const hoistStatement = deindent_1.default `
100
+ const ${selectionsIdentifier} = ${importContext.importRamlArtifact(shape.linkTarget.id, shape_select_discriminator_1.SHAPE_SELECT_CHILDREN_IDENTIFIER)}()
101
+ `;
102
+ state.hoist.push(hoistStatement);
103
+ const statements = [
104
+ `kind: 'Object'`,
105
+ `name: ${state.propertyName}`,
106
+ `discriminator: ${selectionsIdentifier}.discriminator`,
107
+ `union: true`,
108
+ `nullable: ${state.nullable}`,
109
+ `unionSelections: ${selectionsIdentifier}.unionSelections`,
110
+ ].filter((item) => item !== undefined);
111
+ return deindent_1.default `
112
+ {
113
+ ${statements.join(',\n')}
114
+ }
115
+ `;
116
+ }
117
+ function selectInlineObject(shape, state) {
118
+ const { importContext, modelInfo } = state;
119
+ const shapeName = shape.name;
120
+ const linkIsOpaque = modelInfo.shapeOpaque[shape.id];
121
+ const linkPrivateProps = modelInfo.shapePrivate[shape.id];
122
+ let statements = [`name: ${state.propertyName}`, `kind: 'Object'`];
123
+ const selectionsIdentifier = `${shapeName}__selections`;
124
+ const opaqueIdentifier = `${shapeName}__opaque`;
125
+ const hoistStatement = deindent_1.default `
126
+ const {
127
+ selections: ${selectionsIdentifier},
128
+ opaque: ${opaqueIdentifier},
129
+ } = ${importContext.importRamlArtifact(shape.id, constants_2.SHAPE_SELECT_IDENTIFIER)}()
130
+ `;
131
+ // Theres a chance we've already imported this shape, lets reuse if thats the case
132
+ if (state.hoist.indexOf(hoistStatement) === -1) {
133
+ state.hoist.push(hoistStatement);
134
+ }
135
+ statements = [
136
+ ...statements,
137
+ state.nullable === true ? 'nullable: true' : undefined,
138
+ state.isMap === true ? 'map: true' : undefined,
139
+ state.isArray === true ? 'plural: true' : undefined,
140
+ linkIsOpaque === true && linkPrivateProps === undefined
141
+ ? undefined
142
+ : `selections: ${selectionsIdentifier}`,
143
+ linkIsOpaque === true && linkPrivateProps === undefined
144
+ ? `opaque: ${opaqueIdentifier}`
145
+ : undefined,
146
+ state.optional === true ? 'required: false' : undefined,
147
+ ];
148
+ return deindent_1.default `
149
+ {
150
+ ${statements.filter((value) => value !== undefined).join(',\n')}
151
+ }
152
+ `;
153
+ }
154
+ function selectNormalizable(shape, state) {
155
+ const { importContext, dynamicParamsIdentifier, propertyName, hoist } = state;
156
+ const statements = [
157
+ `name: ${propertyName}`,
158
+ `kind: 'Link'`,
159
+ state.nullable === true ? 'nullable: true' : undefined,
160
+ state.isMap === true ? 'map: true' : undefined,
161
+ state.isArray === true ? 'plural: true' : undefined,
162
+ `fragment: ${importContext.importRamlArtifact(shape.id, constants_2.SHAPE_SELECT_IDENTIFIER)}()`,
163
+ ];
164
+ const filteredStatements = statements.filter(Boolean).join(',\n');
165
+ if (dynamicParamsIdentifier !== null) {
166
+ const formattedPropertyName = propertyName.replace(/'/g, '');
167
+ const dynamicParamIdentifier = `${dynamicParamsIdentifier}.${formattedPropertyName}`;
168
+ const propertySelectionIdentifier = `${formattedPropertyName}PathSelection`;
169
+ hoist.push(deindent_1.default `
170
+ const ${propertySelectionIdentifier}: ${constants_1.ADAPTER_PATH_SELECTION_IDENTIFIER} = ${dynamicParamIdentifier} === undefined ? {
171
+ ${filteredStatements}
172
+ } : ${dynamicParamIdentifier};
173
+ `);
174
+ return deindent_1.default `
175
+ ${propertySelectionIdentifier}
176
+ `;
177
+ }
178
+ return deindent_1.default `
179
+ {
180
+ ${filteredStatements}
181
+ }
182
+ `;
183
+ }
184
+ function selectLink(shape, state) {
185
+ const linkTarget = shape.linkTarget;
186
+ if (inheritance_1.isDiscriminatorShape(linkTarget, state.modelInfo)) {
187
+ return selectInheritedLink(shape, state);
188
+ }
189
+ if (state.modelInfo.normalizableShapeDefinitions[shape.id]) {
190
+ return selectNormalizable(linkTarget, state);
191
+ }
192
+ return selectInlineObject(linkTarget, state);
193
+ }
194
+ function selectScalar(state) {
195
+ if (state.isMap) {
196
+ return deindent_1.default `
197
+ {
198
+ ${[`name: ${state.propertyName}`, `kind: 'Scalar'`, `map: true`].join(',\n')}
199
+ }
200
+ `;
201
+ }
202
+ if (state.isArray) {
203
+ return deindent_1.default `
204
+ {
205
+ ${[`name: ${state.propertyName}`, `kind: 'Scalar'`, `plural: true`].join(',\n')}
206
+ }
207
+ `;
208
+ }
209
+ return deindent_1.default `
210
+ {
211
+ ${[
212
+ `name: ${state.propertyName}`,
213
+ `kind: 'Scalar'`,
214
+ ...(state.optional === true ? [`required: false`] : []),
215
+ ].join(',\n')}
216
+ }
217
+ `;
218
+ }
219
+ function selectObject(shape, state) {
220
+ var _a;
221
+ const privates = (_a = state.modelInfo.shapePrivate[shape.id]) !== null && _a !== void 0 ? _a : [];
222
+ state.hoistPrivate.push(...privates);
223
+ const statements = filterPrivateProperties(shape, state.modelInfo).map((propertyShape) => {
224
+ const propertyName = propertyShape.name;
225
+ const patternName = propertyShape.patternName;
226
+ const propertyValueShape = propertyShape.range;
227
+ const isOptional = propertyShape.isOptional;
228
+ if (patternName !== null) {
229
+ // unknown keys
230
+ if (state.propertyName === '') {
231
+ // empty top level object in RAML?
232
+ return '';
233
+ }
234
+ // for now we just use the "map" property on Links and Scalars
235
+ const isMap = !!state.modelInfo.normalizableShapeDefinitions[shape.id] ||
236
+ utils_1.isScalarShape(propertyValueShape);
237
+ return selectShape(propertyValueShape, {
238
+ propertyName: state.propertyName,
239
+ modelInfo: state.modelInfo,
240
+ isMap,
241
+ isArray: state.isArray,
242
+ rootShape: state.rootShape,
243
+ nullable: state.nullable,
244
+ optional: state.optional,
245
+ hoist: state.hoist,
246
+ hoistPrivate: state.hoistPrivate,
247
+ importContext: state.importContext,
248
+ dynamicParamsIdentifier: state.dynamicParamsIdentifier,
249
+ });
250
+ }
251
+ return selectShape(propertyValueShape, {
252
+ propertyName: `'${propertyName}'`,
253
+ modelInfo: state.modelInfo,
254
+ isMap: state.isMap,
255
+ isArray: state.isArray,
256
+ rootShape: state.rootShape,
257
+ nullable: state.nullable,
258
+ optional: isOptional,
259
+ hoist: state.hoist,
260
+ hoistPrivate: state.hoistPrivate,
261
+ importContext: state.importContext,
262
+ dynamicParamsIdentifier: state.dynamicParamsIdentifier,
263
+ });
264
+ });
265
+ return statements.join(',\n');
266
+ }
267
+ function filterPrivateProperties(nodeShape, modelInfo) {
268
+ const privates = modelInfo.shapePrivate[nodeShape.id];
269
+ // Nothing to filter
270
+ if (privates === undefined) {
271
+ return nodeShape.properties;
272
+ }
273
+ return nodeShape.properties.filter((property) => {
274
+ const name = property.name;
275
+ return privates.includes(name) === false;
276
+ });
277
+ }
278
+ function getPropertyKind(property) {
279
+ let propertyRange = property.range;
280
+ if (utils_1.isUnionShape(propertyRange)) {
281
+ // Filter out non-scalars
282
+ const nonScalar = propertyRange.anyOf.find((union) => {
283
+ return !utils_1.isScalarShape(union) && !utils_1.isNilShape(union);
284
+ });
285
+ // If the entire union is a scalar, report the type as a Scalar
286
+ if (nonScalar === undefined) {
287
+ return 'Scalar';
288
+ }
289
+ }
290
+ return utils_1.isScalarShape(propertyRange) ? 'Scalar' : 'Object';
291
+ }
292
+ function selectOpaque(nodeShape, state) {
293
+ const { modelInfo, hoistPrivate } = state;
294
+ const privates = modelInfo.shapePrivate[nodeShape.id];
295
+ // We don't have to filter anything
296
+ if (privates === undefined) {
297
+ return `
298
+ opaque: true
299
+ `;
300
+ }
301
+ const statements = filterPrivateProperties(nodeShape, modelInfo).map((property) => {
302
+ const name = property.name;
303
+ const kind = getPropertyKind(property);
304
+ const selection = [
305
+ `name: '${name}'`,
306
+ `kind: '${kind}'`,
307
+ ...(kind === 'Object' ? [`opaque: true`] : []),
308
+ ...(property.isOptional === true ? [`required: false`] : []),
309
+ ];
310
+ return deindent_1.default `
311
+ {
312
+ ${selection.join(',\n')}
313
+ }
314
+ `;
315
+ });
316
+ hoistPrivate.push(...privates);
317
+ return deindent_1.default `
318
+ selections: [
319
+ ${statements.join(',\n')}
320
+ ]
321
+ `;
322
+ }
323
+ exports.selectOpaque = selectOpaque;
324
+ function selectInherited(nodeShape, state) {
325
+ var _a;
326
+ const { modelInfo, importContext, hoist, hoistPrivate, dynamicParamsIdentifier } = state;
327
+ const parent = inheritance_1.getParentShape(nodeShape, modelInfo);
328
+ const parentName = parent.shapeName;
329
+ const parentImport = importContext.importRamlArtifact(parent.shapeId, constants_2.SHAPE_SELECT_IDENTIFIER);
330
+ const parentSelectionsIdentifier = `${parentName}Selections`;
331
+ const privates = (_a = modelInfo.shapePrivate[parent.shapeId]) !== null && _a !== void 0 ? _a : [];
332
+ hoist.push(deindent_1.default `
333
+ const { selections: ${parentSelectionsIdentifier} } = ${parentImport}();
334
+ `);
335
+ hoistPrivate.push(...privates);
336
+ const code = selectObject(nodeShape, {
337
+ rootShape: nodeShape,
338
+ propertyName: '',
339
+ modelInfo,
340
+ isMap: false,
341
+ isArray: false,
342
+ nullable: false,
343
+ optional: false,
344
+ hoist,
345
+ hoistPrivate,
346
+ importContext,
347
+ dynamicParamsIdentifier,
348
+ });
349
+ return deindent_1.default `
350
+ selections: [
351
+ ...${parentSelectionsIdentifier},
352
+ ${code}
353
+ ]
354
+ `;
355
+ }
356
+ function selectNonOpaque(nodeShape, state) {
357
+ const { modelInfo, importContext, hoist, hoistPrivate, dynamicParamsIdentifier } = state;
358
+ if (inheritance_1.hasInheritance(nodeShape, modelInfo)) {
359
+ return selectInherited(nodeShape, state);
360
+ }
361
+ const code = selectShape(nodeShape, {
362
+ rootShape: nodeShape,
363
+ propertyName: '',
364
+ modelInfo,
365
+ isMap: false,
366
+ isArray: false,
367
+ nullable: false,
368
+ optional: false,
369
+ hoist,
370
+ hoistPrivate,
371
+ importContext,
372
+ dynamicParamsIdentifier,
373
+ });
374
+ return deindent_1.default `
375
+ selections: [
376
+ ${code}
377
+ ]
378
+ `;
379
+ }
380
+ exports.selectNonOpaque = selectNonOpaque;
381
+ //# sourceMappingURL=shape-select-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shape-select-utils.js","sourceRoot":"","sources":["../../../src/codegen/shape/shape-select-utils.ts"],"names":[],"mappings":";;;;;;AAAA,oEAA4C;AAW5C,oDAOkC;AAClC,gEAIwC;AACxC,6EAAgF;AAChF,oDAAyE;AACzE,kDAA6D;AAgB7D,SAAgB,WAAW,CAAC,KAAsB,EAAE,KAAkB;IAClE,IAAI,KAAK,CAAC,MAAM,EAAE;QACd,OAAO,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KACnC;IAED,IAAI,mBAAW,CAAC,KAAK,CAAC,EAAE;QACpB,OAAO,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KACrC;SAAM,IAAI,qBAAa,CAAC,KAAK,CAAC,IAAI,kBAAU,CAAC,KAAK,CAAC,EAAE;QAClD,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;KAC9B;SAAM,IAAI,oBAAY,CAAC,KAAK,CAAC,EAAE;QAC5B,OAAO,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KACpC;SAAM,IAAI,oBAAY,CAAC,KAAK,CAAC,EAAE;QAC5B,OAAO,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KACpC;SAAM,IAAI,kBAAU,CAAC,KAAK,CAAC,EAAE;QAC1B,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC;KAC3B;IAED,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;AACzD,CAAC;AAlBD,kCAkBC;AAED,SAAS,SAAS,CAAC,KAAkB;IACjC,OAAO,kBAAQ,CAAA;;oBAEC,KAAK,CAAC,YAAY;;;;KAIjC,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAAC,KAA2B,EAAE,KAAkB;IAChE,IAAI,cAAc,GAA2B,IAAI,CAAC;IAClD,IAAI,SAAS,GAA2B,IAAI,CAAC;IAE7C,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,IAAI,qBAAa,CAAC,KAAK,CAAC,IAAI,kBAAU,CAAC,KAAK,CAAC,EAAE;YAC3C,IAAI,kBAAU,CAAC,KAAK,CAAC,EAAE;gBACnB,cAAc,GAAG,KAAK,CAAC;aAC1B;YAED,OAAO;SACV;QAED,SAAS,GAAG,KAAK,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,kCAAkC;IAClC,IAAI,SAAS,KAAK,IAAI,IAAI,cAAc,KAAK,IAAI,EAAE;QAC/C,OAAO,WAAW,CAAC,SAAS,EAAE;YAC1B,GAAG,KAAK;YACR,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;KACN;IAED,kCAAkC;IAClC,IAAI,SAAS,KAAK,IAAI,EAAE;QACpB,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YAC/B,GAAG,KAAK;SACX,CAAC,CAAC;KACN;IAED,4DAA4D;IAC5D,yEAAyE;IACzE,OAAO,kBAAQ,CAAA;;;oBAGC,KAAK,CAAC,YAAY;;;KAGjC,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAAC,KAA2B,EAAE,KAAkB;IAChE,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE;QAC5B,GAAG,KAAK;QACR,OAAO,EAAE,IAAI;KAChB,CAAC,CAAC;AACP,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAsB,EAAE,KAAkB;IACnE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IACjC,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAE9E,IAAI,cAAc,EAAE;QAChB,OAAO,kBAAQ,CAAA;;;wBAGC,KAAK,CAAC,YAAY;4BACd,aAAa,CAAC,kBAAkB,CACxC,KAAK,CAAC,UAAW,CAAC,EAAE,EACpB,6DAAgC,CACnC;;SAER,CAAC;KACL;IAED,MAAM,oBAAoB,GAAG,GAAG,QAAQ,mBAAmB,CAAC;IAC5D,MAAM,cAAc,GAAG,kBAAQ,CAAA;gBACnB,oBAAoB,MAAM,aAAa,CAAC,kBAAkB,CAClE,KAAK,CAAC,UAAW,CAAC,EAAE,EACpB,6DAAgC,CACnC;KACA,CAAC;IAEF,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAEjC,MAAM,UAAU,GAAG;QACf,gBAAgB;QAChB,SAAS,KAAK,CAAC,YAAY,EAAE;QAC7B,kBAAkB,oBAAoB,gBAAgB;QACtD,aAAa;QACb,aAAa,KAAK,CAAC,QAAQ,EAAE;QAC7B,oBAAoB,oBAAoB,kBAAkB;KAC7D,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAEvC,OAAO,kBAAQ,CAAA;;cAEL,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;;KAE/B,CAAC;AACN,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAsB,EAAE,KAAkB;IAClE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;IAC7B,MAAM,YAAY,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAE1D,IAAI,UAAU,GAA2B,CAAC,SAAS,KAAK,CAAC,YAAY,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAE3F,MAAM,oBAAoB,GAAG,GAAG,SAAS,cAAc,CAAC;IACxD,MAAM,gBAAgB,GAAG,GAAG,SAAS,UAAU,CAAC;IAChD,MAAM,cAAc,GAAG,kBAAQ,CAAA;;0BAET,oBAAoB;sBACxB,gBAAgB;cACxB,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,mCAAuB,CAAC;KAC5E,CAAC;IAEF,kFAAkF;IAClF,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE;QAC5C,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KACpC;IAED,UAAU,GAAG;QACT,GAAG,UAAU;QACb,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;QACtD,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC9C,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;QACnD,YAAY,KAAK,IAAI,IAAI,gBAAgB,KAAK,SAAS;YACnD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,eAAe,oBAAoB,EAAE;QAC3C,YAAY,KAAK,IAAI,IAAI,gBAAgB,KAAK,SAAS;YACnD,CAAC,CAAC,WAAW,gBAAgB,EAAE;YAC/B,CAAC,CAAC,SAAS;QACf,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS;KAC1D,CAAC;IAEF,OAAO,kBAAQ,CAAA;;cAEL,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;KAEtE,CAAC;AACN,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAsB,EAAE,KAAkB;IAClE,MAAM,EAAE,aAAa,EAAE,uBAAuB,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAE9E,MAAM,UAAU,GAA8B;QAC1C,SAAS,YAAY,EAAE;QACvB,cAAc;QACd,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;QACtD,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC9C,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;QACnD,aAAa,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,mCAAuB,CAAC,IAAI;KACvF,CAAC;IAEF,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAElE,IAAI,uBAAuB,KAAK,IAAI,EAAE;QAClC,MAAM,qBAAqB,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM,sBAAsB,GAAG,GAAG,uBAAuB,IAAI,qBAAqB,EAAE,CAAC;QACrF,MAAM,2BAA2B,GAAG,GAAG,qBAAqB,eAAe,CAAC;QAC5E,KAAK,CAAC,IAAI,CACN,kBAAQ,CAAA;wBACI,2BAA2B,KAAK,6CAAiC,MAAM,sBAAsB;sBAC/F,kBAAkB;sBAClB,sBAAsB;aAC/B,CACJ,CAAC;QACF,OAAO,kBAAQ,CAAA;cACT,2BAA2B;SAChC,CAAC;KACL;IAED,OAAO,kBAAQ,CAAA;;cAEL,kBAAkB;;KAE3B,CAAC;AACN,CAAC;AAED,SAAS,UAAU,CAAC,KAAsB,EAAE,KAAkB;IAC1D,MAAM,UAAU,GAAG,KAAK,CAAC,UAAiC,CAAC;IAC3D,IAAI,kCAAoB,CAAC,UAA6B,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE;QACtE,OAAO,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KAC5C;IAED,IAAI,KAAK,CAAC,SAAS,CAAC,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;QACxD,OAAO,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;KAChD;IAED,OAAO,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,YAAY,CAAC,KAAkB;IACpC,IAAI,KAAK,CAAC,KAAK,EAAE;QACb,OAAO,kBAAQ,CAAA;;kBAEL,CAAC,SAAS,KAAK,CAAC,YAAY,EAAE,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;SAEnF,CAAC;KACL;IAED,IAAI,KAAK,CAAC,OAAO,EAAE;QACf,OAAO,kBAAQ,CAAA;;kBAEL,CAAC,SAAS,KAAK,CAAC,YAAY,EAAE,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;SAEtF,CAAC;KACL;IACD,OAAO,kBAAQ,CAAA;;cAEL;QACE,SAAS,KAAK,CAAC,YAAY,EAAE;QAC7B,gBAAgB;QAChB,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAC,IAAI,CAAC,KAAK,CAAC;;KAEpB,CAAC;AACN,CAAC;AAED,SAAS,YAAY,CAAC,KAA0B,EAAE,KAAkB;;IAChE,MAAM,QAAQ,SAAG,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,mCAAI,EAAE,CAAC;IAC9D,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAErC,MAAM,UAAU,GAAa,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAC5E,CAAC,aAAa,EAAE,EAAE;QACd,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC;QACxC,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC;QAC9C,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC;QAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;QAE5C,IAAI,WAAW,KAAK,IAAI,EAAE;YACtB,eAAe;YACf,IAAI,KAAK,CAAC,YAAY,KAAK,EAAE,EAAE;gBAC3B,kCAAkC;gBAClC,OAAO,EAAE,CAAC;aACb;YAED,8DAA8D;YAC9D,MAAM,KAAK,GACP,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxD,qBAAa,CAAC,kBAAkB,CAAC,CAAC;YAEtC,OAAO,WAAW,CAAC,kBAAkB,EAAE;gBACnC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;aACzD,CAAC,CAAC;SACN;QAED,OAAO,WAAW,CAAC,kBAAkB,EAAE;YACnC,YAAY,EAAE,IAAI,YAAY,GAAG;YACjC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;SACzD,CAAC,CAAC;IACP,CAAC,CACJ,CAAC;IAEF,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,uBAAuB,CAAC,SAA8B,EAAE,SAAoB;IACjF,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAEtD,oBAAoB;IACpB,IAAI,QAAQ,KAAK,SAAS,EAAE;QACxB,OAAO,SAAS,CAAC,UAAU,CAAC;KAC/B;IAED,OAAO,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,eAAe,CAAC,QAAiC;IACtD,IAAI,aAAa,GAAoB,QAAQ,CAAC,KAAK,CAAC;IAEpD,IAAI,oBAAY,CAAC,aAAa,CAAC,EAAE;QAC7B,yBAAyB;QACzB,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YACjD,OAAO,CAAC,qBAAa,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAU,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,+DAA+D;QAC/D,IAAI,SAAS,KAAK,SAAS,EAAE;YACzB,OAAO,QAAQ,CAAC;SACnB;KACJ;IAED,OAAO,qBAAa,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC9D,CAAC;AAED,SAAgB,YAAY,CAAC,SAA8B,EAAE,KAAkB;IAC3E,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC1C,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAEtD,mCAAmC;IACnC,IAAI,QAAQ,KAAK,SAAS,EAAE;QACxB,OAAO;;SAEN,CAAC;KACL;IAED,MAAM,UAAU,GAAG,uBAAuB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC9E,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,MAAM,IAAI,GAAW,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG;YACd,UAAU,IAAI,GAAG;YACjB,UAAU,IAAI,GAAG;YACjB,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC;QAEF,OAAO,kBAAQ,CAAA;;kBAEL,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;;SAE9B,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAE/B,OAAO,kBAAQ,CAAA;;cAEL,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;;KAE/B,CAAC;AACN,CAAC;AAnCD,oCAmCC;AAED,SAAS,eAAe,CAAC,SAA8B,EAAE,KAAkB;;IACvE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,GAAG,KAAK,CAAC;IACzF,MAAM,MAAM,GAAG,4BAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,MAAM,YAAY,GAAG,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,mCAAuB,CAAC,CAAC;IAC/F,MAAM,0BAA0B,GAAG,GAAG,UAAU,YAAY,CAAC;IAC7D,MAAM,QAAQ,SAAG,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,mCAAI,EAAE,CAAC;IAE9D,KAAK,CAAC,IAAI,CACN,kBAAQ,CAAA;kCACkB,0BAA0B,QAAQ,YAAY;SACvE,CACJ,CAAC;IAEF,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAE/B,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,EAAE;QACjC,SAAS,EAAE,SAAS;QACpB,YAAY,EAAE,EAAE;QAChB,SAAS;QACT,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,KAAK;QACf,KAAK;QACL,YAAY;QACZ,aAAa;QACb,uBAAuB;KAC1B,CAAC,CAAC;IAEH,OAAO,kBAAQ,CAAA;;iBAEF,0BAA0B;cAC7B,IAAI;;KAEb,CAAC;AACN,CAAC;AAED,SAAgB,eAAe,CAAC,SAA8B,EAAE,KAAkB;IAC9E,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,GAAG,KAAK,CAAC;IACzF,IAAI,4BAAc,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;QACtC,OAAO,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC5C;IAED,MAAM,IAAI,GAAG,WAAW,CAAC,SAAS,EAAE;QAChC,SAAS,EAAE,SAAS;QACpB,YAAY,EAAE,EAAE;QAChB,SAAS;QACT,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,KAAK;QACf,KAAK;QACL,YAAY;QACZ,aAAa;QACb,uBAAuB;KAC1B,CAAC,CAAC;IAEH,OAAO,kBAAQ,CAAA;;cAEL,IAAI;;KAEb,CAAC;AACN,CAAC;AAzBD,0CAyBC"}
@@ -1,5 +1,4 @@
1
1
  import { CodegenShapeConfig } from './index';
2
- export declare const SHAPE_SELECT_IDENTIFIER = "select";
3
2
  interface SelectParams {
4
3
  shapeConfig: CodegenShapeConfig;
5
4
  dynamicParamsIdentifier: string | null;