@effect-app/infra 0.198.2 → 0.199.2

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 (360) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/_cjs/RequestContext.cjs +14 -9
  3. package/_cjs/RequestContext.cjs.map +1 -1
  4. package/_cjs/_ext/Array.cjs +3 -7
  5. package/_cjs/_ext/Array.cjs.map +1 -1
  6. package/_cjs/api/reportError.cjs +3 -6
  7. package/_cjs/api/reportError.cjs.map +1 -1
  8. package/_cjs/api/routing/base.cjs +27 -61
  9. package/_cjs/api/routing/base.cjs.map +1 -1
  10. package/_cjs/api/routing/defaultErrorHandler.cjs +14 -21
  11. package/_cjs/api/routing/defaultErrorHandler.cjs.map +1 -1
  12. package/_cjs/api/routing/makeRequestHandler.cjs +44 -51
  13. package/_cjs/api/routing/makeRequestHandler.cjs.map +1 -1
  14. package/_cjs/api/routing/match.cjs +6 -13
  15. package/_cjs/api/routing/match.cjs.map +1 -1
  16. package/_cjs/api/{express → routing}/schema/jwt.cjs +3 -4
  17. package/_cjs/api/routing/schema/jwt.cjs.map +1 -0
  18. package/_cjs/api/routing/schema/routing.cjs +136 -0
  19. package/_cjs/api/routing/schema/routing.cjs.map +1 -0
  20. package/_cjs/api/setupRequest.cjs +16 -22
  21. package/_cjs/api/setupRequest.cjs.map +1 -1
  22. package/_cjs/errorReporter.cjs +16 -17
  23. package/_cjs/errorReporter.cjs.map +1 -1
  24. package/_cjs/errors.cjs +2 -4
  25. package/_cjs/errors.cjs.map +1 -1
  26. package/_cjs/filter/types/path/index.cjs +0 -2
  27. package/_cjs/filter/types/path/index.cjs.map +1 -1
  28. package/_cjs/filter.cjs +35 -0
  29. package/_cjs/filter.cjs.map +1 -1
  30. package/_cjs/logger/jsonLogger.cjs +9 -15
  31. package/_cjs/logger/jsonLogger.cjs.map +1 -1
  32. package/_cjs/logger/logFmtLogger.cjs +7 -11
  33. package/_cjs/logger/logFmtLogger.cjs.map +1 -1
  34. package/_cjs/logger/shared.cjs +6 -8
  35. package/_cjs/logger/shared.cjs.map +1 -1
  36. package/_cjs/rateLimit.cjs +9 -12
  37. package/_cjs/rateLimit.cjs.map +1 -1
  38. package/_cjs/services/Emailer/Sendgrid.cjs +9 -16
  39. package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
  40. package/_cjs/services/Emailer/fake.cjs +5 -8
  41. package/_cjs/services/Emailer/fake.cjs.map +1 -1
  42. package/_cjs/services/Emailer/service.cjs +2 -4
  43. package/_cjs/services/Emailer/service.cjs.map +1 -1
  44. package/_cjs/services/Operations/live.cjs +29 -42
  45. package/_cjs/services/Operations/live.cjs.map +1 -1
  46. package/_cjs/services/Operations/service.cjs +15 -15
  47. package/_cjs/services/Operations/service.cjs.map +1 -1
  48. package/_cjs/services/QueueMaker/errors.cjs +8 -12
  49. package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
  50. package/_cjs/services/QueueMaker/memQueue.cjs +27 -33
  51. package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
  52. package/_cjs/services/QueueMaker/sbqueue.cjs +31 -40
  53. package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
  54. package/_cjs/services/QueueMaker/service.cjs +7 -9
  55. package/_cjs/services/QueueMaker/service.cjs.map +1 -1
  56. package/_cjs/services/Repository/dsl.cjs +11 -14
  57. package/_cjs/services/Repository/dsl.cjs.map +1 -1
  58. package/_cjs/services/Repository/ext.cjs +62 -71
  59. package/_cjs/services/Repository/ext.cjs.map +1 -1
  60. package/_cjs/services/RepositoryBase.cjs +212 -197
  61. package/_cjs/services/RepositoryBase.cjs.map +1 -1
  62. package/_cjs/services/RequestContextContainer.cjs +17 -23
  63. package/_cjs/services/RequestContextContainer.cjs.map +1 -1
  64. package/_cjs/services/Store/ContextMapContainer.cjs +10 -16
  65. package/_cjs/services/Store/ContextMapContainer.cjs.map +1 -1
  66. package/_cjs/services/Store/Cosmos/query.cjs +5 -9
  67. package/_cjs/services/Store/Cosmos/query.cjs.map +1 -1
  68. package/_cjs/services/Store/Cosmos.cjs +58 -68
  69. package/_cjs/services/Store/Cosmos.cjs.map +1 -1
  70. package/_cjs/services/Store/Disk.cjs +34 -36
  71. package/_cjs/services/Store/Disk.cjs.map +1 -1
  72. package/_cjs/services/Store/Memory.cjs +55 -65
  73. package/_cjs/services/Store/Memory.cjs.map +1 -1
  74. package/_cjs/services/Store/codeFilter.cjs +2 -4
  75. package/_cjs/services/Store/codeFilter.cjs.map +1 -1
  76. package/_cjs/services/Store/codeFilter.test.cjs +13 -12
  77. package/_cjs/services/Store/codeFilter.test.cjs.map +1 -1
  78. package/_cjs/services/Store/filterApi/query.cjs +2 -4
  79. package/_cjs/services/Store/filterApi/query.cjs.map +1 -1
  80. package/_cjs/services/Store/index.cjs +6 -9
  81. package/_cjs/services/Store/index.cjs.map +1 -1
  82. package/_cjs/services/Store/service.cjs +5 -7
  83. package/_cjs/services/Store/service.cjs.map +1 -1
  84. package/_cjs/services/Store/utils.cjs +16 -20
  85. package/_cjs/services/Store/utils.cjs.map +1 -1
  86. package/_cjs/services/query.cjs +4 -1
  87. package/_cjs/services/query.cjs.map +1 -1
  88. package/_cjs/test.arbs.cjs +3 -4
  89. package/_cjs/test.arbs.cjs.map +1 -1
  90. package/dist/RequestContext.d.ts +20 -20
  91. package/dist/RequestContext.d.ts.map +1 -1
  92. package/dist/RequestContext.js +15 -8
  93. package/dist/_ext/Array.d.ts +2 -3
  94. package/dist/_ext/Array.d.ts.map +1 -1
  95. package/dist/_ext/Array.js +5 -5
  96. package/dist/api/reportError.d.ts +5 -5
  97. package/dist/api/reportError.d.ts.map +1 -1
  98. package/dist/api/reportError.js +6 -6
  99. package/dist/api/routing/base.d.ts +11 -15
  100. package/dist/api/routing/base.d.ts.map +1 -1
  101. package/dist/api/routing/base.js +48 -67
  102. package/dist/api/routing/defaultErrorHandler.d.ts +4 -6
  103. package/dist/api/routing/defaultErrorHandler.d.ts.map +1 -1
  104. package/dist/api/routing/defaultErrorHandler.js +26 -28
  105. package/dist/api/routing/makeRequestHandler.d.ts +6 -7
  106. package/dist/api/routing/makeRequestHandler.d.ts.map +1 -1
  107. package/dist/api/routing/makeRequestHandler.js +69 -59
  108. package/dist/api/routing/match.d.ts +7 -8
  109. package/dist/api/routing/match.d.ts.map +1 -1
  110. package/dist/api/routing/match.js +7 -11
  111. package/dist/api/routing/schema/jwt.d.ts +4 -0
  112. package/dist/api/routing/schema/jwt.d.ts.map +1 -0
  113. package/dist/api/routing/schema/jwt.js +11 -0
  114. package/dist/api/{express → routing}/schema/routing.d.ts +2 -2
  115. package/dist/api/routing/schema/routing.d.ts.map +1 -0
  116. package/dist/api/routing/schema/routing.js +123 -0
  117. package/dist/api/routing.js +3 -1
  118. package/dist/api/setupRequest.d.ts +3 -5
  119. package/dist/api/setupRequest.d.ts.map +1 -1
  120. package/dist/api/setupRequest.js +20 -24
  121. package/dist/errorReporter.d.ts +4 -4
  122. package/dist/errorReporter.d.ts.map +1 -1
  123. package/dist/errorReporter.js +20 -17
  124. package/dist/errors.d.ts +1 -1
  125. package/dist/errors.d.ts.map +1 -1
  126. package/dist/errors.js +3 -3
  127. package/dist/filter/types/path/index.d.ts +2 -2
  128. package/dist/filter/types/path/index.d.ts.map +1 -1
  129. package/dist/filter/types/path/index.js +2 -3
  130. package/dist/filter/types.js +2 -1
  131. package/dist/filter.d.ts.map +1 -1
  132. package/dist/filter.js +36 -1
  133. package/dist/logger/jsonLogger.d.ts +2 -1
  134. package/dist/logger/jsonLogger.d.ts.map +1 -1
  135. package/dist/logger/jsonLogger.js +9 -13
  136. package/dist/logger/logFmtLogger.d.ts +2 -1
  137. package/dist/logger/logFmtLogger.d.ts.map +1 -1
  138. package/dist/logger/logFmtLogger.js +9 -11
  139. package/dist/logger/shared.d.ts +2 -1
  140. package/dist/logger/shared.d.ts.map +1 -1
  141. package/dist/logger/shared.js +7 -9
  142. package/dist/rateLimit.d.ts +7 -10
  143. package/dist/rateLimit.d.ts.map +1 -1
  144. package/dist/rateLimit.js +17 -16
  145. package/dist/services/Emailer/Sendgrid.d.ts +1 -2
  146. package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
  147. package/dist/services/Emailer/Sendgrid.js +16 -20
  148. package/dist/services/Emailer/fake.d.ts +2 -2
  149. package/dist/services/Emailer/fake.d.ts.map +1 -1
  150. package/dist/services/Emailer/fake.js +10 -8
  151. package/dist/services/Emailer/service.d.ts +7 -10
  152. package/dist/services/Emailer/service.d.ts.map +1 -1
  153. package/dist/services/Emailer/service.js +3 -3
  154. package/dist/services/Operations/live.d.ts +2 -3
  155. package/dist/services/Operations/live.d.ts.map +1 -1
  156. package/dist/services/Operations/live.js +44 -51
  157. package/dist/services/Operations/service.d.ts +14 -19
  158. package/dist/services/Operations/service.d.ts.map +1 -1
  159. package/dist/services/Operations/service.js +23 -28
  160. package/dist/services/QueueMaker/errors.d.ts +5 -7
  161. package/dist/services/QueueMaker/errors.d.ts.map +1 -1
  162. package/dist/services/QueueMaker/errors.js +11 -11
  163. package/dist/services/QueueMaker/memQueue.d.ts +6 -9
  164. package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
  165. package/dist/services/QueueMaker/memQueue.js +37 -39
  166. package/dist/services/QueueMaker/sbqueue.d.ts +6 -9
  167. package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
  168. package/dist/services/QueueMaker/sbqueue.js +41 -39
  169. package/dist/services/QueueMaker/service.d.ts +2 -4
  170. package/dist/services/QueueMaker/service.d.ts.map +1 -1
  171. package/dist/services/QueueMaker/service.js +8 -8
  172. package/dist/services/Repository/dsl.d.ts +11 -13
  173. package/dist/services/Repository/dsl.d.ts.map +1 -1
  174. package/dist/services/Repository/dsl.js +12 -13
  175. package/dist/services/Repository/ext.d.ts +34 -62
  176. package/dist/services/Repository/ext.d.ts.map +1 -1
  177. package/dist/services/Repository/ext.js +59 -70
  178. package/dist/services/RepositoryBase.d.ts +101 -71
  179. package/dist/services/RepositoryBase.d.ts.map +1 -1
  180. package/dist/services/RepositoryBase.js +229 -226
  181. package/dist/services/RequestContextContainer.d.ts +13 -21
  182. package/dist/services/RequestContextContainer.d.ts.map +1 -1
  183. package/dist/services/RequestContextContainer.js +21 -25
  184. package/dist/services/Store/ContextMapContainer.d.ts +11 -18
  185. package/dist/services/Store/ContextMapContainer.d.ts.map +1 -1
  186. package/dist/services/Store/ContextMapContainer.js +17 -18
  187. package/dist/services/Store/Cosmos/query.d.ts +3 -2
  188. package/dist/services/Store/Cosmos/query.d.ts.map +1 -1
  189. package/dist/services/Store/Cosmos/query.js +10 -11
  190. package/dist/services/Store/Cosmos.d.ts +2 -3
  191. package/dist/services/Store/Cosmos.d.ts.map +1 -1
  192. package/dist/services/Store/Cosmos.js +107 -90
  193. package/dist/services/Store/Disk.d.ts +4 -4
  194. package/dist/services/Store/Disk.d.ts.map +1 -1
  195. package/dist/services/Store/Disk.js +54 -50
  196. package/dist/services/Store/Memory.d.ts +6 -8
  197. package/dist/services/Store/Memory.d.ts.map +1 -1
  198. package/dist/services/Store/Memory.js +93 -89
  199. package/dist/services/Store/codeFilter.d.ts.map +1 -1
  200. package/dist/services/Store/codeFilter.js +3 -3
  201. package/dist/services/Store/codeFilter.test.d.ts.map +1 -1
  202. package/dist/services/Store/filterApi/query.d.ts +1 -1
  203. package/dist/services/Store/filterApi/query.d.ts.map +1 -1
  204. package/dist/services/Store/filterApi/query.js +3 -3
  205. package/dist/services/Store/index.d.ts +1 -2
  206. package/dist/services/Store/index.d.ts.map +1 -1
  207. package/dist/services/Store/index.js +7 -8
  208. package/dist/services/Store/service.d.ts +20 -23
  209. package/dist/services/Store/service.d.ts.map +1 -1
  210. package/dist/services/Store/service.js +6 -6
  211. package/dist/services/Store/utils.d.ts +3 -3
  212. package/dist/services/Store/utils.d.ts.map +1 -1
  213. package/dist/services/Store/utils.js +26 -28
  214. package/dist/services/query.d.ts +6 -6
  215. package/dist/services/query.d.ts.map +1 -1
  216. package/dist/services/query.js +5 -3
  217. package/dist/test.arbs.d.ts +0 -2
  218. package/dist/test.arbs.d.ts.map +1 -1
  219. package/dist/test.arbs.js +3 -4
  220. package/package.json +28 -168
  221. package/src/RequestContext.ts +1 -0
  222. package/src/_ext/Array.ts +5 -2
  223. package/src/api/reportError.ts +14 -10
  224. package/src/api/routing/base.ts +77 -110
  225. package/src/api/routing/defaultErrorHandler.ts +64 -54
  226. package/src/api/routing/makeRequestHandler.ts +165 -135
  227. package/src/api/routing/match.ts +14 -8
  228. package/src/api/{express → routing}/schema/jwt.ts +6 -5
  229. package/src/api/{express → routing}/schema/routing.ts +2 -1
  230. package/src/api/setupRequest.ts +30 -24
  231. package/src/errorReporter.ts +12 -11
  232. package/src/errors.ts +1 -0
  233. package/src/filter/types/path/index.ts +2 -2
  234. package/src/logger/jsonLogger.ts +6 -5
  235. package/src/logger/logFmtLogger.ts +4 -5
  236. package/src/logger/shared.ts +4 -3
  237. package/src/rateLimit.ts +37 -34
  238. package/src/services/Emailer/Sendgrid.ts +12 -10
  239. package/src/services/Emailer/fake.ts +7 -4
  240. package/src/services/Emailer/service.ts +4 -1
  241. package/src/services/Operations/live.ts +66 -59
  242. package/src/services/Operations/service.ts +41 -34
  243. package/src/services/QueueMaker/errors.ts +15 -11
  244. package/src/services/QueueMaker/memQueue.ts +59 -40
  245. package/src/services/QueueMaker/sbqueue.ts +54 -33
  246. package/src/services/QueueMaker/service.ts +7 -6
  247. package/src/services/Repository/dsl.ts +18 -14
  248. package/src/services/Repository/ext.ts +58 -50
  249. package/src/services/RepositoryBase.ts +478 -351
  250. package/src/services/RequestContextContainer.ts +30 -18
  251. package/src/services/Store/ContextMapContainer.ts +26 -13
  252. package/src/services/Store/Cosmos/query.ts +17 -11
  253. package/src/services/Store/Cosmos.ts +209 -168
  254. package/src/services/Store/Disk.ts +69 -53
  255. package/src/services/Store/Memory.ts +138 -97
  256. package/src/services/Store/{Redis.ts → Redis.ts.bak} +7 -5
  257. package/src/services/Store/codeFilter.test.ts +61 -36
  258. package/src/services/Store/codeFilter.ts +1 -0
  259. package/src/services/Store/filterApi/query.ts +1 -0
  260. package/src/services/Store/index.ts +7 -6
  261. package/src/services/Store/service.ts +4 -1
  262. package/src/services/Store/utils.ts +25 -23
  263. package/src/services/query.ts +3 -2
  264. package/src/services/simpledb/{cosmosdb.ts → cosmosdb.ts.bak} +1 -0
  265. package/src/services/simpledb/{diskdb.ts → diskdb.ts.bak} +2 -1
  266. package/src/services/simpledb/{memdb.ts → memdb.ts.bak} +3 -2
  267. package/src/services/simpledb/{mongodb.ts → mongodb.ts.bak} +1 -0
  268. package/src/services/simpledb/{redisdb.ts → redisdb.ts.bak} +17 -14
  269. package/src/services/simpledb/{shared.ts → shared.ts.bak} +2 -1
  270. package/src/services/simpledb/{simpledb.ts → simpledb.ts.bak} +6 -2
  271. package/tsconfig.json +4 -21
  272. package/tsconfig.json.bak +0 -4
  273. package/_cjs/_global.cjs +0 -6
  274. package/_cjs/_global.cjs.map +0 -1
  275. package/_cjs/_global.ext.cjs +0 -5
  276. package/_cjs/_global.ext.cjs.map +0 -1
  277. package/_cjs/_global.schema.cjs +0 -5
  278. package/_cjs/_global.schema.cjs.map +0 -1
  279. package/_cjs/api/defaultErrorHandler.cjs +0 -37
  280. package/_cjs/api/defaultErrorHandler.cjs.map +0 -1
  281. package/_cjs/api/express/schema/jwt.cjs.map +0 -1
  282. package/_cjs/api/express/schema/routing.cjs +0 -23
  283. package/_cjs/api/express/schema/routing.cjs.map +0 -1
  284. package/_cjs/api/http.cjs +0 -42
  285. package/_cjs/api/http.cjs.map +0 -1
  286. package/_cjs/services/Store/Redis.cjs +0 -73
  287. package/_cjs/services/Store/Redis.cjs.map +0 -1
  288. package/_cjs/services/simpledb/cosmosdb.cjs +0 -109
  289. package/_cjs/services/simpledb/cosmosdb.cjs.map +0 -1
  290. package/_cjs/services/simpledb/diskdb.cjs +0 -125
  291. package/_cjs/services/simpledb/diskdb.cjs.map +0 -1
  292. package/_cjs/services/simpledb/index.cjs +0 -38
  293. package/_cjs/services/simpledb/index.cjs.map +0 -1
  294. package/_cjs/services/simpledb/memdb.cjs +0 -72
  295. package/_cjs/services/simpledb/memdb.cjs.map +0 -1
  296. package/_cjs/services/simpledb/mongodb.cjs +0 -99
  297. package/_cjs/services/simpledb/mongodb.cjs.map +0 -1
  298. package/_cjs/services/simpledb/redisdb.cjs +0 -135
  299. package/_cjs/services/simpledb/redisdb.cjs.map +0 -1
  300. package/_cjs/services/simpledb/shared.cjs +0 -79
  301. package/_cjs/services/simpledb/shared.cjs.map +0 -1
  302. package/_cjs/services/simpledb/simpledb.cjs +0 -85
  303. package/_cjs/services/simpledb/simpledb.cjs.map +0 -1
  304. package/dist/_global.d.ts +0 -10
  305. package/dist/_global.d.ts.map +0 -1
  306. package/dist/_global.ext.d.ts +0 -34
  307. package/dist/_global.ext.d.ts.map +0 -1
  308. package/dist/_global.ext.js +0 -6
  309. package/dist/_global.js +0 -12
  310. package/dist/_global.schema.d.ts +0 -6
  311. package/dist/_global.schema.d.ts.map +0 -1
  312. package/dist/_global.schema.js +0 -9
  313. package/dist/api/defaultErrorHandler.d.ts +0 -6
  314. package/dist/api/defaultErrorHandler.d.ts.map +0 -1
  315. package/dist/api/defaultErrorHandler.js +0 -34
  316. package/dist/api/express/schema/jwt.d.ts +0 -6
  317. package/dist/api/express/schema/jwt.d.ts.map +0 -1
  318. package/dist/api/express/schema/jwt.js +0 -11
  319. package/dist/api/express/schema/routing.d.ts.map +0 -1
  320. package/dist/api/express/schema/routing.js +0 -10
  321. package/dist/api/http.d.ts +0 -16
  322. package/dist/api/http.d.ts.map +0 -1
  323. package/dist/api/http.js +0 -12
  324. package/dist/services/Store/Redis.d.ts +0 -6
  325. package/dist/services/Store/Redis.d.ts.map +0 -1
  326. package/dist/services/Store/Redis.js +0 -76
  327. package/dist/services/simpledb/cosmosdb.d.ts +0 -14
  328. package/dist/services/simpledb/cosmosdb.d.ts.map +0 -1
  329. package/dist/services/simpledb/cosmosdb.js +0 -103
  330. package/dist/services/simpledb/diskdb.d.ts +0 -12
  331. package/dist/services/simpledb/diskdb.d.ts.map +0 -1
  332. package/dist/services/simpledb/diskdb.js +0 -109
  333. package/dist/services/simpledb/index.d.ts +0 -7
  334. package/dist/services/simpledb/index.d.ts.map +0 -1
  335. package/dist/services/simpledb/index.js +0 -7
  336. package/dist/services/simpledb/memdb.d.ts +0 -11
  337. package/dist/services/simpledb/memdb.d.ts.map +0 -1
  338. package/dist/services/simpledb/memdb.js +0 -58
  339. package/dist/services/simpledb/mongodb.d.ts +0 -13
  340. package/dist/services/simpledb/mongodb.d.ts.map +0 -1
  341. package/dist/services/simpledb/mongodb.js +0 -68
  342. package/dist/services/simpledb/redisdb.d.ts +0 -35
  343. package/dist/services/simpledb/redisdb.d.ts.map +0 -1
  344. package/dist/services/simpledb/redisdb.js +0 -126
  345. package/dist/services/simpledb/shared.d.ts +0 -87
  346. package/dist/services/simpledb/shared.d.ts.map +0 -1
  347. package/dist/services/simpledb/shared.js +0 -52
  348. package/dist/services/simpledb/simpledb.d.ts +0 -23
  349. package/dist/services/simpledb/simpledb.d.ts.map +0 -1
  350. package/dist/services/simpledb/simpledb.js +0 -69
  351. package/src/_global.ext.ts +0 -36
  352. package/src/_global.schema.ts +0 -10
  353. package/src/_global.ts +0 -14
  354. package/src/api/defaultErrorHandler.ts +0 -59
  355. package/src/api/express/makeJsonSchema.test.ts.bak +0 -76
  356. package/src/api/express/makeJsonSchema.ts.bak +0 -166
  357. package/src/api/express/makeOpenApiSpecs.ts.bak +0 -62
  358. package/src/api/http.ts +0 -26
  359. package/tsplus.config.json +0 -9
  360. /package/src/services/simpledb/{index.ts → index.ts.bak} +0 -0
