@typespec/emitter-framework 0.3.0-dev.0 → 0.3.0-dev.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/testing/scenario-test/harness.js +26 -28
- package/dist/src/testing/scenario-test/harness.js.map +1 -1
- package/dist/src/testing/scenario-test/snippet-extractor.js.map +1 -1
- package/dist/src/typescript/components/array-expression.d.ts +1 -1
- package/dist/src/typescript/components/array-expression.d.ts.map +1 -1
- package/dist/src/typescript/components/class-method.d.ts +1 -1
- package/dist/src/typescript/components/class-method.d.ts.map +1 -1
- package/dist/src/typescript/components/enum-declaration.d.ts +2 -2
- package/dist/src/typescript/components/enum-declaration.d.ts.map +1 -1
- package/dist/src/typescript/components/function-declaration.d.ts +2 -2
- package/dist/src/typescript/components/function-declaration.d.ts.map +1 -1
- package/dist/src/typescript/components/interface-declaration.d.ts +3 -2
- package/dist/src/typescript/components/interface-declaration.d.ts.map +1 -1
- package/dist/src/typescript/components/interface-declaration.js +7 -7
- package/dist/src/typescript/components/interface-declaration.js.map +1 -1
- package/dist/src/typescript/components/interface-member.d.ts +1 -1
- package/dist/src/typescript/components/interface-member.d.ts.map +1 -1
- package/dist/src/typescript/components/interface-member.js +1 -1
- package/dist/src/typescript/components/interface-member.js.map +1 -1
- package/dist/src/typescript/components/static-serializers.d.ts +8 -8
- package/dist/src/typescript/components/static-serializers.d.ts.map +1 -1
- package/dist/src/typescript/components/static-serializers.js +22 -22
- package/dist/src/typescript/components/static-serializers.js.map +1 -1
- package/dist/src/typescript/components/type-alias-declaration.d.ts +1 -1
- package/dist/src/typescript/components/type-alias-declaration.d.ts.map +1 -1
- package/dist/src/typescript/components/type-declaration.d.ts +1 -1
- package/dist/src/typescript/components/type-declaration.d.ts.map +1 -1
- package/dist/src/typescript/components/type-expression.d.ts +1 -1
- package/dist/src/typescript/components/type-expression.d.ts.map +1 -1
- package/dist/src/typescript/components/type-transform.d.ts +4 -4
- package/dist/src/typescript/components/type-transform.d.ts.map +1 -1
- package/dist/src/typescript/components/type-transform.js +1 -1
- package/dist/src/typescript/components/type-transform.js.map +1 -1
- package/dist/src/typescript/components/union-declaration.d.ts +1 -1
- package/dist/src/typescript/components/union-declaration.d.ts.map +1 -1
- package/dist/src/typescript/components/union-declaration.js.map +1 -1
- package/dist/src/typescript/components/union-expression.d.ts +1 -1
- package/dist/src/typescript/components/union-expression.d.ts.map +1 -1
- package/dist/src/typescript/utils/operation.d.ts.map +1 -1
- package/dist/src/typescript/utils/operation.js +2 -1
- package/dist/src/typescript/utils/operation.js.map +1 -1
- package/package.json +13 -11
- package/src/testing/scenario-test/harness.ts +25 -27
- package/src/testing/scenario-test/snippet-extractor.ts +1 -1
- package/src/typescript/components/interface-declaration.tsx +11 -8
- package/src/typescript/components/interface-member.tsx +1 -1
- package/src/typescript/components/static-serializers.tsx +22 -22
- package/src/typescript/components/type-transform.tsx +1 -1
- package/src/typescript/components/union-declaration.tsx +1 -1
- package/src/typescript/utils/operation.ts +2 -1
- package/test/typescript/components/interface-declaration.test.tsx +3 -1
- package/tsconfig.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Refkey } from "@alloy-js/core";
|
|
1
|
+
import { Children, Refkey } from "@alloy-js/core";
|
|
2
2
|
import { Model, Type, Union } from "@typespec/compiler";
|
|
3
3
|
export interface TypeTransformProps {
|
|
4
4
|
name?: string;
|
|
@@ -14,7 +14,7 @@ export interface UnionTransformProps {
|
|
|
14
14
|
/**
|
|
15
15
|
* Component that represents a function declaration that transforms a model to a transport or application model.
|
|
16
16
|
*/
|
|
17
|
-
export declare function TypeTransformDeclaration(props: TypeTransformProps):
|
|
17
|
+
export declare function TypeTransformDeclaration(props: TypeTransformProps): Children;
|
|
18
18
|
/**
|
|
19
19
|
* Gets a refkey for a TypeTransformer function
|
|
20
20
|
* @param type type to be transformed
|
|
@@ -31,7 +31,7 @@ export interface ModelTransformExpressionProps {
|
|
|
31
31
|
/**
|
|
32
32
|
* Component that represents an object expression that transforms a model to a transport or application model.
|
|
33
33
|
*/
|
|
34
|
-
export declare function ModelTransformExpression(props: ModelTransformExpressionProps):
|
|
34
|
+
export declare function ModelTransformExpression(props: ModelTransformExpressionProps): Children;
|
|
35
35
|
export interface TypeTransformCallProps {
|
|
36
36
|
/**
|
|
37
37
|
* TypeSpec type to be transformed
|
|
@@ -61,5 +61,5 @@ export interface TypeTransformCallProps {
|
|
|
61
61
|
/**
|
|
62
62
|
* This component represents a function call to transform a type
|
|
63
63
|
*/
|
|
64
|
-
export declare function TypeTransformCall(props: TypeTransformCallProps):
|
|
64
|
+
export declare function TypeTransformCall(props: TypeTransformCallProps): Children;
|
|
65
65
|
//# sourceMappingURL=type-transform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-transform.d.ts","sourceRoot":"","sources":["../../../../src/typescript/components/type-transform.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"type-transform.d.ts","sourceRoot":"","sources":["../../../../src/typescript/components/type-transform.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAiB,MAAM,EAAU,MAAM,gBAAgB,CAAC;AAEzE,OAAO,EAGL,KAAK,EAIL,IAAI,EACJ,KAAK,EACN,MAAM,oBAAoB,CAAC;AAY5B,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,aAAa,GAAG,WAAW,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,KAAK,CAAC;IACZ,MAAM,EAAE,aAAa,GAAG,WAAW,CAAC;CACrC;AA6CD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,YA2DjE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,GAAG,WAAW,UAEvF;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,aAAa,GAAG,WAAW,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,YA6D5E;AAuDD,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IACX;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,MAAM,EAAE,aAAa,GAAG,WAAW,CAAC;IACpC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAMD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,YAqD9D"}
|
|
@@ -2,9 +2,9 @@ import { memo as _$memo } from "@alloy-js/core/jsx-runtime";
|
|
|
2
2
|
import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
|
|
3
3
|
import { code, mapJoin, refkey } from "@alloy-js/core";
|
|
4
4
|
import * as ts from "@alloy-js/typescript";
|
|
5
|
+
import { getDiscriminatedUnion } from "@typespec/compiler";
|
|
5
6
|
import { $ } from "@typespec/compiler/experimental/typekit";
|
|
6
7
|
import { createRekeyableMap } from "@typespec/compiler/utils";
|
|
7
|
-
import { getDiscriminatedUnion } from "../../../../compiler/dist/src/core/helpers/discriminator-utils.js";
|
|
8
8
|
import { reportDiagnostic } from "../../lib.js";
|
|
9
9
|
import { reportTypescriptDiagnostic } from "../../typescript/lib.js";
|
|
10
10
|
import { ArraySerializerRefkey, DateDeserializerRefkey, DateRfc3339SerializerRefkey, RecordSerializerRefkey } from "./static-serializers.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-transform.js","names":["code","mapJoin","refkey","ts","$","createRekeyableMap","getDiscriminatedUnion","reportDiagnostic","reportTypescriptDiagnostic","ArraySerializerRefkey","DateDeserializerRefkey","DateRfc3339SerializerRefkey","RecordSerializerRefkey","UnionTransformExpression","props","discriminator","type","getDiscriminator","program","target","_$createComponent","DiscriminateExpression","discriminatedUnion","discriminatorRef","propertyName","unhandledVariant","variants","name","variant","JSON","stringify","TypeTransformCall","castInput","itemPath","joiner","ender","TypeTransformDeclaration","namePolicy","useTSNamePolicy","array","is","record","model","union","originalName","baseName","getName","functionSuffix","functionName","itemType","Reference","transformExpression","ModelTransformExpression","returnType","ref","getTypeTransformerRefkey","FunctionDeclaration","parameters","item","children","baseModel","getSpreadType","modelProperties","getProperties","forEach","property","isNever","set","baseModelTransform","optionsBagName","ObjectExpression","_$memo","_","unpackedType","httpPart","unpack","targetPropertyName","sourcePropertyName","temp","optional","unshift","value","needsTransform","join","ObjectProperty","TransformReference","scalar","TransformScalarReference","FunctionCallExpression","args","getElementType","reference","isUtcDateTime","collapsedProperty","getCollapsedProperty","collapse","itemName","transformType","unpackedElement","isExpresion","effectiveModel","getEffectiveModel","undefined","size","Array","from","values"],"sources":["../../../../src/typescript/components/type-transform.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"type-transform.js","names":["code","mapJoin","refkey","ts","getDiscriminatedUnion","$","createRekeyableMap","reportDiagnostic","reportTypescriptDiagnostic","ArraySerializerRefkey","DateDeserializerRefkey","DateRfc3339SerializerRefkey","RecordSerializerRefkey","UnionTransformExpression","props","discriminator","type","getDiscriminator","program","target","_$createComponent","DiscriminateExpression","discriminatedUnion","discriminatorRef","propertyName","unhandledVariant","variants","name","variant","JSON","stringify","TypeTransformCall","castInput","itemPath","joiner","ender","TypeTransformDeclaration","namePolicy","useTSNamePolicy","array","is","record","model","union","originalName","baseName","getName","functionSuffix","functionName","itemType","Reference","transformExpression","ModelTransformExpression","returnType","ref","getTypeTransformerRefkey","FunctionDeclaration","parameters","item","children","baseModel","getSpreadType","modelProperties","getProperties","forEach","property","isNever","set","baseModelTransform","optionsBagName","ObjectExpression","_$memo","_","unpackedType","httpPart","unpack","targetPropertyName","sourcePropertyName","temp","optional","unshift","value","needsTransform","join","ObjectProperty","TransformReference","scalar","TransformScalarReference","FunctionCallExpression","args","getElementType","reference","isUtcDateTime","collapsedProperty","getCollapsedProperty","collapse","itemName","transformType","unpackedElement","isExpresion","effectiveModel","getEffectiveModel","undefined","size","Array","from","values"],"sources":["../../../../src/typescript/components/type-transform.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -5,5 +5,5 @@ export interface TypedUnionDeclarationProps extends Omit<ts.TypeDeclarationProps
|
|
|
5
5
|
name?: string;
|
|
6
6
|
}
|
|
7
7
|
export type UnionDeclarationProps = TypedUnionDeclarationProps | ts.TypeDeclarationProps;
|
|
8
|
-
export declare function UnionDeclaration(props: UnionDeclarationProps):
|
|
8
|
+
export declare function UnionDeclaration(props: UnionDeclarationProps): import("@alloy-js/core").Children;
|
|
9
9
|
//# sourceMappingURL=union-declaration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"union-declaration.d.ts","sourceRoot":"","sources":["../../../../src/typescript/components/union-declaration.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAKjD,MAAM,WAAW,0BAA2B,SAAQ,IAAI,CAAC,EAAE,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACvF,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,qBAAqB,GAAG,0BAA0B,GAAG,EAAE,CAAC,oBAAoB,CAAC;AAEzF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"union-declaration.d.ts","sourceRoot":"","sources":["../../../../src/typescript/components/union-declaration.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAKjD,MAAM,WAAW,0BAA2B,SAAQ,IAAI,CAAC,EAAE,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACvF,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,qBAAqB,GAAG,0BAA0B,GAAG,EAAE,CAAC,oBAAoB,CAAC;AAEzF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,qCAmB5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"union-declaration.js","names":["refkey","getRefkey","ts","$","reportDiagnostic","UnionExpression","UnionDeclaration","props","isTypedUnionDeclarationProps","_$createComponent","TypeDeclaration","_$mergeProps","children","type","coreProps","originalName","name","program","code","target","useTSNamePolicy","getName"],"sources":["../../../../src/typescript/components/union-declaration.tsx"],"sourcesContent":[null],"mappings":";;AAAA,SAASA,MAAM,IAAIC,SAAS,QAAQ,gBAAgB;AACpD,OAAO,KAAKC,EAAE,MAAM,sBAAsB;AAE1C,SAASC,CAAC,QAAQ,yCAAyC;AAC3D,SAASC,gBAAgB,QAAQ,cAAc;AAC/C,SAASC,eAAe,QAAQ,uBAAuB;AASvD,OAAO,SAASC,gBAAgBA,CAACC,KAA4B,EAAE;EAC7D,IAAI,CAACC,4BAA4B,CAACD,KAAK,CAAC,EAAE;IACxC,OAAAE,iBAAA,CAAQP,EAAE,CAACQ,eAAe,EAAAC,YAAA,CAAKJ,KAAK;MAAA,IAAAK,SAAA;QAAA,OAAGL,KAAK,CAACK,QAAQ;MAAA;IAAA;EACvD;EAEA,MAAM;IAAEC,IAAI;IAAE,GAAGC;EAAU,CAAC,GAAGP,KAAK;EACpC,MAAMP,MAAM,GAAGc,SAAS,CAACd,MAAM,IAAIC,SAAS,CAACY,IAAI,CAAC;EAElD,MAAME,YAAY,GAAGD,SAAS,CAACE,IAAI,IAAIH,IAAI,CAACG,IAAI;EAEhD,IAAI,CAACD,YAAY,IAAIA,YAAY,KAAK,EAAE,EAAE;IACxCX,gBAAgB,CAACD,CAAC,CAACc,OAAO,EAAE;MAAEC,IAAI,EAAE,+BAA+B;MAAEC,MAAM,EAAEN;IAAK,CAAC,CAAC;EACtF;EAEA,MAAMG,IAAI,GAAGd,EAAE,CAACkB,eAAe,CAAC,CAAC,CAACC,OAAO,CAACN,YAAY,EAAG,MAAM,CAAC;EAEhE,OAAAN,iBAAA,CAAQP,EAAE,CAACQ,eAAe,EAAAC,YAAA,CAAKJ,KAAK;IAAES,IAAI,EAAEA,IAAI;IAAEhB,MAAM,EAAEA,MAAM;IAAA,IAAAY,SAAA;MAAA,OAAAH,iBAAA,CAC3DJ,eAAe;QAACQ,IAAI,EAAEA,IAAI;QAAA,IAAAD,SAAA;UAAA,
|
|
1
|
+
{"version":3,"file":"union-declaration.js","names":["refkey","getRefkey","ts","$","reportDiagnostic","UnionExpression","UnionDeclaration","props","isTypedUnionDeclarationProps","_$createComponent","TypeDeclaration","_$mergeProps","children","type","coreProps","originalName","name","program","code","target","useTSNamePolicy","getName"],"sources":["../../../../src/typescript/components/union-declaration.tsx"],"sourcesContent":[null],"mappings":";;AAAA,SAASA,MAAM,IAAIC,SAAS,QAAQ,gBAAgB;AACpD,OAAO,KAAKC,EAAE,MAAM,sBAAsB;AAE1C,SAASC,CAAC,QAAQ,yCAAyC;AAC3D,SAASC,gBAAgB,QAAQ,cAAc;AAC/C,SAASC,eAAe,QAAQ,uBAAuB;AASvD,OAAO,SAASC,gBAAgBA,CAACC,KAA4B,EAAE;EAC7D,IAAI,CAACC,4BAA4B,CAACD,KAAK,CAAC,EAAE;IACxC,OAAAE,iBAAA,CAAQP,EAAE,CAACQ,eAAe,EAAAC,YAAA,CAAKJ,KAAK;MAAA,IAAAK,SAAA;QAAA,OAAGL,KAAK,CAACK,QAAQ;MAAA;IAAA;EACvD;EAEA,MAAM;IAAEC,IAAI;IAAE,GAAGC;EAAU,CAAC,GAAGP,KAAK;EACpC,MAAMP,MAAM,GAAGc,SAAS,CAACd,MAAM,IAAIC,SAAS,CAACY,IAAI,CAAC;EAElD,MAAME,YAAY,GAAGD,SAAS,CAACE,IAAI,IAAIH,IAAI,CAACG,IAAI;EAEhD,IAAI,CAACD,YAAY,IAAIA,YAAY,KAAK,EAAE,EAAE;IACxCX,gBAAgB,CAACD,CAAC,CAACc,OAAO,EAAE;MAAEC,IAAI,EAAE,+BAA+B;MAAEC,MAAM,EAAEN;IAAK,CAAC,CAAC;EACtF;EAEA,MAAMG,IAAI,GAAGd,EAAE,CAACkB,eAAe,CAAC,CAAC,CAACC,OAAO,CAACN,YAAY,EAAG,MAAM,CAAC;EAEhE,OAAAN,iBAAA,CAAQP,EAAE,CAACQ,eAAe,EAAAC,YAAA,CAAKJ,KAAK;IAAES,IAAI,EAAEA,IAAI;IAAEhB,MAAM,EAAEA,MAAM;IAAA,IAAAY,SAAA;MAAA,OAAAH,iBAAA,CAC3DJ,eAAe;QAACQ,IAAI,EAAEA,IAAI;QAAA,IAAAD,SAAA;UAAA,OAAGE,SAAS,CAACF,QAAQ;QAAA;MAAA;IAAA;EAAA;AAEtD;AAEA,SAASJ,4BAA4BA,CACnCD,KAA4B,EACS;EACrC,OAAO,MAAM,IAAIA,KAAK;AACxB","ignoreList":[]}
|
|
@@ -4,5 +4,5 @@ export interface UnionExpressionProps {
|
|
|
4
4
|
type: Union | Enum;
|
|
5
5
|
children?: Children;
|
|
6
6
|
}
|
|
7
|
-
export declare function UnionExpression({ type, children }: UnionExpressionProps): any;
|
|
7
|
+
export declare function UnionExpression({ type, children }: UnionExpressionProps): string | number | boolean | void | any[] | (() => Children) | import("@alloy-js/core").Ref<any, any> | import("@alloy-js/core").Refkey | null;
|
|
8
8
|
//# sourceMappingURL=union-expression.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"union-expression.d.ts","sourceRoot":"","sources":["../../../../src/typescript/components/union-expression.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAW,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"union-expression.d.ts","sourceRoot":"","sources":["../../../../src/typescript/components/union-expression.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAW,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,oBAAoB,iJA0BvE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/typescript/utils/operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAuB,MAAM,gBAAgB,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAI3E,wBAAgB,aAAa,CAC3B,IAAI,EAAE,SAAS,EACf,OAAO,GAAE;IAAE,kBAAkB,EAAE,OAAO,CAAA;CAAkC,GACvE,IAAI,CAQN;AAED,MAAM,WAAW,gCAAgC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC;IAC3D,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;CACzC;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,KAAK,EACX,OAAO,GAAE,gCAAqC,iEAoB/C;AAED,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,aAAa,GAC3B,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/typescript/utils/operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAuB,MAAM,gBAAgB,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAI3E,wBAAgB,aAAa,CAC3B,IAAI,EAAE,SAAS,EACf,OAAO,GAAE;IAAE,kBAAkB,EAAE,OAAO,CAAA;CAAkC,GACvE,IAAI,CAQN;AAED,MAAM,WAAW,gCAAgC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC;IAC3D,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;CACzC;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,KAAK,EACX,OAAO,GAAE,gCAAqC,iEAoB/C;AAED,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,aAAa,GAC3B,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAWlC"}
|
|
@@ -35,9 +35,10 @@ export function buildParameterDescriptors(type, options = {}) {
|
|
|
35
35
|
export function buildParameterDescriptor(modelProperty) {
|
|
36
36
|
const namePolicy = ts.useTSNamePolicy();
|
|
37
37
|
const paramName = namePolicy.getName(modelProperty.name, "parameter");
|
|
38
|
+
const isOptional = modelProperty.optional || modelProperty.defaultValue !== undefined;
|
|
38
39
|
const paramDescriptor = {
|
|
39
40
|
refkey: getRefkey(modelProperty),
|
|
40
|
-
optional:
|
|
41
|
+
optional: isOptional,
|
|
41
42
|
type: TypeExpression({
|
|
42
43
|
type: modelProperty.type
|
|
43
44
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation.js","names":["refkey","getRefkey","ts","$","TypeExpression","getReturnType","type","options","skipErrorFiltering","returnType","kind","union","filter","variant","isError","buildParameterDescriptors","mode","params","operationParams","modelProperties","model","getProperties","prop","values","paramName","paramDescriptor","buildParameterDescriptor","allParams","modelProperty","namePolicy","useTSNamePolicy","getName","name","optional"],"sources":["../../../../src/typescript/utils/operation.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAmBA,MAAM,IAAIC,SAAS,QAAQ,gBAAgB;AAC9D,OAAO,KAAKC,EAAE,MAAM,sBAAsB;AAE1C,SAASC,CAAC,QAAQ,yCAAyC;AAC3D,SAASC,cAAc;AAEvB,OAAO,SAASC,aAAaA,CAC3BC,IAAe,EACfC,OAAwC,GAAG;EAAEC,kBAAkB,EAAE;AAAM,CAAC,EAClE;EACN,IAAIC,UAAU,GAAGH,IAAI,CAACG,UAAU;EAEhC,IAAI,CAACF,OAAO,CAACC,kBAAkB,IAAIF,IAAI,CAACG,UAAU,CAACC,IAAI,KAAK,OAAO,EAAE;IACnED,UAAU,GAAGN,CAAC,CAACQ,KAAK,CAACC,MAAM,CAACN,IAAI,CAACG,UAAU,EAAGI,OAAO,IAAK,CAACV,CAAC,CAACG,IAAI,CAACQ,OAAO,CAACD,OAAO,CAACP,IAAI,CAAC,CAAC;EAC1F;EAEA,OAAOG,UAAU;AACnB;AAOA,OAAO,SAASM,yBAAyBA,CACvCT,IAAW,EACXC,OAAyC,GAAG,CAAC,CAAC,EAC9C;EACA,IAAIA,OAAO,CAACS,IAAI,KAAK,SAAS,EAAE;IAC9B,OAAOT,OAAO,CAACU,MAAM;EACvB;EACA,MAAMC,eAAkE,GAAG,CAAC,CAAC;EAE7E,MAAMC,eAAe,GAAGhB,CAAC,CAACiB,KAAK,CAACC,aAAa,CAACf,IAAI,CAAC;EACnD,KAAK,MAAMgB,IAAI,IAAIH,eAAe,CAACI,MAAM,CAAC,CAAC,EAAE;IAC3C,MAAM,CAACC,SAAS,EAAEC,eAAe,CAAC,GAAGC,wBAAwB,CAACJ,IAAI,CAAC;IACnEJ,eAAe,CAACM,SAAS,CAAC,GAAGC,eAAe;EAC9C;;EAEA;EACA,MAAME,SAAS,GACbpB,OAAO,CAACS,IAAI,KAAK,QAAQ,GACrB;IAAE,GAAGE,eAAe;IAAE,GAAGX,OAAO,CAACU;EAAO,CAAC,GACzC;IAAE,GAAGV,OAAO,CAACU,MAAM;IAAE,GAAGC;EAAgB,CAAC;EAE/C,OAAOS,SAAS;AAClB;AAEA,OAAO,SAASD,wBAAwBA,CACtCE,aAA4B,EACM;EAClC,MAAMC,UAAU,GAAG3B,EAAE,CAAC4B,eAAe,CAAC,CAAC;EACvC,MAAMN,SAAS,GAAGK,UAAU,CAACE,OAAO,CAACH,aAAa,CAACI,IAAI,EAAE,WAAW,CAAC;EACrE,
|
|
1
|
+
{"version":3,"file":"operation.js","names":["refkey","getRefkey","ts","$","TypeExpression","getReturnType","type","options","skipErrorFiltering","returnType","kind","union","filter","variant","isError","buildParameterDescriptors","mode","params","operationParams","modelProperties","model","getProperties","prop","values","paramName","paramDescriptor","buildParameterDescriptor","allParams","modelProperty","namePolicy","useTSNamePolicy","getName","name","isOptional","optional","defaultValue","undefined"],"sources":["../../../../src/typescript/utils/operation.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAmBA,MAAM,IAAIC,SAAS,QAAQ,gBAAgB;AAC9D,OAAO,KAAKC,EAAE,MAAM,sBAAsB;AAE1C,SAASC,CAAC,QAAQ,yCAAyC;AAC3D,SAASC,cAAc;AAEvB,OAAO,SAASC,aAAaA,CAC3BC,IAAe,EACfC,OAAwC,GAAG;EAAEC,kBAAkB,EAAE;AAAM,CAAC,EAClE;EACN,IAAIC,UAAU,GAAGH,IAAI,CAACG,UAAU;EAEhC,IAAI,CAACF,OAAO,CAACC,kBAAkB,IAAIF,IAAI,CAACG,UAAU,CAACC,IAAI,KAAK,OAAO,EAAE;IACnED,UAAU,GAAGN,CAAC,CAACQ,KAAK,CAACC,MAAM,CAACN,IAAI,CAACG,UAAU,EAAGI,OAAO,IAAK,CAACV,CAAC,CAACG,IAAI,CAACQ,OAAO,CAACD,OAAO,CAACP,IAAI,CAAC,CAAC;EAC1F;EAEA,OAAOG,UAAU;AACnB;AAOA,OAAO,SAASM,yBAAyBA,CACvCT,IAAW,EACXC,OAAyC,GAAG,CAAC,CAAC,EAC9C;EACA,IAAIA,OAAO,CAACS,IAAI,KAAK,SAAS,EAAE;IAC9B,OAAOT,OAAO,CAACU,MAAM;EACvB;EACA,MAAMC,eAAkE,GAAG,CAAC,CAAC;EAE7E,MAAMC,eAAe,GAAGhB,CAAC,CAACiB,KAAK,CAACC,aAAa,CAACf,IAAI,CAAC;EACnD,KAAK,MAAMgB,IAAI,IAAIH,eAAe,CAACI,MAAM,CAAC,CAAC,EAAE;IAC3C,MAAM,CAACC,SAAS,EAAEC,eAAe,CAAC,GAAGC,wBAAwB,CAACJ,IAAI,CAAC;IACnEJ,eAAe,CAACM,SAAS,CAAC,GAAGC,eAAe;EAC9C;;EAEA;EACA,MAAME,SAAS,GACbpB,OAAO,CAACS,IAAI,KAAK,QAAQ,GACrB;IAAE,GAAGE,eAAe;IAAE,GAAGX,OAAO,CAACU;EAAO,CAAC,GACzC;IAAE,GAAGV,OAAO,CAACU,MAAM;IAAE,GAAGC;EAAgB,CAAC;EAE/C,OAAOS,SAAS;AAClB;AAEA,OAAO,SAASD,wBAAwBA,CACtCE,aAA4B,EACM;EAClC,MAAMC,UAAU,GAAG3B,EAAE,CAAC4B,eAAe,CAAC,CAAC;EACvC,MAAMN,SAAS,GAAGK,UAAU,CAACE,OAAO,CAACH,aAAa,CAACI,IAAI,EAAE,WAAW,CAAC;EACrE,MAAMC,UAAU,GAAGL,aAAa,CAACM,QAAQ,IAAIN,aAAa,CAACO,YAAY,KAAKC,SAAS;EACrF,MAAMX,eAAuC,GAAG;IAC9CzB,MAAM,EAAEC,SAAS,CAAC2B,aAAa,CAAC;IAChCM,QAAQ,EAAED,UAAU;IACpB3B,IAAI,EAAEF,cAAc,CAAC;MAAEE,IAAI,EAAEsB,aAAa,CAACtB;IAAK,CAAC;EACnD,CAAC;EAED,OAAO,CAACkB,SAAS,EAAEC,eAAe,CAAC;AACrC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typespec/emitter-framework",
|
|
3
|
-
"version": "0.3.0-dev.
|
|
3
|
+
"version": "0.3.0-dev.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -20,34 +20,36 @@
|
|
|
20
20
|
"description": "",
|
|
21
21
|
"peerDependencies": {
|
|
22
22
|
"@typespec/compiler": "~0.66.0 || >=0.67.0-dev <0.67.0",
|
|
23
|
-
"@typespec/
|
|
24
|
-
"@typespec/
|
|
23
|
+
"@typespec/http": "~0.66.0 || >=0.67.0-dev <0.67.0",
|
|
24
|
+
"@typespec/rest": "~0.66.0 || >=0.67.0-dev <0.67.0"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@alloy-js/core": "^0.5.0",
|
|
28
28
|
"@alloy-js/typescript": "^0.5.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
+
"@alloy-js/babel-preset": "^0.1.1",
|
|
31
32
|
"@babel/cli": "^7.24.8",
|
|
32
|
-
"@babel/core": "^7.26.
|
|
33
|
+
"@babel/core": "^7.26.9",
|
|
33
34
|
"@rollup/plugin-babel": "^6.0.4",
|
|
34
|
-
"@
|
|
35
|
+
"@types/minimist": "^1.2.5",
|
|
35
36
|
"concurrently": "^9.1.2",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"tree-sitter": "^0.
|
|
37
|
+
"minimist": "^1.2.8",
|
|
38
|
+
"prettier": "~3.5.3",
|
|
39
|
+
"tree-sitter": "^0.22.4",
|
|
39
40
|
"tree-sitter-c-sharp": "^0.23.0",
|
|
40
41
|
"tree-sitter-java": "^0.23.2",
|
|
41
42
|
"tree-sitter-javascript": "^0.23.0",
|
|
42
43
|
"tree-sitter-python": "^0.23.2",
|
|
43
44
|
"tree-sitter-typescript": "^0.23.0",
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"@types/minimist": "^1.2.5"
|
|
45
|
+
"typescript": "~5.8.2",
|
|
46
|
+
"vitest": "^3.0.7"
|
|
47
47
|
},
|
|
48
48
|
"scripts": {
|
|
49
49
|
"build-src": "babel src -d dist/src --extensions .ts,.tsx",
|
|
50
50
|
"build": "tsc -p . && npm run build-src",
|
|
51
|
+
"clean": "rimraf ./dist",
|
|
52
|
+
"format": "prettier . --write",
|
|
51
53
|
"watch-src": "babel src -d dist/src --extensions .ts,.tsx --watch",
|
|
52
54
|
"watch-tsc": "tsc -p . --watch",
|
|
53
55
|
"watch": "concurrently --kill-others \"npm run watch-tsc\" \"npm run watch-src\"",
|
|
@@ -271,36 +271,34 @@ function parseScenario(
|
|
|
271
271
|
);
|
|
272
272
|
|
|
273
273
|
for (const line of rawLines) {
|
|
274
|
-
if (line.startsWith("```")) {
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
break;
|
|
294
|
-
}
|
|
274
|
+
if (line.startsWith("```") && currentCodeBlock) {
|
|
275
|
+
// Close the code block
|
|
276
|
+
scenario.lines.push(currentCodeBlock);
|
|
277
|
+
if (!isTestCodeBlock(currentCodeBlock)) {
|
|
278
|
+
scenario.specBlock.content = currentCodeBlock.content;
|
|
279
|
+
} else {
|
|
280
|
+
for (const [template, fn] of Object.entries(outputCodeBlockTypes)) {
|
|
281
|
+
const templateRegex = new RegExp(
|
|
282
|
+
"^" + template.replace(/\{(\w+)\}/g, "(?<$1>[^\\s]+)") + "$",
|
|
283
|
+
);
|
|
284
|
+
|
|
285
|
+
const match = currentCodeBlock.heading.match(templateRegex);
|
|
286
|
+
if (match) {
|
|
287
|
+
currentCodeBlock.matchedTemplate = {
|
|
288
|
+
template,
|
|
289
|
+
fn,
|
|
290
|
+
namedArgs: match.groups ?? null,
|
|
291
|
+
};
|
|
292
|
+
break;
|
|
295
293
|
}
|
|
296
|
-
scenario.testBlocks.push(currentCodeBlock);
|
|
297
294
|
}
|
|
298
|
-
currentCodeBlock
|
|
299
|
-
} else {
|
|
300
|
-
const codeBlockKind = line.includes("tsp") || line.includes("typespec") ? "spec" : "test";
|
|
301
|
-
// Start a new code block
|
|
302
|
-
currentCodeBlock = { kind: codeBlockKind, heading: line.substring(3), content: [] };
|
|
295
|
+
scenario.testBlocks.push(currentCodeBlock);
|
|
303
296
|
}
|
|
297
|
+
currentCodeBlock = null;
|
|
298
|
+
} else if (line.startsWith("```")) {
|
|
299
|
+
const codeBlockKind = line.includes("tsp") || line.includes("typespec") ? "spec" : "test";
|
|
300
|
+
// Start a new code block
|
|
301
|
+
currentCodeBlock = { kind: codeBlockKind, heading: line.substring(3), content: [] };
|
|
304
302
|
} else if (currentCodeBlock) {
|
|
305
303
|
// Append to code block content
|
|
306
304
|
currentCodeBlock.content.push(line);
|
|
@@ -100,7 +100,7 @@ class SnippetExtractorImpl implements SnippetExtractor {
|
|
|
100
100
|
|
|
101
101
|
constructor(languageConfiguration: LanguageConfiguration) {
|
|
102
102
|
this.parser = new Parser();
|
|
103
|
-
this.parser.setLanguage(languageConfiguration.language);
|
|
103
|
+
this.parser.setLanguage(languageConfiguration.language as any);
|
|
104
104
|
this.languageConfiguration = languageConfiguration;
|
|
105
105
|
}
|
|
106
106
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Children,
|
|
1
|
+
import { Children, refkey as getRefkey, mapJoin } from "@alloy-js/core";
|
|
2
2
|
import * as ts from "@alloy-js/typescript";
|
|
3
3
|
import { Interface, Model, ModelProperty, Operation, RekeyableMap } from "@typespec/compiler";
|
|
4
4
|
import { $ } from "@typespec/compiler/experimental/typekit";
|
|
@@ -84,14 +84,13 @@ function getExtendsType(type: Model | Interface): Children | undefined {
|
|
|
84
84
|
|
|
85
85
|
const extending: Children[] = [];
|
|
86
86
|
|
|
87
|
-
const recordExtends = code`Record<string, unknown>`;
|
|
88
|
-
|
|
89
87
|
if (type.baseModel) {
|
|
90
88
|
if ($.array.is(type.baseModel)) {
|
|
91
89
|
extending.push(<TypeExpression type={type.baseModel} />);
|
|
92
90
|
} else if ($.record.is(type.baseModel)) {
|
|
93
|
-
|
|
94
|
-
//
|
|
91
|
+
// Here we are in the additional properties land.
|
|
92
|
+
// Instead of extending we need to create an envelope property
|
|
93
|
+
// do nothing here.
|
|
95
94
|
} else {
|
|
96
95
|
extending.push(getRefkey(type.baseModel));
|
|
97
96
|
}
|
|
@@ -120,11 +119,15 @@ function membersFromType(type: Model | Interface) {
|
|
|
120
119
|
let typeMembers: RekeyableMap<string, ModelProperty | Operation> | undefined;
|
|
121
120
|
if ($.model.is(type)) {
|
|
122
121
|
typeMembers = $.model.getProperties(type);
|
|
123
|
-
const
|
|
124
|
-
if (
|
|
122
|
+
const additionalProperties = $.model.getAdditionalPropertiesRecord(type);
|
|
123
|
+
if (additionalProperties) {
|
|
125
124
|
typeMembers.set(
|
|
126
125
|
"additionalProperties",
|
|
127
|
-
$.modelProperty.create({
|
|
126
|
+
$.modelProperty.create({
|
|
127
|
+
name: "additionalProperties",
|
|
128
|
+
optional: true,
|
|
129
|
+
type: additionalProperties,
|
|
130
|
+
}),
|
|
128
131
|
);
|
|
129
132
|
}
|
|
130
133
|
} else {
|
|
@@ -15,7 +15,7 @@ export function InterfaceMember({ type, optional }: InterfaceMemberProps) {
|
|
|
15
15
|
const name = namer.getName(type.name, "object-member-getter");
|
|
16
16
|
|
|
17
17
|
if ($.modelProperty.is(type)) {
|
|
18
|
-
const optionality =
|
|
18
|
+
const optionality = optional === true || type.optional === true ? "?" : "";
|
|
19
19
|
|
|
20
20
|
if (isNeverType(type.type)) {
|
|
21
21
|
return null;
|
|
@@ -3,11 +3,11 @@ import * as ts from "@alloy-js/typescript";
|
|
|
3
3
|
|
|
4
4
|
export const DateRfc3339SerializerRefkey = refkey();
|
|
5
5
|
export function DateRfc3339Serializer() {
|
|
6
|
-
return <ts.FunctionDeclaration export name="DateRfc3339Serializer" returnType="string
|
|
7
|
-
<ts.FunctionDeclaration.Parameters>date?: Date</ts.FunctionDeclaration.Parameters>
|
|
6
|
+
return <ts.FunctionDeclaration export name="DateRfc3339Serializer" returnType="string" refkey={DateRfc3339SerializerRefkey}>
|
|
7
|
+
<ts.FunctionDeclaration.Parameters>date?: Date | null</ts.FunctionDeclaration.Parameters>
|
|
8
8
|
{code`
|
|
9
9
|
if (!date) {
|
|
10
|
-
return
|
|
10
|
+
return date as any
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
return date.toISOString();
|
|
@@ -17,11 +17,11 @@ export function DateRfc3339Serializer() {
|
|
|
17
17
|
|
|
18
18
|
export const DateRfc7231SerializerRefkey = refkey();
|
|
19
19
|
export function DateRfc7231Serializer() {
|
|
20
|
-
return <ts.FunctionDeclaration export name="DateRfc7231Serializer" returnType="string
|
|
21
|
-
<ts.FunctionDeclaration.Parameters>date?: Date</ts.FunctionDeclaration.Parameters>
|
|
20
|
+
return <ts.FunctionDeclaration export name="DateRfc7231Serializer" returnType="string" refkey={DateRfc7231SerializerRefkey}>
|
|
21
|
+
<ts.FunctionDeclaration.Parameters>date?: Date | null</ts.FunctionDeclaration.Parameters>
|
|
22
22
|
{code`
|
|
23
23
|
if (!date) {
|
|
24
|
-
return
|
|
24
|
+
return date as any;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
return date.toUTCString();
|
|
@@ -31,11 +31,11 @@ export function DateRfc7231Serializer() {
|
|
|
31
31
|
|
|
32
32
|
export const DateDeserializerRefkey = refkey();
|
|
33
33
|
export function DateDeserializer() {
|
|
34
|
-
return <ts.FunctionDeclaration export name="DateDeserializer" returnType="Date
|
|
35
|
-
<ts.FunctionDeclaration.Parameters>date?: string</ts.FunctionDeclaration.Parameters>
|
|
34
|
+
return <ts.FunctionDeclaration export name="DateDeserializer" returnType="Date" refkey={DateDeserializerRefkey}>
|
|
35
|
+
<ts.FunctionDeclaration.Parameters>date?: string | null</ts.FunctionDeclaration.Parameters>
|
|
36
36
|
{code`
|
|
37
37
|
if (!date) {
|
|
38
|
-
return
|
|
38
|
+
return date as any;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
return new Date(date);
|
|
@@ -45,11 +45,11 @@ export function DateDeserializer() {
|
|
|
45
45
|
|
|
46
46
|
export const DateUnixTimestampDeserializerRefkey = refkey();
|
|
47
47
|
export function DateUnixTimestampDeserializer() {
|
|
48
|
-
return <ts.FunctionDeclaration export name="DateUnixTimestampDeserializer" returnType="Date
|
|
49
|
-
<ts.FunctionDeclaration.Parameters>date?: number</ts.FunctionDeclaration.Parameters>
|
|
48
|
+
return <ts.FunctionDeclaration export name="DateUnixTimestampDeserializer" returnType="Date" refkey={DateUnixTimestampDeserializerRefkey}>
|
|
49
|
+
<ts.FunctionDeclaration.Parameters>date?: number | null</ts.FunctionDeclaration.Parameters>
|
|
50
50
|
{code`
|
|
51
51
|
if (!date) {
|
|
52
|
-
return
|
|
52
|
+
return date as any;
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
return new Date(date * 1000);
|
|
@@ -59,11 +59,11 @@ export function DateUnixTimestampDeserializer() {
|
|
|
59
59
|
|
|
60
60
|
export const DateRfc7231DeserializerRefkey = refkey();
|
|
61
61
|
export function DateRfc7231Deserializer() {
|
|
62
|
-
return <ts.FunctionDeclaration export name="DateRfc7231Deserializer" returnType="Date
|
|
63
|
-
<ts.FunctionDeclaration.Parameters>date?: string</ts.FunctionDeclaration.Parameters>
|
|
62
|
+
return <ts.FunctionDeclaration export name="DateRfc7231Deserializer" returnType="Date" refkey={DateRfc7231DeserializerRefkey}>
|
|
63
|
+
<ts.FunctionDeclaration.Parameters>date?: string | null</ts.FunctionDeclaration.Parameters>
|
|
64
64
|
{code`
|
|
65
65
|
if (!date) {
|
|
66
|
-
return
|
|
66
|
+
return date as any;
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
return new Date(date);
|
|
@@ -73,11 +73,11 @@ export function DateRfc7231Deserializer() {
|
|
|
73
73
|
|
|
74
74
|
export const DateUnixTimestampSerializerRefkey = refkey();
|
|
75
75
|
export function DateUnixTimestampSerializer() {
|
|
76
|
-
return <ts.FunctionDeclaration export name="DateUnixTimestampSerializer" returnType="number
|
|
77
|
-
<ts.FunctionDeclaration.Parameters>date?: Date</ts.FunctionDeclaration.Parameters>
|
|
76
|
+
return <ts.FunctionDeclaration export name="DateUnixTimestampSerializer" returnType="number" refkey={DateUnixTimestampSerializerRefkey}>
|
|
77
|
+
<ts.FunctionDeclaration.Parameters>date?: Date | null</ts.FunctionDeclaration.Parameters>
|
|
78
78
|
{code`
|
|
79
79
|
if (!date) {
|
|
80
|
-
return
|
|
80
|
+
return date as any;
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
return Math.floor(date.getTime() / 1000);
|
|
@@ -87,13 +87,13 @@ export function DateUnixTimestampSerializer() {
|
|
|
87
87
|
|
|
88
88
|
export const RecordSerializerRefkey = refkey();
|
|
89
89
|
export function RecordSerializer() {
|
|
90
|
-
const recordType = `Record<string, any
|
|
90
|
+
const recordType = `Record<string, any>`;
|
|
91
91
|
const convertFnType = `(item: any) => any`;
|
|
92
92
|
return <ts.FunctionDeclaration export name="RecordSerializer" returnType={recordType} refkey={RecordSerializerRefkey}>
|
|
93
93
|
<ts.FunctionDeclaration.Parameters>record?: {recordType}, convertFn?: {convertFnType}</ts.FunctionDeclaration.Parameters>
|
|
94
94
|
{code`
|
|
95
95
|
if (!record) {
|
|
96
|
-
return
|
|
96
|
+
return record as any;
|
|
97
97
|
}
|
|
98
98
|
const output: Record<string, any> = {};
|
|
99
99
|
|
|
@@ -111,13 +111,13 @@ export function RecordSerializer() {
|
|
|
111
111
|
|
|
112
112
|
export const ArraySerializerRefkey = refkey();
|
|
113
113
|
export function ArraySerializer() {
|
|
114
|
-
const arrayType = `any[]
|
|
114
|
+
const arrayType = `any[]`;
|
|
115
115
|
const convertFnType = `(item: any) => any`;
|
|
116
116
|
return <ts.FunctionDeclaration export name="ArraySerializer" returnType={arrayType} refkey={ArraySerializerRefkey}>
|
|
117
117
|
<ts.FunctionDeclaration.Parameters>items?: {arrayType}, convertFn?: {convertFnType}</ts.FunctionDeclaration.Parameters>
|
|
118
118
|
{code`
|
|
119
119
|
if (!items) {
|
|
120
|
-
return
|
|
120
|
+
return items as any;
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
const output: any[] = [];
|
|
@@ -2,6 +2,7 @@ import { Children, code, mapJoin, Refkey, refkey } from "@alloy-js/core";
|
|
|
2
2
|
import * as ts from "@alloy-js/typescript";
|
|
3
3
|
import {
|
|
4
4
|
Discriminator,
|
|
5
|
+
getDiscriminatedUnion,
|
|
5
6
|
Model,
|
|
6
7
|
ModelProperty,
|
|
7
8
|
RekeyableMap,
|
|
@@ -11,7 +12,6 @@ import {
|
|
|
11
12
|
} from "@typespec/compiler";
|
|
12
13
|
import { $ } from "@typespec/compiler/experimental/typekit";
|
|
13
14
|
import { createRekeyableMap } from "@typespec/compiler/utils";
|
|
14
|
-
import { getDiscriminatedUnion } from "../../../../compiler/dist/src/core/helpers/discriminator-utils.js";
|
|
15
15
|
import { reportDiagnostic } from "../../lib.js";
|
|
16
16
|
import { reportTypescriptDiagnostic } from "../../typescript/lib.js";
|
|
17
17
|
import {
|
|
@@ -29,7 +29,7 @@ export function UnionDeclaration(props: UnionDeclarationProps) {
|
|
|
29
29
|
const name = ts.useTSNamePolicy().getName(originalName!, "type");
|
|
30
30
|
|
|
31
31
|
return <ts.TypeDeclaration {...props} name={name} refkey={refkey}>
|
|
32
|
-
<UnionExpression type={type}
|
|
32
|
+
<UnionExpression type={type}>{coreProps.children}</UnionExpression>
|
|
33
33
|
</ts.TypeDeclaration>;
|
|
34
34
|
}
|
|
35
35
|
|
|
@@ -51,9 +51,10 @@ export function buildParameterDescriptor(
|
|
|
51
51
|
): [string, ts.ParameterDescriptor] {
|
|
52
52
|
const namePolicy = ts.useTSNamePolicy();
|
|
53
53
|
const paramName = namePolicy.getName(modelProperty.name, "parameter");
|
|
54
|
+
const isOptional = modelProperty.optional || modelProperty.defaultValue !== undefined;
|
|
54
55
|
const paramDescriptor: ts.ParameterDescriptor = {
|
|
55
56
|
refkey: getRefkey(modelProperty),
|
|
56
|
-
optional:
|
|
57
|
+
optional: isOptional,
|
|
57
58
|
type: TypeExpression({ type: modelProperty.type }),
|
|
58
59
|
};
|
|
59
60
|
|
|
@@ -203,6 +203,7 @@ describe("Typescript Interface", () => {
|
|
|
203
203
|
}
|
|
204
204
|
export interface DifferentSpreadModelDerived extends DifferentSpreadModelRecord {
|
|
205
205
|
derivedProp: ModelForRecord;
|
|
206
|
+
additionalProperties?: Record<string, ModelForRecord>;
|
|
206
207
|
}
|
|
207
208
|
`,
|
|
208
209
|
{
|
|
@@ -240,10 +241,11 @@ describe("Typescript Interface", () => {
|
|
|
240
241
|
assert(testFile, "test.ts file not rendered");
|
|
241
242
|
const actualContent = await format(testFile.contents as string, { parser: "typescript" });
|
|
242
243
|
const expectedContent = await format(
|
|
243
|
-
`export interface Widget
|
|
244
|
+
`export interface Widget {
|
|
244
245
|
id: string;
|
|
245
246
|
weight: number;
|
|
246
247
|
color: "blue" | "red";
|
|
248
|
+
additionalProperties?: Record<string, unknown>;
|
|
247
249
|
}`,
|
|
248
250
|
{
|
|
249
251
|
parser: "typescript",
|