@azure-tools/typespec-ts 0.29.0-alpha.20240626.1 → 0.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/src/contextManager.d.ts +70 -0
  3. package/dist/src/contextManager.d.ts.map +1 -0
  4. package/dist/src/contextManager.js +59 -0
  5. package/dist/src/contextManager.js.map +1 -0
  6. package/dist/src/index.d.ts.map +1 -1
  7. package/dist/src/index.js +13 -2
  8. package/dist/src/index.js.map +1 -1
  9. package/dist/src/metaTree.d.ts +12 -0
  10. package/dist/src/metaTree.d.ts.map +1 -0
  11. package/dist/src/metaTree.js +2 -0
  12. package/dist/src/metaTree.js.map +1 -0
  13. package/dist/src/modular/buildClassicalClient.js +3 -1
  14. package/dist/src/modular/buildClassicalClient.js.map +1 -1
  15. package/dist/src/modular/buildCodeModel.d.ts.map +1 -1
  16. package/dist/src/modular/buildCodeModel.js +17 -7
  17. package/dist/src/modular/buildCodeModel.js.map +1 -1
  18. package/dist/src/modular/buildHelperSerializers.d.ts +3 -0
  19. package/dist/src/modular/buildHelperSerializers.d.ts.map +1 -0
  20. package/dist/src/modular/buildHelperSerializers.js +60 -0
  21. package/dist/src/modular/buildHelperSerializers.js.map +1 -0
  22. package/dist/src/modular/buildOperations.d.ts.map +1 -1
  23. package/dist/src/modular/buildOperations.js +5 -0
  24. package/dist/src/modular/buildOperations.js.map +1 -1
  25. package/dist/src/modular/buildSerializeUtils.d.ts.map +1 -1
  26. package/dist/src/modular/buildSerializeUtils.js +11 -4
  27. package/dist/src/modular/buildSerializeUtils.js.map +1 -1
  28. package/dist/src/modular/buildSubpathIndex.d.ts.map +1 -1
  29. package/dist/src/modular/buildSubpathIndex.js +6 -0
  30. package/dist/src/modular/buildSubpathIndex.js.map +1 -1
  31. package/dist/src/modular/emitModels.d.ts +5 -5
  32. package/dist/src/modular/emitModels.d.ts.map +1 -1
  33. package/dist/src/modular/emitModels.js +32 -4
  34. package/dist/src/modular/emitModels.js.map +1 -1
  35. package/dist/src/modular/helpers/operationHelpers.d.ts +10 -2
  36. package/dist/src/modular/helpers/operationHelpers.d.ts.map +1 -1
  37. package/dist/src/modular/helpers/operationHelpers.js +135 -56
  38. package/dist/src/modular/helpers/operationHelpers.js.map +1 -1
  39. package/dist/src/modular/helpers/typeHelpers.d.ts +1 -0
  40. package/dist/src/modular/helpers/typeHelpers.d.ts.map +1 -1
  41. package/dist/src/modular/helpers/typeHelpers.js +24 -19
  42. package/dist/src/modular/helpers/typeHelpers.js.map +1 -1
  43. package/dist/src/modular/modularCodeModel.d.ts +2 -2
  44. package/dist/src/modular/modularCodeModel.d.ts.map +1 -1
  45. package/dist/src/modular/serialization/buildSerializerFunction.d.ts +4 -0
  46. package/dist/src/modular/serialization/buildSerializerFunction.d.ts.map +1 -0
  47. package/dist/src/modular/serialization/buildSerializerFunction.js +160 -0
  48. package/dist/src/modular/serialization/buildSerializerFunction.js.map +1 -0
  49. package/dist/src/transform/transformSchemas.d.ts.map +1 -1
  50. package/dist/src/transform/transformSchemas.js +3 -0
  51. package/dist/src/transform/transformSchemas.js.map +1 -1
  52. package/dist/src/utils/importHelper.d.ts +10 -0
  53. package/dist/src/utils/importHelper.d.ts.map +1 -0
  54. package/dist/src/utils/importHelper.js +54 -0
  55. package/dist/src/utils/importHelper.js.map +1 -0
  56. package/dist/tsconfig.tsbuildinfo +1 -1
  57. package/package.json +4 -4
  58. package/src/contextManager.ts +99 -0
  59. package/src/index.ts +14 -2
  60. package/src/metaTree.ts +14 -0
  61. package/src/modular/buildClassicalClient.ts +5 -1
  62. package/src/modular/buildCodeModel.ts +22 -6
  63. package/src/modular/buildHelperSerializers.ts +71 -0
  64. package/src/modular/buildOperations.ts +7 -1
  65. package/src/modular/buildSerializeUtils.ts +19 -11
  66. package/src/modular/buildSubpathIndex.ts +10 -0
  67. package/src/modular/emitModels.ts +66 -16
  68. package/src/modular/helpers/operationHelpers.ts +198 -84
  69. package/src/modular/helpers/typeHelpers.ts +24 -17
  70. package/src/modular/modularCodeModel.ts +2 -2
  71. package/src/modular/serialization/buildSerializerFunction.ts +224 -0
  72. package/src/transform/transformSchemas.ts +3 -0
  73. package/src/utils/importHelper.ts +64 -0
