@effect-app/infra 0.198.2 → 0.199.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 (360) hide show
  1. package/CHANGELOG.md +17 -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 +171 -169
  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 +8 -10
  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 +41 -47
  179. package/dist/services/RepositoryBase.d.ts.map +1 -1
  180. package/dist/services/RepositoryBase.js +182 -194
  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 +12 -8
  248. package/src/services/Repository/ext.ts +52 -44
  249. package/src/services/RepositoryBase.ts +278 -240
  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,99 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createContext = createContext;
7
- var tsplus_module_1 = _interopRequireWildcard(require("effect/Effect"));
8
- var tsplus_module_2 = _interopRequireWildcard(require("effect/Option"));
9
- var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/core/Effect"));
10
- var _mongoClient = require("@effect-app/infra-adapters/mongo-client");
11
- var _shared = require("./shared.cjs");
12
- var simpledb = _interopRequireWildcard(require("./simpledb.cjs"));
13
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
- // const makeFromIndexKeys = (indexKeys: string[], unique: boolean) => indexKeys.reduce((prev, cur) => {
16
- // prev[cur] = 1
17
- // return prev
18
- // }, {} as Record<string, number>)
19
- const setup = (type, indexes) => _mongoClient.MongoClient.tap(({
20
- db
21
- }) => tsplus_module_1.tryPromise(() => db.createCollection(type).catch(err => console.warn(err)))).flatMap(({
22
- db
23
- }) => tsplus_module_1.tryPromise(() => db.collection(type).createIndexes(indexes)));
24
- function createContext() {
25
- return (type, encode, decode,
26
- // schemaVersion: string,
27
- indexes) => {
28
- return setup(type, indexes).map(() => ({
29
- find: simpledb.find(find, decode, type),
30
- findBy,
31
- save: simpledb.storeDirectly(store, type)
32
- }));
33
- function find(id) {
34
- return tsplus_module_3.mapOption(_mongoClient.MongoClient.flatMap(({
35
- db
36
- }) => tsplus_module_1.tryPromise(() => db.collection(type).findOne({
37
- _id: {
38
- equals: id
39
- }
40
- }))).map(tsplus_module_2.fromNullable), ({
41
- data,
42
- version
43
- }) => ({
44
- version,
45
- data
46
- }));
47
- }
48
- function findBy(keys) {
49
- return tsplus_module_3.mapOption(_mongoClient.MongoClient.flatMap(({
50
- db
51
- }) => tsplus_module_1.tryPromise(() => db.collection(type).findOne(keys, {
52
- projection: {
53
- _id: 1
54
- }
55
- }))).map(tsplus_module_2.fromNullable), ({
56
- _id
57
- }) => _id);
58
- }
59
- function store(record, currentVersion) {
60
- return tsplus_module_1.gen(function* ($) {
61
- const version = currentVersion.map(cv => (parseInt(cv) + 1).toString()).getOrElse(() => "1");
62
- const {
63
- db
64
- } = yield* $(_mongoClient.MongoClient);
65
- const data = yield* $(encode(record));
66
- yield* $(tsplus_module_2.match(currentVersion, {
67
- onNone: () => tsplus_module_1.tryPromise(() => db.collection(type).insertOne({
68
- _id: record.id,
69
- version,
70
- timestamp: new Date(),
71
- data
72
- }, {
73
- checkKeys: false // support for keys with `.` and `$`. NOTE: you can write them, read them, but NOT query for them.
74
- })).asUnit.orDie,
75
- onSome: currentVersion => tsplus_module_1.tryPromise(() => db.collection(type).replaceOne({
76
- _id: record.id,
77
- version: currentVersion
78
- }, {
79
- version,
80
- timestamp: new Date(),
81
- data
82
- }, {
83
- upsert: false
84
- })).orDie.flatMap(x => {
85
- if (!x.modifiedCount) {
86
- return new _shared.OptimisticLockException(type, record.id);
87
- }
88
- return tsplus_module_1.unit;
89
- })
90
- }));
91
- return {
92
- version,
93
- data: record
94
- };
95
- });
96
- }
97
- };
98
- }
99
- //# sourceMappingURL=mongodb.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mongodb.cjs","names":["_mongoClient","require","_shared","simpledb","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","setup","type","indexes","MongoClient","tap","db","tsplus_module_1","tryPromise","createCollection","catch","err","console","warn","flatMap","collection","createIndexes","createContext","encode","decode","map","find","findBy","save","storeDirectly","store","id","tsplus_module_3","mapOption","findOne","_id","equals","tsplus_module_2","fromNullable","data","version","keys","projection","record","currentVersion","gen","$","cv","parseInt","toString","getOrElse","match","onNone","insertOne","timestamp","Date","checkKeys","asUnit","orDie","onSome","replaceOne","upsert","x","modifiedCount","OptimisticLockException","unit"],"sources":["../../../src/services/simpledb/mongodb.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,135 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.RedisSerializedDBRecord = void 0;
7
- exports.createContext = createContext;
8
- var tsplus_module_1 = _interopRequireWildcard(require("@effect/schema/Schema"));
9
- var tsplus_module_2 = _interopRequireWildcard(require("effect/Effect"));
10
- var tsplus_module_3 = _interopRequireWildcard(require("@effect-app/core/Effect"));
11
- var tsplus_module_4 = _interopRequireWildcard(require("effect/Option"));
12
- var tsplus_module_5 = _interopRequireWildcard(require("@effect/schema/Parser"));
13
- var _Function = require("@effect-app/core/Function");
14
- var _redisClient = require("@effect-app/infra-adapters/redis-client");
15
- var S = _interopRequireWildcard(require("effect-app/schema"));
16
- var _shared = require("./shared.cjs");
17
- var simpledb = _interopRequireWildcard(require("./simpledb.cjs"));
18
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
19
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
20
- /* eslint-disable @typescript-eslint/no-explicit-any */
21
-
22
- const ttl = 10 * 1000;
23
- function createContext() {
24
- return (type, encode, decode, schemaVersion, makeIndexKey) => {
25
- const getData = (0, _Function.flow)(encode, _ => _.map(JSON.stringify));
26
- return {
27
- find: simpledb.find(find, decode, type),
28
- findByIndex: getIdx,
29
- save: simpledb.store(find, store, lockRedisRecord, type)
30
- };
31
- function find(id) {
32
- return tsplus_module_3.flatMapOption(_redisClient.RedisClient.flatMap(_ => _.hmgetAll(getKey(id))), v => tsplus_module_2.mapError(tsplus_module_1.decodeUnknown(RedisSerializedDBRecord)(v).map(({
33
- data,
34
- version
35
- }) => ({
36
- data: JSON.parse(data),
37
- version
38
- })), e => new _shared.ConnectionException(new Error(e.toString())))).orDie;
39
- }
40
- function store(record, currentVersion) {
41
- const version = currentVersion.map(cv => (parseInt(cv) + 1).toString()).getOrElse(() => "1");
42
- return tsplus_module_4.match(currentVersion, {
43
- onNone: () => tsplus_module_2.scoped(tsplus_module_2.zipRight(lockIndex(record), tsplus_module_2.zipRight(tsplus_module_2.zipRight(tsplus_module_3.zipRightOption(getIndex(record), tsplus_module_2.fail(() => new Error("Combination already exists, abort"))), getData(record))
44
- // TODO: instead use MULTI & EXEC to make it in one command?
45
- .flatMap(data => hmSetRec(getKey(record.id), new RedisSerializedDBRecord({
46
- version,
47
- timestamp: new Date(),
48
- data
49
- }))), setIndex(record)).orDie.map(() => ({
50
- version,
51
- data: record
52
- })))),
53
- onSome: () => getData(record).flatMap(data => hmSetRec(getKey(record.id), new RedisSerializedDBRecord({
54
- version,
55
- timestamp: new Date(),
56
- data
57
- }))).orDie.map(() => ({
58
- version,
59
- data: record
60
- }))
61
- });
62
- }
63
- function getIndex(record) {
64
- const index = makeIndexKey(record);
65
- return getIdx(index);
66
- }
67
- function setIndex(record) {
68
- const index = makeIndexKey(record);
69
- return setIdx(index, record);
70
- }
71
- function lockIndex(record) {
72
- const index = makeIndexKey(record);
73
- return lockRedisIdx(index);
74
- }
75
- function getIdx(index) {
76
- return _redisClient.RedisClient.flatMap(_ => _.hget(getIdxKey(index), index.key).map(_ => _.map(i => i)));
77
- }
78
- function setIdx(index, r) {
79
- return _redisClient.RedisClient.flatMap(_ => _.hset(getIdxKey(index), index.key, r.id));
80
- }
81
- function lockRedisIdx(index) {
82
- const lockKey = getIdxLockKey(index);
83
- // acquire
84
- return tsplus_module_2.acquireRelease(tsplus_module_2.mapBoth(_redisClient.RedisClient.flatMap(({
85
- lock
86
- }) => tsplus_module_2.tryPromise(() => lock.lock(lockKey, ttl))), {
87
- onFailure: err => new _shared.CouldNotAquireDbLockException(type, lockKey, err),
88
- // release
89
- onSuccess: lock => ({
90
- release: tsplus_module_2.tryPromise(() => lock.unlock()).orDie
91
- })
92
- }), l => l.release);
93
- }
94
- function lockRedisRecord(id) {
95
- // acquire
96
- return tsplus_module_2.acquireRelease(tsplus_module_2.mapBoth(_redisClient.RedisClient.flatMap(({
97
- lock
98
- }) => tsplus_module_2.tryPromise(() => lock.lock(getLockKey(id), ttl))), {
99
- onFailure: err => new _shared.CouldNotAquireDbLockException(type, id, err),
100
- // release
101
- onSuccess: lock => ({
102
- // TODO
103
- release: tsplus_module_2.tryPromise(() => lock.unlock()).orDie
104
- })
105
- }), l => l.release);
106
- }
107
- function getKey(id) {
108
- return `v${schemaVersion}.${(0, _shared.getRecordName)(type, id)}`;
109
- }
110
- function getLockKey(id) {
111
- return `v${schemaVersion}.locks.${(0, _shared.getRecordName)(type, id)}`;
112
- }
113
- function getIdxKey(index) {
114
- return `v${schemaVersion}.${(0, _shared.getIndexName)(type, index.doc)}`;
115
- }
116
- function getIdxLockKey(index) {
117
- return `v${schemaVersion}.locks.${(0, _shared.getIndexName)(type, index.doc)}_${index.key}`;
118
- }
119
- };
120
- function hmSetRec(key, val) {
121
- const enc = tsplus_module_5.encodeSync(RedisSerializedDBRecord)(val);
122
- return _redisClient.RedisClient.flatMap(({
123
- client
124
- }) => tsplus_module_2.uninterruptible(tsplus_module_2.async(res => {
125
- client.hmset(key, "version", enc.version, "timestamp", enc.timestamp, "data", enc.data, err => err ? res(new _shared.ConnectionException(err)) : res(tsplus_module_2.sync(() => void 0)));
126
- })));
127
- }
128
- }
129
- class RedisSerializedDBRecord extends S.Class()({
130
- version: S.string,
131
- timestamp: S.Date,
132
- data: S.string
133
- }) {}
134
- exports.RedisSerializedDBRecord = RedisSerializedDBRecord;
135
- //# sourceMappingURL=redisdb.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"redisdb.cjs","names":["_Function","require","_redisClient","S","_interopRequireWildcard","_shared","simpledb","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ttl","createContext","type","encode","decode","schemaVersion","makeIndexKey","getData","flow","_","map","JSON","stringify","find","findByIndex","getIdx","save","store","lockRedisRecord","id","tsplus_module_3","flatMapOption","RedisClient","flatMap","hmgetAll","getKey","v","tsplus_module_2","mapError","tsplus_module_1","decodeUnknown","RedisSerializedDBRecord","data","version","parse","ConnectionException","Error","toString","orDie","record","currentVersion","cv","parseInt","getOrElse","tsplus_module_4","match","onNone","scoped","zipRight","lockIndex","zipRightOption","getIndex","fail","hmSetRec","timestamp","Date","setIndex","onSome","index","setIdx","lockRedisIdx","hget","getIdxKey","key","hset","lockKey","getIdxLockKey","acquireRelease","mapBoth","lock","tryPromise","onFailure","err","CouldNotAquireDbLockException","onSuccess","release","unlock","l","getLockKey","getRecordName","getIndexName","doc","val","enc","tsplus_module_5","encodeSync","client","uninterruptible","async","res","hmset","sync","Class","string","exports"],"sources":["../../../src/services/simpledb/redisdb.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,79 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.SerializedDBRecord = exports.OptimisticLockException = exports.CouldNotAquireDbLockException = exports.ConnectionException = void 0;
7
- exports.getIndexName = getIndexName;
8
- exports.getRecordName = getRecordName;
9
- exports.makeMap = makeMap;
10
- exports.makeSerialisedDBRecord = makeSerialisedDBRecord;
11
- var tsplus_module_1 = _interopRequireWildcard(require("effect"));
12
- var tsplus_module_2 = _interopRequireWildcard(require("effect/Option"));
13
- var tsplus_module_3 = _interopRequireWildcard(require("effect/Effect"));
14
- var S = _interopRequireWildcard(require("effect-app/schema"));
15
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
16
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
17
- class CouldNotAquireDbLockException extends tsplus_module_1.Data.TaggedError("CouldNotAquireDbLockException") {
18
- constructor(type, id, error) {
19
- super({
20
- type,
21
- id,
22
- error,
23
- message: `Couldn't lock db record ${type}: ${id}`
24
- });
25
- }
26
- }
27
- exports.CouldNotAquireDbLockException = CouldNotAquireDbLockException;
28
- class OptimisticLockException extends tsplus_module_1.Data.TaggedError("OptimisticLockException") {
29
- constructor(type, id) {
30
- super({
31
- type,
32
- id,
33
- message: `Existing ${type} ${id} record changed`
34
- });
35
- }
36
- }
37
- exports.OptimisticLockException = OptimisticLockException;
38
- class ConnectionException extends tsplus_module_1.Data.TaggedError("ConnectionException") {
39
- _errorTag = "ConnectionException";
40
- constructor(cause) {
41
- super({
42
- cause,
43
- message: "A connection error ocurred"
44
- });
45
- }
46
- }
47
- exports.ConnectionException = ConnectionException;
48
- class SerializedDBRecord extends S.Class()({
49
- version: S.string,
50
- timestamp: S.Date,
51
- data: S.string
52
- }) {}
53
- // unknown -> string -> SDB?
54
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
55
- exports.SerializedDBRecord = SerializedDBRecord;
56
- function makeSerialisedDBRecord(s) {
57
- return S.struct({
58
- version: S.number,
59
- timestamp: S.Date,
60
- data: s
61
- });
62
- }
63
- function getIndexName(type, id) {
64
- return `${type}-idx_${id}`;
65
- }
66
- function getRecordName(type, id) {
67
- return `${type}-r_${id}`;
68
- }
69
- function makeMap() {
70
- const map = new Map();
71
- return {
72
- find: k => tsplus_module_3.sync(() => tsplus_module_2.fromNullable(map.get(k))),
73
- [Symbol.iterator]: () => map[Symbol.iterator](),
74
- set: (k, v) => tsplus_module_3.sync(() => {
75
- map.set(k, v);
76
- })
77
- };
78
- }
79
- //# sourceMappingURL=shared.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shared.cjs","names":["S","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","CouldNotAquireDbLockException","tsplus_module_1","Data","TaggedError","constructor","type","id","error","message","exports","OptimisticLockException","ConnectionException","_errorTag","cause","SerializedDBRecord","Class","version","string","timestamp","Date","data","makeSerialisedDBRecord","s","struct","number","getIndexName","getRecordName","makeMap","map","Map","find","k","tsplus_module_3","sync","tsplus_module_2","fromNullable","Symbol","iterator","v"],"sources":["../../../src/services/simpledb/shared.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,85 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.RecordCache = exports.LiveRecordCache = exports.InvalidStateError = void 0;
7
- exports.find = find;
8
- exports.makeLiveRecordCache = makeLiveRecordCache;
9
- exports.store = store;
10
- exports.storeDirectly = storeDirectly;
11
- var tsplus_module_1 = _interopRequireWildcard(require("effect/Effect"));
12
- var tsplus_module_2 = _interopRequireWildcard(require("effect/Context"));
13
- var tsplus_module_3 = _interopRequireWildcard(require("effect/Layer"));
14
- var tsplus_module_4 = _interopRequireWildcard(require("@effect-app/core/Effect"));
15
- var tsplus_module_5 = _interopRequireWildcard(require("effect/Option"));
16
- var _shared = require("./shared.cjs");
17
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
- class InvalidStateError {
20
- message;
21
- details;
22
- _tag = "InvalidStateError";
23
- constructor(message, details) {
24
- this.message = message;
25
- this.details = details;
26
- }
27
- }
28
- exports.InvalidStateError = InvalidStateError;
29
- function makeLiveRecordCache() {
30
- const m = new Map();
31
- return {
32
- get: type => tsplus_module_1.sync(() => {
33
- const ex = m.get(type);
34
- if (!ex) {
35
- const nm = (0, _shared.makeMap)();
36
- m.set(type, nm);
37
- return nm;
38
- }
39
- return ex;
40
- })
41
- };
42
- }
43
- // module tag
44
- const RecordCache = exports.RecordCache = tsplus_module_2.GenericTag("@services/RecordCache");
45
- const LiveRecordCache = exports.LiveRecordCache = tsplus_module_3.effect(RecordCache)(tsplus_module_1.sync(() => makeLiveRecordCache()));
46
- const getM = type => eff => tsplus_module_1.gen(function* ($) {
47
- const {
48
- get
49
- } = yield* $(RecordCache);
50
- return yield* $(get(type).flatMap(eff));
51
- });
52
- function find(tryRead, decode, type) {
53
- const getCache = getM(type);
54
- const read = id => tsplus_module_4.mapOption(tsplus_module_4.tapOption(tsplus_module_4.flatMapOption(tryRead(id), ({
55
- data,
56
- version
57
- }) => tsplus_module_1.mapBoth(decode(data), {
58
- onFailure: err => new InvalidStateError("DB serialisation Issue", err),
59
- onSuccess: data => ({
60
- data,
61
- version
62
- })
63
- })), r => getCache(c => c.set(id, r))), r => r.data);
64
- return id => getCache(c => tsplus_module_1.orElse(tsplus_module_4.mapOption(c.find(id), existing => existing.data), () => read(id)));
65
- }
66
- function storeDirectly(save, type) {
67
- const getCache = getM(type);
68
- return record => getCache(c => tsplus_module_4.mapOption(c.find(record.id), x => x.version).flatMap(cv => save(record, cv)).tap(r => c.set(record.id, r)).map(r => r.data));
69
- }
70
- function store(tryRead, save, lock, type) {
71
- const getCache = getM(type);
72
- return record => getCache(c => tsplus_module_4.mapOption(c.find(record.id), x => x.version).flatMap(_ => tsplus_module_5.match(_, {
73
- onNone: () => save(record, tsplus_module_5.none()),
74
- onSome: confirmVersionAndSave(record)
75
- })).tap(r => c.set(record.id, r)).map(r => r.data));
76
- function confirmVersionAndSave(record) {
77
- return cv => tsplus_module_1.scoped(tsplus_module_1.zipRight(lock(record.id), tsplus_module_1.zipRight(tryRead(record.id).flatMap(_ => tsplus_module_5.match(_, {
78
- onNone: () => tsplus_module_1.fail(new InvalidStateError("record is gone")),
79
- onSome: tsplus_module_1.succeed
80
- })).tap(({
81
- version
82
- }) => version !== cv ? new _shared.OptimisticLockException(type, record.id) : tsplus_module_1.unit), save(record, tsplus_module_5.some(cv)))));
83
- }
84
- }
85
- //# sourceMappingURL=simpledb.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simpledb.cjs","names":["_shared","require","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","InvalidStateError","message","details","_tag","constructor","exports","makeLiveRecordCache","m","Map","type","tsplus_module_1","sync","ex","nm","makeMap","RecordCache","tsplus_module_2","GenericTag","LiveRecordCache","tsplus_module_3","effect","getM","eff","gen","$","flatMap","find","tryRead","decode","getCache","read","id","tsplus_module_4","mapOption","tapOption","flatMapOption","data","version","mapBoth","onFailure","err","onSuccess","c","orElse","existing","storeDirectly","save","record","x","cv","tap","map","store","lock","_","tsplus_module_5","match","onNone","none","onSome","confirmVersionAndSave","scoped","zipRight","fail","succeed","OptimisticLockException","unit","some"],"sources":["../../../src/services/simpledb/simpledb.ts"],"sourcesContent":[null],"mappings":"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"}
package/dist/_global.d.ts DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * @tsplus global
3
- */
4
- import "effect-app/_global";
5
- /**
6
- * @tsplus global
7
- */
8
- import "@effect-app/infra-adapters/_global";
9
- import "./_global.ext.js";
10
- //# sourceMappingURL=_global.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_global.d.ts","sourceRoot":"","sources":["../src/_global.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,OAAO,oBAAoB,CAAA;AAE3B;;GAEG;AACH,OAAO,oCAAoC,CAAA;AAE3C,OAAO,kBAAkB,CAAA"}
@@ -1,34 +0,0 @@
1
- /**
2
- * @tsplus global
3
- */
4
- import type {} from "@effect-app/infra/services/Emailer/fake";
5
- /**
6
- * @tsplus global
7
- */
8
- import type {} from "@effect-app/infra/services/Emailer/Sendgrid";
9
- /**
10
- * @tsplus global
11
- */
12
- import type {} from "@effect-app/infra/services/Operations/live";
13
- /**
14
- * @tsplus global
15
- */
16
- import type {} from "@effect-app/infra/services/QueueMaker/errors";
17
- /**
18
- * @tsplus global
19
- */
20
- import type {} from "@effect-app/infra/_ext/Array";
21
- /**
22
- * @tsplus global
23
- */
24
- import type {} from "@effect-app/infra/rateLimit";
25
- /**
26
- * @tsplus global
27
- */
28
- import type {} from "@effect-app/infra/api/setupRequest";
29
- /**
30
- * @tsplus global
31
- */
32
- import {} from "@effect-app/infra/api/reportError";
33
- import "@effect-app/infra/test.arbs";
34
- //# sourceMappingURL=_global.ext.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_global.ext.d.ts","sourceRoot":"","sources":["../src/_global.ext.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAC7D;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,6CAA6C,CAAA;AACjE;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,4CAA4C,CAAA;AAChE;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,8CAA8C,CAAA;AAGlE;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAClD;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,6BAA6B,CAAA;AAEjD;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAA;AAExD;;GAEG;AACH,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAlBlD,OAAO,6BAA6B,CAAA"}
@@ -1,6 +0,0 @@
1
- import "@effect-app/infra/test.arbs";
2
- /**
3
- * @tsplus global
4
- */
5
- import "@effect-app/infra/api/reportError";
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2dsb2JhbC5leHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvX2dsb2JhbC5leHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaUJBLE9BQU8sNkJBQTZCLENBQUE7QUFlcEM7O0dBRUc7QUFDSCxPQUFlLG1DQUFtQyxDQUFBIn0=
package/dist/_global.js DELETED
@@ -1,12 +0,0 @@
1
- /* eslint-disable import/no-duplicates */
2
- /* eslint-disable unused-imports/no-unused-imports */
3
- /**
4
- * @tsplus global
5
- */
6
- import "effect-app/_global";
7
- /**
8
- * @tsplus global
9
- */
10
- import "@effect-app/infra-adapters/_global";
11
- import "./_global.ext.js";
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2dsb2JhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9fZ2xvYmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlDQUF5QztBQUN6QyxxREFBcUQ7QUFFckQ7O0dBRUc7QUFDSCxPQUFPLG9CQUFvQixDQUFBO0FBRTNCOztHQUVHO0FBQ0gsT0FBTyxvQ0FBb0MsQ0FBQTtBQUUzQyxPQUFPLGtCQUFrQixDQUFBIn0=
@@ -1,6 +0,0 @@
1
- /**
2
- * @tsplus global
3
- */
4
- import { Delete, Get, Patch, Post, Put, Req } from "effect-app/schema";
5
- import "effect-app/_global.schema";
6
- //# sourceMappingURL=_global.schema.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_global.schema.d.ts","sourceRoot":"","sources":["../src/_global.schema.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAEtE,OAAO,2BAA2B,CAAA"}
@@ -1,9 +0,0 @@
1
- /* eslint-disable import/no-duplicates */
2
- /* eslint-disable unused-imports/no-unused-imports */
3
- // Required for tsplus with project references in vscode..
4
- /**
5
- * @tsplus global
6
- */
7
- import "effect-app/schema";
8
- import "effect-app/_global.schema";
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2dsb2JhbC5zY2hlbWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvX2dsb2JhbC5zY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEseUNBQXlDO0FBQ3pDLHFEQUFxRDtBQUNyRCwwREFBMEQ7QUFFMUQ7O0dBRUc7QUFDSCxPQUFtRCxtQkFBbUIsQ0FBQTtBQUV0RSxPQUFPLDJCQUEyQixDQUFBIn0=
@@ -1,6 +0,0 @@
1
- import { Effect } from "effect/Effect";
2
- import type { SupportedErrors, ValidationError } from "effect-app/client/errors";
3
- import type express from "express";
4
- export declare function defaultBasicErrorHandler<R>(_req: express.Request, res: express.Response, r2: Effect<void, ValidationError, R>): import("effect/Effect").Effect<void | express.Response<any, Record<string, any>>, never, R>;
5
- export declare function defaultErrorHandler<R>(req: express.Request, res: express.Response, r2: Effect<void, SupportedErrors, R>): import("effect/Effect").Effect<void | express.Response<any, Record<string, any>>, never, R>;
6
- //# sourceMappingURL=defaultErrorHandler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaultErrorHandler.d.ts","sourceRoot":"","sources":["../../src/api/defaultErrorHandler.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAChF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA;AAKlC,wBAAgB,wBAAwB,CAAC,CAAC,EACxC,IAAI,EAAE,OAAO,CAAC,OAAO,EACrB,GAAG,EAAE,OAAO,CAAC,QAAQ,EACrB,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC,+FAerC;AAKD,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,GAAG,EAAE,OAAO,CAAC,OAAO,EACpB,GAAG,EAAE,OAAO,CAAC,QAAQ,EACrB,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC,+FA0BrC"}
@@ -1,34 +0,0 @@
1
- import * as tsplus_module_1 from "effect/Effect";
2
- import * as tsplus_module_2 from "effect/Cause";
3
- import * as tsplus_module_3 from "effect/Schedule";
4
- import { logError } from "../errorReporter.js";
5
- const logRequestError = logError("Request");
6
- export function defaultBasicErrorHandler(_req, res, r2) {
7
- const sendError = (code) => (body) => tsplus_module_1.sync(() => res.status(code).send(body));
8
- return tsplus_module_1.catchAll(tsplus_module_1.catchTag(tsplus_module_1.tapErrorCause(r2, (cause) => tsplus_module_2.isFailure(cause) ? logRequestError(cause) : tsplus_module_1.unit), "ValidationError", (err) => sendError(400)(err.errors))
9
- // final catch all; expecting never so that unhandled known errors will show up
10
- , (err) => tsplus_module_1.logError("Program error, compiler probably silenced, got an unsupported Error in Error Channel of Effect" + err)
11
- .map(() => err)
12
- .flatMap(tsplus_module_1.die));
13
- }
14
- const optimisticConcurrencySchedule = tsplus_module_3.once && tsplus_module_3.recurWhile((a) => a._tag === "OptimisticConcurrencyException");
15
- export function defaultErrorHandler(req, res, r2) {
16
- const r3 = req.method === "PATCH"
17
- ? tsplus_module_1.retry(r2, optimisticConcurrencySchedule)
18
- : r2;
19
- const sendError = (code) => (body) => tsplus_module_1.sync(() => res.status(code).send(body));
20
- return tsplus_module_1.catchAll(tsplus_module_1.catchTags(tsplus_module_1.tapErrorCause(r3, (cause) => tsplus_module_2.isFailure(cause) ? logRequestError(cause) : tsplus_module_1.unit), {
21
- "ValidationError": (err) => sendError(400)(err.errors),
22
- "NotFoundError": sendError(404),
23
- "NotLoggedInError": sendError(401),
24
- "UnauthorizedError": sendError(403),
25
- "InvalidStateError": sendError(422),
26
- // 412 or 409.. https://stackoverflow.com/questions/19122088/which-http-status-code-to-use-to-reject-a-put-due-to-optimistic-locking-failure
27
- "OptimisticConcurrencyException": sendError(412)
28
- })
29
- // final catch all; expecting never so that unhandled known errors will show up
30
- , (err) => tsplus_module_1.logError("Program error, compiler probably silenced, got an unsupported Error in Error Channel of Effect" + err)
31
- .map(() => err)
32
- .flatMap(tsplus_module_1.die));
33
- }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdEVycm9ySGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvZGVmYXVsdEVycm9ySGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFOUMsTUFBTSxlQUFlLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBRTNDLE1BQU0sVUFBVSx3QkFBd0IsQ0FDdEMsSUFBcUIsRUFDckIsR0FBcUIsRUFDckIsRUFBb0M7SUFFcEMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBYSxFQUFFLEVBQUUsQ0FBQyxxQkFBWSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ3JHLE9BQU8seUJBQUEseUJBQUEsOEJBQUEsRUFBRSxFQUNRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQywwQkFBQSxLQUFLLENBQVksQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMscUJBQVksQ0FBQyxFQUN6RSxpQkFBaUIsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRSwrRUFBK0U7TUFDckUsQ0FBQyxHQUFVLEVBQUUsRUFBRSxDQUN2Qix5QkFFSSxnR0FBZ0csR0FBRyxHQUFHLENBQ3ZHO1NBQ0EsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQWMsQ0FBQztTQUN6QixPQUFPLHFCQUFZLENBQ3ZCLENBQUE7QUFDTCxDQUFDO0FBRUQsTUFBTSw2QkFBNkIsR0FBRyx3QkFDakMsMkJBQXFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLGdDQUFnQyxDQUFDLENBQUE7QUFFN0YsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxHQUFvQixFQUNwQixHQUFxQixFQUNyQixFQUFvQztJQUVwQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxLQUFLLE9BQU87UUFDL0IsQ0FBQyxDQUFDLHNCQUFBLEVBQUUsRUFBTyw2QkFBNkIsQ0FBQztRQUN6QyxDQUFDLENBQUMsRUFBRSxDQUFBO0lBQ04sTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBYSxFQUFFLEVBQUUsQ0FBQyxxQkFBWSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ3JHLE9BQU8seUJBQUEsMEJBQUEsOEJBQUEsRUFBRSxFQUNRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQywwQkFBQSxLQUFLLENBQVksQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMscUJBQVksQ0FBQyxFQUN4RTtRQUNULGlCQUFpQixFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUN0RCxlQUFlLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQztRQUMvQixrQkFBa0IsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDO1FBQ2xDLG1CQUFtQixFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUM7UUFDbkMsbUJBQW1CLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQztRQUNuQyw0SUFBNEk7UUFDNUksZ0NBQWdDLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQztLQUNqRCxDQUFDO0lBQ0YsK0VBQStFO01BQ3JFLENBQUMsR0FBVSxFQUFFLEVBQUUsQ0FDdkIseUJBRUksZ0dBQWdHLEdBQUcsR0FBRyxDQUN2RztTQUNBLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFjLENBQUM7U0FDekIsT0FBTyxxQkFBWSxDQUN2QixDQUFBO0FBQ0wsQ0FBQyJ9
@@ -1,6 +0,0 @@
1
- import { Schema } from "effect-app/schema";
2
- import { Effect } from "effect/Effect";
3
- import * as S from "effect-app/schema";
4
- import { type JwtDecodeOptions } from "jwt-decode";
5
- export declare const parseJwt: <R, I, A>(schema: Schema<A, I, R>, options?: JwtDecodeOptions | undefined) => Schema<A, string, R>;
6
- //# sourceMappingURL=jwt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../../../src/api/express/schema/jwt.ts"],"names":[],"mappings":";;AAIA,OAAO,KAAK,CAAC,MAAM,mBAAmB,CAAA;AACtC,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7D,eAAO,MAAM,QAAQ,oBACX,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YACb,gBAAgB,GAAG,SAAS,KACrC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAciB,CAAA"}
@@ -1,11 +0,0 @@
1
- import * as tsplus_module_1 from "@effect/schema/Schema";
2
- import * as S from "effect-app/schema";
3
- import { jwtDecode } from "jwt-decode";
4
- export const parseJwt = (schema, options) => tsplus_module_1.compose(S
5
- .transformOrFail(S.string, S.unknown, (s, __, ast) => S.ParseResult.try({
6
- try: () => jwtDecode(s, options),
7
- catch: (e) => S.ParseResult.type(ast, s, e?.message)
8
- }), (_) => {
9
- throw new Error("not implemented");
10
- }), schema, { strict: false });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwaS9leHByZXNzL3NjaGVtYS9qd3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUlBLE9BQU8sS0FBSyxDQUFDLE1BQU0sbUJBQW1CLENBQUE7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBeUIsTUFBTSxZQUFZLENBQUE7QUFFN0QsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQ3RCLE1BQXVCLEVBQ3ZCLE9BQXNDLEVBQ2hCLEVBQUUsQ0FDeEIsd0JBQUEsQ0FBQztLQUNFLGVBQWUsQ0FDZCxDQUFDLENBQUMsTUFBTSxFQUNSLENBQUMsQ0FBQyxPQUFPLEVBQ1QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQ2IsQUFaSSxDQUFDLENBWUwsV0FBVyxDQUFDLEdBQUcsQ0FBQztJQUNkLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUNoQyxLQUFLLEVBQUUsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLEFBZGpCLENBQUMsQ0FjZ0IsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLENBQUM7Q0FDeEQsQ0FBQyxFQUNKLENBQUMsQ0FBQyxFQUE4QixFQUFFO0lBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtBQUNwQyxDQUFDLENBQ0YsRUFDUSxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQSJ9