@effect/platform 0.70.1 → 0.70.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.
@@ -1 +1 @@
1
- {"version":3,"file":"httpRouter.js","names":["Chunk","Context","Effect","Effectable","FiberRef","dual","globalValue","Inspectable","Layer","Option","Predicate","Schema","Tracer","FindMyWay","Error","ServerRequest","Respondable","TypeId","Symbol","for","RouteTypeId","RouteContextTypeId","RouteContext","GenericTag","isRouter","u","hasProperty","params","map","_","schemaJson","schema","options","parse","decodeUnknown","flatMap","context","request","get","HttpServerRequest","searchParams","ParsedSearchParams","routeContext","json","body","method","url","headers","cookies","pathParams","schemaNoBody","schemaParams","schemaPathParams","currentRouterConfig","unsafeMake","withRouterConfig","effect","config","locally","setRouterConfig","locallyScoped","RouterImpl","StructuralClass","routes","mounts","constructor","httpApp","pipe","toHttpApp","commit","toJSON","_id","toString","format","NodeInspectSymbol","self","router","make","toReadonlyArray","path","app","RouteContextImpl","RouteImpl","includePrefix","none","some","mountsLen","length","forEach","route","all","on","withFiberRuntime","fiber","Map","getFiberRef","currentContext","unsafeMap","unsafeGet","i","startsWith","set","key","sliceRequestUrl","handler","toResponse","result","find","undefined","fail","RouteNotFound","prefix","_tag","value","span","getOption","ParentSpan","attribute","handlerResponse","uninterruptible","interruptible","prefexLen","modify","slice","Class","empty","fromIterable","makeRoute","append","concat","that","concatAll","routers","reduce","cur","acc","appendAll","removeTrailingSlash","endsWith","prefixPath","prefixAll","orElse","mount","mountApp","args","post","put","patch","del","head","use","f","transform","catchAll","catchAllCause","catchTag","k","catchTags","cases","provideService","tag","service","provideServiceEffect","makeService","addRoute","sync","opts","Tag","id","Err","globalThis","limit","stackTraceLimit","creationError","TagClass","TagClass_","Object","setPrototypeOf","getPrototypeOf","defineProperty","stack","Live","effectDiscard","provide","useScoped","scopedDiscard","unwrap","unwrapEffect"],"sources":["../../../src/internal/httpRouter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"httpRouter.js","names":["Chunk","Context","Effect","Effectable","FiberRef","dual","globalValue","Inspectable","Layer","Option","Predicate","Schema","Tracer","FindMyWay","Error","ServerRequest","Respondable","TypeId","Symbol","for","RouteTypeId","RouteContextTypeId","RouteContext","GenericTag","isRouter","u","hasProperty","params","map","_","schemaJson","schema","options","parse","decodeUnknown","flatMap","context","request","get","HttpServerRequest","searchParams","ParsedSearchParams","routeContext","json","body","method","url","headers","cookies","pathParams","schemaNoBody","schemaParams","schemaPathParams","currentRouterConfig","unsafeMake","withRouterConfig","effect","config","locally","setRouterConfig","locallyScoped","RouterImpl","StructuralClass","routes","mounts","constructor","httpApp","pipe","toHttpApp","commit","toJSON","_id","toString","format","NodeInspectSymbol","self","router","make","toReadonlyArray","path","app","RouteContextImpl","RouteImpl","includePrefix","none","some","mountsLen","length","forEach","route","all","on","withFiberRuntime","fiber","Map","getFiberRef","currentContext","unsafeMap","unsafeGet","i","startsWith","set","key","sliceRequestUrl","handler","toResponse","result","find","undefined","fail","RouteNotFound","prefix","_tag","value","span","getOption","ParentSpan","attribute","handlerResponse","uninterruptible","interruptible","prefexLen","modify","slice","Class","empty","fromIterable","makeRoute","append","concat","that","concatAll","routers","reduce","cur","acc","appendAll","removeTrailingSlash","endsWith","prefixPath","prefixAll","orElse","mount","mountApp","args","post","put","patch","del","head","use","f","transform","catchAll","catchAllCause","catchTag","k","catchTags","cases","provideService","tag","service","provideServiceEffect","makeService","addRoute","sync","opts","Tag","id","Err","globalThis","limit","stackTraceLimit","creationError","TagClass","TagClass_","Object","setPrototypeOf","getPrototypeOf","defineProperty","stack","Live","effectDiscard","provide","useScoped","scopedDiscard","unwrap","unwrapEffect"],"sources":["../../../src/internal/httpRouter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform",
3
- "version": "0.70.1",
3
+ "version": "0.70.2",
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.11.1"
17
+ "effect": "^3.11.2"
18
18
  },
19
19
  "publishConfig": {
20
20
  "provenance": true
package/src/HttpApi.ts CHANGED
@@ -286,8 +286,14 @@ export const reflect = <Groups extends HttpApiGroup.HttpApiGroup.Any, Error, R>(
286
286
  readonly encoding: HttpApiSchema.Encoding
287
287
  readonly ast: AST.AST
288
288
  }>
289
- readonly successes: ReadonlyMap<number, Option.Option<AST.AST>>
290
- readonly errors: ReadonlyMap<number, Option.Option<AST.AST>>
289
+ readonly successes: ReadonlyMap<number, {
290
+ readonly ast: Option.Option<AST.AST>
291
+ readonly description: Option.Option<string>
292
+ }>
293
+ readonly errors: ReadonlyMap<number, {
294
+ readonly ast: Option.Option<AST.AST>
295
+ readonly description: Option.Option<string>
296
+ }>
291
297
  }) => void
