@azure-tools/typespec-ts 0.56.1-dev.0 → 0.57.0-dev.10

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 (120) hide show
  1. package/README.md +6 -0
  2. package/dist/src/framework/hooks/sdk-types.d.ts.map +1 -1
  3. package/dist/src/framework/hooks/sdk-types.js +2 -0
  4. package/dist/src/framework/hooks/sdk-types.js.map +1 -1
  5. package/dist/src/interfaces.d.ts +4 -0
  6. package/dist/src/interfaces.d.ts.map +1 -1
  7. package/dist/src/interfaces.js.map +1 -1
  8. package/dist/src/lib.d.ts +11 -1
  9. package/dist/src/lib.d.ts.map +1 -1
  10. package/dist/src/lib.js +11 -0
  11. package/dist/src/lib.js.map +1 -1
  12. package/dist/src/metadata/build-package-file.d.ts +1 -0
  13. package/dist/src/metadata/build-package-file.d.ts.map +1 -1
  14. package/dist/src/metadata/build-package-file.js +3 -0
  15. package/dist/src/metadata/build-package-file.js.map +1 -1
  16. package/dist/src/metadata/package-json/build-azure-monorepo-package.d.ts +2 -0
  17. package/dist/src/metadata/package-json/build-azure-monorepo-package.d.ts.map +1 -1
  18. package/dist/src/metadata/package-json/build-azure-monorepo-package.js +1 -0
  19. package/dist/src/metadata/package-json/build-azure-monorepo-package.js.map +1 -1
  20. package/dist/src/modular/build-classical-client.d.ts.map +1 -1
  21. package/dist/src/modular/build-classical-client.js +19 -33
  22. package/dist/src/modular/build-classical-client.js.map +1 -1
  23. package/dist/src/modular/build-operations.d.ts.map +1 -1
  24. package/dist/src/modular/build-operations.js +4 -5
  25. package/dist/src/modular/build-operations.js.map +1 -1
  26. package/dist/src/modular/build-root-index.js +1 -1
  27. package/dist/src/modular/build-root-index.js.map +1 -1
  28. package/dist/src/modular/emit-models.d.ts.map +1 -1
  29. package/dist/src/modular/emit-models.js +46 -23
  30. package/dist/src/modular/emit-models.js.map +1 -1
  31. package/dist/src/modular/emit-samples.d.ts.map +1 -1
  32. package/dist/src/modular/emit-samples.js +29 -21
  33. package/dist/src/modular/emit-samples.js.map +1 -1
  34. package/dist/src/modular/emit-tests.js +2 -2
  35. package/dist/src/modular/emit-tests.js.map +1 -1
  36. package/dist/src/modular/helpers/classical-operation-helpers.d.ts.map +1 -1
  37. package/dist/src/modular/helpers/classical-operation-helpers.js +17 -15
  38. package/dist/src/modular/helpers/classical-operation-helpers.js.map +1 -1
  39. package/dist/src/modular/helpers/client-helpers.d.ts.map +1 -1
  40. package/dist/src/modular/helpers/client-helpers.js +7 -6
  41. package/dist/src/modular/helpers/client-helpers.js.map +1 -1
  42. package/dist/src/modular/helpers/example-value-helpers.d.ts +2 -1
  43. package/dist/src/modular/helpers/example-value-helpers.d.ts.map +1 -1
  44. package/dist/src/modular/helpers/example-value-helpers.js +34 -24
  45. package/dist/src/modular/helpers/example-value-helpers.js.map +1 -1
  46. package/dist/src/modular/helpers/naming-helpers.d.ts.map +1 -1
  47. package/dist/src/modular/helpers/naming-helpers.js +3 -3
  48. package/dist/src/modular/helpers/naming-helpers.js.map +1 -1
  49. package/dist/src/modular/helpers/operation-helpers.d.ts.map +1 -1
  50. package/dist/src/modular/helpers/operation-helpers.js +23 -18
  51. package/dist/src/modular/helpers/operation-helpers.js.map +1 -1
  52. package/dist/src/modular/helpers/type-helpers.d.ts.map +1 -1
  53. package/dist/src/modular/helpers/type-helpers.js +2 -2
  54. package/dist/src/modular/helpers/type-helpers.js.map +1 -1
  55. package/dist/src/modular/helpers/visibility-helpers.d.ts +7 -0
  56. package/dist/src/modular/helpers/visibility-helpers.d.ts.map +1 -0
  57. package/dist/src/modular/helpers/visibility-helpers.js +353 -0
  58. package/dist/src/modular/helpers/visibility-helpers.js.map +1 -0
  59. package/dist/src/modular/serialization/build-deserializer-function.js +6 -4
  60. package/dist/src/modular/serialization/build-deserializer-function.js.map +1 -1
  61. package/dist/src/modular/serialization/build-serializer-function.d.ts.map +1 -1
  62. package/dist/src/modular/serialization/build-serializer-function.js +9 -7
  63. package/dist/src/modular/serialization/build-serializer-function.js.map +1 -1
  64. package/dist/src/modular/serialization/build-xml-serializer-function.d.ts.map +1 -1
  65. package/dist/src/modular/serialization/build-xml-serializer-function.js +11 -13
  66. package/dist/src/modular/serialization/build-xml-serializer-function.js.map +1 -1
  67. package/dist/src/modular/type-expressions/get-type-expression.d.ts +1 -0
  68. package/dist/src/modular/type-expressions/get-type-expression.d.ts.map +1 -1
  69. package/dist/src/modular/type-expressions/get-type-expression.js +6 -4
  70. package/dist/src/modular/type-expressions/get-type-expression.js.map +1 -1
  71. package/dist/src/transform/transform-client-options.d.ts.map +1 -1
  72. package/dist/src/transform/transform-client-options.js +2 -0
  73. package/dist/src/transform/transform-client-options.js.map +1 -1
  74. package/dist/src/utils/client-utils.d.ts.map +1 -1
  75. package/dist/src/utils/client-utils.js +16 -5
  76. package/dist/src/utils/client-utils.js.map +1 -1
  77. package/dist/src/utils/cross-language-def.d.ts.map +1 -1
  78. package/dist/src/utils/cross-language-def.js +1 -2
  79. package/dist/src/utils/cross-language-def.js.map +1 -1
  80. package/dist/src/utils/interfaces.d.ts +1 -0
  81. package/dist/src/utils/interfaces.d.ts.map +1 -1
  82. package/dist/src/utils/name-utils.d.ts +15 -0
  83. package/dist/src/utils/name-utils.d.ts.map +1 -1
  84. package/dist/src/utils/name-utils.js +60 -0
  85. package/dist/src/utils/name-utils.js.map +1 -1
  86. package/dist/src/utils/operation-util.d.ts.map +1 -1
  87. package/dist/src/utils/operation-util.js +15 -5
  88. package/dist/src/utils/operation-util.js.map +1 -1
  89. package/dist/tsconfig.tsbuildinfo +1 -1
  90. package/package.json +31 -31
  91. package/src/framework/hooks/sdk-types.ts +2 -0
  92. package/src/interfaces.ts +4 -0
  93. package/src/lib.ts +13 -0
  94. package/src/metadata/build-package-file.ts +4 -0
  95. package/src/metadata/package-json/build-azure-monorepo-package.ts +1 -0
  96. package/src/modular/build-classical-client.ts +21 -32
  97. package/src/modular/build-operations.ts +4 -5
  98. package/src/modular/build-root-index.ts +1 -1
  99. package/src/modular/emit-models.ts +59 -24
  100. package/src/modular/emit-samples.ts +42 -34
  101. package/src/modular/emit-tests.ts +2 -2
  102. package/src/modular/helpers/classical-operation-helpers.ts +21 -20
  103. package/src/modular/helpers/client-helpers.ts +6 -5
  104. package/src/modular/helpers/example-value-helpers.ts +52 -41
  105. package/src/modular/helpers/naming-helpers.ts +8 -3
  106. package/src/modular/helpers/operation-helpers.ts +31 -18
  107. package/src/modular/helpers/type-helpers.ts +2 -5
  108. package/src/modular/helpers/visibility-helpers.ts +471 -0
  109. package/src/modular/serialization/build-deserializer-function.ts +6 -9
  110. package/src/modular/serialization/build-serializer-function.ts +14 -11
  111. package/src/modular/serialization/build-xml-serializer-function.ts +11 -17
  112. package/src/modular/type-expressions/get-type-expression.ts +10 -4
  113. package/src/transform/transform-client-options.ts +3 -0
  114. package/src/utils/client-utils.ts +28 -4
  115. package/src/utils/cross-language-def.ts +1 -2
  116. package/src/utils/interfaces.ts +1 -0
  117. package/src/utils/name-utils.ts +94 -0
  118. package/src/utils/operation-util.ts +27 -14
  119. package/static/static-helpers/storageCompatResponse.ts +3 -2
  120. package/static/static-helpers/urlTemplate.ts +4 -2
