@effect-app/infra 0.57.0 → 0.58.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.
- package/CHANGELOG.md +20 -0
- package/_cjs/RequestContext.cjs.map +1 -1
- package/_cjs/services/RepositoryBase.cjs +28 -24
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/_src/RequestContext.ts +0 -2
- package/_src/services/RepositoryBase.ts +5 -0
- package/dist/RequestContext.d.ts.map +1 -1
- package/dist/RequestContext.js +1 -1
- package/dist/services/Repository.d.ts +15 -15
- package/dist/services/RepositoryBase.d.ts +7 -4
- package/dist/services/RepositoryBase.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +29 -25
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
# @effect-app/infra
|
|
2
2
|
|
|
3
|
+
## 0.58.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- fix
|
|
8
|
+
|
|
9
|
+
## 0.58.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- Compiler test
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- Updated dependencies
|
|
18
|
+
- @effect-app/core@0.49.0
|
|
19
|
+
- @effect-app/infra-adapters@0.42.0
|
|
20
|
+
- @effect-app/prelude@0.48.0
|
|
21
|
+
- @effect-app/schema@0.43.0
|
|
22
|
+
|
|
3
23
|
## 0.57.0
|
|
4
24
|
|
|
5
25
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestContext.cjs","names":["RequestId","tsplus_module_1","StringId","exports","RequestContextParent","MNModel","_tag","literal","id","name","ReasonableString","user","tsplus_module_2","optionalProp","props","prop","locale","createdAt","withDefaultProp","date","__decorate","useClassFeaturesForSchema","RequestContext","RequestContext_1","omit","withDefault","rootId","parent","namespace","inherit","newSelf","toMonitoring","self","operationName","parentOperationName","parentLocale","Encoded","EncodedClass"],"sources":["../_src/RequestContext.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"RequestContext.cjs","names":["RequestId","tsplus_module_1","StringId","exports","RequestContextParent","MNModel","_tag","literal","id","name","ReasonableString","user","tsplus_module_2","optionalProp","props","prop","locale","createdAt","withDefaultProp","date","__decorate","useClassFeaturesForSchema","RequestContext","RequestContext_1","omit","withDefault","rootId","parent","namespace","inherit","newSelf","toMonitoring","self","operationName","parentOperationName","parentLocale","Encoded","EncodedClass"],"sources":["../_src/RequestContext.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;AAAO,MAAMA,SAAS,GAAAC,eAAA,CAAGC,QAAQ;AAAAC,OAAA,CAAAH,SAAA,GAAAA,SAAA;AAIjC,IAAaI,oBAAoB,GAAjC,MAAaA,oBAAqB,SAAQH,eAAA,CAAAI,OAAO,EAK9C,CAAC;EACFC,IAAI,EAAEL,eAAA,CAAAM,OAAO,CAAC,gBAAgB,CAAC;EAC/BC,EAAE,EAAER,SAAS;EACbS,IAAI,EAAAR,eAAA,CAAES,gBAAgB;EACtBC,IAAI,EAAAC,eAAA,CAAAC,YAAA,CAAEZ,eAAA,CAAAa,KAAK,CAAC;IAAEN,EAAE,EAAEP,eAAA,CAAAc,IAAI,CAAAd,eAAA,CAACC,QAAQ;EAAC,CAAE,CAAC,CAAS;EAC5Cc,MAAM,EAAEf,eAAA,CAAAM,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;EAC3BU,SAAS,EAAAL,eAAA,CAAAM,eAAA,CAAAjB,eAAA,CAAEkB,IAAI;CAChB,CAAC,GAAG;AAAAhB,OAAA,CAAAC,oBAAA,GAAAA,oBAAA;AAZQD,OAAA,CAAAC,oBAAA,GAAAA,oBAAoB,GAAAgB,UAAA,E,gBADhCC,yBAAyB,C,EACbjB,oBAAoB,CAY5B;AAEL;;;;AAKA,IAAakB,cAAc,GAAAC,gBAAA,GAA3B,MAAaD,cAAe,SAAQrB,eAAA,CAAAI,OAAO,EAKxC,CAAC;EACF,GAAGD,oBAAoB,CAACoB,IAAI,CAAC,IAAI,CAAC;EAClChB,EAAE,EAAER,SAAS,CAACyB,WAAW;EACzBC,MAAM,EAAE1B,SAAS;EACjB2B,MAAM,EAAAf,eAAA,CAAAC,YAAA,CAAET,oBAAoB,CAAS;EACrCwB,SAAS,EAAAhB,eAAA,CAAAC,YAAA,CAAAZ,eAAA,CAAES,gBAAgB;CAC5B,CAAC;EACA,OAAOmB,OAAOA,CAEZF,MAAsB,EACtBG,OAA8C;IAE9C,OAAO,IAAIP,gBAAc,CAAC;MACxBK,SAAS,EAAED,MAAM,EAAEC,SAAS;MAC5B,GAAGE,OAAO;MACVJ,MAAM,EAAEC,MAAM,CAACD,MAAM;MACrBC;KACD,CAAC;EACJ;EAEA,OAAOI,YAAYA,CAAaC,IAAoB;IAClD,OAAO;MACLC,aAAa,EAAED,IAAI,CAACvB,IAAI;MACxBO,MAAM,EAAEgB,IAAI,CAAChB,MAAM;MACnB,IAAIgB,IAAI,CAACL,MAAM,GACX;QAAEO,mBAAmB,EAAEF,IAAI,CAACL,MAAM,CAAClB,IAAI;QAAE0B,YAAY,EAAEH,IAAI,CAACL,MAAM,CAACX;MAAM,CAAE,GAC3E,EAAE;KACP;EACH;CACD;AAAAb,OAAA,CAAAmB,cAAA,GAAAA,cAAA;AAlCYnB,OAAA,CAAAmB,cAAA,GAAAA,cAAc,GAAAC,gBAAA,GAAAH,UAAA,E,gBAD1BC,yBAAyB,C,EACbC,cAAc,CAkC1B;AAED;AACA;AACA;AACA,WAAiBlB,oBAAoB;EACnC;;;;EAIA,MAAagC,OAAQ,SAAQnC,eAAA,CAAAoC,YAAY,EAA+B;EAA3DjC,oBAAA,CAAAgC,OAAO,GAAAA,OAAuD;AAI7E,CAAC,EATgBhC,oBAAoB,KAAAD,OAAA,CAAAC,oBAAA,GAApBA,oBAAoB;AAUrC,WAAiBkB,cAAc;EAC7B;;;;EAIA,MAAac,OAAQ,SAAQnC,eAAA,CAAAoC,YAAY,EAAyB;EAArDf,cAAA,CAAAc,OAAO,GAAAA,OAAiD;AAIvE,CAAC,EATgBd,cAAc,KAAAnB,OAAA,CAAAmB,cAAA,GAAdA,cAAc"}
|
|
@@ -9,17 +9,18 @@ exports.makeStore = makeStore;
|
|
|
9
9
|
exports.makeWhere = makeWhere;
|
|
10
10
|
exports.removeById = removeById;
|
|
11
11
|
var tsplus_module_1 = _interopRequireWildcard(require("@effect/io/Effect"));
|
|
12
|
-
var tsplus_module_2 = _interopRequireWildcard(require("@effect
|
|
13
|
-
var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/prelude/
|
|
14
|
-
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/schema
|
|
15
|
-
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/
|
|
16
|
-
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/
|
|
17
|
-
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/core/
|
|
18
|
-
var tsplus_module_8 = _interopRequireWildcard(require("@effect/
|
|
19
|
-
var tsplus_module_9 = _interopRequireWildcard(require("@effect/data/
|
|
20
|
-
var tsplus_module_10 = _interopRequireWildcard(require("@effect
|
|
21
|
-
var tsplus_module_11 = _interopRequireWildcard(require("@effect-app/
|
|
22
|
-
var tsplus_module_12 = _interopRequireWildcard(require("@effect-app/
|
|
12
|
+
var tsplus_module_2 = _interopRequireWildcard(require("@effect/io/Layer"));
|
|
13
|
+
var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/prelude/service"));
|
|
14
|
+
var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/prelude/schema"));
|
|
15
|
+
var tsplus_module_5 = _interopRequireWildcard(require("@effect-app/schema/custom/_api/condemn"));
|
|
16
|
+
var tsplus_module_6 = _interopRequireWildcard(require("@effect-app/prelude/_ext/misc"));
|
|
17
|
+
var tsplus_module_7 = _interopRequireWildcard(require("@effect-app/core/Array"));
|
|
18
|
+
var tsplus_module_8 = _interopRequireWildcard(require("@effect-app/core/Effect"));
|
|
19
|
+
var tsplus_module_9 = _interopRequireWildcard(require("@effect/data/Chunk"));
|
|
20
|
+
var tsplus_module_10 = _interopRequireWildcard(require("@effect/data/Option"));
|
|
21
|
+
var tsplus_module_11 = _interopRequireWildcard(require("@effect-app/core/_ext/Iterable"));
|
|
22
|
+
var tsplus_module_12 = _interopRequireWildcard(require("@effect-app/infra/services/Repository"));
|
|
23
|
+
var tsplus_module_13 = _interopRequireWildcard(require("@effect-app/core/Function"));
|
|
23
24
|
var _Store = require("./Store.cjs");
|
|
24
25
|
var _codec = require("@effect-app/infra/api/codec");
|
|
25
26
|
var _filter = require("@effect-app/infra/filter");
|
|
@@ -40,9 +41,12 @@ const RepositoryBase = () => {
|
|
|
40
41
|
static map(f) {
|
|
41
42
|
return tsplus_module_1.map(this, f);
|
|
42
43
|
}
|
|
44
|
+
static makeLayer(svc) {
|
|
45
|
+
return tsplus_module_2.succeed(this, svc);
|
|
46
|
+
}
|
|
43
47
|
}
|
|
44
48
|
RepositoryBaseC.where = makeWhere();
|
|
45
|
-
return
|
|
49
|
+
return tsplus_module_3.assignTag()(RepositoryBaseC);
|
|
46
50
|
};
|
|
47
51
|
};
|
|
48
52
|
/**
|
|
@@ -68,29 +72,29 @@ function makeRepo() {
|
|
|
68
72
|
const allE = tsplus_module_1.flatMap(store.all, items => tsplus_module_1.map(_Store.ContextMap, ({
|
|
69
73
|
set
|
|
70
74
|
}) => items.map(_ => mapReverse(_, set))));
|
|
71
|
-
const all = tsplus_module_1.flatMap(allE, _ =>
|
|
75
|
+
const all = tsplus_module_1.flatMap(allE, _ => tsplus_module_11.ext_forEach(_, tsplus_module_5.condemnDie((0, tsplus_module_4.EParserFor)(schema))));
|
|
72
76
|
function findE(id) {
|
|
73
77
|
return tsplus_module_1.flatMap(store.find(id), items => tsplus_module_1.map(_Store.ContextMap, ({
|
|
74
78
|
set
|
|
75
|
-
}) =>
|
|
79
|
+
}) => tsplus_module_10.map(items, _ => mapReverse(_, set))));
|
|
76
80
|
}
|
|
77
81
|
function find(id) {
|
|
78
|
-
return
|
|
82
|
+
return tsplus_module_8.flatMapOption(findE(id), tsplus_module_5.condemnDie((0, tsplus_module_4.EParserFor)(schema)));
|
|
79
83
|
}
|
|
80
|
-
const saveAllE = a =>
|
|
84
|
+
const saveAllE = a => tsplus_module_8.flatMapOption(tsplus_module_1.sync(() => tsplus_module_7.CollectionToNonEmptyReadonlyArray(a)), a => tsplus_module_1.flatMap(_Store.ContextMap, ({
|
|
81
85
|
get,
|
|
82
86
|
set
|
|
83
87
|
}) => {
|
|
84
|
-
const items =
|
|
88
|
+
const items = tsplus_module_7.mapRA(_ => mapToPersistenceModel(_, get))(a);
|
|
85
89
|
return tsplus_module_1.map(store.batchSet(items), ret => {
|
|
86
90
|
ret.forEach(_ => set(_.id, _._etag));
|
|
87
91
|
});
|
|
88
92
|
}));
|
|
89
|
-
const saveAll = a => saveAllE(
|
|
90
|
-
const saveAndPublish = (items, events = []) => tsplus_module_1.zipRight(
|
|
93
|
+
const saveAll = a => saveAllE(tsplus_module_9.map(tsplus_module_7.ext_itToChunk(a), tsplus_module_4.Encoder.for(schema)));
|
|
94
|
+
const saveAndPublish = (items, events = []) => tsplus_module_1.zipRight(tsplus_module_8.flatMapOption(tsplus_module_1.sync(() => tsplus_module_7.CollectionToNonEmptyReadonlyArray(events))
|
|
91
95
|
// TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
|
|
92
96
|
, publishEvents))(saveAll(items));
|
|
93
|
-
const encode =
|
|
97
|
+
const encode = tsplus_module_4.Encoder.for(schema);
|
|
94
98
|
function remove(item) {
|
|
95
99
|
return tsplus_module_1.flatMap(_Store.ContextMap, ({
|
|
96
100
|
get,
|
|
@@ -108,8 +112,8 @@ function makeRepo() {
|
|
|
108
112
|
*/
|
|
109
113
|
utils: {
|
|
110
114
|
mapReverse,
|
|
111
|
-
parse:
|
|
112
|
-
filter:
|
|
115
|
+
parse: tsplus_module_5.unsafe(tsplus_module_4.Parser.for(schema)),
|
|
116
|
+
filter: tsplus_module_6.flow(store.filter, _ => tsplus_module_1.tap(_, items => _Store.ContextMap.map(({
|
|
113
117
|
set
|
|
114
118
|
}) => items.forEach(_ => set(_.id, _._etag))))),
|
|
115
119
|
all: tsplus_module_1.tap(store.all, items => _Store.ContextMap.map(({
|
|
@@ -135,7 +139,7 @@ function makeRepo() {
|
|
|
135
139
|
* @tsplus fluent Repository removeById
|
|
136
140
|
*/
|
|
137
141
|
function removeById(self, id) {
|
|
138
|
-
return tsplus_module_1.flatMap(
|
|
142
|
+
return tsplus_module_1.flatMap(tsplus_module_12.get(self, id), _ => self.remove(_));
|
|
139
143
|
}
|
|
140
144
|
function makeWhere() {
|
|
141
145
|
const f_ = (0, _filter.makeFilters)();
|
|
@@ -159,7 +163,7 @@ function makeStore() {
|
|
|
159
163
|
const [_dec, encode] = (0, _codec.makeCodec)(schema);
|
|
160
164
|
function encodeToPM() {
|
|
161
165
|
const getEtag = () => undefined;
|
|
162
|
-
return
|
|
166
|
+
return tsplus_module_13.flow(encode, v => mapToPersistenceModel(v, getEtag));
|
|
163
167
|
}
|
|
164
168
|
function mapToPersistenceModel(e, getEtag) {
|
|
165
169
|
return mapTo(e, getEtag(e.id));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RepositoryBase.cjs","names":["_Store","require","_codec","_filter","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_interopRequireWildcard","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","RepositoryBase","itemType","RepositoryBaseC","constructor","flatMap","f","tsplus_module_1","map","where","makeWhere","
|
|
1
|
+
{"version":3,"file":"RepositoryBase.cjs","names":["_Store","require","_codec","_filter","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_interopRequireWildcard","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","RepositoryBase","itemType","RepositoryBaseC","constructor","flatMap","f","tsplus_module_1","map","makeLayer","svc","tsplus_module_2","succeed","where","makeWhere","tsplus_module_3","assignTag","exports","makeRepo","name","schema","mapFrom","mapTo","mapToPersistenceModel","e","getEtag","id","mapReverse","_etag","setEtag","mkStore","makeStore","make","publishEvents","makeInitial","config","store","allE","all","items","ContextMap","_","tsplus_module_11","ext_forEach","tsplus_module_5","condemnDie","EParserFor","findE","find","tsplus_module_10","tsplus_module_8","flatMapOption","saveAllE","a","sync","tsplus_module_7","CollectionToNonEmptyReadonlyArray","mapRA","batchSet","ret","forEach","saveAll","tsplus_module_9","ext_itToChunk","tsplus_module_4","Encoder","for","saveAndPublish","events","zipRight","encode","remove","item","undefined","r","utils","parse","unsafe","Parser","filter","tsplus_module_6","flow","tap","removeById","self","tsplus_module_12","f_","makeFilters","makeFilter_","mode","m","Array","isArray","pluralize","s","endsWith","substring","length","_dec","makeCodec","encodeToPM","tsplus_module_13","v","StoreMaker","partitionValue","RepositoryBaseImpl","mkRepo","Cls","RepositoryDefaultImpl","toLayer","impl","assign"],"sources":["../../_src/services/RepositoryBase.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/_src/RequestContext.ts
CHANGED
|
@@ -44,6 +44,9 @@ export const RepositoryBase = <Service>() => {
|
|
|
44
44
|
static map<B>(f: (a: Service) => B): Effect<Service, never, B> {
|
|
45
45
|
return Effect.map(this as unknown as Tag<Service, Service>, f)
|
|
46
46
|
}
|
|
47
|
+
static makeLayer(svc: Service) {
|
|
48
|
+
return Layer.succeed(this as unknown as Tag<Service, Service>, svc)
|
|
49
|
+
}
|
|
47
50
|
}
|
|
48
51
|
return assignTag<Service>()(RepositoryBaseC)
|
|
49
52
|
}
|
|
@@ -304,6 +307,7 @@ export const RepositoryBaseImpl = <Service>() => {
|
|
|
304
307
|
): Effect<StoreMaker, never, Repository<T, PM, Evt, ItemType>>
|
|
305
308
|
where: ReturnType<typeof makeWhere<PM>>
|
|
306
309
|
flatMap: <R1, E1, B>(f: (a: Service) => Effect<R1, E1, B>) => Effect<Service | R1, E1, B>
|
|
310
|
+
makeLayer: (svc: Service) => Layer<never, never, Service>
|
|
307
311
|
map: <B>(f: (a: Service) => B) => Effect<Service, never, B>
|
|
308
312
|
} => {
|
|
309
313
|
const mkRepo = makeRepo<PM, Evt>()(itemType, schema, mapFrom, mapTo)
|
|
@@ -344,6 +348,7 @@ export const RepositoryDefaultImpl = <Service>() => {
|
|
|
344
348
|
): Layer<StoreMaker, never, Service>
|
|
345
349
|
where: ReturnType<typeof makeWhere<PM>>
|
|
346
350
|
flatMap: <R1, E1, B>(f: (a: Service) => Effect<R1, E1, B>) => Effect<Service | R1, E1, B>
|
|
351
|
+
makeLayer: (svc: Service) => Layer<never, never, Service>
|
|
347
352
|
map: <B>(f: (a: Service) => B) => Effect<Service, never, B>
|
|
348
353
|
repo: Repository<T, PM, Evt, ItemType> // just a helper to type the constructor
|
|
349
354
|
} => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestContext.d.ts","sourceRoot":"","sources":["../_src/RequestContext.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"RequestContext.d.ts","sourceRoot":"","sources":["../_src/RequestContext.ts"],"names":[],"mappings":";AAAA,eAAO,MAAM,SAAS;;;CAAW,CAAA;AACjC,MAAM,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,SAAS,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;AAE7D,qBACa,oBAAqB,SAAQ,yBAYxC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEL;;;GAGG;AACH,qBACa,cAAe,SAAQ,mBAWlC;IACA,MAAM,CAAC,OAAO,CACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,oBAAoB,CAAC,gBAAgB;IAUhD,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc;;;;;;CASrD;AAKD,yBAAiB,oBAAoB,CAAC;;;;;;;;;;;IACpC;;;OAGG;IACH,MAAM,OAAO,OAAQ,SAAQ,YAA2C;KAAG;IAC3E,MAAM,WAAW,gBACf,SAAQ,uBAAuB,CAAC,OAAO,oBAAoB,CAAC;KAAG;IACjE,MAAM,WAAW,KAAM,SAAQ,gBAAgB,CAAC,OAAO,oBAAoB,CAAC;KAAG;;CAChF;AACD,yBAAiB,cAAc,CAAC;;;;;;;;;;;;;;IAC9B;;;OAGG;IACH,MAAM,OAAO,OAAQ,SAAQ,cAAqC;KAAG;IACrE,MAAM,WAAW,gBACf,SAAQ,uBAAuB,CAAC,OAAO,cAAc,CAAC;KAAG;IAC3D,MAAM,WAAW,KAAM,SAAQ,gBAAgB,CAAC,OAAO,cAAc,CAAC;KAAG;;CAC1E"}
|
package/dist/RequestContext.js
CHANGED
|
@@ -75,4 +75,4 @@ export { RequestContext };
|
|
|
75
75
|
}
|
|
76
76
|
RequestContext.Encoded = Encoded;
|
|
77
77
|
})(RequestContext || (RequestContext = {}));
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9fc3JjL1JlcXVlc3RDb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE1BQU0sQ0FBQyxNQUFNLFNBQVMsbUJBQUcsUUFBUSxDQUFBO0FBSWpDLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQXFCLFNBQVEsZ0JBQUEsT0FBTyxFQUs5QyxDQUFDO0lBQ0YsSUFBSSxFQUFFLGdCQUFBLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixFQUFFLEVBQUUsU0FBUztJQUNiLElBQUksa0JBQUUsZ0JBQWdCO0lBQ3RCLElBQUksK0JBQUUsZ0JBQUEsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLGdCQUFBLElBQUksaUJBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFTO0lBQzVDLE1BQU0sRUFBRSxnQkFBQSxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQztJQUMzQixTQUFTLGtEQUFFLElBQUksQ0FBWTtDQUM1QixDQUFDO0NBQUcsQ0FBQTtBQVpRLG9CQUFvQjtvQkFEaEMseUJBQXlCO0dBQ2Isb0JBQW9CLENBWTVCO1NBWlEsb0JBQW9CO0FBY2pDOzs7R0FHRztBQUVILElBQWEsY0FBYyxzQkFBM0IsTUFBYSxjQUFlLFNBQVEsZ0JBQUEsT0FBTyxFQUt4QyxDQUFDO0lBQ0YsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ2xDLEVBQUUsRUFBRSxTQUFTLENBQUMsV0FBVztJQUN6QixNQUFNLEVBQUUsU0FBUztJQUNqQixNQUFNLCtCQUFFLG9CQUFvQixDQUFTO0lBQ3JDLFNBQVMsK0NBQUUsZ0JBQWdCLENBQVM7Q0FDckMsQ0FBQztJQUNBLE1BQU0sQ0FBQyxPQUFPLENBRVosTUFBc0IsRUFDdEIsT0FBOEM7UUFFOUMsT0FBTyxJQUFJLGdCQUFjLENBQUM7WUFDeEIsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTO1lBQzVCLEdBQUcsT0FBTztZQUNWLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixNQUFNO1NBQ1AsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQWEsSUFBb0I7UUFDbEQsT0FBTztZQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSTtZQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNO2dCQUNiLENBQUMsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtnQkFDN0UsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNSLENBQUE7SUFDSCxDQUFDO0NBQ0YsQ0FBQTtBQWxDWSxjQUFjO29CQUQxQix5QkFBeUI7R0FDYixjQUFjLENBa0MxQjtTQWxDWSxjQUFjO0FBb0MzQixnQ0FBZ0M7QUFDaEMsRUFBRTtBQUNGLG9CQUFvQjtBQUNwQixXQUFpQixvQkFBb0I7SUFDbkM7OztPQUdHO0lBQ0gsTUFBYSxPQUFRLFNBQVEsZ0JBQUEsWUFBWSxFQUErQjtLQUFHO0lBQTlELDRCQUFPLFVBQXVELENBQUE7QUFJN0UsQ0FBQyxFQVRnQixvQkFBb0IsS0FBcEIsb0JBQW9CLFFBU3BDO0FBQ0QsV0FBaUIsY0FBYztJQUM3Qjs7O09BR0c7SUFDSCxNQUFhLE9BQVEsU0FBUSxnQkFBQSxZQUFZLEVBQXlCO0tBQUc7SUFBeEQsc0JBQU8sVUFBaUQsQ0FBQTtBQUl2RSxDQUFDLEVBVGdCLGNBQWMsS0FBZCxjQUFjLFFBUzlCIn0=
|
|
@@ -48,7 +48,7 @@ export declare function get<T extends {
|
|
|
48
48
|
id: string;
|
|
49
49
|
}, PM extends {
|
|
50
50
|
id: string;
|
|
51
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, id: T["id"]): import("@effect/io/Effect").Effect<
|
|
51
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, id: T["id"]): import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer, NotFoundError<ItemType>, T>;
|
|
52
52
|
/**
|
|
53
53
|
* @tsplus fluent Repository filter
|
|
54
54
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -180,7 +180,7 @@ export declare function queryAndSavePureEffect<T extends {
|
|
|
180
180
|
collect?: (t: T) => Option<S>;
|
|
181
181
|
limit?: number;
|
|
182
182
|
skip?: number;
|
|
183
|
-
}>): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<
|
|
183
|
+
}>): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | R | Exclude<R2, {
|
|
184
184
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S[], S2[]>;
|
|
185
185
|
}>, InvalidStateError | OptimisticConcurrencyException | E | E2, A>;
|
|
186
186
|
/**
|
|
@@ -196,7 +196,7 @@ export declare function queryAndSavePure<T extends {
|
|
|
196
196
|
collect?: (t: T) => Option<S>;
|
|
197
197
|
limit?: number;
|
|
198
198
|
skip?: number;
|
|
199
|
-
}): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<
|
|
199
|
+
}): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R2, {
|
|
200
200
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S[], S2[]>;
|
|
201
201
|
}>, InvalidStateError | OptimisticConcurrencyException | E2, A>;
|
|
202
202
|
/**
|
|
@@ -207,7 +207,7 @@ export declare function saveManyWithPure<T extends {
|
|
|
207
207
|
id: string;
|
|
208
208
|
}, PM extends {
|
|
209
209
|
id: string;
|
|
210
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<
|
|
210
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R, {
|
|
211
211
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S1[], S2[]>;
|
|
212
212
|
}>, InvalidStateError | OptimisticConcurrencyException | E, A>;
|
|
213
213
|
/**
|
|
@@ -218,7 +218,7 @@ export declare function byIdAndSaveWithPure<T extends {
|
|
|
218
218
|
id: string;
|
|
219
219
|
}, PM extends {
|
|
220
220
|
id: string;
|
|
221
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, id: T["id"]): <R, A, E, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => import("@effect/io/Effect").Effect<
|
|
221
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, id: T["id"]): <R, A, E, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R, {
|
|
222
222
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, T, S2>;
|
|
223
223
|
}>, InvalidStateError | OptimisticConcurrencyException | E | NotFoundError<ItemType>, A>;
|
|
224
224
|
/**
|
|
@@ -232,7 +232,7 @@ export declare function handleByIdAndSaveWithPure<T extends {
|
|
|
232
232
|
id: string;
|
|
233
233
|
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>): <Req extends {
|
|
234
234
|
id: T["id"];
|
|
235
|
-
}, Context_1, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<
|
|
235
|
+
}, Context_1, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R, {
|
|
236
236
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, T, S2>;
|
|
237
237
|
}>, InvalidStateError | OptimisticConcurrencyException | E | NotFoundError<ItemType>, A>;
|
|
238
238
|
/**
|
|
@@ -243,7 +243,7 @@ export declare function saveManyWithPure_<Id extends string, R, T extends {
|
|
|
243
243
|
id: Id;
|
|
244
244
|
}, PM extends {
|
|
245
245
|
id: string;
|
|
246
|
-
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>): import("@effect/io/Effect").Effect<
|
|
246
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>): import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R, {
|
|
247
247
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S1[], S2[]>;
|
|
248
248
|
}>, InvalidStateError | OptimisticConcurrencyException | E, A>;
|
|
249
249
|
/**
|
|
@@ -254,14 +254,14 @@ export declare function saveWithPure_<Id extends string, R, T extends {
|
|
|
254
254
|
id: Id;
|
|
255
255
|
}, PM extends {
|
|
256
256
|
id: string;
|
|
257
|
-
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, item: S1, pure: Effect<FixEnv<R, Evt, S1, S2>, E, A>): import("@effect/io/Effect").Effect<
|
|
257
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, item: S1, pure: Effect<FixEnv<R, Evt, S1, S2>, E, A>): import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R, {
|
|
258
258
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S1, S2>;
|
|
259
259
|
}>, InvalidStateError | OptimisticConcurrencyException | E, A>;
|
|
260
260
|
export declare function saveAllWithEffectInt<T extends {
|
|
261
261
|
id: string;
|
|
262
262
|
}, PM extends {
|
|
263
263
|
id: string;
|
|
264
|
-
}, P extends T, Evt, ItemType extends string, R, E, A>(self: Repository<T, PM, Evt, ItemType>, gen: Effect<R, E, readonly [Iterable<P>, Iterable<Evt>, A]>): import("@effect/io/Effect").Effect<
|
|
264
|
+
}, P extends T, Evt, ItemType extends string, R, E, A>(self: Repository<T, PM, Evt, ItemType>, gen: Effect<R, E, readonly [Iterable<P>, Iterable<Evt>, A]>): import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | R, InvalidStateError | OptimisticConcurrencyException | E, A>;
|
|
265
265
|
/**
|
|
266
266
|
* @tsplus fluent Repository queryAndSavePureEffectBatched
|
|
267
267
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -275,7 +275,7 @@ export declare function queryAndSavePureEffectBatched<T extends {
|
|
|
275
275
|
collect?: (t: T) => Option<S>;
|
|
276
276
|
limit?: number;
|
|
277
277
|
skip?: number;
|
|
278
|
-
}>, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<
|
|
278
|
+
}>, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | R | Exclude<R2, {
|
|
279
279
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S[], S2[]>;
|
|
280
280
|
}>, InvalidStateError | OptimisticConcurrencyException | E | E2, A[]>;
|
|
281
281
|
/**
|
|
@@ -291,7 +291,7 @@ export declare function queryAndSavePureBatched<T extends {
|
|
|
291
291
|
collect?: (t: T) => Option<S>;
|
|
292
292
|
limit?: number;
|
|
293
293
|
skip?: number;
|
|
294
|
-
}, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<
|
|
294
|
+
}, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, S[], S2[]>, E2, A>) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R2, {
|
|
295
295
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S[], S2[]>;
|
|
296
296
|
}>, InvalidStateError | OptimisticConcurrencyException | E2, A[]>;
|
|
297
297
|
/**
|
|
@@ -302,7 +302,7 @@ export declare function saveManyWithPureBatched<T extends {
|
|
|
302
302
|
id: string;
|
|
303
303
|
}, PM extends {
|
|
304
304
|
id: string;
|
|
305
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<
|
|
305
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R, {
|
|
306
306
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S1[], S2[]>;
|
|
307
307
|
}>, InvalidStateError | OptimisticConcurrencyException | E, A[]>;
|
|
308
308
|
/**
|
|
@@ -313,7 +313,7 @@ export declare function saveManyWithPureBatched_<Id extends string, R, T extends
|
|
|
313
313
|
id: Id;
|
|
314
314
|
}, PM extends {
|
|
315
315
|
id: string;
|
|
316
|
-
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>, batchSize?: number): import("@effect/io/Effect").Effect<
|
|
316
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>, batchSize?: number): import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer | Exclude<R, {
|
|
317
317
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S1[], S2[]>;
|
|
318
318
|
}>, InvalidStateError | OptimisticConcurrencyException | E, A[]>;
|
|
319
319
|
export type AllDSL<T, Evt> = (<R, A, E, S1 extends T, S2 extends T>(pure: (dsl: PureDSL<S1[], S2[], Evt>) => Effect<R, E, A>) => Effect<FixEnv<R, Evt, S1[], S2[]>, E, A>) & AllDSLExt<T, Evt>;
|
|
@@ -364,7 +364,7 @@ export declare function save<T extends {
|
|
|
364
364
|
id: string;
|
|
365
365
|
}, PM extends {
|
|
366
366
|
id: string;
|
|
367
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>): (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<
|
|
367
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>): (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer, InvalidStateError | OptimisticConcurrencyException, void>;
|
|
368
368
|
/**
|
|
369
369
|
* @tsplus getter Repository saveWithEvents
|
|
370
370
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -373,5 +373,5 @@ export declare function saveWithEvents<T extends {
|
|
|
373
373
|
id: string;
|
|
374
374
|
}, PM extends {
|
|
375
375
|
id: string;
|
|
376
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<
|
|
376
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer, InvalidStateError | OptimisticConcurrencyException, void>;
|
|
377
377
|
//# sourceMappingURL=Repository.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Effect } from "@effect/io/Effect";
|
|
2
2
|
import { Tag } from "@effect/data/Context";
|
|
3
|
-
import { NonEmptyReadonlyArray } from "@effect/data/ReadonlyArray";
|
|
4
3
|
import { Layer } from "@effect/io/Layer";
|
|
4
|
+
import { NonEmptyReadonlyArray } from "@effect/data/ReadonlyArray";
|
|
5
5
|
import type { ParserEnv } from "@effect-app/schema/custom/Parser";
|
|
6
6
|
import type { Repository } from "./Repository.js";
|
|
7
7
|
import type { RequestContextContainer } from "./RequestContextContainer.js";
|
|
@@ -20,7 +20,7 @@ export declare const RepositoryBase: <Service>() => <T extends {
|
|
|
20
20
|
_etag: string | undefined;
|
|
21
21
|
}, Evt, ItemType extends string>(itemType: ItemType) => ((abstract new () => {
|
|
22
22
|
itemType: ItemType;
|
|
23
|
-
find: (id: T["id"]) => import("@effect/io/Effect").Effect<
|
|
23
|
+
find: (id: T["id"]) => import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer, never, Opt<T>>;
|
|
24
24
|
all: import("@effect/io/Effect").Effect<ContextMap, never, T[]>;
|
|
25
25
|
saveAndPublish: (items: Iterable<T>, events?: Iterable<Evt> | undefined) => Effect<ContextMap | RequestContextContainer, InvalidStateError | OptimisticConcurrencyException, void>;
|
|
26
26
|
utils: {
|
|
@@ -62,6 +62,7 @@ export declare const RepositoryBase: <Service>() => <T extends {
|
|
|
62
62
|
}) => Where | readonly [Where, ...Where[]], mode?: "or" | "and") => Filter<PM>;
|
|
63
63
|
flatMap<R1, E1, B>(f: (a: Service) => import("@effect/io/Effect").Effect<R1, E1, B>): import("@effect/io/Effect").Effect<Service | R1, E1, B>;
|
|
64
64
|
map<B_1>(f: (a: Service) => B_1): import("@effect/io/Effect").Effect<Service, never, B_1>;
|
|
65
|
+
makeLayer(svc: Service): import("@effect/io/Layer").Layer<never, never, Service>;
|
|
65
66
|
}) & import("@effect/data/Context").Tag<Service, Service>;
|
|
66
67
|
/**
|
|
67
68
|
* A base implementation to create a repository.
|
|
@@ -102,7 +103,7 @@ export declare function makeRepo<PM extends {
|
|
|
102
103
|
value: A_1;
|
|
103
104
|
readonly S: PM;
|
|
104
105
|
};
|
|
105
|
-
}) => Where | readonly [Where, ...Where[]], mode?: "
|
|
106
|
+
}) => Where | readonly [Where, ...Where[]], mode?: "or" | "and" | undefined) => Filter<PM>;
|
|
106
107
|
};
|
|
107
108
|
/**
|
|
108
109
|
* @tsplus fluent Repository removeById
|
|
@@ -112,7 +113,7 @@ export declare function removeById<T extends {
|
|
|
112
113
|
id: string;
|
|
113
114
|
}, PM extends {
|
|
114
115
|
id: string;
|
|
115
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, id: T["id"]): import("@effect/io/Effect").Effect<
|
|
116
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, ItemType>, id: T["id"]): import("@effect/io/Effect").Effect<ContextMap | RequestContextContainer, import("../errors.js").NotFoundError<ItemType>, void>;
|
|
116
117
|
export declare function makeWhere<PM extends {
|
|
117
118
|
id: string;
|
|
118
119
|
_etag: string | undefined;
|
|
@@ -190,6 +191,7 @@ export declare const RepositoryBaseImpl: <Service>() => <PM extends {
|
|
|
190
191
|
};
|
|
191
192
|
}) => Where | readonly [Where, ...Where[]], mode?: "or" | "and") => Filter<PM>;
|
|
192
193
|
flatMap: <R1, E1, B>(f: (a: Service) => import("@effect/io/Effect").Effect<R1, E1, B>) => import("@effect/io/Effect").Effect<Service | R1, E1, B>;
|
|
194
|
+
makeLayer: (svc: Service) => import("@effect/io/Layer").Layer<never, never, Service>;
|
|
193
195
|
map: <B_1>(f: (a: Service) => B_1) => import("@effect/io/Effect").Effect<Service, never, B_1>;
|
|
194
196
|
};
|
|
195
197
|
export declare const RepositoryDefaultImpl: <Service>() => <PM extends {
|
|
@@ -234,6 +236,7 @@ export declare const RepositoryDefaultImpl: <Service>() => <PM extends {
|
|
|
234
236
|
};
|
|
235
237
|
}) => Where | readonly [Where, ...Where[]], mode?: "or" | "and") => Filter<PM>;
|
|
236
238
|
flatMap: <R1, E1, B>(f: (a: Service) => import("@effect/io/Effect").Effect<R1, E1, B>) => import("@effect/io/Effect").Effect<Service | R1, E1, B>;
|
|
239
|
+
makeLayer: (svc: Service) => import("@effect/io/Layer").Layer<never, never, Service>;
|
|
237
240
|
map: <B_1>(f: (a: Service) => B_1) => import("@effect/io/Effect").Effect<Service, never, B_1>;
|
|
238
241
|
repo: Repository<T, PM, Evt, ItemType>;
|
|
239
242
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RepositoryBase.d.ts","sourceRoot":"","sources":["../../_src/services/RepositoryBase.ts"],"names":[],"mappings":";;;;AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAC3E,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAG5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAGlD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAEjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAErF;;GAEG;AACH,eAAO,MAAM,cAAc;QACD,MAAM;;QAAqB,MAAM;WAAS,MAAM,GAAG,SAAS;;;;;gFAU3E,OAAO,UAAU,GAAG,uBAAuB,EAAE,iBAAiB,GAAG,8BAA8B,EAAE,IAAI,CAAC;;2CAIzF,MAAM,QAAQ,MAAM,GAAG,SAAS,KAAK,IAAI,KACpD,OAAO;mBACD,OAAO,QAAQ,SAAS,GAAG,SAAS;;8CAET;YAAE,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE;;yBAE3C,OAAO,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"RepositoryBase.d.ts","sourceRoot":"","sources":["../../_src/services/RepositoryBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect/io/Effect";
|
|
2
|
-
import * as tsplus_module_2 from "@effect
|
|
3
|
-
import * as tsplus_module_3 from "@effect-app/prelude/
|
|
4
|
-
import * as tsplus_module_4 from "@effect-app/schema
|
|
5
|
-
import * as tsplus_module_5 from "@effect-app/
|
|
6
|
-
import * as tsplus_module_6 from "@effect-app/
|
|
7
|
-
import * as tsplus_module_7 from "@effect-app/core/
|
|
8
|
-
import * as tsplus_module_8 from "@effect/
|
|
9
|
-
import * as tsplus_module_9 from "@effect/data/
|
|
10
|
-
import * as tsplus_module_10 from "@effect
|
|
11
|
-
import * as tsplus_module_11 from "@effect-app/
|
|
12
|
-
import * as tsplus_module_12 from "@effect-app/
|
|
2
|
+
import * as tsplus_module_2 from "@effect/io/Layer";
|
|
3
|
+
import * as tsplus_module_3 from "@effect-app/prelude/service";
|
|
4
|
+
import * as tsplus_module_4 from "@effect-app/prelude/schema";
|
|
5
|
+
import * as tsplus_module_5 from "@effect-app/schema/custom/_api/condemn";
|
|
6
|
+
import * as tsplus_module_6 from "@effect-app/prelude/_ext/misc";
|
|
7
|
+
import * as tsplus_module_7 from "@effect-app/core/Array";
|
|
8
|
+
import * as tsplus_module_8 from "@effect-app/core/Effect";
|
|
9
|
+
import * as tsplus_module_9 from "@effect/data/Chunk";
|
|
10
|
+
import * as tsplus_module_10 from "@effect/data/Option";
|
|
11
|
+
import * as tsplus_module_11 from "@effect-app/core/_ext/Iterable";
|
|
12
|
+
import * as tsplus_module_12 from "@effect-app/infra/services/Repository";
|
|
13
|
+
import * as tsplus_module_13 from "@effect-app/core/Function";
|
|
13
14
|
import { ContextMap, StoreMaker } from "./Store.js";
|
|
14
15
|
import { makeCodec } from "@effect-app/infra/api/codec";
|
|
15
16
|
import { makeFilters } from "@effect-app/infra/filter";
|
|
@@ -29,9 +30,12 @@ export const RepositoryBase = () => {
|
|
|
29
30
|
static map(f) {
|
|
30
31
|
return tsplus_module_1.map(this, f);
|
|
31
32
|
}
|
|
33
|
+
static makeLayer(svc) {
|
|
34
|
+
return tsplus_module_2.succeed(this, svc);
|
|
35
|
+
}
|
|
32
36
|
}
|
|
33
37
|
RepositoryBaseC.where = makeWhere();
|
|
34
|
-
return
|
|
38
|
+
return tsplus_module_3.assignTag()(RepositoryBaseC);
|
|
35
39
|
};
|
|
36
40
|
};
|
|
37
41
|
/**
|
|
@@ -51,25 +55,25 @@ export function makeRepo() {
|
|
|
51
55
|
function make(publishEvents, makeInitial, config) {
|
|
52
56
|
return tsplus_module_1.map(mkStore(makeInitial, config), store => {
|
|
53
57
|
const allE = tsplus_module_1.flatMap(store.all, (items) => tsplus_module_1.map(ContextMap, ({ set }) => items.map((_) => mapReverse(_, set))));
|
|
54
|
-
const all = tsplus_module_1.flatMap(allE, (_) =>
|
|
58
|
+
const all = tsplus_module_1.flatMap(allE, (_) => tsplus_module_11.ext_forEach(_, tsplus_module_5.condemnDie(EParserFor(schema))));
|
|
55
59
|
function findE(id) {
|
|
56
60
|
return tsplus_module_1.flatMap(store
|
|
57
|
-
.find(id), (items) => tsplus_module_1.map(ContextMap, ({ set }) =>
|
|
61
|
+
.find(id), (items) => tsplus_module_1.map(ContextMap, ({ set }) => tsplus_module_10.map(items, (_) => mapReverse(_, set))));
|
|
58
62
|
}
|
|
59
63
|
function find(id) {
|
|
60
|
-
return
|
|
64
|
+
return tsplus_module_8.flatMapOption(findE(id), tsplus_module_5.condemnDie(EParserFor(schema)));
|
|
61
65
|
}
|
|
62
|
-
const saveAllE = (a) =>
|
|
63
|
-
const items =
|
|
66
|
+
const saveAllE = (a) => tsplus_module_8.flatMapOption(tsplus_module_1.sync(() => tsplus_module_7.CollectionToNonEmptyReadonlyArray(a)), (a) => tsplus_module_1.flatMap(ContextMap, ({ get, set }) => {
|
|
67
|
+
const items = tsplus_module_7.mapRA((_) => mapToPersistenceModel(_, get))(a);
|
|
64
68
|
return tsplus_module_1.map(store.batchSet(items), ret => {
|
|
65
69
|
ret.forEach((_) => set(_.id, _._etag));
|
|
66
70
|
});
|
|
67
71
|
}));
|
|
68
|
-
const saveAll = (a) => saveAllE(
|
|
69
|
-
const saveAndPublish = (items, events = []) => tsplus_module_1.zipRight(
|
|
72
|
+
const saveAll = (a) => saveAllE(tsplus_module_9.map(tsplus_module_7.ext_itToChunk(a), tsplus_module_4.Encoder.for(schema)));
|
|
73
|
+
const saveAndPublish = (items, events = []) => tsplus_module_1.zipRight(tsplus_module_8.flatMapOption(tsplus_module_1.sync(() => tsplus_module_7.CollectionToNonEmptyReadonlyArray(events))
|
|
70
74
|
// TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
|
|
71
75
|
, publishEvents))(saveAll(items));
|
|
72
|
-
const encode =
|
|
76
|
+
const encode = tsplus_module_4.Encoder.for(schema);
|
|
73
77
|
function remove(item) {
|
|
74
78
|
return tsplus_module_1.flatMap(ContextMap, ({ get, set }) => {
|
|
75
79
|
const e = encode(item);
|
|
@@ -84,8 +88,8 @@ export function makeRepo() {
|
|
|
84
88
|
*/
|
|
85
89
|
utils: {
|
|
86
90
|
mapReverse,
|
|
87
|
-
parse:
|
|
88
|
-
filter:
|
|
91
|
+
parse: tsplus_module_5.unsafe(tsplus_module_4.Parser.for(schema)),
|
|
92
|
+
filter: tsplus_module_6.flow(store
|
|
89
93
|
.filter, (_) => tsplus_module_1.tap(_, (items) => ContextMap.map(({ set }) => items.forEach((_) => set(_.id, _._etag))))),
|
|
90
94
|
all: tsplus_module_1.tap(store.all, (items) => ContextMap.map(({ set }) => items.forEach((_) => set(_.id, _._etag))))
|
|
91
95
|
},
|
|
@@ -108,7 +112,7 @@ export function makeRepo() {
|
|
|
108
112
|
* @tsplus fluent Repository removeById
|
|
109
113
|
*/
|
|
110
114
|
export function removeById(self, id) {
|
|
111
|
-
return tsplus_module_1.flatMap(
|
|
115
|
+
return tsplus_module_1.flatMap(tsplus_module_12.get(self, id), (_) => self.remove(_));
|
|
112
116
|
}
|
|
113
117
|
export function makeWhere() {
|
|
114
118
|
const f_ = makeFilters();
|
|
@@ -136,7 +140,7 @@ export function makeStore() {
|
|
|
136
140
|
const [_dec, encode] = makeCodec(schema);
|
|
137
141
|
function encodeToPM() {
|
|
138
142
|
const getEtag = () => undefined;
|
|
139
|
-
return
|
|
143
|
+
return tsplus_module_13.flow(encode, (v) => mapToPersistenceModel(v, getEtag));
|
|
140
144
|
}
|
|
141
145
|
function mapToPersistenceModel(e, getEtag) {
|
|
142
146
|
return mapTo(e, getEtag(e.id));
|
|
@@ -175,4 +179,4 @@ export const RepositoryDefaultImpl = () => {
|
|
|
175
179
|
};
|
|
176
180
|
};
|
|
177
181
|
};
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcG9zaXRvcnlCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFHQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUtuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBRXRELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUd2RDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFZLEVBQUU7SUFDMUMsT0FBTyxDQUNMLFFBQWtCLEVBQ2xCLEVBQUU7UUFDRixNQUFlLGVBQWU7WUFBOUI7Z0JBQ0UsYUFBUSxHQUFhLFFBQVEsQ0FBQTtZQTJCL0IsQ0FBQztZQVRDLE1BQU0sQ0FBQyxPQUFPLENBQVksQ0FBb0M7Z0JBQzVELE9BQU8sd0JBQWUsSUFBd0MsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUNwRSxDQUFDO1lBQ0QsTUFBTSxDQUFDLEdBQUcsQ0FBSSxDQUFvQjtnQkFDaEMsT0FBTyxvQkFBVyxJQUF3QyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ2hFLENBQUM7WUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQVk7Z0JBQzNCLE9BQU8sd0JBQWMsSUFBd0MsRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUNyRSxDQUFDOztRQVRNLHFCQUFLLEdBQUcsU0FBUyxFQUFNLEFBQWxCLENBQWtCO1FBV2hDLE9BQU8sZ0JBQUEsU0FBUyxFQUFXLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDOUMsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsUUFBUTtJQUl0QixPQUFPLENBT0wsSUFBYyxFQUNkLE1B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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/infra",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.58.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
@@ -19,10 +19,10 @@
|
|
|
19
19
|
"proper-lockfile": "^4.1.2",
|
|
20
20
|
"pure-rand": "^6.0.1",
|
|
21
21
|
"redlock": "^4.2.0",
|
|
22
|
-
"@effect-app/
|
|
23
|
-
"@effect-app/
|
|
24
|
-
"@effect-app/
|
|
25
|
-
"@effect-app/
|
|
22
|
+
"@effect-app/prelude": "0.48.0",
|
|
23
|
+
"@effect-app/core": "0.49.0",
|
|
24
|
+
"@effect-app/schema": "0.43.0",
|
|
25
|
+
"@effect-app/infra-adapters": "0.42.0"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@babel/cli": "^7.21.0",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"mongodb": "5.3.0",
|
|
41
41
|
"redis": "^3.1.2",
|
|
42
42
|
"ts-node": "^10.9.1",
|
|
43
|
-
"typescript": "https://cdn.jsdelivr.net/npm/@tsplus/installer@0.0.
|
|
43
|
+
"typescript": "https://cdn.jsdelivr.net/npm/@tsplus/installer@0.0.174/compiler/typescript.tgz",
|
|
44
44
|
"vitest": "^0.30.1",
|
|
45
45
|
"@effect-app/compiler": "0.25.0"
|
|
46
46
|
},
|