@effect/platform 0.77.6 → 0.78.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.
- package/README.md +2 -108
- package/dist/cjs/HttpApiBuilder.js +3 -1
- package/dist/cjs/HttpApiBuilder.js.map +1 -1
- package/dist/cjs/HttpApiClient.js +1 -1
- package/dist/cjs/HttpApiClient.js.map +1 -1
- package/dist/cjs/OpenApi.js +9 -2
- package/dist/cjs/OpenApi.js.map +1 -1
- package/dist/cjs/OpenApiJsonSchema.js +7 -1
- package/dist/cjs/OpenApiJsonSchema.js.map +1 -1
- package/dist/cjs/internal/fetchHttpClient.js +2 -1
- package/dist/cjs/internal/fetchHttpClient.js.map +1 -1
- package/dist/dts/HttpApiBuilder.d.ts +2 -0
- package/dist/dts/HttpApiBuilder.d.ts.map +1 -1
- package/dist/dts/HttpApiClient.d.ts +2 -1
- package/dist/dts/HttpApiClient.d.ts.map +1 -1
- package/dist/dts/HttpClient.d.ts +4 -4
- package/dist/dts/HttpClient.d.ts.map +1 -1
- package/dist/dts/OpenApi.d.ts +14 -1
- package/dist/dts/OpenApi.d.ts.map +1 -1
- package/dist/dts/OpenApiJsonSchema.d.ts +11 -2
- package/dist/dts/OpenApiJsonSchema.d.ts.map +1 -1
- package/dist/esm/HttpApiBuilder.js +3 -1
- package/dist/esm/HttpApiBuilder.js.map +1 -1
- package/dist/esm/HttpApiClient.js +1 -1
- package/dist/esm/HttpApiClient.js.map +1 -1
- package/dist/esm/OpenApi.js +9 -2
- package/dist/esm/OpenApi.js.map +1 -1
- package/dist/esm/OpenApiJsonSchema.js +7 -1
- package/dist/esm/OpenApiJsonSchema.js.map +1 -1
- package/dist/esm/internal/fetchHttpClient.js +2 -1
- package/dist/esm/internal/fetchHttpClient.js.map +1 -1
- package/package.json +2 -2
- package/src/HttpApiBuilder.ts +4 -1
- package/src/HttpApiClient.ts +1 -2
- package/src/HttpClient.ts +4 -4
- package/src/OpenApi.ts +18 -2
- package/src/OpenApiJsonSchema.ts +17 -5
- package/src/internal/fetchHttpClient.ts +2 -1
- package/src/internal/httpClient.ts +3 -3
package/dist/esm/OpenApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenApi.js","names":["Context","constFalse","globalValue","Option","HttpApi","HttpApiMiddleware","HttpApiSchema","HttpMethod","JsonSchema","Identifier","Tag","Title","Version","Description","License","ExternalDocs","Servers","Format","Summary","Deprecated","Override","Exclude","Reference","defaultValue","Transform","contextPartial","tags","entries","Object","options","context","empty","key","tag","undefined","add","annotations","identifier","title","version","description","license","summary","deprecated","externalDocs","servers","format","override","exclude","transform","apiCache","WeakMap","processAnnotation","ctx","f","o","getOption","isSome","value","fromApi","api","cached","get","jsonSchemaDefs","spec","openapi","info","getOrElse","paths","components","schemas","securitySchemes","security","processAST","ast","fromAST","defs","processHttpApiSecurity","name","makeSecurityScheme","AdditionalSchemas","componentSchemas","forEach","componentSchema","middlewares","middleware","isSecurity","push","reflect","onGroup","group","assign","transformFn","onEndpoint","endpoint","errors","mergedAnnotations","payloads","successes","op","operationId","topLevel","parameters","responses","processResponseMap","map","defaultDescription","status","pipe","filter","getEmptyDecodeable","encoding","getEncoding","content","contentType","schema","processParameters","i","jsonSchema","properties","psJsonSchema","in","required","includes","hasBody","method","size","requestBody","pathSchema","payloadSchema","headersSchema","urlParamsSchema","path","replace","toLowerCase","set","meta","_tag","type","scheme","bearerFormat","getOrUndefined"],"sources":["../../src/OpenApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"OpenApi.js","names":["Context","constFalse","globalValue","Option","HttpApi","HttpApiMiddleware","HttpApiSchema","HttpMethod","JsonSchema","Identifier","Tag","Title","Version","Description","License","ExternalDocs","Servers","Format","Summary","Deprecated","Override","Exclude","Reference","defaultValue","Transform","contextPartial","tags","entries","Object","options","context","empty","key","tag","undefined","add","annotations","identifier","title","version","description","license","summary","deprecated","externalDocs","servers","format","override","exclude","transform","apiCache","WeakMap","processAnnotation","ctx","f","o","getOption","isSome","value","fromApi","api","cached","get","jsonSchemaDefs","spec","openapi","info","getOrElse","paths","components","schemas","securitySchemes","security","processAST","ast","fromAST","defs","additionalPropertiesStrategy","processHttpApiSecurity","name","makeSecurityScheme","AdditionalSchemas","componentSchemas","forEach","componentSchema","middlewares","middleware","isSecurity","push","reflect","onGroup","group","assign","transformFn","onEndpoint","endpoint","errors","mergedAnnotations","payloads","successes","op","operationId","topLevel","parameters","responses","processResponseMap","map","defaultDescription","status","pipe","filter","getEmptyDecodeable","encoding","getEncoding","content","contentType","schema","processParameters","i","jsonSchema","properties","psJsonSchema","in","required","includes","hasBody","method","size","requestBody","pathSchema","payloadSchema","headersSchema","urlParamsSchema","path","replace","toLowerCase","set","meta","_tag","type","scheme","bearerFormat","getOrUndefined"],"sources":["../../src/OpenApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -20,11 +20,16 @@ export const make = schema => {
|
|
|
20
20
|
/**
|
|
21
21
|
* Creates a schema with additional options and definitions.
|
|
22
22
|
*
|
|
23
|
+
* **Options**
|
|
24
|
+
*
|
|
23
25
|
* - `defs`: A record of definitions that are included in the schema.
|
|
24
26
|
* - `defsPath`: The path to the definitions within the schema (defaults to "#/$defs/").
|
|
25
27
|
* - `topLevelReferenceStrategy`: Controls the handling of the top-level reference. Possible values are:
|
|
26
28
|
* - `"keep"`: Keep the top-level reference (default behavior).
|
|
27
29
|
* - `"skip"`: Skip the top-level reference.
|
|
30
|
+
* - `additionalPropertiesStrategy`: Controls the handling of additional properties. Possible values are:
|
|
31
|
+
* - `"strict"`: Disallow additional properties (default behavior).
|
|
32
|
+
* - `"allow"`: Allow additional properties.
|
|
28
33
|
*
|
|
29
34
|
* @category encoding
|
|
30
35
|
* @since 1.0.0
|
|
@@ -36,7 +41,8 @@ export const fromAST = (ast, options) => {
|
|
|
36
41
|
definitions: options.defs,
|
|
37
42
|
definitionPath: options.defsPath ?? "#/components/schemas/",
|
|
38
43
|
target: "openApi3.1",
|
|
39
|
-
topLevelReferenceStrategy: options.topLevelReferenceStrategy
|
|
44
|
+
topLevelReferenceStrategy: options.topLevelReferenceStrategy,
|
|
45
|
+
additionalPropertiesStrategy: options.additionalPropertiesStrategy
|
|
40
46
|
});
|
|
41
47
|
return jsonSchema;
|
|
42
48
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenApiJsonSchema.js","names":["JSONSchema","Record","make","schema","defs","out","makeWithDefs","isEmptyRecord","$defs","options","fromAST","ast","jsonSchema","definitions","definitionPath","defsPath","target","topLevelReferenceStrategy"],"sources":["../../src/OpenApiJsonSchema.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,UAAU,MAAM,mBAAmB;AAC/C,OAAO,KAAKC,MAAM,MAAM,eAAe;AAgPvC;;;;AAIA,OAAO,MAAMC,IAAI,GAAaC,MAA8B,IAAU;EACpE,MAAMC,IAAI,GAA+B,EAAE;EAC3C,MAAMC,GAAG,GAASC,YAAY,CAACH,MAAM,EAAE;IAAEC;EAAI,CAAE,CAAC;EAChD,IAAI,CAACH,MAAM,CAACM,aAAa,CAACH,IAAI,CAAC,EAAE;IAC/BC,GAAG,CAACG,KAAK,GAAGJ,IAAI;EAClB;EACA,OAAOC,GAAG;AACZ,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenApiJsonSchema.js","names":["JSONSchema","Record","make","schema","defs","out","makeWithDefs","isEmptyRecord","$defs","options","fromAST","ast","jsonSchema","definitions","definitionPath","defsPath","target","topLevelReferenceStrategy","additionalPropertiesStrategy"],"sources":["../../src/OpenApiJsonSchema.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,UAAU,MAAM,mBAAmB;AAC/C,OAAO,KAAKC,MAAM,MAAM,eAAe;AAgPvC;;;;AAIA,OAAO,MAAMC,IAAI,GAAaC,MAA8B,IAAU;EACpE,MAAMC,IAAI,GAA+B,EAAE;EAC3C,MAAMC,GAAG,GAASC,YAAY,CAACH,MAAM,EAAE;IAAEC;EAAI,CAAE,CAAC;EAChD,IAAI,CAACH,MAAM,CAACM,aAAa,CAACH,IAAI,CAAC,EAAE;IAC/BC,GAAG,CAACG,KAAK,GAAGJ,IAAI;EAClB;EACA,OAAOC,GAAG;AACZ,CAAC;AAMD;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMC,YAAY,GAAGA,CAAUH,MAA8B,EAAEM,OAKrE,KAAiBC,OAAO,CAACP,MAAM,CAACQ,GAAG,EAAEF,OAAO,CAAC;AAE9C;AACA,OAAO,MAAMC,OAAO,GAAGA,CAACC,GAAY,EAAEF,OAKrC,KAAgB;EACf,MAAMG,UAAU,GAAGZ,UAAU,CAACU,OAAO,CAACC,GAAG,EAAE;IACzCE,WAAW,EAAEJ,OAAO,CAACL,IAAI;IACzBU,cAAc,EAAEL,OAAO,CAACM,QAAQ,IAAI,uBAAuB;IAC3DC,MAAM,EAAE,YAAY;IACpBC,yBAAyB,EAAER,OAAO,CAACQ,yBAAyB;IAC5DC,4BAA4B,EAAET,OAAO,CAACS;GACvC,CAAC;EACF,OAAON,UAAwB;AACjC,CAAC","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as FiberRef from "effect/FiberRef";
|
|
3
3
|
import * as Stream from "effect/Stream";
|
|
4
|
+
import * as Headers from "../Headers.js";
|
|
4
5
|
import * as Error from "../HttpClientError.js";
|
|
5
6
|
import * as client from "./httpClient.js";
|
|
6
7
|
import * as internalResponse from "./httpClientResponse.js";
|
|
@@ -12,7 +13,7 @@ const fetch = /*#__PURE__*/client.make((request, url, signal, fiber) => {
|
|
|
12
13
|
const context = fiber.getFiberRef(FiberRef.currentContext);
|
|
13
14
|
const fetch = context.unsafeMap.get(fetchTagKey) ?? globalThis.fetch;
|
|
14
15
|
const options = context.unsafeMap.get(requestInitTagKey) ?? {};
|
|
15
|
-
const headers =
|
|
16
|
+
const headers = options.headers ? Headers.merge(Headers.fromInput(options.headers), request.headers) : request.headers;
|
|
16
17
|
const send = body => Effect.map(Effect.tryPromise({
|
|
17
18
|
try: () => fetch(url, {
|
|
18
19
|
...options,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchHttpClient.js","names":["Effect","FiberRef","Stream","Error","client","internalResponse","fetchTagKey","requestInitTagKey","fetch","make","request","url","signal","fiber","context","getFiberRef","currentContext","unsafeMap","get","globalThis","options","headers","
|
|
1
|
+
{"version":3,"file":"fetchHttpClient.js","names":["Effect","FiberRef","Stream","Headers","Error","client","internalResponse","fetchTagKey","requestInitTagKey","fetch","make","request","url","signal","fiber","context","getFiberRef","currentContext","unsafeMap","get","globalThis","options","headers","merge","fromInput","send","body","map","tryPromise","try","method","duplex","_tag","undefined","catch","cause","RequestError","reason","response","fromWeb","formData","flatMap","toReadableStreamEffect","stream","layer","layerMergedContext","succeed"],"sources":["../../../src/internal/fetchHttpClient.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,OAAO,MAAM,eAAe;AAExC,OAAO,KAAKC,KAAK,MAAM,uBAAuB;AAC9C,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,OAAO,KAAKC,gBAAgB,MAAM,yBAAyB;AAE3D;AACA,OAAO,MAAMC,WAAW,GAAG,wCAAwC;AACnE;AACA,OAAO,MAAMC,iBAAiB,GAAG,+CAA+C;AAEhF,MAAMC,KAAK,gBAAsBJ,MAAM,CAACK,IAAI,CAAC,CAACC,OAAO,EAAEC,GAAG,EAAEC,MAAM,EAAEC,KAAK,KAAI;EAC3E,MAAMC,OAAO,GAAGD,KAAK,CAACE,WAAW,CAACf,QAAQ,CAACgB,cAAc,CAAC;EAC1D,MAAMR,KAAK,GAA4BM,OAAO,CAACG,SAAS,CAACC,GAAG,CAACZ,WAAW,CAAC,IAAIa,UAAU,CAACX,KAAK;EAC7F,MAAMY,OAAO,GAAgBN,OAAO,CAACG,SAAS,CAACC,GAAG,CAACX,iBAAiB,CAAC,IAAI,EAAE;EAC3E,MAAMc,OAAO,GAAGD,OAAO,CAACC,OAAO,GAAGnB,OAAO,CAACoB,KAAK,CAACpB,OAAO,CAACqB,SAAS,CAACH,OAAO,CAACC,OAAO,CAAC,EAAEX,OAAO,CAACW,OAAO,CAAC,GAAGX,OAAO,CAACW,OAAO;EACtH,MAAMG,IAAI,GAAIC,IAA0B,IACtC1B,MAAM,CAAC2B,GAAG,CACR3B,MAAM,CAAC4B,UAAU,CAAC;IAChBC,GAAG,EAAEA,CAAA,KACHpB,KAAK,CAACG,GAAG,EAAE;MACT,GAAGS,OAAO;MACVS,MAAM,EAAEnB,OAAO,CAACmB,MAAM;MACtBR,OAAO;MACPI,IAAI;MACJK,MAAM,EAAEpB,OAAO,CAACe,IAAI,CAACM,IAAI,KAAK,QAAQ,GAAG,MAAM,GAAGC,SAAS;MAC3DpB;KACM,CAAC;IACXqB,KAAK,EAAGC,KAAK,IACX,IAAI/B,KAAK,CAACgC,YAAY,CAAC;MACrBzB,OAAO;MACP0B,MAAM,EAAE,WAAW;MACnBF;KACD;GACJ,CAAC,EACDG,QAAQ,IAAKhC,gBAAgB,CAACiC,OAAO,CAAC5B,OAAO,EAAE2B,QAAQ,CAAC,CAC1D;EACH,QAAQ3B,OAAO,CAACe,IAAI,CAACM,IAAI;IACvB,KAAK,KAAK;IACV,KAAK,YAAY;MACf,OAAOP,IAAI,CAACd,OAAO,CAACe,IAAI,CAACA,IAAW,CAAC;IACvC,KAAK,UAAU;MACb,OAAOD,IAAI,CAACd,OAAO,CAACe,IAAI,CAACc,QAAQ,CAAC;IACpC,KAAK,QAAQ;MACX,OAAOxC,MAAM,CAACyC,OAAO,CAACvC,MAAM,CAACwC,sBAAsB,CAAC/B,OAAO,CAACe,IAAI,CAACiB,MAAM,CAAC,EAAElB,IAAI,CAAC;EACnF;EACA,OAAOA,IAAI,CAACQ,SAAS,CAAC;AACxB,CAAC,CAAC;AAEF;AACA,OAAO,MAAMW,KAAK,gBAAGvC,MAAM,CAACwC,kBAAkB,eAAC7C,MAAM,CAAC8C,OAAO,CAACrC,KAAK,CAAC,CAAC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.78.0",
|
|
4
4
|
"description": "Unified interfaces for common platform-specific services",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"multipasta": "^0.2.5"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
|
-
"effect": "^3.13.
|
|
17
|
+
"effect": "^3.13.7"
|
|
18
18
|
},
|
|
19
19
|
"publishConfig": {
|
|
20
20
|
"provenance": true
|
package/src/HttpApiBuilder.ts
CHANGED
|
@@ -961,12 +961,15 @@ export const middlewareCors = (
|
|
|
961
961
|
export const middlewareOpenApi = (
|
|
962
962
|
options?: {
|
|
963
963
|
readonly path?: HttpApiEndpoint.PathSegment | undefined
|
|
964
|
+
readonly additionalPropertiesStrategy?: OpenApi.AdditionalPropertiesStrategy | undefined
|
|
964
965
|
} | undefined
|
|
965
966
|
): Layer.Layer<never, never, HttpApi.Api> =>
|
|
966
967
|
Router.use((router) =>
|
|
967
968
|
Effect.gen(function*() {
|
|
968
969
|
const { api } = yield* HttpApi.Api
|
|
969
|
-
const spec = OpenApi.fromApi(api
|
|
970
|
+
const spec = OpenApi.fromApi(api, {
|
|
971
|
+
additionalPropertiesStrategy: options?.additionalPropertiesStrategy
|
|
972
|
+
})
|
|
970
973
|
const response = yield* HttpServerResponse.json(spec).pipe(
|
|
971
974
|
Effect.orDie
|
|
972
975
|
)
|
package/src/HttpApiClient.ts
CHANGED
|
@@ -83,7 +83,7 @@ export declare namespace Client {
|
|
|
83
83
|
request: Simplify<HttpApiEndpoint.ClientRequest<_Path, _UrlParams, _Payload, _Headers, WithResponse>>
|
|
84
84
|
) => Effect.Effect<
|
|
85
85
|
WithResponse extends true ? [_Success, HttpClientResponse.HttpClientResponse] : _Success,
|
|
86
|
-
_Error | GroupError | ApiError | HttpClientError.HttpClientError
|
|
86
|
+
_Error | GroupError | ApiError | HttpClientError.HttpClientError | ParseResult.ParseError
|
|
87
87
|
> :
|
|
88
88
|
never
|
|
89
89
|
|
|
@@ -224,7 +224,6 @@ const makeClient = <ApiId extends string, Groups extends HttpApiGroup.Any, ApiEr
|
|
|
224
224
|
return request?.withResponse === true ? [value, response] : value
|
|
225
225
|
}).pipe(
|
|
226
226
|
Effect.scoped,
|
|
227
|
-
Effect.catchIf(ParseResult.isParseError, Effect.die),
|
|
228
227
|
Effect.mapInputContext((input) => Context.merge(context, input))
|
|
229
228
|
)
|
|
230
229
|
|
package/src/HttpClient.ts
CHANGED
|
@@ -12,7 +12,7 @@ import type * as Predicate from "effect/Predicate"
|
|
|
12
12
|
import type { Ref } from "effect/Ref"
|
|
13
13
|
import type * as Schedule from "effect/Schedule"
|
|
14
14
|
import type * as Scope from "effect/Scope"
|
|
15
|
-
import type { NoInfer } from "effect/Types"
|
|
15
|
+
import type { NoExcessProperties, NoInfer } from "effect/Types"
|
|
16
16
|
import type { Cookies } from "./Cookies.js"
|
|
17
17
|
import type * as Error from "./HttpClientError.js"
|
|
18
18
|
import type * as ClientRequest from "./HttpClientRequest.js"
|
|
@@ -588,7 +588,7 @@ export declare namespace Retry {
|
|
|
588
588
|
* @since 1.0.0
|
|
589
589
|
* @category error handling
|
|
590
590
|
*/
|
|
591
|
-
export type Return<R, E, O extends Effect.Retry.Options<E>> = HttpClient.With<
|
|
591
|
+
export type Return<R, E, O extends NoExcessProperties<Effect.Retry.Options<E>, O>> = HttpClient.With<
|
|
592
592
|
| (O extends { schedule: Schedule.Schedule<infer _O, infer _I, infer _R> } ? E
|
|
593
593
|
: O extends { until: Predicate.Refinement<E, infer E2> } ? E2
|
|
594
594
|
: E)
|
|
@@ -614,7 +614,7 @@ export const retry: {
|
|
|
614
614
|
* @since 1.0.0
|
|
615
615
|
* @category error handling
|
|
616
616
|
*/
|
|
617
|
-
<E, O extends Effect.Retry.Options<E>>(options: O): <R>(self: HttpClient.With<E, R>) => Retry.Return<R, E, O>
|
|
617
|
+
<E, O extends NoExcessProperties<Effect.Retry.Options<E>, O>>(options: O): <R>(self: HttpClient.With<E, R>) => Retry.Return<R, E, O>
|
|
618
618
|
/**
|
|
619
619
|
* Retries the request based on a provided schedule or policy.
|
|
620
620
|
*
|
|
@@ -628,7 +628,7 @@ export const retry: {
|
|
|
628
628
|
* @since 1.0.0
|
|
629
629
|
* @category error handling
|
|
630
630
|
*/
|
|
631
|
-
<E, R, O extends Effect.Retry.Options<E>>(self: HttpClient.With<E, R>, options: O): Retry.Return<R, E, O>
|
|
631
|
+
<E, R, O extends NoExcessProperties<Effect.Retry.Options<E>, O>>(self: HttpClient.With<E, R>, options: O): Retry.Return<R, E, O>
|
|
632
632
|
/**
|
|
633
633
|
* Retries the request based on a provided schedule or policy.
|
|
634
634
|
*
|
package/src/OpenApi.ts
CHANGED
|
@@ -175,6 +175,12 @@ function processAnnotation<Services, S, I>(
|
|
|
175
175
|
}
|
|
176
176
|
}
|
|
177
177
|
|
|
178
|
+
/**
|
|
179
|
+
* @since 1.0.0
|
|
180
|
+
* @category models
|
|
181
|
+
*/
|
|
182
|
+
export type AdditionalPropertiesStrategy = "allow" | "strict"
|
|
183
|
+
|
|
178
184
|
/**
|
|
179
185
|
* Converts an `HttpApi` instance into an OpenAPI Specification object.
|
|
180
186
|
*
|
|
@@ -192,6 +198,12 @@ function processAnnotation<Services, S, I>(
|
|
|
192
198
|
* and overrides. Cached results are used for better performance when the same
|
|
193
199
|
* `HttpApi` instance is processed multiple times.
|
|
194
200
|
*
|
|
201
|
+
* **Options**
|
|
202
|
+
*
|
|
203
|
+
* - `additionalPropertiesStrategy`: Controls the handling of additional properties. Possible values are:
|
|
204
|
+
* - `"strict"`: Disallow additional properties (default behavior).
|
|
205
|
+
* - `"allow"`: Allow additional properties.
|
|
206
|
+
*
|
|
195
207
|
* @example
|
|
196
208
|
* ```ts
|
|
197
209
|
* import { HttpApi, HttpApiEndpoint, HttpApiGroup, OpenApi } from "@effect/platform"
|
|
@@ -214,7 +226,10 @@ function processAnnotation<Services, S, I>(
|
|
|
214
226
|
* @since 1.0.0
|
|
215
227
|
*/
|
|
216
228
|
export const fromApi = <Id extends string, Groups extends HttpApiGroup.Any, E, R>(
|
|
217
|
-
api: HttpApi.HttpApi<Id, Groups, E, R
|
|
229
|
+
api: HttpApi.HttpApi<Id, Groups, E, R>,
|
|
230
|
+
options?: {
|
|
231
|
+
readonly additionalPropertiesStrategy?: AdditionalPropertiesStrategy | undefined
|
|
232
|
+
} | undefined
|
|
218
233
|
): OpenAPISpec => {
|
|
219
234
|
const cached = apiCache.get(api)
|
|
220
235
|
if (cached !== undefined) {
|
|
@@ -238,7 +253,8 @@ export const fromApi = <Id extends string, Groups extends HttpApiGroup.Any, E, R
|
|
|
238
253
|
|
|
239
254
|
function processAST(ast: AST.AST): JsonSchema.JsonSchema {
|
|
240
255
|
return JsonSchema.fromAST(ast, {
|
|
241
|
-
defs: jsonSchemaDefs
|
|
256
|
+
defs: jsonSchemaDefs,
|
|
257
|
+
additionalPropertiesStrategy: options?.additionalPropertiesStrategy
|
|
242
258
|
})
|
|
243
259
|
}
|
|
244
260
|
|
package/src/OpenApiJsonSchema.ts
CHANGED
|
@@ -255,35 +255,47 @@ export const make = <A, I, R>(schema: Schema.Schema<A, I, R>): Root => {
|
|
|
255
255
|
return out
|
|
256
256
|
}
|
|
257
257
|
|
|
258
|
+
type TopLevelReferenceStrategy = "skip" | "keep"
|
|
259
|
+
|
|
260
|
+
type AdditionalPropertiesStrategy = "allow" | "strict"
|
|
261
|
+
|
|
258
262
|
/**
|
|
259
263
|
* Creates a schema with additional options and definitions.
|
|
260
264
|
*
|
|
265
|
+
* **Options**
|
|
266
|
+
*
|
|
261
267
|
* - `defs`: A record of definitions that are included in the schema.
|
|
262
268
|
* - `defsPath`: The path to the definitions within the schema (defaults to "#/$defs/").
|
|
263
269
|
* - `topLevelReferenceStrategy`: Controls the handling of the top-level reference. Possible values are:
|
|
264
270
|
* - `"keep"`: Keep the top-level reference (default behavior).
|
|
265
271
|
* - `"skip"`: Skip the top-level reference.
|
|
272
|
+
* - `additionalPropertiesStrategy`: Controls the handling of additional properties. Possible values are:
|
|
273
|
+
* - `"strict"`: Disallow additional properties (default behavior).
|
|
274
|
+
* - `"allow"`: Allow additional properties.
|
|
266
275
|
*
|
|
267
276
|
* @category encoding
|
|
268
277
|
* @since 1.0.0
|
|
269
278
|
*/
|
|
270
279
|
export const makeWithDefs = <A, I, R>(schema: Schema.Schema<A, I, R>, options: {
|
|
271
280
|
readonly defs: Record<string, any>
|
|
272
|
-
readonly defsPath?: string
|
|
273
|
-
readonly topLevelReferenceStrategy?:
|
|
281
|
+
readonly defsPath?: string | undefined
|
|
282
|
+
readonly topLevelReferenceStrategy?: TopLevelReferenceStrategy | undefined
|
|
283
|
+
readonly additionalPropertiesStrategy?: AdditionalPropertiesStrategy | undefined
|
|
274
284
|
}): JsonSchema => fromAST(schema.ast, options)
|
|
275
285
|
|
|
276
286
|
/** @internal */
|
|
277
287
|
export const fromAST = (ast: AST.AST, options: {
|
|
278
288
|
readonly defs: Record<string, any>
|
|
279
|
-
readonly defsPath?: string
|
|
280
|
-
readonly topLevelReferenceStrategy?:
|
|
289
|
+
readonly defsPath?: string | undefined
|
|
290
|
+
readonly topLevelReferenceStrategy?: TopLevelReferenceStrategy | undefined
|
|
291
|
+
readonly additionalPropertiesStrategy?: AdditionalPropertiesStrategy | undefined
|
|
281
292
|
}): JsonSchema => {
|
|
282
293
|
const jsonSchema = JSONSchema.fromAST(ast, {
|
|
283
294
|
definitions: options.defs,
|
|
284
295
|
definitionPath: options.defsPath ?? "#/components/schemas/",
|
|
285
296
|
target: "openApi3.1",
|
|
286
|
-
topLevelReferenceStrategy: options.topLevelReferenceStrategy
|
|
297
|
+
topLevelReferenceStrategy: options.topLevelReferenceStrategy,
|
|
298
|
+
additionalPropertiesStrategy: options.additionalPropertiesStrategy
|
|
287
299
|
})
|
|
288
300
|
return jsonSchema as JsonSchema
|
|
289
301
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect"
|
|
2
2
|
import * as FiberRef from "effect/FiberRef"
|
|
3
3
|
import * as Stream from "effect/Stream"
|
|
4
|
+
import * as Headers from "../Headers.js"
|
|
4
5
|
import type * as Client from "../HttpClient.js"
|
|
5
6
|
import * as Error from "../HttpClientError.js"
|
|
6
7
|
import * as client from "./httpClient.js"
|
|
@@ -15,7 +16,7 @@ const fetch: Client.HttpClient = client.make((request, url, signal, fiber) => {
|
|
|
15
16
|
const context = fiber.getFiberRef(FiberRef.currentContext)
|
|
16
17
|
const fetch: typeof globalThis.fetch = context.unsafeMap.get(fetchTagKey) ?? globalThis.fetch
|
|
17
18
|
const options: RequestInit = context.unsafeMap.get(requestInitTagKey) ?? {}
|
|
18
|
-
const headers =
|
|
19
|
+
const headers = options.headers ? Headers.merge(Headers.fromInput(options.headers), request.headers) : request.headers
|
|
19
20
|
const send = (body: BodyInit | undefined) =>
|
|
20
21
|
Effect.map(
|
|
21
22
|
Effect.tryPromise({
|
|
@@ -12,7 +12,7 @@ import * as Predicate from "effect/Predicate"
|
|
|
12
12
|
import * as Ref from "effect/Ref"
|
|
13
13
|
import * as Schedule from "effect/Schedule"
|
|
14
14
|
import * as Scope from "effect/Scope"
|
|
15
|
-
import type { NoInfer } from "effect/Types"
|
|
15
|
+
import type { NoExcessProperties, NoInfer } from "effect/Types"
|
|
16
16
|
import * as Cookies from "../Cookies.js"
|
|
17
17
|
import * as Headers from "../Headers.js"
|
|
18
18
|
import type * as Client from "../HttpClient.js"
|
|
@@ -541,13 +541,13 @@ export const mapRequestInputEffect = dual<
|
|
|
541
541
|
|
|
542
542
|
/** @internal */
|
|
543
543
|
export const retry: {
|
|
544
|
-
<E, O extends Effect.Retry.Options<E>>(
|
|
544
|
+
<E, O extends NoExcessProperties<Effect.Retry.Options<E>, O>>(
|
|
545
545
|
options: O
|
|
546
546
|
): <R>(self: Client.HttpClient.With<E, R>) => Client.Retry.Return<R, E, O>
|
|
547
547
|
<B, E, R1>(
|
|
548
548
|
policy: Schedule.Schedule<B, NoInfer<E>, R1>
|
|
549
549
|
): <R>(self: Client.HttpClient.With<E, R>) => Client.HttpClient.With<E, R1 | R>
|
|
550
|
-
<E, R, O extends Effect.Retry.Options<E>>(
|
|
550
|
+
<E, R, O extends NoExcessProperties<Effect.Retry.Options<E>, O>>(
|
|
551
551
|
self: Client.HttpClient.With<E, R>,
|
|
552
552
|
options: O
|
|
553
553
|
): Client.Retry.Return<R, E, O>
|