@@ -0,0 +1,353 @@
1
+ import { UsageFlags } from "@azure-tools/typespec-client-generator-core";
2
+ import { Visibility, getVisibilitySuffix, isVisible, resolveRequestVisibility, } from "@typespec/http";
3
+ import { getAllOperationsFromClient } from "../../framework/hooks/sdk-types.js";
4
+ import { getDirectSubtypes } from "./type-helpers.js";
5
+ const responseUsageFlags = UsageFlags.Output |
6
+ UsageFlags.Exception |
7
+ UsageFlags.LroInitial |
8
+ UsageFlags.LroPolling |
9
+ UsageFlags.LroFinalEnvelope;
10
+ /**
11
+ * Projects request models whose write graph differs from their read graph.
12
+ * This must run before `visitPackageTypes` builds the emit queue.
13
+ */
14
+ export function applyVisibilityModelSplit(context) {
15
+ if (!context.emitterOptions?.experimentalSplitModelsByVisibility) {
16
+ return;
17
+ }
18
+ const state = createSplitState(context);
19
+ const methods = context.sdkPackage.clients.flatMap((client) => getAllOperationsFromClient(client));
20
+ // Phase 1 — collect the reachable `(model, visibility)` reference graph.
21
+ for (const method of methods) {
22
+ collectMethodRoots(state, method);
23
+ }
24
+ // Phase 2 — mark models whose write graph differs from their read graph.
25
+ markNodesNeedingClones(state);
26
+ // Phase 3 — materialize projected models and wire their references.
27
+ buildClones(state);
28
+ // Phase 4 — project the original response models to the canonical Read view.
29
+ projectResponseModelsToRead(state);
30
+ // Phase 5 — repoint operation parameters and payloads to projected models.
31
+ for (const method of methods) {
32
+ repointMethodBody(state, method);
33
+ }
34
+ // Register projected models for the subsequent emit queue traversal.
35
+ for (const clone of state.cloneByKey.values()) {
36
+ context.sdkPackage.models.push(clone);
37
+ }
38
+ }
39
+ /** Creates the graph state using Read as the canonical model visibility. */
40
+ function createSplitState(context) {
41
+ return {
42
+ context,
43
+ nodes: new Map(),
44
+ cloneByKey: new Map(),
45
+ modelIds: new WeakMap(),
46
+ nextModelId: 0,
47
+ };
48
+ }
49
+ /** Stable key identifying a `(model, visibility)` node (and its clone). */
50
+ function nodeKeyFor(state, model, visibility) {
51
+ let modelId = state.modelIds.get(model);
52
+ if (modelId === undefined) {
53
+ modelId = state.nextModelId++;
54
+ state.modelIds.set(model, modelId);
55
+ }
56
+ return `${modelId}|${visibility}`;
57
+ }
58
+ /**
59
+ * Collects the write-body roots of a single operation. The root of each
60
+ * `methodParameterSegments` entry is the client-method parameter.
61
+ */
62
+ function collectMethodRoots(state, method) {
63
+ const operation = method.operation;
64
+ const bodyParam = operation?.bodyParam;
65
+ if (!bodyParam) {
66
+ return;
67
+ }
68
+ const visibility = resolveRequestVisibility(state.context.program, operation.__raw.operation, operation.verb);
69
+ for (const segment of bodyParam.methodParameterSegments) {
70
+ const methodParam = segment[0];
71
+ if (!methodParam) {
72
+ continue;
73
+ }
74
+ collectReferencedModels(state, methodParam.type, visibility, new Set());
75
+ }
76
+ }
77
+ /**
78
+ * Cycle-safe DFS that records a `(model, visibility)` node and its outgoing
79
+ * references. Nodes are registered before recursion so cyclic graphs terminate.
80
+ */
81
+ function collectNode(state, model, visibility) {
82
+ const key = nodeKeyFor(state, model, visibility);
83
+ if (state.nodes.has(key)) {
84
+ return key;
85
+ }
86
+ const node = {
87
+ model,
88
+ visibility,
89
+ refKeys: new Set(),
90
+ ownShapeDiffers: false,
91
+ needsClone: false,
92
+ };
93
+ // Seed before recursing so cycles terminate at the already-seeded node.
94
+ state.nodes.set(key, node);
95
+ for (const property of model.properties) {
96
+ if (property.kind === "property" && property.__raw) {
97
+ const visibleInWrite = isVisible(state.context.program, property.__raw, visibility);
98
+ const visibleInRead = isVisible(state.context.program, property.__raw, Visibility.Read);
99
+ if (visibleInWrite !== visibleInRead) {
100
+ node.ownShapeDiffers = true;
101
+ }
102
+ if (!visibleInWrite) {
103
+ continue;
104
+ }
105
+ }
106
+ if (property.kind === "property") {
107
+ collectReferencedModels(state, property.type, visibility, node.refKeys);
108
+ }
109
+ }
110
+ if (model.additionalProperties) {
111
+ collectReferencedModels(state, model.additionalProperties, visibility, node.refKeys);
112
+ }
113
+ if (model.baseModel) {
114
+ node.refKeys.add(collectNode(state, model.baseModel, visibility));
115
+ }
116
+ // Link base and subtypes bidirectionally so the projected hierarchy stays together.
117
+ if (findDiscriminatedRoot(model)) {
118
+ for (const neighbor of discriminatedNeighbors(model)) {
119
+ const neighborKey = collectNode(state, neighbor, visibility);
120
+ node.refKeys.add(neighborKey);
121
+ state.nodes.get(neighborKey).refKeys.add(key);
122
+ }
123
+ }
124
+ return key;
125
+ }
126
+ /** Collects model references nested in supported container types. */
127
+ function collectReferencedModels(state, type, visibility, refKeys) {
128
+ if (type.kind === "model") {
129
+ refKeys.add(collectNode(state, type, visibility));
130
+ return;
131
+ }
132
+ switch (type.kind) {
133
+ case "array":
134
+ case "dict":
135
+ collectReferencedModels(state, type.valueType, visibility, refKeys);
136
+ break;
137
+ case "nullable":
138
+ collectReferencedModels(state, type.type, visibility, refKeys);
139
+ break;
140
+ case "tuple":
141
+ for (const valueType of type.valueTypes) {
142
+ collectReferencedModels(state, valueType, visibility, refKeys);
143
+ }
144
+ break;
145
+ case "union":
146
+ for (const variantType of type.variantTypes) {
147
+ collectReferencedModels(state, variantType, visibility, refKeys);
148
+ }
149
+ break;
150
+ }
151
+ }
152
+ /** The base model and direct subtypes that share a node's discriminated tree. */
153
+ function discriminatedNeighbors(model) {
154
+ const neighbors = [];
155
+ if (model.baseModel) {
156
+ neighbors.push(model.baseModel);
157
+ }
158
+ neighbors.push(...getDirectSubtypes(model));
159
+ return neighbors;
160
+ }
161
+ /**
162
+ * Walks up the inheritance chain and returns the top-most ancestor that
163
+ * declares a discriminator.
164
+ */
165
+ function findDiscriminatedRoot(model) {
166
+ let root;
167
+ let current = model;
168
+ while (current) {
169
+ if (current.discriminatedSubtypes) {
170
+ root = current;
171
+ }
172
+ current = current.baseModel;
173
+ }
174
+ return root;
175
+ }
176
+ /**
177
+ * Marks nodes whose write graph differs from the read graph by
178
+ * reverse-propagating from nodes whose own property membership differs.
179
+ */
180
+ function markNodesNeedingClones(state) {
181
+ // Reverse edges propagate a nested difference back to every parent.
182
+ const predecessors = new Map();
183
+ for (const [key, node] of state.nodes) {
184
+ for (const referencedKey of node.refKeys) {
185
+ let referrers = predecessors.get(referencedKey);
186
+ if (!referrers) {
187
+ referrers = [];
188
+ predecessors.set(referencedKey, referrers);
189
+ }
190
+ referrers.push(key);
191
+ }
192
+ }
193
+ const queue = [];
194
+ for (const [key, node] of state.nodes) {
195
+ if (node.ownShapeDiffers) {
196
+ node.needsClone = true;
197
+ queue.push(key);
198
+ }
199
+ }
200
+ while (queue.length > 0) {
201
+ const key = queue.shift();
202
+ for (const predecessorKey of predecessors.get(key) ?? []) {
203
+ const predecessor = state.nodes.get(predecessorKey);
204
+ if (!predecessor.needsClone) {
205
+ predecessor.needsClone = true;
206
+ queue.push(predecessorKey);
207
+ }
208
+ }
209
+ }
210
+ }
211
+ /**
212
+ * Creates projected model shells, then wires properties and inheritance after
213
+ * every shell exists. This ordering lets forward, cyclic, and mutually recursive
214
+ * references resolve to projected models instead of the original read models.
215
+ */
216
+ function buildClones(state) {
217
+ // Pass 1: create every shell before wiring references.
218
+ for (const [key, node] of state.nodes) {
219
+ if (!node.needsClone) {
220
+ continue;
221
+ }
222
+ const clone = {
223
+ ...node.model,
224
+ name: `${node.model.name}${getVisibilitySuffix(node.visibility, Visibility.Read)}`,
225
+ properties: [],
226
+ // Write projections are request-only: preserve serialization flags, force Input,
227
+ // and remove inherited response roles.
228
+ usage: (node.model.usage | UsageFlags.Input) & ~responseUsageFlags,
229
+ };
230
+ state.cloneByKey.set(key, clone);
231
+ }
232
+ // Pass 2: remove dropped properties and wire surviving references.
233
+ for (const [key, node] of state.nodes) {
234
+ const clone = state.cloneByKey.get(key);
235
+ if (!clone) {
236
+ continue;
237
+ }
238
+ const { model, visibility } = node;
239
+ const properties = [];
240
+ for (const property of model.properties) {
241
+ if (property.kind === "property" &&
242
+ property.__raw &&
243
+ !isVisible(state.context.program, property.__raw, visibility)) {
244
+ continue;
245
+ }
246
+ let wiredProperty = property;
247
+ if (property.kind === "property") {
248
+ const projectedType = projectTypeReferences(state, property.type, visibility);
249
+ if (projectedType !== property.type) {
250
+ wiredProperty = { ...property, type: projectedType };
251
+ }
252
+ }
253
+ properties.push(wiredProperty);
254
+ }
255
+ clone.properties = properties;
256
+ if (model.additionalProperties) {
257
+ clone.additionalProperties = projectTypeReferences(state, model.additionalProperties, visibility);
258
+ }
259
+ if (model.baseModel) {
260
+ clone.baseModel =
261
+ state.cloneByKey.get(nodeKeyFor(state, model.baseModel, visibility)) ?? model.baseModel;
262
+ }
263
+ if (findDiscriminatedRoot(model)) {
264
+ if (model.discriminatedSubtypes) {
265
+ clone.discriminatedSubtypes = Object.fromEntries(Object.entries(model.discriminatedSubtypes).map(([discriminatorValue, subtype]) => [
266
+ discriminatorValue,
267
+ state.cloneByKey.get(nodeKeyFor(state, subtype, visibility)) ?? subtype,
268
+ ]));
269
+ }
270
+ }
271
+ }
272
+ }
273
+ /** Projects response-used models to the canonical Read visibility. */
274
+ function projectResponseModelsToRead(state) {
275
+ for (const model of state.context.sdkPackage.models) {
276
+ if ((model.usage & responseUsageFlags) === 0) {
277
+ continue;
278
+ }
279
+ model.properties = model.properties.filter((property) => property.kind !== "property" ||
280
+ !property.__raw ||
281
+ isVisible(state.context.program, property.__raw, Visibility.Read));
282
+ }
283
+ }
284
+ /** Replaces model references nested in supported container types. */
285
+ function projectTypeReferences(state, type, visibility) {
286
+ if (type.kind === "model") {
287
+ return state.cloneByKey.get(nodeKeyFor(state, type, visibility)) ?? type;
288
+ }
289
+ switch (type.kind) {
290
+ case "array":
291
+ case "dict": {
292
+ const projectedValueType = projectTypeReferences(state, type.valueType, visibility);
293
+ return projectedValueType === type.valueType
294
+ ? type
295
+ : { ...type, valueType: projectedValueType };
296
+ }
297
+ case "nullable": {
298
+ const projectedType = projectTypeReferences(state, type.type, visibility);
299
+ return projectedType === type.type ? type : { ...type, type: projectedType };
300
+ }
301
+ case "tuple": {
302
+ const projectedValueTypes = type.valueTypes.map((valueType) => projectTypeReferences(state, valueType, visibility));
303
+ return projectedValueTypes.every((valueType, index) => valueType === type.valueTypes[index])
304
+ ? type
305
+ : { ...type, valueTypes: projectedValueTypes };
306
+ }
307
+ case "union": {
308
+ const projectedVariantTypes = type.variantTypes.map((variantType) => projectTypeReferences(state, variantType, visibility));
309
+ return projectedVariantTypes.every((variantType, index) => variantType === type.variantTypes[index])
310
+ ? type
311
+ : { ...type, variantTypes: projectedVariantTypes };
312
+ }
313
+ }
314
+ return type;
315
+ }
316
+ /**
317
+ * Repoints client-method parameters and their HTTP payload representation to
318
+ * projected models.
319
+ */
320
+ function repointMethodBody(state, method) {
321
+ const operation = method.operation;
322
+ const bodyParam = operation?.bodyParam;
323
+ if (!bodyParam) {
324
+ return;
325
+ }
326
+ const visibility = resolveRequestVisibility(state.context.program, operation.__raw.operation, operation.verb);
327
+ for (const segment of bodyParam.methodParameterSegments) {
328
+ const methodParam = segment[0];
329
+ if (!methodParam) {
330
+ continue;
331
+ }
332
+ const originalType = methodParam.type;
333
+ const projectedType = projectTypeReferences(state, originalType, visibility);
334
+ if (projectedType === originalType) {
335
+ // The write view is identical to the read model (collapse).
336
+ continue;
337
+ }
338
+ methodParam.type = projectedType;
339
+ if (originalType === bodyParam.type) {
340
+ // A non-spread body uses the method parameter model as the payload model.
341
+ bodyParam.type = projectedType;
342
+ }
343
+ else if (bodyParam.type.kind === "model") {
344
+ // A spread body uses a synthesized wrapper serialized property by property.
345
+ for (const bodyProperty of bodyParam.type.properties) {
346
+ if (bodyProperty.type === originalType) {
347
+ bodyProperty.type = projectedType;
348
+ }
349
+ }
350
+ }
351
+ }
352
+ }
353
+ //# sourceMappingURL=visibility-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visibility-helpers.js","sourceRoot":"","sources":["../../../../src/modular/helpers/visibility-helpers.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AACzE,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,SAAS,EACT,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,kBAAkB,GACtB,UAAU,CAAC,MAAM;IACjB,UAAU,CAAC,SAAS;IACpB,UAAU,CAAC,UAAU;IACrB,UAAU,CAAC,UAAU;IACrB,UAAU,CAAC,gBAAgB,CAAC;AAkC9B;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAmB;IAC3D,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,mCAAmC,EAAE,CAAC;QACjE,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAC5D,0BAA0B,CAAC,MAAM,CAAC,CACnC,CAAC;IAEF,yEAAyE;IACzE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,yEAAyE;IACzE,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAE9B,oEAAoE;IACpE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEnB,6EAA6E;IAC7E,2BAA2B,CAAC,KAAK,CAAC,CAAC;IAEnC,2EAA2E;IAC3E,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,qEAAqE;IACrE,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QAC9C,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,SAAS,gBAAgB,CAAC,OAAmB;IAC3C,OAAO;QACL,OAAO;QACP,KAAK,EAAE,IAAI,GAAG,EAAqB;QACnC,UAAU,EAAE,IAAI,GAAG,EAAwB;QAC3C,QAAQ,EAAE,IAAI,OAAO,EAAwB;QAC7C,WAAW,EAAE,CAAC;KACf,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,SAAS,UAAU,CAAC,KAAiB,EAAE,KAAmB,EAAE,UAAsB;IAChF,IAAI,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAC9B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,KAAiB,EAAE,MAA0C;IACvF,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,MAAM,SAAS,GAAG,SAAS,EAAE,SAAS,CAAC;IACvC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,wBAAwB,CACzC,KAAK,CAAC,OAAO,CAAC,OAAO,EACrB,SAAS,CAAC,KAAK,CAAC,SAAS,EACzB,SAAS,CAAC,IAAI,CACf,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,uBAAuB,EAAE,CAAC;QACxD,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,SAAS;QACX,CAAC;QACD,uBAAuB,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,GAAG,EAAU,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,KAAiB,EAAE,KAAmB,EAAE,UAAsB;IACjF,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IACjD,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,IAAI,GAAc;QACtB,KAAK;QACL,UAAU;QACV,OAAO,EAAE,IAAI,GAAG,EAAU;QAC1B,eAAe,EAAE,KAAK;QACtB,UAAU,EAAE,KAAK;KAClB,CAAC;IACF,wEAAwE;IACxE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAE3B,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACxC,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnD,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YACpF,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YACxF,IAAI,cAAc,KAAK,aAAa,EAAE,CAAC;gBACrC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC9B,CAAC;YACD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,SAAS;YACX,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACjC,uBAAuB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC/B,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,oBAAoB,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,oFAAoF;IACpF,IAAI,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,KAAK,MAAM,QAAQ,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC7D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC9B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,qEAAqE;AACrE,SAAS,uBAAuB,CAC9B,KAAiB,EACjB,IAAa,EACb,UAAsB,EACtB,OAAoB;IAEpB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IACD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM;YACT,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACpE,MAAM;QACR,KAAK,UAAU;YACb,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAC/D,MAAM;QACR,KAAK,OAAO;YACV,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACxC,uBAAuB,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;YACD,MAAM;QACR,KAAK,OAAO;YACV,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5C,uBAAuB,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACnE,CAAC;YACD,MAAM;IACV,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,SAAS,sBAAsB,CAAC,KAAmB;IACjD,MAAM,SAAS,GAAmB,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IACD,SAAS,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,KAAmB;IAChD,IAAI,IAA8B,CAAC;IACnC,IAAI,OAAO,GAA6B,KAAK,CAAC;IAC9C,OAAO,OAAO,EAAE,CAAC;QACf,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAClC,IAAI,GAAG,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,KAAiB;IAC/C,oEAAoE;IACpE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IACjD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACtC,KAAK,MAAM,aAAa,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAS,GAAG,EAAE,CAAC;gBACf,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAC7C,CAAC;YACD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC3B,KAAK,MAAM,cAAc,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YACzD,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAE,CAAC;YACrD,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;gBAC5B,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;gBAC9B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,KAAiB;IACpC,uDAAuD;IACvD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAiB;YAC1B,GAAG,IAAI,CAAC,KAAK;YACb,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE;YAClF,UAAU,EAAE,EAAE;YACd,iFAAiF;YACjF,uCAAuC;YACvC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB;SACnE,CAAC;QACF,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,mEAAmE;IACnE,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,SAAS;QACX,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAEnC,MAAM,UAAU,GAA2B,EAAE,CAAC;QAC9C,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACxC,IACE,QAAQ,CAAC,IAAI,KAAK,UAAU;gBAC5B,QAAQ,CAAC,KAAK;gBACd,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,EAC7D,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,aAAa,GAAG,QAAQ,CAAC;YAC7B,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACjC,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC9E,IAAI,aAAa,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACpC,aAAa,GAAG,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;gBACvD,CAAC;YACH,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjC,CAAC;QACD,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QAE9B,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;YAC/B,KAAK,CAAC,oBAAoB,GAAG,qBAAqB,CAChD,KAAK,EACL,KAAK,CAAC,oBAAoB,EAC1B,UAAU,CACX,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACpB,KAAK,CAAC,SAAS;gBACb,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC;QAC5F,CAAC;QAED,IAAI,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBAChC,KAAK,CAAC,qBAAqB,GAAG,MAAM,CAAC,WAAW,CAC9C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;oBACjF,kBAAkB;oBAClB,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,IAAI,OAAO;iBACxE,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,SAAS,2BAA2B,CAAC,KAAiB;IACpD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,SAAS;QACX,CAAC;QACD,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CACxC,CAAC,QAAQ,EAAE,EAAE,CACX,QAAQ,CAAC,IAAI,KAAK,UAAU;YAC5B,CAAC,QAAQ,CAAC,KAAK;YACf,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CACpE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,SAAS,qBAAqB,CAAC,KAAiB,EAAE,IAAa,EAAE,UAAsB;IACrF,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,IAAI,IAAI,CAAC;IAC3E,CAAC;IACD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YACpF,OAAO,kBAAkB,KAAK,IAAI,CAAC,SAAS;gBAC1C,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC;QACjD,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAC1E,OAAO,aAAa,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QAC/E,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC5D,qBAAqB,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CACpD,CAAC;YACF,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC1F,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC;QACnD,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,qBAAqB,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAClE,qBAAqB,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,CACtD,CAAC;YACF,OAAO,qBAAqB,CAAC,KAAK,CAChC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,KAAK,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CACjE;gBACC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,qBAAqB,EAAE,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,KAAiB,EAAE,MAA0C;IACtF,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,MAAM,SAAS,GAAG,SAAS,EAAE,SAAS,CAAC;IACvC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,wBAAwB,CACzC,KAAK,CAAC,OAAO,CAAC,OAAO,EACrB,SAAS,CAAC,KAAK,CAAC,SAAS,EACzB,SAAS,CAAC,IAAI,CACf,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,uBAAuB,EAAE,CAAC;QACxD,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,SAAS;QACX,CAAC;QAED,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC;QACtC,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QAC7E,IAAI,aAAa,KAAK,YAAY,EAAE,CAAC;YACnC,4DAA4D;YAC5D,SAAS;QACX,CAAC;QAED,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC;QAEjC,IAAI,YAAY,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;YACpC,0EAA0E;YAC1E,SAAS,CAAC,IAAI,GAAG,aAAa,CAAC;QACjC,CAAC;aAAM,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3C,4EAA4E;YAC5E,KAAK,MAAM,YAAY,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrD,IAAI,YAAY,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBACvC,YAAY,CAAC,IAAI,GAAG,aAAa,CAAC;gBACpC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -123,7 +123,6 @@ function buildPolymorphicDeserializer(context, type, nameOnly = false) {
123
123
  (subType?.usage !== undefined && (subType.usage & UsageFlags.Output) !== UsageFlags.Output)) {
124
124
  return;
125
125
  }
