@effect-app/infra 0.225.1 → 0.225.3
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 +12 -0
- package/_cjs/services/RepositoryBase.cjs +25 -3
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/dist/services/Operations.d.ts +1 -1
- package/dist/services/QueueMaker/service.d.ts +2 -2
- package/dist/services/Repository/ext.d.ts +11 -11
- package/dist/services/RepositoryBase.d.ts +15 -8
- package/dist/services/RepositoryBase.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +22 -5
- package/dist/services/RequestContextContainer.d.ts +1 -1
- package/dist/services/Store/index.d.ts +1 -1
- package/dist/services/Store/index.d.ts.map +1 -1
- package/dist/services/Store/service.d.ts +2 -2
- package/dist/services/query/new-kid-interpreter.d.ts +1 -1
- package/package.json +3 -3
- package/src/services/RepositoryBase.ts +69 -4
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.RepositoryDefaultImpl = exports.RepositoryBaseImpl = exports.RepositoryBaseC3 = exports.RepositoryBaseC2 = exports.RepositoryBaseC1 = exports.RepositoryBaseC = void 0;
|
|
7
7
|
exports.makeRepo = makeRepo;
|
|
8
|
+
exports.makeRequest = void 0;
|
|
8
9
|
exports.makeStore = makeStore;
|
|
9
10
|
var _Repository = require("./Repository.cjs");
|
|
10
11
|
var _Store = require("./Store.cjs");
|
|
@@ -271,7 +272,7 @@ function makeStore() {
|
|
|
271
272
|
return makeStore;
|
|
272
273
|
};
|
|
273
274
|
}
|
|
274
|
-
const makeRepoFunctions = tag => {
|
|
275
|
+
const makeRepoFunctions = (tag, itemType) => {
|
|
275
276
|
const {
|
|
276
277
|
all
|
|
277
278
|
} = _effectApp.Effect.serviceConstants(tag);
|
|
@@ -289,6 +290,7 @@ const makeRepoFunctions = tag => {
|
|
|
289
290
|
} = _effectApp.Effect.serviceFunctions(tag);
|
|
290
291
|
const mapped = s => tag.map(_ => _.mapped(s));
|
|
291
292
|
return {
|
|
293
|
+
itemType,
|
|
292
294
|
all,
|
|
293
295
|
byIdAndSaveWithPure,
|
|
294
296
|
find,
|
|
@@ -323,7 +325,7 @@ const RepositoryBaseImpl = () => {
|
|
|
323
325
|
Error.stackTraceLimit = 2;
|
|
324
326
|
const creationError = new Error();
|
|
325
327
|
Error.stackTraceLimit = limit;
|
|
326
|
-
return _effectApp.Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls)));
|
|
328
|
+
return _effectApp.Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls, itemType)));
|
|
327
329
|
};
|
|
328
330
|
};
|
|
329
331
|
exports.RepositoryBaseImpl = RepositoryBaseImpl;
|
|
@@ -346,8 +348,28 @@ const RepositoryDefaultImpl = () => {
|
|
|
346
348
|
Error.stackTraceLimit = 2;
|
|
347
349
|
const creationError = new Error();
|
|
348
350
|
Error.stackTraceLimit = limit;
|
|
349
|
-
return _effectApp.Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls))); // impl is missing, but its marked protected
|
|
351
|
+
return _effectApp.Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls, itemType))); // impl is missing, but its marked protected
|
|
350
352
|
};
|
|
351
353
|
};
|
|
354
|
+
// TODO: integrate with repo
|
|
352
355
|
exports.RepositoryDefaultImpl = RepositoryDefaultImpl;
|
|
356
|
+
const makeRequest = repo => {
|
|
357
|
+
const _request = _effectApp.Request.tagged(`Get${repo.itemType}`);
|
|
358
|
+
const requestResolver = _effectApp.RequestResolver.makeBatched(requests => repo.query(Q.where("id", "in", requests.map(_ => _.id))) // TODO
|
|
359
|
+
.pipe(_effectApp.Effect.andThen(items => _effectApp.Effect.forEach(requests, r => _effectApp.Request.complete(r, _effectApp.ReadonlyArray.findFirst(items, _ => _.id === r.id).pipe(_effectApp.Option.match({
|
|
360
|
+
onNone: () => _effectApp.Exit.fail(new _errors.NotFoundError({
|
|
361
|
+
type: repo.itemType,
|
|
362
|
+
id: r.id
|
|
363
|
+
})),
|
|
364
|
+
onSome: _effectApp.Exit.succeed
|
|
365
|
+
}))), {
|
|
366
|
+
discard: true
|
|
367
|
+
})), _effectApp.Effect.catchAllCause(cause => _effectApp.Effect.forEach(requests, _effectApp.Request.complete(_effectApp.Exit.failCause(cause)), {
|
|
368
|
+
discard: true
|
|
369
|
+
})))).pipe(_effectApp.RequestResolver.batchN(20), _effectApp.RequestResolver.contextFromServices(repo));
|
|
370
|
+
return id => _effectApp.Effect.request(_request({
|
|
371
|
+
id
|
|
372
|
+
}), requestResolver);
|
|
373
|
+
};
|
|
374
|
+
exports.makeRequest = makeRequest;
|
|
353
375
|
//# sourceMappingURL=RepositoryBase.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RepositoryBase.cjs","names":["_Repository","require","_Store","_Array","_Effect","_schema","_effectApp","_Pure","_errors","_query","_interopRequireWildcard","Q","_ContextMapContainer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RepositoryBaseC","exports","RepositoryBaseC1","itemType","constructor","RepositoryBaseC2","impl","saveAndPublish","removeAndPublish","find","all","changeFeed","mapped","query","RepositoryBaseC3","id","Effect","andThen","_","mapError","NotFoundError","type","log","evt","AnyPureDSL","removeById","save","items","saveWithEvents","events","queryAndSavePure","q","pure","batch","pipe","Array","isArray","undefined","saveManyWithPure_","saveManyWithPureBatched_","saveWithPure_","handleByIdAndSaveWithPure","req","ctx","byIdAndSaveWithPure","saveManyWithPure","forEach","ReadonlyArray","chunk_","saveAllWithEffectInt","runTerm","flatMap","item","saveWithPure","map","makeRepo","name","schema","mapFrom","mapTo","mapToPersistenceModel","getEtag","mapReverse","_etag","setEtag","mkStore","makeStore","make","args","gen","$","rctx","context","encodeMany","flow","S","encode","array","provide","withSpan","decode","decodeMany","store","makeInitial","config","ContextMapContainer","cms","etag","pubCfg","pub","publishEvents","unit","PubSub","unbounded","allE","cm","orDie","fieldsSchema","struct","ast","_tag","union","types","from","pick","encodeId","findEId","Option","findE","flatMapOption","saveAllE","sync","toNonEmptyArray","ret","batchSet","asUnit","saveAll","it","Chunk","fromIterable","publish","toArray","remove","parseMany","parseMany2","filter","tap","select","toFilter","eff","mode","getSomes","Unify","unify","ttype","head","NonNegativeInt","length","catchTag","die","attributes","makeQuery","dec","encMany","decMany","b","xes","withLogSpan","pluralize","s","endsWith","substring","encodeToEncoded","StoreMaker","partitionValue","makeRepoFunctions","tag","serviceConstants","serviceFunctions","use","body","RepositoryBaseImpl","jitM","mkRepo","pm","Cls","makeWith","limit","Error","stackTraceLimit","creationError","Context","assignTag","assign","RepositoryDefaultImpl"],"sources":["../../src/services/RepositoryBase.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RepositoryBase.cjs","names":["_Repository","require","_Store","_Array","_Effect","_schema","_effectApp","_Pure","_errors","_query","_interopRequireWildcard","Q","_ContextMapContainer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RepositoryBaseC","exports","RepositoryBaseC1","itemType","constructor","RepositoryBaseC2","impl","saveAndPublish","removeAndPublish","find","all","changeFeed","mapped","query","RepositoryBaseC3","id","Effect","andThen","_","mapError","NotFoundError","type","log","evt","AnyPureDSL","removeById","save","items","saveWithEvents","events","queryAndSavePure","q","pure","batch","pipe","Array","isArray","undefined","saveManyWithPure_","saveManyWithPureBatched_","saveWithPure_","handleByIdAndSaveWithPure","req","ctx","byIdAndSaveWithPure","saveManyWithPure","forEach","ReadonlyArray","chunk_","saveAllWithEffectInt","runTerm","flatMap","item","saveWithPure","map","makeRepo","name","schema","mapFrom","mapTo","mapToPersistenceModel","getEtag","mapReverse","_etag","setEtag","mkStore","makeStore","make","args","gen","$","rctx","context","encodeMany","flow","S","encode","array","provide","withSpan","decode","decodeMany","store","makeInitial","config","ContextMapContainer","cms","etag","pubCfg","pub","publishEvents","unit","PubSub","unbounded","allE","cm","orDie","fieldsSchema","struct","ast","_tag","union","types","from","pick","encodeId","findEId","Option","findE","flatMapOption","saveAllE","sync","toNonEmptyArray","ret","batchSet","asUnit","saveAll","it","Chunk","fromIterable","publish","toArray","remove","parseMany","parseMany2","filter","tap","select","toFilter","eff","mode","getSomes","Unify","unify","ttype","head","NonNegativeInt","length","catchTag","die","attributes","makeQuery","dec","encMany","decMany","b","xes","withLogSpan","pluralize","s","endsWith","substring","encodeToEncoded","StoreMaker","partitionValue","makeRepoFunctions","tag","serviceConstants","serviceFunctions","use","body","RepositoryBaseImpl","jitM","mkRepo","pm","Cls","makeWith","limit","Error","stackTraceLimit","creationError","Context","assignTag","assign","RepositoryDefaultImpl","makeRequest","repo","_request","Request","tagged","requestResolver","RequestResolver","makeBatched","requests","where","complete","findFirst","match","onNone","Exit","fail","onSome","succeed","discard","catchAllCause","cause","failCause","batchN","contextFromServices","request"],"sources":["../../src/services/RepositoryBase.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;AAMA,IAAAA,WAAA,GAAAC,OAAA;AAUA,IAAAC,MAAA,GAAAD,OAAA;AAIA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAEA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,UAAA,GAAAL,OAAA;AAeA,IAAAM,KAAA,GAAAN,OAAA;AAGA,IAAAO,OAAA,GAAAP,OAAA;AAEA,IAAAQ,MAAA,GAAAC,uBAAA,CAAAT,OAAA;AAA8C,IAAAU,CAAA,GAAAF,MAAA;AAG9C,IAAAG,oBAAA,GAAAX,OAAA;AAAoE,SAAAY,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAhDpE;AACA;AACA;AACA;AACA;AACA;;AA2EA;;;AAGM,MAAgBY,eAAe;AAyCpCC,OAAA,CAAAD,eAAA,GAAAA,eAAA;AAEK,MAAgBE,gBAKpB,SAAQF,eAA0C;EAEhCG,QAAA;EADlBC,YACkBD,QAAkB;IAElC,KAAK,EAAE;IAFS,KAAAA,QAAQ,GAARA,QAAQ;EAG1B;;AACDF,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AAEK,MAAOG,gBAKX,SAAQH,gBAA2C;EAG9BI,IAAA;EAFrBF,YACED,QAAkB,EACCG,IAA2C;IAE9D,KAAK,CAACH,QAAQ,CAAC;IAFI,KAAAG,IAAI,GAAJA,IAAI;IAGvB,IAAI,CAACC,cAAc,GAAG,IAAI,CAACD,IAAI,CAACC,cAAc;IAC9C,IAAI,CAACC,gBAAgB,GAAG,IAAI,CAACF,IAAI,CAACE,gBAAgB;IAClD,IAAI,CAACC,IAAI,GAAG,IAAI,CAACH,IAAI,CAACG,IAAI;IAC1B,IAAI,CAACC,GAAG,GAAG,IAAI,CAACJ,IAAI,CAACI,GAAG;IACxB,IAAI,CAACC,UAAU,GAAG,IAAI,CAACL,IAAI,CAACK,UAAU;IACtC,IAAI,CAACC,MAAM,GAAG,IAAI,CAACN,IAAI,CAACM,MAAM;IAC9B,IAAI,CAACC,KAAK,GAAG,IAAI,CAACP,IAAI,CAACO,KAAK;EAC9B;EACA;EACSN,cAAc;EACdC,gBAAgB;EAChBC,IAAI;EACJC,GAAG;EACHC,UAAU;EACVC,MAAM;EACNC,KAAK;;AACfZ,OAAA,CAAAI,gBAAA,GAAAA,gBAAA;AAEK,MAAOS,gBAKX,SAAQT,gBAA2C;EACnDlB,GAAGA,CAAC4B,EAAW;IACb,OAAOC,iBAAM,CAACC,OAAO,CACnB,IAAI,CACDR,IAAI,CAACM,EAAE,CAAC,EACVG,CAAC,IAAKF,iBAAM,CAACG,QAAQ,CAACD,CAAC,EAAE,MAAM,IAAIE,qBAAa,CAAW;MAAEC,IAAI,EAAE,IAAI,CAAClB,QAAQ;MAAEY;IAAE,CAAE,CAAC,CAAC,CAC1F;EACH;EAESO,GAAG,GAAIC,GAAQ,IAAKC,sBAAU,CAACF,GAAG,CAACC,GAAG,CAAC;EAEhDE,UAAUA,CAACV,EAAW;IACpB,OAAOC,iBAAM,CAACC,OAAO,CAAC,IAAI,CAAC9B,GAAG,CAAC4B,EAAE,CAAC,EAAGG,CAAC,IAAK,IAAI,CAACV,gBAAgB,CAAC,CAACU,CAAC,CAAC,CAAC,CAAC;EACxE;EAESQ,IAAI,GAAGA,CAAC,GAAGC,KAAuB,KAAK,IAAI,CAACpB,cAAc,CAACoB,KAAK,CAAC;EAEjEC,cAAc,GAAIC,MAAqB,IAAK,CAAC,GAAGF,KAAuB,KAC9E,IAAI,CAACpB,cAAc,CAACoB,KAAK,EAAEE,MAAM,CAAC;EAE3BC,gBAAgB,GA4CrBA,CAACC,CAAC,EAAEC,IAAI,EAAEC,KAA0B,KACtC,IAAI,CAACpB,KAAK,CAACkB,CAAC,CAAC,CAACG,IAAI,CAChBlB,iBAAM,CAACC,OAAO,CAAEC,CAAC,IACfiB,KAAK,CAACC,OAAO,CAAClB,CAAC,CAAC,GACZe,KAAK,KAAKI,SAAS,GACjB,IAAAC,6BAAiB,EAAC,IAAI,EAAEpB,CAAC,EAAEc,IAAW,CAAC,GACvC,IAAAO,oCAAwB,EAAC,IAAI,EAAErB,CAAC,EAAEc,IAAW,EAAEC,KAAK,KAAK,SAAS,GAAG,GAAG,GAAGA,KAAK,CAAC,GACnF,IAAAO,yBAAa,EAAC,IAAI,EAAEtB,CAAQ,EAAEc,IAAW,CAAC,CAC/C,CACK;EAEV;;;EAGSS,yBAAyB,GAChCT,IAAqE,IAEvE,CAACU,GAAQ,EAAEC,GAAY,KAAK,IAAAC,+BAAmB,EAAC,IAAI,EAAEF,GAAG,CAAC3B,EAAE,CAAC,CAACiB,IAAI,CAACU,GAAG,EAAEC,GAAG,CAAC,CAAC;EAE7EE,gBAAgB,GAsBZA,CAAClB,KAAK,EAAEK,IAAI,EAAEC,KAA0B,KAC1CA,KAAK,GACDjB,iBAAM,CAAC8B,OAAO,CACdC,wBAAa,CAACC,MAAM,CAACrB,KAAK,EAAEM,KAAK,KAAK,SAAS,GAAG,GAAG,GAAGA,KAAK,CAAC,EAC7DA,KAAK,IACJ,IAAAgB,gCAAoB,EAClB,IAAI,EACJ,IAAAC,aAAO,EAAClB,IAAI,EAAEC,KAAK,CAAC,CACrB,CACJ,GACC,IAAAgB,gCAAoB,EACpB,IAAI,EACJ,IAAAC,aAAO,EAAClB,IAAI,EAAE,CAAC,GAAGL,KAAK,CAAC,CAAC,CAC1B;EAELiB,mBAAmB,GAWfA,CAAC7B,EAAE,EAAEiB,IAAI,KAAU,IAAA7C,eAAG,EAAC,IAAI,EAAE4B,EAAE,CAAC,CAACmB,IAAI,CAAClB,iBAAM,CAACmC,OAAO,CAAEC,IAAI,IAAK,IAAAZ,yBAAa,EAAC,IAAI,EAAEY,IAAI,EAAEpB,IAAI,CAAC,CAAC,CAAC;EAEpGqB,YAAYA,CAOVD,IAAQ,EACRpB,IAA0C;IAE1C,OAAO,IAAAiB,gCAAoB,EACzB,IAAI,EACJ,IAAAC,aAAO,EAAClB,IAAI,EAAEoB,IAAI,CAAC,CAChBlB,IAAI,CAAClB,iBAAM,CAACsC,GAAG,CAAC,CAAC,CAACF,IAAI,EAAEvB,MAAM,EAAEvC,CAAC,CAAC,KAAK,CAAC,CAAC8D,IAAI,CAAC,EAAEvB,MAAM,EAAEvC,CAAC,CAAC,CAAC,CAAC,CAChE;EACH;;AAGF;;;AAAAW,OAAA,CAAAa,gBAAA,GAAAA,gBAAA;AAGM,SAAUyC,QAAQA,CAAA;EAGtB,OAAO,CAMLC,IAAc,EACdC,MAA+B,EAC/BC,OAAiC,EACjCC,KAA8E,KAC5E;IAEF,SAASC,qBAAqBA,CAC5BhF,CAAU,EACViF,OAA2C;MAE3C,OAAOF,KAAK,CAAC/E,CAAC,EAAEiF,OAAO,CAACjF,CAAC,CAACmC,EAAE,CAAC,CAAC;IAChC;IAEA,SAAS+C,UAAUA,CACjB;MAAEC,KAAK;MAAE,GAAGnF;IAAC,CAAM,EACnBoF,OAAuD;MAEvDA,OAAO,CAACpF,CAAC,CAACmC,EAAE,EAAEgD,KAAK,CAAC;MACpB,OAAOL,OAAO,CAAC9E,CAAuB,CAAC;IACzC;IAEA,MAAMqF,OAAO,GAAGC,SAAS,EAAW,CAACV,IAAI,EAAEC,MAAM,EAAEE,KAAK,CAAC;IAEzD,SAASQ,IAAIA,CACXC,IAYG;MAEH,OAAOpD,iBAAM,CACVqD,GAAG,CAAC,WAAUC,CAAC;QACd,MAAMC,IAAI,GAAG,OAAOD,CAAC,CAACtD,iBAAM,CAACwD,OAAO,EAAK,CAAC;QAC1C,MAAMC,UAAU,GAAG,IAAAC,eAAI,EAACC,YAAC,CAACC,MAAM,CAACD,YAAC,CAACE,KAAK,CAACpB,MAAM,CAAC,CAAC,EAAEzC,iBAAM,CAAC8D,OAAO,CAACP,IAAI,CAAC,EAAEvD,iBAAM,CAAC+D,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvG,MAAMC,MAAM,GAAG,IAAAN,eAAI,EAACC,YAAC,CAACK,MAAM,CAACvB,MAAM,CAAC,EAAEzC,iBAAM,CAAC8D,OAAO,CAACP,IAAI,CAAC,CAAC;QAC3D,MAAMU,UAAU,GAAG,IAAAP,eAAI,EACrBC,YAAC,CAACK,MAAM,CAACL,YAAC,CAACE,KAAK,CAACpB,MAAM,CAAC,CAAC,EACzBzC,iBAAM,CAAC8D,OAAO,CAACP,IAAI,CAAC,EACpBvD,iBAAM,CAAC+D,QAAQ,CAAC,YAAY,CAAC,CAC9B;QAED,MAAMG,KAAK,GAAG,OAAOZ,CAAC,CAACL,OAAO,CAACG,IAAI,CAACe,WAAW,EAAEf,IAAI,CAACgB,MAAM,CAAC,CAAC;QAC9D,MAAM;UAAEjG;QAAG,CAAE,GAAG,OAAOmF,CAAC,CAACe,wCAAmB,CAAC;QAC7C,MAAMC,GAAG,GAAGtE,iBAAM,CAACC,OAAO,CAAC9B,GAAG,EAAG+B,CAAC,KAAM;UACtC/B,GAAG,EAAG4B,EAAU,IAAKG,CAAC,CAAC/B,GAAG,CAAC,GAAGqE,IAAI,IAAIzC,EAAE,EAAE,CAAC;UAC3ChB,GAAG,EAAEA,CAACgB,EAAU,EAAEwE,IAAwB,KAAKrE,CAAC,CAACnB,GAAG,CAAC,GAAGyD,IAAI,IAAIzC,EAAE,EAAE,EAAEwE,IAAI;SAC3E,CAAC,CAAC;QAEH,MAAMC,MAAM,GAAG,OAAOlB,CAAC,CAACtD,iBAAM,CAACwD,OAAO,EAAM,CAAC;QAC7C,MAAMiB,GAAG,GAAG,eAAe,IAAIrB,IAAI,GAC/B,IAAAM,eAAI,EAACN,IAAI,CAACsB,aAAa,EAAE1E,iBAAM,CAAC8D,OAAO,CAACU,MAAM,CAAC,CAAC,GAChD,MAAMxE,iBAAM,CAAC2E,IAAI;QACrB,MAAMhF,UAAU,GAAG,OAAO2D,CAAC,CAACsB,iBAAM,CAACC,SAAS,EAA4B,CAAC;QAEzE,MAAMC,IAAI,GAAGR,GAAG,CACbpD,IAAI,CAAClB,iBAAM,CAACmC,OAAO,CAAE4C,EAAE,IAAK/E,iBAAM,CAACsC,GAAG,CAAC4B,KAAK,CAACxE,GAAG,EAAGQ,CAAC,IAAKA,CAAC,CAACoC,GAAG,CAAEpC,CAAC,IAAK4C,UAAU,CAAC5C,CAAC,EAAE6E,EAAE,CAAChG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAElG,MAAMW,GAAG,GAAGM,iBAAM,CACfmC,OAAO,CACN2C,IAAI,EACH5E,CAAC,IAAK+D,UAAU,CAAC/D,CAAC,CAAC,CAACgB,IAAI,CAAClB,iBAAM,CAACgF,KAAK,CAAC,CACxC,CACA9D,IAAI,CAAClB,iBAAM,CAACsC,GAAG,CAAEpC,CAAC,IAAKA,CAAQ,CAAC,CAAC;QAEpC,MAAM+E,YAAY,GAAGxC,MAAoC;QACzD,MAAM3D,CAAC,GAAG,CAAC,QAAQ,IAAImG,YAAY,GAAGtB,YAAC,CAACuB,MAAM,CAACD,YAAY,CAAC,QAAQ,CAAC,CAA6B,GAAGxC,MAAM,EACxGvB,IAAI,CAAEhB,CAAC,IACNA,CAAC,CAACiF,GAAG,CAACC,IAAI,KAAK;QACb;QAAA,EACEzB,YAAC,CAAC0B,KAAK,CAAC,GAAGnF,CAAC,CAACiF,GAAG,CAACG,KAAK,CAAChD,GAAG,CAAEpC,CAAC,IAC5ByD,YAAC,CAACR,IAAI,CAACjD,CAAC,CAACkF,IAAI,KAAK,gBAAgB,GAAGlF,CAAC,CAACqF,IAAI,GAAGrF,CAAC,CAAmC,CAChFgB,IAAI,CAACyC,YAAC,CAAC6B,IAAI,CAAC,IAAI,CAAC,CAAC,CACtB,CAAC,GACAtF,CAAC,CACEiF,GAAG,CACHC,IAAI,KAAK,gBAAgB,GAC3BzB,YAAC,CACDR,IAAI,CACHjD,CAAC,CACEiF,GAAG,CACHI,IAAI,CAC0B,CAClCrE,IAAI,CAACyC,YAAC,CACJ6B,IAAI,CAAC,IAAI,CAAC,CAAC,GACdtF,CAAC,CACAgB,IAAI,CAACyC,YAAC,CACJ6B,IAAI,CAAC,IAAI,CAAC,CAAC,CACnB;QACH,MAAMC,QAAQ,GAAG,IAAA/B,eAAI,EAACC,YAAC,CAACC,MAAM,CAAC9E,CAAC,CAAC,EAAEkB,iBAAM,CAAC8D,OAAO,CAACP,IAAI,CAAC,CAAC;QACxD,SAASmC,OAAOA,CAAC3F,EAAiB;UAChC,OAAOC,iBAAM,CAACmC,OAAO,CACnB+B,KAAK,CAACzE,IAAI,CAACM,EAAE,CAAC,EACbqC,IAAI,IACHpC,iBAAM,CAACqD,GAAG,CAAC,WAAUC,CAAC;YACpB,MAAM;cAAEvE;YAAG,CAAE,GAAG,OAAOuE,CAAC,CAACgB,GAAG,CAAC;YAC7B,OAAOlC,IAAI,CAAClB,IAAI,CAACyE,iBAAM,CAACrD,GAAG,CAAEpC,CAAC,IAAK4C,UAAU,CAAC5C,CAAC,EAAEnB,GAAG,CAAC,CAAC,CAAC;UACzD,CAAC,CAAC,CACL;QACH;QACA,SAAS6G,KAAKA,CAAC7F,EAAW;UACxB,OAAO,IAAAmB,eAAI,EACTuE,QAAQ,CAAC;YAAE1F;UAAE,CAAE,CAAC,EAChBC,iBAAM,CAACgF,KAAK,EACZhF,iBAAM,CAACsC,GAAG,CAAEpC,CAAC,IAAKA,CAAC,CAACH,EAAE,CAAC,EACvBC,iBAAM,CAACmC,OAAO,CAACuD,OAAO,CAAC,CACxB;QACH;QAEA,SAASjG,IAAIA,CAACM,EAAW;UACvB,OAAOC,iBAAM,CAAC6F,aAAa,CAACD,KAAK,CAAC7F,EAAE,CAAC,EAAGG,CAAC,IAAKF,iBAAM,CAACgF,KAAK,CAAChB,MAAM,CAAC9D,CAAC,CAAC,CAAC,CAAC;QACxE;QAEA,MAAM4F,QAAQ,GAAIxH,CAAoB,IACpC0B,iBAAM,CACH6F,aAAa,CACZ7F,iBAAM,CACH+F,IAAI,CAAC,MAAM,IAAAC,sBAAe,EAAC,CAAC,GAAG1H,CAAC,CAAC,CAAC,CAAC,EACrCA,CAAC,IACA0B,iBAAM,CAACqD,GAAG,CAAC,WAAUC,CAAC;UACpB,MAAM;YAAEnF,GAAG;YAAEY;UAAG,CAAE,GAAG,OAAOuE,CAAC,CAACgB,GAAG,CAAC;UAClC,MAAM3D,KAAK,GAAGrC,CAAC,CAACgE,GAAG,CAAEpC,CAAC,IAAK0C,qBAAqB,CAAC1C,CAAC,EAAE/B,GAAG,CAAC,CAAC;UACzD,MAAM8H,GAAG,GAAG,OAAO3C,CAAC,CAACY,KAAK,CAACgC,QAAQ,CAACvF,KAAK,CAAC,CAAC;UAC3CsF,GAAG,CAACnE,OAAO,CAAE5B,CAAC,IAAKnB,GAAG,CAACmB,CAAC,CAACH,EAAE,EAAEG,CAAC,CAAC6C,KAAK,CAAC,CAAC;QACxC,CAAC,CAAC,CACL,CACA7B,IAAI,CAAClB,iBAAM,CAACmG,MAAM,CAAC;QAExB,MAAMC,OAAO,GAAI9H,CAAc,IAC7BmF,UAAU,CAACtC,KAAK,CAACoE,IAAI,CAACjH,CAAC,CAAC,CAAC,CACtB4C,IAAI,CACHlB,iBAAM,CAACgF,KAAK,EACZhF,iBAAM,CAACC,OAAO,CAAC6F,QAAQ,CAAC,CACzB;QAEL,MAAMvG,cAAc,GAAGA,CAACoB,KAAkB,EAAEE,MAAA,GAAwB,EAAE,KAAI;UACxE,MAAMwF,EAAE,GAAGC,gBAAK,CAACC,YAAY,CAAC5F,KAAK,CAAC;UACpC,OAAOyF,OAAO,CAACC,EAAE,CAAC,CACfnF,IAAI,CACHlB,iBAAM,CAACC,OAAO,CAACD,iBAAM,CAAC+F,IAAI,CAAC,MAAM,IAAAC,sBAAe,EAAC,CAAC,GAAGnF,MAAM,CAAC,CAAC,CAAC,CAAC;UAC/D;UACCX,CAAC,IAAKF,iBAAM,CAAC6F,aAAa,CAAC3F,CAAC,EAAEuE,GAAG,CAAC,EACnCzE,iBAAM,CAACC,OAAO,CAACN,UAAU,CAAC6G,OAAO,CAAC,CAACF,gBAAK,CAACG,OAAO,CAACJ,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAC/DrG,iBAAM,CAACmG,MAAM,CACd;QACL,CAAC;QAED,SAAS3G,gBAAgBA,CAAClB,CAAc,EAAEuC,MAAA,GAAwB,EAAE;UAClE,OAAOb,iBAAM,CAACqD,GAAG,CAAC,WAAUC,CAAC;YAC3B,MAAM;cAAEnF,GAAG;cAAEY;YAAG,CAAE,GAAG,OAAOuE,CAAC,CAACgB,GAAG,CAAC;YAClC,MAAM+B,EAAE,GAAG,CAAC,GAAG/H,CAAC,CAAC;YACjB,MAAMqC,KAAK,GAAG,OAAO2C,CAAC,CAACG,UAAU,CAAC4C,EAAE,CAAC,CAACnF,IAAI,CAAClB,iBAAM,CAACgF,KAAK,CAAC,CAAC;YACzD;YACA,KAAK,MAAMpH,CAAC,IAAI+C,KAAK,EAAE;cACrB,OAAO2C,CAAC,CAACY,KAAK,CAACwC,MAAM,CAAC9D,qBAAqB,CAAChF,CAAC,EAAEO,GAAG,CAAC,CAAC,CAAC;cACrDY,GAAG,CAACnB,CAAC,CAACmC,EAAE,EAAEsB,SAAS,CAAC;YACtB;YACA,OAAOiC,CAAC,CACNtD,iBAAM,CACH+F,IAAI,CAAC,MAAM,IAAAC,sBAAe,EAAC,CAAC,GAAGnF,MAAM,CAAC,CAAC;YACxC;YAAA,CACCK,IAAI,CAAEhB,CAAC,IAAKF,iBAAM,CAAC6F,aAAa,CAAC3F,CAAC,EAAEuE,GAAG,CAAC,CAAC,CAC7C;YAED,OAAOnB,CAAC,CAAC3D,UAAU,CAAC6G,OAAO,CAAC,CAACH,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;UAC9C,CAAC,CAAC;QACJ;QAEA,MAAMM,SAAS,GAAIhG,KAAoB,IACrCX,iBAAM,CACHmC,OAAO,CAACmC,GAAG,EAAGS,EAAE,IACfd,UAAU,CAACtD,KAAK,CAAC2B,GAAG,CAAEpC,CAAC,IAAK4C,UAAU,CAAC5C,CAAC,EAAE6E,EAAE,CAAChG,GAAG,CAAC,CAAC,CAAC,CAChDmC,IAAI,CAAClB,iBAAM,CAACgF,KAAK,EAAEhF,iBAAM,CAAC+D,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1D,MAAM6C,UAAU,GAAGA,CACjBjG,KAAoB,EACpB8B,MAA+B,KAE/BzC,iBAAM,CACHmC,OAAO,CAACmC,GAAG,EAAGS,EAAE,IACfpB,YAAC,CACEK,MAAM,CAACL,YAAC,CAACE,KAAK,CAACpB,MAAM,CAAC,CAAC,CACtB9B,KAAK,CAAC2B,GAAG,CAAEpC,CAAC,IAAK4C,UAAU,CAAC5C,CAAC,EAAE6E,EAAE,CAAChG,GAAG,CAAC,CAAC,CACxC,CACAmC,IAAI,CAAClB,iBAAM,CAACgF,KAAK,EAAEhF,iBAAM,CAAC+D,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QAC3D,MAAM8C,MAAM,GAA6CzD,IAA4B,IACnFc,KAAK,CACF2C,MAAM,CAACzD,IAAI,CAAC,CACZlC,IAAI,CAAClB,iBAAM,CAAC8G,GAAG,CAAEnG,KAAK,IACrByC,IAAI,CAAC2D,MAAM,GACP/G,iBAAM,CAAC2E,IAAI,GACX3E,iBAAM,CAACsC,GAAG,CAACgC,GAAG,EAAE,CAAC;UAAEvF;QAAG,CAAE,KAAK4B,KAAK,CAACmB,OAAO,CAAE5B,CAAC,IAAKnB,GAAG,CAAEmB,CAAa,CAACH,EAAE,EAAGG,CAAQ,CAAC6C,KAAK,CAAC,CAAC,CAAC,CAChG,CAAC;QAEN;QACA,MAAMlD,KAAK,GAKCkB,CAAsB,IAAI;UACpC,MAAMzC,CAAC,GAAGb,CAAC,CAACuJ,QAAQ,CAACjG,CAAC,CAAC;UACvB,MAAMkG,GAAG,GAAG3I,CAAC,CAAC4I,IAAI,KAAK,SAAS,GAC5BL,MAAM,CAACvI,CAAC;UACR;UAAA,CACC4C,IAAI,CAAClB,iBAAM,CAACC,OAAO,CAAC,IAAAyD,eAAI,EAACC,YAAC,CAACK,MAAM,CAACL,YAAC,CAACE,KAAK,CAACvF,CAAC,CAACmE,MAAM,IAAIA,MAAM,CAAC,CAAC,EAAEzC,iBAAM,CAAC8D,OAAO,CAACP,IAAI,CAAC,CAAC,CAAC,CAAC,GACxFjF,CAAC,CAAC4I,IAAI,KAAK,SAAS,GACpBL,MAAM,CAACvI,CAAC;UACR;UAAA,CACC4C,IAAI,CACHlB,iBAAM,CAACmC,OAAO,CAAC,IAAAuB,eAAI,EACjBC,YAAC,CAACK,MAAM,CAACL,YAAC,CAACE,KAAK,CAACvF,CAAC,CAACmE,MAAM,CAAC,CAAC,EAC3BzC,iBAAM,CAACsC,GAAG,CAACP,wBAAa,CAACoF,QAAQ,CAAC,EAClCnH,iBAAM,CAAC8D,OAAO,CAACP,IAAI,CAAC,CACrB,CAAC,CACH,GACDvD,iBAAM,CAACmC,OAAO,CACd0E,MAAM,CAACvI,CAAC,CAAC,EACR4B,CAAC,IACAkH,gBAAK,CAACC,KAAK,CACT/I,CAAC,CAACmE;UACA;UAAA,EACEmE,UAAU,CAAC1G,CAAQ,EAAE5B,CAAC,CAACmE,MAAa,CAAC,GACrCkE,SAAS,CAACzG,CAAQ,CAAC,CACxB,CACJ;UACH,OAAO,IAAAgB,eAAI,EACT5C,CAAC,CAACgJ,KAAK,KAAK,KAAK,GACbtH,iBAAM,CAACC,OAAO,CACdgH,GAAG,EACH,IAAAvD,eAAI,EACF3B,wBAAa,CAACwF,IAAI,EAClBvH,iBAAM,CAACG,QAAQ,CAAC,MAAM,IAAIC,qBAAa,CAAC;YAAEL,EAAE,EAAE,OAAO;YAAE,UAAWM,IAAI,EAAEmC;UAAI,CAAE,CAAC,CAAC,CACjF,CACF,GACClE,CAAC,CAACgJ,KAAK,KAAK,OAAO,GACnBtH,iBAAM,CACLC,OAAO,CAACgH,GAAG,EAAG/G,CAAC,IAAK,IAAAsH,sBAAc,EAACtH,CAAC,CAACuH,MAAM,CAAC,CAAC,CAC7CvG,IAAI,CAAClB,iBAAM,CAAC0H,QAAQ,CAAC,YAAY,EAAG9J,CAAC,IAAKoC,iBAAM,CAAC2H,GAAG,CAAC/J,CAAC,CAAC,CAAC,CAAC,GAC1DqJ,GAAG,EACPjH,iBAAM,CAAC+D,QAAQ,CAAC,qCAAqC,EAAE;YACrD6D,UAAU,EAAE;cACV,uBAAuB,EAAEpF,IAAI;cAC7B3C,KAAK,EAAE;gBAAE,GAAGvB,CAAC;gBAAEmE,MAAM,EAAEnE,CAAC,CAACmE,MAAM,GAAG,YAAY,GAAGnE,CAAC,CAACmE;cAAM;;WAE5D,CAAC,CACH;QACH,CAAS;QAET,MAAM3E,CAAC,GAA0C;UAC/C6B,UAAU;UACVR,QAAQ,EAAEqD,IAAI;UACd/C,IAAI;UACJC,GAAG;UACHH,cAAc;UACdC,gBAAgB;UAChBK,KAAK,EAAGkB,CAAM,IAAKlB,KAAK,CAAC,OAAOkB,CAAC,KAAK,UAAU,GAAGA,CAAC,CAAC,IAAA8G,WAAS,GAAE,CAAC,GAAG9G,CAAC,CAAQ;UAE7E;;;UAGAnB,MAAM,EAAS6C,MAA2B,IAAI;YAC5C,MAAMqF,GAAG,GAAGnE,YAAC,CAACK,MAAM,CAACvB,MAAM,CAAC;YAC5B,MAAMsF,OAAO,GAAGpE,YAAC,CAACC,MAAM,CAACD,YAAC,CAACE,KAAK,CAACpB,MAAM,CAAC,CAAC;YACzC,MAAMuF,OAAO,GAAGrE,YAAC,CAACK,MAAM,CAACL,YAAC,CAACE,KAAK,CAACpB,MAAM,CAAC,CAAC;YACzC,OAAO;cACL/C,GAAG,EAAEoF,IAAI,CAAC5D,IAAI,CACZlB,iBAAM,CAACmC,OAAO,CAAC6F,OAAO,CAAC,EACvBhI,iBAAM,CAACsC,GAAG,CAAEpC,CAAC,IAAKA,CAAU,CAAC,CAC9B;cACDT,IAAI,EAAGM,EAAiB,IAAK,IAAA8F,qBAAa,EAACD,KAAK,CAAC7F,EAAE,CAAC,EAAE+H,GAAG,CAAC;cAC1DjI,KAAK,EAAGoI,CAAM,IACZpB,MAAM,CAAC;gBAAEA,MAAM,EAAEoB;cAAC,CAAE,CAAC,CAClB/G,IAAI,CACHlB,iBAAM,CAACmC,OAAO,CAAC6F,OAAO,CAAC,EACvBhI,iBAAM,CAACsC,GAAG,CAAEpC,CAAC,IAAKA,CAAU,CAAC,CAC9B;cACLQ,IAAI,EAAEA,CAAC,GAAGwH,GAAU,KAAKlI,iBAAM,CAACmC,OAAO,CAAC4F,OAAO,CAACG,GAAG,CAAC,EAAGhI,CAAC,IAAK4F,QAAQ,CAAC5F,CAAC,CAAC;aACzE;UACH;SACD;QACD,OAAOpC,CAAC;MACV,CAAC,CAAC,CACDoD,IAAI,CAAClB;MACJ;MAAA,CACCmI,WAAW,CAAC,mBAAmB,GAAG3F,IAAI,CAAC,CAAC;IAC/C;IAEA,OAAO;MACLW,IAAI;MACJ1F,CAAC,EAAEA,CAAC,CAAC0F,IAAI;KACV;EACH,CAAC;AACH;AAEA,MAAMiF,SAAS,GAAIC,CAAS,IAC1BA,CAAC,CAACC,QAAQ,CAAC,GAAG,CAAC,GACXD,CAAC,GAAG,IAAI,GACRA,CAAC,CAACC,QAAQ,CAAC,GAAG,CAAC,GACfD,CAAC,CAACE,SAAS,CAAC,CAAC,EAAEF,CAAC,CAACZ,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,GACpCY,CAAC,GAAG,GAAG;AAEP,SAAUnF,SAASA,CAAA;EAGvB,OAAO,CAMLV,IAAc,EACdC,MAAyB,EACzBE,KAAkD,KAChD;IACF,SAAS6F,eAAeA,CAAA;MACtB,MAAM3F,OAAO,GAAGA,CAAA,KAAMxB,SAAS;MAC/B,OAAQtD,CAAI,IACV4F,YAAC,CAACC,MAAM,CAACnB,MAAM,CAAC,CAAC1E,CAAC,CAAC,CAACmD,IAAI,CACtBlB,iBAAM,CAACgF,KAAK,EACZhF,iBAAM,CAACsC,GAAG,CAAEpC,CAAC,IAAK0C,qBAAqB,CAAC1C,CAAC,EAAE2C,OAAO,CAAC,CAAC,CACrD;IACL;IAEA,SAASD,qBAAqBA,CAC5BhF,CAAI,EACJiF,OAA2C;MAE3C,OAAOF,KAAK,CAAC/E,CAAC,EAAEiF,OAAO,CAACjF,CAAC,CAACmC,EAAE,CAAC,CAAC;IAChC;IAEA,SAASmD,SAASA,CAChBiB,WAAsD,EACtDC,MAEC;MAED,OAAOpE,iBAAM,CAACqD,GAAG,CAAC,WAAUC,CAAC;QAC3B,MAAM;UAAEH;QAAI,CAAE,GAAG,OAAOG,CAAC,CAACmF,iBAAU,CAAC;QAErC,MAAMvE,KAAK,GAAG,OAAOZ,CAAC,CACpBH,IAAI,CACFiF,SAAS,CAAC5F,IAAI,CAAC,EACf2B,WAAW,GACPA,WAAW,CACVjD,IAAI,CACHlB,iBAAM,CAACmC,OAAO,CAACnC,iBAAM,CAAC8B,OAAO,CAAC0G,eAAe,EAAE,CAAC,CAAC,EACjDxI,iBAAM,CAAC+D,QAAQ,CAAC,2CAA2C,EAAE;UAC3D6D,UAAU,EAAE;YAAE,uBAAuB,EAAEpF;UAAI;SAC5C,CAAC,CACH,GACDnB,SAAS,EACb;UACE,GAAG+C,MAAM;UACTsE,cAAc,EAAEtE,MAAM,EAAEsE,cAAc,KAC/BxI,CAAC,IAAK,SAAS,CAAC,CAAC;SACzB,CACF,CACF;QACD,OAAOgE,KAAK;MACd,CAAC,CAAC;IACJ;IAEA,OAAOhB,SAAS;EAClB,CAAC;AACH;AAsLA,MAAMyF,iBAAiB,GAAGA,CAACC,GAAQ,EAAEzJ,QAAa,KAAI;EACpD,MAAM;IAAEO;EAAG,CAAE,GAAGM,iBAAM,CAAC6I,gBAAgB,CAACD,GAAG,CAAQ;EACnD,MAAM;IACJhH,mBAAmB;IACnBnC,IAAI;IACJtB,GAAG;IACH0B,KAAK;IACLiB,gBAAgB;IAChBtB,gBAAgB;IAChBiB,UAAU;IACVC,IAAI;IACJnB,cAAc;IACdsC;EAAgB,CACjB,GAAG7B,iBAAM,CAAC8I,gBAAgB,CAACF,GAAG,CAAQ;EAEvC,MAAMhJ,MAAM,GAAIyI,CAAM,IAAKO,GAAG,CAACtG,GAAG,CAAEpC,CAAM,IAAKA,CAAC,CAACN,MAAM,CAACyI,CAAC,CAAC,CAAC;EAE3D,OAAO;IACLlJ,QAAQ;IACRO,GAAG;IACHkC,mBAAmB;IACnBnC,IAAI;IACJgB,UAAU;IACVlB,cAAc;IACdC,gBAAgB;IAChBkB,IAAI;IACJvC,GAAG;IACH0B,KAAK;IACLD,MAAM;IACNkB,gBAAgB;IAChBe,gBAAgB;IAChBkH,GAAG,EAAGC,IAAS,IAAKhJ,iBAAM,CAACC,OAAO,CAAC2I,GAAG,EAAEI,IAAI;GAC7C;AACH,CAAC;AAEM,MAAMC,kBAAkB,GAAGA,CAAA,KAAc;EAC9C,OAAO,MAGP,CACE9J,QAAkB,EAClBsD,MAA+B,EAC/ByG,IAA+B,KAWuB;IAEtD,MAAMC,MAAM,GAAG5G,QAAQ,EAAO,CAC5BpD,QAAQ,EACRsD,MAAM,EACNyG,IAAI,GAAIE,EAAE,IAAKF,IAAI,CAACE,EAAwB,CAAC,GAAIA,EAAE,IAAKA,EAAS,EACjE,CAACxL,CAAC,EAAEmF,KAAK,MAAM;MAAE,GAAGnF,CAAC;MAAEmF;IAAK,CAAE,CAAC,CAChC;IACD,MAAesG,GAAI,SAAQnK,gBAA2C;MACpEE,YAAA;QACE,KAAK,CAACD,QAAQ,CAAC;MACjB;MACA,OAAgBgE,IAAI,GAAGgG,MAAM,CAAChG,IAAI;MAClC,OAAgBmG,QAAQ,GAAIA,CAAChL,CAAM,EAAE2J,CAAM,KAAKjI,iBAAM,CAACsC,GAAG,CAAC6G,MAAM,CAAChG,IAAI,CAAC7E,CAAC,CAAC,EAAE2J,CAAC,CAAC;MAE7E,OAAgBxK,CAAC,GAAGA,CAAC,CAAC0F,IAAI,EAAW;MACrC,OAAgB9C,IAAI,GAA0CgB,SAAgB;;IAEhF,MAAMkI,KAAK,GAAGC,KAAK,CAACC,eAAe;IACnCD,KAAK,CAACC,eAAe,GAAG,CAAC;IACzB,MAAMC,aAAa,GAAG,IAAIF,KAAK,EAAE;IACjCA,KAAK,CAACC,eAAe,GAAGF,KAAK;IAC7B,OAAOI,kBAAO,CAACC,SAAS,CAAUvI,SAAS,EAAEqI,aAAa,CAAC,CACzDnL,MAAM,CAACsL,MAAM,CAACR,GAAG,EAAEV,iBAAiB,CAACU,GAAG,EAAElK,QAAQ,CAAC,CAAC,CAC9C;EACV,CAAC;AACH,CAAC;AAAAF,OAAA,CAAAgK,kBAAA,GAAAA,kBAAA;AAEM,MAAMa,qBAAqB,GAAGA,CAAA,KAA2B;EAC9D,OAAO,CACL3K,QAAkB,EAClBsD,MAA+B,EAC/ByG,IAA+B,KAauB;IAEtD,MAAMC,MAAM,GAAG5G,QAAQ,EAAO,CAC5BpD,QAAQ,EACRsD,MAAM,EACNyG,IAAI,GAAIE,EAAE,IAAKF,IAAI,CAACE,EAAE,CAAC,GAAIA,EAAE,IAAKA,EAAE,EACpC,CAACxL,CAAC,EAAEmF,KAAK,MAAM;MAAE,GAAGnF,CAAC;MAAEmF;IAAK,CAAE,CAAC,CAChC;IACD,MAAesG,GAAI,SAAQvJ,gBAA2C;MACpEV,YACEE,IAA2C;QAE3C,KAAK,CAACH,QAAQ,EAAEG,IAAI,CAAC;MACvB;MACA,OAAgB6D,IAAI,GAAGgG,MAAM,CAAChG,IAAI;MAClC,OAAgBmG,QAAQ,GAAIA,CAAChL,CAAM,EAAE2J,CAAM,KAAKjI,iBAAM,CAACsC,GAAG,CAAC6G,MAAM,CAAChG,IAAI,CAAC7E,CAAC,CAAC,EAAE2J,CAAC,CAAC;MAE7E,OAAgBxK,CAAC,GAAGA,CAAC,CAAC0F,IAAI,EAAW;MAErC,OAAgB9C,IAAI,GAA0CgB,SAAgB;;IAEhF,MAAMkI,KAAK,GAAGC,KAAK,CAACC,eAAe;IACnCD,KAAK,CAACC,eAAe,GAAG,CAAC;IACzB,MAAMC,aAAa,GAAG,IAAIF,KAAK,EAAE;IACjCA,KAAK,CAACC,eAAe,GAAGF,KAAK;IAC7B,OAAOI,kBAAO,CAACC,SAAS,CAAUvI,SAAS,EAAEqI,aAAa,CAAC,CACzDnL,MAAM,CAACsL,MAAM,CAACR,GAAG,EAAEV,iBAAiB,CAACU,GAAG,EAAElK,QAAQ,CAAC,CAAC,CAC9C,EAAC;EACX,CAAC;AACH,CAAC;AAED;AAAAF,OAAA,CAAA6K,qBAAA,GAAAA,qBAAA;AACO,MAAMC,WAAW,GAMtBC,IAAuF,IAAI;EAI3F,MAAMC,QAAQ,GAAGC,kBAAO,CAACC,MAAM,CAAM,MAAMH,IAAI,CAAC7K,QAAQ,EAAE,CAAC;EAE3D,MAAMiL,eAAe,GAAGC,0BAAe,CACpCC,WAAW,CAAEC,QAAe,IAC1BP,IAAI,CACFnK,KAAK,CAACpC,CAAC,CAAC+M,KAAK,CAAC,IAAI,EAAE,IAAI,EAAED,QAAQ,CAACjI,GAAG,CAAEpC,CAAC,IAAKA,CAAC,CAACH,EAAE,CAAC,CAAQ,CAA0C,CAAC;EAAA,CACtGmB,IAAI,CACHlB,iBAAM,CAACC,OAAO,CAAEU,KAAK,IACnBX,iBAAM,CAAC8B,OAAO,CAACyI,QAAQ,EAAGzM,CAAC,IACzBoM,kBAAO,CAACO,QAAQ,CACd3M,CAAC,EACDiE,wBAAa,CACV2I,SAAS,CAAC/J,KAAK,EAAGT,CAAC,IAAKA,CAAC,CAACH,EAAE,KAAKjC,CAAC,CAACiC,EAAE,CAAC,CACtCmB,IAAI,CAACyE,iBAAM,CAACgF,KAAK,CAAC;IACjBC,MAAM,EAAEA,CAAA,KAAMC,eAAI,CAACC,IAAI,CAAC,IAAI1K,qBAAa,CAAC;MAAEC,IAAI,EAAE2J,IAAI,CAAC7K,QAAQ;MAAEY,EAAE,EAAEjC,CAAC,CAACiC;IAAE,CAAE,CAAC,CAAC;IAC7EgL,MAAM,EAAEF,eAAI,CAACG;GACd,CAAC,CAAC,CACN,EAAE;IAAEC,OAAO,EAAE;EAAI,CAAE,CAAC,CACxB,EACDjL,iBAAM,CACHkL,aAAa,CAAEC,KAAK,IACnBnL,iBAAM,CAAC8B,OAAO,CAACyI,QAAQ,EAAEL,kBAAO,CAACO,QAAQ,CAACI,eAAI,CAACO,SAAS,CAACD,KAAK,CAAC,CAAC,EAAE;IAAEF,OAAO,EAAE;EAAI,CAAE,CAAC,CACrF,CACJ,CACJ,CACA/J,IAAI,CACHmJ,0BAAe,CAACgB,MAAM,CAAC,EAAE,CAAC,EAC1BhB,0BAAe,CAACiB,mBAAmB,CAACtB,IAAI,CAAC,CAC1C;EAEH,OAAQjK,EAAW,IAAKC,iBAAM,CAACuL,OAAO,CAACtB,QAAQ,CAAC;IAAElK;EAAE,CAAE,CAAC,EAAEqK,eAAe,CAAC;AAC3E,CAAC;AAAAnL,OAAA,CAAA8K,WAAA,GAAAA,WAAA"}
|
|
@@ -40,7 +40,7 @@ declare const Operations_base: (abstract new (service: {
|
|
|
40
40
|
register: Effect.Effect<StringId, never, Scope.Scope>;
|
|
41
41
|
find: (id: StringId) => Effect.Effect<Option.Option<Operation>, never, never>;
|
|
42
42
|
update: (id: StringId, progress: OperationProgress) => Effect.Effect<void, never, never>;
|
|
43
|
-
}) => X) => X extends Effect<infer A_3, infer E_5, infer R_5> ? Effect<A_3, E_5,
|
|
43
|
+
}) => X) => X extends Effect<infer A_3, infer E_5, infer R_5> ? Effect<A_3, E_5, R_5 | Operations> : Effect<X, never, Operations>;
|
|
44
44
|
};
|
|
45
45
|
export declare class Operations extends Operations_base {
|
|
46
46
|
private static readonly CleanupLive;
|
|
@@ -16,12 +16,12 @@ export declare const QueueMaker: QueueMakerOps;
|
|
|
16
16
|
export declare const QueueMeta: import("@effect/schema/Schema").struct<{
|
|
17
17
|
requestContext: typeof RequestContext;
|
|
18
18
|
span: S.PropertySignature<"?:", {
|
|
19
|
-
readonly traceId: string;
|
|
20
19
|
readonly spanId: string;
|
|
20
|
+
readonly traceId: string;
|
|
21
21
|
readonly sampled?: boolean | undefined;
|
|
22
22
|
} | undefined, never, "?:", {
|
|
23
|
-
readonly traceId: string;
|
|
24
23
|
readonly spanId: string;
|
|
24
|
+
readonly traceId: string;
|
|
25
25
|
readonly sampled?: boolean | undefined;
|
|
26
26
|
} | undefined, false, never>;
|
|
27
27
|
}>;
|
|
@@ -26,7 +26,7 @@ export declare function byIdAndSaveWithPure<T extends {
|
|
|
26
26
|
id: unknown;
|
|
27
27
|
}, Encoded extends {
|
|
28
28
|
id: string;
|
|
29
|
-
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"]): <R, A, E, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, T, S2>>) => Effect.Effect<A, import("effect-app/client/errors").
|
|
29
|
+
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"]): <R, A, E, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, T, S2>>) => Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | NotFoundError<ItemType> | E, Exclude<R, {
|
|
30
30
|
env: import("effect-app/Pure").PureEnv<Evt, T, S2>;
|
|
31
31
|
}>>;
|
|
32
32
|
/**
|
|
@@ -39,7 +39,7 @@ export declare function handleByIdAndSaveWithPure<T extends {
|
|
|
39
39
|
id: string;
|
|
40
40
|
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): <Req extends {
|
|
41
41
|
id: T["id"];
|
|
42
|
-
}, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A, import("effect-app/client/errors").
|
|
42
|
+
}, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E | NotFoundError<ItemType>, Exclude<R, {
|
|
43
43
|
env: import("effect-app/Pure").PureEnv<Evt, T, S2>;
|
|
44
44
|
}>>;
|
|
45
45
|
/**
|
|
@@ -49,7 +49,7 @@ export declare function saveManyWithPure_<R, T extends {
|
|
|
49
49
|
id: unknown;
|
|
50
50
|
}, Encoded extends {
|
|
51
51
|
id: string;
|
|
52
|
-
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>): Effect.Effect<A, import("effect-app/client/errors").
|
|
52
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>): Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, Exclude<R, {
|
|
53
53
|
env: import("effect-app/Pure").PureEnv<Evt, readonly S1[], readonly S2[]>;
|
|
54
54
|
}>>;
|
|
55
55
|
/**
|
|
@@ -59,14 +59,14 @@ export declare function saveWithPure_<R, T extends {
|
|
|
59
59
|
id: unknown;
|
|
60
60
|
}, Encoded extends {
|
|
61
61
|
id: string;
|
|
62
|
-
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A, import("effect-app/client/errors").
|
|
62
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, Exclude<R, {
|
|
63
63
|
env: import("effect-app/Pure").PureEnv<Evt, S1, S2>;
|
|
64
64
|
}>>;
|
|
65
65
|
export declare function saveAllWithEffectInt<T extends {
|
|
66
66
|
id: unknown;
|
|
67
67
|
}, Encoded extends {
|
|
68
68
|
id: string;
|
|
69
|
-
}, P extends T, Evt, ItemType extends string, R, E, A>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, gen: Effect<readonly [Iterable<P>, Iterable<Evt>, A], E, R>): Effect.Effect<A, import("effect-app/client/errors").
|
|
69
|
+
}, P extends T, Evt, ItemType extends string, R, E, A>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, gen: Effect<readonly [Iterable<P>, Iterable<Evt>, A], E, R>): Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, R>;
|
|
70
70
|
/**
|
|
71
71
|
* @tsplus fluent Repository saveManyWithPureBatched
|
|
72
72
|
*/
|
|
@@ -74,7 +74,7 @@ export declare function saveManyWithPureBatched<T extends {
|
|
|
74
74
|
id: unknown;
|
|
75
75
|
}, Encoded extends {
|
|
76
76
|
id: string;
|
|
77
|
-
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>) => (items: Iterable<S1>) => Effect.Effect<A[], import("effect-app/client/errors").
|
|
77
|
+
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>) => (items: Iterable<S1>) => Effect.Effect<A[], import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, Exclude<R, {
|
|
78
78
|
env: import("effect-app/Pure").PureEnv<Evt, readonly S1[], readonly S2[]>;
|
|
79
79
|
}>>;
|
|
80
80
|
/**
|
|
@@ -84,7 +84,7 @@ export declare function saveManyWithPureBatched_<R, T extends {
|
|
|
84
84
|
id: unknown;
|
|
85
85
|
}, Encoded extends {
|
|
86
86
|
id: string;
|
|
87
|
-
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>, batchSize?: number): Effect.Effect<A[], import("effect-app/client/errors").
|
|
87
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>, batchSize?: number): Effect.Effect<A[], import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, Exclude<R, {
|
|
88
88
|
env: import("effect-app/Pure").PureEnv<Evt, readonly S1[], readonly S2[]>;
|
|
89
89
|
}>>;
|
|
90
90
|
/**
|
|
@@ -94,7 +94,7 @@ export declare function save<T extends {
|
|
|
94
94
|
id: unknown;
|
|
95
95
|
}, Encoded extends {
|
|
96
96
|
id: string;
|
|
97
|
-
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (items_0: T, ...items_1: T[]) => Effect<void, import("effect-app/client/errors").
|
|
97
|
+
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (items_0: T, ...items_1: T[]) => Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError>;
|
|
98
98
|
/**
|
|
99
99
|
* @tsplus getter Repository saveWithEvents
|
|
100
100
|
*/
|
|
@@ -102,7 +102,7 @@ export declare function saveWithEvents<T extends {
|
|
|
102
102
|
id: unknown;
|
|
103
103
|
}, Encoded extends {
|
|
104
104
|
id: string;
|
|
105
|
-
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => Effect<void, import("effect-app/client/errors").
|
|
105
|
+
}, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError>;
|
|
106
106
|
/**
|
|
107
107
|
* @tsplus fluent Repository updateWithEffect
|
|
108
108
|
*/
|
|
@@ -110,7 +110,7 @@ export declare function itemUpdateWithEffect<R, E, T extends {
|
|
|
110
110
|
id: string;
|
|
111
111
|
}, Encoded extends {
|
|
112
112
|
id: string;
|
|
113
|
-
}, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => Effect<T, E, R>): Effect.Effect<void, import("effect-app/client/errors").
|
|
113
|
+
}, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => Effect<T, E, R>): Effect.Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E | NotFoundError<ItemType>, R>;
|
|
114
114
|
/**
|
|
115
115
|
* @tsplus fluent Repository update
|
|
116
116
|
*/
|
|
@@ -118,7 +118,7 @@ export declare function itemUpdate<T extends {
|
|
|
118
118
|
id: string;
|
|
119
119
|
}, Encoded extends {
|
|
120
120
|
id: string;
|
|
121
|
-
}, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => T): Effect.Effect<void, import("effect-app/client/errors").
|
|
121
|
+
}, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => T): Effect.Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | NotFoundError<ItemType>, never>;
|
|
122
122
|
/**
|
|
123
123
|
* only use this as a shortcut if you don't have the item already
|
|
124
124
|
* @tsplus fluent Repository removeById
|
|
@@ -74,15 +74,15 @@ export declare class RepositoryBaseC2<T extends {
|
|
|
74
74
|
}, Evt, ItemType extends string> extends RepositoryBaseC1<T, Encoded, Evt, ItemType> {
|
|
75
75
|
protected readonly impl: Repository<T, Encoded, Evt, ItemType>;
|
|
76
76
|
constructor(itemType: ItemType, impl: Repository<T, Encoded, Evt, ItemType>);
|
|
77
|
-
saveAndPublish: (items: Iterable<T>, events?: Iterable<Evt> | undefined) => Effect<void,
|
|
77
|
+
saveAndPublish: (items: Iterable<T>, events?: Iterable<Evt> | undefined) => Effect<void, OptimisticConcurrencyException | InvalidStateError>;
|
|
78
78
|
removeAndPublish: (items: Iterable<T>, events?: Iterable<Evt> | undefined) => Effect<void>;
|
|
79
79
|
find: (id: T["id"]) => Effect<Option<T>>;
|
|
80
80
|
all: Effect<T[]>;
|
|
81
81
|
changeFeed: PubSub.PubSub<[T[], "save" | "remove"]>;
|
|
82
82
|
mapped: Mapped<Encoded>;
|
|
83
83
|
query: {
|
|
84
|
-
<A, R, Encoded2 extends FieldValues, TType extends "
|
|
85
|
-
<R_1 = never, TType_1 extends "
|
|
84
|
+
<A, R, Encoded2 extends FieldValues, TType extends "one" | "many" | "count" = "many">(q: (initial: Query<Encoded>) => QueryProjection<Encoded extends Encoded2 ? Encoded2 : never, A, R, TType>): Effect.Effect<TType extends "many" ? readonly A[] : TType extends "count" ? number & S.NonNegativeIntBrand : A, (TType extends "many" ? never : NotFoundError<ItemType>) | (TType extends "count" ? never : ParseResult.ParseError), R>;
|
|
85
|
+
<R_1 = never, TType_1 extends "one" | "many" = "many">(q: (initial: Query<Encoded>) => QAll<Encoded, T, R_1, TType_1>): Effect.Effect<TType_1 extends "many" ? readonly T[] : T, TType_1 extends "many" ? never : NotFoundError<ItemType>, R_1>;
|
|
86
86
|
};
|
|
87
87
|
}
|
|
88
88
|
export declare class RepositoryBaseC3<T extends {
|
|
@@ -93,8 +93,8 @@ export declare class RepositoryBaseC3<T extends {
|
|
|
93
93
|
get(id: T["id"]): Effect.Effect<T, NotFoundError<ItemType>, never>;
|
|
94
94
|
readonly log: (evt: Evt) => import("effect-app/Pure").PureLogT<any>;
|
|
95
95
|
removeById(id: T["id"]): Effect.Effect<void, NotFoundError<ItemType>, never>;
|
|
96
|
-
readonly save: (items_0: T, ...items_1: T[]) => Effect<void,
|
|
97
|
-
readonly saveWithEvents: (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => Effect<void,
|
|
96
|
+
readonly save: (items_0: T, ...items_1: T[]) => Effect<void, OptimisticConcurrencyException | InvalidStateError>;
|
|
97
|
+
readonly saveWithEvents: (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => Effect<void, OptimisticConcurrencyException | InvalidStateError>;
|
|
98
98
|
readonly queryAndSavePure: {
|
|
99
99
|
<A, E2, R2, T2 extends T>(q: (q: Query<Encoded>) => QueryEnd<Encoded, "one">, pure: Effect<A, E2, FixEnv<R2, Evt, T, T2>>): Effect.Effect<A, InvalidStateError | OptimisticConcurrencyException | NotFoundError<ItemType> | E2, Exclude<R2, {
|
|
100
100
|
env: PureEnv<Evt, T, T2>;
|
|
@@ -111,7 +111,7 @@ export declare class RepositoryBaseC3<T extends {
|
|
|
111
111
|
*/
|
|
112
112
|
readonly handleByIdAndSaveWithPure: <Req extends {
|
|
113
113
|
id: T["id"];
|
|
114
|
-
}, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A,
|
|
114
|
+
}, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A, OptimisticConcurrencyException | InvalidStateError | NotFoundError<ItemType> | E, Exclude<R, {
|
|
115
115
|
env: PureEnv<Evt, T, S2>;
|
|
116
116
|
}>>;
|
|
117
117
|
saveManyWithPure: {
|
|
@@ -127,7 +127,7 @@ export declare class RepositoryBaseC3<T extends {
|
|
|
127
127
|
env: PureEnv<Evt, T, S2>;
|
|
128
128
|
}>>;
|
|
129
129
|
};
|
|
130
|
-
saveWithPure<R, A, E, S1 extends T, S2 extends T>(item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A,
|
|
130
|
+
saveWithPure<R, A, E, S1 extends T, S2 extends T>(item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A, OptimisticConcurrencyException | InvalidStateError | E, Exclude<R, {
|
|
131
131
|
env: PureEnv<Evt, S1, S2>;
|
|
132
132
|
}>>;
|
|
133
133
|
}
|
|
@@ -150,7 +150,7 @@ export declare function makeRepo<Evt = never>(): <ItemType extends string, R, En
|
|
|
150
150
|
config?: Omit<StoreConfig<Encoded>, "partitionValue"> & {
|
|
151
151
|
partitionValue?: (a: Encoded) => string;
|
|
152
152
|
};
|
|
153
|
-
}) => Effect.Effect<Repository<T, Encoded, Evt, ItemType>, E,
|
|
153
|
+
}) => Effect.Effect<Repository<T, Encoded, Evt, ItemType>, E, R | StoreMaker | ContextMapContainer | RInitial | R2>;
|
|
154
154
|
Q: Query<Encoded>;
|
|
155
155
|
};
|
|
156
156
|
export declare function makeStore<Encoded extends {
|
|
@@ -202,6 +202,8 @@ export interface RepoFunctions<T extends {
|
|
|
202
202
|
}, Encoded extends {
|
|
203
203
|
id: string;
|
|
204
204
|
}, Evt, ItemType, Service> {
|
|
205
|
+
itemType: ItemType;
|
|
206
|
+
T: T;
|
|
205
207
|
all: Effect<readonly T[], never, Service>;
|
|
206
208
|
find: (id: T["id"]) => Effect<Option<T>, never, Service>;
|
|
207
209
|
removeById: (id: T["id"]) => Effect<void, NotFoundError<ItemType>, Service>;
|
|
@@ -251,4 +253,9 @@ export declare const RepositoryDefaultImpl: <Service, Evt = never>() => <ItemTyp
|
|
|
251
253
|
}, T extends {
|
|
252
254
|
id: unknown;
|
|
253
255
|
}>(itemType: ItemType, schema: S.Schema<T, Encoded, R>, jitM?: ((pm: Encoded) => Encoded) | undefined) => (abstract new (impl: Repository<T, Encoded, Evt, ItemType>) => RepositoryBaseC3<T, Encoded, Evt, ItemType>) & Context.Tag<Service, Service> & Repos<T, Encoded, R, Evt, ItemType> & RepoFunctions<T, Encoded, Evt, ItemType, Service>;
|
|
256
|
+
export declare const makeRequest: <ItemType extends string, T extends {
|
|
257
|
+
id: unknown;
|
|
258
|
+
}, Encoded extends {
|
|
259
|
+
id: string;
|
|
260
|
+
} & FieldValues, Evt, Service>(repo: Context.Tag<Service, Service> & RepoFunctions<T, Encoded, Evt, ItemType, Service>) => (id: T["id"]) => Effect.Effect<T, NotFoundError<ItemType>, Service>;
|
|
254
261
|
//# sourceMappingURL=RepositoryBase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RepositoryBase.d.ts","sourceRoot":"","sources":["../../src/services/RepositoryBase.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RepositoryBase.d.ts","sourceRoot":"","sources":["../../src/services/RepositoryBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { StoreMaker } from "./Store.js";
|
|
|
9
9
|
import { toNonEmptyArray } from "@effect-app/core/Array";
|
|
10
10
|
import { flatMapOption } from "@effect-app/core/Effect";
|
|
11
11
|
import { NonNegativeInt } from "@effect-app/schema";
|
|
12
|
-
import { Chunk, Context, Effect, flow, Option, pipe, PubSub, ReadonlyArray, S, Unify } from "effect-app";
|
|
12
|
+
import { Chunk, Context, Effect, Exit, flow, Option, pipe, PubSub, ReadonlyArray, Request, RequestResolver, S, Unify } from "effect-app";
|
|
13
13
|
import { runTerm } from "effect-app/Pure";
|
|
14
14
|
import { NotFoundError } from "../errors.js";
|
|
15
15
|
import { make as makeQuery } from "./query.js";
|
|
@@ -289,11 +289,12 @@ export function makeStore() {
|
|
|
289
289
|
return makeStore;
|
|
290
290
|
};
|
|
291
291
|
}
|
|
292
|
-
const makeRepoFunctions = (tag) => {
|
|
292
|
+
const makeRepoFunctions = (tag, itemType) => {
|
|
293
293
|
const { all } = Effect.serviceConstants(tag);
|
|
294
294
|
const { byIdAndSaveWithPure, find, get, query, queryAndSavePure, removeAndPublish, removeById, save, saveAndPublish, saveManyWithPure } = Effect.serviceFunctions(tag);
|
|
295
295
|
const mapped = (s) => tag.map((_) => _.mapped(s));
|
|
296
296
|
return {
|
|
297
|
+
itemType,
|
|
297
298
|
all,
|
|
298
299
|
byIdAndSaveWithPure,
|
|
299
300
|
find,
|
|
@@ -325,7 +326,7 @@ export const RepositoryBaseImpl = () => {
|
|
|
325
326
|
Error.stackTraceLimit = 2;
|
|
326
327
|
const creationError = new Error();
|
|
327
328
|
Error.stackTraceLimit = limit;
|
|
328
|
-
return Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls)));
|
|
329
|
+
return Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls, itemType)));
|
|
329
330
|
};
|
|
330
331
|
};
|
|
331
332
|
export const RepositoryDefaultImpl = () => {
|
|
@@ -344,7 +345,23 @@ export const RepositoryDefaultImpl = () => {
|
|
|
344
345
|
Error.stackTraceLimit = 2;
|
|
345
346
|
const creationError = new Error();
|
|
346
347
|
Error.stackTraceLimit = limit;
|
|
347
|
-
return Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls))); // impl is missing, but its marked protected
|
|
348
|
+
return Context.assignTag(undefined, creationError)(Object.assign(Cls, makeRepoFunctions(Cls, itemType))); // impl is missing, but its marked protected
|
|
348
349
|
};
|
|
349
350
|
};
|
|
350
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvUmVwb3NpdG9yeUJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBQ3hELDBEQUEwRDtBQUMxRCw0REFBNEQ7QUFDNUQsdURBQXVEO0FBQ3ZELGlEQUFpRDtBQUNqRCxvRUFBb0U7QUFDcEUsT0FBTyxFQUNMLFVBQVUsRUFDVixtQkFBbUIsRUFDbkIsR0FBRyxFQUVILG9CQUFvQixFQUNwQixpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLGFBQWEsRUFDZCxNQUFNLGlCQUFpQixDQUFBO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFJdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFbkQsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUN4RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFHekMsT0FBTyxFQUEwQixhQUFhLEVBQXVDLE1BQU0sY0FBYyxDQUFBO0FBRXpHLE9BQU8sRUFBRSxJQUFJLElBQUksU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTlDLE9BQU8sS0FBSyxDQUFDLE1BQU0sWUFBWSxDQUFBO0FBQy9CLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBZ0NwRTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsZUFBZTtDQXlDcEM7QUFFRCxNQUFNLE9BQWdCLGdC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
|
|
351
|
+
// TODO: integrate with repo
|
|
352
|
+
export const makeRequest = (repo) => {
|
|
353
|
+
const _request = Request.tagged(`Get${repo.itemType}`);
|
|
354
|
+
const requestResolver = RequestResolver
|
|
355
|
+
.makeBatched((requests) => repo
|
|
356
|
+
.query(Q.where("id", "in", requests.map((_) => _.id))) // TODO
|
|
357
|
+
.pipe(Effect.andThen((items) => Effect.forEach(requests, (r) => Request.complete(r, ReadonlyArray
|
|
358
|
+
.findFirst(items, (_) => _.id === r.id)
|
|
359
|
+
.pipe(Option.match({
|
|
360
|
+
onNone: () => Exit.fail(new NotFoundError({ type: repo.itemType, id: r.id })),
|
|
361
|
+
onSome: Exit.succeed
|
|
362
|
+
}))), { discard: true })), Effect
|
|
363
|
+
.catchAllCause((cause) => Effect.forEach(requests, Request.complete(Exit.failCause(cause)), { discard: true }))))
|
|
364
|
+
.pipe(RequestResolver.batchN(20), RequestResolver.contextFromServices(repo));
|
|
365
|
+
return (id) => Effect.request(_request({ id }), requestResolver);
|
|
366
|
+
};
|
|
367
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvUmVwb3NpdG9yeUJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBQ3hELDBEQUEwRDtBQUMxRCw0REFBNEQ7QUFDNUQsdURBQXVEO0FBQ3ZELGlEQUFpRDtBQUNqRCxvRUFBb0U7QUFDcEUsT0FBTyxFQUNMLFVBQVUsRUFDVixtQkFBbUIsRUFDbkIsR0FBRyxFQUVILG9CQUFvQixFQUNwQixpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLGFBQWEsRUFDZCxNQUFNLGlCQUFpQixDQUFBO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFJdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFbkQsT0FBTyxFQUNMLEtBQUssRUFDTCxPQUFPLEVBQ1AsTUFBTSxFQUNOLElBQUksRUFDSixJQUFJLEVBQ0osTUFBTSxFQUNOLElBQUksRUFDSixNQUFNLEVBQ04sYUFBYSxFQUNiLE9BQU8sRUFDUCxlQUFlLEVBQ2YsQ0FBQyxFQUNELEtBQUssRUFDTixNQUFNLFlBQVksQ0FBQTtBQUNuQixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFHekMsT0FBTyxFQUEwQixhQUFhLEVBQXVDLE1BQU0sY0FBYyxDQUFBO0FBRXpHLE9BQU8sRUFBRSxJQUFJLElBQUksU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTlDLE9BQU8sS0FBSyxDQUFDLE1BQU0sWUFBWSxDQUFBO0FBQy9CLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBZ0NwRTs7R0FFRztBQUNILE1BQU0sT0FBZ0Is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
|
|
@@ -26,7 +26,7 @@ declare const RequestContextContainer_base: (abstract new (service: {
|
|
|
26
26
|
requestContext: Effect<RequestContext>;
|
|
27
27
|
update: (f: (rc: RequestContext) => RequestContext) => Effect<RequestContext>;
|
|
28
28
|
start: (f: RequestContext) => Effect<void>;
|
|
29
|
-
}) => X) => X extends Effect<infer A_3, infer E_4, infer R_4> ? Effect<A_3, E_4,
|
|
29
|
+
}) => X) => X extends Effect<infer A_3, infer E_4, infer R_4> ? Effect<A_3, E_4, R_4 | RequestContextContainer> : Effect<X, never, RequestContextContainer>;
|
|
30
30
|
};
|
|
31
31
|
/**
|
|
32
32
|
* @tsplus type RequestContextContainer
|
|
@@ -2,6 +2,6 @@ import type { StorageConfig } from "./service.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* @tsplus static StoreMaker.Ops Layer
|
|
4
4
|
*/
|
|
5
|
-
export declare function StoreMakerLayer(cfg: StorageConfig): import("effect
|
|
5
|
+
export declare function StoreMakerLayer(cfg: StorageConfig): import("effect-app").Layer<import("./service.js").StoreMaker, never, never>;
|
|
6
6
|
export * from "./service.js";
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/Store/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEjD;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/Store/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEjD;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,+EAkBjD;AAED,cAAc,cAAc,CAAA"}
|
|
@@ -88,7 +88,7 @@ declare const StoreMaker_base: (abstract new (service: {
|
|
|
88
88
|
make: <Encoded extends {
|
|
89
89
|
id: Id;
|
|
90
90
|
}, Id extends string, R = never, E = never>(name: string, seed?: Effect<Iterable<Encoded>, E, R> | undefined, config?: StoreConfig<Encoded> | undefined) => Effect<Store<Encoded, Id, PersistenceModelType<Encoded>>, E, R>;
|
|
91
|
-
}) => X) => X extends Effect<infer A_3, infer E_4, infer R_4> ? Effect<A_3, E_4,
|
|
91
|
+
}) => X) => X extends Effect<infer A_3, infer E_4, infer R_4> ? Effect<A_3, E_4, StoreMaker | R_4> : Effect<X, never, StoreMaker>;
|
|
92
92
|
};
|
|
93
93
|
/**
|
|
94
94
|
* @tsplus type StoreMaker
|
|
@@ -127,7 +127,7 @@ declare const ContextMap_base: (abstract new (service: {
|
|
|
127
127
|
use: <X>(body: (_: {
|
|
128
128
|
get: (id: string) => string | undefined;
|
|
129
129
|
set: (id: string, eTag: string | undefined) => void;
|
|
130
|
-
}) => X) => X extends Effect<infer A_3, infer E_5, infer R_5> ? Effect<A_3, E_5,
|
|
130
|
+
}) => X) => X extends Effect<infer A_3, infer E_5, infer R_5> ? Effect<A_3, E_5, ContextMap | R_5> : Effect<X, never, ContextMap>;
|
|
131
131
|
};
|
|
132
132
|
/**
|
|
133
133
|
* @tsplus type ContextMap
|
|
@@ -14,7 +14,7 @@ export declare const toFilter: <TFieldValues extends FieldValues, A, R>(q: QAll<
|
|
|
14
14
|
key: import("../../filter/types/path/eager.js").Path<TFieldValues>;
|
|
15
15
|
direction: "ASC" | "DESC";
|
|
16
16
|
}[]];
|
|
17
|
-
ttype: "
|
|
17
|
+
ttype: "one" | "many" | "count";
|
|
18
18
|
mode: "project" | "collect" | "transform";
|
|
19
19
|
filter: QueryBuilder<any>;
|
|
20
20
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/infra",
|
|
3
|
-
"version": "0.225.
|
|
3
|
+
"version": "0.225.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
"proper-lockfile": "^4.1.2",
|
|
19
19
|
"pure-rand": "6.0.4",
|
|
20
20
|
"redlock": "^4.2.0",
|
|
21
|
+
"@effect-app/infra-adapters": "0.146.1",
|
|
22
|
+
"effect-app": "0.192.1",
|
|
21
23
|
"@effect-app/core": "0.159.1",
|
|
22
24
|
"@effect-app/fluent-extensions": "0.153.0",
|
|
23
|
-
"effect-app": "0.192.1",
|
|
24
|
-
"@effect-app/infra-adapters": "0.146.1",
|
|
25
25
|
"@effect-app/schema": "0.211.2"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
@@ -23,7 +23,21 @@ import { flatMapOption } from "@effect-app/core/Effect"
|
|
|
23
23
|
import type { ParseResult, Schema } from "@effect-app/schema"
|
|
24
24
|
import { NonNegativeInt } from "@effect-app/schema"
|
|
25
25
|
import type { NonEmptyArray, NonEmptyReadonlyArray } from "effect-app"
|
|
26
|
-
import {
|
|
26
|
+
import {
|
|
27
|
+
Chunk,
|
|
28
|
+
Context,
|
|
29
|
+
Effect,
|
|
30
|
+
Exit,
|
|
31
|
+
flow,
|
|
32
|
+
Option,
|
|
33
|
+
pipe,
|
|
34
|
+
PubSub,
|
|
35
|
+
ReadonlyArray,
|
|
36
|
+
Request,
|
|
37
|
+
RequestResolver,
|
|
38
|
+
S,
|
|
39
|
+
Unify
|
|
40
|
+
} from "effect-app"
|
|
27
41
|
import { runTerm } from "effect-app/Pure"
|
|
28
42
|
import type { FixEnv, PureEnv } from "effect-app/Pure"
|
|
29
43
|
import type { NoInfer } from "effect/Types"
|
|
@@ -738,6 +752,8 @@ export interface Repos<
|
|
|
738
752
|
export type GetRepoType<T> = T extends { type: infer R } ? R : never
|
|
739
753
|
|
|
740
754
|
export interface RepoFunctions<T extends { id: unknown }, Encoded extends { id: string }, Evt, ItemType, Service> {
|
|
755
|
+
itemType: ItemType
|
|
756
|
+
T: T
|
|
741
757
|
all: Effect<readonly T[], never, Service>
|
|
742
758
|
find: (id: T["id"]) => Effect<Option<T>, never, Service>
|
|
743
759
|
removeById: (id: T["id"]) => Effect<void, NotFoundError<ItemType>, Service>
|
|
@@ -871,7 +887,7 @@ export interface RepoFunctions<T extends { id: unknown }, Encoded extends { id:
|
|
|
871
887
|
) => X extends Effect<infer A, infer E, infer R> ? Effect<A, E, R | Service> : Effect<X, never, Service>
|
|
872
888
|
}
|
|
873
889
|
|
|
874
|
-
const makeRepoFunctions = (tag: any) => {
|
|
890
|
+
const makeRepoFunctions = (tag: any, itemType: any) => {
|
|
875
891
|
const { all } = Effect.serviceConstants(tag) as any
|
|
876
892
|
const {
|
|
877
893
|
byIdAndSaveWithPure,
|
|
@@ -889,6 +905,7 @@ const makeRepoFunctions = (tag: any) => {
|
|
|
889
905
|
const mapped = (s: any) => tag.map((_: any) => _.mapped(s))
|
|
890
906
|
|
|
891
907
|
return {
|
|
908
|
+
itemType,
|
|
892
909
|
all,
|
|
893
910
|
byIdAndSaveWithPure,
|
|
894
911
|
find,
|
|
@@ -945,7 +962,9 @@ export const RepositoryBaseImpl = <Service>() => {
|
|
|
945
962
|
Error.stackTraceLimit = 2
|
|
946
963
|
const creationError = new Error()
|
|
947
964
|
Error.stackTraceLimit = limit
|
|
948
|
-
return Context.assignTag<Service>(undefined, creationError)(
|
|
965
|
+
return Context.assignTag<Service>(undefined, creationError)(
|
|
966
|
+
Object.assign(Cls, makeRepoFunctions(Cls, itemType))
|
|
967
|
+
) as any
|
|
949
968
|
}
|
|
950
969
|
}
|
|
951
970
|
|
|
@@ -991,6 +1010,52 @@ export const RepositoryDefaultImpl = <Service, Evt = never>() => {
|
|
|
991
1010
|
Error.stackTraceLimit = 2
|
|
992
1011
|
const creationError = new Error()
|
|
993
1012
|
Error.stackTraceLimit = limit
|
|
994
|
-
return Context.assignTag<Service>(undefined, creationError)(
|
|
1013
|
+
return Context.assignTag<Service>(undefined, creationError)(
|
|
1014
|
+
Object.assign(Cls, makeRepoFunctions(Cls, itemType))
|
|
1015
|
+
) as any // impl is missing, but its marked protected
|
|
995
1016
|
}
|
|
996
1017
|
}
|
|
1018
|
+
|
|
1019
|
+
// TODO: integrate with repo
|
|
1020
|
+
export const makeRequest = <
|
|
1021
|
+
ItemType extends string,
|
|
1022
|
+
T extends { id: unknown },
|
|
1023
|
+
Encoded extends { id: string } & FieldValues,
|
|
1024
|
+
Evt,
|
|
1025
|
+
Service
|
|
1026
|
+
>(repo: Context.Tag<Service, Service> & RepoFunctions<T, Encoded, Evt, ItemType, Service>) => {
|
|
1027
|
+
type Req =
|
|
1028
|
+
& Request.Request<T, NotFoundError<ItemType>>
|
|
1029
|
+
& { _tag: `Get${ItemType}`; id: T["id"] }
|
|
1030
|
+
const _request = Request.tagged<Req>(`Get${repo.itemType}`)
|
|
1031
|
+
|
|
1032
|
+
const requestResolver = RequestResolver
|
|
1033
|
+
.makeBatched((requests: Req[]) =>
|
|
1034
|
+
(repo
|
|
1035
|
+
.query(Q.where("id", "in", requests.map((_) => _.id)) as any) as Effect<readonly T[], never, Service>) // TODO
|
|
1036
|
+
.pipe(
|
|
1037
|
+
Effect.andThen((items) =>
|
|
1038
|
+
Effect.forEach(requests, (r) =>
|
|
1039
|
+
Request.complete(
|
|
1040
|
+
r,
|
|
1041
|
+
ReadonlyArray
|
|
1042
|
+
.findFirst(items, (_) => _.id === r.id)
|
|
1043
|
+
.pipe(Option.match({
|
|
1044
|
+
onNone: () => Exit.fail(new NotFoundError({ type: repo.itemType, id: r.id })),
|
|
1045
|
+
onSome: Exit.succeed
|
|
1046
|
+
}))
|
|
1047
|
+
), { discard: true })
|
|
1048
|
+
),
|
|
1049
|
+
Effect
|
|
1050
|
+
.catchAllCause((cause) =>
|
|
1051
|
+
Effect.forEach(requests, Request.complete(Exit.failCause(cause)), { discard: true })
|
|
1052
|
+
)
|
|
1053
|
+
)
|
|
1054
|
+
)
|
|
1055
|
+
.pipe(
|
|
1056
|
+
RequestResolver.batchN(20),
|
|
1057
|
+
RequestResolver.contextFromServices(repo)
|
|
1058
|
+
)
|
|
1059
|
+
|
|
1060
|
+
return (id: T["id"]) => Effect.request(_request({ id }), requestResolver)
|
|
1061
|
+
}
|