@@ -1,31 +1,19 @@
1
- import * as tsplus_module_1 from "effect-app/_ext/misc";
2
- import * as tsplus_module_2 from "effect/Effect";
3
- import * as tsplus_module_3 from "effect-app/schema";
4
- import * as tsplus_module_4 from "effect-app/Pure";
5
- import * as tsplus_module_5 from "@effect-app/core/Array";
6
- import * as tsplus_module_6 from "@effect-app/core/_ext/Iterable";
7
- export const get = get_1;
8
- export const projectEffect = projectEffect_1;
9
- export const queryEffect = queryEffect_1;
10
- export const queryOneEffect = queryOneEffect_1;
11
- export const queryAndSaveOnePureEffect = queryAndSaveOnePureEffect_1;
12
- export const queryAndSavePureEffect = queryAndSavePureEffect_1;
13
- export const byIdAndSaveWithPure = byIdAndSaveWithPure_1;
14
- export const saveManyWithPure_ = saveManyWithPure_1;
15
- export const saveWithPure_ = saveWithPure_1;
16
- export const queryAndSavePureEffectBatched = queryAndSavePureEffectBatched_1;
17
- export const saveManyWithPureBatched_ = saveManyWithPureBatched_1;
18
- export const save = save_1;
19
- export const itemUpdateWithEffect = itemUpdateWithEffect_1;
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ // Update = Must return updated items
3
+ // Modify = Must `set` updated items, and can return anything.
4
+ import { toNonEmptyArray } from "@effect-app/core/Array";
5
+ import { NonNegativeInt } from "@effect-app/schema";
6
+ import { Effect, ReadonlyArray } from "effect-app";
7
+ import { runTerm } from "effect-app/Pure";
20
8
  import { NotFoundError } from "../../errors.js";
