@effect-app/infra 0.104.3 → 0.105.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/_cjs/RequestContext.cjs +12 -12
  3. package/_cjs/RequestContext.cjs.map +1 -1
  4. package/_cjs/api/codec.cjs +2 -2
  5. package/_cjs/api/codec.cjs.map +1 -1
  6. package/_cjs/api/express/makeOpenApiSpecs.cjs +2 -2
  7. package/_cjs/api/express/makeOpenApiSpecs.cjs.map +1 -1
  8. package/_cjs/api/express/schema/jwt.cjs +11 -11
  9. package/_cjs/api/express/schema/jwt.cjs.map +1 -1
  10. package/_cjs/api/express/schema/routing.cjs +4 -4
  11. package/_cjs/api/express/schema/routing.cjs.map +1 -1
  12. package/_cjs/services/QueueMaker/memQueue.cjs +2 -2
  13. package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
  14. package/_cjs/services/QueueMaker/sbqueue.cjs +9 -8
  15. package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
  16. package/_cjs/services/QueueMaker/service.cjs +2 -2
  17. package/_cjs/services/QueueMaker/service.cjs.map +1 -1
  18. package/_cjs/services/RepositoryBase.cjs.map +1 -1
  19. package/_cjs/services/simpledb/memdb.cjs +2 -2
  20. package/_cjs/services/simpledb/memdb.cjs.map +1 -1
  21. package/_cjs/services/simpledb/redisdb.cjs +6 -6
  22. package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
  23. package/_cjs/services/simpledb/shared.cjs +9 -9
  24. package/_cjs/services/simpledb/shared.cjs.map +1 -1
  25. package/_src/RequestContext.ts +17 -17
  26. package/_src/api/app.ts.bak +12 -12
  27. package/_src/api/codec.ts +5 -5
  28. package/_src/api/express/makeOpenApiSpecs.ts +3 -3
  29. package/_src/api/express/routing.ts.bak +2 -2
  30. package/_src/api/express/schema/jwt.ts +13 -13
  31. package/_src/api/express/schema/routing.ts +12 -12
  32. package/_src/services/QueueMaker/memQueue.ts +2 -2
  33. package/_src/services/QueueMaker/sbqueue.ts +3 -2
  34. package/_src/services/QueueMaker/service.ts +2 -2
  35. package/_src/services/RepositoryBase.ts +8 -8
  36. package/_src/services/simpledb/memdb.ts +2 -2
  37. package/_src/services/simpledb/redisdb.ts +6 -6
  38. package/_src/services/simpledb/shared.ts +11 -11
  39. package/dist/RequestContext.d.ts +39 -39
  40. package/dist/RequestContext.d.ts.map +1 -1
  41. package/dist/RequestContext.js +12 -12
  42. package/dist/api/codec.d.ts +3 -3
  43. package/dist/api/codec.d.ts.map +1 -1
  44. package/dist/api/codec.js +3 -3
  45. package/dist/api/express/makeOpenApiSpecs.d.ts +1 -1
  46. package/dist/api/express/makeOpenApiSpecs.js +4 -4
  47. package/dist/api/express/schema/jwt.d.ts +4 -4
  48. package/dist/api/express/schema/jwt.d.ts.map +1 -1
  49. package/dist/api/express/schema/jwt.js +12 -12
  50. package/dist/api/express/schema/routing.d.ts +8 -8
  51. package/dist/api/express/schema/routing.d.ts.map +1 -1
  52. package/dist/api/express/schema/routing.js +5 -5
  53. package/dist/services/QueueMaker/memQueue.js +3 -3
  54. package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
  55. package/dist/services/QueueMaker/sbqueue.js +10 -9
  56. package/dist/services/QueueMaker/service.d.ts +3 -3
  57. package/dist/services/QueueMaker/service.js +3 -3
  58. package/dist/services/RepositoryBase.d.ts +2 -2
  59. package/dist/services/RepositoryBase.d.ts.map +1 -1
  60. package/dist/services/RepositoryBase.js +1 -1
  61. package/dist/services/simpledb/memdb.d.ts +4 -4
  62. package/dist/services/simpledb/memdb.d.ts.map +1 -1
  63. package/dist/services/simpledb/memdb.js +3 -3
  64. package/dist/services/simpledb/redisdb.d.ts +9 -9
  65. package/dist/services/simpledb/redisdb.d.ts.map +1 -1
  66. package/dist/services/simpledb/redisdb.js +7 -7
  67. package/dist/services/simpledb/shared.d.ts +13 -13
  68. package/dist/services/simpledb/shared.d.ts.map +1 -1
  69. package/dist/services/simpledb/shared.js +10 -10
  70. package/package.json +6 -6
