@effect-app/infra 0.108.4 → 0.109.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/_cjs/RequestContext.cjs +2 -2
  3. package/_cjs/RequestContext.cjs.map +1 -1
  4. package/_cjs/api/setupRequest.cjs +1 -1
  5. package/_cjs/api/setupRequest.cjs.map +1 -1
  6. package/_cjs/services/Operations/live.cjs +1 -1
  7. package/_cjs/services/Operations/live.cjs.map +1 -1
  8. package/_cjs/services/QueueMaker/memQueue.cjs +1 -1
  9. package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
  10. package/_cjs/services/QueueMaker/sbqueue.cjs +1 -1
  11. package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
  12. package/_cjs/services/RequestContextContainer.cjs +1 -1
  13. package/_cjs/services/RequestContextContainer.cjs.map +1 -1
  14. package/_src/RequestContext.ts +2 -2
  15. package/_src/api/setupRequest.ts +1 -1
  16. package/_src/services/Emailer/service.ts +2 -2
  17. package/_src/services/Operations/live.ts +3 -3
  18. package/_src/services/QueueMaker/memQueue.ts +1 -1
  19. package/_src/services/QueueMaker/sbqueue.ts +1 -1
  20. package/_src/services/RequestContextContainer.ts +1 -1
  21. package/dist/RequestContext.d.ts +11 -11
  22. package/dist/RequestContext.js +3 -3
  23. package/dist/api/setupRequest.js +2 -2
  24. package/dist/services/Emailer/service.d.ts +3 -3
  25. package/dist/services/Emailer/service.d.ts.map +1 -1
  26. package/dist/services/Operations/live.js +4 -4
  27. package/dist/services/QueueMaker/memQueue.js +2 -2
  28. package/dist/services/QueueMaker/sbqueue.js +2 -2
  29. package/dist/services/RepositoryBase.d.ts +1 -1
  30. package/dist/services/RequestContextContainer.d.ts +4 -4
  31. package/dist/services/RequestContextContainer.js +2 -2
  32. package/dist/services/simpledb/cosmosdb.d.ts +2 -2
  33. package/dist/services/simpledb/diskdb.d.ts +2 -2
  34. package/dist/services/simpledb/memdb.d.ts +2 -2
  35. package/dist/services/simpledb/mongodb.d.ts +2 -2
  36. package/dist/services/simpledb/redisdb.d.ts +2 -2
  37. package/dist/services/simpledb/simpledb.d.ts +3 -3
  38. package/package.json +4 -4
  39. package/.cache/effect/095519d034161945a8d2616a506d3e7f35a9b3d868814f44c747429c60fc4e7f.content +0 -275
  40. package/.cache/effect/095519d034161945a8d2616a506d3e7f35a9b3d868814f44c747429c60fc4e7f.hash +0 -1
  41. package/.cache/effect/134218688132dfbdea493cbe1f26e73449f2759121df35ddd5448346b59c9a8d.content +0 -43
  42. package/.cache/effect/134218688132dfbdea493cbe1f26e73449f2759121df35ddd5448346b59c9a8d.hash +0 -1
  43. package/.cache/effect/14eb9da4ca6d22162888c7fdb7f39ab772d2a2dc6625db6031ecdb32ac89158f.content +0 -122
  44. package/.cache/effect/14eb9da4ca6d22162888c7fdb7f39ab772d2a2dc6625db6031ecdb32ac89158f.hash +0 -1
  45. package/.cache/effect/1bfd92946b11da4292f2ed99dc0e322462b60559148f9524abc20e26f70779e1.content +0 -86
  46. package/.cache/effect/1bfd92946b11da4292f2ed99dc0e322462b60559148f9524abc20e26f70779e1.hash +0 -1
  47. package/.cache/effect/49c1bd9ec26e6df78b994d8df0bfe21b119803fa4aa46349bf4679fd0f1e7cda.content +0 -49
  48. package/.cache/effect/49c1bd9ec26e6df78b994d8df0bfe21b119803fa4aa46349bf4679fd0f1e7cda.hash +0 -1
  49. package/.cache/effect/58d4ccde8bd2db7829706db5bebd01b99900ee83f0f6a8413b53d17cbd69f510.content +0 -70
  50. package/.cache/effect/58d4ccde8bd2db7829706db5bebd01b99900ee83f0f6a8413b53d17cbd69f510.hash +0 -1
  51. package/.cache/effect/72a5a16a6b62b63cd71719c833091128207d7e6c823cb32293549b3dd58c451b.content +0 -178
  52. package/.cache/effect/72a5a16a6b62b63cd71719c833091128207d7e6c823cb32293549b3dd58c451b.hash +0 -1
  53. package/.cache/effect/7a9c33db6aedaf00093a132c1d4e48e9d043cef05e932b8a37da24d44e224248.content +0 -57
  54. package/.cache/effect/7a9c33db6aedaf00093a132c1d4e48e9d043cef05e932b8a37da24d44e224248.hash +0 -1
  55. package/.cache/effect/8594f0f42afc0641b00e88998000cc47382a1d07da31f4a148f7976701ca22d5.content +0 -97
  56. package/.cache/effect/8594f0f42afc0641b00e88998000cc47382a1d07da31f4a148f7976701ca22d5.hash +0 -1
  57. package/.cache/effect/c67d971634d2dc8118b40452b61c9a51620c35809be4a89982476aa80701d852.content +0 -11
  58. package/.cache/effect/c67d971634d2dc8118b40452b61c9a51620c35809be4a89982476aa80701d852.hash +0 -1
  59. package/.cache/effect/f38adf43700dab905456a534a0690eaf882cff2cd576c731f23d6d14a3c3d659.content +0 -364
  60. package/.cache/effect/f38adf43700dab905456a534a0690eaf882cff2cd576c731f23d6d14a3c3d659.hash +0 -1
@@ -48,7 +48,7 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema, mak
48
48
  .pipe(silenceAndReportError), RequestContext.inherit(meta.requestContext, {
49
49
  id: RequestId(body.id),
50
50
  locale: "en",
51
- name: tsplus_module_1.ReasonableString(body._tag)
51
+ name: tsplus_module_1.NonEmptyString255(body._tag)
52
52
  })), "queue.drain", {
53
53
  attributes: { "queue.name": queueDrainName },
54
54
  parent: meta.span
@@ -64,4 +64,4 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema, mak
64
64
  };
65
65
  });
66
66
  }
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL1F1ZXVlTWFrZXIvbWVtUXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDL0IsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3pELE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FPMUIsU0FBaUIsRUFDakIsY0FBc0IsRUFDdEIsTUFBbUQsRUFDbkQsV0FBNEQsRUFDNUQsZUFBcUY7SUFFckYsT0FBTyxvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO1FBQzNCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUM5QixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7UUFDbkQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQzdELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO1FBRTdDLE1BQU0sVUFBVSxHQUFHLGdCQUFBLE1B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
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL1F1ZXVlTWFrZXIvbWVtUXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDL0IsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3pELE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FPMUIsU0FBaUIsRUFDakIsY0FBc0IsRUFDdEIsTUFBbUQsRUFDbkQsV0FBNEQsRUFDNUQsZUFBcUY7SUFFckYsT0FBTyxvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO1FBQzNCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUM5QixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7UUFDbkQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQzdELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO1FBRTdDLE1BQU0sVUFBVSxHQUFHLGdCQUFBLE1B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
@@ -43,7 +43,7 @@ export function makeServiceBusQueue(_queueName, queueDrainName, schema, drainSch
43
43
  .pipe(tsplus_module_5.annotateLogs({ body: tsplus_module_4.RecordPretty(tsplus_module_4.object$(body)), meta: tsplus_module_4.RecordPretty(tsplus_module_4.object$(meta)) })), handleEvent(body))).pipe(silenceAndReportError), RequestContext.inherit(meta.requestContext, {
44
44
  id: RequestId(body.id),
45
45
  locale: "en",
46
- name: tsplus_module_3.ReasonableString(body._tag)
46
+ name: tsplus_module_3.NonEmptyString255(body._tag)
47
47
  })), "queue.drain", {
48
48
  attributes: { "queue.name": queueDrainName },
49
49
  parent: meta.span
@@ -77,4 +77,4 @@ export function makeServiceBusQueue(_queueName, queueDrainName, schema, drainSch
77
77
  export function makeServiceBusLayers(url, queueName, queueDrainName) {
78
78
  return tsplus_module_10.provide(LiveServiceBusClient(url))((tsplus_module_10.merge(LiveSender(queueName))(LiveReceiver(queueDrainName))));
79
79
  }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2JxdWV1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvUXVldWVNYWtlci9zYnF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQ0wsWUFBWSxFQUNaLFVBQVUsRUFDVixvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBQ1YsTUFBTSx1Q0FBdUMsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQy9CLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMzRixPQUFPLEVBQWtCLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV4RDs7R0FFRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FPakMsVUFBa0IsRUFDbEIsY0FBc0IsRUFDdEIsTUFBbUQsRUFDbkQsV0FBNEQsRUFDNUQsZUFBcUY7SUFFckYsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDO1FBQ3hCLElBQUksRUFBRSxNQUFNO1FBQ1osSUFBSSxFQUFFLFNBQVM7S0FDaEIsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUM3RCxNQUFNLFVBQVUsbUNBQUcsTUFBTSxDQUFnQixDQUFBO0lB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
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2JxdWV1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvUXVldWVNYWtlci9zYnF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQ0wsWUFBWSxFQUNaLFVBQVUsRUFDVixvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBQ1YsTUFBTSx1Q0FBdUMsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQy9CLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMzRixPQUFPLEVBQWtCLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV4RDs7R0FFRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FPakMsVUFBa0IsRUFDbEIsY0FBc0IsRUFDdEIsTUFBbUQsRUFDbkQsV0FBNEQsRUFDNUQsZUFBcUY7SUFFckYsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDO1FBQ3hCLElBQUksRUFBRSxNQUFNO1FBQ1osSUFBSSxFQUFFLFNBQVM7S0FDaEIsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUM3RCxNQUFNLFVBQVUsbUNBQUcsTUFBTSxDQUFnQixDQUFBO0lB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
@@ -111,7 +111,7 @@ export declare function makeRepo<PM extends {
111
111
  value: A_1;
112
112
  readonly S: PM;
113
113
  };
114
- }) => Where | readonly [Where, ...Where[]], mode?: "and" | "or" | undefined) => Filter<PM>;
114
+ }) => Where | readonly [Where, ...Where[]], mode?: "or" | "and" | undefined) => Filter<PM>;
115
115
  };