21
9
  import { AnyPureDSL } from "./dsl.js";
22
10
  /**
23
11
  * @tsplus fluent Repository get
24
12
  */
25
- function get_1(self, id) {
13
+ export function get(self, id) {
26
14
  return self
27
15
  .find(id)
28
- .flatMap((_) => tsplus_module_1.encaseMaybeInEffect_(_, () => new NotFoundError({ type: self.itemType, id })));
16
+ .pipe(Effect.flatMap((_) => Effect.mapError(_, () => new NotFoundError({ type: self.itemType, id }))));
29
17
  }
30
18
  /**
31
19
  * @tsplus getter Repository log
@@ -33,42 +21,43 @@ function get_1(self, id) {
33
21
  export function log(_) {
34
22
  return (evt) => AnyPureDSL.log(evt);
35
23
  }
36
- function projectEffect_1(self, map) {
24
+ export function projectEffect(self, map) {
37
25
  // TODO: a projection that gets sent to the db instead.
38
- return map.flatMap((f) => self
26
+ return Effect.flatMap(map, (f) => self
39
27
  .utils
40
28
  .filter(f)
41
- .map((_) => f.collect ? _.filterMap(f.collect) : _));
29
+ .pipe(Effect.map((_) => f.collect ? ReadonlyArray.filterMap(_, f.collect) : _)));
42
30
  }
43
31
  export function project(self, map) {
44
- return projectEffect_1(self, tsplus_module_2.sync(() => map));
32
+ return projectEffect(self, Effect.sync(() => map));
45
33
  }
46
34
  /**
47
35
  * TODO: count inside the db.
48
36
  * @tsplus fluent Repository project
49
37
  */
50
38
  export function count(self, filter) {
51
- return projectEffect_1(self, tsplus_module_2.sync(() => ({ filter })))
52
- .map((_) => tsplus_module_3.NonNegativeInt(_.length));
39
+ return projectEffect(self, Effect.sync(() => ({ filter })))
40
+ .pipe(Effect.map((_) => NonNegativeInt(_.length)));
53
41
  }
54
42
  /**
55
43
  * @tsplus fluent Repository queryEffect
56
44
  */
57
- function queryEffect_1(self,
45
+ export function queryEffect(self,
58
46
  // TODO: think about collectPM, collectE, and collect(Parsed)
59
47
  map) {
60
- return map.flatMap((f) => (f.filter ? self.utils.filter(f) : self.utils.all)
61
- .flatMap((_) => self.utils.parseMany(_))
62
- .map((_) => f.collect ? _.filterMap(f.collect) : _));
48
+ return Effect.flatMap(map, (f) => (f.filter ? self.utils.filter(f) : self.utils.all)
49
+ .pipe(Effect.flatMap((_) => self.utils.parseMany(_)), Effect.map((_) => f.collect ? ReadonlyArray.filterMap(_, f.collect) : _)));
63
50
  }
64
- function queryOneEffect_1(self,
51
+ export function queryOneEffect(self,
65
52
  // TODO: think about collectPM, collectE, and collect(Parsed)
66
53
  map) {
67
- return map.flatMap((f) => (f.filter ? self.utils.filter({ filter: f.filter, limit: 1 }) : self.utils.all)
68
- .flatMap((_) => self.utils.parseMany(_))
69
- .flatMap((_) => tsplus_module_1.encaseMaybeInEffect_((f.collect ? _.filterMap(f.collect) : _)
70
- .toNonEmpty, () => new NotFoundError({ type: self.itemType, id: f.filter }))
71
- .map((_) => _[0])));
54
+ return Effect.flatMap(map, (f) => (f.filter ? self.utils.filter({ filter: f.filter, limit: 1 }) : self.utils.all)
55
+ .pipe(Effect.flatMap((_) => self.utils.parseMany(_)), Effect
56
+ .flatMap((_) => toNonEmptyArray(f.collect
57
+ ? ReadonlyArray.filterMap(_, f.collect)
58
+ : _)
59
+ .pipe(Effect.mapError(() => new NotFoundError({ type: self.itemType, id: f.filter })), Effect
60
+ .map((_) => _[0])))));
72
61
  }
73
62
  /**
74
63
  * @tsplus fluent Repository query
@@ -76,75 +65,75 @@ map) {
76
65
  export function query(self,
77
66
  // TODO: think about collectPM, collectE, and collect(Parsed)
78
67
  map) {
79
- return queryEffect_1(self, tsplus_module_2.sync(() => map));
68
+ return queryEffect(self, Effect.sync(() => map));
80
69
  }
81
70
  export function queryOne(self, map) {
82
- return queryOneEffect_1(self, tsplus_module_2.sync(() => map));
71
+ return queryOneEffect(self, Effect.sync(() => map));
83
72
  }
84
- function queryAndSaveOnePureEffect_1(self, map) {
85
- return (pure) => queryOneEffect_1(self, map)
86
- .flatMap((_) => saveWithPure_1(self, _, pure));
73
+ export function queryAndSaveOnePureEffect(self, map) {
74
+ return (pure) => queryOneEffect(self, map)
75
+ .pipe(Effect.flatMap((_) => saveWithPure_(self, _, pure)));
87
76
  }
88
77
  export function queryAndSaveOnePure(self, map) {
89
- return queryAndSaveOnePureEffect_1(self, tsplus_module_2.sync(() => map));
78
+ return queryAndSaveOnePureEffect(self, Effect.sync(() => map));
90
79
  }
91
80
  /**
92
81
  * @tsplus fluent Repository queryAndSavePureEffect
93
82
  */
94
- function queryAndSavePureEffect_1(self, map) {
95
- return (pure) => queryEffect_1(self, map)
96
- .flatMap((_) => saveManyWithPure_1(self, _, pure));
83
+ export function queryAndSavePureEffect(self, map) {
84
+ return (pure) => queryEffect(self, map)
85
+ .pipe(Effect.flatMap((_) => saveManyWithPure_(self, _, pure)));
97
86
  }
98
87
  /**
99
88
  * @tsplus fluent Repository queryAndSavePure
100
89
  */
101
90
  export function queryAndSavePure(self, map) {
102
- return queryAndSavePureEffect_1(self, tsplus_module_2.sync(() => map));
91
+ return queryAndSavePureEffect(self, Effect.sync(() => map));
103
92
  }
104
93
  /**
105
94
  * @tsplus getter Repository saveManyWithPure
106
95
  */
107
96
  export function saveManyWithPure(self) {
108
- return (pure) => (items) => saveManyWithPure_1(self, items, pure);
97
+ return (pure) => (items) => saveManyWithPure_(self, items, pure);
109
98
  }
110
99
  /**
111
100
  * @tsplus fluent Repository byIdAndSaveWithPure
112
101
  */
113
- function byIdAndSaveWithPure_1(self, id) {
114
- return (pure) => get_1(self, id).flatMap((item) => saveWithPure_1(self, item, pure));
102
+ export function byIdAndSaveWithPure(self, id) {
103
+ return (pure) => get(self, id).pipe(Effect.flatMap((item) => saveWithPure_(self, item, pure)));
115
104
  }
116
105
  /**
117
106
  * NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
118
107
  * @tsplus getter Repository handleByIdAndSaveWithPure
119
108
  */
120
109
  export function handleByIdAndSaveWithPure(self) {
121
- return (pure) => (req, ctx) => byIdAndSaveWithPure_1(self, req.id)(pure(req, ctx));
110
+ return (pure) => (req, ctx) => byIdAndSaveWithPure(self, req.id)(pure(req, ctx));
122
111
  }
123
112
  /**
124
113
  * @tsplus fluent Repository saveManyWithPure_
125
114
  */
126
- function saveManyWithPure_1(self, items, pure) {
127
- return saveAllWithEffectInt(self, tsplus_module_4.runTerm(pure, [...items]));
115
+ export function saveManyWithPure_(self, items, pure) {
116
+ return saveAllWithEffectInt(self, runTerm(pure, [...items]));
128
117
  }
129
118
  /**
130
119
  * @tsplus fluent Repository saveWithPure_
131
120
  */
132
- function saveWithPure_1(self, item, pure) {
133
- return saveAllWithEffectInt(self, tsplus_module_4.runTerm(pure, item)
134
- .map(([item, events, a]) => [[item], events, a]));
121
+ export function saveWithPure_(self, item, pure) {
122
+ return saveAllWithEffectInt(self, runTerm(pure, item)
123
+ .pipe(Effect
124
+ .map(([item, events, a]) => [[item], events, a])));
135
125
  }
136
126
  export function saveAllWithEffectInt(self, gen) {
137
- return gen
138
- .flatMap(([items, events, a]) => self.saveAndPublish(items, events).map(() => a));
127
+ return Effect.flatMap(gen, ([items, events, a]) => self.saveAndPublish(items, events).pipe(Effect.map(() => a)));
139
128
  }
140
129
  /**
141
130
  * @tsplus fluent Repository queryAndSavePureEffectBatched
142
131
  */
143
- function queryAndSavePureEffectBatched_1(self,
132
+ export function queryAndSavePureEffectBatched(self,
144
133
  // TODO: think about collectPM, collectE, and collect(Parsed)
145
134
  map, batchSize = 100) {
146
- return (pure) => queryEffect_1(self, map)
147
- .flatMap((_) => saveManyWithPureBatched_1(self, _, pure, batchSize));
135
+ return (pure) => queryEffect(self, map)
136
+ .pipe(Effect.flatMap((_) => saveManyWithPureBatched_(self, _, pure, batchSize)));
148
137
  }
149
138
  /**
150
139
  * @tsplus fluent Repository queryAndSavePureBatched
@@ -152,24 +141,24 @@ map, batchSize = 100) {
152
141
  export function queryAndSavePureBatched(self,
153
142
  // TODO: think about collectPM, collectE, and collect(Parsed)
154
143
  map, batchSize = 100) {
155
- return queryAndSavePureEffectBatched_1(self, tsplus_module_2.sync(() => map), batchSize);
144
+ return queryAndSavePureEffectBatched(self, Effect.sync(() => map), batchSize);
156
145
  }
157
146
  /**
158
147
  * @tsplus fluent Repository saveManyWithPureBatched
159
148
  */
160
149
  export function saveManyWithPureBatched(self, batchSize = 100) {
161
- return (pure) => (items) => saveManyWithPureBatched_1(self, items, pure, batchSize);
150
+ return (pure) => (items) => saveManyWithPureBatched_(self, items, pure, batchSize);
162
151
  }
163
152
  /**
164
153
  * @tsplus fluent Repository saveManyWithPureBatched_
165
154
  */
166
- function saveManyWithPureBatched_1(self, items, pure, batchSize = 100) {
167
- return tsplus_module_6.ext_forEach(tsplus_module_5.chunk_(items, batchSize), (batch) => saveAllWithEffectInt(self, tsplus_module_4.runTerm(pure, batch)));
155
+ export function saveManyWithPureBatched_(self, items, pure, batchSize = 100) {
156
+ return Effect.forEach(ReadonlyArray.chunk_(items, batchSize), (batch) => saveAllWithEffectInt(self, runTerm(pure, batch)));
168
157
  }
169
158
  /**
170
159
  * @tsplus getter Repository save
171
160
  */
172
- function save_1(self) {
161
+ export function save(self) {
173
162
  return (...items) => self.saveAndPublish(items);
174
163
  }
175
164
  /**
@@ -181,13 +170,13 @@ export function saveWithEvents(self) {
181
170
  /**
182
171
  * @tsplus fluent Repository updateWithEffect
183
172
  */
184
- function itemUpdateWithEffect_1(repo, id, mod) {
185
- return get_1(repo, id).andThen(mod).andThen(save_1(repo));
173
+ export function itemUpdateWithEffect(repo, id, mod) {
174
+ return get(repo, id).pipe(Effect.andThen(mod), Effect.andThen(save(repo)));
186
175
  }
187
176
  /**
188
177
  * @tsplus fluent Repository update
189
178
  */
190
179
  export function itemUpdate(repo, id, mod) {
191
- return itemUpdateWithEffect_1(repo, id, (item) => tsplus_module_2.sync(() => mod(item)));
180
+ return itemUpdateWithEffect(repo, id, (item) => Effect.sync(() => mod(item)));
192
181
  }
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL1JlcG9zaXRvcnkvZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OzthQWNnQixHQUFHO2FBeUVILGFBQWE7YUEyR2IsV0FBVzthQWdEWCxjQUFjO2FBeUhkLHlCQUF5QjthQXFEekIsc0JBQXNCO2FBaUR0QixtQkFBbUI7YUE2Qm5CLGlCQUFpQjthQXdCakIsYUFBYTthQTZDYiw2QkFBNkI7YUFxRDdCLHdCQUF3QjthQTZCeEIsSUFBSTthQTRCSixvQkFBb0I7QUE1cEJwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFJL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUVyQzs7R0FFRztBQUNILGVBTUUsSUFBMkMsRUFDM0MsRUFBVztJQUVYLE9BQU8sSUFBSTtTQUNSLElBQUksQ0FBQyxFQUFFLENBQUM7U0FDUixPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHFDQUFBLENBQUMsRUFBZ0IsR0FBRyxFQUFFLENBQUMsSUFBSSxhQUFhLENBQVcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUNyRyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQUtqQixDQUF3QztJQUN4QyxPQUFPLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQzFDLENBQUM7QUFpREQseUJBVUUsSUFBMkMsRUFDM0MsR0FVQztJQUVELHVEQUF1RDtJQUN2RCxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUN2QixJQUFJO1NBQ0QsS0FBSztTQUNMLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDVCxHQUFHLENBQUMsQ0FB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
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL1JlcG9zaXRvcnkvZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxxQ0FBcUM7QUFDckMsOERBQThEO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFbEQsT0FBTyxFQUE2QixPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUVwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFJL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUVyQzs7R0FFRztBQUNILE1BQU0sVUFBVSxHQUFHLENBTWpCLElBQTJDLEVBQzNDLEVBQVc7SUFFWCxPQUFPLElBQUk7U0FDUixJQUFJLENBQUMsRUFBRSxDQUFDO1NBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksYUFBYSxDQUFXLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUNwSCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQUtqQixDQUF3QztJQUN4QyxPQUFPLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQzFDLENBQUM7QUFpREQsTUFBTSxVQUFVLGFBQWEsQ0FVM0IsSUFBMkMsRUFDM0MsR0FVQztJQUVELHVEQUF1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