@effect-app/infra 0.48.0 → 0.49.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 (163) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/_cjs/_ext/Array.cjs.map +1 -1
  3. package/_cjs/api/defaultErrorHandler.cjs.map +1 -1
  4. package/_cjs/api/express/makeJsonSchema.cjs +2 -2
  5. package/_cjs/api/express/makeJsonSchema.cjs.map +1 -1
  6. package/_cjs/api/express/schema/jwt.cjs.map +1 -1
  7. package/_cjs/api/express/schema/requestHandler.cjs.map +1 -1
  8. package/_cjs/api/express/schema/routing.cjs.map +1 -1
  9. package/_cjs/api/reportError.cjs.map +1 -1
  10. package/_cjs/api/routing.cjs.map +1 -1
  11. package/_cjs/api/setupRequest.cjs.map +1 -1
  12. package/_cjs/api/writeDocs.cjs.map +1 -1
  13. package/_cjs/rateLimit.cjs.map +1 -1
  14. package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
  15. package/_cjs/services/Emailer/fake.cjs.map +1 -1
  16. package/_cjs/services/Operations/live.cjs.map +1 -1
  17. package/_cjs/services/Operations/service.cjs.map +1 -1
  18. package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
  19. package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
  20. package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
  21. package/_cjs/services/Repository.cjs +8 -8
  22. package/_cjs/services/Repository.cjs.map +1 -1
  23. package/_cjs/services/RepositoryBase.cjs +13 -13
  24. package/_cjs/services/RepositoryBase.cjs.map +1 -1
  25. package/_cjs/services/RequestContextContainer.cjs.map +1 -1
  26. package/_cjs/services/Store/Cosmos.cjs +9 -9
  27. package/_cjs/services/Store/Cosmos.cjs.map +1 -1
  28. package/_cjs/services/Store/Cosmos.test.cjs.map +1 -1
  29. package/_cjs/services/Store/Disk.cjs.map +1 -1
  30. package/_cjs/services/Store/Memory.cjs +42 -42
  31. package/_cjs/services/Store/Memory.cjs.map +1 -1
  32. package/_cjs/services/Store/Redis.cjs +13 -13
  33. package/_cjs/services/Store/Redis.cjs.map +1 -1
  34. package/_cjs/services/Store/codeFilter.test.cjs.map +1 -1
  35. package/_cjs/services/Store/index.cjs.map +1 -1
  36. package/_cjs/services/Store/service.cjs.map +1 -1
  37. package/_cjs/services/Store/utils.cjs +2 -3
  38. package/_cjs/services/Store/utils.cjs.map +1 -1
  39. package/_cjs/services/simpledb/cosmosdb.cjs +12 -4
  40. package/_cjs/services/simpledb/cosmosdb.cjs.map +1 -1
  41. package/_cjs/services/simpledb/diskdb.cjs.map +1 -1
  42. package/_cjs/services/simpledb/memdb.cjs.map +1 -1
  43. package/_cjs/services/simpledb/mongodb.cjs +15 -5
  44. package/_cjs/services/simpledb/mongodb.cjs.map +1 -1
  45. package/_cjs/services/simpledb/redisdb.cjs +13 -7
  46. package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
  47. package/_cjs/services/simpledb/simpledb.cjs.map +1 -1
  48. package/_src/_ext/Array.ts +3 -2
  49. package/_src/api/defaultErrorHandler.ts +14 -12
  50. package/_src/api/express/makeJsonSchema.ts +6 -5
  51. package/_src/api/express/schema/jwt.ts +1 -1
  52. package/_src/api/express/schema/requestHandler.ts +112 -100
  53. package/_src/api/express/schema/routing.ts +61 -55
  54. package/_src/api/reportError.ts +16 -12
  55. package/_src/api/routing.ts +157 -135
  56. package/_src/api/setupRequest.ts +3 -1
  57. package/_src/api/writeDocs.ts +4 -3
  58. package/_src/rateLimit.ts +21 -14
  59. package/_src/services/Emailer/Sendgrid.ts +11 -10
  60. package/_src/services/Emailer/fake.ts +2 -1
  61. package/_src/services/Operations/live.ts +18 -12
  62. package/_src/services/Operations/service.ts +26 -17
  63. package/_src/services/QueueMaker/errors.ts +7 -6
  64. package/_src/services/QueueMaker/memQueue.ts +13 -11
  65. package/_src/services/QueueMaker/sbqueue.ts +16 -14
  66. package/_src/services/Repository.ts +53 -51
  67. package/_src/services/RepositoryBase.ts +33 -28
  68. package/_src/services/RequestContextContainer.ts +4 -3
  69. package/_src/services/Store/Cosmos.test.ts +31 -29
  70. package/_src/services/Store/Cosmos.ts +203 -180
  71. package/_src/services/Store/Disk.ts +19 -18
  72. package/_src/services/Store/Memory.ts +37 -32
  73. package/_src/services/Store/Redis.ts +31 -27
  74. package/_src/services/Store/codeFilter.test.ts +26 -16
  75. package/_src/services/Store/index.ts +26 -24
  76. package/_src/services/Store/service.ts +5 -5
  77. package/_src/services/Store/utils.ts +27 -24
  78. package/_src/services/simpledb/cosmosdb.ts +61 -51
  79. package/_src/services/simpledb/diskdb.ts +38 -31
  80. package/_src/services/simpledb/memdb.ts +25 -21
  81. package/_src/services/simpledb/mongodb.ts +40 -35
  82. package/_src/services/simpledb/redisdb.ts +66 -55
  83. package/_src/services/simpledb/simpledb.ts +32 -30
  84. package/dist/_ext/Array.d.ts.map +1 -1
  85. package/dist/_ext/Array.js +2 -2
  86. package/dist/api/defaultErrorHandler.d.ts.map +1 -1
  87. package/dist/api/defaultErrorHandler.js +5 -5
  88. package/dist/api/express/makeJsonSchema.d.ts +0 -1
  89. package/dist/api/express/makeJsonSchema.d.ts.map +1 -1
  90. package/dist/api/express/makeJsonSchema.js +4 -4
  91. package/dist/api/express/schema/jwt.js +2 -2
  92. package/dist/api/express/schema/requestHandler.d.ts.map +1 -1
  93. package/dist/api/express/schema/requestHandler.js +17 -17
  94. package/dist/api/express/schema/routing.d.ts.map +1 -1
  95. package/dist/api/express/schema/routing.js +13 -11
  96. package/dist/api/reportError.d.ts.map +1 -1
  97. package/dist/api/reportError.js +6 -6
  98. package/dist/api/routing.d.ts.map +1 -1
  99. package/dist/api/routing.js +29 -25
  100. package/dist/api/setupRequest.d.ts.map +1 -1
  101. package/dist/api/setupRequest.js +2 -2
  102. package/dist/api/writeDocs.d.ts.map +1 -1
  103. package/dist/api/writeDocs.js +5 -4
  104. package/dist/rateLimit.d.ts +4 -4
  105. package/dist/rateLimit.d.ts.map +1 -1
  106. package/dist/rateLimit.js +5 -4
  107. package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
  108. package/dist/services/Emailer/Sendgrid.js +9 -9
  109. package/dist/services/Emailer/fake.d.ts.map +1 -1
  110. package/dist/services/Emailer/fake.js +1 -1
  111. package/dist/services/Operations/live.d.ts.map +1 -1
  112. package/dist/services/Operations/live.js +11 -8
  113. package/dist/services/Operations/service.d.ts.map +1 -1
  114. package/dist/services/Operations/service.js +10 -4
  115. package/dist/services/QueueMaker/errors.d.ts.map +1 -1
  116. package/dist/services/QueueMaker/errors.js +5 -5
  117. package/dist/services/QueueMaker/memQueue.d.ts +1 -1
  118. package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
  119. package/dist/services/QueueMaker/memQueue.js +5 -4
  120. package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
  121. package/dist/services/QueueMaker/sbqueue.js +5 -5
  122. package/dist/services/Repository.d.ts +34 -35
  123. package/dist/services/Repository.d.ts.map +1 -1
  124. package/dist/services/Repository.js +16 -16
  125. package/dist/services/RepositoryBase.d.ts +4 -4
  126. package/dist/services/RepositoryBase.d.ts.map +1 -1
  127. package/dist/services/RepositoryBase.js +25 -22
  128. package/dist/services/RequestContextContainer.d.ts.map +1 -1
  129. package/dist/services/RequestContextContainer.js +3 -3
  130. package/dist/services/Store/Cosmos.d.ts +3 -3
  131. package/dist/services/Store/Cosmos.d.ts.map +1 -1
  132. package/dist/services/Store/Cosmos.js +53 -39
  133. package/dist/services/Store/Disk.d.ts.map +1 -1
  134. package/dist/services/Store/Disk.js +18 -18
  135. package/dist/services/Store/Memory.d.ts +2 -3
  136. package/dist/services/Store/Memory.d.ts.map +1 -1
  137. package/dist/services/Store/Memory.js +44 -44
  138. package/dist/services/Store/Redis.d.ts +4 -4
  139. package/dist/services/Store/Redis.d.ts.map +1 -1
  140. package/dist/services/Store/Redis.js +19 -17
  141. package/dist/services/Store/index.d.ts.map +1 -1
  142. package/dist/services/Store/index.js +4 -4
  143. package/dist/services/Store/service.d.ts +4 -5
  144. package/dist/services/Store/service.d.ts.map +1 -1
  145. package/dist/services/Store/service.js +3 -3
  146. package/dist/services/Store/utils.d.ts +2 -2
  147. package/dist/services/Store/utils.d.ts.map +1 -1
  148. package/dist/services/Store/utils.js +16 -14
  149. package/dist/services/simpledb/cosmosdb.d.ts.map +1 -1
  150. package/dist/services/simpledb/cosmosdb.js +16 -12
  151. package/dist/services/simpledb/diskdb.d.ts.map +1 -1
  152. package/dist/services/simpledb/diskdb.js +15 -15
  153. package/dist/services/simpledb/memdb.d.ts.map +1 -1
  154. package/dist/services/simpledb/memdb.js +6 -6
  155. package/dist/services/simpledb/mongodb.d.ts +5 -5
  156. package/dist/services/simpledb/mongodb.d.ts.map +1 -1
  157. package/dist/services/simpledb/mongodb.js +9 -9
  158. package/dist/services/simpledb/redisdb.d.ts +4 -4
  159. package/dist/services/simpledb/redisdb.d.ts.map +1 -1
  160. package/dist/services/simpledb/redisdb.js +18 -18
  161. package/dist/services/simpledb/simpledb.d.ts.map +1 -1
  162. package/dist/services/simpledb/simpledb.js +9 -9
  163. package/package.json +7 -7