116
116
  /**
117
117
  * only use this as a shortcut if you don't have the item already
@@ -3,7 +3,7 @@ import { Effect } from "effect/Effect";
3
3
  import { Context } from "effect/Context";
4
4
  import { Option } from "@effect-app/core/Option";
5
5
  import { FiberRef } from "effect/FiberRef";
6
- import { ReasonableString } from "@effect-app/prelude/schema";
6
+ import { NonEmptyString255 } from "@effect-app/prelude/schema";
7
7
  import { RequestContext } from "../RequestContext.js";
8
8
  declare const RequestContextContainer_base: (abstract new () => {}) & {
9
9
  flatMap<R1, E1, B>(f: (a: RequestContextContainer) => import("effect/Effect").Effect<R1, E1, B>): import("effect/Effect").Effect<RequestContextContainer | R1, E1, B>;
@@ -45,10 +45,10 @@ export declare const RCTag: import("effect/Context").Tag<RequestContext, Request
45
45
  export declare const spanAttributes: (ctx: RequestContext) => {
46
46
  "request.user.sub"?: import("@effect-app/prelude/ids").UserProfileId | undefined;
47
47
  "request.user.roles"?: unknown;
48
- "request.id": import("@effect-app/schema").ReasonableString;
49
- "request.name": import("@effect-app/schema").ReasonableString;
48
+ "request.id": import("@effect-app/schema").NonEmptyString50;
49
+ "request.name": import("@effect-app/schema").NonEmptyString255;
50
50
  "request.locale": "en" | "de";
51
- "request.namespace": import("@effect-app/schema").ReasonableString | undefined;
51
+ "request.namespace": import("@effect-app/schema").NonEmptyString255 | undefined;
52
52
  };
53
53
  export {};
54
54
  //# sourceMappingURL=RequestContextContainer.d.ts.map
@@ -41,7 +41,7 @@ export class RequestContextContainerImpl extends RequestContextContainer {
41
41
  _RequestContextContainerImpl_ref.set(this, void 0);
42
42
  this.update = (f) => tsplus_module_3.tap(tsplus_module_7.getAndUpdate(__classPrivateFieldGet(this, _RequestContextContainerImpl_ref, "f"), f), (rc) => tsplus_module_3.annotateCurrentSpan(spanAttributes_1(rc)));
43
43
  this.start = (a) => tsplus_module_3.zipRight(tsplus_module_8.restoreFromRequestContext(a))(tsplus_module_7.set(__classPrivateFieldGet(this, _RequestContextContainerImpl_ref, "f"), a));
44
- __classPrivateFieldSet(this, _RequestContextContainerImpl_ref, tsplus_module_7.unsafeMake(new RequestContext({ name: tsplus_module_6.ReasonableString("_root_"), rootId: RequestId("_root_"), locale: "en" })), "f");
44
+ __classPrivateFieldSet(this, _RequestContextContainerImpl_ref, tsplus_module_7.unsafeMake(new RequestContext({ name: tsplus_module_6.NonEmptyString255("_root_"), rootId: RequestId("_root_"), locale: "en" })), "f");
45
45
  }
46
46
  get requestContext() {
47
47
  return tsplus_module_7.get(__classPrivateFieldGet(this, _RequestContextContainerImpl_ref, "f"));
@@ -75,4 +75,4 @@ const spanAttributes_1 = (ctx) => ({
75
75
  : {}
76
76
  });
77
77
  export const spanAttributes = spanAttributes_1;
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHRDb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcXVlc3RDb250ZXh0Q29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFckQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFnQix1QkFBd0IsU0FBUSxnQkFBQSxRQUFRLEVBQTJCO0lBSXZGLE1BQU0sS0FBSyxHQUFHO1FBQ1osT0FBTyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBQ0QsTUFBTSxLQUFLLFNBQVM7UUFDbEIsT0FBTyx3QkFBQSw0QkFDUSxDQUFDLENBQWlCLEVBQUUsRUFBRSxDQUFDLDBCQUFrQixDQUFDLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyxFQUN6RSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQzFCLHVCQUFBLGNBQWMsQ0FBUztZQUNyQixDQUFDLENBQUMsb0JBQUEsY0FBYyxDQUFDLEtBQUssQ0FBQyxjQUFjLHVCQUFpQjtZQUN0RCxDQUFDLENBQUMsZ0RBQW1CLENBQ3hCLENBQUE7SUFDTCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsdUJBQXVCO0lBRXRFO1FBQ0UsS0FBSyxFQUFFLENBQUE7UUFGVCxtREFBOEI7UUFZckIsV0FBTSxHQUFHLENBQUMsQ0FBd0MsRUFBRSxFQUFFLENBQzdELG9CQUFBLDZCQUFBLHVCQUFBLElBQUksd0NBQUssRUFBYyxDQUFDLENBQUMsRUFBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMscURBQTJCLEVBQUUsRUFBZ0IsQ0FBQyxDQUFBO1FBQzdFLFVBQUssR0FBRyxDQUFDLENBQWlCLEVBQUUsRUFBRSxvRUFBb0IsQ0FBQyxHQUFwQixvQkFBQSx1QkFBQSxJQUFJLHdDQUFLLEVBQUssQ0FBQyxDQUFDLENBQW1CLENBQUE7UUFYekUsdUJBQUEsSUFBSSxvQ0FBUSwyQkFDVixJQUFJLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxnQkFBQSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUNwRyxNQUFBLENBQUE7SUFDSCxDQUFDO0lBRUQsSUFBYSxjQUFjO1FBQ3pCLDJCQUFPLHVCQUFBLElBQUksd0NBQUssRUFBSTtJQUN0QixDQUFDO0NBS0Y7O0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsdUJBQTZELHVCQUF1QixFQUFwRixxQkFBWSxHQUFHLEVBQUUsQ0FBQyxJQUFJLDJCQUEyQixFQUFFLENBQUMsQ0FBaUMsQ0FBQTtBQUV6Ryw0Q0FBNEM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLGdCQUFBLEdBQUcsRUFBa0IsQ0FBQTtBQUUxQzs7R0FFRztBQUNJLE1BQU0sbUJBQWlCLENBQUMsR0FBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxZQUFZLEVBQUUsR0FBRyxDQUFDLEVBQUU7SUFDcEIsY0FBYyxFQUFFLEdBQUcsQ0FBQyxJQUFJO0lBQ3hCLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxNQUFNO0lBQzVCLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxTQUFTO0lBQ2xDLEdBQUcsR0FBRyxDQUFDLFdBQVcsRUFBRSxHQUFHO1FBQ3JCLENBQUMsQ0FBQztZQUNBLGtCQUFrQixFQUFFLEdBQUc7aUJBQ3BCLFdBQVc7aUJBQ1gsR0FBRztZQUNOLG9CQUFvQixFQUFFLE9BQU8sSUFBSSxHQUFHO2lCQUMvQixXQUFXO2dCQUNkLENBQUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEtBQUs7Z0JBQ3ZCLENBQUMsQ0FBQyxTQUFTO1NBQ2Q7UUFDRCxDQUFDLENBQUMsRUFBRTtDQUNQLENBQUMsQ0FBQTthQWhCVyxjQUFjIn0=
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHRDb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcXVlc3RDb250ZXh0Q29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFckQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFnQix1QkFBd0IsU0FBUSxnQkFBQSxRQUFRLEVBQTJCO0lBSXZGLE1BQU0sS0FBSyxHQUFHO1FBQ1osT0FBTyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBQ0QsTUFBTSxLQUFLLFNBQVM7UUFDbEIsT0FBTyx3QkFBQSw0QkFDUSxDQUFDLENBQWlCLEVBQUUsRUFBRSxDQUFDLDBCQUFrQixDQUFDLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyxFQUN6RSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQzFCLHVCQUFBLGNBQWMsQ0FBUztZQUNyQixDQUFDLENBQUMsb0JBQUEsY0FBYyxDQUFDLEtBQUssQ0FBQyxjQUFjLHVCQUFpQjtZQUN0RCxDQUFDLENBQUMsZ0RBQW1CLENBQ3hCLENBQUE7SUFDTCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsdUJBQXVCO0lBRXRFO1FBQ0UsS0FBSyxFQUFFLENBQUE7UUFGVCxtREFBOEI7UUFZckIsV0FBTSxHQUFHLENBQUMsQ0FBd0MsRUFBRSxFQUFFLENBQzdELG9CQUFBLDZCQUFBLHVCQUFBLElBQUksd0NBQUssRUFBYyxDQUFDLENBQUMsRUFBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMscURBQTJCLEVBQUUsRUFBZ0IsQ0FBQyxDQUFBO1FBQzdFLFVBQUssR0FBRyxDQUFDLENBQWlCLEVBQUUsRUFBRSxvRUFBb0IsQ0FBQyxHQUFwQixvQkFBQSx1QkFBQSxJQUFJLHdDQUFLLEVBQUssQ0FBQyxDQUFDLENBQW1CLENBQUE7UUFYekUsdUJBQUEsSUFBSSxvQ0FBUSwyQkFDVixJQUFJLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxnQkFBQSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUNyRyxNQUFBLENBQUE7SUFDSCxDQUFDO0lBRUQsSUFBYSxjQUFjO1FBQ3pCLDJCQUFPLHVCQUFBLElBQUksd0NBQUssRUFBSTtJQUN0QixDQUFDO0NBS0Y7O0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsdUJBQTZELHVCQUF1QixFQUFwRixxQkFBWSxHQUFHLEVBQUUsQ0FBQyxJQUFJLDJCQUEyQixFQUFFLENBQUMsQ0FBaUMsQ0FBQTtBQUV6Ryw0Q0FBNEM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLGdCQUFBLEdBQUcsRUFBa0IsQ0FBQTtBQUUxQzs7R0FFRztBQUNJLE1BQU0sbUJBQWlCLENBQUMsR0FBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxZQUFZLEVBQUUsR0FBRyxDQUFDLEVBQUU7SUFDcEIsY0FBYyxFQUFFLEdBQUcsQ0FBQyxJQUFJO0lBQ3hCLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxNQUFNO0lBQzVCLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxTQUFTO0lBQ2xDLEdBQUcsR0FBRyxDQUFDLFdBQVcsRUFBRSxHQUFHO1FBQ3JCLENBQUMsQ0FBQztZQUNBLGtCQUFrQixFQUFFLEdBQUc7aUJBQ3BCLFdBQVc7aUJBQ1gsR0FBRztZQUNOLG9CQUFvQixFQUFFLE9BQU8sSUFBSSxHQUFHO2lCQUMvQixXQUFXO2dCQUNkLENBQUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEtBQUs7Z0JBQ3ZCLENBQUMsQ0FBQyxTQUFTO1NBQ2Q7UUFDRCxDQUFDLENBQUMsRUFBRTtDQUNQLENBQUMsQ0FBQTthQWhCVyxjQUFjIn0=
@@ -7,8 +7,8 @@ import type { DBRecord } from "./shared.js";
7
7
  import { OptimisticLockException } from "./shared.js";
8
8
  import * as simpledb from "./simpledb.js";
9
9
  export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>, indexes: IndexingPolicy) => import("effect/Effect").Effect<Cosmos.CosmosClient, import("effect/Cause").UnknownException, {
10
- find: (id: string) => import("effect/Effect").Effect<Cosmos.CosmosClient | simpledb.RecordCache | RDecode, import("effect/Cause").UnknownException | simpledb.InvalidStateError, import("effect/Option").Option<A>>;
10
+ find: (id: string) => import("effect/Effect").Effect<RDecode | Cosmos.CosmosClient | simpledb.RecordCache, import("effect/Cause").UnknownException | simpledb.InvalidStateError, import("effect/Option").Option<A>>;
11
11
  findBy: (parameters: Record<string, string>) => import("effect/Effect").Effect<Cosmos.CosmosClient, import("effect/Cause").UnknownException, import("effect/Option").Option<any>>;
12
- save: (record: A) => import("effect/Effect").Effect<Cosmos.CosmosClient | simpledb.RecordCache | REncode, OptimisticLockException, A>;
12
+ save: (record: A) => import("effect/Effect").Effect<REncode | Cosmos.CosmosClient | simpledb.RecordCache, OptimisticLockException, A>;
13
13
  }>;
14
14
  //# sourceMappingURL=cosmosdb.d.ts.map
@@ -4,9 +4,9 @@ import type { DBRecord, Index } from "./shared.js";
4
4
  import { CouldNotAquireDbLockException } from "./shared.js";
5
5
  import * as simpledb from "./simpledb.js";
6
6
  export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index, dir?: string) => {
7
- find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode, simpledb.InvalidStateError, import("effect/Option").Option<A>>;
7
+ find: (id: string) => import("effect/Effect").Effect<RDecode | simpledb.RecordCache, simpledb.InvalidStateError, import("effect/Option").Option<A>>;
8
8
  findByIndex: (index: Index) => import("effect/Effect").Effect<never, never, import("effect/Option").Option<TKey & {}>>;
9
- save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
9
+ save: (record: A) => import("effect/Effect").Effect<REncode | simpledb.RecordCache, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
10
10
  };
11
11
  export declare function initialise(dir: string): void;
12
12
  //# sourceMappingURL=diskdb.d.ts.map
@@ -5,8 +5,8 @@ import * as S from "@effect-app/schema";
5
5
  import type { DBRecord } from "./shared.js";
6
6
  import * as simpledb from "./simpledb.js";
7
7
  export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>) => {
8
- find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode, simpledb.InvalidStateError | S.CondemnException, import("effect/Option").Option<A>>;
8
+ find: (id: string) => import("effect/Effect").Effect<RDecode | simpledb.RecordCache, S.CondemnException | simpledb.InvalidStateError, import("effect/Option").Option<A>>;
9
9
  findBy: <V extends Partial<A>>(keys: V, eq: Equivalence<V>) => import("effect/Effect").Effect<RDecode, S.CondemnException, import("effect/Option").Option<A & {}>>;
10
- save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode, import("./shared.js").OptimisticLockException | simpledb.InvalidStateError | S.CondemnException, A>;
10
+ save: (record: A) => import("effect/Effect").Effect<REncode | simpledb.RecordCache, S.CondemnException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
11
11
  };
12
12
  //# sourceMappingURL=memdb.d.ts.map
@@ -6,8 +6,8 @@ import type { DBRecord } from "./shared.js";
6
6
  import { OptimisticLockException } from "./shared.js";
7
7
  import * as simpledb from "./simpledb.js";
8
8
  export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>, indexes: IndexDescription[]) => import("effect/Effect").Effect<MongoClient, import("effect/Cause").UnknownException, {
9
- find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode | MongoClient, import("effect/Cause").UnknownException | simpledb.InvalidStateError, import("effect/Option").Option<A>>;
9
+ find: (id: string) => import("effect/Effect").Effect<RDecode | MongoClient | simpledb.RecordCache, import("effect/Cause").UnknownException | simpledb.InvalidStateError, import("effect/Option").Option<A>>;
10
10
  findBy: (keys: Record<string, string>) => import("effect/Effect").Effect<MongoClient, import("effect/Cause").UnknownException, import("effect/Option").Option<TKey>>;
11
- save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode | MongoClient, OptimisticLockException, A>;
11
+ save: (record: A) => import("effect/Effect").Effect<REncode | MongoClient | simpledb.RecordCache, OptimisticLockException, A>;
12
12
  }>;
13
13
  //# sourceMappingURL=mongodb.d.ts.map
@@ -6,9 +6,9 @@ import type { DBRecord, Index } from "./shared.js";
6
6
  import { CouldNotAquireDbLockException } from "./shared.js";
7
7
  import * as simpledb from "./simpledb.js";
8
8
  export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index) => {
9
- find: (id: string) => import("effect/Effect").Effect<RedisClient | simpledb.RecordCache | RDecode, simpledb.InvalidStateError, import("effect/Option").Option<A>>;
9
+ find: (id: string) => import("effect/Effect").Effect<RDecode | RedisClient | simpledb.RecordCache, simpledb.InvalidStateError, import("effect/Option").Option<A>>;
10
10
  findByIndex: (index: Index) => import("effect/Effect").Effect<RedisClient, import("@effect-app/infra-adapters/redis-client").ConnectionException, import("effect/Option").Option<TKey>>;
11
- save: (record: A) => import("effect/Effect").Effect<RedisClient | simpledb.RecordCache | REncode, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
11
+ save: (record: A) => import("effect/Effect").Effect<REncode | RedisClient | simpledb.RecordCache, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
12
12
  };
13
13
  declare const RedisSerializedDBRecord_base: S.Class<RedisSerializedDBRecord, S.SchemaProperties<S.ToProps<{
14
14
  version: S.SchemaDefaultSchema<unknown, string, string, string, {}>;
@@ -17,7 +17,7 @@ export interface RecordCache extends ReturnType<typeof makeLiveRecordCache> {
17
17
  }
18
18
  export declare const RecordCache: import("effect/Context").Tag<RecordCache, RecordCache>;
19
19
  export declare const LiveRecordCache: import("effect/Layer").Layer<never, never, RecordCache>;
20
- export declare function find<R, RDecode, EDecode, E, EA, A>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, decode: (d: EA) => Effect<RDecode, EDecode, A>, type: string): (id: string) => import("effect/Effect").Effect<RecordCache | R | RDecode, InvalidStateError | E, import("effect/Option").Option<A>>;
21
- export declare function storeDirectly<R, E, TKey extends string, A extends DBRecord<TKey>>(save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, type: string): (record: A) => import("effect/Effect").Effect<RecordCache | R, E, A>;
22
- export declare function store<R, E, R2, E2, TKey extends string, EA, A extends DBRecord<TKey>>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, lock: (id: string) => Effect<R2 | Scope, E2, unknown>, type: string): (record: A) => import("effect/Effect").Effect<RecordCache | R | Exclude<R2, import("effect/Scope").Scope>, OptimisticLockException | InvalidStateError | E | E2, A>;
20
+ export declare function find<R, RDecode, EDecode, E, EA, A>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, decode: (d: EA) => Effect<RDecode, EDecode, A>, type: string): (id: string) => import("effect/Effect").Effect<R | RDecode | RecordCache, E | InvalidStateError, import("effect/Option").Option<A>>;
21
+ export declare function storeDirectly<R, E, TKey extends string, A extends DBRecord<TKey>>(save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, type: string): (record: A) => import("effect/Effect").Effect<R | RecordCache, E, A>;
22
+ export declare function store<R, E, R2, E2, TKey extends string, EA, A extends DBRecord<TKey>>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, lock: (id: string) => Effect<R2 | Scope, E2, unknown>, type: string): (record: A) => import("effect/Effect").Effect<R | RecordCache | Exclude<R2, import("effect/Scope").Scope>, E | E2 | OptimisticLockException | InvalidStateError, A>;
23
23
  //# sourceMappingURL=simpledb.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect-app/infra",
3
- "version": "0.108.4",
3
+ "version": "0.109.0",
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/prelude": "0.84.0",
22
+ "@effect-app/infra-adapters": "0.68.0",
21
23
  "@effect-app/core": "0.79.1",
22
- "@effect-app/prelude": "0.83.0",
23
- "@effect-app/schema": "0.75.3",
24
- "@effect-app/infra-adapters": "0.67.9"
24
+ "@effect-app/schema": "0.76.0"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@babel/cli": "^7.23.4",
@@ -1,275 +0,0 @@
1
- export const $in = $in_1;
2
- export const $notIn = $notIn_1;
3
- export const $is = $is_1;
4
- export const $includes = $includes_1;
5
- export const $notIncludes = $notIncludes_1;
6
- export const $isnt = $isnt_1;
7
- export const $gt = $gt_1;
8
- export const $gte = $gte_1;
9
- export const $lt = $lt_1;
10
- export const $lte = $lte_1;
11
- export const $startsWith = $startsWith_1;
12
- export const $endsWith = $endsWith_1;
13
- export const $contains = $contains_1;
14
- export function makeWhereFilter() {
15
- const f = makeWhereFilter_();
16
- return f;
17
- }
18
- function makeHelpers() {
19
- const helpers = makeHelpers_();
20
- return helpers;
21
- }
22
- function makeHelpers_() {
23
- return {
24
- in(path, value) {
25
- return { key: path, value, t: "in" };
26
- },
27
- notIn(path, value) {
28
- return { key: path, value, t: "not-in" };
29
- },
30
- includes(path, value) {
31
- return { key: path, value, t: "includes" };
32
- },
33
- notIncludes(path, value) {
34
- return { key: path, value, t: "not-includes" };
35
- },
36
- eq(path, value) {
37
- return { key: path, value, t: "eq" };
38
- },
39
- notEq(path, value) {
40
- return { key: path, value, t: "not-eq" };
41
- },
42
- gt(path, value) {
43
- return { key: path, value, t: "gt" };
44
- },
45
- gte(path, value) {
46
- return { key: path, value, t: "gte" };
47
- },
48
- lt(path, value) {
49
- return { key: path, value, t: "lt" };
50
- },
51
- lte(path, value) {
52
- return { key: path, value, t: "lte" };
53
- }
54
- };
55
- }
56
- function makeWhereFilter_() {
57
- const helpers = makeHelpers();
58
- const f = Object.assign(helpers.eq, helpers);
59
- return f;
60
- }
61
- /**
62
- * @tsplus fluent string $in
63
- * @tsplus fluent boolean $in
64
- * @tsplus fluent number $in
65
- */
66
- function $in_1(_, ...v) {
67
- return $$in(v);
68
- }
69
- /**
70
- * @tsplus fluent string $notIn
71
- * @tsplus fluent boolean $notIn
72
- * @tsplus fluent number $notIn
73
- */
74
- function $notIn_1(_, ...v) {
75
- return $$notIn(v);
76
- }
77
- /**
78
- * @tsplus fluent string $is
79
- * @tsplus fluent Date $is
80
- * @tsplus fluent boolean $is
81
- * @tsplus fluent number $is
82
- * @tsplus fluent Object $is
83
- */
84
- function $is_1(_, v) {
85
- return $$is(v);
86
- }
87
- /**
88
- * @tsplus fluent ReadonlyArray $includes
89
- */
90
- function $includes_1(_, v) {
91
- return $$includes(v);
92
- }
93
- /**
94
- * @tsplus fluent ReadonlyArray $notIncludes
95
- */
96
- function $notIncludes_1(_, v) {
97
- return $$notIncludes(v);
98
- }
99
- /**
100
- * @tsplus fluent string $isnt
101
- * @tsplus fluent Date $isnt
102
- * @tsplus fluent boolean $isnt
103
- * @tsplus fluent number $isnt
104
- * @tsplus fluent Object $isnt
105
- */
106
- function $isnt_1(_, v) {
107
- return $$isnt(v);
108
- }
109
- /**
110
- * @tsplus fluent string $gt
111
- * @tsplus fluent Date $gt
112
- * @tsplus fluent boolean $gt
113
- * @tsplus fluent number $gt
114
- * @tsplus fluent Object $gt
115
- */
116
- function $gt_1(_, v) {
117
- return $$gt(v);
118
- }
119
- /**
120
- * @tsplus fluent string $gte
121
- * @tsplus fluent Date $gte
122
- * @tsplus fluent boolean $gte
123
- * @tsplus fluent number $gte
124
- * @tsplus fluent Object $gte
125
- */
126
- function $gte_1(_, v) {
127
- return $$gte(v);
128
- }
129
- /**
130
- * @tsplus fluent string $lt
131
- * @tsplus fluent Date $lt
132
- * @tsplus fluent boolean $lt
133
- * @tsplus fluent number $lt
134
- * @tsplus fluent Object $lt
135
- */
136
- function $lt_1(_, v) {
137
- return $$lt(v);
138
- }
139
- /**
140
- * @tsplus fluent string $lte
141
- * @tsplus fluent Date $lte
142
- * @tsplus fluent boolean $lte
143
- * @tsplus fluent number $lte
144
- * @tsplus fluent Object $lte
145
- */
146
- function $lte_1(_, v) {
147
- return $$lte(v);
148
- }
149
- function $is__(v) {
150
- return (_) => $is_1(_, v);
151
- }
152
- function $isnt__(v) {
153
- return (_) => $isnt_1(_, v);
154
- }
155
- function $includes__(v) {
156
- return (_) => $includes_1(_, v);
157
- }
158
- function $notIncludes__(v) {
159
- return (_) => $notIncludes_1(_, v);
160
- }
161
- function $lt__(v) {
162
- return (_) => $lt_1(_, v);
163
- }
164
- function $lte__(v) {
165
- return (_) => $lte_1(_, v);
166
- }
167
- function $gt__(v) {
168
- return (_) => $gt_1(_, v);
169
- }
170
- function $gte__(v) {
171
- return (_) => $gte_1(_, v);
172
- }
173
- function $in__(...v) {
174
- return (_) => $in_1(_, ...v);
175
- }
176
- function $notIn__(...v) {
177
- return (_) => $notIn_1(_, ...v);
178
- }
179
- function $startsWith__(v) {
180
- return (_) => $startsWith_1(_, v);
181
- }
182
- function $endsWith__(v) {
183
- return (_) => $endsWith_1(_, v);
184
- }
185
- function $contains__(v) {
186
- return (_) => $contains_1(_, v);
187
- }
188
- export const Filters = {
189
- $is: $is__,
190
- $isnt: $isnt__,
191
- $in: $in__,
192
- $notIn: $notIn__,
193
- $gt: $gt__,
194
- $gte: $gte__,
195
- $lt: $lt__,
196
- $lte: $lte__,
197
- $contains: $contains__,
198
- $endsWith: $endsWith__,
199
- $startsWith: $startsWith__,
200
- $includes: $includes__,
201
- $notIncludes: $notIncludes__
202
- };
203
- /**
204
- * @tsplus fluent string $startsWith
205
- */
206
- function $startsWith_1(_, v) {
207
- return $$startsWith(v);
208
- }
209
- /**
210
- * @tsplus fluent string $endsWith
211
- */
212
- function $endsWith_1(_, v) {
213
- return $$endsWith(v);
214
- }
215
- /**
216
- * @tsplus fluent string $contains
217
- */
218
- function $contains_1(_, v) {
219
- return $$contains(v);
220
- }
221
- function $$in(v) {
222
- return { t: "in", v };
223
- }
224
- function $$notIn(v) {
225
- return { t: "not-in", v };
226
- }
227
- function $$is(v) {
228
- return { t: "eq", v };
229
- }
230
- function $$isnt(v) {
231
- return { t: "not-eq", v };
232
- }
233
- function $$includes(v) {
234
- return { t: "includes", v };
235
- }
236
- function $$notIncludes(v) {
237
- return { t: "not-includes", v };
238
- }
239
- function $$lt(v) {
240
- return { t: "lt", v };
241
- }
242
- function $$lte(v) {
243
- return { t: "lte", v };
244
- }
245
- function $$gt(v) {
246
- return { t: "gt", v };
247
- }
248
- function $$gte(v) {
249
- return { t: "gte", v };
250
- }
251
- function $$contains(v) {
252
- return { t: "contains", v };
253
- }
254
- function $$startsWith(v) {
255
- return { t: "starts-with", v };
256
- }
257
- function $$endsWith(v) {
258
- return { t: "ends-with", v };
259
- }
260
- function f(p, b) {
261
- if (typeof b === "function")
262
- b = b(undefined);
263
- const obj = typeof b === "object" && b !== null;
264
- return makeFilter(p, obj ? b.v : b, obj ? b.t ?? "eq" : "eq");
265
- }
266
- function makeFilter(path, value, t) {
267
- return { key: path, t, value };
268
- }
269
- export function makeFilters() {
270
- function test(p, v) {
271
- return f(p, v);
272
- }
273
- return test;
274
- }
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vX3NyYy9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6ImFBdUlnQixHQUFHO2FBWUgsTUFBTTthQWNOLEdBQUc7YUFPSCxTQUFTO2FBT1QsWUFBWTthQWFaLEtBQUs7YUFXTCxHQUFHO2FBV0gsSUFBSTthQVdKLEdBQUc7YUFXSCxJQUFJO2FBK0VKLFdBQVc7YUFPWCxTQUFTO2FBT1QsU0FBUztBQTNUekIsTUFBTSxVQUFVLGVBQWU7SUFDN0IsTUFBTSxDQUFDLEdBQUcsZ0JBQWdCLEVBQWdCLENBQUE7SUFDMUMsT0FBTyxDQUE4QixDQUFBO0FBQ3ZDLENBQUM7QUFFRCxTQUFTLFdBQVc7SUFDbEIsTUFBTSxPQUFPLEdBQUcsWUFBWSxFQUFnQixDQUFBO0lBQzVDLE9BQU8sT0FBcUMsQ0FBQTtBQUM5QyxDQUFDO0FBSUQsU0FBUyxZQUFZO0lBSW5CLE9BQU87UUFDTCxFQUFFLENBRUEsSUFBZ0IsRUFDaEIsS0FBbUI7WUFFbkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFhLEVBQUUsQ0FBQTtRQUMvQyxDQUFDO1FBQ0QsS0FBSyxDQUVILElBQWdCLEVBQ2hCLEtBQW1CO1lBRW5CLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsUUFBaUIsRUFBRSxDQUFBO1FBQ25ELENBQUM7UUFDRCxRQUFRLENBRU4sSUFBZ0IsRUFDaEIsS0FBUTtZQUVSLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsVUFBbUIsRUFBRSxDQUFBO1FBQ3JELENBQUM7UUFDRCxXQUFXLENBRVQsSUFBZ0IsRUFDaEIsS0FBUTtZQUVSLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsY0FBdUIsRUFBRSxDQUFBO1FBQ3pELENBQUM7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QTtBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZpZWxkVmFsdWVzIH0gZnJvbSBcIi4vZmlsdGVyL3R5cGVzL2ZpZWxkcy5qc1wiXG5pbXBvcnQgdHlwZSB7IEZpZWxkUGF0aCwgRmllbGRQYXRoVmFsdWUgfSBmcm9tIFwiLi9maWx0ZXIvdHlwZXMvcGF0aC9lYWdlci5qc1wiXG5pbXBvcnQgdHlwZSB7IFN1cHBvcnRlZFZhbHVlcywgV2hlcmUgfSBmcm9tIFwiLi9zZXJ2aWNlcy9TdG9yZS5qc1wiXG5cbi8qKlxuICogdGhlIGZ1bmN0aW9uIGRlZmF1bHRzIHRvIFwiZXFcIiwgYnV0IGhhcyBhZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIG5vdEVxLCBpbiBhbmQgbm90SW5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXaGVyZUZpbHRlcjxURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcz5cbiAgZXh0ZW5kcyBSZXR1cm5UeXBlPHR5cGVvZiBtYWtlV2hlcmVGaWx0ZXJfPFRGaWVsZFZhbHVlcz4+XG57fVxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VXaGVyZUZpbHRlcjxURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcz4oKSB7XG4gIGNvbnN0IGYgPSBtYWtlV2hlcmVGaWx0ZXJfPFRGaWVsZFZhbHVlcz4oKVxuICByZXR1cm4gZiBhcyBXaGVyZUZpbHRlcjxURmllbGRWYWx1ZXM+XG59XG5cbmZ1bmN0aW9uIG1ha2VIZWxwZXJzPFRGaWVsZFZhbHVlcyBleHRlbmRzIEZpZWxkVmFsdWVzPigpIHtcbiAgY29uc3QgaGVscGVycyA9IG1ha2VIZWxwZXJzXzxURmllbGRWYWx1ZXM+KClcbiAgcmV0dXJuIGhlbHBlcnMgYXMgV2hlcmVIZWxwZXJzPFRGaWVsZFZhbHVlcz5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBXaGVyZUhlbHBlcnM8VEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXM+IGV4dGVuZHMgUmV0dXJuVHlwZTx0eXBlb2YgbWFrZUhlbHBlcnNfPFRGaWVsZFZhbHVlcz4+IHt9XG5cbmZ1bmN0aW9uIG1ha2VIZWxwZXJzXzxURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcz4oKSB7XG4gIHR5cGUgUGF0aHMgPSBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPlxuICB0eXBlIFZhbHVlPFRGaWVsZE5hbWUgZXh0ZW5kcyBQYXRocz4gPSBGaWVsZFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFRGaWVsZE5hbWU+XG5cbiAgcmV0dXJuIHtcbiAgICBpbjxURmllbGROYW1lIGV4dGVuZHMgUGF0aHMsIFYgZXh0ZW5kcyBWYWx1ZTxURmllbGROYW1lPj4oXG4gICAgICB0aGlzOiB2b2lkLFxuICAgICAgcGF0aDogVEZpZWxkTmFtZSxcbiAgICAgIHZhbHVlOiByZWFkb25seSBWW11cbiAgICApIHtcbiAgICAgIHJldHVybiB7IGtleTogcGF0aCwgdmFsdWUsIHQ6IFwiaW5cIiBhcyBjb25zdCB9XG4gICAgfSxcbiAgICBub3RJbjxURmllbGROYW1lIGV4dGVuZHMgUGF0aHMsIFYgZXh0ZW5kcyBWYWx1ZTxURmllbGROYW1lPj4oXG4gICAgICB0aGlzOiB2b2lkLFxuICAgICAgcGF0aDogVEZpZWxkTmFtZSxcbiAgICAgIHZhbHVlOiByZWFkb25seSBWW11cbiAgICApIHtcbiAgICAgIHJldHVybiB7IGtleTogcGF0aCwgdmFsdWUsIHQ6IFwibm90LWluXCIgYXMgY29uc3QgfVxuICAgIH0sXG4gICAgaW5jbHVkZXM8VEZpZWxkTmFtZSBleHRlbmRzIFBhdGhzLCBWIGV4dGVuZHMgVmFsdWU8VEZpZWxkTmFtZT4+KFxuICAgICAgdGhpczogdm9pZCxcbiAgICAgIHBhdGg6IFRGaWVsZE5hbWUsXG4gICAgICB2YWx1ZTogVlxuICAgICkge1xuICAgICAgcmV0dXJuIHsga2V5OiBwYXRoLCB2YWx1ZSwgdDogXCJpbmNsdWRlc1wiIGFzIGNvbnN0IH1cbiAgICB9LFxuICAgIG5vdEluY2x1ZGVzPFRGaWVsZE5hbWUgZXh0ZW5kcyBQYXRocywgViBleHRlbmRzIFZhbHVlPFRGaWVsZE5hbWU+PihcbiAgICAgIHRoaXM6IHZvaWQsXG4gICAgICBwYXRoOiBURmllbGROYW1lLFxuICAgICAgdmFsdWU6IFZcbiAgICApIHtcbiAgICAgIHJldHVybiB7IGtleTogcGF0aCwgdmFsdWUsIHQ6IFwibm90LWluY2x1ZGVzXCIgYXMgY29uc3QgfVxuICAgIH0sXG4gICAgZXE8VEZpZWxkTmFtZSBleHRlbmRzIFBhdGhzLCBWIGV4dGVuZHMgVmFsdWU8VEZpZWxkTmFtZT4+KFxuICAgICAgdGhpczogdm9pZCxcbiAgICAgIHBhdGg6IFRGaWVsZE5hbWUsXG4gICAgICB2YWx1ZTogVlxuICAgICkge1xuICAgICAgcmV0dXJuIHsga2V5OiBwYXRoLCB2YWx1ZSwgdDogXCJlcVwiIGFzIGNvbnN0IH1cbiAgICB9LFxuICAgIG5vdEVxPFRGaWVsZE5hbWUgZXh0ZW5kcyBQYXRocywgViBleHRlbmRzIFZhbHVlPFRGaWVsZE5hbWU+PihcbiAgICAgIHRoaXM6IHZvaWQsXG4gICAgICBwYXRoOiBURmllbGROYW1lLFxuICAgICAgdmFsdWU6IFZcbiAgICApIHtcbiAgICAgIHJldHVybiB7IGtleTogcGF0aCwgdmFsdWUsIHQ6IFwibm90LWVxXCIgYXMgY29uc3QgfVxuICAgIH0sXG4gICAgZ3Q8VEZpZWxkTmFtZSBleHRlbmRzIFBhdGhzLCBWIGV4dGVuZHMgVmFsdWU8VEZpZWxkTmFtZT4+KFxuICAgICAgdGhpczogdm9pZCxcbiAgICAgIHBhdGg6IFRGaWVsZE5hbWUsXG4gICAgICB2YWx1ZTogVlxuICAgICkge1xuICAgICAgcmV0dXJuIHsga2V5OiBwYXRoLCB2YWx1ZSwgdDogXCJndFwiIGFzIGNvbnN0IH1cbiAgICB9LFxuICAgIGd0ZTxURmllbGROYW1lIGV4dGVuZHMgUGF0aHMsIFYgZXh0ZW5kcyBWYWx1ZTxURmllbGROYW1lPj4oXG4gICAgICB0aGlzOiB2b2lkLFxuICAgICAgcGF0aDogVEZpZWxkTmFtZSxcbiAgICAgIHZhbHVlOiBWXG4gICAgKSB7XG4gICAgICByZXR1cm4geyBrZXk6IHBhdGgsIHZhbHVlLCB0OiBcImd0ZVwiIGFzIGNvbnN0IH1cbiAgICB9LFxuICAgIGx0PFRGaWVsZE5hbWUgZXh0ZW5kcyBQYXRocywgViBleHRlbmRzIFZhbHVlPFRGaWVsZE5hbWU+PihcbiAgICAgIHRoaXM6IHZvaWQsXG4gICAgICBwYXRoOiBURmllbGROYW1lLFxuICAgICAgdmFsdWU6IFZcbiAgICApIHtcbiAgICAgIHJldHVybiB7IGtleTogcGF0aCwgdmFsdWUsIHQ6IFwibHRcIiBhcyBjb25zdCB9XG4gICAgfSxcbiAgICBsdGU8VEZpZWxkTmFtZSBleHRlbmRzIFBhdGhzLCBWIGV4dGVuZHMgVmFsdWU8VEZpZWxkTmFtZT4+KFxuICAgICAgdGhpczogdm9pZCxcbiAgICAgIHBhdGg6IFRGaWVsZE5hbWUsXG4gICAgICB2YWx1ZTogVlxuICAgICkge1xuICAgICAgcmV0dXJuIHsga2V5OiBwYXRoLCB2YWx1ZSwgdDogXCJsdGVcIiBhcyBjb25zdCB9XG4gICAgfVxuICB9IHNhdGlzZmllcyBSZWNvcmQ8c3RyaW5nLCAoLi4uYXJnczogYW55W10pID0+IFdoZXJlPlxufVxuXG5mdW5jdGlvbiBtYWtlV2hlcmVGaWx0ZXJfPFRGaWVsZFZhbHVlcyBleHRlbmRzIEZpZWxkVmFsdWVzPigpIHtcbiAgY29uc3QgaGVscGVycyA9IG1ha2VIZWxwZXJzPFRGaWVsZFZhbHVlcz4oKVxuICBjb25zdCBmID0gT2JqZWN0LmFzc2lnbihoZWxwZXJzLmVxLCBoZWxwZXJzKVxuICByZXR1cm4gZlxufVxuXG5leHBvcnQgdHlwZSBXaGVyZVZhbHVlPFxuICBUIGV4dGVuZHNcbiAgICB8IFwiZXFcIlxuICAgIHwgXCJub3QtZXFcIlxuICAgIHwgXCJsdFwiXG4gICAgfCBcImd0XCJcbiAgICB8IFwibHRlXCJcbiAgICB8IFwiZ3RlXCJcbiAgICB8IFwic3RhcnRzLXdpdGhcIlxuICAgIHwgXCJlbmRzLXdpdGhcIlxuICAgIHwgXCJjb250YWluc1wiXG4gICAgfCBcImluXCJcbiAgICB8IFwibm90LWluXCJcbiAgICB8IFwiaW5jbHVkZXNcIlxuICAgIHwgXCJub3QtaW5jbHVkZXNcIixcbiAgQSwgLy8gZXh0ZW5kcyBTdXBwb3J0ZWRWYWx1ZXMsXG4gIFYgZXh0ZW5kcyBBID0gQVxuPiA9IHsgdDogVDsgdjogViB9XG5cbmV4cG9ydCB0eXBlIFdoZXJlSW48VCBleHRlbmRzIFwiaW5cIiB8IFwibm90LWluXCIsIFYsIFZhbHVlcyBleHRlbmRzIHJlYWRvbmx5IFZbXSA9IHJlYWRvbmx5IFZbXT4gPSB7XG4gIHQ6IFRcbiAgdjogVmFsdWVzXG59XG5cbi8qKlxuICogQHRzcGx1cyBmbHVlbnQgc3RyaW5nICRpblxuICogQHRzcGx1cyBmbHVlbnQgYm9vbGVhbiAkaW5cbiAqIEB0c3BsdXMgZmx1ZW50IG51bWJlciAkaW5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uICRpbjxBIGV4dGVuZHMgU3VwcG9ydGVkVmFsdWVzLCBWYWx1ZXMgZXh0ZW5kcyByZWFkb25seSBBW10+KFxuICBfOiBBLFxuICAuLi52OiBWYWx1ZXNcbik6IFdoZXJlSW48XCJpblwiLCBBLCBWYWx1ZXM+IHtcbiAgcmV0dXJuICQkaW4odilcbn1cblxuLyoqXG4gKiBAdHNwbHVzIGZsdWVudCBzdHJpbmcgJG5vdEluXG4gKiBAdHNwbHVzIGZsdWVudCBib29sZWFuICRub3RJblxuICogQHRzcGx1cyBmbHVlbnQgbnVtYmVyICRub3RJblxuICovXG5leHBvcnQgZnVuY3Rpb24gJG5vdEluPEEgZXh0ZW5kcyBTdXBwb3J0ZWRWYWx1ZXMsIFZhbHVlcyBleHRlbmRzIHJlYWRvbmx5IEFbXT4oXG4gIF86IEEsXG4gIC4uLnY6IFZhbHVlc1xuKTogV2hlcmVJbjxcIm5vdC1pblwiLCBBLCBWYWx1ZXM+IHtcbiAgcmV0dXJuICQkbm90SW4odilcbn1cblxuLyoqXG4gKiBAdHNwbHVzIGZsdWVudCBzdHJpbmcgJGlzXG4gKiBAdHNwbHVzIGZsdWVudCBEYXRlICRpc1xuICogQHRzcGx1cyBmbHVlbnQgYm9vbGVhbiAkaXNcbiAqIEB0c3BsdXMgZmx1ZW50IG51bWJlciAkaXNcbiAqIEB0c3BsdXMgZmx1ZW50IE9iamVjdCAkaXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uICRpczxBLCBWIGV4dGVuZHMgQT4oXzogQSwgdjogVik6IFdoZXJlVmFsdWU8XCJlcVwiLCBBLCBWPiB7XG4gIHJldHVybiAkJGlzKHYpXG59XG5cbi8qKlxuICogQHRzcGx1cyBmbHVlbnQgUmVhZG9ubHlBcnJheSAkaW5jbHVkZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uICRpbmNsdWRlczxBIGV4dGVuZHMgcmVhZG9ubHkgYW55W10sIFYgZXh0ZW5kcyBBW251bWJlcl0+KF86IEEsIHY6IFYpOiBXaGVyZVZhbHVlPFwiaW5jbHVkZXNcIiwgQSwgVj4ge1xuICByZXR1cm4gJCRpbmNsdWRlcyh2KVxufVxuXG4vKipcbiAqIEB0c3BsdXMgZmx1ZW50IFJlYWRvbmx5QXJyYXkgJG5vdEluY2x1ZGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiAkbm90SW5jbHVkZXM8QSBleHRlbmRzIHJlYWRvbmx5IGFueVtdLCBWIGV4dGVuZHMgQVtudW1iZXJdPihcbiAgXzogQSxcbiAgdjogVlxuKTogV2hlcmVWYWx1ZTxcIm5vdC1pbmNsdWRlc1wiLCBBLCBWPiB7XG4gIHJldHVybiAkJG5vdEluY2x1ZGVzKHYpXG59XG4vKipcbiAqIEB0c3BsdXMgZmx1ZW50IHN0cmluZyAkaXNudFxuICogQHRzcGx1cyBmbHVlbnQgRGF0ZSAkaXNudFxuICogQHRzcGx1cyBmbHVlbnQgYm9vbGVhbiAkaXNudFxuICogQHRzcGx1cyBmbHVlbnQgbnVtYmVyICRpc250XG4gKiBAdHNwbHVzIGZsdWVudCBPYmplY3QgJGlzbnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uICRpc250PEEsIFYgZXh0ZW5kcyBBPihfOiBBLCB2OiBWKTogV2hlcmVWYWx1ZTxcIm5vdC1lcVwiLCBBLCBWPiB7XG4gIHJldHVybiAkJGlzbnQodilcbn1cblxuLyoqXG4gKiBAdHNwbHVzIGZsdWVudCBzdHJpbmcgJGd0XG4gKiBAdHNwbHVzIGZsdWVudCBEYXRlICRndFxuICogQHRzcGx1cyBmbHVlbnQgYm9vbGVhbiAkZ3RcbiAqIEB0c3BsdXMgZmx1ZW50IG51bWJlciAkZ3RcbiAqIEB0c3BsdXMgZmx1ZW50IE9iamVjdCAkZ3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uICRndDxBLCBWIGV4dGVuZHMgQT4oXzogQSwgdjogVik6IFdoZXJlVmFsdWU8XCJndFwiLCBBLCBWPiB7XG4gIHJldHVybiAkJGd0KHYpXG59XG5cbi8qKlxuICogQHRzcGx1cyBmbHVlbnQgc3RyaW5nICRndGVcbiAqIEB0c3BsdXMgZmx1ZW50IERhdGUgJGd0ZVxuICogQHRzcGx1cyBmbHVlbnQgYm9vbGVhbiAkZ3RlXG4gKiBAdHNwbHVzIGZsdWVudCBudW1iZXIgJGd0ZVxuICogQHRzcGx1cyBmbHVlbnQgT2JqZWN0ICRndGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uICRndGU8QSwgViBleHRlbmRzIEE+KF86IEEsIHY6IFYpOiBXaGVyZVZhbHVlPFwiZ3RlXCIsIEEsIFY+IHtcbiAgcmV0dXJuICQkZ3RlKHYpXG59XG5cbi8qKlxuICogQHRzcGx1cyBmbHVlbnQgc3RyaW5nICRsdFxuICogQHRzcGx1cyBmbHVlbnQgRGF0ZSAkbHRcbiAqIEB0c3BsdXMgZmx1ZW50IGJvb2xlYW4gJGx0XG4gKiBAdHNwbHVzIGZsdWVudCBudW1iZXIgJGx0XG4gKiBAdHNwbHVzIGZsdWVudCBPYmplY3QgJGx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiAkbHQ8QSwgViBleHRlbmRzIEE+KF86IEEsIHY6IFYpOiBXaGVyZVZhbHVlPFwibHRcIiwgQSwgVj4ge1xuICByZXR1cm4gJCRsdCh2KVxufVxuXG4vKipcbiAqIEB0c3BsdXMgZmx1ZW50IHN0cmluZyAkbHRlXG4gKiBAdHNwbHVzIGZsdWVudCBEYXRlICRsdGVcbiAqIEB0c3BsdXMgZmx1ZW50IGJvb2xlYW4gJGx0ZVxuICogQHRzcGx1cyBmbHVlbnQgbnVtYmVyICRsdGVcbiAqIEB0c3BsdXMgZmx1ZW50IE9iamVjdCAkbHRlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiAkbHRlPEEsIFYgZXh0ZW5kcyBBPihfOiBBLCB2OiBWKTogV2hlcmVWYWx1ZTxcImx0ZVwiLCBBLCBWPiB7XG4gIHJldHVybiAkJGx0ZSh2KVxufVxuXG5mdW5jdGlvbiAkaXNfXzxWIGV4dGVuZHMgQSwgQT4odjogVikge1xuICByZXR1cm4gKF86IEEpID0+ICRpcyhfLCB2KVxufVxuXG5mdW5jdGlvbiAkaXNudF9fPFYgZXh0ZW5kcyBBLCBBPih2OiBWKSB7XG4gIHJldHVybiAoXzogQSkgPT4gJGlzbnQoXywgdilcbn1cblxuZnVuY3Rpb24gJGluY2x1ZGVzX188ViBleHRlbmRzIEFbbnVtYmVyXSwgQSBleHRlbmRzIHJlYWRvbmx5IGFueVtdPih2OiBWKSB7XG4gIHJldHVybiAoXzogQSkgPT4gJGluY2x1ZGVzKF8sIHYpXG59XG5cbmZ1bmN0aW9uICRub3RJbmNsdWRlc19fPFYgZXh0ZW5kcyBBW251bWJlcl0sIEEgZXh0ZW5kcyByZWFkb25seSBhbnlbXT4odjogVikge1xuICByZXR1cm4gKF86IEEpID0+ICRub3RJbmNsdWRlcyhfLCB2KVxufVxuXG5mdW5jdGlvbiAkbHRfXzxWIGV4dGVuZHMgQSwgQT4odjogVikge1xuICByZXR1cm4gKF86IEEpID0+ICRsdChfLCB2KVxufVxuXG5mdW5jdGlvbiAkbHRlX188ViBleHRlbmRzIEEsIEE+KHY6IFYpIHtcbiAgcmV0dXJuIChfOiBBKSA9PiAkbHRlKF8sIHYpXG59XG5cbmZ1bmN0aW9uICRndF9fPFYgZXh0ZW5kcyBBLCBBPih2OiBWKSB7XG4gIHJldHVybiAoXzogQSkgPT4gJGd0KF8sIHYpXG59XG5cbmZ1bmN0aW9uICRndGVfXzxWIGV4dGVuZHMgQSwgQT4odjogVikge1xuICByZXR1cm4gKF86IEEpID0+ICRndGUoXywgdilcbn1cblxuZnVuY3Rpb24gJGluX188QSBleHRlbmRzIFN1cHBvcnRlZFZhbHVlcywgVmFsdWVzIGV4dGVuZHMgcmVhZG9ubHkgQVtdPihcbiAgLi4udjogVmFsdWVzXG4pIHtcbiAgcmV0dXJuIChfOiBBKSA9PiAkaW4oXywgLi4udilcbn1cblxuZnVuY3Rpb24gJG5vdEluX188QSBleHRlbmRzIFN1cHBvcnRlZFZhbHVlcywgVmFsdWVzIGV4dGVuZHMgcmVhZG9ubHkgQVtdPihcbiAgLi4udjogVmFsdWVzXG4pIHtcbiAgcmV0dXJuIChfOiBBKSA9PiAkbm90SW4oXywgLi4udilcbn1cblxuZnVuY3Rpb24gJHN0YXJ0c1dpdGhfXzxWIGV4dGVuZHMgQSwgQSBleHRlbmRzIHN0cmluZz4odjogVikge1xuICByZXR1cm4gKF86IEEpID0+ICRzdGFydHNXaXRoKF8sIHYpXG59XG5cbmZ1bmN0aW9uICRlbmRzV2l0aF9fPFYgZXh0ZW5kcyBBLCBBIGV4dGVuZHMgc3RyaW5nPih2OiBWKSB7XG4gIHJldHVybiAoXzogQSkgPT4gJGVuZHNXaXRoKF8sIHYpXG59XG5cbmZ1bmN0aW9uICRjb250YWluc19fPFYgZXh0ZW5kcyBBLCBBIGV4dGVuZHMgc3RyaW5nPih2OiBWKSB7XG4gIHJldHVybiAoXzogQSkgPT4gJGNvbnRhaW5zKF8sIHYpXG59XG5cbmV4cG9ydCBjb25zdCBGaWx0ZXJzID0ge1xuICAkaXM6ICRpc19fLFxuICAkaXNudDogJGlzbnRfXyxcbiAgJGluOiAkaW5fXyxcbiAgJG5vdEluOiAkbm90SW5fXyxcbiAgJGd0OiAkZ3RfXyxcbiAgJGd0ZTogJGd0ZV9fLFxuICAkbHQ6ICRsdF9fLFxuICAkbHRlOiAkbHRlX18sXG4gICRjb250YWluczogJGNvbnRhaW5zX18sXG4gICRlbmRzV2l0aDogJGVuZHNXaXRoX18sXG4gICRzdGFydHNXaXRoOiAkc3RhcnRzV2l0aF9fLFxuICAkaW5jbHVkZXM6ICRpbmNsdWRlc19fLFxuICAkbm90SW5jbHVkZXM6ICRub3RJbmNsdWRlc19fXG59XG5cbi8qKlxuICogQHRzcGx1cyBmbHVlbnQgc3RyaW5nICRzdGFydHNXaXRoXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiAkc3RhcnRzV2l0aDxBIGV4dGVuZHMgc3RyaW5nLCBWIGV4dGVuZHMgQT4oXzogQSwgdjogVik6IFdoZXJlVmFsdWU8XCJzdGFydHMtd2l0aFwiLCBBLCBWPiB7XG4gIHJldHVybiAkJHN0YXJ0c1dpdGgodilcbn1cblxuLyoqXG4gKiBAdHNwbHVzIGZsdWVudCBzdHJpbmcgJGVuZHNXaXRoXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiAkZW5kc1dpdGg8QSBleHRlbmRzIHN0cmluZywgViBleHRlbmRzIEE+KF86IEEsIHY6IFYpOiBXaGVyZVZhbHVlPFwiZW5kcy13aXRoXCIsIEEsIFY+IHtcbiAgcmV0dXJuICQkZW5kc1dpdGgodilcbn1cblxuLyoqXG4gKiBAdHNwbHVzIGZsdWVudCBzdHJpbmcgJGNvbnRhaW5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiAkY29udGFpbnM8QSBleHRlbmRzIHN0cmluZywgViBleHRlbmRzIEE+KF86IEEsIHY6IFYpOiBXaGVyZVZhbHVlPFwiY29udGFpbnNcIiwgQSwgVj4ge1xuICByZXR1cm4gJCRjb250YWlucyh2KVxufVxuXG5mdW5jdGlvbiAkJGluPEwgZXh0ZW5kcyByZWFkb25seSBhbnlbXT4odjogTCkge1xuICByZXR1cm4geyB0OiBcImluXCIgYXMgY29uc3QsIHYgfVxufVxuXG5mdW5jdGlvbiAkJG5vdEluPEwgZXh0ZW5kcyByZWFkb25seSBhbnlbXT4odjogTCkge1xuICByZXR1cm4geyB0OiBcIm5vdC1pblwiIGFzIGNvbnN0LCB2IH1cbn1cbmZ1bmN0aW9uICQkaXM8QT4odjogQSkge1xuICByZXR1cm4geyB0OiBcImVxXCIgYXMgY29uc3QsIHYgfVxufVxuZnVuY3Rpb24gJCRpc250PEE+KHY6IEEpIHtcbiAgcmV0dXJuIHsgdDogXCJub3QtZXFcIiBhcyBjb25zdCwgdiB9XG59XG5mdW5jdGlvbiAkJGluY2x1ZGVzPEE+KHY6IEEpIHtcbiAgcmV0dXJuIHsgdDogXCJpbmNsdWRlc1wiIGFzIGNvbnN0LCB2IH1cbn1cbmZ1bmN0aW9uICQkbm90SW5jbHVkZXM8QT4odjogQSkge1xuICByZXR1cm4geyB0OiBcIm5vdC1pbmNsdWRlc1wiIGFzIGNvbnN0LCB2IH1cbn1cblxuZnVuY3Rpb24gJCRsdDxBPih2OiBBKSB7XG4gIHJldHVybiB7IHQ6IFwibHRcIiBhcyBjb25zdCwgdiB9XG59XG5cbmZ1bmN0aW9uICQkbHRlPEE+KHY6IEEpIHtcbiAgcmV0dXJuIHsgdDogXCJsdGVcIiBhcyBjb25zdCwgdiB9XG59XG5mdW5jdGlvbiAkJGd0PEE+KHY6IEEpIHtcbiAgcmV0dXJuIHsgdDogXCJndFwiIGFzIGNvbnN0LCB2IH1cbn1cblxuZnVuY3Rpb24gJCRndGU8QT4odjogQSkge1xuICByZXR1cm4geyB0OiBcImd0ZVwiIGFzIGNvbnN0LCB2IH1cbn1cblxuZnVuY3Rpb24gJCRjb250YWluczxBIGV4dGVuZHMgc3RyaW5nPih2OiBBKSB7XG4gIHJldHVybiB7IHQ6IFwiY29udGFpbnNcIiBhcyBjb25zdCwgdiB9XG59XG5mdW5jdGlvbiAkJHN0YXJ0c1dpdGg8QSBleHRlbmRzIHN0cmluZz4odjogQSkge1xuICByZXR1cm4geyB0OiBcInN0YXJ0cy13aXRoXCIgYXMgY29uc3QsIHYgfVxufVxuZnVuY3Rpb24gJCRlbmRzV2l0aDxBIGV4dGVuZHMgc3RyaW5nPih2OiBBKSB7XG4gIHJldHVybiB7IHQ6IFwiZW5kcy13aXRoXCIgYXMgY29uc3QsIHYgfVxufVxuXG50eXBlIFZhbHVlVHlwZTxWPiA9IHtcbiAgdDogXCJpblwiIHwgXCJub3QtaW5cIlxuICB2OiByZWFkb25seSBWW11cbn0gfCB7IHQ6IFwiZXFcIiB8IFwibm90LWVxXCI7IHY6IFYgfVxuXG50eXBlIFRUeXBlPFQ+ID0gVCBleHRlbmRzIFZhbHVlVHlwZTxhbnk+ID8gVFtcInRcIl0gOiBuZXZlclxudHlwZSBWVHlwZTxUPiA9IFQgZXh0ZW5kcyBWYWx1ZVR5cGU8YW55PiA/IFRbXCJ2XCJdIDogbmV2ZXJcblxuZnVuY3Rpb24gZihwOiBzdHJpbmcsIGI6IGFueSkge1xuICBpZiAodHlwZW9mIGIgPT09IFwiZnVuY3Rpb25cIikgYiA9IGIodW5kZWZpbmVkKVxuICBjb25zdCBvYmogPSB0eXBlb2YgYiA9PT0gXCJvYmplY3RcIiAmJiBiICE9PSBudWxsXG4gIHJldHVybiBtYWtlRmlsdGVyKHAsIG9iaiA/IGIudiA6IGIsIG9iaiA/IGIudCA/PyBcImVxXCIgOiBcImVxXCIpXG59XG5cbmZ1bmN0aW9uIG1ha2VGaWx0ZXI8VCBleHRlbmRzIFwiaW5cIiB8IFwibm90LWluXCIgfCBcImVxXCIgfCBcIm5vdC1lcVwiPihwYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnksIHQ6IFQpIHtcbiAgcmV0dXJuIHsga2V5OiBwYXRoLCB0LCB2YWx1ZSB9XG59XG5cbnR5cGUgRklMPFMsIEsgZXh0ZW5kcyBzdHJpbmcsIFQgZXh0ZW5kcyBcImluXCIgfCBcIm5vdC1pblwiIHwgXCJlcVwiIHwgXCJub3QtZXFcIiwgVj4gPSB7XG4gIGtleTogS1xuICB0OiBUXG4gIHZhbHVlOiBWXG4gIHJlYWRvbmx5IFM6IFNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VGaWx0ZXJzPFQgZXh0ZW5kcyBGaWVsZFZhbHVlcz4oKSB7XG4gIHR5cGUgUGF0aHMgPSBGaWVsZFBhdGg8VD5cbiAgdHlwZSBWYWx1ZTxURmllbGROYW1lIGV4dGVuZHMgUGF0aHM+ID0gRmllbGRQYXRoVmFsdWU8VCwgVEZpZWxkTmFtZT5cblxuICBmdW5jdGlvbiB0ZXN0PFxuICAgIFRGaWVsZE5hbWUgZXh0ZW5kcyBQYXRocyxcbiAgICBBIGV4dGVuZHMgVmFsdWU8VEZpZWxkTmFtZT4sXG4gICAgVmFsXG4gID4oXG4gICAgcGF0aDogVEZpZWxkTmFtZSxcbiAgICB2YWx1ZTogKHY6IEEpID0+IFZhbFxuICApOiBGSUw8VCwgc3RyaW5nLCBUVHlwZTxWYWw+LCBWVHlwZTxWYWw+PlxuICBmdW5jdGlvbiB0ZXN0PFxuICAgIFRGaWVsZE5hbWUgZXh0ZW5kcyBQYXRocyxcbiAgICBBIGV4dGVuZHMgVmFsdWU8VEZpZWxkTmFtZT5cbiAgPihcbiAgICBwYXRoOiBURmllbGROYW1lLFxuICAgIHZhbHVlOiBBXG4gICk6IEZJTDxULCBzdHJpbmcsIFwiZXFcIiwgQT5cbiAgZnVuY3Rpb24gdGVzdChwOiBzdHJpbmcsIHY6IGFueSkge1xuICAgIHJldHVybiBmKHAsIHYpIGFzIGFueVxuICB9XG4gIHJldHVybiB0ZXN0XG59XG5cbi8vIGV4cG9ydCBmdW5jdGlvbiBtYWtlRmlsdGVyPFRGaWVsZFZhbHVlcyBleHRlbmRzIEZpZWxkVmFsdWVzPigpIHtcbi8vICAgY29uc3QgZiA9IG1ha2VGaWx0ZXJfPFRGaWVsZFZhbHVlcz4oKVxuLy8gICByZXR1cm4gZiBhcyBXaGVyZUZpbHRlckhlbHBlcjxURmllbGRWYWx1ZXM+XG4vLyB9XG5cbi8vIGV4cG9ydCBpbnRlcmZhY2UgV2hlcmVGaWx0ZXJIZWxwZXI8VEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXM+IGV4dGVuZHMgUmV0dXJuVHlwZTx0eXBlb2YgbWFrZUZpbHRlcl88VEZpZWxkVmFsdWVzPj4ge31cblxuLy8gZnVuY3Rpb24gbWFrZUZpbHRlcl88VEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXM+KCkge1xuLy8gICBmdW5jdGlvbiBlcTxURmllbGROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sIFYgZXh0ZW5kcyBGaWVsZFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFRGaWVsZE5hbWU+Pihcbi8vICAgICBwYXRoOiBURmllbGROYW1lLFxuLy8gICAgIHZhbHVlOiBWXG4vLyAgICkge1xuLy8gICAgIHJldHVybiB7IGtleTogcGF0aCwgdmFsdWUsIHQ6IFwiZXFcIiBhcyBjb25zdCB9XG4vLyAgIH1cbi8vICAgY29uc3QgZiA9IE9iamVjdC5hc3NpZ24oZXEgc2F0aXNmaWVzICguLi5hcmdzOiBhbnlbXSkgPT4gV2hlcmUsIHtcbi8vICAgICBpbjxURmllbGROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sIFYgZXh0ZW5kcyBGaWVsZFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFRGaWVsZE5hbWU+Pihcbi8vICAgICAgIHBhdGg6IFRGaWVsZE5hbWUsXG4vLyAgICAgICB2YWx1ZTogcmVhZG9ubHkgVltdXG4vLyAgICAgKSB7XG4vLyAgICAgICByZXR1cm4geyBrZXk6IHBhdGgsIHZhbHVlLCB0OiBcImluXCIgYXMgY29uc3QgfVxuLy8gICAgIH0sXG4vLyAgICAgbm90SW48VEZpZWxkTmFtZSBleHRlbmRzIEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+LCBWIGV4dGVuZHMgRmllbGRQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBURmllbGROYW1lPj4oXG4vLyAgICAgICBwYXRoOiBURmllbGROYW1lLFxuLy8gICAgICAgdmFsdWU6IHJlYWRvbmx5IFZbXVxuLy8gICAgICkge1xuLy8gICAgICAgcmV0dXJuIHsga2V5OiBwYXRoLCB2YWx1ZSwgdDogXCJub3QtaW5cIiBhcyBjb25zdCB9XG4vLyAgICAgfSxcbi8vICAgICBlcSxcbi8vICAgICBub3RFcTxURmllbGROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sIFYgZXh0ZW5kcyBGaWVsZFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFRGaWVsZE5hbWU+Pihcbi8vICAgICAgIHBhdGg6IFRGaWVsZE5hbWUsXG4vLyAgICAgICB2YWx1ZTogVlxuLy8gICAgICkge1xuLy8gICAgICAgcmV0dXJuIHsga2V5OiBwYXRoLCB2YWx1ZSwgdDogXCJub3QtZXFcIiBhcyBjb25zdCB9XG4vLyAgICAgfVxuLy8gICB9IHNhdGlzZmllcyBSZWNvcmQ8c3RyaW5nLCAoLi4uYXJnczogYW55W10pID0+IFdoZXJlPilcbi8vICAgcmV0dXJuIGZcbi8vIH1cbiJdfQ==
@@ -1 +0,0 @@
1
- 3fdb756675565f3f5e5cdb6e2680f07a60ced261a3790df2cdfc23a21d160956
@@ -1,43 +0,0 @@
1
- import * as tsplus_module_1 from "@effect/io/Effect";
2
- import * as tsplus_module_2 from "@effect/data/Either";
3
- import * as tsplus_module_3 from "@effect/io/Logger";
4
- import { InvalidStateError } from "../../errors.js";
5
- import { checkPaths } from "./makeJsonSchema.js";
6
- const path = { path: "/securities/:id/search/:id2", method: "get" };
7
- const equalPaths = [
8
- "/securities/:idt/search/:id2",
9
- "/securities/:id/search/:id2t",
10
- "/securities/:idt/search/:id2t"
11
- ]
12
- .map((path) => ({ path, method: "get" }));
13
- const differentPaths = [
14
- "/securities/search/:id2",
15
- "/securities/:id/search/",
16
- "/securities/:id/search/:id2",
17
- "/securities/:id/:id2/search/:id3"
18
- ]
19
- .map((path) => ({ path, method: "get" }))
20
- .concat([
21
- "/securities/:idt/search/:id2"
22
- ]
23
- .map((path) => ({ path, method: "post" })));
24
- test("works", async () => {
25
- expect(await tsplus_module_1.runPromise((checkPaths(differentPaths)))).toStrictEqual(differentPaths);
26
- for (const p of equalPaths) {
27
- expect(await tsplus_module_1.runPromiseEither(checkPaths([path, p]))).toStrictEqual(tsplus_module_2.left(new InvalidStateError(`Duplicate method ${p.method} for path ${p.path}`)));
28
- }
29
- expect(await tsplus_module_1.runPromiseEither(checkPaths(["a/:p1/c/:p2", "a/b"].map((path) => ({ path, method: "get" })))))
30
- .toStrictEqual(tsplus_module_2.left(new InvalidStateError(`Path /a/b/ is shadowed by /a/:p1/`)));
31
- expect(await tsplus_module_1.runPromiseEither(checkPaths(["a/:p1/c/:p2", "a/:p111/c/d"].map((path) => ({ path, method: "get" })))))
32
- .toStrictEqual(tsplus_module_2.left(new InvalidStateError(`Path /a/:p1/c/d/ is shadowed by /a/:p1/c/:p2/`)));
33
- });
34
- test("log shadowing", async () => {
35
- const arr = [];
36
- const paths = ["a/b", "a/:p"].map((path) => ({ path, method: "get" }));
37
- const CustomLogger = tsplus_module_3.make((_, __, message) => {
38
- arr.push(message);
39
- });
40
- await tsplus_module_1.runPromise(tsplus_module_1.provideLayer(checkPaths(paths), tsplus_module_3.replace(tsplus_module_3.defaultLogger, CustomLogger)));
41
- expect(arr).toStrictEqual([`Path /a/:p/ is partially shadowed by /a/b/`]);
42
- });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUpzb25TY2hlbWEudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvYXBpL2V4cHJlc3MvbWFrZUpzb25TY2hlbWEudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFaEQsTUFBTSxJQUFJLEdBQUcsRUFBRSxJQUFJLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFBO0FBRW5FLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLDhCQUE4QjtJQUM5Qiw4QkFBOEI7SUFDOUIsK0JBQStCO0NBQ2hDO0tBQ0UsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7QUFFM0MsTUFBTSxjQUFjLEdBR2Q7SUFDSix5QkFBeUI7SUFDekIseUJBQXlCO0lBQ3pCLDZCQUE2QjtJQUM3QixrQ0FBa0M7Q0FDbkM7S0FDRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDeEMsTUFBTSxDQUFDO0lBQ04sOEJBQThCO0NBQy9CO0tBQ0UsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUUvQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ3ZCLE1BQU0sQ0FBQyxpQ0FBTSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFXLENBQUMsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLENBQUE7SUFFbkYsS0FBSyxNQUFNLENBQUMsSUFBSSxVQUFVLEVBQUU7UUFDMUIsTUFBTSxDQUFDLHVDQUFNLFVBQVUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFpQixDQUFDLENBQUMsYUFBYSxDQUNoRSxxQkFBWSxJQUFJLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLENBQUMsTUFBTSxhQUFhLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQ3RGLENBQUE7S0FDRjtJQUVELE1BQU0sQ0FBQyx1Q0FBTSxVQUFVLENBQUMsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBaUIsQ0FBQztTQUN2RyxhQUFhLENBQ1oscUJBQVksSUFBSSxpQkFBaUIsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLENBQ3hFLENBQUE7SUFFSCxNQUFNLENBQUMsdUNBQU0sVUFBVSxDQUFDLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQWlCLENBQUM7U0FDL0csYUFBYSxDQUNaLHFCQUFZLElBQUksaUJBQWlCLENBQUMsK0NBQStDLENBQUMsQ0FBQyxDQUNwRixDQUFBO0FBQ0wsQ0FBQyxDQUFDLENBQUE7QUFFRixJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQy9CLE1BQU0sR0FBRyxHQUFhLEVBQUUsQ0FBQTtJQUN4QixNQUFNLEtBQUssR0FBRyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUV0RSxNQUFNLFlBQVksR0FBRyxxQkFBMEIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQ2hFLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDbkIsQ0FBQyxDQUFDLENBQUE7SUFFRixpQ0FBTSw2QkFBQSxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQ1AsdURBQXFDLFlBQVksQ0FBQyxDQUFDLENBQ3RELENBQUE7SUFFYixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsNENBQTRDLENBQUMsQ0FBQyxDQUFBO0FBQzNFLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW52YWxpZFN0YXRlRXJyb3IgfSBmcm9tIFwiLi4vLi4vZXJyb3JzLmpzXCJcbmltcG9ydCB7IGNoZWNrUGF0aHMgfSBmcm9tIFwiLi9tYWtlSnNvblNjaGVtYS5qc1wiXG5cbmNvbnN0IHBhdGggPSB7IHBhdGg6IFwiL3NlY3VyaXRpZXMvOmlkL3NlYXJjaC86aWQyXCIsIG1ldGhvZDogXCJnZXRcIiB9XG5cbmNvbnN0IGVxdWFsUGF0aHMgPSBbXG4gIFwiL3NlY3VyaXRpZXMvOmlkdC9zZWFyY2gvOmlkMlwiLFxuICBcIi9zZWN1cml0aWVzLzppZC9zZWFyY2gvOmlkMnRcIixcbiAgXCIvc2VjdXJpdGllcy86aWR0L3NlYXJjaC86aWQydFwiXG5dXG4gIC5tYXAoKHBhdGgpID0+ICh7IHBhdGgsIG1ldGhvZDogXCJnZXRcIiB9KSlcblxuY29uc3QgZGlmZmVyZW50UGF0aHM6IHtcbiAgcGF0aDogc3RyaW5nXG4gIG1ldGhvZDogc3RyaW5nXG59W10gPSBbXG4gIFwiL3NlY3VyaXRpZXMvc2VhcmNoLzppZDJcIixcbiAgXCIvc2VjdXJpdGllcy86aWQvc2VhcmNoL1wiLFxuICBcIi9zZWN1cml0aWVzLzppZC9zZWFyY2gvOmlkMlwiLFxuICBcIi9zZWN1cml0aWVzLzppZC86aWQyL3NlYXJjaC86aWQzXCJcbl1cbiAgLm1hcCgocGF0aCkgPT4gKHsgcGF0aCwgbWV0aG9kOiBcImdldFwiIH0pKVxuICAuY29uY2F0KFtcbiAgICBcIi9zZWN1cml0aWVzLzppZHQvc2VhcmNoLzppZDJcIlxuICBdXG4gICAgLm1hcCgocGF0aCkgPT4gKHsgcGF0aCwgbWV0aG9kOiBcInBvc3RcIiB9KSkpXG5cbnRlc3QoXCJ3b3Jrc1wiLCBhc3luYyAoKSA9PiB7XG4gIGV4cGVjdChhd2FpdCAoY2hlY2tQYXRocyhkaWZmZXJlbnRQYXRocykpLnJ1blByb21pc2UpLnRvU3RyaWN0RXF1YWwoZGlmZmVyZW50UGF0aHMpXG5cbiAgZm9yIChjb25zdCBwIG9mIGVxdWFsUGF0aHMpIHtcbiAgICBleHBlY3QoYXdhaXQgY2hlY2tQYXRocyhbcGF0aCwgcF0pLnJ1blByb21pc2VFaXRoZXIpLnRvU3RyaWN0RXF1YWwoXG4gICAgICBFaXRoZXIubGVmdChuZXcgSW52YWxpZFN0YXRlRXJyb3IoYER1cGxpY2F0ZSBtZXRob2QgJHtwLm1ldGhvZH0gZm9yIHBhdGggJHtwLnBhdGh9YCkpXG4gICAgKVxuICB9XG5cbiAgZXhwZWN0KGF3YWl0IGNoZWNrUGF0aHMoW1wiYS86cDEvYy86cDJcIiwgXCJhL2JcIl0ubWFwKChwYXRoKSA9PiAoeyBwYXRoLCBtZXRob2Q6IFwiZ2V0XCIgfSkpKS5ydW5Qcm9taXNlRWl0aGVyKVxuICAgIC50b1N0cmljdEVxdWFsKFxuICAgICAgRWl0aGVyLmxlZnQobmV3IEludmFsaWRTdGF0ZUVycm9yKGBQYXRoIC9hL2IvIGlzIHNoYWRvd2VkIGJ5IC9hLzpwMS9gKSlcbiAgICApXG5cbiAgZXhwZWN0KGF3YWl0IGNoZWNrUGF0aHMoW1wiYS86cDEvYy86cDJcIiwgXCJhLzpwMTExL2MvZFwiXS5tYXAoKHBhdGgpID0+ICh7IHBhdGgsIG1ldGhvZDogXCJnZXRcIiB9KSkpLnJ1blByb21pc2VFaXRoZXIpXG4gICAgLnRvU3RyaWN0RXF1YWwoXG4gICAgICBFaXRoZXIubGVmdChuZXcgSW52YWxpZFN0YXRlRXJyb3IoYFBhdGggL2EvOnAxL2MvZC8gaXMgc2hhZG93ZWQgYnkgL2EvOnAxL2MvOnAyL2ApKVxuICAgIClcbn0pXG5cbnRlc3QoXCJsb2cgc2hhZG93aW5nXCIsIGFzeW5jICgpID0+IHtcbiAgY29uc3QgYXJyOiBzdHJpbmdbXSA9IFtdXG4gIGNvbnN0IHBhdGhzID0gW1wiYS9iXCIsIFwiYS86cFwiXS5tYXAoKHBhdGgpID0+ICh7IHBhdGgsIG1ldGhvZDogXCJnZXRcIiB9KSlcblxuICBjb25zdCBDdXN0b21Mb2dnZXIgPSBMb2dnZXIubWFrZTxzdHJpbmcsIHZvaWQ+KChfLCBfXywgbWVzc2FnZSkgPT4ge1xuICAgIGFyci5wdXNoKG1lc3NhZ2UpXG4gIH0pXG5cbiAgYXdhaXQgY2hlY2tQYXRocyhwYXRocylcbiAgICAucHJvdmlkZUxheWVyKExvZ2dlci5yZXBsYWNlKExvZ2dlci5kZWZhdWx0TG9nZ2VyLCBDdXN0b21Mb2dnZXIpKVxuICAgIC5ydW5Qcm9taXNlXG5cbiAgZXhwZWN0KGFycikudG9TdHJpY3RFcXVhbChbYFBhdGggL2EvOnAvIGlzIHBhcnRpYWxseSBzaGFkb3dlZCBieSAvYS9iL2BdKVxufSlcbiJdfQ==
@@ -1 +0,0 @@
1
- 227326c96d8f8db11aa5dd8162cb906e55a27b00a9069640a822be51cb025b58