@effect-app/infra 0.108.4 → 0.109.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 +22 -0
- package/_cjs/RequestContext.cjs +2 -2
- package/_cjs/RequestContext.cjs.map +1 -1
- package/_cjs/api/setupRequest.cjs +1 -1
- package/_cjs/api/setupRequest.cjs.map +1 -1
- package/_cjs/services/Operations/live.cjs +1 -1
- package/_cjs/services/Operations/live.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/RepositoryBase.cjs +1 -1
- package/_cjs/services/RepositoryBase.cjs.map +1 -1
- package/_cjs/services/RequestContextContainer.cjs +1 -1
- package/_cjs/services/RequestContextContainer.cjs.map +1 -1
- package/_src/RequestContext.ts +2 -2
- package/_src/api/setupRequest.ts +1 -1
- package/_src/services/Emailer/service.ts +2 -2
- package/_src/services/Operations/live.ts +3 -3
- package/_src/services/QueueMaker/memQueue.ts +1 -1
- package/_src/services/QueueMaker/sbqueue.ts +1 -1
- package/_src/services/RequestContextContainer.ts +1 -1
- package/dist/RequestContext.d.ts +11 -11
- package/dist/RequestContext.js +3 -3
- package/dist/api/setupRequest.js +2 -2
- package/dist/services/Emailer/service.d.ts +3 -3
- package/dist/services/Emailer/service.d.ts.map +1 -1
- package/dist/services/Operations/live.js +4 -4
- package/dist/services/QueueMaker/memQueue.js +2 -2
- package/dist/services/QueueMaker/sbqueue.js +2 -2
- package/dist/services/Repository.d.ts +2 -2
- package/dist/services/Repository.d.ts.map +1 -1
- package/dist/services/RepositoryBase.js +2 -2
- package/dist/services/RequestContextContainer.d.ts +4 -4
- package/dist/services/RequestContextContainer.js +2 -2
- package/package.json +5 -5
- package/.cache/effect/095519d034161945a8d2616a506d3e7f35a9b3d868814f44c747429c60fc4e7f.content +0 -275
- package/.cache/effect/095519d034161945a8d2616a506d3e7f35a9b3d868814f44c747429c60fc4e7f.hash +0 -1
- package/.cache/effect/134218688132dfbdea493cbe1f26e73449f2759121df35ddd5448346b59c9a8d.content +0 -43
- package/.cache/effect/134218688132dfbdea493cbe1f26e73449f2759121df35ddd5448346b59c9a8d.hash +0 -1
- package/.cache/effect/14eb9da4ca6d22162888c7fdb7f39ab772d2a2dc6625db6031ecdb32ac89158f.content +0 -122
- package/.cache/effect/14eb9da4ca6d22162888c7fdb7f39ab772d2a2dc6625db6031ecdb32ac89158f.hash +0 -1
- package/.cache/effect/1bfd92946b11da4292f2ed99dc0e322462b60559148f9524abc20e26f70779e1.content +0 -86
- package/.cache/effect/1bfd92946b11da4292f2ed99dc0e322462b60559148f9524abc20e26f70779e1.hash +0 -1
- package/.cache/effect/49c1bd9ec26e6df78b994d8df0bfe21b119803fa4aa46349bf4679fd0f1e7cda.content +0 -49
- package/.cache/effect/49c1bd9ec26e6df78b994d8df0bfe21b119803fa4aa46349bf4679fd0f1e7cda.hash +0 -1
- package/.cache/effect/58d4ccde8bd2db7829706db5bebd01b99900ee83f0f6a8413b53d17cbd69f510.content +0 -70
- package/.cache/effect/58d4ccde8bd2db7829706db5bebd01b99900ee83f0f6a8413b53d17cbd69f510.hash +0 -1
- package/.cache/effect/72a5a16a6b62b63cd71719c833091128207d7e6c823cb32293549b3dd58c451b.content +0 -178
- package/.cache/effect/72a5a16a6b62b63cd71719c833091128207d7e6c823cb32293549b3dd58c451b.hash +0 -1
- package/.cache/effect/7a9c33db6aedaf00093a132c1d4e48e9d043cef05e932b8a37da24d44e224248.content +0 -57
- package/.cache/effect/7a9c33db6aedaf00093a132c1d4e48e9d043cef05e932b8a37da24d44e224248.hash +0 -1
- package/.cache/effect/8594f0f42afc0641b00e88998000cc47382a1d07da31f4a148f7976701ca22d5.content +0 -97
- package/.cache/effect/8594f0f42afc0641b00e88998000cc47382a1d07da31f4a148f7976701ca22d5.hash +0 -1
- package/.cache/effect/c67d971634d2dc8118b40452b61c9a51620c35809be4a89982476aa80701d852.content +0 -11
- package/.cache/effect/c67d971634d2dc8118b40452b61c9a51620c35809be4a89982476aa80701d852.hash +0 -1
- package/.cache/effect/f38adf43700dab905456a534a0690eaf882cff2cd576c731f23d6d14a3c3d659.content +0 -364
- package/.cache/effect/f38adf43700dab905456a534a0690eaf882cff2cd576c731f23d6d14a3c3d659.hash +0 -1
package/.cache/effect/49c1bd9ec26e6df78b994d8df0bfe21b119803fa4aa46349bf4679fd0f1e7cda.content
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@effect/data/ReadonlyArray";
|
|
2
|
-
import * as tsplus_module_2 from "@effect-app/core/Array";
|
|
3
|
-
import * as tsplus_module_3 from "@effect-app/infra/filter";
|
|
4
|
-
import { makeFilters } from "../../filter.js";
|
|
5
|
-
import { codeFilter } from "./utils.js";
|
|
6
|
-
const somethings = [
|
|
7
|
-
{ a: 1, b: "b", c: ["c"], d: [{ a: "a2", b: 1 }, { a: "a", b: 1 }], id: "1" },
|
|
8
|
-
{ a: 2, b: "b2", c: ["c2"], d: [{ a: "a4", b: 2 }, { a: "a5", b: 2 }], id: "2" }
|
|
9
|
-
];
|
|
10
|
-
const f_ = makeFilters();
|
|
11
|
-
export function makeSomethingFilter_(filter) {
|
|
12
|
-
return filter(f_);
|
|
13
|
-
}
|
|
14
|
-
export function somethingsWhere(makeWhere, mode) {
|
|
15
|
-
return makeSomethingFilter_((f) => {
|
|
16
|
-
const m = makeWhere ? makeWhere(f) : [];
|
|
17
|
-
return ({
|
|
18
|
-
mode,
|
|
19
|
-
where: (Array.isArray(m) ? m : [m])
|
|
20
|
-
});
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
test("works", () => {
|
|
24
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => "b2"))))))
|
|
25
|
-
.toEqual([somethings[1]]);
|
|
26
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => tsplus_module_3.$contains(_, "b")))))))
|
|
27
|
-
.toEqual([somethings[0], somethings[1]]);
|
|
28
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => tsplus_module_3.$contains(_, "2")))))))
|
|
29
|
-
.toEqual([somethings[1]]);
|
|
30
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => tsplus_module_3.$endsWith(_, "b")))))))
|
|
31
|
-
.toEqual([somethings[0]]);
|
|
32
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => tsplus_module_3.$endsWith(_, "2")))))))
|
|
33
|
-
.toEqual([somethings[1]]);
|
|
34
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => tsplus_module_3.$startsWith(_, "b")))))))
|
|
35
|
-
.toEqual([somethings[0], somethings[1]]);
|
|
36
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => tsplus_module_3.$startsWith(_, "2")))))))
|
|
37
|
-
.toEqual([]);
|
|
38
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("b", (_) => "b"))))))
|
|
39
|
-
.toEqual([somethings[0]]);
|
|
40
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("c", (_) => tsplus_module_3.$includes(_, "c")))))))
|
|
41
|
-
.toEqual([somethings[0]]);
|
|
42
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("d.-1.a", (_) => "a5"))))))
|
|
43
|
-
.toEqual([somethings[1]]);
|
|
44
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("d.-1.a", (_) => "a"))))))
|
|
45
|
-
.toEqual([somethings[0]]);
|
|
46
|
-
expect(tsplus_module_2.iterableToArray(tsplus_module_1.filterMap(somethings, codeFilter(somethingsWhere((_) => _("d.-1.a", (_) => tsplus_module_3.$isnt(_, "a")))))))
|
|
47
|
-
.toEqual([somethings[1]]);
|
|
48
|
-
});
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZUZpbHRlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9TdG9yZS9jb2RlRmlsdGVyLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFdkMsTUFBTSxVQUFVLEdBQUc7SUFDakIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRTtJQUM3RSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFO0NBQ2xELENBQUE7QUFFaEMsTUFBTSxFQUFFLEdBQUcsV0FBVyxFQUFhLENBQUE7QUFHbkMsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE1BQXFEO0lBQ3hGLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUM3QixTQUVnQyxFQUNoQyxJQUFtQjtJQUVuQixPQUFPLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFF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LEdBQUcsQ0FBQyxDQUFDLENBQ2hELENBQUMsRUFFTDtTQUNFLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFFM0IsTUFBTSxpQ0FDSiwwQkFBQSxVQUFVLEVBQ0csVUFBVSxDQUNuQixlQUFlLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHNCQUFBLENBQUMsRUFBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQ3pELENBQUMsRUFFTDtTQUNFLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDN0IsQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFN0b3JlV2hlcmVGaWx0ZXIsIFdoZXJlIH0gZnJvbSBcIkBlZmZlY3QtYXBwL2luZnJhL3NlcnZpY2VzL1N0b3JlXCJcbmltcG9ydCB7IG1ha2VGaWx0ZXJzIH0gZnJvbSBcIi4uLy4uL2ZpbHRlci5qc1wiXG5pbXBvcnQgeyBjb2RlRmlsdGVyIH0gZnJvbSBcIi4vdXRpbHMuanNcIlxuXG5jb25zdCBzb21ldGhpbmdzID0gW1xuICB7IGE6IDEsIGI6IFwiYlwiLCBjOiBbXCJjXCJdLCBkOiBbeyBhOiBcImEyXCIsIGI6IDEgfSwgeyBhOiBcImFcIiwgYjogMSB9XSwgaWQ6IFwiMVwiIH0sXG4gIHsgYTogMiwgYjogXCJiMlwiLCBjOiBbXCJjMlwiXSwgZDogW3sgYTogXCJhNFwiLCBiOiAyIH0sIHsgYTogXCJhNVwiLCBiOiAyIH1dLCBpZDogXCIyXCIgfVxuXSBzYXRpc2ZpZXMgcmVhZG9ubHkgU29tZXRoaW5nW11cblxuY29uc3QgZl8gPSBtYWtlRmlsdGVyczxTb21ldGhpbmc+KClcbmV4cG9ydCB0eXBlIFNvbWV0aGluZ1doZXJlRmlsdGVyID0gdHlwZW9mIGZfXG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlU29tZXRoaW5nRmlsdGVyXyhmaWx0ZXI6IChmOiBTb21ldGhpbmdXaGVyZUZpbHRlcikgPT4gU3RvcmVXaGVyZUZpbHRlcikge1xuICByZXR1cm4gZmlsdGVyKGZfKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc29tZXRoaW5nc1doZXJlKFxuICBtYWtlV2hlcmU6IChcbiAgICBmOiBTb21ldGhpbmdXaGVyZUZpbHRlclxuICApID0+IFdoZXJlIHwgW1doZXJlLCAuLi5XaGVyZVtdXSxcbiAgbW9kZT86IFwib3JcIiB8IFwiYW5kXCJcbikge1xuICByZXR1cm4gbWFrZVNvbWV0aGluZ0ZpbHRlcl8oKGYpID0+IHtcbiAgICBjb25zdCBtID0gbWFrZVdoZXJlID8gbWFrZVdoZXJlKGYpIDogW11cbiAgICByZXR1cm4gKHtcbiAgICAgIG1vZGUsXG4gICAgICB3aGVyZTogKEFycmF5LmlzQXJyYXkobSkgPyBtIGFzIHVua25vd24gYXMgW1doZXJlLCAuLi5XaGVyZVtdXSA6IFttXSkgYXMgcmVhZG9ubHkgW1doZXJlLCAuLi5XaGVyZVtdXVxuICAgIH0pXG4gIH0pXG59XG5cbnR5cGUgU29tZXRoaW5nRWxzZSA9IHtcbiAgYTogc3RyaW5nXG4gIGI6IG51bWJlclxufVxuXG50eXBlIFNvbWV0aGluZyA9IHtcbiAgYTogbnVtYmVyXG4gIGlkOiBzdHJpbmdcbiAgYjogc3RyaW5nXG4gIGM6IHJlYWRvbmx5IHN0cmluZ1tdXG4gIGQ6IHJlYWRvbmx5IFNvbWV0aGluZ0Vsc2VbXVxufVxuXG50ZXN0KFwid29ya3NcIiwgKCkgPT4ge1xuICBleHBlY3QoXG4gICAgc29tZXRoaW5nc1xuICAgICAgLmZpbHRlck1hcChjb2RlRmlsdGVyKFxuICAgICAgICBzb21ldGhpbmdzV2hlcmUoKF8pID0+IF8oXCJiXCIsIChfKSA9PiBcImIyXCIpKVxuICAgICAgKSlcbiAgICAgIC50b0FycmF5XG4gIClcbiAgICAudG9FcXVhbChbc29tZXRoaW5nc1sxXV0pXG5cbiAgZXhwZWN0KFxuICAgIHNvbWV0aGluZ3NcbiAgICAgIC5maWx0ZXJNYXAoY29kZUZpbHRlcihcbiAgICAgICAgc29tZXRoaW5nc1doZXJlKChfKSA9PiBfKFwiYlwiLCAoXykgPT4gXy4kY29udGFpbnMoXCJiXCIpKSlcbiAgICAgICkpXG4gICAgICAudG9BcnJheVxuICApXG4gICAgLnRvRXF1YWwoW3NvbWV0aGluZ3NbMF0sIHNvbWV0aGluZ3NbMV1dKVxuXG4gIGV4cGVjdChcbiAgICBzb21ldGhpbmdzXG4gICAgICAuZmlsdGVyTWFwKGNvZGVGaWx0ZXIoXG4gICAgICAgIHNvbWV0aGluZ3NXaGVyZSgoXykgPT4gXyhcImJcIiwgKF8pID0+IF8uJGNvbnRhaW5zKFwiMlwiKSkpXG4gICAgICApKVxuICAgICAgLnRvQXJyYXlcbiAgKVxuICAgIC50b0VxdWFsKFtzb21ldGhpbmdzWzFdXSlcblxuICBleHBlY3QoXG4gICAgc29tZXRoaW5nc1xuICAgICAgLmZpbHRlck1hcChjb2RlRmlsdGVyKFxuICAgICAgICBzb21ldGhpbmdzV2hlcmUoKF8pID0+IF8oXCJiXCIsIChfKSA9PiBfLiRlbmRzV2l0aChcImJcIikpKVxuICAgICAgKSlcbiAgICAgIC50b0FycmF5XG4gIClcbiAgICAudG9FcXVhbChbc29tZXRoaW5nc1swXV0pXG5cbiAgZXhwZWN0KFxuICAgIHNvbWV0aGluZ3NcbiAgICAgIC5maWx0ZXJNYXAoY29kZUZpbHRlcihcbiAgICAgICAgc29tZXRoaW5nc1doZXJlKChfKSA9PiBfKFwiYlwiLCAoXykgPT4gXy4kZW5kc1dpdGgoXCIyXCIpKSlcbiAgICAgICkpXG4gICAgICAudG9BcnJheVxuICApXG4gICAgLnRvRXF1YWwoW3NvbWV0aGluZ3NbMV1dKVxuXG4gIGV4cGVjdChcbiAgICBzb21ldGhpbmdzXG4gICAgICAuZmlsdGVyTWFwKGNvZGVGaWx0ZXIoXG4gICAgICAgIHNvbWV0aGluZ3NXaGVyZSgoXykgPT4gXyhcImJcIiwgKF8pID0+IF8uJHN0YXJ0c1dpdGgoXCJiXCIpKSlcbiAgICAgICkpXG4gICAgICAudG9BcnJheVxuICApXG4gICAgLnRvRXF1YWwoW3NvbWV0aGluZ3NbMF0sIHNvbWV0aGluZ3NbMV1dKVxuXG4gIGV4cGVjdChcbiAgICBzb21ldGhpbmdzXG4gICAgICAuZmlsdGVyTWFwKGNvZGVGaWx0ZXIoXG4gICAgICAgIHNvbWV0aGluZ3NXaGVyZSgoXykgPT4gXyhcImJcIiwgKF8pID0+IF8uJHN0YXJ0c1dpdGgoXCIyXCIpKSlcbiAgICAgICkpXG4gICAgICAudG9BcnJheVxuICApXG4gICAgLnRvRXF1YWwoW10pXG5cbiAgZXhwZWN0KFxuICAgIHNvbWV0aGluZ3NcbiAgICAgIC5maWx0ZXJNYXAoY29kZUZpbHRlcihcbiAgICAgICAgc29tZXRoaW5nc1doZXJlKChfKSA9PiBfKFwiYlwiLCAoXykgPT4gXCJiXCIpKVxuICAgICAgKSlcbiAgICAgIC50b0FycmF5XG4gIClcbiAgICAudG9FcXVhbChbc29tZXRoaW5nc1swXV0pXG5cbiAgZXhwZWN0KFxuICAgIHNvbWV0aGluZ3NcbiAgICAgIC5maWx0ZXJNYXAoY29kZUZpbHRlcihcbiAgICAgICAgc29tZXRoaW5nc1doZXJlKChfKSA9PiBfKFwiY1wiLCAoXykgPT4gXy4kaW5jbHVkZXMoXCJjXCIpKSlcbiAgICAgICkpXG4gICAgICAudG9BcnJheVxuICApXG4gICAgLnRvRXF1YWwoW3NvbWV0aGluZ3NbMF1dKVxuXG4gIGV4cGVjdChcbiAgICBzb21ldGhpbmdzXG4gICAgICAuZmlsdGVyTWFwKGNvZGVGaWx0ZXIoXG4gICAgICAgIHNvbWV0aGluZ3NXaGVyZSgoXykgPT4gXyhcImQuLTEuYVwiLCAoXykgPT4gXCJhNVwiKSlcbiAgICAgICkpXG4gICAgICAudG9BcnJheVxuICApXG4gICAgLnRvRXF1YWwoW3NvbWV0aGluZ3NbMV1dKVxuXG4gIGV4cGVjdChcbiAgICBzb21ldGhpbmdzXG4gICAgICAuZmlsdGVyTWFwKGNvZGVGaWx0ZXIoXG4gICAgICAgIHNvbWV0aGluZ3NXaGVyZSgoXykgPT4gXyhcImQuLTEuYVwiLCAoXykgPT4gXCJhXCIpKVxuICAgICAgKSlcbiAgICAgIC50b0FycmF5XG4gIClcbiAgICAudG9FcXVhbChbc29tZXRoaW5nc1swXV0pXG5cbiAgZXhwZWN0KFxuICAgIHNvbWV0aGluZ3NcbiAgICAgIC5maWx0ZXJNYXAoY29kZUZpbHRlcihcbiAgICAgICAgc29tZXRoaW5nc1doZXJlKChfKSA9PiBfKFwiZC4tMS5hXCIsIChfKSA9PiBfLiRpc250KFwiYVwiKSkpXG4gICAgICApKVxuICAgICAgLnRvQXJyYXlcbiAgKVxuICAgIC50b0VxdWFsKFtzb21ldGhpbmdzWzFdXSlcbn0pXG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
cc2e90554066973e1b31534d5490d33b59233503ebcbafddd5483cecb7c817dd
|
package/.cache/effect/58d4ccde8bd2db7829706db5bebd01b99900ee83f0f6a8413b53d17cbd69f510.content
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@effect-app/prelude/service";
|
|
2
|
-
import * as tsplus_module_2 from "@effect/io/Effect";
|
|
3
|
-
/**
|
|
4
|
-
* @tsplus type StoreMaker
|
|
5
|
-
* @tsplus companion StoreMaker.Ops
|
|
6
|
-
*/
|
|
7
|
-
export class StoreMaker extends tsplus_module_1.TagClass() {
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* @tsplus static ContextMap.Ops Make
|
|
11
|
-
*/
|
|
12
|
-
export const makeMap = tsplus_module_2.sync(() => {
|
|
13
|
-
const etags = new Map();
|
|
14
|
-
const getEtag = (id) => etags.get(id);
|
|
15
|
-
const setEtag = (id, eTag) => {
|
|
16
|
-
eTag === undefined ? etags.delete(id) : etags.set(id, eTag);
|
|
17
|
-
};
|
|
18
|
-
const parsedCache = new Map();
|
|
19
|
-
const parserCache = new Map();
|
|
20
|
-
const setAndReturn = (p, np) => {
|
|
21
|
-
parserCache.set(p, np);
|
|
22
|
-
return np;
|
|
23
|
-
};
|
|
24
|
-
const parserEnv = {
|
|
25
|
-
// TODO: lax: true would turn off refinement checks, may help on large payloads
|
|
26
|
-
// but of course removes confirming of validation rules (which may be okay for a database owned by the app, as we write safely)
|
|
27
|
-
lax: false,
|
|
28
|
-
cache: {
|
|
29
|
-
getOrSetParser: (p) => parserCache.get(p) ?? setAndReturn(p, (i) => parserEnv.cache.getOrSet(i, p)),
|
|
30
|
-
getOrSetParsers: (parsers) => {
|
|
31
|
-
return Object.entries(parsers).reduce((prev, [k, v]) => {
|
|
32
|
-
prev[k] = parserEnv.cache.getOrSetParser(v);
|
|
33
|
-
return prev;
|
|
34
|
-
}, {});
|
|
35
|
-
},
|
|
36
|
-
getOrSet: (i, parse) => {
|
|
37
|
-
const c = parsedCache.get(parse);
|
|
38
|
-
if (c) {
|
|
39
|
-
const f = c.get(i);
|
|
40
|
-
if (f) {
|
|
41
|
-
// console.log("$$$ cache hit", i)
|
|
42
|
-
return f;
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
const nf = parse(i, parserEnv);
|
|
46
|
-
c.set(i, nf);
|
|
47
|
-
return nf;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
const nf = parse(i, parserEnv);
|
|
52
|
-
parsedCache.set(parse, new Map([[i, nf]]));
|
|
53
|
-
return nf;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
return {
|
|
59
|
-
get: getEtag,
|
|
60
|
-
set: setEtag,
|
|
61
|
-
parserEnv
|
|
62
|
-
};
|
|
63
|
-
});
|
|
64
|
-
/**
|
|
65
|
-
* @tsplus type ContextMap
|
|
66
|
-
* @tsplus companion ContextMap.Ops
|
|
67
|
-
*/
|
|
68
|
-
export class ContextMap extends tsplus_module_1.TagClass() {
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQW1GQTs7O0dBR0c7QUFDSCxNQUFNLE9BQWdCLFVBQVcsU0FBUSxnQkFBQSxRQUFRLEVBQWM7Q0FNOUQ7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxxQkFBWSxHQUFlLEVBQUU7SUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUE7SUFDdkMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDN0MsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFVLEVBQUUsSUFBd0IsRUFBRSxFQUFFO1FBQ3ZELElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQzdELENBQUMsQ0FBQTtJQUVELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxFQUd4QixDQUFBO0lBRUgsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLEVBR3hCLENBQUE7SUFFSCxNQUFNLFlBQVksR0FBRyxDQUNuQixDQUFrQixFQUNsQixFQUErQixFQUMvQixFQUFFO1FBQ0YsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDdEIsT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDLENBQUE7SUFFRCxNQUFNLFNBQVMsR0FBYztRQUMzQiwrRUFBK0U7UUFDL0UsK0hBQStIO1FBQy9ILEdBQUcsRUFBRSxLQUFLO1FBQ1YsS0FBSyxFQUFFO1lBQ0wsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRyxlQUFlLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDM0IsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUNyRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLEtBQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUE7b0JBQzVDLE9BQU8sSUFBSSxDQUFBO2dCQUNiLENBQUMsRUFBRSxFQUFTLENBQUMsQ0FBQTtZQUNmLENBQUM7WUFDRCxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFPLEVBQUU7Z0JBQzFCLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ2hDLElBQUksQ0FBQyxFQUFFO29CQUNMLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7b0JBQ2xCLElBQUksQ0FBQyxFQUFFO3dCQUNMLGtDQUFrQzt3QkFDbEMsT0FBTyxDQUFDLENBQUE7cUJBQ1Q7eUJBQU07d0JBQ0wsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQTt3QkFDOUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7d0JBQ1osT0FBTyxFQUFFLENBQUE7cUJBQ1Y7aUJBQ0Y7cUJBQU07b0JBQ0wsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQTtvQkFDOUIsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtvQkFDMUMsT0FBTyxFQUFFLENBQUE7aUJBQ1Y7WUFDSCxDQUFDO1NBQ0Y7S0FDRixDQUFBO0lBRUQsT0FBTztRQUNMLEdBQUcsRUFBRSxPQUFPO1FBQ1osR0FBRyxFQUFFLE9BQU87UUFDWixTQUFTO0tBQ1YsQ0FBQTtBQUNILENBQUMsQ0FBQyxDQUFBO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxPQUFnQixVQUFXLFNBQVEsZ0JBQUEsUUFBUSxFQUFjO0NBSTlEIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHR5cGUgeyBVbmlxdWVLZXkgfSBmcm9tIFwiQGF6dXJlL2Nvc21vc1wiXG5pbXBvcnQgdHlwZSB7IFBhcnNlciwgUGFyc2VyRW52IH0gZnJvbSBcIkBlZmZlY3QtYXBwL3NjaGVtYS9jdXN0b20vUGFyc2VyXCJcblxuaW1wb3J0IHR5cGUgeyBUaGVzZSB9IGZyb20gXCJAZWZmZWN0LWFwcC9wcmVsdWRlL3NjaGVtYVwiXG5pbXBvcnQgdHlwZSB7IE9wdGltaXN0aWNDb25jdXJyZW5jeUV4Y2VwdGlvbiB9IGZyb20gXCIuLi8uLi9lcnJvcnMuanNcIlxuXG5leHBvcnQgdHlwZSBTdG9yZUNvbmZpZzxFPiA9IHtcbiAgdW5pcXVlS2V5cz86IFVuaXF1ZUtleVtdXG4gIG1heEJ1bGtTaXplPzogbnVtYmVyXG4gIHBhcnRpdGlvblZhbHVlOiAoZTogRSkgPT4gc3RyaW5nIHwgdW5kZWZpbmVkXG4gIGFsbG93TmFtZXNwYWNlPzogKG5hbWVzcGFjZTogc3RyaW5nKSA9PiBib29sZWFuXG59XG5cbmV4cG9ydCB0eXBlIFN1cHBvcnRlZFZhbHVlcyA9IHN0cmluZyB8IGJvb2xlYW4gfCBudW1iZXIgfCBudWxsXG5leHBvcnQgdHlwZSBTdXBwb3J0ZWRWYWx1ZXMyID0gc3RyaW5nIHwgYm9vbGVhbiB8IG51bWJlclxuXG4vLyBkZWZhdWx0IGlzIGVxXG5leHBvcnQgdHlwZSBXaGVyZSA9XG4gIHwgeyBrZXk6IHN0cmluZzsgdD86IFwiZXFcIiB8IFwibm90LWVxXCI7IHZhbHVlOiBTdXBwb3J0ZWRWYWx1ZXMgfVxuICB8IHsga2V5OiBzdHJpbmc7IHQ6IFwiZ3RcIiB8IFwibHRcIiB8IFwiZ3RlXCIgfCBcImx0ZVwiOyB2YWx1ZTogU3VwcG9ydGVkVmFsdWVzMiB9XG4gIHwgeyBrZXk6IHN0cmluZzsgdDogXCJjb250YWluc1wiIHwgXCJzdGFydHMtd2l0aFwiIHwgXCJlbmRzLXdpdGhcIjsgdmFsdWU6IHN0cmluZyB9XG4gIHwgeyBrZXk6IHN0cmluZzsgdDogXCJpbmNsdWRlc1wiIHwgXCJub3QtaW5jbHVkZXNcIjsgdmFsdWU6IHN0cmluZyB9XG4gIHwge1xuICAgIGtleTogc3RyaW5nXG4gICAgdDogXCJpblwiIHwgXCJub3QtaW5cIlxuICAgIHZhbHVlOiByZWFkb25seSAoU3VwcG9ydGVkVmFsdWVzKVtdXG4gIH1cblxuLy8gZGVmYXVsdCBpcyB3aGVyZVxuZXhwb3J0IHR5cGUgU3RvcmVXaGVyZUZpbHRlciA9IHtcbiAgdHlwZT86IFwid2hlcmVcIlxuICBtb2RlPzogXCJhbmRcIiB8IFwib3JcIiAvLyBkZWZhdWx0IGlzIGFuZFxuICB3aGVyZTogcmVhZG9ubHkgW1xuICAgIFdoZXJlLFxuICAgIC4uLihXaGVyZVtdKVxuICBdXG59XG5leHBvcnQgdHlwZSBMZWdhY3lGaWx0ZXI8RT4gPVxuICB8IHsgYnk6IGtleW9mIEU7IHR5cGU6IFwic3RhcnRzV2l0aFwiOyB2YWx1ZTogYW55IH1cbiAgfCB7IGJ5OiBrZXlvZiBFOyB0eXBlOiBcImVuZHNXaXRoXCI7IHZhbHVlOiBhbnkgfVxuICB8IHsgYnk6IGtleW9mIEU7IHR5cGU6IFwiY29udGFpbnNcIjsgdmFsdWU6IGFueSB9XG5leHBvcnQgdHlwZSBKb2luRmluZEZpbHRlciA9IHtcbiAgdHlwZTogXCJqb2luX2ZpbmRcIlxuICBrZXlzOiByZWFkb25seSBzdHJpbmdbXSAvKiB2YWx1ZSBwYXRocyBvZiBFICovXG4gIHZhbHVlS2V5OiBzdHJpbmcgLyogdmFsdWUgcGF0aHMgb2YgRVtrZXlzXVt2YWx1ZUtleV0gKi9cbiAgdmFsdWU6IGFueSAvKiB2YWx1ZSBwYXRoW3ZhbHVlS2V5XSBvZiBFICovXG59XG5leHBvcnQgdHlwZSBGaWx0ZXI8RT4gPVxuICB8IEpvaW5GaW5kRmlsdGVyXG4gIHwgU3RvcmVXaGVyZUZpbHRlclxuICB8IExlZ2FjeUZpbHRlcjxFPlxuXG5leHBvcnQgdHlwZSBGaWx0ZXJKb2luU2VsZWN0ID0ge1xuICB0eXBlOiBcImZpbHRlcl9qb2luX3NlbGVjdFwiXG4gIGtleXM6IHJlYWRvbmx5IHN0cmluZ1tdIC8qIHZhbHVlIHBhdGhzIG9mIEUgKi9cbiAgdmFsdWVLZXk6IHN0cmluZyAvKiB2YWx1ZSBwYXRocyBvZiBFW2tleXNdW3ZhbHVlS2V5XSAqL1xuICB2YWx1ZTogYW55IC8qIHZhbHVlIHBhdGhbdmFsdWVLZXldIG9mIEUgKi9cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdG9yZTxQTSBleHRlbmRzIFBlcnNpc3RlbmNlTW9kZWxUeXBlPElkPiwgSWQgZXh0ZW5kcyBzdHJpbmc+IHtcbiAgYWxsOiBFZmZlY3Q8bmV2ZXIsIG5ldmVyLCBQTVtdPlxuICBmaWx0ZXI6IChcbiAgICBmaWx0ZXI6IEZpbHRlcjxQTT4sXG4gICAgY3Vyc29yPzogeyBsaW1pdD86IG51bWJlcjsgc2tpcD86IG51bWJlciB9XG4gICkgPT4gRWZmZWN0PG5ldmVyLCBuZXZlciwgUE1bXT5cbiAgZmlsdGVySm9pblNlbGVjdDogPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIGZpbHRlcjogRmlsdGVySm9pblNlbGVjdFxuICApID0+IEVmZmVjdDxuZXZlciwgbmV2ZXIsIChUICYgeyBfcm9vdElkOiBzdHJpbmcgfSlbXT5cbiAgZmluZDogKGlkOiBJZCkgPT4gRWZmZWN0PG5ldmVyLCBuZXZlciwgT3B0aW9uPFBNPj5cbiAgc2V0OiAoZTogUE0pID0+IEVmZmVjdDxuZXZlciwgT3B0aW1pc3RpY0NvbmN1cnJlbmN5RXhjZXB0aW9uLCBQTT5cbiAgYmF0Y2hTZXQ6IChcbiAgICBpdGVtczogTm9uRW1wdHlSZWFkb25seUFycmF5PFBNPlxuICApID0+IEVmZmVjdDxuZXZlciwgT3B0aW1pc3RpY0NvbmN1cnJlbmN5RXhjZXB0aW9uLCBOb25FbXB0eVJlYWRvbmx5QXJyYXk8UE0+PlxuICBidWxrU2V0OiAoXG4gICAgaXRlbXM6IE5vbkVtcHR5UmVhZG9ubHlBcnJheTxQTT5cbiAgKSA9PiBFZmZlY3Q8bmV2ZXIsIE9wdGltaXN0aWNDb25jdXJyZW5jeUV4Y2VwdGlvbiwgTm9uRW1wdHlSZWFkb25seUFycmF5PFBNPj5cbiAgLyoqXG4gICAqIFJlcXVpcmVzIHRoZSBQTSB0eXBlLCBub3QgSWQsIGJlY2F1c2UgdmFyaW91cyBzdG9yZXMgbWF5IG5lZWQgdG8gY2FsY3VsYXRlIGUuZyBwYXJ0aXRpb24ga2V5cy5cbiAgICovXG4gIHJlbW92ZTogKGU6IFBNKSA9PiBFZmZlY3Q8bmV2ZXIsIG5ldmVyLCB2b2lkPlxufVxuXG4vKipcbiAqIEB0c3BsdXMgdHlwZSBTdG9yZU1ha2VyXG4gKiBAdHNwbHVzIGNvbXBhbmlvbiBTdG9yZU1ha2VyLk9wc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU3RvcmVNYWtlciBleHRlbmRzIFRhZ0NsYXNzPFN0b3JlTWFrZXI+KCkge1xuICBhYnN0cmFjdCBtYWtlOiA8UE0gZXh0ZW5kcyBQZXJzaXN0ZW5jZU1vZGVsVHlwZTxJZD4sIElkIGV4dGVuZHMgc3RyaW5nPihcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgc2VlZD86IEVmZmVjdDxuZXZlciwgbmV2ZXIsIEl0ZXJhYmxlPFBNPj4sXG4gICAgY29uZmlnPzogU3RvcmVDb25maWc8UE0+XG4gICkgPT4gRWZmZWN0PG5ldmVyLCBuZXZlciwgU3RvcmU8UE0sIElkPj5cbn1cblxuLyoqXG4gKiBAdHNwbHVzIHN0YXRpYyBDb250ZXh0TWFwLk9wcyBNYWtlXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlTWFwID0gRWZmZWN0LnN5bmMoKCk6IENvbnRleHRNYXAgPT4ge1xuICBjb25zdCBldGFncyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KClcbiAgY29uc3QgZ2V0RXRhZyA9IChpZDogc3RyaW5nKSA9PiBldGFncy5nZXQoaWQpXG4gIGNvbnN0IHNldEV0YWcgPSAoaWQ6IHN0cmluZywgZVRhZzogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgZVRhZyA9PT0gdW5kZWZpbmVkID8gZXRhZ3MuZGVsZXRlKGlkKSA6IGV0YWdzLnNldChpZCwgZVRhZylcbiAgfVxuXG4gIGNvbnN0IHBhcnNlZENhY2hlID0gbmV3IE1hcDxcbiAgICBQYXJzZXI8YW55LCBhbnksIGFueT4sXG4gICAgTWFwPHVua25vd24sIFRoZXNlLlRoZXNlPHVua25vd24sIHVua25vd24+PlxuICA+KClcblxuICBjb25zdCBwYXJzZXJDYWNoZSA9IG5ldyBNYXA8XG4gICAgUGFyc2VyPGFueSwgYW55LCBhbnk+LFxuICAgIChpOiBhbnkpID0+IFRoZXNlLlRoZXNlPGFueSwgYW55PlxuICA+KClcblxuICBjb25zdCBzZXRBbmRSZXR1cm4gPSA8SSwgRSwgQT4oXG4gICAgcDogUGFyc2VyPEksIEUsIEE+LFxuICAgIG5wOiAoaTogSSkgPT4gVGhlc2UuVGhlc2U8RSwgQT5cbiAgKSA9PiB7XG4gICAgcGFyc2VyQ2FjaGUuc2V0KHAsIG5wKVxuICAgIHJldHVybiBucFxuICB9XG5cbiAgY29uc3QgcGFyc2VyRW52OiBQYXJzZXJFbnYgPSB7XG4gICAgLy8gVE9ETzogbGF4OiB0cnVlIHdvdWxkIHR1cm4gb2ZmIHJlZmluZW1lbnQgY2hlY2tzLCBtYXkgaGVscCBvbiBsYXJnZSBwYXlsb2Fkc1xuICAgIC8vIGJ1dCBvZiBjb3Vyc2UgcmVtb3ZlcyBjb25maXJtaW5nIG9mIHZhbGlkYXRpb24gcnVsZXMgKHdoaWNoIG1heSBiZSBva2F5IGZvciBhIGRhdGFiYXNlIG93bmVkIGJ5IHRoZSBhcHAsIGFzIHdlIHdyaXRlIHNhZmVseSlcbiAgICBsYXg6IGZhbHNlLFxuICAgIGNhY2hlOiB7XG4gICAgICBnZXRPclNldFBhcnNlcjogKHApID0+IHBhcnNlckNhY2hlLmdldChwKSA/PyBzZXRBbmRSZXR1cm4ocCwgKGkpID0+IHBhcnNlckVudi5jYWNoZSEuZ2V0T3JTZXQoaSwgcCkpLFxuICAgICAgZ2V0T3JTZXRQYXJzZXJzOiAocGFyc2VycykgPT4ge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMocGFyc2VycykucmVkdWNlKChwcmV2LCBbaywgdl0pID0+IHtcbiAgICAgICAgICBwcmV2W2tdID0gcGFyc2VyRW52LmNhY2hlIS5nZXRPclNldFBhcnNlcih2KVxuICAgICAgICAgIHJldHVybiBwcmV2XG4gICAgICAgIH0sIHt9IGFzIGFueSlcbiAgICAgIH0sXG4gICAgICBnZXRPclNldDogKGksIHBhcnNlKTogYW55ID0+IHtcbiAgICAgICAgY29uc3QgYyA9IHBhcnNlZENhY2hlLmdldChwYXJzZSlcbiAgICAgICAgaWYgKGMpIHtcbiAgICAgICAgICBjb25zdCBmID0gYy5nZXQoaSlcbiAgICAgICAgICBpZiAoZikge1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCIkJCQgY2FjaGUgaGl0XCIsIGkpXG4gICAgICAgICAgICByZXR1cm4gZlxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBuZiA9IHBhcnNlKGksIHBhcnNlckVudilcbiAgICAgICAgICAgIGMuc2V0KGksIG5mKVxuICAgICAgICAgICAgcmV0dXJuIG5mXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IG5mID0gcGFyc2UoaSwgcGFyc2VyRW52KVxuICAgICAgICAgIHBhcnNlZENhY2hlLnNldChwYXJzZSwgbmV3IE1hcChbW2ksIG5mXV0pKVxuICAgICAgICAgIHJldHVybiBuZlxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBnZXQ6IGdldEV0YWcsXG4gICAgc2V0OiBzZXRFdGFnLFxuICAgIHBhcnNlckVudlxuICB9XG59KVxuXG4vKipcbiAqIEB0c3BsdXMgdHlwZSBDb250ZXh0TWFwXG4gKiBAdHNwbHVzIGNvbXBhbmlvbiBDb250ZXh0TWFwLk9wc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29udGV4dE1hcCBleHRlbmRzIFRhZ0NsYXNzPENvbnRleHRNYXA+KCkge1xuICBhYnN0cmFjdCBnZXQ6IChpZDogc3RyaW5nKSA9PiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgYWJzdHJhY3Qgc2V0OiAoaWQ6IHN0cmluZywgZVRhZzogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiB2b2lkXG4gIGFic3RyYWN0IHBhcnNlckVudjogUGFyc2VyRW52XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVyc2lzdGVuY2VNb2RlbFR5cGU8SWQgZXh0ZW5kcyBzdHJpbmc+IHtcbiAgaWQ6IElkXG4gIF9ldGFnOiBzdHJpbmcgfCB1bmRlZmluZWRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdG9yYWdlQ29uZmlnIHtcbiAgdXJsOiBDb25maWdTZWNyZXRcbiAgcHJlZml4OiBzdHJpbmdcbiAgZGJOYW1lOiBzdHJpbmdcbn1cbiJdfQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
6c73d6a53dba8e2732209764f5233c88f81e895dc2e244202cf05253b7fe38f0
|
package/.cache/effect/72a5a16a6b62b63cd71719c833091128207d7e6c823cb32293549b3dd58c451b.content
DELETED
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@effect-app/prelude/_ext/misc";
|
|
2
|
-
import * as tsplus_module_2 from "@effect/data/Option";
|
|
3
|
-
import * as tsplus_module_3 from "@effect/io/Effect";
|
|
4
|
-
import * as tsplus_module_4 from "@effect-app/core/Option";
|
|
5
|
-
import * as tsplus_module_5 from "@effect/data/ReadonlyArray";
|
|
6
|
-
import { get } from "@effect-app/prelude/utils";
|
|
7
|
-
import { OptimisticConcurrencyException } from "../../errors.js";
|
|
8
|
-
import objectHash from "object-hash";
|
|
9
|
-
export const makeETag = ({ _etag, ...e }) => ({
|
|
10
|
-
...e,
|
|
11
|
-
_etag: objectHash(e)
|
|
12
|
-
});
|
|
13
|
-
export const makeUpdateETag = (name) => (e, current) => tsplus_module_3.gen(function* ($) {
|
|
14
|
-
if (e._etag) {
|
|
15
|
-
yield* $(tsplus_module_1.encaseMaybeInEffect_(current, () => new OptimisticConcurrencyException(name, e.id, "", e._etag)));
|
|
16
|
-
}
|
|
17
|
-
if (tsplus_module_2.isSome(current) && current.value._etag !== e._etag) {
|
|
18
|
-
return yield* $(tsplus_module_3.fail(new OptimisticConcurrencyException(name, current.value.id, current.value._etag, e._etag)));
|
|
19
|
-
}
|
|
20
|
-
const newE = makeETag(e);
|
|
21
|
-
return newE;
|
|
22
|
-
});
|
|
23
|
-
export function codeFilter(filter) {
|
|
24
|
-
return (x) => filter.type === "startsWith"
|
|
25
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
26
|
-
? lowercaseIfString(x[filter.by]).startsWith(filter.value.toLowerCase())
|
|
27
|
-
? tsplus_module_2.some(x)
|
|
28
|
-
: tsplus_module_4.none
|
|
29
|
-
: filter.type === "endsWith"
|
|
30
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
31
|
-
? lowercaseIfString(x[filter.by]).endsWith(filter.value.toLowerCase())
|
|
32
|
-
? tsplus_module_2.some(x)
|
|
33
|
-
: tsplus_module_4.none
|
|
34
|
-
: filter.type === "contains"
|
|
35
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
36
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
|
37
|
-
? lowercaseIfString(x[filter.by]).includes(filter.value.toLowerCase())
|
|
38
|
-
? tsplus_module_2.some(x)
|
|
39
|
-
: tsplus_module_4.none
|
|
40
|
-
: filter.type === "join_find"
|
|
41
|
-
? filter.keys.some((k) => {
|
|
42
|
-
const value = get(x, k);
|
|
43
|
-
// we mimic the behavior of cosmosdb; if the shape in db does not match what we're looking for, we imagine false hit
|
|
44
|
-
return (value
|
|
45
|
-
&& value.some((v) => compareCaseInsensitive(v[filter.valueKey], filter.value)));
|
|
46
|
-
})
|
|
47
|
-
? tsplus_module_2.some(x)
|
|
48
|
-
: tsplus_module_4.none
|
|
49
|
-
// TODO: support mixed or/and
|
|
50
|
-
: filter.mode === "or"
|
|
51
|
-
? filter
|
|
52
|
-
.where
|
|
53
|
-
.some((p) => {
|
|
54
|
-
const k = get(x, p.key);
|
|
55
|
-
switch (p.t) {
|
|
56
|
-
case "in":
|
|
57
|
-
return p.value.includes(k);
|
|
58
|
-
case "not-in":
|
|
59
|
-
return !p.value.includes(k);
|
|
60
|
-
case "lt":
|
|
61
|
-
return ltCaseInsensitive(k, p.value);
|
|
62
|
-
case "lte":
|
|
63
|
-
return lteCaseInsensitive(k, p.value);
|
|
64
|
-
case "gt":
|
|
65
|
-
return gtCaseInsensitive(k, p.value);
|
|
66
|
-
case "gte":
|
|
67
|
-
return gteCaseInsensitive(k, p.value);
|
|
68
|
-
case "includes":
|
|
69
|
-
return k.includes(p.value);
|
|
70
|
-
case "not-includes":
|
|
71
|
-
return !k.includes(p.value);
|
|
72
|
-
case "contains":
|
|
73
|
-
return k.toLowerCase().includes((p.value).toLowerCase());
|
|
74
|
-
case "ends-with":
|
|
75
|
-
return k.toLowerCase().endsWith((p.value).toLowerCase());
|
|
76
|
-
case "starts-with":
|
|
77
|
-
return k.toLowerCase().startsWith((p.value).toLowerCase());
|
|
78
|
-
case "not-eq":
|
|
79
|
-
return !compareCaseInsensitive(k, p.value);
|
|
80
|
-
case "eq":
|
|
81
|
-
case undefined:
|
|
82
|
-
return compareCaseInsensitive(k, p.value);
|
|
83
|
-
}
|
|
84
|
-
})
|
|
85
|
-
? tsplus_module_2.some(x)
|
|
86
|
-
: tsplus_module_4.none
|
|
87
|
-
: filter
|
|
88
|
-
.where
|
|
89
|
-
.every((p) => {
|
|
90
|
-
const k = get(x, p.key);
|
|
91
|
-
switch (p.t) {
|
|
92
|
-
case "in":
|
|
93
|
-
return p.value.includes(k);
|
|
94
|
-
case "not-in":
|
|
95
|
-
return !p.value.includes(k);
|
|
96
|
-
case "lt":
|
|
97
|
-
return ltCaseInsensitive(k, p.value);
|
|
98
|
-
case "lte":
|
|
99
|
-
return lteCaseInsensitive(k, p.value);
|
|
100
|
-
case "gt":
|
|
101
|
-
return gtCaseInsensitive(k, p.value);
|
|
102
|
-
case "gte":
|
|
103
|
-
return gteCaseInsensitive(k, p.value);
|
|
104
|
-
case "includes":
|
|
105
|
-
return k.includes(p.value);
|
|
106
|
-
case "not-includes":
|
|
107
|
-
return !k.includes(p.value);
|
|
108
|
-
case "contains":
|
|
109
|
-
return k.toLowerCase().includes((p.value).toLowerCase());
|
|
110
|
-
case "ends-with":
|
|
111
|
-
return k.toLowerCase().endsWith((p.value).toLowerCase());
|
|
112
|
-
case "starts-with":
|
|
113
|
-
return k.toLowerCase().startsWith((p.value).toLowerCase());
|
|
114
|
-
case "not-eq":
|
|
115
|
-
return p.key.includes(".-1.")
|
|
116
|
-
? get(x, p.key.split(".-1.")[0])
|
|
117
|
-
// TODO: or vs and
|
|
118
|
-
.every((_) => !compareCaseInsensitive(get(_, p.key.split(".-1.")[1]), p.value))
|
|
119
|
-
: !compareCaseInsensitive(k, p.value);
|
|
120
|
-
case "eq":
|
|
121
|
-
case undefined:
|
|
122
|
-
return p.key.includes(".-1.")
|
|
123
|
-
? get(x, p.key.split(".-1.")[0])
|
|
124
|
-
// TODO: or vs and
|
|
125
|
-
.some((_) => compareCaseInsensitive(get(_, p.key.split(".-1.")[1]), p.value))
|
|
126
|
-
: compareCaseInsensitive(k, p.value);
|
|
127
|
-
}
|
|
128
|
-
})
|
|
129
|
-
? tsplus_module_2.some(x)
|
|
130
|
-
: tsplus_module_4.none;
|
|
131
|
-
}
|
|
132
|
-
export function codeFilterJoinSelect(filter) {
|
|
133
|
-
return (x) => tsplus_module_5.filterMap(filter
|
|
134
|
-
.keys, (k) => {
|
|
135
|
-
const value = get(x, k);
|
|
136
|
-
// we mimic the behavior of cosmosdb; if the shape in db does not match what we're looking for, we imagine false hit
|
|
137
|
-
return value
|
|
138
|
-
? tsplus_module_2.some(tsplus_module_5.filterMap(value, (v) =>
|
|
139
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
140
|
-
compareCaseInsensitive(v[filter.valueKey], filter.value)
|
|
141
|
-
? tsplus_module_2.some({ ...v, _rootId: x.id })
|
|
142
|
-
: tsplus_module_4.none))
|
|
143
|
-
: tsplus_module_4.none;
|
|
144
|
-
})
|
|
145
|
-
.flatMap((_) => _);
|
|
146
|
-
}
|
|
147
|
-
function lowercaseIfString(val) {
|
|
148
|
-
if (typeof val === "string") {
|
|
149
|
-
return val.toLowerCase();
|
|
150
|
-
}
|
|
151
|
-
return val;
|
|
152
|
-
}
|
|
153
|
-
function compareCaseInsensitive(valA, valB) {
|
|
154
|
-
return typeof valB === "string" && typeof valA === "string"
|
|
155
|
-
? valA.toLowerCase() === valB.toLowerCase()
|
|
156
|
-
: valA === valB;
|
|
157
|
-
}
|
|
158
|
-
function ltCaseInsensitive(valA, valB) {
|
|
159
|
-
return typeof valB === "string" && typeof valA === "string"
|
|
160
|
-
? valA.toLowerCase() < valB.toLowerCase()
|
|
161
|
-
: valA < valB;
|
|
162
|
-
}
|
|
163
|
-
function lteCaseInsensitive(valA, valB) {
|
|
164
|
-
return typeof valB === "string" && typeof valA === "string"
|
|
165
|
-
? valA.toLowerCase() <= valB.toLowerCase()
|
|
166
|
-
: valA <= valB;
|
|
167
|
-
}
|
|
168
|
-
function gtCaseInsensitive(valA, valB) {
|
|
169
|
-
return typeof valB === "string" && typeof valA === "string"
|
|
170
|
-
? valA.toLowerCase() > valB.toLowerCase()
|
|
171
|
-
: valA > valB;
|
|
172
|
-
}
|
|
173
|
-
function gteCaseInsensitive(valA, valB) {
|
|
174
|
-
return typeof valB === "string" && typeof valA === "string"
|
|
175
|
-
? valA.toLowerCase() >= valB.toLowerCase()
|
|
176
|
-
: valA >= valB;
|
|
177
|
-
}
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL1N0b3JlL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBRS9DLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBSWhFLE9BQU8sVUFBVSxNQUFNLGFBQWEsQ0FBQTtBQUVwQyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FDdEIsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUssRUFDZixFQUFFLENBQ0wsQ0FBQztJQUNDLEdBQUcsQ0FBQztJQUNKLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO0NBQ3JCLENBQVEsQ0FBQTtBQUNYLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FDekIsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLENBQXdELENBQUksRUFBRSxPQUFrQixFQUFFLEVBQUUsQ0FDcEcsb0JBQVcsUUFBUSxDQUFDLEVBQUMsQ0FBQztJQUNwQixJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUU7UUFDWCxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ04scUNBQUEsT0FBTyxFQUNXLEdBQUcsRUFBRSxDQUFDLElBQUksOEJBQThCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNyRixDQUFBO0tBQ0Y7SUFDRCxJQUFJLHVCQUFBLE9BQU8sQ0FBUyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUU7UUFDdkQsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ2IscUJBQVksSUFBSSw4QkFBOEIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLEtB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QUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFDekQsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQzFDLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFBO0FBQ2xCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXQgfSBmcm9tIFwiQGVmZmVjdC1hcHAvcHJlbHVkZS91dGlsc1wiXG5cbmltcG9ydCB7IE9wdGltaXN0aWNDb25jdXJyZW5jeUV4Y2VwdGlvbiB9IGZyb20gXCIuLi8uLi9lcnJvcnMuanNcIlxuXG5pbXBvcnQgdHlwZSB7IEZpbHRlciwgRmlsdGVySm9pblNlbGVjdCwgUGVyc2lzdGVuY2VNb2RlbFR5cGUsIFN1cHBvcnRlZFZhbHVlczIgfSBmcm9tIFwiLi9zZXJ2aWNlLmpzXCJcblxuaW1wb3J0IG9iamVjdEhhc2ggZnJvbSBcIm9iamVjdC1oYXNoXCJcblxuZXhwb3J0IGNvbnN0IG1ha2VFVGFnID0gPEUgZXh0ZW5kcyBQZXJzaXN0ZW5jZU1vZGVsVHlwZTxJZD4sIElkIGV4dGVuZHMgc3RyaW5nPihcbiAgeyBfZXRhZywgLi4uZSB9OiBFXG4pOiBFID0+XG4gICh7XG4gICAgLi4uZSxcbiAgICBfZXRhZzogb2JqZWN0SGFzaChlKVxuICB9KSBhcyBhbnlcbmV4cG9ydCBjb25zdCBtYWtlVXBkYXRlRVRhZyA9XG4gIChuYW1lOiBzdHJpbmcpID0+IDxFIGV4dGVuZHMgUGVyc2lzdGVuY2VNb2RlbFR5cGU8SWQ+LCBJZCBleHRlbmRzIHN0cmluZz4oZTogRSwgY3VycmVudDogT3B0aW9uPEU+KSA9PlxuICAgIEVmZmVjdC5nZW4oZnVuY3Rpb24qKCQpIHtcbiAgICAgIGlmIChlLl9ldGFnKSB7XG4gICAgICAgIHlpZWxkKiAkKFxuICAgICAgICAgIGN1cnJlbnRcbiAgICAgICAgICAgIC5lbmNhc2VJbkVmZmVjdCgoKSA9PiBuZXcgT3B0aW1pc3RpY0NvbmN1cnJlbmN5RXhjZXB0aW9uKG5hbWUsIGUuaWQsIFwiXCIsIGUuX2V0YWcpKVxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAoY3VycmVudC5pc1NvbWUoKSAmJiBjdXJyZW50LnZhbHVlLl9ldGFnICE9PSBlLl9ldGFnKSB7XG4gICAgICAgIHJldHVybiB5aWVsZCogJChcbiAgICAgICAgICBFZmZlY3QuZmFpbChuZXcgT3B0aW1pc3RpY0NvbmN1cnJlbmN5RXhjZXB0aW9uKG5hbWUsIGN1cnJlbnQudmFsdWUuaWQsIGN1cnJlbnQudmFsdWUuX2V0YWcsIGUuX2V0YWcpKVxuICAgICAgICApXG4gICAgICB9XG4gICAgICBjb25zdCBuZXdFID0gbWFrZUVUYWcoZSlcbiAgICAgIHJldHVybiBuZXdFXG4gICAgfSlcblxuZXhwb3J0IGZ1bmN0aW9uIGNvZGVGaWx0ZXI8RSBleHRlbmRzIHsgaWQ6IHN0cmluZyB9LCBORSBleHRlbmRzIEU+KGZpbHRlcjogRmlsdGVyPE5FPikge1xuICByZXR1cm4gKHg6IEUpID0+XG4gICAgZmlsdGVyLnR5cGUgPT09IFwic3RhcnRzV2l0aFwiXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgPyBsb3dlcmNhc2VJZlN0cmluZygoeCBhcyBhbnkpW2ZpbHRlci5ieV0pLnN0YXJ0c1dpdGgoZmlsdGVyLnZhbHVlLnRvTG93ZXJDYXNlKCkpXG4gICAgICAgID8gT3B0aW9uKHggYXMgdW5rbm93biBhcyBORSlcbiAgICAgICAgOiBPcHRpb24ubm9uZVxuICAgICAgOiBmaWx0ZXIudHlwZSA9PT0gXCJlbmRzV2l0aFwiXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgPyBsb3dlcmNhc2VJZlN0cmluZygoeCBhcyBhbnkpW2ZpbHRlci5ieV0pLmVuZHNXaXRoKGZpbHRlci52YWx1ZS50b0xvd2VyQ2FzZSgpKVxuICAgICAgICA/IE9wdGlvbih4IGFzIHVua25vd24gYXMgTkUpXG4gICAgICAgIDogT3B0aW9uLm5vbmVcbiAgICAgIDogZmlsdGVyLnR5cGUgPT09IFwiY29udGFpbnNcIlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLWNhbGxcbiAgICAgID8gbG93ZXJjYXNlSWZTdHJpbmcoKHggYXMgYW55KVtmaWx0ZXIuYnldKS5pbmNsdWRlcyhmaWx0ZXIudmFsdWUudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgPyBPcHRpb24oeCBhcyB1bmtub3duIGFzIE5FKVxuICAgICAgICA6IE9wdGlvbi5ub25lXG4gICAgICA6IGZpbHRlci50eXBlID09PSBcImpvaW5fZmluZFwiXG4gICAgICA/IGZpbHRlci5rZXlzLnNvbWUoKGspID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGdldCh4LCBrKSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdXG4gICAgICAgICAgLy8gd2UgbWltaWMgdGhlIGJlaGF2aW9yIG9mIGNvc21vc2RiOyBpZiB0aGUgc2hhcGUgaW4gZGIgZG9lcyBub3QgbWF0Y2ggd2hhdCB3ZSdyZSBsb29raW5nIGZvciwgd2UgaW1hZ2luZSBmYWxzZSBoaXRcbiAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICYmIHZhbHVlLnNvbWUoKHYpID0+IGNvbXBhcmVDYXNlSW5zZW5zaXRpdmUodltmaWx0ZXIudmFsdWVLZXldLCBmaWx0ZXIudmFsdWUpKVxuICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgPyBPcHRpb24oeCBhcyB1bmtub3duIGFzIE5FKVxuICAgICAgICA6IE9wdGlvbi5ub25lXG4gICAgICAvLyBUT0RPOiBzdXBwb3J0IG1peGVkIG9yL2FuZFxuICAgICAgOiBmaWx0ZXIubW9kZSA9PT0gXCJvclwiXG4gICAgICA/IGZpbHRlclxuICAgICAgICAgIC53aGVyZVxuICAgICAgICAgIC5zb21lKChwKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBrID0gZ2V0KHgsIHAua2V5KVxuICAgICAgICAgICAgc3dpdGNoIChwLnQpIHtcbiAgICAgICAgICAgICAgY2FzZSBcImluXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHAudmFsdWUuaW5jbHVkZXMoaylcbiAgICAgICAgICAgICAgY2FzZSBcIm5vdC1pblwiOlxuICAgICAgICAgICAgICAgIHJldHVybiAhcC52YWx1ZS5pbmNsdWRlcyhrKVxuICAgICAgICAgICAgICBjYXNlIFwibHRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gbHRDYXNlSW5zZW5zaXRpdmUoaywgcC52YWx1ZSlcbiAgICAgICAgICAgICAgY2FzZSBcImx0ZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBsdGVDYXNlSW5zZW5zaXRpdmUoaywgcC52YWx1ZSlcbiAgICAgICAgICAgICAgY2FzZSBcImd0XCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGd0Q2FzZUluc2Vuc2l0aXZlKGssIHAudmFsdWUpXG4gICAgICAgICAgICAgIGNhc2UgXCJndGVcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gZ3RlQ2FzZUluc2Vuc2l0aXZlKGssIHAudmFsdWUpXG4gICAgICAgICAgICAgIGNhc2UgXCJpbmNsdWRlc1wiOlxuICAgICAgICAgICAgICAgIHJldHVybiAoayBhcyBBcnJheTxzdHJpbmc+KS5pbmNsdWRlcyhwLnZhbHVlKVxuICAgICAgICAgICAgICBjYXNlIFwibm90LWluY2x1ZGVzXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuICEoayBhcyBBcnJheTxzdHJpbmc+KS5pbmNsdWRlcyhwLnZhbHVlKVxuICAgICAgICAgICAgICBjYXNlIFwiY29udGFpbnNcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gKGsgYXMgc3RyaW5nKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKChwLnZhbHVlKS50b0xvd2VyQ2FzZSgpKVxuICAgICAgICAgICAgICBjYXNlIFwiZW5kcy13aXRoXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIChrIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKS5lbmRzV2l0aCgocC52YWx1ZSkudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgICAgICAgY2FzZSBcInN0YXJ0cy13aXRoXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIChrIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKChwLnZhbHVlKS50b0xvd2VyQ2FzZSgpKVxuICAgICAgICAgICAgICBjYXNlIFwibm90LWVxXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuICFjb21wYXJlQ2FzZUluc2Vuc2l0aXZlKGssIHAudmFsdWUpXG4gICAgICAgICAgICAgIGNhc2UgXCJlcVwiOlxuICAgICAgICAgICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgICAgICAgICByZXR1cm4gY29tcGFyZUNhc2VJbnNlbnNpdGl2ZShrLCBwLnZhbHVlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgID8gT3B0aW9uKHggYXMgdW5rbm93biBhcyBORSlcbiAgICAgICAgOiBPcHRpb24ubm9uZVxuICAgICAgOiBmaWx0ZXJcbiAgICAgICAgICAud2hlcmVcbiAgICAgICAgICAuZXZlcnkoKHApID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGsgPSBnZXQoeCwgcC5rZXkpXG4gICAgICAgICAgICBzd2l0Y2ggKHAudCkge1xuICAgICAgICAgICAgICBjYXNlIFwiaW5cIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gcC52YWx1ZS5pbmNsdWRlcyhrKVxuICAgICAgICAgICAgICBjYXNlIFwibm90LWluXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuICFwLnZhbHVlLmluY2x1ZGVzKGspXG4gICAgICAgICAgICAgIGNhc2UgXCJsdFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBsdENhc2VJbnNlbnNpdGl2ZShrLCBwLnZhbHVlKVxuICAgICAgICAgICAgICBjYXNlIFwibHRlXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGx0ZUNhc2VJbnNlbnNpdGl2ZShrLCBwLnZhbHVlKVxuICAgICAgICAgICAgICBjYXNlIFwiZ3RcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gZ3RDYXNlSW5zZW5zaXRpdmUoaywgcC52YWx1ZSlcbiAgICAgICAgICAgICAgY2FzZSBcImd0ZVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBndGVDYXNlSW5zZW5zaXRpdmUoaywgcC52YWx1ZSlcbiAgICAgICAgICAgICAgY2FzZSBcImluY2x1ZGVzXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIChrIGFzIEFycmF5PHN0cmluZz4pLmluY2x1ZGVzKHAudmFsdWUpXG4gICAgICAgICAgICAgIGNhc2UgXCJub3QtaW5jbHVkZXNcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gIShrIGFzIEFycmF5PHN0cmluZz4pLmluY2x1ZGVzKHAudmFsdWUpXG4gICAgICAgICAgICAgIGNhc2UgXCJjb250YWluc1wiOlxuICAgICAgICAgICAgICAgIHJldHVybiAoayBhcyBzdHJpbmcpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoKHAudmFsdWUpLnRvTG93ZXJDYXNlKCkpXG4gICAgICAgICAgICAgIGNhc2UgXCJlbmRzLXdpdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gKGsgYXMgc3RyaW5nKS50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKChwLnZhbHVlKS50b0xvd2VyQ2FzZSgpKVxuICAgICAgICAgICAgICBjYXNlIFwic3RhcnRzLXdpdGhcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gKGsgYXMgc3RyaW5nKS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoKHAudmFsdWUpLnRvTG93ZXJDYXNlKCkpXG4gICAgICAgICAgICAgIGNhc2UgXCJub3QtZXFcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gcC5rZXkuaW5jbHVkZXMoXCIuLTEuXCIpXG4gICAgICAgICAgICAgICAgICA/IChnZXQoeCwgcC5rZXkuc3BsaXQoXCIuLTEuXCIpWzBdKSBhcyBhbnlbXSlcbiAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogb3IgdnMgYW5kXG4gICAgICAgICAgICAgICAgICAgIC5ldmVyeSgoXykgPT4gIWNvbXBhcmVDYXNlSW5zZW5zaXRpdmUoZ2V0KF8sIHAua2V5LnNwbGl0KFwiLi0xLlwiKVsxXSEpLCBwLnZhbHVlKSlcbiAgICAgICAgICAgICAgICAgIDogIWNvbXBhcmVDYXNlSW5zZW5zaXRpdmUoaywgcC52YWx1ZSlcbiAgICAgICAgICAgICAgY2FzZSBcImVxXCI6XG4gICAgICAgICAgICAgIGNhc2UgdW5kZWZpbmVkOlxuICAgICAgICAgICAgICAgIHJldHVybiBwLmtleS5pbmNsdWRlcyhcIi4tMS5cIilcbiAgICAgICAgICAgICAgICAgID8gKGdldCh4LCBwLmtleS5zcGxpdChcIi4tMS5cIilbMF0pIGFzIGFueVtdKVxuICAgICAgICAgICAgICAgICAgICAvLyBUT0RPOiBvciB2cyBhbmRcbiAgICAgICAgICAgICAgICAgICAgLnNvbWUoKF8pID0+IGNvbXBhcmVDYXNlSW5zZW5zaXRpdmUoZ2V0KF8sIHAua2V5LnNwbGl0KFwiLi0xLlwiKVsxXSEpLCBwLnZhbHVlKSlcbiAgICAgICAgICAgICAgICAgIDogY29tcGFyZUNhc2VJbnNlbnNpdGl2ZShrLCBwLnZhbHVlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICA/IE9wdGlvbih4IGFzIHVua25vd24gYXMgTkUpXG4gICAgICA6IE9wdGlvbi5ub25lXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb2RlRmlsdGVySm9pblNlbGVjdDxFIGV4dGVuZHMgeyBpZDogc3RyaW5nIH0sIE5FPihcbiAgZmlsdGVyOiBGaWx0ZXJKb2luU2VsZWN0XG4pIHtcbiAgcmV0dXJuICh4OiBFKSA9PlxuICAgIGZpbHRlclxuICAgICAgLmtleXNcbiAgICAgIC5maWx0ZXJNYXAoKGspID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBnZXQoeCwgaylcbiAgICAgICAgLy8gd2UgbWltaWMgdGhlIGJlaGF2aW9yIG9mIGNvc21vc2RiOyBpZiB0aGUgc2hhcGUgaW4gZGIgZG9lcyBub3QgbWF0Y2ggd2hhdCB3ZSdyZSBsb29raW5nIGZvciwgd2UgaW1hZ2luZSBmYWxzZSBoaXRcbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgPyBPcHRpb24oXG4gICAgICAgICAgICAodmFsdWUgYXMgcmVhZG9ubHkgTkVbXSkuZmlsdGVyTWFwKCh2KSA9PlxuICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICBjb21wYXJlQ2FzZUluc2Vuc2l0aXZlKCh2IGFzIGFueSlbZmlsdGVyLnZhbHVlS2V5XSwgZmlsdGVyLnZhbHVlKVxuICAgICAgICAgICAgICAgID8gT3B0aW9uKHsgLi4udiwgX3Jvb3RJZDogeC5pZCB9KVxuICAgICAgICAgICAgICAgIDogT3B0aW9uLm5vbmVcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgICAgOiBPcHRpb24ubm9uZVxuICAgICAgfSlcbiAgICAgIC5mbGF0TWFwKChfKSA9PiBfKVxufVxuXG5mdW5jdGlvbiBsb3dlcmNhc2VJZlN0cmluZzxUPih2YWw6IFQpIHtcbiAgaWYgKHR5cGVvZiB2YWwgPT09IFwic3RyaW5nXCIpIHtcbiAgICByZXR1cm4gdmFsLnRvTG93ZXJDYXNlKClcbiAgfVxuICByZXR1cm4gdmFsXG59XG5cbmZ1bmN0aW9uIGNvbXBhcmVDYXNlSW5zZW5zaXRpdmUodmFsQTogdW5rbm93biwgdmFsQjogdW5rbm93bikge1xuICByZXR1cm4gdHlwZW9mIHZhbEIgPT09IFwic3RyaW5nXCIgJiYgdHlwZW9mIHZhbEEgPT09IFwic3RyaW5nXCJcbiAgICA/IHZhbEEudG9Mb3dlckNhc2UoKSA9PT0gdmFsQi50b0xvd2VyQ2FzZSgpXG4gICAgOiB2YWxBID09PSB2YWxCXG59XG5cbmZ1bmN0aW9uIGx0Q2FzZUluc2Vuc2l0aXZlKHZhbEE6IFN1cHBvcnRlZFZhbHVlczIsIHZhbEI6IFN1cHBvcnRlZFZhbHVlczIpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWxCID09PSBcInN0cmluZ1wiICYmIHR5cGVvZiB2YWxBID09PSBcInN0cmluZ1wiXG4gICAgPyB2YWxBLnRvTG93ZXJDYXNlKCkgPCB2YWxCLnRvTG93ZXJDYXNlKClcbiAgICA6IHZhbEEgPCB2YWxCXG59XG5cbmZ1bmN0aW9uIGx0ZUNhc2VJbnNlbnNpdGl2ZSh2YWxBOiBTdXBwb3J0ZWRWYWx1ZXMyLCB2YWxCOiBTdXBwb3J0ZWRWYWx1ZXMyKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsQiA9PT0gXCJzdHJpbmdcIiAmJiB0eXBlb2YgdmFsQSA9PT0gXCJzdHJpbmdcIlxuICAgID8gdmFsQS50b0xvd2VyQ2FzZSgpIDw9IHZhbEIudG9Mb3dlckNhc2UoKVxuICAgIDogdmFsQSA8PSB2YWxCXG59XG5cbmZ1bmN0aW9uIGd0Q2FzZUluc2Vuc2l0aXZlKHZhbEE6IFN1cHBvcnRlZFZhbHVlczIsIHZhbEI6IFN1cHBvcnRlZFZhbHVlczIpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWxCID09PSBcInN0cmluZ1wiICYmIHR5cGVvZiB2YWxBID09PSBcInN0cmluZ1wiXG4gICAgPyB2YWxBLnRvTG93ZXJDYXNlKCkgPiB2YWxCLnRvTG93ZXJDYXNlKClcbiAgICA6IHZhbEEgPiB2YWxCXG59XG5cbmZ1bmN0aW9uIGd0ZUNhc2VJbnNlbnNpdGl2ZSh2YWxBOiBTdXBwb3J0ZWRWYWx1ZXMyLCB2YWxCOiBTdXBwb3J0ZWRWYWx1ZXMyKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsQiA9PT0gXCJzdHJpbmdcIiAmJiB0eXBlb2YgdmFsQSA9PT0gXCJzdHJpbmdcIlxuICAgID8gdmFsQS50b0xvd2VyQ2FzZSgpID49IHZhbEIudG9Mb3dlckNhc2UoKVxuICAgIDogdmFsQSA+PSB2YWxCXG59XG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
b4b12945fbdaa4d1e98b8a2095ca4363f267e0909cdb70da478a35926e8fbba5
|
package/.cache/effect/7a9c33db6aedaf00093a132c1d4e48e9d043cef05e932b8a37da24d44e224248.content
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@effect-app/infra/filter";
|
|
2
|
-
import { makeFilters } from "../../filter.js";
|
|
3
|
-
import { buildWhereCosmosQuery } from "./Cosmos.js";
|
|
4
|
-
const f_ = makeFilters();
|
|
5
|
-
export function makeSomethingFilter_(filter) {
|
|
6
|
-
return filter(f_);
|
|
7
|
-
}
|
|
8
|
-
export function somethingsWhere(makeWhere, mode) {
|
|
9
|
-
return makeSomethingFilter_((f) => {
|
|
10
|
-
const m = makeWhere ? makeWhere(f) : [];
|
|
11
|
-
return ({
|
|
12
|
-
mode,
|
|
13
|
-
where: (Array.isArray(m) ? m : [m])
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
test("works", () => {
|
|
18
|
-
expect(buildWhereCosmosQuery(somethingsWhere((_) => _("b", (_) => "b2")), "Somethings", "importedMarkerId", undefined, 10))
|
|
19
|
-
.toEqual({
|
|
20
|
-
"parameters": [
|
|
21
|
-
{
|
|
22
|
-
"name": "@id",
|
|
23
|
-
"value": "importedMarkerId"
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
"name": "@v0",
|
|
27
|
-
"value": "b2"
|
|
28
|
-
}
|
|
29
|
-
],
|
|
30
|
-
"query": `
|
|
31
|
-
SELECT f
|
|
32
|
-
FROM Somethings AS f
|
|
33
|
-
|
|
34
|
-
WHERE f.id != @id AND LOWER(f.b) = LOWER(@v0)
|
|
35
|
-
OFFSET 0 LIMIT 10`
|
|
36
|
-
});
|
|
37
|
-
expect(buildWhereCosmosQuery(somethingsWhere((_) => _("d.-1.a", (_) => tsplus_module_1.$isnt(_, "a2"))), "Somethings", "importedMarkerId", undefined, 10))
|
|
38
|
-
.toEqual({
|
|
39
|
-
"parameters": [
|
|
40
|
-
{
|
|
41
|
-
"name": "@id",
|
|
42
|
-
"value": "importedMarkerId"
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"name": "@v0",
|
|
46
|
-
"value": "a2"
|
|
47
|
-
}
|
|
48
|
-
],
|
|
49
|
-
"query": `
|
|
50
|
-
SELECT f
|
|
51
|
-
FROM Somethings AS f
|
|
52
|
-
JOIN d IN f.d
|
|
53
|
-
WHERE f.id != @id AND LOWER(d.a) <> LOWER(@v0)
|
|
54
|
-
OFFSET 0 LIMIT 10`
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29zbW9zLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL1N0b3JlL0Nvc21vcy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRW5ELE1BQU0sRUFBRSxHQUFHLFdBQVcsRUFBYSxDQUFBO0FBR25DLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUFxRDtJQUN4RixPQUFPLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQTtBQUNuQixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsU0FFZ0MsRUFDaEMsSUFBbUI7SUFFbkIsT0FBTyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ2hDLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7UUFDdkMsT0FBTyxDQUFDO1lBQ04sSUFBSTtZQUNKLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQW1DLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQWlDO1NBQ3RHLENBQUMsQ0FBQTtJQUNKLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQztBQWVELElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO0lBQ2pCLE1BQU0sQ0FBQyxxQkFBcUIsQ0FDMUIsZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUMzQyxZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLFNBQVMsRUFDVCxFQUFFLENBQ0gsQ0FBQztTQUNDLE9BQU8sQ0FBQztRQUNQLFlBQVksRUFBRTtZQUNaO2dCQUNFLE1BQU0sRUFBRSxLQUFLO2dCQUNiLE9BQU8sRUFBRSxrQkFBa0I7YUFDNUI7WUFDRDtnQkFDRSxNQUFNLEVBQUUsS0FBSztnQkFDYixPQUFPLEVBQUUsSUFBSTthQUNkO1NBQ0Y7UUFDRCxPQUFPLEVBQUU7Ozs7O3NCQUtPO0tBQ2pCLENBQUMsQ0FBQTtJQUVKLE1BQU0sQ0FBQyxxQkFBcUIsQ0FDMUIsZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxzQkFBQSxDQUFDLEVBQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUN6RCxZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLFNBQVMsRUFDVCxFQUFFLENBQ0gsQ0FBQztTQUNDLE9BQU8sQ0FBQztRQUNQLFlBQVksRUFBRTtZQUNaO2dCQUNFLE1BQU0sRUFBRSxLQUFLO2dCQUNiLE9BQU8sRUFBRSxrQkFBa0I7YUFDNUI7WUFDRDtnQkFDRSxNQUFNLEVBQUUsS0FBSztnQkFDYixPQUFPLEVBQUUsSUFBSTthQUNkO1NBQ0Y7UUFDRCxPQUFPLEVBQUU7Ozs7O3NCQUtPO0tBQ2pCLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTdG9yZVdoZXJlRmlsdGVyLCBXaGVyZSB9IGZyb20gXCJAZWZmZWN0LWFwcC9pbmZyYS9zZXJ2aWNlcy9TdG9yZVwiXG5pbXBvcnQgeyBtYWtlRmlsdGVycyB9IGZyb20gXCIuLi8uLi9maWx0ZXIuanNcIlxuaW1wb3J0IHsgYnVpbGRXaGVyZUNvc21vc1F1ZXJ5IH0gZnJvbSBcIi4vQ29zbW9zLmpzXCJcblxuY29uc3QgZl8gPSBtYWtlRmlsdGVyczxTb21ldGhpbmc+KClcbmV4cG9ydCB0eXBlIFNvbWV0aGluZ1doZXJlRmlsdGVyID0gdHlwZW9mIGZfXG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlU29tZXRoaW5nRmlsdGVyXyhmaWx0ZXI6IChmOiBTb21ldGhpbmdXaGVyZUZpbHRlcikgPT4gU3RvcmVXaGVyZUZpbHRlcikge1xuICByZXR1cm4gZmlsdGVyKGZfKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc29tZXRoaW5nc1doZXJlKFxuICBtYWtlV2hlcmU6IChcbiAgICBmOiBTb21ldGhpbmdXaGVyZUZpbHRlclxuICApID0+IFdoZXJlIHwgW1doZXJlLCAuLi5XaGVyZVtdXSxcbiAgbW9kZT86IFwib3JcIiB8IFwiYW5kXCJcbikge1xuICByZXR1cm4gbWFrZVNvbWV0aGluZ0ZpbHRlcl8oKGYpID0+IHtcbiAgICBjb25zdCBtID0gbWFrZVdoZXJlID8gbWFrZVdoZXJlKGYpIDogW11cbiAgICByZXR1cm4gKHtcbiAgICAgIG1vZGUsXG4gICAgICB3aGVyZTogKEFycmF5LmlzQXJyYXkobSkgPyBtIGFzIHVua25vd24gYXMgW1doZXJlLCAuLi5XaGVyZVtdXSA6IFttXSkgYXMgcmVhZG9ubHkgW1doZXJlLCAuLi5XaGVyZVtdXVxuICAgIH0pXG4gIH0pXG59XG5cbnR5cGUgU29tZXRoaW5nRWxzZSA9IHtcbiAgYTogc3RyaW5nXG4gIGI6IG51bWJlclxufVxuXG50eXBlIFNvbWV0aGluZyA9IHtcbiAgYTogbnVtYmVyXG4gIGlkOiBzdHJpbmdcbiAgYjogc3RyaW5nXG4gIGM6IHJlYWRvbmx5IHN0cmluZ1tdXG4gIGQ6IHJlYWRvbmx5IFNvbWV0aGluZ0Vsc2VbXVxufVxuXG50ZXN0KFwid29ya3NcIiwgKCkgPT4ge1xuICBleHBlY3QoYnVpbGRXaGVyZUNvc21vc1F1ZXJ5KFxuICAgIHNvbWV0aGluZ3NXaGVyZSgoXykgPT4gXyhcImJcIiwgKF8pID0+IFwiYjJcIikpLFxuICAgIFwiU29tZXRoaW5nc1wiLFxuICAgIFwiaW1wb3J0ZWRNYXJrZXJJZFwiLFxuICAgIHVuZGVmaW5lZCxcbiAgICAxMFxuICApKVxuICAgIC50b0VxdWFsKHtcbiAgICAgIFwicGFyYW1ldGVyc1wiOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBcIm5hbWVcIjogXCJAaWRcIixcbiAgICAgICAgICBcInZhbHVlXCI6IFwiaW1wb3J0ZWRNYXJrZXJJZFwiXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBcIm5hbWVcIjogXCJAdjBcIixcbiAgICAgICAgICBcInZhbHVlXCI6IFwiYjJcIlxuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgXCJxdWVyeVwiOiBgXG4gICAgU0VMRUNUIGZcbiAgICBGUk9NIFNvbWV0aGluZ3MgQVMgZlxuICAgIFxuICAgIFdIRVJFIGYuaWQgIT0gQGlkIEFORCBMT1dFUihmLmIpID0gTE9XRVIoQHYwKVxuICAgIE9GRlNFVCAwIExJTUlUIDEwYFxuICAgIH0pXG5cbiAgZXhwZWN0KGJ1aWxkV2hlcmVDb3Ntb3NRdWVyeShcbiAgICBzb21ldGhpbmdzV2hlcmUoKF8pID0+IF8oXCJkLi0xLmFcIiwgKF8pID0+IF8uJGlzbnQoXCJhMlwiKSkpLFxuICAgIFwiU29tZXRoaW5nc1wiLFxuICAgIFwiaW1wb3J0ZWRNYXJrZXJJZFwiLFxuICAgIHVuZGVmaW5lZCxcbiAgICAxMFxuICApKVxuICAgIC50b0VxdWFsKHtcbiAgICAgIFwicGFyYW1ldGVyc1wiOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBcIm5hbWVcIjogXCJAaWRcIixcbiAgICAgICAgICBcInZhbHVlXCI6IFwiaW1wb3J0ZWRNYXJrZXJJZFwiXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBcIm5hbWVcIjogXCJAdjBcIixcbiAgICAgICAgICBcInZhbHVlXCI6IFwiYTJcIlxuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgXCJxdWVyeVwiOiBgXG4gICAgU0VMRUNUIGZcbiAgICBGUk9NIFNvbWV0aGluZ3MgQVMgZlxuICAgIEpPSU4gZCBJTiBmLmRcbiAgICBXSEVSRSBmLmlkICE9IEBpZCBBTkQgTE9XRVIoZC5hKSA8PiBMT1dFUihAdjApXG4gICAgT0ZGU0VUIDAgTElNSVQgMTBgXG4gICAgfSlcbn0pXG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
4e41249ba004a7c0dc89e9306f2fcedc66585f6a43cff02e094f0d73d723bf8d
|
package/.cache/effect/8594f0f42afc0641b00e88998000cc47382a1d07da31f4a148f7976701ca22d5.content
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@effect-app/core/Option";
|
|
2
|
-
import * as tsplus_module_2 from "@effect/io/Effect";
|
|
3
|
-
import * as tsplus_module_3 from "@effect/data/Option";
|
|
4
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
|
-
import * as MO from "@effect-app/schema";
|
|
6
|
-
import { isObjectSchema } from "@effect-app/infra-adapters/Openapi/atlas-plutus";
|
|
7
|
-
import * as OpenApi from "@effect-app/infra-adapters/Openapi/index";
|
|
8
|
-
export function asRouteDescriptionAny(i) {
|
|
9
|
-
return i;
|
|
10
|
-
}
|
|
11
|
-
export function arrAsRouteDescriptionAny(arr) {
|
|
12
|
-
return arr.map(asRouteDescriptionAny);
|
|
13
|
-
}
|
|
14
|
-
export function makeRouteDescriptor(path, method, handler) {
|
|
15
|
-
return { path, method, handler, _tag: "Schema" };
|
|
16
|
-
}
|
|
17
|
-
export function makeFromSchema(e) {
|
|
18
|
-
const jsonSchema_ = OpenApi.for;
|
|
19
|
-
const jsonSchema = (r) => jsonSchema_(r);
|
|
20
|
-
const { Request: Req, Response: Res_, ResponseOpenApi } = e.handler;
|
|
21
|
-
const r = ResponseOpenApi ?? Res_;
|
|
22
|
-
const Res = r ? MO.extractSchema(r) : MO.Void;
|
|
23
|
-
// TODO EffectOption.fromNullable(Req.Headers).flatMapOpt(jsonSchema)
|
|
24
|
-
// TODO: use the path vs body etc serialisation also in the Client.
|
|
25
|
-
const makeReqQuerySchema = tsplus_module_2.flatMap(tsplus_module_2.sync(() => tsplus_module_3.fromNullable(Req.Query)), (_) => tsplus_module_3.match(_, () => tsplus_module_2.sync(() => tsplus_module_1.none), (_) => tsplus_module_2.map(jsonSchema(_), tsplus_module_3.some)));
|
|
26
|
-
const makeReqHeadersSchema = tsplus_module_2.flatMap(tsplus_module_2.sync(() => tsplus_module_3.fromNullable(Req.Headers)), (_) => tsplus_module_3.match(_, () => tsplus_module_2.sync(() => tsplus_module_1.none), (_) => tsplus_module_2.map(jsonSchema(_), tsplus_module_3.some)));
|
|
27
|
-
const makeReqCookieSchema = tsplus_module_2.flatMap(tsplus_module_2.sync(() => tsplus_module_3.fromNullable(Req.Cookie)), (_) => tsplus_module_3.match(_, () => tsplus_module_2.sync(() => tsplus_module_1.none), (_) => tsplus_module_2.map(jsonSchema(_), tsplus_module_3.some)));
|
|
28
|
-
const makeReqPathSchema = tsplus_module_2.flatMap(tsplus_module_2.sync(() => tsplus_module_3.fromNullable(Req.Path)), (_) => tsplus_module_3.match(_, () => tsplus_module_2.sync(() => tsplus_module_1.none), (_) => tsplus_module_2.map(jsonSchema(_), tsplus_module_3.some)));
|
|
29
|
-
const makeReqBodySchema = tsplus_module_2.flatMap(tsplus_module_2.sync(() => tsplus_module_3.fromNullable(Req.Body)), (_) => tsplus_module_3.match(_, () => tsplus_module_2.sync(() => tsplus_module_1.none), (_) => tsplus_module_2.map(jsonSchema(_), tsplus_module_3.some)));
|
|
30
|
-
// const makeReqSchema = schema(Req)
|
|
31
|
-
const makeResSchema = jsonSchema_(Res);
|
|
32
|
-
function makeParameters(inn) {
|
|
33
|
-
return (a) => {
|
|
34
|
-
return tsplus_module_3.getOrElse(tsplus_module_3.map(tsplus_module_3.flatMap(a, (o) => (isObjectSchema(o) ? tsplus_module_3.some(o) : tsplus_module_1.none)), (x) => {
|
|
35
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
36
|
-
return Object.keys(x.properties).map((p) => {
|
|
37
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
38
|
-
const schema = x.properties[p];
|
|
39
|
-
const required = Boolean(x.required?.includes(p));
|
|
40
|
-
return { name: p, in: inn, required, schema };
|
|
41
|
-
});
|
|
42
|
-
}), () => []);
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
return tsplus_module_2.map(tsplus_module_2.all({
|
|
46
|
-
req: jsonSchema(Req.Model),
|
|
47
|
-
reqQuery: makeReqQuerySchema,
|
|
48
|
-
reqHeaders: makeReqHeadersSchema,
|
|
49
|
-
reqBody: makeReqBodySchema,
|
|
50
|
-
reqPath: makeReqPathSchema,
|
|
51
|
-
reqCookie: makeReqCookieSchema,
|
|
52
|
-
res: makeResSchema
|
|
53
|
-
}), (_) => {
|
|
54
|
-
// console.log("$$$ REQ", _.req)
|
|
55
|
-
const isEmpty = !e.handler.Response || e.handler.Response === MO.Void;
|
|
56
|
-
return {
|
|
57
|
-
path: e.path,
|
|
58
|
-
method: e.method.toLowerCase(),
|
|
59
|
-
tags: e.info?.tags,
|
|
60
|
-
description: _.req?.description,
|
|
61
|
-
summary: _.req?.summary,
|
|
62
|
-
operationId: _.req?.title,
|
|
63
|
-
parameters: [
|
|
64
|
-
...makeParameters("path")(_.reqPath),
|
|
65
|
-
...makeParameters("query")(_.reqQuery),
|
|
66
|
-
...makeParameters("header")(_.reqHeaders),
|
|
67
|
-
...makeParameters("cookie")(_.reqCookie)
|
|
68
|
-
],
|
|
69
|
-
requestBody: tsplus_module_1.getOrUndefined(tsplus_module_3.map(_
|
|
70
|
-
.reqBody, (schema) => ({
|
|
71
|
-
content: { "application/json": { schema } }
|
|
72
|
-
}))),
|
|
73
|
-
responses: [
|
|
74
|
-
isEmpty
|
|
75
|
-
? new Response(204, { description: "Empty" })
|
|
76
|
-
: new Response(200, {
|
|
77
|
-
description: "OK",
|
|
78
|
-
content: { "application/json": { schema: _.res } }
|
|
79
|
-
}),
|
|
80
|
-
new Response(400, { description: "ValidationError" })
|
|
81
|
-
]
|
|
82
|
-
.concat(e.path.includes(":") && isEmpty
|
|
83
|
-
? [new Response(404, { description: "NotFoundError" })]
|
|
84
|
-
: [])
|
|
85
|
-
};
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
class Response {
|
|
89
|
-
statusCode;
|
|
90
|
-
type;
|
|
91
|
-
constructor(statusCode, type // string | JSONSchema | SubSchema
|
|
92
|
-
) {
|
|
93
|
-
this.statusCode = statusCode;
|
|
94
|
-
this.type = type;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL19zcmMvYXBpL2V4cHJlc3Mvc2NoZW1hL3JvdXRpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdURBQXVEO0FBQ3ZELE9BQU8sS0FBSyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFJeEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlEQUFpRCxDQUFBO0FBQ2hGLE9BQU8sS0FBSyxPQUFPLE1BQU0sMENBQTBDLENBQUE7QUFHbkUsTUFBTSxVQUFVLHFCQUFxQixDQUErQixDQUFJO0lBQ3RFLE9BQU8sQ0FBdUIsQ0FBQTtBQUNoQyxDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUN0QyxHQUFxQjtJQUVyQixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQTtBQUN2QyxDQUFDO0FBa0NELE1BQU0sVUFBVSxtQkFBbUIsQ0FZakMsSUFBWSxFQUNaLE1BQWMsRUFDZCxPQVVDO0lBRUQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBVzdDLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsQ0FBZ0U7SUFFaEUsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQTtJQUMvQixNQUFNLFVBQVUsR0FBRyxDQUFPLENBQWtCLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUMvRCxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUE7SUFDbkUsTUFBTSxDQUFDLEdBQUcsZUFBZSxJQUFJLElBQUksQ0FBQTtJQUNqQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMs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eHBsaWNpdC1hbnkgKi9cbmltcG9ydCAqIGFzIE1PIGZyb20gXCJAZWZmZWN0LWFwcC9zY2hlbWFcIlxuaW1wb3J0IHR5cGUgeyBNZXRob2RzIH0gZnJvbSBcIkBlZmZlY3QtYXBwL3NjaGVtYVwiXG5cbmltcG9ydCB0eXBlIHsgSlNPTlNjaGVtYSwgUGFyYW1ldGVyTG9jYXRpb24sIFN1YlNjaGVtYSB9IGZyb20gXCJAZWZmZWN0LWFwcC9pbmZyYS1hZGFwdGVycy9PcGVuYXBpL2F0bGFzLXBsdXR1c1wiXG5pbXBvcnQgeyBpc09iamVjdFNjaGVtYSB9IGZyb20gXCJAZWZmZWN0LWFwcC9pbmZyYS1hZGFwdGVycy9PcGVuYXBpL2F0bGFzLXBsdXR1c1wiXG5pbXBvcnQgKiBhcyBPcGVuQXBpIGZyb20gXCJAZWZmZWN0LWFwcC9pbmZyYS1hZGFwdGVycy9PcGVuYXBpL2luZGV4XCJcbmltcG9ydCB0eXBlIHsgUmVxdWVzdEhhbmRsZXIsIFJlcXVlc3RIYW5kbGVyT3B0UmVzIH0gZnJvbSBcIi4vcmVxdWVzdEhhbmRsZXIuanNcIlxuXG5leHBvcnQgZnVuY3Rpb24gYXNSb3V0ZURlc2NyaXB0aW9uQW55PFIgZXh0ZW5kcyBSb3V0ZURlc2NyaXB0b3JBbnk+KGk6IFIpIHtcbiAgcmV0dXJuIGkgYXMgUm91dGVEZXNjcmlwdG9yQW55XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcnJBc1JvdXRlRGVzY3JpcHRpb25Bbnk8UiBleHRlbmRzIFJvdXRlRGVzY3JpcHRvckFueT4oXG4gIGFycjogUmVhZG9ubHlBcnJheTxSPlxuKSB7XG4gIHJldHVybiBhcnIubWFwKGFzUm91dGVEZXNjcmlwdGlvbkFueSlcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb3V0ZURlc2NyaXB0b3I8XG4gIFIsXG4gIFBhdGhBLFxuICBDb29raWVBLFxuICBRdWVyeUEsXG4gIEJvZHlBLFxuICBIZWFkZXJBLFxuICBSZXFBIGV4dGVuZHMgUGF0aEEgJiBRdWVyeUEgJiBCb2R5QSxcbiAgUmVzQSxcbiAgRXJyb3JzLFxuICBNRVRIT0QgZXh0ZW5kcyBNZXRob2RzID0gTWV0aG9kc1xuPiB7XG4gIHBhdGg6IHN0cmluZ1xuICBtZXRob2Q6IE1FVEhPRFxuICBoYW5kbGVyOiBSZXF1ZXN0SGFuZGxlcjxSLCBQYXRoQSwgQ29va2llQSwgUXVlcnlBLCBCb2R5QSwgSGVhZGVyQSwgUmVxQSwgUmVzQSwgRXJyb3JzPlxuICBpbmZvPzoge1xuICAgIHRhZ3M6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPlxuICB9XG59XG5cbmV4cG9ydCB0eXBlIFJvdXRlRGVzY3JpcHRvckFueSA9IFJvdXRlRGVzY3JpcHRvcjxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIGFueVxuPlxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZVJvdXRlRGVzY3JpcHRvcjxcbiAgUixcbiAgUGF0aEEsXG4gIENvb2tpZUEsXG4gIFF1ZXJ5QSxcbiAgQm9keUEsXG4gIEhlYWRlckEsXG4gIFJlcUEgZXh0ZW5kcyBQYXRoQSAmIFF1ZXJ5QSAmIEJvZHlBLFxuICBSZXNBID0gdm9pZCxcbiAgRXJyb3JzID0gYW55LFxuICBNRVRIT0QgZXh0ZW5kcyBNZXRob2RzID0gTWV0aG9kc1xuPihcbiAgcGF0aDogc3RyaW5nLFxuICBtZXRob2Q6IE1FVEhPRCxcbiAgaGFuZGxlcjogUmVxdWVzdEhhbmRsZXJPcHRSZXM8XG4gICAgUixcbiAgICBQYXRoQSxcbiAgICBDb29raWVBLFxuICAgIFF1ZXJ5QSxcbiAgICBCb2R5QSxcbiAgICBIZWFkZXJBLFxuICAgIFJlcUEsXG4gICAgUmVzQSxcbiAgICBFcnJvcnNcbiAgPlxuKSB7XG4gIHJldHVybiB7IHBhdGgsIG1ldGhvZCwgaGFuZGxlciwgX3RhZzogXCJTY2hlbWFcIiB9IGFzIFJvdXRlRGVzY3JpcHRvcjxcbiAgICBSLFxuICAgIFBhdGhBLFxuICAgIENvb2tpZUEsXG4gICAgUXVlcnlBLFxuICAgIEJvZHlBLFxuICAgIEhlYWRlckEsXG4gICAgUmVxQSxcbiAgICBSZXNBLFxuICAgIEVycm9ycyxcbiAgICBNRVRIT0RcbiAgPlxufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZUZyb21TY2hlbWE8UmVzQT4oXG4gIGU6IFJvdXRlRGVzY3JpcHRvcjxhbnksIGFueSwgYW55LCBhbnksIGFueSwgYW55LCBSZXNBLCBhbnksIGFueT5cbikge1xuICBjb25zdCBqc29uU2NoZW1hXyA9IE9wZW5BcGkuZm9yXG4gIGNvbnN0IGpzb25TY2hlbWEgPSA8RSwgQT4ocjogTU8uUmVxUmVzPEUsIEE+KSA9PiBqc29uU2NoZW1hXyhyKVxuICBjb25zdCB7IFJlcXVlc3Q6IFJlcSwgUmVzcG9uc2U6IFJlc18sIFJlc3BvbnNlT3BlbkFwaSB9ID0gZS5oYW5kbGVyXG4gIGNvbnN0IHIgPSBSZXNwb25zZU9wZW5BcGkgPz8gUmVzX1xuICBjb25zdCBSZXMgPSByID8gTU8uZXh0cmFjdFNjaGVtYShyKSA6IE1PLlZvaWRcbiAgLy8gVE9ETyBFZmZlY3RPcHRpb24uZnJvbU51bGxhYmxlKFJlcS5IZWFkZXJzKS5mbGF0TWFwT3B0KGpzb25TY2hlbWEpXG4gIC8vIFRPRE86IHVzZSB0aGUgcGF0aCB2cyBib2R5IGV0YyBzZXJpYWxpc2F0aW9uIGFsc28gaW4gdGhlIENsaWVudC5cbiAgY29uc3QgbWFrZVJlcVF1ZXJ5U2NoZW1hID0gRWZmZWN0KE9wdGlvbi5mcm9tTnVsbGFibGUoUmVxLlF1ZXJ5KSkuZmxhdE1hcCgoXykgPT5cbiAgICBfLm1hdGNoKFxuICAgICAgKCkgPT4gRWZmZWN0KE9wdGlvbi5ub25lKSxcbiAgICAgIChfKSA9PiBqc29uU2NoZW1hKF8pLm1hcChPcHRpb24uc29tZSlcbiAgICApXG4gIClcbiAgY29uc3QgbWFrZVJlcUhlYWRlcnNTY2hlbWEgPSBFZmZlY3QoT3B0aW9uLmZyb21OdWxsYWJsZShSZXEuSGVhZGVycykpLmZsYXRNYXAoKF8pID0+XG4gICAgXy5tYXRjaChcbiAgICAgICgpID0+IEVmZmVjdChPcHRpb24ubm9uZSksXG4gICAgICAoXykgPT4ganNvblNjaGVtYShfKS5tYXAoT3B0aW9uLnNvbWUpXG4gICAgKVxuICApXG4gIGNvbnN0IG1ha2VSZXFDb29raWVTY2hlbWEgPSBFZmZlY3QoT3B0aW9uLmZyb21OdWxsYWJsZShSZXEuQ29va2llKSkuZmxhdE1hcCgoXykgPT5cbiAgICBfLm1hdGNoKFxuICAgICAgKCkgPT4gRWZmZWN0KE9wdGlvbi5ub25lKSxcbiAgICAgIChfKSA9PiBqc29uU2NoZW1hKF8pLm1hcChPcHRpb24uc29tZSlcbiAgICApXG4gIClcbiAgY29uc3QgbWFrZVJlcVBhdGhTY2hlbWEgPSBFZmZlY3QoT3B0aW9uLmZyb21OdWxsYWJsZShSZXEuUGF0aCkpLmZsYXRNYXAoKF8pID0+XG4gICAgXy5tYXRjaChcbiAgICAgICgpID0+IEVmZmVjdChPcHRpb24ubm9uZSksXG4gICAgICAoXykgPT4ganNvblNjaGVtYShfKS5tYXAoT3B0aW9uLnNvbWUpXG4gICAgKVxuICApXG4gIGNvbnN0IG1ha2VSZXFCb2R5U2NoZW1hID0gRWZmZWN0KE9wdGlvbi5mcm9tTnVsbGFibGUoUmVxLkJvZHkpKS5mbGF0TWFwKChfKSA9PlxuICAgIF8ubWF0Y2goXG4gICAgICAoKSA9PiBFZmZlY3QoT3B0aW9uLm5vbmUpLFxuICAgICAgKF8pID0+IGpzb25TY2hlbWEoXykubWFwKE9wdGlvbi5zb21lKVxuICAgIClcbiAgKVxuICAvLyBjb25zdCBtYWtlUmVxU2NoZW1hID0gc2NoZW1hKFJlcSlcblxuICBjb25zdCBtYWtlUmVzU2NoZW1hID0ganNvblNjaGVtYV8oUmVzIGFzIGFueSlcblxuICBmdW5jdGlvbiBtYWtlUGFyYW1ldGVycyhpbm46IFBhcmFtZXRlckxvY2F0aW9uKSB7XG4gICAgcmV0dXJuIChhOiBPcHRpb248SlNPTlNjaGVtYSB8IFN1YlNjaGVtYT4pID0+IHtcbiAgICAgIHJldHVybiBhXG4gICAgICAgIC5mbGF0TWFwKChvKSA9PiAoaXNPYmplY3RTY2hlbWEobykgPyBPcHRpb24obykgOiBPcHRpb24ubm9uZSkpXG4gICAgICAgIC5tYXAoKHgpID0+IHtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICAgIHJldHVybiBPYmplY3Qua2V5cyh4LnByb3BlcnRpZXMhKS5tYXAoKHApID0+IHtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgICAgICBjb25zdCBzY2hlbWEgPSB4LnByb3BlcnRpZXMhW3BdXG4gICAgICAgICAgICBjb25zdCByZXF1aXJlZCA9IEJvb2xlYW4oeC5yZXF1aXJlZD8uaW5jbHVkZXMocCkpXG4gICAgICAgICAgICByZXR1cm4geyBuYW1lOiBwLCBpbjogaW5uLCByZXF1aXJlZCwgc2NoZW1hIH1cbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgICAuZ2V0T3JFbHNlKCgpID0+IFtdKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBFZmZlY3RcbiAgICAuYWxsKHtcbiAgICAgIHJlcToganNvblNjaGVtYShSZXEuTW9kZWwpLFxuICAgICAgcmVxUXVlcnk6IG1ha2VSZXFRdWVyeVNjaGVtYSxcbiAgICAgIHJlcUhlYWRlcnM6IG1ha2VSZXFIZWFkZXJzU2NoZW1hLFxuICAgICAgcmVxQm9keTogbWFrZVJlcUJvZHlTY2hlbWEsXG4gICAgICByZXFQYXRoOiBtYWtlUmVxUGF0aFNjaGVtYSxcbiAgICAgIHJlcUNvb2tpZTogbWFrZVJlcUNvb2tpZVNjaGVtYSxcbiAgICAgIHJlczogbWFrZVJlc1NjaGVtYVxuICAgIH0pXG4gICAgLm1hcCgoXykgPT4ge1xuICAgICAgLy8gY29uc29sZS5sb2coXCIkJCQgUkVRXCIsIF8ucmVxKVxuICAgICAgY29uc3QgaXNFbXB0eSA9ICFlLmhhbmRsZXIuUmVzcG9uc2UgfHwgZS5oYW5kbGVyLlJlc3BvbnNlID09PSBNTy5Wb2lkXG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYXRoOiBlLnBhdGgsXG4gICAgICAgIG1ldGhvZDogZS5tZXRob2QudG9Mb3dlckNhc2UoKSxcbiAgICAgICAgdGFnczogZS5pbmZvPy50YWdzLFxuICAgICAgICBkZXNjcmlwdGlvbjogXy5yZXE/LmRlc2NyaXB0aW9uLFxuICAgICAgICBzdW1tYXJ5OiBfLnJlcT8uc3VtbWFyeSxcbiAgICAgICAgb3BlcmF0aW9uSWQ6IF8ucmVxPy50aXRsZSxcbiAgICAgICAgcGFyYW1ldGVyczogW1xuICAgICAgICAgIC4uLm1ha2VQYXJhbWV0ZXJzKFwicGF0aFwiKShfLnJlcVBhdGgpLFxuICAgICAgICAgIC4uLm1ha2VQYXJhbWV0ZXJzKFwicXVlcnlcIikoXy5yZXFRdWVyeSksXG4gICAgICAgICAgLi4ubWFrZVBhcmFtZXRlcnMoXCJoZWFkZXJcIikoXy5yZXFIZWFkZXJzKSxcbiAgICAgICAgICAuLi5tYWtlUGFyYW1ldGVycyhcImNvb2tpZVwiKShfLnJlcUNvb2tpZSlcbiAgICAgICAgXSxcbiAgICAgICAgcmVxdWVzdEJvZHk6IF9cbiAgICAgICAgICAucmVxQm9keVxuICAgICAgICAgIC5tYXAoKHNjaGVtYSkgPT4gKHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IHsgXCJhcHBsaWNhdGlvbi9qc29uXCI6IHsgc2NoZW1hIH0gfVxuICAgICAgICAgIH0pKVxuICAgICAgICAgIC52YWx1ZSxcbiAgICAgICAgcmVzcG9uc2VzOiBbXG4gICAgICAgICAgaXNFbXB0eVxuICAgICAgICAgICAgPyBuZXcgUmVzcG9uc2UoMjA0LCB7IGRlc2NyaXB0aW9uOiBcIkVtcHR5XCIgfSlcbiAgICAgICAgICAgIDogbmV3IFJlc3BvbnNlKDIwMCwge1xuICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJPS1wiLFxuICAgICAgICAgICAgICBjb250ZW50OiB7IFwiYXBwbGljYXRpb24vanNvblwiOiB7IHNjaGVtYTogXy5yZXMgfSB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBuZXcgUmVzcG9uc2UoNDAwLCB7IGRlc2NyaXB0aW9uOiBcIlZhbGlkYXRpb25FcnJvclwiIH0pXG4gICAgICAgIF1cbiAgICAgICAgICAuY29uY2F0KFxuICAgICAgICAgICAgZS5wYXRoLmluY2x1ZGVzKFwiOlwiKSAmJiBpc0VtcHR5XG4gICAgICAgICAgICAgID8gW25ldyBSZXNwb25zZSg0MDQsIHsgZGVzY3JpcHRpb246IFwiTm90Rm91bmRFcnJvclwiIH0pXVxuICAgICAgICAgICAgICA6IFtdXG4gICAgICAgICAgKVxuICAgICAgfVxuICAgIH0pXG59XG5cbmNsYXNzIFJlc3BvbnNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHN0YXR1c0NvZGU6IG51bWJlcixcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogYW55IC8vIHN0cmluZyB8IEpTT05TY2hlbWEgfCBTdWJTY2hlbWFcbiAgKSB7fVxufVxuIl19
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0ec005c7e521d652727c8ec2ca65980927e1818fc3bb92eb21dbc35d225bd027
|
package/.cache/effect/c67d971634d2dc8118b40452b61c9a51620c35809be4a89982476aa80701d852.content
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import * as tsplus_module_1 from "@effect-app/prelude/utils";
|
|
2
|
-
import * as tsplus_module_2 from "@effect/io/Effect";
|
|
3
|
-
import * as tsplus_module_3 from "@effect/data/Debug";
|
|
4
|
-
/**
|
|
5
|
-
* @tsplus fluent effect/io/Effect instrument
|
|
6
|
-
*/
|
|
7
|
-
export function instr(self, name, properties) {
|
|
8
|
-
return tsplus_module_3.untraced(() => tsplus_module_2.logSpan(tsplus_module_2.tap(self, () => tsplus_module_2.logAnnotate(tsplus_module_2.logDebug(`instrumented`), "properties", tsplus_module_1.RecordPretty(tsplus_module_1.object$((properties || {}))))), name));
|
|
9
|
-
// trackMetric(name, time, properties))
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1bWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL19zcmMvaW5zdHJ1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQVUsSUFBcUIsRUFBRSxJQUFZLEVBQUUsVUFBbUM7SUFDckcsT0FBTyx5QkFBZSxHQUFHLEVBQUUsQ0FDekIsd0JBQUEsb0JBQUEsSUFBSSxFQUNHLEdBQUcsRUFBRSxDQUFDLDRCQUFBLHlCQUFnQixjQUFjLENBQUMsRUFBYSxZQUFZLHVEQUFFLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxHQUFXLENBQUMsRUFDMUYsSUFBSSxDQUFDLENBQ2pCLENBQUE7SUFDRCx1Q0FBdUM7QUFDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHRzcGx1cyBmbHVlbnQgZWZmZWN0L2lvL0VmZmVjdCBpbnN0cnVtZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnN0cjxSLCBFLCBBPihzZWxmOiBFZmZlY3Q8UiwgRSwgQT4sIG5hbWU6IHN0cmluZywgcHJvcGVydGllcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pIHtcbiAgcmV0dXJuIERlYnVnLnVudHJhY2VkKCgpID0+XG4gICAgc2VsZlxuICAgICAgLnRhcCgoKSA9PiBFZmZlY3QubG9nRGVidWcoYGluc3RydW1lbnRlZGApLmxvZ0Fubm90YXRlKFwicHJvcGVydGllc1wiLCAocHJvcGVydGllcyB8fCB7fSkuJCQucHJldHR5KSlcbiAgICAgIC5sb2dTcGFuKG5hbWUpXG4gIClcbiAgLy8gdHJhY2tNZXRyaWMobmFtZSwgdGltZSwgcHJvcGVydGllcykpXG59XG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0958fd132e2c918acec7e021223aec95701d820ac3efbcb7b6f5c96200d7c3ad
|