@@ -10,7 +10,7 @@ var tsplus_module_2 = _interopRequireWildcard(require("@effect-app/core/Effect")
10
10
  var tsplus_module_3 = _interopRequireWildcard(require("effect/Option"));
11
11
  var _Function = require("@effect-app/core/Function");
12
12
  var _redisClient = require("@effect-app/infra-adapters/redis-client");
13
- var MO = _interopRequireWildcard(require("@effect-app/schema"));
13
+ var S = _interopRequireWildcard(require("@effect-app/schema"));
14
14
  var _shared = require("./shared.cjs");
15
15
  var simpledb = _interopRequireWildcard(require("./simpledb.cjs"));
16
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -27,7 +27,7 @@ function createContext() {
27
27
  save: simpledb.store(find, store, lockRedisRecord, type)
28
28
  };
29
29
  function find(id) {
30
- return tsplus_module_1.orDie(tsplus_module_2.flatMapOption(tsplus_module_1.flatMap(_redisClient.RedisClient, _ => _.hmgetAll(getKey(id))), v => tsplus_module_1.mapError(tsplus_module_1.map((0, _Function.pipe)(RedisSerializedDBRecord.Parser, MO.condemnFail)(v), ({
30
+ return tsplus_module_1.orDie(tsplus_module_2.flatMapOption(tsplus_module_1.flatMap(_redisClient.RedisClient, _ => _.hmgetAll(getKey(id))), v => tsplus_module_1.mapError(tsplus_module_1.map((0, _Function.pipe)(RedisSerializedDBRecord.Parser, S.condemnFail)(v), ({
31
31
  data,
32
32
  version
33
33
  }) => ({
@@ -124,10 +124,10 @@ function createContext() {
124
124
  })));
125
125
  }
126
126
  }
127
- class RedisSerializedDBRecord extends MO.Model()({
128
- version: MO.prop(MO.string),
129
- timestamp: MO.prop(MO.date),
130
- data: MO.prop(MO.string)
127
+ class RedisSerializedDBRecord extends S.Class()({
128
+ version: S.string,
129
+ timestamp: S.date,
130
+ data: S.string
131
131
  }) {}
132
132
  exports.RedisSerializedDBRecord = RedisSerializedDBRecord;
133
133
  //# sourceMappingURL=redisdb.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"redisdb.cjs","names":["_Function","require","_redisClient","MO","_interopRequireWildcard","_shared","simpledb","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ttl","createContext","type","encode","decode","schemaVersion","makeIndexKey","getData","flow","_","tsplus_module_1","map","JSON","stringify","find","findByIndex","getIdx","save","store","lockRedisRecord","id","orDie","tsplus_module_2","flatMapOption","flatMap","RedisClient","hmgetAll","getKey","v","mapError","pipe","RedisSerializedDBRecord","Parser","condemnFail","data","version","parse","ConnectionException","Error","toString","record","currentVersion","tsplus_module_3","getOrElse","cv","parseInt","match","onNone","scoped","zipRight","lockIndex","zipRightOption","getIndex","fail","hmSetRec","timestamp","Date","setIndex","onSome","index","setIdx","lockRedisIdx","hget","getIdxKey","key","hset","lockKey","getIdxLockKey","acquireRelease","mapBoth","lock","tryPromise","onFailure","err","CouldNotAquireDbLockException","onSuccess","release","unlock","l","getLockKey","getRecordName","getIndexName","doc","val","enc","Encoder","client","uninterruptible","async","res","hmset","sync","Model","prop","string","date","exports"],"sources":["../../../_src/services/simpledb/redisdb.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"redisdb.cjs","names":["_Function","require","_redisClient","S","_interopRequireWildcard","_shared","simpledb","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ttl","createContext","type","encode","decode","schemaVersion","makeIndexKey","getData","flow","_","tsplus_module_1","map","JSON","stringify","find","findByIndex","getIdx","save","store","lockRedisRecord","id","orDie","tsplus_module_2","flatMapOption","flatMap","RedisClient","hmgetAll","getKey","v","mapError","pipe","RedisSerializedDBRecord","Parser","condemnFail","data","version","parse","ConnectionException","Error","toString","record","currentVersion","tsplus_module_3","getOrElse","cv","parseInt","match","onNone","scoped","zipRight","lockIndex","zipRightOption","getIndex","fail","hmSetRec","timestamp","Date","setIndex","onSome","index","setIdx","lockRedisIdx","hget","getIdxKey","key","hset","lockKey","getIdxLockKey","acquireRelease","mapBoth","lock","tryPromise","onFailure","err","CouldNotAquireDbLockException","onSuccess","release","unlock","l","getLockKey","getRecordName","getIndexName","doc","val","enc","Encoder","client","uninterruptible","async","res","hmset","sync","Class","string","date","exports"],"sources":["../../../_src/services/simpledb/redisdb.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -11,7 +11,7 @@ exports.makeSerialisedDBRecord = makeSerialisedDBRecord;
11
11
  var tsplus_module_1 = _interopRequireWildcard(require("effect/Data"));
12
12
  var tsplus_module_2 = _interopRequireWildcard(require("effect/Option"));
13
13
  var tsplus_module_3 = _interopRequireWildcard(require("effect/Effect"));
14
- var MO = _interopRequireWildcard(require("@effect-app/schema"));
14
+ var S = _interopRequireWildcard(require("@effect-app/schema"));
15
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
16
16
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
17
17
  class CouldNotAquireDbLockException extends tsplus_module_1.TaggedError("CouldNotAquireDbLockException") {
@@ -45,18 +45,18 @@ class ConnectionException extends tsplus_module_1.TaggedError("ConnectionExcepti
45
45
  }
46
46
  }
47
47
  exports.ConnectionException = ConnectionException;
48
- class SerializedDBRecord extends MO.Model()({
49
- version: MO.prop(MO.string),
50
- timestamp: MO.prop(MO.date),
51
- data: MO.prop(MO.string)
48
+ class SerializedDBRecord extends S.Class()({
49
+ version: S.string,
50
+ timestamp: S.date,
51
+ data: S.string
52
52
  }) {}
53
53
  // unknown -> string -> SDB?
54
54
  exports.SerializedDBRecord = SerializedDBRecord;
55
55
  function makeSerialisedDBRecord(s) {
56
- return MO.props({
57
- version: MO.prop(MO.number),
58
- timestamp: MO.prop(MO.date),
59
- data: MO.prop(s)
56
+ return S.struct({
57
+ version: S.number,
58
+ timestamp: S.date,
59
+ data: s
60
60
  });
61
61
  }
62
62
  function getIndexName(type, id) {
@@ -1 +1 @@
1
- {"version":3,"file":"shared.cjs","names":["MO","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","CouldNotAquireDbLockException","tsplus_module_1","TaggedError","constructor","type","id","error","message","exports","OptimisticLockException","ConnectionException","cause","_errorTag","SerializedDBRecord","Model","version","prop","string","timestamp","date","data","makeSerialisedDBRecord","s","props","number","getIndexName","getRecordName","makeMap","map","Map","find","k","tsplus_module_3","sync","tsplus_module_2","fromNullable","Symbol","iterator","v"],"sources":["../../../_src/services/simpledb/shared.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"shared.cjs","names":["S","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","CouldNotAquireDbLockException","tsplus_module_1","TaggedError","constructor","type","id","error","message","exports","OptimisticLockException","ConnectionException","cause","_errorTag","SerializedDBRecord","Class","version","string","timestamp","date","data","makeSerialisedDBRecord","s","struct","number","getIndexName","getRecordName","makeMap","map","Map","find","k","tsplus_module_3","sync","tsplus_module_2","fromNullable","Symbol","iterator","v"],"sources":["../../../_src/services/simpledb/shared.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  import { RequestId, UserProfileId } from "@effect-app/prelude/ids"
2
2
 
3
3
  @useClassFeaturesForSchema
4
- export class RequestContextParent extends MNModel<
4
+ export class RequestContextParent extends ExtendedClass<
5
5
  RequestContextParent,
6
6
  RequestContextParent.ConstructorInput,
7
- RequestContextParent.Encoded,
8
- RequestContextParent.Props
7
+ RequestContextParent.From,
8
+ RequestContextParent.Fields
9
9
  >()({
10
10
  _tag: literal("RequestContext"),
11
11
  id: RequestId,
12
12
  name: ReasonableString,
13
- userProfile: props({ sub: prop(UserProfileId) }).optional,
13
+ userProfile: struct({ sub: UserProfileId }).optional,
14
14
  locale: literal("en", "de"),
15
15
  createdAt: date.withDefault
16
16
  }) {}
@@ -20,11 +20,11 @@ export class RequestContextParent extends MNModel<
20
20
  * @tsplus companion RequestContext.Ops
21
21
  */
22
22
  @useClassFeaturesForSchema
23
- export class RequestContext extends MNModel<
23
+ export class RequestContext extends ExtendedClass<
24
24
  RequestContext,
25
25
  RequestContext.ConstructorInput,
26
- RequestContext.Encoded,
27
- RequestContext.Props
26
+ RequestContext.From,
27
+ RequestContext.Fields
28
28
  >()({
29
29
  ...RequestContextParent.omit("id"),
30
30
  id: RequestId.withDefault,
@@ -61,23 +61,23 @@ export class RequestContext extends MNModel<
61
61
  /* eslint-disable */
62
62
  export namespace RequestContextParent {
63
63
  /**
64
- * @tsplus type RequestContextParent.Encoded
65
- * @tsplus companion RequestContextParent.Encoded/Ops
64
+ * @tsplus type RequestContextParent.From
65
+ * @tsplus companion RequestContextParent.From/Ops
66
66
  */
67
- export class Encoded extends EncodedClass<typeof RequestContextParent>() {}
67
+ export class From extends FromClass<typeof RequestContextParent>() {}
68
68
  export interface ConstructorInput
69
- extends ConstructorInputFromApi<typeof RequestContextParent> {}
70
- export interface Props extends GetProvidedProps<typeof RequestContextParent> {}
69
+ extends ConstructorInputApi<typeof RequestContextParent> {}
70
+ export interface Fields extends FieldsClass<typeof RequestContextParent> {}
71
71
  }
72
72
  export namespace RequestContext {
73
73
  /**
74
- * @tsplus type RequestContext.Encoded
75
- * @tsplus companion RequestContext.Encoded/Ops
74
+ * @tsplus type RequestContext.From
75
+ * @tsplus companion RequestContext.From/Ops
76
76
  */
77
- export class Encoded extends EncodedClass<typeof RequestContext>() {}
77
+ export class From extends FromClass<typeof RequestContext>() {}
78
78
  export interface ConstructorInput
79
- extends ConstructorInputFromApi<typeof RequestContext> {}
80
- export interface Props extends GetProvidedProps<typeof RequestContext> {}
79
+ extends ConstructorInputApi<typeof RequestContext> {}
80
+ export interface Fields extends FieldsClass<typeof RequestContext> {}
81
81
  }
82
82
  /* eslint-enable */
83
83
  //
@@ -1,13 +1,13 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
2
  import { flow } from "@effect-app/core/Function"
3
- import * as MO from "@effect-app/schema"
3
+ import * as S from "@effect-app/schema"
4
4
 
5
5
  import { NotFoundError, UnauthorizedError } from "./errors.js"
6
6
 
7
7
  export function handle<
8
8
  TModule extends Record<
9
9
  string,
10
- any // { Model: MO.SchemaAny; new (...args: any[]): any } | MO.SchemaAny
10
+ any // { Class: S.SchemaAny; new (...args: any[]): any } | S.SchemaAny
11
11
  >
12
12
  >(
13
13
  _: TModule & { ResponseOpenApi?: any },
@@ -15,27 +15,27 @@ export function handle<
15
15
  ): <R, E>(
16
16
  h: (
17
17
  r: InstanceType<
18
- MO.GetRequest<TModule> extends { new(...args: any[]): any } ? MO.GetRequest<TModule>
18
+ S.GetRequest<TModule> extends { new(...args: any[]): any } ? S.GetRequest<TModule>
19
19
  : never
20
20
  >
21
- ) => Effect<R, E, MO.ParsedShapeOf<Extr<MO.GetResponse<TModule>>>>
21
+ ) => Effect<R, E, S.To<Extr<S.GetResponse<TModule>>>>
22
22
  ) => {
23
23
  h: typeof h
24
- Request: MO.GetRequest<TModule>
25
- Response: MO.GetResponse<TModule>
24
+ Request: S.GetRequest<TModule>
25
+ Response: S.GetResponse<TModule>
26
26
  ResponseOpenApi: any
27
27
  } {
28
28
  // TODO: Prevent over providing // no strict/shrink yet.
29
- const Request = MO.extractRequest(_)
30
- const Response = MO.extractResponse(_)
29
+ const Request = S.extractRequest(_)
30
+ const Response = S.extractResponse(_)
31
31
 
32
32
  return <R, E>(
33
33
  h: (
34
34
  r: InstanceType<
35
- MO.GetRequest<TModule> extends { new(...args: any[]): any } ? MO.GetRequest<TModule>
35
+ S.GetRequest<TModule> extends { new(...args: any[]): any } ? S.GetRequest<TModule>
36
36
  : never
37
37
  >
38
- ) => Effect<R, E, MO.ParsedShapeOf<Extr<MO.GetResponse<TModule>>>>
38
+ ) => Effect<R, E, S.To<Extr<S.GetResponse<TModule>>>>
39
39
  ) => ({
40
40
  adaptResponse,
41
41
  h,
@@ -45,8 +45,8 @@ export function handle<
45
45
  } as any)
46
46
  }
47
47
 
48
- type Extr<T> = T extends { Model: MO.SchemaAny } ? T["Model"]
49
- : T extends MO.SchemaAny ? T
48
+ type Extr<T> = T extends { Class: S.SchemaAny } ? T["Class"]
49
+ : T extends S.SchemaAny ? T
50
50
  : never
51
51
 
52
52
  export function accessM_<T, UserId, Err>(
package/_src/api/codec.ts CHANGED
@@ -1,14 +1,14 @@
1
- import * as MO from "@effect-app/schema"
1
+ import * as S from "@effect-app/schema"
2
2
  import { Encoder, Parser } from "@effect-app/schema"
3
3
 
4
4
  export function makeCodec<
5
- ParsedShape extends { id: Id },
5
+ To extends { id: Id },
6
6
  ConstructorInput,
7
- Encoded,
7
+ From,
8
8
  Api,
9
9
  Id
10
- >(self: MO.Schema<unknown, ParsedShape, ConstructorInput, Encoded, Api>) {
11
- const decode = MO.condemnDie(Parser.for(self))
10
+ >(self: S.Schema<unknown, To, ConstructorInput, From, Api>) {
11
+ const decode = S.condemnDie(Parser.for(self))
12
12
  // TODO: strict
13
13
  const encode = Encoder.for(self)
14
14
  return [decode, encode] as const
@@ -53,9 +53,9 @@ export function makeOpenApiSpecs(
53
53
  tags: [],
54
54
  paths,
55
55
  components,
56
- security: {
57
- bearerAuth: []
58
- }
56
+ security: [
57
+ { bearerAuth: [] }
58
+ ]
59
59
  // test,
60
60
  }
61
61
  })
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable @typescript-eslint/ban-types */
2
2
  /* eslint-disable @typescript-eslint/no-explicit-any */
3
- import * as MO from "@effect-app/schema"
3
+ import * as S from "@effect-app/schema"
4
4
  import { Encoder, extractSchema } from "@effect-app/schema"
5
5
  import type express from "express"
6
6
 
@@ -106,7 +106,7 @@ export function makeRequestHandler<
106
106
  h?: (req: express.Request, res: express.Response) => Layer<R2, SupportedErrors, PR>
107
107
  ) {
108
108
  const { Request, Response } = handle
109
- const res = Response ? extractSchema(Response as any) : MO.Void
109
+ const res = Response ? extractSchema(Response as any) : S.Void
110
110
  const encodeResponse = handle.adaptResponse
111
111
  ? (req: ReqA) => Encoder.for(handle.adaptResponse(req))
112
112
  : () => Encoder.for(res)
@@ -2,36 +2,36 @@
2
2
  /* eslint-disable @typescript-eslint/no-explicit-any */
3
3
  /* eslint-disable @typescript-eslint/ban-types */
4
4
  import { pipe } from "@effect-app/core/Function"
5
- import * as MO from "@effect-app/schema"
5
+ import * as S from "@effect-app/schema"
6
6
  import { These as Th } from "@effect-app/schema"
7
7
  import { jwtDecode } from "jwt-decode"
8
8
 
9
- export const jwtIdentifier = MO.makeAnnotation<{}>()
9
+ export const jwtIdentifier = S.makeAnnotation<{}>()
10
10
 
11
- export const jwtFromString: MO.Schema<string, unknown, unknown, string, {}> = pipe(
12
- // MO.identity((u): u is string => typeof u === "string"),
13
- MO.identity((u): u is string => {
11
+ export const jwtFromString: S.Schema<string, unknown, unknown, string, {}> = pipe(
12
+ // S.identity((u): u is string => typeof u === "string"),
13
+ S.identity((u): u is string => {
14
14
  throw new Error("Cannot id JWT: " + u)
15
15
  }),
16
- MO.constructor((n) => Th.succeed(n)),
17
- // MO.arbitrary((_) => {
16
+ S.constructor((n) => Th.succeed(n)),
17
+ // S.arbitrary((_) => {
18
18
  // throw new Error("Cannot arb JWT")
19
19
  // }), // TODO
20
- // MO.encoder((_) => {
20
+ // S.encoder((_) => {
21
21
  // throw new Error("can't encode")
22
22
  // }),
23
- MO.parser((p: any) => {
23
+ S.parser((p: any) => {
24
24
  try {
25
25
  return Th.succeed(
26
26
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
27
27
  jwtDecode(p)
28
28
  )
29
29
  } catch (err) {
30
- return Th.fail(MO.leafE(MO.parseStringE(p))) // "not a JWT: " + err as anyw
30
+ return Th.fail(S.leafE(S.parseStringE(p))) // "not a JWT: " + err as anyw
31
31
  }
32
32
  }),
33
- MO.mapApi(() => ({})),
34
- MO.annotate(jwtIdentifier, {})
33
+ S.mapApi(() => ({})),
34
+ S.annotate(jwtIdentifier, {})
35
35
  )
36
36
 
37
- export const jwt = MO.string[">>>"](jwtFromString)
37
+ export const jwt = S.string[">>>"](jwtFromString)
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable @typescript-eslint/ban-types */
2
2
  /* eslint-disable @typescript-eslint/no-explicit-any */
3
- import * as MO from "@effect-app/schema"
3
+ import * as S from "@effect-app/schema"
4
4
  import type { Methods } from "@effect-app/schema"
5
5
 
6
6
  import type { JSONSchema, ParameterLocation, SubSchema } from "@effect-app/infra-adapters/Openapi/atlas-plutus"
@@ -15,14 +15,14 @@ export type Request<
15
15
  BodyA,
16
16
  HeaderA,
17
17
  ReqA extends PathA & QueryA & BodyA
18
- > = MO.ReqResSchemed<unknown, ReqA> & {
18
+ > = S.ReqResSchemed<unknown, ReqA> & {
19
19
  method: Methods.Rest
20
20
  path: string
21
- Cookie?: MO.ReqRes<Record<string, string>, CookieA>
22
- Path?: MO.ReqRes<Record<string, string>, PathA>
23
- Body?: MO.ReqRes<unknown, BodyA>
24
- Query?: MO.ReqRes<Record<string, string>, QueryA>
25
- Headers?: MO.ReqRes<Record<string, string>, HeaderA>
21
+ Cookie?: S.ReqRes<Record<string, string>, CookieA>
22
+ Path?: S.ReqRes<Record<string, string>, PathA>
23
+ Body?: S.ReqRes<unknown, BodyA>
24
+ Query?: S.ReqRes<Record<string, string>, QueryA>
25
+ Headers?: S.ReqRes<Record<string, string>, HeaderA>
26
26
  Tag: Tag<M, M>
27
27
  }
28
28
 
@@ -37,7 +37,7 @@ export interface RouteRequestHandler<
37
37
  ResA
38
38
  > {
39
39
  Request: Request<M, PathA, CookieA, QueryA, BodyA, HeaderA, ReqA>
40
- Response?: MO.ReqRes<unknown, ResA> | MO.ReqResSchemed<unknown, ResA>
40
+ Response?: S.ReqRes<unknown, ResA> | S.ReqResSchemed<unknown, ResA>
41
41
  ResponseOpenApi?: any
42
42
  }
43
43
 
@@ -123,10 +123,10 @@ export function makeFromSchema<ResA>(
123
123
  e: RouteDescriptor<any, any, any, any, any, any, ResA, any>
124
124
  ) {
125
125
  const jsonSchema_ = OpenApi.for
126
- const jsonSchema = <E, A>(r: MO.ReqRes<E, A>) => jsonSchema_(r)
126
+ const jsonSchema = <E, A>(r: S.ReqRes<E, A>) => jsonSchema_(r)
127
127
  const { Request: Req, Response: Res_, ResponseOpenApi } = e.handler
128
128
  const r = ResponseOpenApi ?? Res_
129
- const Res = r ? MO.extractSchema(r) : MO.Void
129
+ const Res = r ? S.extractSchema(r) : S.Void
130
130
  // TODO EffectOption.fromNullable(Req.Headers).flatMapOpt(jsonSchema)
131
131
  // TODO: use the path vs body etc serialisation also in the Client.
132
132
  const makeReqQuerySchema = Effect(Option.fromNullable(Req.Query)).flatMap((_) =>
@@ -182,7 +182,7 @@ export function makeFromSchema<ResA>(
182
182
 
183
183
  return Effect
184
184
  .all({
185
- req: jsonSchema(Req.Model),
185
+ req: jsonSchema(Req.Class),
186
186
  reqQuery: makeReqQuerySchema,
187
187
  reqHeaders: makeReqHeadersSchema,
188
188
  reqBody: makeReqBodySchema,
@@ -192,7 +192,7 @@ export function makeFromSchema<ResA>(
192
192
  })
193
193
  .map((_) => {
194
194
  // console.log("$$$ REQ", _.req)
195
- const isEmpty = !e.handler.Response || e.handler.Response === MO.Void
195
+ const isEmpty = !e.handler.Response || e.handler.Response === S.Void
196
196
  return {
197
197
  path: e.path,
198
198
  method: e.method.toLowerCase(),
@@ -28,9 +28,9 @@ export function makeMemQueue<
28
28
  const qDrain = yield* $(mem.getOrCreateQueue(queueDrainName))
29
29
  const rcc = yield* $(RequestContextContainer)
30
30
 
31
- const wireSchema = props({ body: schema, meta: QueueMeta })
31
+ const wireSchema = struct({ body: schema, meta: QueueMeta })
32
32
  const encoder = wireSchema.Encoder
33
- const drainW = props({ body: drainSchema, meta: QueueMeta })
33
+ const drainW = struct({ body: drainSchema, meta: QueueMeta })
34
34
  const parseDrain = drainW.parseCondemnDie
35
35
 
36
36
  return {
@@ -10,6 +10,7 @@ import type {} from "@azure/service-bus"
10
10
  import { captureException } from "@effect-app/infra/errorReporter"
11
11
  import { RequestContext } from "@effect-app/infra/RequestContext"
12
12
  import { RequestId } from "@effect-app/prelude/ids"
13
+ import { struct } from "@effect-app/schema"
13
14
  import { Tracer } from "effect"
14
15
  import { RequestContextContainer } from "../RequestContextContainer.js"
15
16
  import { reportNonInterruptedFailure, reportNonInterruptedFailureCause } from "./errors.js"
@@ -31,12 +32,12 @@ export function makeServiceBusQueue<
31
32
  drainSchema: Schema.Schema<unknown, DrainEvt, any, any, any>,
32
33
  makeHandleEvent: Effect<DrainR, never, (ks: DrainEvt) => Effect<never, DrainE, void>>
33
34
  ) {
34
- const wireSchema = props({
35
+ const wireSchema = struct({
35
36
  body: schema,
36
37
  meta: QueueMeta
37
38
  })
38
39
  const encoder = wireSchema.Encoder
39
- const drainW = props({ body: drainSchema, meta: QueueMeta })
40
+ const drainW = struct({ body: drainSchema, meta: QueueMeta })
40
41
  const parseDrain = drainW.parseCondemnDie
41
42
 
42
43
  return Effect.gen(function*($) {
@@ -15,9 +15,9 @@ export interface QueueBase<RContext, Evt> {
15
15
  export interface QueueMakerOps {}
16
16
  export const QueueMaker: QueueMakerOps = {}
17
17
 
18
- export const QueueMeta = props({
18
+ export const QueueMeta = struct({
19
19
  requestContext: RequestContext,
20
- span: props({
20
+ span: struct({
21
21
  spanId: string,
22
22
  traceId: string,
23
23
  sampled: bool.optional
@@ -85,17 +85,17 @@ export function makeRepo<
85
85
  T extends { id: string },
86
86
  ConstructorInput,
87
87
  Api,
88
- Encoded extends { id: string }
88
+ From extends { id: string }
89
89
  >(
90
90
  name: ItemType,
91
- schema: Schema.Schema<unknown, T, ConstructorInput, Encoded, Api>,
92
- mapFrom: (pm: Omit<PM, "_etag">) => Encoded,
93
- mapTo: (e: Encoded, etag: string | undefined) => PM
91
+ schema: Schema.Schema<unknown, T, ConstructorInput, From, Api>,
92
+ mapFrom: (pm: Omit<PM, "_etag">) => From,
93
+ mapTo: (e: From, etag: string | undefined) => PM
94
94
  ) => {
95
95
  const where = makeWhere<PM>()
96
96
 
97
97
  function mapToPersistenceModel(
98
- e: Encoded,
98
+ e: From,
99
99
  getEtag: (id: string) => string | undefined
100
100
  ): PM {
101
101
  return mapTo(e, getEtag(e.id))
@@ -104,7 +104,7 @@ export function makeRepo<
104
104
  function mapReverse(
105
105
  { _etag, ...e }: PM,
106
106
  setEtag: (id: string, eTag: string | undefined) => void
107
- ): Encoded {
107
+ ): From {
108
108
  setEtag(e.id, _etag)
109
109
  return mapFrom(e)
110
110
  }
@@ -159,7 +159,7 @@ export function makeRepo<
159
159
  return findE(id).flatMapOpt(EParserFor(schema).condemnDie)
160
160
  }
161
161
 
162
- const saveAllE = (a: Iterable<Encoded>) =>
162
+ const saveAllE = (a: Iterable<From>) =>
163
163
  Effect(a.toNonEmptyArray)
164
164
  .flatMapOpt((a) =>
165
165
  Do(($) => {
@@ -495,7 +495,7 @@ export const RepositoryDefaultImpl = <Service>() => {
495
495
  }
496
496
 
497
497
  // @useClassFeaturesForSchema
498
- // export class Shop extends Model<Shop>()({ id: string }) {}
498
+ // export class Shop extends Class<Shop>()({ id: string }) {}
499
499
 
500
500
  // /**
501
501
  // * @tsplus type ShopRepo
@@ -1,5 +1,5 @@
1
1
  import { flow } from "@effect-app/core/Function"
2
- import * as MO from "@effect-app/schema"
2
+ import * as S from "@effect-app/schema"
3
3
 
4
4
  import type { CachedRecord, DBRecord } from "./shared.js"
5
5
  import { getRecordName, makeMap, SerializedDBRecord } from "./shared.js"
@@ -10,7 +10,7 @@ import type { Version } from "./simpledb.js"
10
10
  // Do not try this at home.
11
11
  const storage = makeMap<string, string>()
12
12
 
13
- const parseSDB = SerializedDBRecord.Parser >= MO.condemnFail
13
+ const parseSDB = SerializedDBRecord.Parser >= S.condemnFail
14
14
 
15
15
  export function createContext<TKey extends string, EA, A extends DBRecord<TKey>>() {
16
16
  return <REncode, RDecode, EDecode>(
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { flow, pipe } from "@effect-app/core/Function"
4
4
  import { RedisClient } from "@effect-app/infra-adapters/redis-client"
5
- import * as MO from "@effect-app/schema"
5
+ import * as S from "@effect-app/schema"
6
6
  import type { Lock } from "redlock"
7
7
  import type { CachedRecord, DBRecord, Index } from "./shared.js"
8
8
  import { ConnectionException, CouldNotAquireDbLockException, getIndexName, getRecordName } from "./shared.js"
@@ -31,7 +31,7 @@ export function createContext<TKey extends string, EA, A extends DBRecord<TKey>>
31
31
  .flatMapOpt((v) =>
32
32
  pipe(
33
33
  RedisSerializedDBRecord.Parser,
34
- MO.condemnFail
34
+ S.condemnFail
35
35
  )(v)
36
36
  .map(({ data, version }) => ({
37
37
  data: JSON.parse(data) as EA,
@@ -188,8 +188,8 @@ export function createContext<TKey extends string, EA, A extends DBRecord<TKey>>
188
188
  }
189
189
  }
190
190
 
191
- export class RedisSerializedDBRecord extends MO.Model<RedisSerializedDBRecord>()({
192
- version: MO.prop(MO.string),
193
- timestamp: MO.prop(MO.date),
194
- data: MO.prop(MO.string)
191
+ export class RedisSerializedDBRecord extends S.Class<RedisSerializedDBRecord>()({
192
+ version: S.string,
193
+ timestamp: S.date,
194
+ data: S.string
195
195
  }) {}
@@ -1,4 +1,4 @@
1
- import * as MO from "@effect-app/schema"
1
+ import * as S from "@effect-app/schema"
2
2
  import type { SchemaAny } from "@effect-app/schema"
3
3
 
4
4
  export class CouldNotAquireDbLockException
@@ -28,18 +28,18 @@ export interface DBRecord<TKey extends string> {
28
28
  id: TKey
29
29
  }
30
30
 
31
- export class SerializedDBRecord extends MO.Model<SerializedDBRecord>()({
32
- version: MO.prop(MO.string),
33
- timestamp: MO.prop(MO.date),
34
- data: MO.prop(MO.string)
31
+ export class SerializedDBRecord extends S.Class<SerializedDBRecord>()({
32
+ version: S.string,
33
+ timestamp: S.date,
34
+ data: S.string
35
35
  }) {}
36
36
 
37
37
  // unknown -> string -> SDB?
38
38
  export function makeSerialisedDBRecord(s: SchemaAny) {
39
- return MO.props({
40
- version: MO.prop(MO.number),
41
- timestamp: MO.prop(MO.date),
42
- data: MO.prop(s)
39
+ return S.struct({
40
+ version: S.number,
41
+ timestamp: S.date,
42
+ data: s
43
43
  })
44
44
  }
45
45
 
@@ -80,7 +80,7 @@ export interface EffectMap<TKey, T> {
80
80
  }
81
81
 
82
82
  // export function encodeOnlyWhenStrictMatch<A, E>(
83
- // encode: MO.HasEncoder<A, E>["encode_"],
83
+ // encode: S.HasEncoder<A, E>["encode_"],
84
84
  // v: A
85
85
  // ) {
86
86
  // const e1 = Sync.run(encode(v, "strict"))
@@ -98,7 +98,7 @@ export interface EffectMap<TKey, T> {
98
98
  // }
99
99
 
100
100
  // export function decodeOnlyWhenStrictMatch<A, E>(
101
- // decode: MO.HasDecoder<A, E>["decode_"],
101
+ // decode: S.HasDecoder<A, E>["decode_"],
102
102
  // u: unknown
103
103
  // ) {
104
104
  // return pipe(