@typespec/http 0.64.0 → 0.65.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,6 @@
1
1
  import { DiagnosticResult, Type, type ModelProperty, type Program } from "@typespec/compiler";
2
2
  import { Visibility } from "./metadata.js";
3
+ import { HttpPayloadDisposition } from "./payload.js";
3
4
  import { CookieParameterOptions, HeaderFieldOptions, PathParameterOptions, QueryParameterOptions } from "./types.js";
4
5
  export type HttpProperty = HeaderProperty | CookieProperty | ContentTypeProperty | QueryProperty | PathProperty | StatusCodeProperty | BodyProperty | BodyRootProperty | MultipartBodyProperty | BodyPropertyProperty;
5
6
  export interface HttpPropertyBase {
@@ -50,5 +51,5 @@ export interface GetHttpPropertyOptions {
50
51
  *
51
52
  * @param rootMapOut If provided, the map will be populated to link nested metadata properties to their root properties.
52
53
  */
53
- export declare function resolvePayloadProperties(program: Program, type: Type, visibility: Visibility, options?: GetHttpPropertyOptions): DiagnosticResult<HttpProperty[]>;
54
+ export declare function resolvePayloadProperties(program: Program, type: Type, visibility: Visibility, disposition: HttpPayloadDisposition, options?: GetHttpPropertyOptions): DiagnosticResult<HttpProperty[]>;
54
55
  //# sourceMappingURL=http-property.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-property.d.ts","sourceRoot":"","sources":["../../src/http-property.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAEhB,IAAI,EAKJ,KAAK,aAAa,EAClB,KAAK,OAAO,EACb,MAAM,oBAAoB,CAAC;AAY5B,OAAO,EAAE,UAAU,EAAa,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,cAAc,GACd,mBAAmB,GACnB,aAAa,GACb,YAAY,GACZ,kBAAkB,GAClB,YAAY,GACZ,gBAAgB,GAChB,qBAAqB,GACrB,oBAAoB,CAAC;AAEzB,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,iFAAiF;IACjF,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;CAC1C;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,WAAW,aAAc,SAAQ,gBAAgB;IACrD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;CACzC;AACD,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;CACxC;AACD,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;IAC1D,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;CAC7B;AACD,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AACD,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AACD,MAAM,WAAW,qBAAsB,SAAQ,gBAAgB;IAC7D,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;CAChC;AACD,0CAA0C;AAC1C,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,aAAa,KACjB,oBAAoB,GAAG,qBAAqB,GAAG,SAAS,CAAC;CAC/D;AAsHD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,OAAO,GAAE,sBAA2B,GACnC,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAmElC"}
1
+ {"version":3,"file":"http-property.d.ts","sourceRoot":"","sources":["../../src/http-property.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,gBAAgB,EAEhB,IAAI,EAGJ,KAAK,aAAa,EAClB,KAAK,OAAO,EACb,MAAM,oBAAoB,CAAC;AAY5B,OAAO,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,cAAc,GACd,mBAAmB,GACnB,aAAa,GACb,YAAY,GACZ,kBAAkB,GAClB,YAAY,GACZ,gBAAgB,GAChB,qBAAqB,GACrB,oBAAoB,CAAC;AAEzB,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,iFAAiF;IACjF,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;CAC1C;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,WAAW,aAAc,SAAQ,gBAAgB;IACrD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;CACzC;AACD,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;CACxC;AACD,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;IAC1D,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;CAC7B;AACD,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AACD,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AACD,MAAM,WAAW,qBAAsB,SAAQ,gBAAgB;IAC7D,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;CAChC;AACD,0CAA0C;AAC1C,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,aAAa,KACjB,oBAAoB,GAAG,qBAAqB,GAAG,SAAS,CAAC;CAC/D;AAsHD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,sBAAsB,EACnC,OAAO,GAAE,sBAA2B,GACnC,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAmElC"}
@@ -1,7 +1,8 @@
1
1
  import { compilerAssert, createDiagnosticCollector, walkPropertiesInherited, } from "@typespec/compiler";
2
2
  import { getCookieParamOptions, getHeaderFieldOptions, getPathParamOptions, getQueryParamOptions, isBody, isBodyRoot, isMultipartBodyProperty, isStatusCode, } from "./decorators.js";
3
3
  import { createDiagnostic } from "./lib.js";
4
- import { Visibility, isVisible } from "./metadata.js";
4
+ import { isVisible } from "./metadata.js";
5
+ import { HttpPayloadDisposition } from "./payload.js";
5
6
  /**
6
7
  * Find the type of a property in a model
7
8
  */
@@ -113,7 +114,7 @@ function getHttpProperty(program, property, path, options = {}) {
113
114
  *
114
115
  * @param rootMapOut If provided, the map will be populated to link nested metadata properties to their root properties.
115
116
  */
116
- export function resolvePayloadProperties(program, type, visibility, options = {}) {
117
+ export function resolvePayloadProperties(program, type, visibility, disposition, options = {}) {
117
118
  const diagnostics = createDiagnosticCollector();
118
119
  const httpProperties = new Map();
119
120
  if (type.kind !== "Model" || type.properties.size === 0) {
@@ -130,12 +131,12 @@ export function resolvePayloadProperties(program, type, visibility, options = {}
130
131
  continue;
131
132
  }
132
133
  let httpProperty = diagnostics.pipe(getHttpProperty(program, property, propPath, options));
133
- if (shouldTreatAsBodyProperty(httpProperty, visibility)) {
134
+ if (shouldTreatAsBodyProperty(httpProperty, disposition)) {
134
135
  httpProperty = { kind: "bodyProperty", property, path: propPath };
135
136
  }
136
137
  // Ignore cookies in response to avoid future breaking changes to @cookie.
137
138
  // https://github.com/microsoft/typespec/pull/4761#discussion_r1805082132
138
- if (httpProperty.kind === "cookie" && visibility & Visibility.Read) {
139
+ if (httpProperty.kind === "cookie" && disposition === HttpPayloadDisposition.Response) {
139
140
  diagnostics.add(createDiagnostic({
140
141
  code: "response-cookie-not-supported",
141
142
  target: property,
@@ -169,13 +170,17 @@ export function resolvePayloadProperties(program, type, visibility, options = {}
169
170
  function isModelWithProperties(type) {
170
171
  return type.kind === "Model" && !type.indexer && type.properties.size > 0;
171
172
  }
172
- function shouldTreatAsBodyProperty(property, visibility) {
173
- if (visibility & Visibility.Read) {
174
- return property.kind === "query" || property.kind === "path";
173
+ function shouldTreatAsBodyProperty(property, disposition) {
174
+ switch (disposition) {
175
+ case HttpPayloadDisposition.Request:
176
+ return property.kind === "statusCode";
177
+ case HttpPayloadDisposition.Response:
178
+ return property.kind === "query" || property.kind === "path";
179
+ case HttpPayloadDisposition.Multipart:
180
+ return (property.kind === "path" || property.kind === "query" || property.kind === "statusCode");
181
+ default:
182
+ void disposition;
183
+ return false;
175
184
  }
176
- if (!(visibility & Visibility.Read)) {
177
- return property.kind === "statusCode";
178
- }
179
- return false;
180
185
  }
181
186
  //# sourceMappingURL=http-property.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-property.js","sourceRoot":"","sources":["../../src/http-property.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-property.js","sourceRoot":"","sources":["../../src/http-property.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { ModelProperty, Operation, Program, Type } from "@typespec/compiler";
2
- import { HttpVerb } from "./types.js";
1
+ import { ModelProperty, Operation, Program, Type, VisibilityProvider } from "@typespec/compiler";
2
+ import { HttpVerb, OperationParameterOptions } from "./types.js";
3
3
  /**
4
4
  * Flags enum representation of well-known visibilities that are used in
5
5
  * REST API.
@@ -15,13 +15,34 @@ export declare enum Visibility {
15
15
  /**
16
16
  * Additional flag to indicate when something is nested in a collection
17
17
  * and therefore no metadata is applicable.
18
+ *
19
+ * Never use this flag. It is used internally by the HTTP core.
18
20
  */
19
21
  Item = 1048576,
20
22
  /**
21
23
  * Additional flag to indicate when the verb is path and therefore
22
24
  * will have fields made optional if request visibility includes update.
25
+ *
26
+ * Never use this flag. It is used internally by the HTTP core.
27
+ */
28
+ Patch = 2097152,
29
+ /**
30
+ * Additional flag to indicate that legacy parameter visibility behavior
31
+ * should be used. This disables effective optionality for the body of
32
+ * PATCH operations, and considers only properties that do not have _explicit_
33
+ * visibility visible. This flag is activated by default when an operation
34
+ * uses `@parameterVisibility` without arguments, and should not be enabled
35
+ * in any other circumstances.
36
+ *
37
+ * Never use this flag. It is used internally by the HTTP core.
23
38
  */
24
- Patch = 2097152
39
+ LegacyParameterVisibility = 4194304,
40
+ /**
41
+ * Additional flags to indicate the treatment of properties in specific contexts.
42
+ *
43
+ * Never use these flags. They are used internally by the HTTP core.
44
+ */
45
+ Synthetic = 7340032
25
46
  }
26
47
  /**
27
48
  * Provides a naming suffix to create a unique name for a type with this
@@ -38,7 +59,7 @@ export declare enum Visibility {
38
59
  * - Visibility.Create | Visibility.Item => "CreateItem"
39
60
  * - Visibility.Create | Visibility.Update | Visibility.Item => "CreateOrUpdateItem"
40
61
  * */
41
- export declare function getVisibilitySuffix(visibility: Visibility, canonicalVisibility?: Visibility | undefined): string;
62
+ export declare function getVisibilitySuffix(visibility: Visibility, canonicalVisibility?: Visibility): string;
42
63
  /**
43
64
  * Determines the visibility to use for a request with the given verb.
44
65
  *
@@ -52,6 +73,49 @@ export declare function getVisibilitySuffix(visibility: Visibility, canonicalVis
52
73
  * @returns The applicable parameter visibility or visibilities for the request.
53
74
  */
54
75
  export declare function getRequestVisibility(verb: HttpVerb): Visibility;
76
+ /**
77
+ * A visibility provider for HTTP operations. Pass this value as a provider to the `getParameterVisibilityFilter` and
78
+ * `getReturnTypeVisibilityFilter` functions in the TypeSpec core to get the applicable parameter and return type
79
+ * visibility filters for an HTTP operation.
80
+ *
81
+ * When created with a verb, this provider will use the default visibility for that verb.
82
+ *
83
+ * @param verb - the HTTP verb for the operation
84
+ *
85
+ * @see {@link VisibilityProvider}
86
+ * @see {@link getParameterVisibilityFilter}
87
+ * @see {@link getReturnTypeVisibilityFilter}
88
+ */
89
+ export declare function HttpVisibilityProvider(verb: HttpVerb): VisibilityProvider;
90
+ /**
91
+ * A visibility provider for HTTP operations. Pass this value as a provider to the `getParameterVisibilityFilter` and
92
+ * `getReturnTypeVisibilityFilter` functions in the TypeSpec core to get the applicable parameter and return type
93
+ * visibility filters for an HTTP operation.
94
+ *
95
+ * When created with an options object, this provider will use the `verbSelector` function to determine the verb for the
96
+ * operation and use the default visibility for that verb, or the configured HTTP verb for the operation, and finally
97
+ * the GET verb if the verbSelector function is not defined and no HTTP verb is configured.
98
+ *
99
+ * @param options - an options object with a `verbSelector` function that returns the HTTP verb for the operation
100
+ *
101
+ * @see {@link VisibilityProvider}
102
+ * @see {@link getParameterVisibilityFilter}
103
+ * @see {@link getReturnTypeVisibilityFilter}
104
+ */
105
+ export declare function HttpVisibilityProvider(options: OperationParameterOptions): VisibilityProvider;
106
+ /**
107
+ * A visibility provider for HTTP operations. Pass this value as a provider to the `getParameterVisibilityFilter` and
108
+ * `getReturnTypeVisibilityFilter` functions in the TypeSpec core to get the applicable parameter and return type
109
+ * visibility filters for an HTTP operation.
110
+ *
111
+ * When created without any arguments, this provider will use the configured verb for the operation or the GET verb if
112
+ * no HTTP verb is configured and use the default visibility for that selected verb.
113
+ *
114
+ * @see {@link VisibilityProvider}
115
+ * @see {@link getParameterVisibilityFilter}
116
+ * @see {@link getReturnTypeVisibilityFilter}
117
+ */
118
+ export declare function HttpVisibilityProvider(): VisibilityProvider;
55
119
  /**
56
120
  * Returns the applicable parameter visibility or visibilities for the request if `@requestVisibility` was used.
57
121
  * Otherwise, returns the default visibility based on the HTTP verb for the operation.
@@ -131,7 +195,7 @@ export interface MetadataInfoOptions {
131
195
  /**
132
196
  * The visibility to be used as the baseline against which
133
197
  * {@link MetadataInfo.isEmptied} and {@link MetadataInfo.isTransformed}
134
- * are computed. If not specified, {@link Visibility.None} is used, which
198
+ * are computed. If not specified, {@link Visibility.All} is used, which
135
199
  * will consider that any model that has fields that are only visible to
136
200
  * some visibilities as transformed.
137
201
  */
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,aAAa,EACb,SAAS,EACT,OAAO,EACP,IAAI,EAEL,MAAM,oBAAoB,CAAC;AAc5B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;GAGG;AACH,oBAAY,UAAU;IACpB,IAAI,IAAS;IACb,MAAM,IAAS;IACf,MAAM,IAAS;IACf,MAAM,IAAS;IACf,KAAK,KAAS;IAEd,IAAI,IAAI;IACR,GAAG,KAA0C;IAE7C;;;OAGG;IACH,IAAI,UAAU;IAEd;;;OAGG;IACH,KAAK,UAAU;CAChB;AA+DD;;;;;;;;;;;;;;MAcM;AACN,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,mBAAmB,GAAE,UAAU,GAAG,SAA2B,UAc9D;AA6BD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAQ/D;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,QAAQ,GACb,UAAU,CAWZ;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,WAQnE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,WAG1F;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,UAAU,EAAE,UAAU,EACtB,kBAAkB,oBAAa,WAGhC;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,UAAU,EAAE,UAAU,EACtB,kBAAkB,oBAAa,WAGhC;AAqCD;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;OAUG;IACH,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC;IAEnE;;;;OAIG;IACH,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC;IAEvE;;;;OAIG;IACH,iBAAiB,CACf,QAAQ,EAAE,aAAa,EACvB,UAAU,EAAE,UAAU,EACtB,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC;IAEX;;;OAGG;IACH,UAAU,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC;IAErE;;;OAGG;IACH,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;CACnE;AAED,MAAM,WAAW,mBAAmB;IAClC;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,UAAU,CAAC;IAEjC;;;;;;;OAOG;IACH,gBAAgB,CAAC,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC;CACrD;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY,CAgLhG"}
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import { compilerAssert, getEffectiveModelType, getParameterVisibility, isVisible as isVisibleCore, } from "@typespec/compiler";
1
+ import { compilerAssert, getEffectiveModelType, getLifecycleVisibilityEnum, getParameterVisibilityFilter, isVisible as isVisibleCore, } from "@typespec/compiler";
2
2
  import { TwoLevelMap } from "@typespec/compiler/utils";
3
- import { includeInapplicableMetadataInPayload, isBody, isBodyIgnore, isBodyRoot, isCookieParam, isHeader, isMultipartBodyProperty, isPathParam, isQueryParam, isStatusCode, } from "./decorators.js";
3
+ import { getOperationVerb, includeInapplicableMetadataInPayload, isBody, isBodyIgnore, isBodyRoot, isCookieParam, isHeader, isMultipartBodyProperty, isPathParam, isQueryParam, isStatusCode, } from "./decorators.js";
4
+ import { getHttpOperation } from "./operations.js";
4
5
  /**
5
6
  * Flags enum representation of well-known visibilities that are used in
6
7
  * REST API.
@@ -17,19 +18,39 @@ export var Visibility;
17
18
  /**
18
19
  * Additional flag to indicate when something is nested in a collection
19
20
  * and therefore no metadata is applicable.
21
+ *
22
+ * Never use this flag. It is used internally by the HTTP core.
20
23
  */
21
24
  Visibility[Visibility["Item"] = 1048576] = "Item";
22
25
  /**
23
26
  * Additional flag to indicate when the verb is path and therefore
24
27
  * will have fields made optional if request visibility includes update.
28
+ *
29
+ * Never use this flag. It is used internally by the HTTP core.
25
30
  */
26
31
  Visibility[Visibility["Patch"] = 2097152] = "Patch";
32
+ /**
33
+ * Additional flag to indicate that legacy parameter visibility behavior
34
+ * should be used. This disables effective optionality for the body of
35
+ * PATCH operations, and considers only properties that do not have _explicit_
36
+ * visibility visible. This flag is activated by default when an operation
37
+ * uses `@parameterVisibility` without arguments, and should not be enabled
38
+ * in any other circumstances.
39
+ *
40
+ * Never use this flag. It is used internally by the HTTP core.
41
+ */
42
+ Visibility[Visibility["LegacyParameterVisibility"] = 4194304] = "LegacyParameterVisibility";
43
+ /**
44
+ * Additional flags to indicate the treatment of properties in specific contexts.
45
+ *
46
+ * Never use these flags. They are used internally by the HTTP core.
47
+ */
48
+ Visibility[Visibility["Synthetic"] = 7340032] = "Synthetic";
27
49
  })(Visibility || (Visibility = {}));
28
50
  const visibilityToArrayMap = new Map();
29
51
  function visibilityToArray(visibility) {
30
- // Item and Patch flags are not real visibilities.
31
- visibility &= ~Visibility.Item;
32
- visibility &= ~Visibility.Patch;
52
+ // Synthetic flags are not real visibilities.
53
+ visibility &= ~Visibility.Synthetic;
33
54
  let result = visibilityToArrayMap.get(visibility);
34
55
  if (!result) {
35
56
  result = [];
@@ -53,33 +74,96 @@ function visibilityToArray(visibility) {
53
74
  }
54
75
  return result;
55
76
  }
56
- function arrayToVisibility(array) {
57
- if (!array) {
58
- return undefined;
77
+ function filterToVisibility(program, filter) {
78
+ const Lifecycle = getLifecycleVisibilityEnum(program);
79
+ compilerAssert(!filter.all, "Unexpected: `all` constraint in visibility filter passed to filterToVisibility");
80
+ compilerAssert(!filter.none, "Unexpected: `none` constraint in visibility filter passed to filterToVisibility");
81
+ if (!filter.any) {
82
+ return Visibility.All;
59
83
  }
60
- let value = Visibility.None;
61
- for (const item of array) {
62
- switch (item) {
63
- case "read":
64
- value |= Visibility.Read;
65
- break;
66
- case "create":
67
- value |= Visibility.Create;
68
- break;
69
- case "update":
70
- value |= Visibility.Update;
71
- break;
72
- case "delete":
73
- value |= Visibility.Delete;
74
- break;
75
- case "query":
76
- value |= Visibility.Query;
77
- break;
78
- default:
79
- return undefined;
84
+ else {
85
+ let visibility = Visibility.None;
86
+ for (const modifierConstraint of filter.any ?? []) {
87
+ if (modifierConstraint.enum !== Lifecycle)
88
+ continue;
89
+ switch (modifierConstraint.name) {
90
+ case "Read":
91
+ visibility |= Visibility.Read;
92
+ break;
93
+ case "Create":
94
+ visibility |= Visibility.Create;
95
+ break;
96
+ case "Update":
97
+ visibility |= Visibility.Update;
98
+ break;
99
+ case "Delete":
100
+ visibility |= Visibility.Delete;
101
+ break;
102
+ case "Query":
103
+ visibility |= Visibility.Query;
104
+ break;
105
+ default:
106
+ compilerAssert(false, `Unreachable: unrecognized Lifecycle visibility member: '${modifierConstraint.name}'`);
107
+ }
108
+ }
109
+ return visibility;
110
+ }
111
+ }
112
+ const VISIBILITY_FILTER_CACHE_MAP = new WeakMap();
113
+ function getVisibilityFilterCache(program) {
114
+ let cache = VISIBILITY_FILTER_CACHE_MAP.get(program);
115
+ if (!cache) {
116
+ cache = new Map();
117
+ VISIBILITY_FILTER_CACHE_MAP.set(program, cache);
118
+ }
119
+ return cache;
120
+ }
121
+ /**
122
+ * Convert an HTTP visibility to a visibility filter that can be used to test core visibility and applied to a model.
123
+ *
124
+ * The Item and Patch visibility flags are ignored.
125
+ *
126
+ * @param program - the Program we're working in
127
+ * @param visibility - the visibility to convert to a filter
128
+ * @returns a VisibilityFilter object that selects properties having any of the given visibility flags
129
+ */
130
+ function visibilityToFilter(program, visibility) {
131
+ // Synthetic flags are not real visibilities.
132
+ visibility &= ~Visibility.Synthetic;
133
+ if (visibility === Visibility.All)
134
+ return {};
135
+ const cache = getVisibilityFilterCache(program);
136
+ let filter = cache.get(visibility);
137
+ if (!filter) {
138
+ const LifecycleEnum = getLifecycleVisibilityEnum(program);
139
+ const Lifecycle = {
140
+ Create: LifecycleEnum.members.get("Create"),
141
+ Read: LifecycleEnum.members.get("Read"),
142
+ Update: LifecycleEnum.members.get("Update"),
143
+ Delete: LifecycleEnum.members.get("Delete"),
144
+ Query: LifecycleEnum.members.get("Query"),
145
+ };
146
+ const any = new Set();
147
+ if (visibility & Visibility.Read) {
148
+ any.add(Lifecycle.Read);
80
149
  }
150
+ if (visibility & Visibility.Create) {
151
+ any.add(Lifecycle.Create);
152
+ }
153
+ if (visibility & Visibility.Update) {
154
+ any.add(Lifecycle.Update);
155
+ }
156
+ if (visibility & Visibility.Delete) {
157
+ any.add(Lifecycle.Delete);
158
+ }
159
+ if (visibility & Visibility.Query) {
160
+ any.add(Lifecycle.Query);
161
+ }
162
+ compilerAssert(any.size > 0 || visibility === Visibility.None, "invalid visibility");
163
+ filter = { any };
164
+ cache.set(visibility, filter);
81
165
  }
82
- return value;
166
+ return filter;
83
167
  }
84
168
  /**
85
169
  * Provides a naming suffix to create a unique name for a type with this
@@ -96,9 +180,9 @@ function arrayToVisibility(array) {
96
180
  * - Visibility.Create | Visibility.Item => "CreateItem"
97
181
  * - Visibility.Create | Visibility.Update | Visibility.Item => "CreateOrUpdateItem"
98
182
  * */
99
- export function getVisibilitySuffix(visibility, canonicalVisibility = Visibility.None) {
183
+ export function getVisibilitySuffix(visibility, canonicalVisibility = Visibility.All) {
100
184
  let suffix = "";
101
- if ((visibility & ~Visibility.Item & ~Visibility.Patch) !== canonicalVisibility) {
185
+ if ((visibility & ~Visibility.Synthetic) !== canonicalVisibility) {
102
186
  const visibilities = visibilityToArray(visibility);
103
187
  suffix += visibilities.map((v) => v[0].toUpperCase() + v.slice(1)).join("Or");
104
188
  }
@@ -129,8 +213,7 @@ function getDefaultVisibilityForVerb(verb) {
129
213
  case "delete":
130
214
  return Visibility.Delete;
131
215
  default:
132
- const _assertNever = verb;
133
- compilerAssert(false, "unreachable");
216
+ compilerAssert(false, `Unreachable: unrecognized HTTP verb: '${verb}'`);
134
217
  }
135
218
  }
136
219
  /**
@@ -154,6 +237,30 @@ export function getRequestVisibility(verb) {
154
237
  }
155
238
  return visibility;
156
239
  }
240
+ export function HttpVisibilityProvider(verbOrParameterOptions) {
241
+ const hasVerb = typeof verbOrParameterOptions === "string";
242
+ return {
243
+ parameters: (program, operation) => {
244
+ let verb = hasVerb
245
+ ? verbOrParameterOptions
246
+ : (verbOrParameterOptions?.verbSelector?.(program, operation) ??
247
+ getOperationVerb(program, operation));
248
+ if (!verb) {
249
+ const [httpOperation] = getHttpOperation(program, operation);
250
+ verb = httpOperation.verb;
251
+ }
252
+ return visibilityToFilter(program, getDefaultVisibilityForVerb(verb));
253
+ },
254
+ returnType: (program, _) => {
255
+ const Read = getLifecycleVisibilityEnum(program).members.get("Read");
256
+ // For return types, we always use Read visibility in HTTP.
257
+ return { any: new Set([Read]) };
258
+ },
259
+ };
260
+ }
261
+ // Hidden internal symbol to mark that parameter visibility was empty. This is used by HTTP
262
+ // to set the SkipEffectiveOptionality flag. This is a hack.
263
+ const parameterVisibilityIsEmpty = Symbol.for("TypeSpec.Visibility.ParameterVisibilityIsEmpty");
157
264
  /**
158
265
  * Returns the applicable parameter visibility or visibilities for the request if `@requestVisibility` was used.
159
266
  * Otherwise, returns the default visibility based on the HTTP verb for the operation.
@@ -162,15 +269,21 @@ export function getRequestVisibility(verb) {
162
269
  * @returns The applicable parameter visibility or visibilities for the request.
163
270
  */
164
271
  export function resolveRequestVisibility(program, operation, verb) {
165
- const parameterVisibility = getParameterVisibility(program, operation);
166
- const parameterVisibilityArray = arrayToVisibility(parameterVisibility);
167
- const defaultVisibility = getDefaultVisibilityForVerb(verb);
168
- let visibility = parameterVisibilityArray ?? defaultVisibility;
272
+ // WARNING: This is the only place where we call HttpVisibilityProvider _WITHIN_ the HTTP implementation itself. We
273
+ // _must_ provide the verb directly to the function as the first argument. If the verb is not provided directly, the
274
+ // provider calls getHttpOperation to resolve the verb. Since the current function is called from getHttpOperation, it
275
+ // will cause a stack overflow if the version of HttpVisibilityProvider we use here has to resolve the verb itself.
276
+ const parameterVisibilityFilter = getParameterVisibilityFilter(program, operation, HttpVisibilityProvider(verb));
277
+ let visibility = filterToVisibility(program, parameterVisibilityFilter);
169
278
  // If the verb is PATCH, then we need to add the patch flag to the visibility in order for
170
- // later processes to properly apply it
279
+ // later processes to properly apply it.
171
280
  if (verb === "patch") {
172
281
  visibility |= Visibility.Patch;
173
282
  }
283
+ const isEmptyParameterVisibility = program.stateSet(parameterVisibilityIsEmpty).has(operation);
284
+ if (isEmptyParameterVisibility) {
285
+ visibility |= Visibility.LegacyParameterVisibility;
286
+ }
174
287
  return visibility;
175
288
  }
176
289
  /**
@@ -188,8 +301,14 @@ export function isMetadata(program, property) {
188
301
  * Determines if the given property is visible with the given visibility.
189
302
  */
190
303
  export function isVisible(program, property, visibility) {
191
- // eslint-disable-next-line @typescript-eslint/no-deprecated
192
- return isVisibleCore(program, property, visibilityToArray(visibility));
304
+ if (visibility & Visibility.LegacyParameterVisibility) {
305
+ // This is a hack that preserves the behavior of `@parameterVisibility()` with no arguments for now.
306
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
307
+ return isVisibleCore(program, property, []);
308
+ }
309
+ else {
310
+ return isVisibleCore(program, property, visibilityToFilter(program, visibility));
311
+ }
193
312
  }
194
313
  /**
195
314
  * Determines if the given property is metadata that is applicable with the
@@ -233,7 +352,7 @@ function isApplicableMetadataCore(program, property, visibility, treatBodyAsMeta
233
352
  return true;
234
353
  }
235
354
  export function createMetadataInfo(program, options) {
236
- const canonicalVisibility = options?.canonicalVisibility ?? Visibility.None;
355
+ const canonicalVisibility = options?.canonicalVisibility ?? Visibility.All;
237
356
  const stateMap = new TwoLevelMap();
238
357
  return {
239
358
  isEmptied,
@@ -328,7 +447,8 @@ export function createMetadataInfo(program, options) {
328
447
  const hasUpdate = (visibility & Visibility.Update) !== 0;
329
448
  const isPatch = (visibility & Visibility.Patch) !== 0;
330
449
  const isItem = (visibility & Visibility.Item) !== 0;
331
- return property.optional || (hasUpdate && isPatch && !isItem);
450
+ const skipEffectiveOptionality = (visibility & Visibility.LegacyParameterVisibility) !== 0;
451
+ return property.optional || (!skipEffectiveOptionality && hasUpdate && isPatch && !isItem);
332
452
  }
333
453
  function isPayloadProperty(property, visibility, inExplicitBody, keepShareableProperties) {
334
454
  if (!inExplicitBody &&
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { createDiagnosticCollector, } from "@typespec/compiler";
2
2
  import { getOperationVerb } from "./decorators.js";
3
3
  import { createDiagnostic } from "./lib.js";
4
4
  import { resolveRequestVisibility } from "./metadata.js";
5
- import { resolveHttpPayload } from "./payload.js";
5
+ import { HttpPayloadDisposition, resolveHttpPayload } from "./payload.js";
6
6
  import { parseUriTemplate } from "./uri-template.js";
7
7
  export function getOperationParameters(program, operation, partialUriTemplate, overloadBase, options = {}) {
8
8
  const verb = (options?.verbSelector && options.verbSelector(program, operation)) ??
@@ -31,7 +31,7 @@ function getOperationParametersForVerb(program, operation, verb, partialUriTempl
31
31
  const visibility = resolveRequestVisibility(program, operation, verb);
32
32
  const parsedUriTemplate = parseUriTemplate(partialUriTemplate);
33
33
  const parameters = [];
34
- const { body: resolvedBody, metadata } = diagnostics.pipe(resolveHttpPayload(program, operation.parameters, visibility, "request", {
34
+ const { body: resolvedBody, metadata } = diagnostics.pipe(resolveHttpPayload(program, operation.parameters, visibility, HttpPayloadDisposition.Request, {
35
35
  implicitParameter: (param) => {
36
36
  const isTopLevel = param.model === operation.parameters;
37
37
  const uriParam = isTopLevel && parsedUriTemplate.parameters.find((x) => x.name === param.name);
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/parameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/parameters.ts"],"names":[],"mappings":"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"}
@@ -8,5 +8,22 @@ export interface HttpPayload {
8
8
  }
9
9
  export interface ExtractBodyAndMetadataOptions extends GetHttpPropertyOptions {
10
10
  }
11
- export declare function resolveHttpPayload(program: Program, type: Type, visibility: Visibility, usedIn: "request" | "response" | "multipart", options?: ExtractBodyAndMetadataOptions): [HttpPayload, readonly Diagnostic[]];
11
+ /**
12
+ * The disposition of a payload in an HTTP operation.
13
+ */
14
+ export declare enum HttpPayloadDisposition {
15
+ /**
16
+ * The payload appears in a request.
17
+ */
18
+ Request = 0,
19
+ /**
20
+ * The payload appears in a response.
21
+ */
22
+ Response = 1,
23
+ /**
24
+ * The payload appears in a multipart part.
25
+ */
26
+ Multipart = 2
27
+ }
28
+ export declare function resolveHttpPayload(program: Program, type: Type, visibility: Visibility, disposition: HttpPayloadDisposition, options?: ExtractBodyAndMetadataOptions): [HttpPayload, readonly Diagnostic[]];
12
29
  //# sourceMappingURL=payload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../src/payload.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGV,OAAO,EAEP,IAAI,EAQL,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,sBAAsB,EAEtB,YAAY,EAEb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAqB,MAAM,YAAY,CAAC;AAE9F,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,0BAA0B,CAAC;IAC/D,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC;CACnC;AACD,MAAM,WAAW,6BAA8B,SAAQ,sBAAsB;CAAG;AAChF,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,EAC5C,OAAO,GAAE,6BAAkC,GAC1C,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC,CAwBtC"}
1
+ {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../src/payload.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGV,OAAO,EAEP,IAAI,EAQL,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,sBAAsB,EAEtB,YAAY,EAEb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAqB,MAAM,YAAY,CAAC;AAE9F,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,0BAA0B,CAAC;IAC/D,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,6BAA8B,SAAQ,sBAAsB;CAAG;AAEhF;;GAEG;AACH,oBAAY,sBAAsB;IAChC;;OAEG;IACH,OAAO,IAAA;IACP;;OAEG;IACH,QAAQ,IAAA;IACR;;OAEG;IACH,SAAS,IAAA;CACV;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,sBAAsB,EACnC,OAAO,GAAE,6BAAkC,GAC1C,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC,CA0BtC"}
@@ -5,10 +5,28 @@ import { isCookieParam, isHeader, isPathParam, isQueryParam, isStatusCode } from
5
5
  import { resolvePayloadProperties, } from "./http-property.js";
6
6
  import { createDiagnostic } from "./lib.js";
7
7
  import { getHttpFileModel, getHttpPart } from "./private.decorators.js";
8
- export function resolveHttpPayload(program, type, visibility, usedIn, options = {}) {
8
+ /**
9
+ * The disposition of a payload in an HTTP operation.
10
+ */
11
+ export var HttpPayloadDisposition;
12
+ (function (HttpPayloadDisposition) {
13
+ /**
14
+ * The payload appears in a request.
15
+ */
16
+ HttpPayloadDisposition[HttpPayloadDisposition["Request"] = 0] = "Request";
17
+ /**
18
+ * The payload appears in a response.
19
+ */
20
+ HttpPayloadDisposition[HttpPayloadDisposition["Response"] = 1] = "Response";
21
+ /**
22
+ * The payload appears in a multipart part.
23
+ */
24
+ HttpPayloadDisposition[HttpPayloadDisposition["Multipart"] = 2] = "Multipart";
25
+ })(HttpPayloadDisposition || (HttpPayloadDisposition = {}));
26
+ export function resolveHttpPayload(program, type, visibility, disposition, options = {}) {
9
27
  const diagnostics = createDiagnosticCollector();
10
- const metadata = diagnostics.pipe(resolvePayloadProperties(program, type, visibility, options));
11
- const body = diagnostics.pipe(resolveBody(program, type, metadata, visibility, usedIn));
28
+ const metadata = diagnostics.pipe(resolvePayloadProperties(program, type, visibility, disposition, options));
29
+ const body = diagnostics.pipe(resolveBody(program, type, metadata, visibility, disposition));
12
30
  if (body) {
13
31
  if (body.contentTypes.includes("multipart/form-data") &&
14
32
  body.bodyKind === "single" &&
@@ -22,9 +40,9 @@ export function resolveHttpPayload(program, type, visibility, usedIn, options =
22
40
  }
23
41
  return diagnostics.wrap({ body, metadata });
24
42
  }
25
- function resolveBody(program, requestOrResponseType, metadata, visibility, usedIn) {
43
+ function resolveBody(program, requestOrResponseType, metadata, visibility, disposition) {
26
44
  const diagnostics = createDiagnosticCollector();
27
- const resolvedContentTypes = diagnostics.pipe(resolveContentTypes(program, metadata, usedIn));
45
+ const resolvedContentTypes = diagnostics.pipe(resolveContentTypes(program, metadata, disposition));
28
46
  const file = getHttpFileModel(program, requestOrResponseType);
29
47
  if (file !== undefined) {
30
48
  const file = getHttpFileModel(program, requestOrResponseType);
@@ -48,7 +66,7 @@ function resolveBody(program, requestOrResponseType, metadata, visibility, usedI
48
66
  });
49
67
  }
50
68
  // look for explicit body
51
- const resolvedBody = diagnostics.pipe(resolveExplicitBodyProperty(program, metadata, resolvedContentTypes, visibility, usedIn));
69
+ const resolvedBody = diagnostics.pipe(resolveExplicitBodyProperty(program, metadata, resolvedContentTypes, visibility, disposition));
52
70
  if (resolvedBody === undefined) {
53
71
  // Special case if the model as a parent model then we'll return an empty object as this is assumed to be a nominal type.
54
72
  // Special Case if the model has an indexer then it means it can return props so cannot be void.
@@ -101,22 +119,22 @@ function resolveBody(program, requestOrResponseType, metadata, visibility, usedI
101
119
  }
102
120
  return diagnostics.wrap(resolvedBody);
103
121
  }
104
- function resolveContentTypes(program, metadata, usedIn) {
122
+ function resolveContentTypes(program, metadata, disposition) {
105
123
  for (const prop of metadata) {
106
124
  if (prop.kind === "contentType") {
107
125
  const [contentTypes, diagnostics] = getContentTypes(prop.property);
108
126
  return [{ contentTypes, contentTypeProperty: prop.property }, diagnostics];
109
127
  }
110
128
  }
111
- switch (usedIn) {
112
- case "multipart":
129
+ switch (disposition) {
130
+ case HttpPayloadDisposition.Multipart:
113
131
  // Figure this out later
114
132
  return [{ contentTypes: [] }, []];
115
133
  default:
116
134
  return [{ contentTypes: ["application/json"] }, []];
117
135
  }
118
136
  }
119
- function resolveExplicitBodyProperty(program, metadata, resolvedContentTypes, visibility, usedIn) {
137
+ function resolveExplicitBodyProperty(program, metadata, resolvedContentTypes, visibility, disposition) {
120
138
  const diagnostics = createDiagnosticCollector();
121
139
  let resolvedBody;
122
140
  const duplicateTracker = new DuplicateTracker();
@@ -129,7 +147,7 @@ function resolveExplicitBodyProperty(program, metadata, resolvedContentTypes, vi
129
147
  case "bodyRoot":
130
148
  let containsMetadataAnnotations = false;
131
149
  if (item.kind === "body") {
132
- const valid = diagnostics.pipe(validateBodyProperty(program, item.property, usedIn));
150
+ const valid = diagnostics.pipe(validateBodyProperty(program, item.property, disposition));
133
151
  containsMetadataAnnotations = !valid;
134
152
  }
135
153
  if (resolvedBody === undefined) {
@@ -160,20 +178,24 @@ function resolveExplicitBodyProperty(program, metadata, resolvedContentTypes, vi
160
178
  return diagnostics.wrap(resolvedBody);
161
179
  }
162
180
  /** Validate a property marked with `@body` */
163
- function validateBodyProperty(program, property, usedIn) {
181
+ function validateBodyProperty(program, property, disposition) {
164
182
  const diagnostics = createDiagnosticCollector();
165
183
  navigateType(property.type, {
166
184
  modelProperty: (prop) => {
167
185
  const kind = isHeader(program, prop)
168
186
  ? "header"
169
187
  : // also emit metadata-ignored for response cookie
170
- (usedIn === "request" || usedIn === "response") && isCookieParam(program, prop)
188
+ (disposition === HttpPayloadDisposition.Request ||
189
+ disposition === HttpPayloadDisposition.Response) &&
190
+ isCookieParam(program, prop)
171
191
  ? "cookie"
172
- : (usedIn === "request" || usedIn === "multipart") && isQueryParam(program, prop)
192
+ : (disposition === HttpPayloadDisposition.Request ||
193
+ disposition === HttpPayloadDisposition.Multipart) &&
194
+ isQueryParam(program, prop)
173
195
  ? "query"
174
- : usedIn === "request" && isPathParam(program, prop)
196
+ : disposition === HttpPayloadDisposition.Request && isPathParam(program, prop)
175
197
  ? "path"
176
- : usedIn === "response" && isStatusCode(program, prop)
198
+ : disposition === HttpPayloadDisposition.Response && isStatusCode(program, prop)
177
199
  ? "statusCode"
178
200
  : undefined;
179
201
  if (kind) {
@@ -273,7 +295,7 @@ function resolvePart(program, type, visibility) {
273
295
  if (file !== undefined) {
274
296
  return getFilePart(part.options.name, file);
275
297
  }
276
- let [{ body, metadata }, diagnostics] = resolveHttpPayload(program, part.type, visibility, "multipart");
298
+ let [{ body, metadata }, diagnostics] = resolveHttpPayload(program, part.type, visibility, HttpPayloadDisposition.Multipart);
277
299
  if (body === undefined) {
278
300
  return [undefined, diagnostics];
279
301
  }
@@ -1 +1 @@
1
- {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../src/payload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../src/payload.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { createDiagnosticCollector, getDoc, getErrorsDoc, getReturnsDoc, isError
2
2
  import { getStatusCodeDescription, getStatusCodesWithDiagnostics } from "./decorators.js";
3
3
  import { HttpStateKeys, reportDiagnostic } from "./lib.js";
4
4
  import { Visibility } from "./metadata.js";
5
- import { resolveHttpPayload } from "./payload.js";
5
+ import { HttpPayloadDisposition, resolveHttpPayload } from "./payload.js";
6
6
  /**
7
7
  * Get the responses for a given operation.
8
8
  */
@@ -49,7 +49,7 @@ class ResponseIndex {
49
49
  }
50
50
  function processResponseType(program, diagnostics, operation, responses, responseType) {
51
51
  // Get body
52
- let { body: resolvedBody, metadata } = diagnostics.pipe(resolveHttpPayload(program, responseType, Visibility.Read, "response"));
52
+ let { body: resolvedBody, metadata } = diagnostics.pipe(resolveHttpPayload(program, responseType, Visibility.Read, HttpPayloadDisposition.Response));
53
53
  // Get explicity defined status codes
54
54
  const statusCodes = diagnostics.pipe(getResponseStatusCodes(program, responseType, metadata));
55
55
  // Get response headers
@@ -1 +1 @@
1
- {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/responses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/responses.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typespec/http",
3
- "version": "0.64.0",
3
+ "version": "0.65.0-dev.1",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec HTTP protocol binding",
6
6
  "homepage": "https://github.com/microsoft/typespec",
@@ -49,8 +49,8 @@
49
49
  "!dist/test/**"
50
50
  ],
51
51
  "peerDependencies": {
52
- "@typespec/compiler": "~0.64.0",
53
- "@typespec/streams": "~0.64.0"
52
+ "@typespec/compiler": "~0.64.0 || >=0.65.0-dev <0.65.0",
53
+ "@typespec/streams": "~0.64.0 || >=0.65.0-dev <0.65.0"
54
54
  },
55
55
  "peerDependenciesMeta": {
56
56
  "@typespec/streams": {
@@ -59,17 +59,18 @@
59
59
  },
60
60
  "devDependencies": {
61
61
  "@types/node": "~22.7.9",
62
+ "@typespec/compiler": "~0.64.0 || >=0.65.0-dev <0.65.0",
63
+ "@typespec/library-linter": "~0.64.0 || >=0.65.0-dev <0.65.0",
64
+ "@typespec/streams": "~0.64.0 || >=0.65.0-dev <0.65.0",
62
65
  "@vitest/coverage-v8": "^2.1.5",
63
66
  "@vitest/ui": "^2.1.2",
64
67
  "c8": "^10.1.2",
65
68
  "rimraf": "~6.0.1",
66
69
  "typescript": "~5.6.3",
67
70
  "vitest": "^2.1.5",
68
- "@typespec/compiler": "~0.64.0",
69
- "@typespec/library-linter": "~0.64.0",
70
- "@typespec/streams": "~0.64.0",
71
71
  "@typespec/tspd": "~0.46.0"
72
72
  },
73
+ "dependencies": {},
73
74
  "scripts": {
74
75
  "clean": "rimraf ./dist ./temp",
75
76
  "build": "npm run gen-extern-signature && tsc -p . && npm run lint-typespec-library",