@@ -1 +1 @@
1
- {"version":3,"file":"operationHelpers.js","sourceRoot":"","sources":["../../../../src/modular/helpers/operationHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operationHelpers.js","sourceRoot":"","sources":["../../../../src/modular/helpers/operationHelpers.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export interface TypeMetadata {
13
13
  * Maps a given Type to its TypeScript representation metadata.
14
14
  */
15
15
  export declare function getType(type: Type, format?: string): TypeMetadata;
16
+ export declare function isTypeNullable(type: Type): boolean;
16
17
  /**
17
18
  * Generates a TypeScript type representation for a given client name, type, and format.
18
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"typeHelpers.d.ts","sourceRoot":"","sources":["../../../../src/modular/helpers/typeHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAuDD;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAuCjE;AA0ID;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM;;;EAQ1E;AAwBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD"}
1
+ {"version":3,"file":"typeHelpers.d.ts","sourceRoot":"","sources":["../../../../src/modular/helpers/typeHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAuDD;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAuCjE;AA6CD,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,WAExC;AAkGD;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM;;;EAQ1E;AAwBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD"}
@@ -51,7 +51,7 @@ export function getType(type, format) {
51
51
  const simpleType = simpleTypeMap[type.type];
52
52
  if (simpleType) {
53
53
  const typeMetadata = { ...simpleType };
54
- if (type.nullable) {
54
+ if (isTypeNullable(type)) {
55
55
  typeMetadata.nullable = true;
56
56
  typeMetadata.name = handleNullableTypeName(typeMetadata);
57
57
  }
@@ -73,7 +73,7 @@ export function getType(type, format) {
73
73
  case "dict":
74
74
  return handleDictType(type);
75
75
  case "never":
76
- return { name: "never", nullable: type.nullable };
76
+ return { name: "never", nullable: isTypeNullable(type) };
77
77
  default:
78
78
  throw new Error(`Unsupported type ${type.type}`);
79
79
  }
@@ -89,9 +89,9 @@ function handleConstantType(type) {
89
89
  }
90
90
  const name = handleNullableTypeName({
91
91
  name: typeName,
92
- nullable: type.nullable
92
+ nullable: isTypeNullable(type)
93
93
  });
94
- return { name, nullable: type.nullable };
94
+ return { name, nullable: isTypeNullable(type) };
95
95
  }
96
96
  /**
97
97
  * Handles the conversion of enum types to TypeScript representation metadata.
@@ -106,36 +106,41 @@ function handleEnumType(type) {
106
106
  name: `${valueType}${(_d = type.values) === null || _d === void 0 ? void 0 : _d.map((e) => {
107
107
  return getType(e).name;
108
108
  }).join(" | ")}`,
109
- nullable: type.nullable
109
+ nullable: isTypeNullable(type)
110
110
  };
111
111
  }
112
112
  const name = handleNullableTypeName({
113
113
  name: type.name,
114
- nullable: type.nullable
114
+ nullable: isTypeNullable(type)
115
115
  });
116
116
  return {
117
117
  name,
118
- nullable: type.nullable,
118
+ nullable: isTypeNullable(type),
119
119
  originModule: "models.js"
120
120
  };
121
121
  }
122
+ export function isTypeNullable(type) {
123
+ var _a;
124
+ return Boolean(((_a = type.tcgcType) === null || _a === void 0 ? void 0 : _a.kind) === "nullable");
125
+ }
122
126
  /**
123
127
  * Handles the conversion of list types to TypeScript representation metadata.
124
128
  */
125
129
  function handleListType(type) {
126
- var _a;
130
+ var _a, _b;
127
131
  if (!type.elementType) {
128
132
  throw new Error("Unable to process Array with no elementType");
129
133
  }
130
134
  const elementTypeMetadata = getType(type.elementType, type.elementType.format);
131
- const name = handleNullableTypeName({
132
- name: `${elementTypeMetadata.name}[]`,
133
- nullable: type.nullable
134
- });
135
+ let name = `${elementTypeMetadata.name}[]`;
136
+ const isTypeNullable = ((_a = type.tcgcType) === null || _a === void 0 ? void 0 : _a.kind) === "nullable";
137
+ if (isTypeNullable) {
138
+ name = `(${name} | null)`;
139
+ }
135
140
  const listTypeMetadata = {
136
141
  name: name,
137
- nullable: type.elementType.nullable,
138
- originModule: ((_a = type.elementType) === null || _a === void 0 ? void 0 : _a.type) === "model" ? "models.js" : undefined
142
+ nullable: isTypeNullable,
143
+ originModule: ((_b = type.elementType) === null || _b === void 0 ? void 0 : _b.type) === "model" ? "models.js" : undefined
139
144
  };
140
145
  return listTypeMetadata;
141
146
  }
@@ -146,11 +151,11 @@ function handleModelType(type) {
146
151
  let name = !type.name ? handleAnomymousModelName(type) : type.name;
147
152
  name = handleNullableTypeName({
148
153
  name,
149
- nullable: type.nullable
154
+ nullable: isTypeNullable(type)
150
155
  });
151
156
  return {
152
157
  name,
153
- nullable: type.nullable,
158
+ nullable: isTypeNullable(type),
154
159
  originModule: "models.js"
155
160
  };
156
161
  }
@@ -160,10 +165,10 @@ function handleModelType(type) {
160
165
  function handleDurationType(type, format) {
161
166
  const isFormatSeconds = format === "seconds";
162
167
  let name = isFormatSeconds ? "number" : "string";
163
- name = handleNullableTypeName({ name, nullable: type.nullable });
168
+ name = handleNullableTypeName({ name, nullable: isTypeNullable(type) });
164
169
  return {
165
170
  name,
166
- nullable: type.nullable
171
+ nullable: isTypeNullable(type)
167
172
  };
168
173
  }
169
174
  /**
@@ -180,7 +185,7 @@ function handleCombinedType(type) {
180
185
  return `${sdkType}`;
181
186
  })
182
187
  .join(" | ");
183
- return { name: `(${name})`, nullable: type.nullable };
188
+ return { name: `(${name})`, nullable: isTypeNullable(type) };
184
189
  }
185
190
  /**
186
191
  * Handles the conversion of dict types to TypeScript representation metadata.
@@ -1 +1 @@
1
- {"version":3,"file":"typeHelpers.js","sourceRoot":"","sources":["../../../../src/modular/helpers/typeHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeHelpers.js","sourceRoot":"","sources":["../../../../src/modular/helpers/typeHelpers.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { HelperFunctionDetails, Imports, OperationResponse, RLCOptions } from "@azure-tools/rlc-common";
2
2
  import { SdkBodyParameter, SdkType } from "@azure-tools/typespec-client-generator-core";
3
- import { UsageFlags } from "@typespec/compiler";
3
+ import { UsageFlags, Type as TypespecType } from "@typespec/compiler";
4
4
  import { Project } from "ts-morph";
5
5
  export interface ModularOptions {
6
6
  sourceRoot: string;
@@ -62,7 +62,6 @@ export interface EnumValue {
62
62
  description: string;
63
63
  }
64
64
  export interface Type {
65
- nullable?: boolean;
66
65
  name?: string;
67
66
  description?: string;
68
67
  type: "string" | "Key" | "OAuth2" | "constant" | "model" | "list" | "byte-array" | "datetime" | "float" | "duration" | "enum" | "integer" | "float" | "boolean" | "dict" | "combined" | "any" | "unknown" | "never";
@@ -88,6 +87,7 @@ export interface Type {
88
87
  discriminatorValue?: string;
89
88
  isPolymorphicBaseModel?: boolean;
90
89
  tcgcType?: SdkType;
90
+ __raw?: TypespecType;
91
91
  }
92
92
  export interface Client {
93
93
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"modularCodeModel.d.ts","sourceRoot":"","sources":["../../../src/modular/modularCodeModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modularCodeModel.d.ts","sourceRoot":"","sources":["../../../src/modular/modularCodeModel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Type as ModularType } from "../modularCodeModel.js";
2
+ import { Imports as RuntimeImports } from "@azure-tools/rlc-common";
3
+ export declare function buildModelSerializer(type: ModularType, runtimeImports: RuntimeImports): string | undefined;
4
+ //# sourceMappingURL=buildSerializerFunction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildSerializerFunction.d.ts","sourceRoot":"","sources":["../../../../src/modular/serialization/buildSerializerFunction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAI7D,OAAO,EACL,OAAO,IAAI,cAAc,EAG1B,MAAM,yBAAyB,CAAC;AAajC,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,cAAc,GAC7B,MAAM,GAAG,SAAS,CAsIpB"}
@@ -0,0 +1,160 @@
1
+ import { toCamelCase, toPascalCase } from "../../utils/casingUtils.js";
2
+ import { getRequestModelMapping } from "../helpers/operationHelpers.js";
3
+ import { useContext } from "../../contextManager.js";
4
+ import { SchemaContext, addImportToSpecifier } from "@azure-tools/rlc-common";
5
+ import { UsageFlags } from "@typespec/compiler";
6
+ function getTcgcType(type) {
7
+ var _a;
8
+ if (((_a = type.tcgcType) === null || _a === void 0 ? void 0 : _a.kind) === "nullable") {
9
+ return type.tcgcType.type;
10
+ }
11
+ return type.tcgcType;
12
+ }
13
+ export function buildModelSerializer(type, runtimeImports) {
14
+ var _a;
15
+ const rlcMetadata = useContext("rlcMetaTree");
16
+ const modelTcgcType = getTcgcType(type);
17
+ if (modelTcgcType.usage !== undefined &&
18
+ (modelTcgcType.usage & UsageFlags.Input) !== UsageFlags.Input) {
19
+ return undefined;
20
+ }
21
+ if (!type.name) {
22
+ throw new Error(`NYI Serialization of anonymous types`);
23
+ }
24
+ let serializerName = `${toCamelCase(type.name)}Serializer`;
25
+ const restModel = rlcMetadata.get(type.__raw);
26
+ const restModelName = restModel === null || restModel === void 0 ? void 0 : restModel.rlcType.name;
27
+ const output = [];
28
+ if (!isDiscriminatedUnion(type) &&
29
+ type.type === "combined" &&
30
+ type.discriminator) {
31
+ return buildPolymorphicSerializer(type);
32
+ }
33
+ if (isDiscriminatedUnion(type)) {
34
+ const discriminatedTgcType = getTcgcType(type);
35
+ const cases = [];
36
+ const baseSerializerName = `${toCamelCase(discriminatedTgcType.name)}Serializer`;
37
+ for (const key in discriminatedTgcType.discriminatedSubtypes) {
38
+ const subType = discriminatedTgcType.discriminatedSubtypes[key];
39
+ const discriminatedValue = subType.discriminatorValue;
40
+ const union = subType.discriminatedSubtypes ? "Union" : "";
41
+ const subTypeName = `${toPascalCase(subType.name)}${union}`;
42
+ const subtypeSerializerName = toCamelCase(`${subTypeName}Serializer`);
43
+ cases.push(`
44
+ case "${discriminatedValue}":
45
+ return ${subtypeSerializerName}(item as ${subTypeName});
46
+ `);
47
+ }
48
+ output.push(`
49
+ export function ${toCamelCase(type.name)}Serializer(item: ${toPascalCase(type.name)}) {
50
+ switch (item.${type.discriminator}) {
51
+ ${cases.join("\n")}
52
+ default:
53
+ return ${baseSerializerName}(item);
54
+ }
55
+ }
56
+ `);
57
+ serializerName = baseSerializerName;
58
+ }
59
+ let serializerReturnType = "";
60
+ // There are some situations where the type is not present in the REST API,
61
+ // this can happen when client.tsp overrides visibility to public on an orphan model
62
+ // In this case we just let TypeScript infer the return type.
63
+ let restModelNameAlias = "";
64
+ if (restModelName && ((_a = restModel.rlcType.usage) === null || _a === void 0 ? void 0 : _a.includes(SchemaContext.Input))) {
65
+ restModelNameAlias = `${restModelName}Rest`;
66
+ serializerReturnType = `: ${restModelNameAlias}`;
67
+ }
68
+ if (type.type === "model" || type.type === "dict") {
69
+ const nullabilityPrefix = "";
70
+ // getPropertySerializationPrefix({
71
+ // clientName: "item",
72
+ // type
73
+ // });
74
+ // This is only handling the compatibility mode, will need to update when we handle additionalProperties property.
75
+ const additionalPropertiesSpread = hasAdditionalProperties(type.tcgcType)
76
+ ? "...item,"
77
+ : "";
78
+ const { propertiesStr, directAssignment } = getRequestModelMapping(type, "item", runtimeImports);
79
+ const propertiesSerialization = propertiesStr.filter((p) => p.trim());
80
+ // don't emit a serializer if there is nothing to serialize
81
+ if (propertiesSerialization.length || additionalPropertiesSpread) {
82
+ const spreadSerialized = directAssignment ? "..." : "";
83
+ const fnBody = `{
84
+ ${additionalPropertiesSpread}
85
+ ${nullabilityPrefix} ${spreadSerialized} ${propertiesSerialization.join(",\n")}
86
+ }`;
87
+ output.push(`
88
+ export function ${serializerName}(item: ${toPascalCase(type.name)})${serializerReturnType} {
89
+ return ${fnBody}
90
+ }
91
+ `);
92
+ if (serializerReturnType) {
93
+ addImportToSpecifier("rlcIndex", runtimeImports, `${restModelName} as ${restModelNameAlias}`);
94
+ }
95
+ }
96
+ else {
97
+ output.push(`
98
+ export function ${serializerName}(item: ${toPascalCase(type.name)}) {
99
+ return item as any;
100
+ }
101
+ `);
102
+ }
103
+ }
104
+ else if (type.type === "enum") {
105
+ output.push(`
106
+ export function ${serializerName}(item: ${toPascalCase(type.name)})${serializerReturnType} {
107
+ return item;
108
+ }
109
+ `);
110
+ }
111
+ return output.join("\n");
112
+ }
113
+ function isDiscriminatedUnion(type) {
114
+ const { tcgcType } = type;
115
+ return Boolean((tcgcType === null || tcgcType === void 0 ? void 0 : tcgcType.kind) === "model" &&
116
+ tcgcType.discriminatorProperty &&
117
+ tcgcType.discriminatedSubtypes);
118
+ }
119
+ function hasAdditionalProperties(type) {
120
+ if (!type || !("additionalProperties" in type)) {
121
+ return false;
122
+ }
123
+ if (type.additionalProperties) {
124
+ return true;
125
+ }
126
+ if (type.baseModel) {
127
+ return hasAdditionalProperties(type.baseModel);
128
+ }
129
+ return false;
130
+ }
131
+ function buildPolymorphicSerializer(type) {
132
+ var _a;
133
+ if (!type.discriminator) {
134
+ return;
135
+ }
136
+ const output = [];
137
+ const subTypes = (_a = type.types) !== null && _a !== void 0 ? _a : [];
138
+ const cases = [];
139
+ for (const subType of subTypes) {
140
+ const discriminatedValue = subType.discriminatorValue;
141
+ const union = subType.types ? "Union" : "";
142
+ const subTypeName = `${toPascalCase(subType.name)}${union}`;
143
+ const subtypeSerializerName = toCamelCase(`${subTypeName}Serializer`);
144
+ cases.push(`
145
+ case "${discriminatedValue}":
146
+ return ${subtypeSerializerName}(item as ${subTypeName});
147
+ `);
148
+ }
149
+ output.push(`
150
+ export function ${toCamelCase(type.name)}Serializer(item: ${toPascalCase(type.name)}) {
151
+ switch (item.${type.discriminator}) {
152
+ ${cases.join("\n")}
153
+ default:
154
+ return item;
155
+ }
156
+ }
157
+ `);
158
+ return output.join("\n");
159
+ }
160
+ //# sourceMappingURL=buildSerializerFunction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildSerializerFunction.js","sourceRoot":"","sources":["../../../../src/modular/serialization/buildSerializerFunction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transformSchemas.d.ts","sourceRoot":"","sources":["../../../src/transform/transformSchemas.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,SAAS,EACV,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAWpD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,SAwNzE"}
1
+ {"version":3,"file":"transformSchemas.d.ts","sourceRoot":"","sources":["../../../src/transform/transformSchemas.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,SAAS,EACV,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAYpD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,SA0NzE"}
@@ -6,6 +6,7 @@ import { ignoreDiagnostics } from "@typespec/compiler";
6
6
  import { getHttpOperation, getServers } from "@typespec/http";
7
7
  import { extractMediaTypes } from "../utils/mediaTypes.js";
8
8
  import { getBodyType, getDefaultService, getSchemaForType, includeDerivedModel, isAzureCoreErrorType, trimUsage } from "../utils/modelUtils.js";
9
+ import { useContext } from "../contextManager.js";
9
10
  export function transformSchemas(client, dpgContext) {
10
11
  var _a, _b;
11
12
  const program = dpgContext.program;
@@ -95,6 +96,7 @@ export function transformSchemas(client, dpgContext) {
95
96
  transformHostParameters();
96
97
  usageMap.forEach((context, tspModel) => {
97
98
  var _a;
99
+ const metatree = useContext("rlcMetaTree");
98
100
  const model = getSchemaForType(dpgContext, tspModel, {
99
101
  usage: context,
100
102
  isRequestBody: requestBodySet.has(tspModel),
@@ -104,6 +106,7 @@ export function transformSchemas(client, dpgContext) {
104
106
  if (model) {
105
107
  model.usage = context;
106
108
  }
109
+ metatree.set(tspModel, { rlcType: model });
107
110
  if (model.name === "") {
108
111
  return;
109
112
  }