292
298
  }
293
299
  ) => {
@@ -329,9 +335,15 @@ const emptyMap = new Map<never, never>()
329
335
 
330
336
  const extractMembers = (
331
337
  topAst: AST.AST,
332
- inherited: ReadonlyMap<number, Option.Option<AST.AST>>,
338
+ inherited: ReadonlyMap<number, {
339
+ readonly ast: Option.Option<AST.AST>
340
+ readonly description: Option.Option<string>
341
+ }>,
333
342
  getStatus: (ast: AST.AST) => number
334
- ): ReadonlyMap<number, Option.Option<AST.AST>> => {
343
+ ): ReadonlyMap<number, {
344
+ readonly ast: Option.Option<AST.AST>
345
+ readonly description: Option.Option<string>
346
+ }> => {
335
347
  const members = new Map(inherited)
336
348
  function process(ast: AST.AST) {
337
349
  if (ast._tag === "NeverKeyword") {
@@ -343,19 +355,24 @@ const extractMembers = (
343
355
  })
344
356
  const status = getStatus(ast)
345
357
  const emptyDecodeable = HttpApiSchema.getEmptyDecodeable(ast)
346
- const current = members.get(status) ?? Option.none()
358
+ const current = members.get(status)
347
359
  members.set(
348
360
  status,
349
- current.pipe(
350
- Option.map((current) =>
351
- AST.Union.make(
352
- current._tag === "Union" ? [...current.types, ast] : [current, ast]
353
- )
361
+ {
362
+ description: (current ? current.description : Option.none()).pipe(
363
+ Option.orElse(() => getDescriptionOrIdentifier(ast))
354
364
  ),
355
- Option.orElse(() =>
356
- !emptyDecodeable && AST.encodedAST(ast)._tag === "VoidKeyword" ? Option.none() : Option.some(ast)
365
+ ast: (current ? current.ast : Option.none()).pipe(
366
+ Option.map((current) =>
367
+ AST.Union.make(
368
+ current._tag === "Union" ? [...current.types, ast] : [current, ast]
369
+ )
370
+ ),
371
+ Option.orElse(() =>
372
+ !emptyDecodeable && AST.encodedAST(ast)._tag === "VoidKeyword" ? Option.none() : Option.some(ast)
373
+ )
357
374
  )
358
- )
375
+ }
359
376
  )
360
377
  }
361
378
  if (topAst._tag === "Union") {
@@ -406,6 +423,16 @@ const extractPayloads = (topAst: AST.AST): ReadonlyMap<string, {
406
423
  return members
407
424
  }
408
425
 
426
+ const getDescriptionOrIdentifier = (ast: AST.PropertySignature | AST.AST): Option.Option<string> => {
427
+ const annotations = "to" in ast ?
428
+ {
429
+ ...ast.to.annotations,
430
+ ...ast.annotations
431
+ } :
432
+ ast.annotations
433
+ return Option.fromNullable(annotations[AST.DescriptionAnnotationId] ?? annotations[AST.IdentifierAnnotationId] as any)
434
+ }
435
+
409
436
  /**
410
437
  * @since 1.0.0
411
438
  * @category tags
@@ -118,8 +118,14 @@ const makeClient = <Groups extends HttpApiGroup.Any, ApiError, ApiR>(
118
118
  readonly endpoint: HttpApiEndpoint<string, HttpMethod.HttpMethod>
119
119
  readonly mergedAnnotations: Context.Context<never>
120
120
  readonly middleware: ReadonlySet<HttpApiMiddleware.TagClassAny>
121
- readonly successes: ReadonlyMap<number, Option.Option<AST.AST>>
122
- readonly errors: ReadonlyMap<number, Option.Option<AST.AST>>
121
+ readonly successes: ReadonlyMap<number, {
122
+ readonly ast: Option.Option<AST.AST>
123
+ readonly description: Option.Option<string>
124
+ }>
125
+ readonly errors: ReadonlyMap<number, {
126
+ readonly ast: Option.Option<AST.AST>
127
+ readonly description: Option.Option<string>
128
+ }>
123
129
  readonly endpointFn: Function
124
130
  }) => void
125
131
  readonly transformClient?: ((client: HttpClient.HttpClient) => HttpClient.HttpClient) | undefined
@@ -152,7 +158,7 @@ const makeClient = <Groups extends HttpApiGroup.Any, ApiError, ApiR>(
152
158
  (response: HttpClientResponse.HttpClientResponse) => Effect.Effect<any, any>
153
159
  > = { orElse: statusOrElse }
154
160
  const decodeResponse = HttpClientResponse.matchStatus(decodeMap)
155
- errors.forEach((ast, status) => {
161
+ errors.forEach(({ ast }, status) => {
156
162
  if (ast._tag === "None") {
157
163
  decodeMap[status] = statusCodeError
158
164
  return
@@ -160,7 +166,7 @@ const makeClient = <Groups extends HttpApiGroup.Any, ApiError, ApiR>(
160
166
  const decode = schemaToResponse(ast.value)
161
167
  decodeMap[status] = (response) => Effect.flatMap(decode(response), Effect.fail)
162
168
  })
163
- successes.forEach((ast, status) => {
169
+ successes.forEach(({ ast }, status) => {
164
170
  decodeMap[status] = ast._tag === "None" ? responseAsVoid : schemaToResponse(ast.value)
165
171
  })
166
172
  const encodePayloadBody = endpoint.payloadSchema.pipe(
@@ -348,7 +354,7 @@ export const endpoint = <
348
354
 
349
355
  // ----------------------------------------------------------------------------
350
356
 
351
- const paramsRegex = /:(\w+)[^/]*/g
357
+ const paramsRegex = /:([^/:.]+)/g
352
358
 
353
359
  const compilePath = (path: string) => {
354
360
  const segments = path.split(paramsRegex)
package/src/HttpRouter.ts CHANGED
@@ -359,7 +359,7 @@ export const fromIterable: <R extends Route<any, any>>(
359
359
  * @category constructors
360
360
  */
361
361
  export const makeRoute: <E, R>(
362
- method: Method.HttpMethod,
362
+ method: Method.HttpMethod | "*",
363
363
  path: PathInput,
364
364
  handler: Route.Handler<E, R>,
365
365
  options?: { readonly prefix?: string | undefined; readonly uninterruptible?: boolean | undefined } | undefined
package/src/OpenApi.ts CHANGED
@@ -6,7 +6,6 @@ import { globalValue } from "effect/GlobalValue"
6
6
  import * as Option from "effect/Option"
7
7
  import type { ReadonlyRecord } from "effect/Record"
8
8
  import * as Schema from "effect/Schema"
9
- import * as AST from "effect/SchemaAST"
10
9
  import type { DeepMutable, Mutable } from "effect/Types"
11
10
  import * as HttpApi from "./HttpApi.js"
12
11
  import * as HttpApiMiddleware from "./HttpApiMiddleware.js"
@@ -90,9 +89,10 @@ export class Override extends Context.Tag("@effect/platform/OpenApi/Override")<O
90
89
  * @since 1.0.0
91
90
  * @category annotations
92
91
  */
93
- export class Transform
94
- extends Context.Tag("@effect/platform/OpenApi/Transform")<Transform, (openApiSpec: OpenAPISpec) => OpenAPISpec>()
95
- {}
92
+ export class Transform extends Context.Tag("@effect/platform/OpenApi/Transform")<
93
+ Transform,
94
+ (openApiSpec: Record<string, any>) => Record<string, any>
95
+ >() {}
96
96
 
97
97
  const contextPartial = <Tags extends Record<string, Context.Tag<any, any>>>(tags: Tags): (
98
98
  options: {
@@ -119,18 +119,15 @@ export const annotations: (
119
119
  options: {
120
120
  readonly identifier?: string | undefined
121
121
  readonly title?: string | undefined
122
- readonly summary?: string | undefined
123
122
  readonly version?: string | undefined
124
123
  readonly description?: string | undefined
125
124
  readonly license?: OpenAPISpecLicense | undefined
125
+ readonly summary?: string | undefined
126
126
  readonly externalDocs?: OpenAPISpecExternalDocs | undefined
127
127
  readonly servers?: ReadonlyArray<OpenAPISpecServer> | undefined
128
128
  readonly format?: string | undefined
129
129
  readonly override?: Record<string, unknown> | undefined
130
- /**
131
- * Transforms the generated OpenAPI specification
132
- */
133
- readonly transform?: ((openApiSpec: OpenAPISpec) => OpenAPISpec) | undefined
130
+ readonly transform?: ((openApiSpec: Record<string, any>) => Record<string, any>) | undefined
134
131
  }
135
132
  ) => Context.Context<never> = contextPartial({
136
133
  identifier: Identifier,
@@ -217,7 +214,7 @@ export const fromApi = <A extends HttpApi.HttpApi.Any>(self: A): OpenAPISpec =>
217
214
  })
218
215
  HttpApi.reflect(api as any, {
219
216
  onGroup({ group }) {
220
- const tag: Mutable<OpenAPISpecTag> = {
217
+ let tag: Mutable<OpenAPISpecTag> = {
221
218
  name: Context.getOrElse(group.annotations, Title, () => group.identifier)
222
219
  }
223
220
  Option.map(Context.getOption(group.annotations, Description), (description) => {
@@ -229,12 +226,15 @@ export const fromApi = <A extends HttpApi.HttpApi.Any>(self: A): OpenAPISpec =>
229
226
  Option.map(Context.getOption(group.annotations, Override), (override) => {
230
227
  Object.assign(tag, override)
231
228
  })
229
+ Option.map(Context.getOption(group.annotations, Transform), (fn) => {
230
+ tag = fn(tag) as OpenAPISpecTag
231
+ })
232
232
  spec.tags!.push(tag)
233
233
  },
234
234
  onEndpoint({ endpoint, errors, group, middleware, payloads, successes }) {
235
235
  const path = endpoint.path.replace(/:(\w+)[^/]*/g, "{$1}")
236
236
  const method = endpoint.method.toLowerCase() as OpenAPISpecMethodName
237
- const op: DeepMutable<OpenAPISpecOperation> = {
237
+ let op: DeepMutable<OpenAPISpecOperation> = {
238
238
  tags: [Context.getOrElse(group.annotations, Title, () => group.identifier)],
239
239
  operationId: Context.getOrElse(
240
240
  endpoint.annotations,
@@ -275,10 +275,10 @@ export const fromApi = <A extends HttpApi.HttpApi.Any>(self: A): OpenAPISpec =>
275
275
  })
276
276
  op.requestBody = { content, required: true }
277
277
  }
278
- for (const [status, ast] of successes) {
278
+ for (const [status, { ast, description }] of successes) {
279
279
  if (op.responses![status]) continue
280
280
  op.responses![status] = {
281
- description: Option.getOrElse(getDescriptionOrIdentifier(ast), () => "Success")
281
+ description: Option.getOrElse(description, () => "Success")
282
282
  }
283
283
  ast.pipe(
284
284
  Option.filter((ast) => !HttpApiSchema.getEmptyDecodeable(ast)),
@@ -343,10 +343,10 @@ export const fromApi = <A extends HttpApi.HttpApi.Any>(self: A): OpenAPISpec =>
343
343
  })
344
344
  }
345
345
  }
346
- for (const [status, ast] of errors) {
346
+ for (const [status, { ast, description }] of errors) {
347
347
  if (op.responses![status]) continue
348
348
  op.responses![status] = {
349
- description: Option.getOrElse(getDescriptionOrIdentifier(ast), () => "Error")
349
+ description: Option.getOrElse(description, () => "Error")
350
350
  }
351
351
  ast.pipe(
352
352
  Option.filter((ast) => !HttpApiSchema.getEmptyDecodeable(ast)),
@@ -365,12 +365,15 @@ export const fromApi = <A extends HttpApi.HttpApi.Any>(self: A): OpenAPISpec =>
365
365
  Option.map(Context.getOption(endpoint.annotations, Override), (override) => {
366
366
  Object.assign(op, override)
367
367
  })
368
+ Option.map(Context.getOption(endpoint.annotations, Transform), (transformFn) => {
369
+ op = transformFn(op)
370
+ })
368
371
  spec.paths[path][method] = op
369
372
  }
370
373
  })
371
374
 
372
375
  Option.map(Context.getOption(api.annotations, Transform), (transformFn) => {
373
- spec = transformFn(spec)
376
+ spec = transformFn(spec) as OpenAPISpec
374
377
  })
375
378
 
376
379
  apiCache.set(self, spec)
@@ -414,21 +417,6 @@ const makeSecurityScheme = (security: HttpApiSecurity): OpenAPISecurityScheme =>
414
417
  }
415
418
  }
416
419
 
417
- const getDescriptionOrIdentifier = (ast: Option.Option<AST.PropertySignature | AST.AST>): Option.Option<string> =>
418
- ast.pipe(
419
- Option.map((ast) =>
420
- "to" in ast ?
421
- {
422
- ...ast.to.annotations,
423
- ...ast.annotations
424
- } :
425
- ast.annotations
426
- ),
427
- Option.flatMapNullable((annotations) =>
428
- annotations[AST.DescriptionAnnotationId] ?? annotations[AST.IdentifierAnnotationId] as any
429
- )
430
- )
431
-
432
420
  /**
433
421
  * @category models
434
422
  * @since 1.0.0
@@ -342,7 +342,7 @@ export const fromIterable = <R extends Router.Route<any, any>>(
342
342
 
343
343
  /** @internal */
344
344
  export const makeRoute = <E, R>(
345
- method: Method.HttpMethod,
345
+ method: Method.HttpMethod | "*",
346
346
  path: Router.PathInput,
347
347
  handler: Router.Route.Handler<E, R>,
348
348
  options?: {