126
- const union = subType?.discriminatedSubtypes ? "_Union" : "";
127
126
  if (!subType || !subType?.name) {
128
127
  reportDiagnostic(context.program, {
129
128
  code: "anonymous-type-deserialization",
@@ -131,9 +130,12 @@ function buildPolymorphicDeserializer(context, type, nameOnly = false) {
131
130
  });
132
131
  return; // Skip this subtype
133
132
  }
134
- const rawSubTypeName = `${subType.name}${union}`;
135
- const subTypeName = `${normalizeName(rawSubTypeName, NameType.Interface, true)}`;
136
- const subtypeDeserializerName = normalizeName(`${subTypeName}Deserializer`, NameType.Operation, true);
133
+ const union = subType.discriminatedSubtypes ? "Union" : "";
134
+ const subTypeName = normalizeModelName(context, subType, NameType.Interface, !union);
135
+ const subtypeDeserializerName = buildModelDeserializer(context, subType, {
136
+ nameOnly: true,
137
+ skipDiscriminatedUnionSuffix: false,
138
+ });
137
139
  cases.push(`
138
140
  case "${discriminatedValue}":
139
141
  return ${subtypeDeserializerName}(item as ${subTypeName});
@@ -1 +1 @@
1
- {"version":3,"file":"build-deserializer-function.js","sourceRoot":"","sources":["../../../../src/modular/serialization/build-deserializer-function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-deserializer-function.js","sourceRoot":"","sources":["../../../../src/modular/serialization/build-deserializer-function.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-serializer-function.d.ts","sourceRoot":"","sources":["../../../../src/modular/serialization/build-serializer-function.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,oBAAoB,EAEzB,KAAK,OAAO,EAGb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,KAAK,4BAA4B,EAAiB,MAAM,UAAU,CAAC;AAK5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAa5D,OAAO,EAIL,KAAK,qBAAqB,EAC3B,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,GAAE,qBAGR,qDAwBF;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,SAAS,GAAG,MAAM,CA6CnD"}
1
+ {"version":3,"file":"build-serializer-function.d.ts","sourceRoot":"","sources":["../../../../src/modular/serialization/build-serializer-function.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,oBAAoB,EAEzB,KAAK,OAAO,EAGb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,KAAK,4BAA4B,EAAiB,MAAM,UAAU,CAAC;AAK5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAkB5D,OAAO,EAIL,KAAK,qBAAqB,EAC3B,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,GAAE,qBAGR,qDAwBF;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,SAAS,GAAG,MAAM,CA6CnD"}
@@ -7,7 +7,7 @@ import { resolveReference } from "../../framework/reference.js";
7
7
  import { refkey } from "../../framework/refkey.js";
8
8
  import { reportDiagnostic } from "../../lib.js";
9
9
  import { isAzureCoreErrorType } from "../../utils/model-utils.js";
10
- import { NameType, normalizeName } from "../../utils/name-utils.js";
10
+ import { formatPropertyAccess, NameType, normalizeName, normalizeSdkPropertyName, } from "../../utils/name-utils.js";
11
11
  import { getAdditionalPropertiesName, normalizeModelName } from "../emit-models.js";
12
12
  import { getAllAncestors, getAllProperties, getPropertyFullName, getRequestModelMapping, getSerializationExpression, } from "../helpers/operation-helpers.js";
13
13
  import { getAdditionalPropertiesType, getDirectSubtypes } from "../helpers/type-helpers.js";
@@ -122,7 +122,6 @@ function buildPolymorphicSerializer(context, type, nameOnly = false) {
122
122
  (subType?.usage !== undefined && (subType.usage & UsageFlags.Input) !== UsageFlags.Input)) {
123
123
  return;
124
124
  }
125
- const union = subType?.discriminatedSubtypes ? "_Union" : "";
126
125
  if (!subType || !subType?.name) {
127
126
  reportDiagnostic(context.program, {
128
127
  code: "anonymous-type-serialization",
@@ -130,16 +129,19 @@ function buildPolymorphicSerializer(context, type, nameOnly = false) {
130
129
  });
131
130
  return; // Skip this subtype
132
131
  }
133
- const rawSubTypeName = `${subType.name}${union}`;
134
- const subTypeName = `${normalizeName(rawSubTypeName, NameType.Interface, true)}`;
135
- const subtypeSerializerName = normalizeName(`${rawSubTypeName}_Serializer`, NameType.Method, true);
132
+ const union = subType.discriminatedSubtypes ? "Union" : "";
133
+ const subTypeName = normalizeModelName(context, subType, NameType.Interface, !union);
134
+ const subtypeSerializerName = buildModelSerializer(context, subType, {
135
+ nameOnly: true,
136
+ skipDiscriminatedUnionSuffix: false,
137
+ });
136
138
  cases.push(`
137
139
  case "${discriminatedValue}":
138
140
  return ${subtypeSerializerName}(item as ${subTypeName});
139
141
  `);
140
142
  });
141
143
  statements.push(`
142
- switch (item.${normalizeName(type.discriminatorProperty.name, NameType.Property)}) {
144
+ switch (${formatPropertyAccess("item", normalizeSdkPropertyName(type.discriminatorProperty))}) {
143
145
  ${cases.join("\n")}
144
146
  default:
145
147
  return item;
@@ -186,7 +188,7 @@ function buildDiscriminatedUnionSerializer(context, type, nameOnly = false) {
186
188
  `);
187
189
  }
188
190
  output.push(`
189
- switch (item.${type.discriminatorProperty ? normalizeName(type.discriminatorProperty.name, NameType.Property) : "unknown"}) {
191
+ switch (${formatPropertyAccess("item", type.discriminatorProperty ? normalizeSdkPropertyName(type.discriminatorProperty) : "unknown")}) {
190
192
  ${cases.join("\n")}
191
193
  default:
192
194
  return ${baseSerializerName}(item);
@@ -1 +1 @@
1
- {"version":3,"file":"build-serializer-function.js","sourceRoot":"","sources":["../../../../src/modular/serialization/build-serializer-function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-serializer-function.js","sourceRoot":"","sources":["../../../../src/modular/serialization/build-serializer-function.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-xml-serializer-function.d.ts","sourceRoot":"","sources":["../../../../src/modular/serialization/build-xml-serializer-function.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,OAAO,EAEb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,KAAK,4BAA4B,EAAiB,MAAM,UAAU,CAAC;AAK5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAQ5D,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE5F;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAU1D;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,OAAO,CAOhF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEzD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,YAAY,GACjB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAEnD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CA2FnD;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CAkFnD;AAoVD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CAoGnD;AA4FD;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CAoFnD"}
1
+ {"version":3,"file":"build-xml-serializer-function.d.ts","sourceRoot":"","sources":["../../../../src/modular/serialization/build-xml-serializer-function.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,OAAO,EAEb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,KAAK,4BAA4B,EAAiB,MAAM,UAAU,CAAC;AAK5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAQ5D,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE5F;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAU1D;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,OAAO,CAOhF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEzD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,YAAY,GACjB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAEnD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CA2FnD;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CAkFnD;AA+UD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CAoGnD;AA2FD;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,qBAGR,GACA,4BAA4B,GAAG,MAAM,GAAG,SAAS,CAoFnD"}