@@ -10,14 +10,14 @@ import * as tsplus_module_9 from "@effect-app/prelude/_ext/misc";
10
10
  import * as tsplus_module_10 from "@effect/data/typeclass/Equivalence";
11
11
  import * as tsplus_module_11 from "@effect-app/core/_ext/ord.ext";
12
12
  /* eslint-disable @typescript-eslint/no-explicit-any */
13
- import * as CosmosClient from "@effect-app/infra-adapters/cosmos-client";
14
- import { OptimisticConcurrencyException } from "../../errors.js";
13
+ import { CosmosClient } from "@effect-app/infra-adapters/cosmos-client";
15
14
  import { omit } from "@effect-app/prelude/utils";
15
+ import { OptimisticConcurrencyException } from "../../errors.js";
16
16
  import { StoreMaker } from "./service.js";
17
17
  // TODO: Retry operation when running into RU limit.
18
18
  export function makeCosmosStore({ prefix }) {
19
19
  return tsplus_module_1.gen(function* ($) {
20
- const { db } = yield* $(CosmosClient.CosmosClient);
20
+ const { db } = yield* $(CosmosClient);
21
21
  return {
22
22
  make: (name, seed, config) => tsplus_module_1.gen(function* ($) {
23
23
  const containerId = `${prefix}${name}`;
@@ -34,7 +34,7 @@ export function makeCosmosStore({ prefix }) {
34
34
  const bulkSet = (items) => tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.gen(function* ($) {
35
35
  // TODO: disable batching if need atomicity
36
36
  // we delay and batch to keep low amount of RUs
37
- const b = [...items].map(x => [
37
+ const b = [...items].map((x) => [
38
38
  x,
39
39
  tsplus_module_2.match(tsplus_module_2.fromNullable(x._etag), () => ({
40
40
  operationType: "Create",
@@ -43,7 +43,7 @@ export function makeCosmosStore({ prefix }) {
43
43
  _partitionKey: config?.partitionValue(x)
44
44
  },
45
45
  partitionKey: config?.partitionValue(x)
46
- }), eTag => ({
46
+ }), (eTag) => ({
47
47
  operationType: "Replace",
48
48
  id: x.id,
49
49
  resourceBody: {
@@ -55,12 +55,13 @@ export function makeCosmosStore({ prefix }) {
55
55
  }))
56
56
  ]);
57
57
  const batches = tsplus_module_4.toReadonlyArray(tsplus_module_3.chunk_(b, config?.maxBulkSize ?? 10));
58
- const batchResult = yield* $(tsplus_module_5.ext_forEach(batches.map((x, i) => [i, x]), ([i, batch]) => tsplus_module_1.flatMap(tsplus_module_1.delay(tsplus_module_1.promise(() => bulk(batch.map(([, op]) => op))), tsplus_module_3.millis_(i === 0 ? 0 : 1100)), responses => tsplus_module_1.gen(function* ($) {
59
- const r = responses.find(x => x.statusCode === 412 || x.statusCode === 404);
58
+ const batchResult = yield* $(tsplus_module_5.ext_forEach(batches
59
+ .map((x, i) => [i, x]), ([i, batch]) => tsplus_module_1.flatMap(tsplus_module_1.delay(tsplus_module_1.promise(() => bulk(batch.map(([, op]) => op))), tsplus_module_3.millis_(i === 0 ? 0 : 1100)), (responses) => tsplus_module_1.gen(function* ($) {
60
+ const r = responses.find((x) => x.statusCode === 412 || x.statusCode === 404);
60
61
  if (r) {
61
62
  return yield* $(tsplus_module_1.fail(new OptimisticConcurrencyException(name, JSON.stringify(r.resourceBody?.["id"]))));
62
63
  }
63
- const r2 = responses.find(x => x.statusCode > 299 || x.statusCode < 200);
64
+ const r2 = responses.find((x) => x.statusCode > 299 || x.statusCode < 200);
64
65
  if (r2) {
65
66
  return yield* $(tsplus_module_1.die(new CosmosDbOperationError("not able to update record: " + r2.statusCode)));
66
67
  }
@@ -70,11 +71,11 @@ export function makeCosmosStore({ prefix }) {
70
71
  _etag: responses[i].eTag
71
72
  }));
72
73
  }))));
73
- return tsplus_module_4.toReadonlyArray(batchResult).flat();
74
+ return batchResult.flat();
74
75
  }), "cosmos.bulkSet"), "cosmos.db", containerId);
75
76
  const batchSet = (items) => {
76
77
  return tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.suspend(() => {
77
- const batch = [...items].map(x => [
78
+ const batch = [...items].map((x) => [
78
79
  x,
79
80
  tsplus_module_2.match(tsplus_module_2.fromNullable(x._etag), () => ({
80
81
  operationType: "Create",
@@ -82,7 +83,7 @@ export function makeCosmosStore({ prefix }) {
82
83
  ...omit(x, "_etag"),
83
84
  _partitionKey: config?.partitionValue(x)
84
85
  }
85
- }), eTag => ({
86
+ }), (eTag) => ({
86
87
  operationType: "Replace",
87
88
  id: x.id,
88
89
  resourceBody: {
@@ -93,7 +94,7 @@ export function makeCosmosStore({ prefix }) {
93
94
  }))
94
95
  ]);
95
96
  const ex = batch.map(([, c]) => c);
96
- return tsplus_module_1.flatMap(tsplus_module_1.promise(() => execBatch(ex, ex[0]?.resourceBody._partitionKey)), x => tsplus_module_1.gen(function* ($) {
97
+ return tsplus_module_1.flatMap(tsplus_module_1.promise(() => execBatch(ex, ex[0]?.resourceBody._partitionKey)), (x) => tsplus_module_1.gen(function* ($) {
97
98
  const result = x.result ?? [];
98
99
  const firstFailed = result.find((x) => x.statusCode > 299 || x.statusCode < 200);
99
100
  if (firstFailed) {
@@ -114,16 +115,21 @@ export function makeCosmosStore({ prefix }) {
114
115
  all: tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.flatMap(tsplus_module_1.tap(tsplus_module_1.sync(() => ({
115
116
  query: `SELECT * FROM ${name} f WHERE f.id != @id`,
116
117
  parameters: [{ name: "@id", value: importedMarkerId }]
117
- })), q => logQuery(q)), q => tsplus_module_1.promise(() => container.items
118
+ })), (q) => logQuery(q)), (q) => tsplus_module_1.promise(() => container
119
+ .items
118
120
  .query(q)
119
121
  .fetchAll()
120
- .then(({ resources }) => tsplus_module_3.ext_itToChunk(resources)))), "cosmos.all"), "cosmos.db", containerId),
121
- filterJoinSelect: (filter, cursor) => tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.map(tsplus_module_5.ext_forEach(filter.keys, k => tsplus_module_1.flatMap(tsplus_module_1.tap(tsplus_module_1.sync(() => buildFilterJoinSelectCosmosQuery(filter, k, name, cursor?.skip, cursor?.limit)), q => logQuery(q)), q => tsplus_module_1.promise(() => container.items
122
+ .then(({ resources }) => resources))), "cosmos.all"), "cosmos.db", containerId),
123
+ filterJoinSelect: (filter, cursor) => tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.map(tsplus_module_5.ext_forEach(filter
124
+ .keys, (k) => tsplus_module_1.flatMap(tsplus_module_1.tap(tsplus_module_1.sync(() => buildFilterJoinSelectCosmosQuery(filter, k, name, cursor?.skip, cursor?.limit)), (q) => logQuery(q)), (q) => tsplus_module_1.promise(() => container
125
+ .items
122
126
  .query(q)
123
127
  .fetchAll()
124
- .then(({ resources }) => tsplus_module_3.ext_itToChunk(resources))))), a => {
125
- const v = tsplus_module_4.map(tsplus_module_4.flatMap(a, _ => _), x => tsplus_module_7.spread(x, ({ r, ...rest }) => ({ ...rest, ...r })));
126
- return tsplus_module_4.fromIterable(v);
128
+ .then(({ resources }) => resources)))), (a) => {
129
+ const v = a
130
+ .flatMap((_) => _)
131
+ .map((x) => tsplus_module_7.spread(x, ({ r, ...rest }) => ({ ...rest, ...r })));
132
+ return v;
127
133
  }), "cosmos.filterJoinSelect"), "cosmos.db", containerId),
128
134
  /**
129
135
  * May return duplicate results for "join_find", when matching more than once.
@@ -135,27 +141,31 @@ export function makeCosmosStore({ prefix }) {
135
141
  // This is a problem if one of the multiple joined arrays can be empty!
136
142
  // https://stackoverflow.com/questions/60320780/azure-cosmosdb-sql-join-not-returning-results-when-the-child-contains-empty-arra
137
143
  // so we use multiple queries instead.
138
- ? tsplus_module_1.map(tsplus_module_5.ext_forEach(filter.keys, k => tsplus_module_1.flatMap(tsplus_module_1.tap(tsplus_module_1.sync(() => buildFindJoinCosmosQuery(filter, k, name, skip, limit)), q => logQuery(q)), q => tsplus_module_1.promise(() => container.items
144
+ ? tsplus_module_1.map(tsplus_module_5.ext_forEach(filter
145
+ .keys, (k) => tsplus_module_1.flatMap(tsplus_module_1.tap(tsplus_module_1.sync(() => buildFindJoinCosmosQuery(filter, k, name, skip, limit)), (q) => logQuery(q)), (q) => tsplus_module_1.promise(() => container
146
+ .items
139
147
  .query(q)
140
148
  .fetchAll()
141
- .then(({ resources }) => tsplus_module_3.ext_itToChunk(resources))))), _ => tsplus_module_4.flatMap(_, _ => _))
142
- : tsplus_module_1.flatMap(tsplus_module_1.tap(tsplus_module_1.sync(() => buildCosmosQuery(filter, name, importedMarkerId, skip, limit)), q => logQuery(q)), q => tsplus_module_1.promise(() => container.items.query(q)
149
+ .then(({ resources }) => resources)))), (_) => _.flatMap((_) => _))
150
+ : tsplus_module_1.flatMap(tsplus_module_1.tap(tsplus_module_1.sync(() => buildCosmosQuery(filter, name, importedMarkerId, skip, limit)), (q) => logQuery(q)), (q) => tsplus_module_1.promise(() => container
151
+ .items
152
+ .query(q)
143
153
  .fetchAll()
144
- .then(({ resources }) => tsplus_module_3.ext_itToChunk(resources.map(_ => _.f)))))), "cosmos.filter"), "cosmos.db", containerId);
154
+ .then(({ resources }) => resources.map((_) => _.f))))), "cosmos.filter"), "cosmos.db", containerId);
145
155
  },
146
- find: id => tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.promise(() => container
156
+ find: (id) => tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.promise(() => container
147
157
  .item(id, config?.partitionValue({ id }))
148
158
  .read()
149
159
  .then(({ resource }) => tsplus_module_2.fromNullable(resource))), "cosmos.find"), "cosmos.db", containerId),
150
- set: e => tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.flatMap(tsplus_module_2.match(tsplus_module_2.fromNullable(e._etag), () => tsplus_module_1.promise(() => container.items.create({
160
+ set: (e) => tsplus_module_1.logAnnotate(tsplus_module_6.instr(tsplus_module_1.flatMap(tsplus_module_2.match(tsplus_module_2.fromNullable(e._etag), () => tsplus_module_1.promise(() => container.items.create({
151
161
  ...e,
152
162
  _partitionKey: config?.partitionValue(e)
153
- })), eTag => tsplus_module_1.promise(() => container.item(e.id, config?.partitionValue(e)).replace({ ...e, _partitionKey: config?.partitionValue(e) }, {
163
+ })), (eTag) => tsplus_module_1.promise(() => container.item(e.id, config?.partitionValue(e)).replace({ ...e, _partitionKey: config?.partitionValue(e) }, {
154
164
  accessCondition: {
155
165
  type: "IfMatch",
156
166
  condition: eTag
157
167
  }
158
- }))), x => {
168
+ }))), (x) => {
159
169
  if (x.statusCode === 412 || x.statusCode === 404) {
160
170
  return tsplus_module_1.fail(new OptimisticConcurrencyException(name, e.id));
161
171
  }
@@ -180,7 +190,7 @@ export function makeCosmosStore({ prefix }) {
180
190
  console.log("Creating mock data for " + name);
181
191
  if (seed) {
182
192
  const m = yield* $(seed);
183
- yield* $(tsplus_module_8.flatMapOption(tsplus_module_1.sync(() => tsplus_module_3.CollectionToNonEmptyReadonlyArray(m)), a => tsplus_module_1.delay(tsplus_module_1.orDie(s
193
+ yield* $(tsplus_module_8.flatMapOption(tsplus_module_1.sync(() => tsplus_module_3.CollectionToNonEmptyReadonlyArray(m)), (a) => tsplus_module_1.delay(tsplus_module_1.orDie(s
184
194
  .bulkSet(a)), tsplus_module_3.millis_(1100))));
185
195
  }
186
196
  // Mark as imported
@@ -264,14 +274,17 @@ export function buildWhereCosmosQuery(filter, name, importedMarkerId, skip, limi
264
274
  query: `
265
275
  SELECT f
266
276
  FROM ${name} AS f
267
- ${tsplus_module_11.uniqArray(tsplus_module_10.string)(filter.where.filter(_ => _.key.includes(".-1."))
268
- .map(_ => _.key.split(".-1.")[0])
269
- .map(_ => `JOIN ${_} IN f.${_}`))
277
+ ${tsplus_module_11.uniqArray(tsplus_module_10.string)(filter
278
+ .where
279
+ .filter((_) => _.key.includes(".-1."))
280
+ .map((_) => _.key.split(".-1.")[0])
281
+ .map((_) => `JOIN ${_} IN f.${_}`))
270
282
  .join("\n")}
271
- WHERE f.id != @id AND ${filter.where
272
- .map(_ => _.key.includes(".-1.") ?
273
- { ..._, f: _.key.split(".-1.")[0], key: _.key.split(".-1.")[1] } :
274
- { ..._, f: "f" })
283
+ WHERE f.id != @id AND ${filter
284
+ .where
285
+ .map((_) => _.key.includes(".-1.")
286
+ ? { ..._, f: _.key.split(".-1.")[0], key: _.key.split(".-1.")[1] }
287
+ : { ..._, f: "f" })
275
288
  .map((x, i) => x.t === "in"
276
289
  ? `ARRAY_CONTAINS(@v${i}, ${x.f}.${x.key})`
277
290
  : x.t === "not-in"
@@ -295,7 +308,8 @@ export function buildWhereCosmosQuery(filter, name, importedMarkerId, skip, limi
295
308
  ${lm}`,
296
309
  parameters: [
297
310
  { name: "@id", value: importedMarkerId },
298
- ...filter.where
311
+ ...filter
312
+ .where
299
313
  .map((x, i) => ({
300
314
  name: `@v${i}`,
301
315
  value: x.value
@@ -308,9 +322,9 @@ export function buildWhereCosmosQuery(filter, name, importedMarkerId, skip, limi
308
322
  // }
309
323
  const lowerIfNeeded = (key, value) => typeof value === "string" ? `LOWER(${key})` : `${key}`;
310
324
  export function buildCosmosQuery(filter, name, importedMarkerId, skip, limit) {
311
- return filter.type === "startsWith" ||
312
- filter.type === "endsWith" ||
313
- filter.type === "contains"
325
+ return filter.type === "startsWith"
326
+ || filter.type === "endsWith"
327
+ || filter.type === "contains"
314
328
  ? buildLegacyCosmosQuery(filter, name, importedMarkerId, skip, limit)
315
329
  : buildWhereCosmosQuery(filter, name, importedMarkerId, skip, limit);
316
330
  }
@@ -322,4 +336,4 @@ class CosmosDbOperationError {
322
336
  export function CosmosStoreLive(config) {
323
337
  return tsplus_module_1.toLayer(tsplus_module_1.flatMap(tsplus_module_1.config(config), makeCosmosStore), StoreMaker);
324
338
  }
325
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29zbW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9TdG9yZS9Db3Ntb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxLQUFLLFlBQVksTUFBTSwwQ0FBMEMsQ0FBQTtBQUV4RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUVoRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFjaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV6QyxvREFBb0Q7QUFDcEQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxFQUFFLE1BQU0sRUFBaUI7SUFDdkQsT0FBTyxvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO1FBQzNCLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ2xELE9BQU87WUFDTCxJQUFJLEVBQUUsQ0FDSixJQUFZLEVBQ1osSUFBeUMsRUFDekMsTUFBd0IsRUFDeEIsRUFBRSxDQUNGLG9CQUFXLFFBQVEsQ0FBQyxFQUFDLENBQUM7Z0JBQ3BCLE1BQU0sV0FBVyxHQUFHLEdBQUcsTUFBTSxHQUFHLElBQUksRUFBRSxDQUFBO2dCQUN0QyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ04sd0JBQWUsR0FBRyxFQUFFLENBQ2xCLEVBQUUsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUM7b0JBQzlCLEVBQUUsRUFBRSxXQUFXO29CQUNmLGVBQWUsRUFBRSxNQUFNLEVBQUUsVUFBVTt3QkFDakMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVLEVBQUU7d0JBQ25DLENBQUMsQ0FBQyxTQUFTO2lCQUNkLENBQUMsQ0FDSCxDQUNGLENBQUE7Z0JBQ0QsTUFBTSxTQUFTLEdBQUcs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
339
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29zbW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9TdG9yZS9Db3Ntb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBDQUEwQyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQWFoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXpDLG9EQUFvRDtBQUNwRCxNQUFNLFVBQVUsZUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFpQjtJQUN2RCxPQUFPLG9CQUFXLFFBQVEsQ0FBQyxFQUFDLENBQUM7UUFDM0IsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUNyQyxPQUFPO1lBQ0wsSUFBSSxFQUFFLENBQ0osSUFBWSxFQUNaLElBQXlDLEVBQ3pDLE1BQXdCLEVBQ3hCLEVBQUUsQ0FDRixvQkFBVyxRQUFRLENBQUMsRUFBQyxDQUFDO2dCQUNwQixNQUFNLFdBQVcsR0FBRyxHQUFHLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQTtnQkFDdEMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUNOLHdCQUFlLEdBQUcsRUFBRSxDQUNsQixFQUFFLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDO29CQUM5QixFQUFFLEVBQUUsV0FBVztvQkFDZixlQUFlLEVBQUUsTUFBTSxFQUFFLFVBQVU7d0JBQ2pDLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFO3dCQUNuQyxDQUFDLENBQUMsU0FBUztpQkFDZCxDQUFDLENBQ0gsQ0FDRixDQUFBO2dCQUNELE1BQU0sU0FBUyxHQUFHLEVBQUUs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
@@ -1 +1 @@
1
- {"version":3,"file":"Disk.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Disk.ts"],"names":[],"mappings":";;AAMA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAuDzC;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM;yEAOtD,MAAM;GAyCnB;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,MAAM,sGAIvE"}
1
+ {"version":3,"file":"Disk.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Disk.ts"],"names":[],"mappings":";;AAMA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAuDzC;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM;yEAOtD,MAAM;GAyCnB;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,MAAM,sGAKvE"}
@@ -11,8 +11,8 @@ function makeDiskStoreInt(prefix, namespace, dir, name, seed) {
11
11
  const file = dir + "/" + prefix + name + (namespace === "primary" ? "" : "-" + namespace) + ".json";
12
12
  const fsStore = {
13
13
  get: tsplus_module_1.orDie(tsplus_module_1.map(fu
14
- .readTextFile(file), x => JSON.parse(x))),
15
- setRaw: (v) => JSON.stringify([...v], undefined, 2)["|>"](json => fu.writeTextFile(file, json))
14
+ .readTextFile(file), (x) => JSON.parse(x))),
15
+ setRaw: (v) => JSON.stringify([...v], undefined, 2)["|>"]((json) => fu.writeTextFile(file, json))
16
16
  };
17
17
  const store = yield* $(makeMemoryStoreInt(name, !fs.existsSync(file)
18
18
  ? seed
@@ -23,10 +23,10 @@ function makeDiskStoreInt(prefix, namespace, dir, name, seed) {
23
23
  const flushToDisk = withPermit(tsplus_module_1.flatMap(store.all, fsStore.setRaw));
24
24
  return {
25
25
  ...store,
26
- batchSet: tsplus_module_2.flow(store.batchSet, t => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, err => tsplus_module_1.sync(() => console.error(err)))))),
27
- bulkSet: tsplus_module_2.flow(store.bulkSet, t => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, err => tsplus_module_1.sync(() => console.error(err)))))),
28
- set: tsplus_module_2.flow(store.set, t => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, err => tsplus_module_1.sync(() => console.error(err)))))),
29
- remove: tsplus_module_2.flow(store.remove, t => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, err => tsplus_module_1.sync(() => console.error(err))))))
26
+ batchSet: tsplus_module_2.flow(store.batchSet, (t) => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, (err) => tsplus_module_1.sync(() => console.error(err)))))),
27
+ bulkSet: tsplus_module_2.flow(store.bulkSet, (t) => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, (err) => tsplus_module_1.sync(() => console.error(err)))))),
28
+ set: tsplus_module_2.flow(store.set, (t) => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, (err) => tsplus_module_1.sync(() => console.error(err)))))),
29
+ remove: tsplus_module_2.flow(store.remove, (t) => tsplus_module_1.tap(t, () => tsplus_module_1.forkDaemon(tsplus_module_1.tapErrorCause(flushToDisk, (err) => tsplus_module_1.sync(() => console.error(err))))))
30
30
  };
31
31
  });
32
32
  }
@@ -44,7 +44,7 @@ export function makeDiskStore({ prefix }, dir) {
44
44
  const storesSem = tsplus_module_1.unsafeMakeSemaphore(1);
45
45
  const primary = yield* $(makeDiskStoreInt(prefix, "primary", dir, name, seed));
46
46
  const stores = new Map([["primary", primary]]);
47
- const getStore = !config?.allowNamespace ? tsplus_module_1.succeed(primary) : tsplus_module_1.flatMap(tsplus_module_3.get(storeId), namespace => {
47
+ const getStore = !config?.allowNamespace ? tsplus_module_1.succeed(primary) : tsplus_module_1.flatMap(tsplus_module_3.get(storeId), (namespace) => {
48
48
  const store = stores.get(namespace);
49
49
  if (store) {
50
50
  return tsplus_module_1.succeed(store);
@@ -56,18 +56,18 @@ export function makeDiskStore({ prefix }, dir) {
56
56
  const existing = stores.get(namespace);
57
57
  if (existing)
58
58
  return tsplus_module_1.sync(() => existing);
59
- return tsplus_module_1.tap(makeDiskStoreInt(prefix, namespace, dir, name, seed), store => tsplus_module_1.sync(() => stores.set(namespace, store)));
59
+ return tsplus_module_1.tap(makeDiskStoreInt(prefix, namespace, dir, name, seed), (store) => tsplus_module_1.sync(() => stores.set(namespace, store)));
60
60
  }));
61
61
  });
62
62
  const s = {
63
- all: tsplus_module_1.flatMap(getStore, _ => _.all),
64
- find: (...args) => tsplus_module_1.flatMap(getStore, _ => _.find(...args)),
65
- filter: (...args) => tsplus_module_1.flatMap(getStore, _ => _.filter(...args)),
66
- filterJoinSelect: (...args) => tsplus_module_1.flatMap(getStore, _ => _.filterJoinSelect(...args)),
67
- set: (...args) => tsplus_module_1.flatMap(getStore, _ => _.set(...args)),
68
- batchSet: (...args) => tsplus_module_1.flatMap(getStore, _ => _.batchSet(...args)),
69
- bulkSet: (...args) => tsplus_module_1.flatMap(getStore, _ => _.bulkSet(...args)),
70
- remove: (...args) => tsplus_module_1.flatMap(getStore, _ => _.remove(...args))
63
+ all: tsplus_module_1.flatMap(getStore, (_) => _.all),
64
+ find: (...args) => tsplus_module_1.flatMap(getStore, (_) => _.find(...args)),
65
+ filter: (...args) => tsplus_module_1.flatMap(getStore, (_) => _.filter(...args)),
66
+ filterJoinSelect: (...args) => tsplus_module_1.flatMap(getStore, (_) => _.filterJoinSelect(...args)),
67
+ set: (...args) => tsplus_module_1.flatMap(getStore, (_) => _.set(...args)),
68
+ batchSet: (...args) => tsplus_module_1.flatMap(getStore, (_) => _.batchSet(...args)),
69
+ bulkSet: (...args) => tsplus_module_1.flatMap(getStore, (_) => _.bulkSet(...args)),
70
+ remove: (...args) => tsplus_module_1.flatMap(getStore, (_) => _.remove(...args))
71
71
  };
72
72
  return s;
73
73
  })
@@ -75,6 +75,6 @@ export function makeDiskStore({ prefix }, dir) {
75
75
  });
76
76
  }
77
77
  export function DiskStoreLive(config, dir) {
78
- return tsplus_module_1.toLayer(tsplus_module_1.flatMap(tsplus_module_1.config(config), _ => makeDiskStore(_, dir)), StoreMaker);
78
+ return tsplus_module_1.toLayer(tsplus_module_1.flatMap(tsplus_module_1.config(config), (_) => makeDiskStore(_, dir)), StoreMaker);
79
79
  }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvRGlzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxLQUFLLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUV6RCxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUE7QUFFbkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXpDLFNBQVMsZ0JBQWdCLENBQ3ZCLE1BQWMsRUFDZCxTQUFpQixFQUNqQixHQUFXLEVBQ1gsSUFBWSxFQUNaLElBQXlDO0lBRXpDLE9BQU8sb0JBQVcsUUFBUSxDQUFDLEVBQUMsQ0FBQztRQUMzQixNQUFNLElBQUksR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLE1BQU0sR0FBRyxJQUFJLEdBQUcsQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUMsR0FBRyxPQUFPLENBQUE7UUFDbkcsTUFBTSxPQUFPLEdBQUc7WUFDZCxHQUFHLHdCQUFFLG9CQUFBLEVBQUU7aUJBQ0osWUFBWSxDQUFDLElBQUksQ0FBQyxFQUNkLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQVMsQ0FBQyxDQUMxQjtZQUNSLE1BQU0sRUFBRSxDQUFDLENBQWUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDOUcsQ0FBQTtR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
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvRGlzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxLQUFLLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUV6RCxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUE7QUFFbkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXpDLFNBQVMsZ0JBQWdCLENBQ3ZCLE1BQWMsRUFDZCxTQUFpQixFQUNqQixHQUFXLEVBQ1gsSUFBWSxFQUNaLElBQXlDO0lBRXpDLE9BQU8sb0JBQVcsUUFBUSxDQUFDLEVBQUMsQ0FBQztRQUMzQixNQUFNLElBQUksR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLE1BQU0sR0FBRyxJQUFJLEdBQUcsQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUMsR0FBRyxPQUFPLENBQUE7UUFDbkcsTUFBTSxPQUFPLEdBQUc7WUFDZCxHQUFHLHdCQUFFLG9CQUFBLEVBQUU7aUJBQ0osWUFBWSxDQUFDLElBQUksQ0FBQyxFQUNkLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBUyxDQUFDLENBQzVCO1lBQ1IsTUFBTSxFQUFFLENBQUMsQ0FBZSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1NB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
@@ -1,6 +1,5 @@
1
- import { Chunk } from "@effect/data/Chunk";
2
1
  import { Effect } from "@effect/io/Effect";
3
- import { NonEmptyReadonlyArray } from "@effect/data/ReadonlyArray";
2
+ import { NonEmptyReadonlyArray, NonEmptyArray } from "@effect/data/ReadonlyArray";
4
3
  import { RequestContextContainer } from "../RequestContextContainer.js";
5
4
  import type { Filter, PersistenceModelType, Store, StoreConfig } from "./service.js";
6
5
  import { StoreMaker } from "./service.js";
@@ -9,7 +8,7 @@ export declare function memFilter<T extends {
9
8
  }>(filter: Filter<T>, cursor?: {
10
9
  skip?: number;
11
10
  limit?: number;
12
- }): (c: Chunk<T>) => Chunk<T>;
11
+ }): (c: T[]) => T[];
13
12
  export declare const storeId: import("@effect/io/FiberRef").FiberRef<string>;
14
13
  export declare const restoreFromRequestContext: import("@effect/io/Effect").Effect<RequestContextContainer, never, void>;
15
14
  export declare function makeMemoryStoreInt<Id extends string, PM extends PersistenceModelType<Id>>(name: string, seed?: Effect<never, never, Iterable<PM>>): import("@effect/io/Effect").Effect<never, never, Store<PM, Id>>;
@@ -1 +1 @@
1
- {"version":3,"file":"Memory.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Memory.ts"],"names":[],"mappings":";;;AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AACvE,OAAO,KAAK,EAAE,MAAM,EAAoB,oBAAoB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,wBAAgB,SAAS,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,OACnG,MAAM,CAAC,CAAC,KAAG,MAAM,CAAC,CAAC,CAehC;AAED,eAAO,MAAM,OAAO,gDAAiC,CAAA;AACrD,eAAO,MAAM,yBAAyB,0EAErC,CAAA;AAcD,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,oBAAoB,CAAC,EAAE,CAAC,EACvF,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,mEAiD1C;AAED,eAAO,MAAM,eAAe;yEAElB,MAAM;CAkCd,CAAA;AAEF,eAAO,MAAM,eAAe,4DAA0C,CAAA"}
1
+ {"version":3,"file":"Memory.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/Memory.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AACvE,OAAO,KAAK,EAAE,MAAM,EAAoB,oBAAoB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,wBAAgB,SAAS,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,OACnG,CAAC,EAAE,KAAG,CAAC,EAAE,CAetB;AAED,eAAO,MAAM,OAAO,gDAAiC,CAAA;AACrD,eAAO,MAAM,yBAAyB,0EAErC,CAAA;AAeD,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,oBAAoB,CAAC,EAAE,CAAC,EACvF,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,mEAqD1C;AAED,eAAO,MAAM,eAAe;yEAElB,MAAM;CAkCd,CAAA;AAEF,eAAO,MAAM,eAAe,4DAA0C,CAAA"}