@effect-app/infra 4.0.0-beta.26 → 4.0.0-beta.260

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 (503) hide show
  1. package/CHANGELOG.md +1966 -0
  2. package/_check.sh +1 -1
  3. package/dist/CUPS.d.ts +30 -11
  4. package/dist/CUPS.d.ts.map +1 -1
  5. package/dist/CUPS.js +35 -14
  6. package/dist/ClusterCosmos.d.ts +64 -0
  7. package/dist/ClusterCosmos.d.ts.map +1 -0
  8. package/dist/ClusterCosmos.js +487 -0
  9. package/dist/ClusterServiceBus.d.ts +67 -0
  10. package/dist/ClusterServiceBus.d.ts.map +1 -0
  11. package/dist/ClusterServiceBus.js +82 -0
  12. package/dist/ContextProvider.d.ts +34 -0
  13. package/dist/ContextProvider.d.ts.map +1 -0
  14. package/dist/ContextProvider.js +40 -0
  15. package/dist/Emailer/Sendgrid.d.ts +111 -147
  16. package/dist/Emailer/Sendgrid.d.ts.map +1 -1
  17. package/dist/Emailer/Sendgrid.js +24 -19
  18. package/dist/Emailer/fake.d.ts +2 -2
  19. package/dist/Emailer/fake.d.ts.map +1 -1
  20. package/dist/Emailer/fake.js +4 -4
  21. package/dist/MainFiberSet.d.ts +12 -9
  22. package/dist/MainFiberSet.d.ts.map +1 -1
  23. package/dist/MainFiberSet.js +10 -6
  24. package/dist/QueueMaker/SQLQueue.d.ts +8 -9
  25. package/dist/QueueMaker/SQLQueue.d.ts.map +1 -1
  26. package/dist/QueueMaker/SQLQueue.js +138 -120
  27. package/dist/QueueMaker/errors.d.ts +5 -3
  28. package/dist/QueueMaker/errors.d.ts.map +1 -1
  29. package/dist/QueueMaker/errors.js +4 -2
  30. package/dist/QueueMaker/memQueue.d.ts +10 -6
  31. package/dist/QueueMaker/memQueue.d.ts.map +1 -1
  32. package/dist/QueueMaker/memQueue.js +84 -68
  33. package/dist/QueueMaker/sbqueue.d.ts +9 -5
  34. package/dist/QueueMaker/sbqueue.d.ts.map +1 -1
  35. package/dist/QueueMaker/sbqueue.js +60 -58
  36. package/dist/RequestFiberSet.d.ts +10 -7
  37. package/dist/RequestFiberSet.d.ts.map +1 -1
  38. package/dist/RequestFiberSet.js +13 -8
  39. package/dist/SQL/Model.d.ts +468 -0
  40. package/dist/SQL/Model.d.ts.map +1 -0
  41. package/dist/SQL/Model.js +469 -0
  42. package/dist/SQL.d.ts +2 -0
  43. package/dist/SQL.d.ts.map +1 -0
  44. package/dist/{adapters/SQL.js → SQL.js} +1 -1
  45. package/dist/ServiceBus.d.ts +61 -0
  46. package/dist/ServiceBus.d.ts.map +1 -0
  47. package/dist/ServiceBus.js +108 -0
  48. package/dist/Store/Cosmos/query.d.ts +15 -4
  49. package/dist/Store/Cosmos/query.d.ts.map +1 -1
  50. package/dist/Store/Cosmos/query.js +179 -41
  51. package/dist/Store/Cosmos.d.ts +3 -3
  52. package/dist/Store/Cosmos.d.ts.map +1 -1
  53. package/dist/Store/Cosmos.js +344 -246
  54. package/dist/Store/Disk.d.ts +5 -5
  55. package/dist/Store/Disk.d.ts.map +1 -1
  56. package/dist/Store/Disk.js +78 -38
  57. package/dist/Store/Memory.d.ts +7 -10
  58. package/dist/Store/Memory.d.ts.map +1 -1
  59. package/dist/Store/Memory.js +326 -66
  60. package/dist/Store/SQL/Pg.d.ts +4 -0
  61. package/dist/Store/SQL/Pg.d.ts.map +1 -0
  62. package/dist/Store/SQL/Pg.js +232 -0
  63. package/dist/Store/SQL/query.d.ts +49 -0
  64. package/dist/Store/SQL/query.d.ts.map +1 -0
  65. package/dist/Store/SQL/query.js +527 -0
  66. package/dist/Store/SQL.d.ts +21 -0
  67. package/dist/Store/SQL.d.ts.map +1 -0
  68. package/dist/Store/SQL.js +449 -0
  69. package/dist/Store/codeFilter.d.ts +5 -5
  70. package/dist/Store/codeFilter.d.ts.map +1 -1
  71. package/dist/Store/codeFilter.js +6 -3
  72. package/dist/Store/index.d.ts +7 -5
  73. package/dist/Store/index.d.ts.map +1 -1
  74. package/dist/Store/index.js +18 -5
  75. package/dist/Store/utils.d.ts +4 -3
  76. package/dist/Store/utils.d.ts.map +1 -1
  77. package/dist/Store/utils.js +5 -5
  78. package/dist/WorkflowEngineCosmos.d.ts +29 -0
  79. package/dist/WorkflowEngineCosmos.d.ts.map +1 -0
  80. package/dist/WorkflowEngineCosmos.js +521 -0
  81. package/dist/WorkflowEngineSqlite.d.ts +24 -0
  82. package/dist/WorkflowEngineSqlite.d.ts.map +1 -0
  83. package/dist/WorkflowEngineSqlite.js +550 -0
  84. package/dist/arbs.d.ts +2 -2
  85. package/dist/arbs.d.ts.map +1 -1
  86. package/dist/arbs.js +5 -3
  87. package/dist/codec.d.ts +5 -0
  88. package/dist/codec.d.ts.map +1 -0
  89. package/dist/codec.js +5 -0
  90. package/dist/cosmos-client.d.ts +16 -0
  91. package/dist/cosmos-client.d.ts.map +1 -0
  92. package/dist/cosmos-client.js +11 -0
  93. package/dist/errorReporter.d.ts +7 -5
  94. package/dist/errorReporter.d.ts.map +1 -1
  95. package/dist/errorReporter.js +23 -27
  96. package/dist/errors.d.ts +1 -1
  97. package/dist/fileUtil.d.ts +2 -2
  98. package/dist/fileUtil.d.ts.map +1 -1
  99. package/dist/fileUtil.js +2 -2
  100. package/dist/index.d.ts +3 -2
  101. package/dist/index.d.ts.map +1 -1
  102. package/dist/index.js +3 -2
  103. package/dist/internal/RequestContextMiddleware.d.ts +5 -0
  104. package/dist/internal/RequestContextMiddleware.d.ts.map +1 -0
  105. package/dist/internal/RequestContextMiddleware.js +45 -0
  106. package/dist/internal/auth.d.ts +53 -0
  107. package/dist/internal/auth.d.ts.map +1 -0
  108. package/dist/internal/auth.js +180 -0
  109. package/dist/internal/events.d.ts +11 -0
  110. package/dist/internal/events.d.ts.map +1 -0
  111. package/dist/internal/events.js +49 -0
  112. package/dist/internal/health.d.ts +3 -0
  113. package/dist/internal/health.d.ts.map +1 -0
  114. package/dist/internal/health.js +5 -0
  115. package/dist/layerUtils.d.ts +32 -0
  116. package/dist/layerUtils.d.ts.map +1 -0
  117. package/dist/layerUtils.js +17 -0
  118. package/dist/logger/jsonLogger.d.ts +2 -2
  119. package/dist/logger/jsonLogger.d.ts.map +1 -1
  120. package/dist/logger/jsonLogger.js +5 -3
  121. package/dist/logger/logFmtLogger.d.ts +2 -2
  122. package/dist/logger/logFmtLogger.d.ts.map +1 -1
  123. package/dist/logger/logFmtLogger.js +3 -3
  124. package/dist/logger/shared.d.ts +3 -3
  125. package/dist/logger/shared.d.ts.map +1 -1
  126. package/dist/logger/shared.js +5 -5
  127. package/dist/logger.d.ts +1 -1
  128. package/dist/logger.d.ts.map +1 -1
  129. package/dist/memQueue.d.ts +15 -0
  130. package/dist/memQueue.d.ts.map +1 -0
  131. package/dist/memQueue.js +21 -0
  132. package/dist/middlewares.d.ts +10 -0
  133. package/dist/middlewares.d.ts.map +1 -0
  134. package/dist/{api/middlewares.js → middlewares.js} +1 -1
  135. package/dist/mongo-client.d.ts +11 -0
  136. package/dist/mongo-client.d.ts.map +1 -0
  137. package/dist/mongo-client.js +15 -0
  138. package/dist/otel.d.ts +75 -0
  139. package/dist/otel.d.ts.map +1 -0
  140. package/dist/otel.js +65 -0
  141. package/dist/rateLimit.d.ts +12 -4
  142. package/dist/rateLimit.d.ts.map +1 -1
  143. package/dist/rateLimit.js +7 -12
  144. package/dist/redis-client.d.ts +42 -0
  145. package/dist/redis-client.d.ts.map +1 -0
  146. package/dist/redis-client.js +98 -0
  147. package/dist/reportError.d.ts +4 -0
  148. package/dist/reportError.d.ts.map +1 -0
  149. package/dist/reportError.js +28 -0
  150. package/dist/routing/middleware/RouterMiddleware.d.ts +16 -0
  151. package/dist/routing/middleware/RouterMiddleware.d.ts.map +1 -0
  152. package/dist/{api/routing → routing}/middleware/RouterMiddleware.js +1 -1
  153. package/dist/routing/middleware/middleware.d.ts +48 -0
  154. package/dist/routing/middleware/middleware.d.ts.map +1 -0
  155. package/dist/routing/middleware/middleware.js +128 -0
  156. package/dist/routing/middleware.d.ts +3 -0
  157. package/dist/routing/middleware.d.ts.map +1 -0
  158. package/dist/{api/routing → routing}/middleware.js +1 -2
  159. package/dist/routing/schema/jwt.d.ts +4 -0
  160. package/dist/routing/schema/jwt.d.ts.map +1 -0
  161. package/dist/routing/schema/jwt.js +13 -0
  162. package/dist/routing/tsort.d.ts +8 -0
  163. package/dist/routing/tsort.d.ts.map +1 -0
  164. package/dist/routing/tsort.js +51 -0
  165. package/dist/routing/utils.d.ts +19 -0
  166. package/dist/routing/utils.d.ts.map +1 -0
  167. package/dist/routing/utils.js +45 -0
  168. package/dist/routing.d.ts +184 -0
  169. package/dist/routing.d.ts.map +1 -0
  170. package/dist/routing.js +236 -0
  171. package/dist/test.d.ts +3 -3
  172. package/dist/test.d.ts.map +1 -1
  173. package/dist/test.js +2 -2
  174. package/dist/util.d.ts +3 -0
  175. package/dist/util.d.ts.map +1 -0
  176. package/dist/util.js +14 -0
  177. package/dist/vitest.d.ts +1 -1
  178. package/docs/cluster-storage.md +26 -0
  179. package/docs/workflow-engine.md +262 -0
  180. package/examples/query.ts +47 -39
  181. package/package.json +31 -345
  182. package/run.sh +1 -0
  183. package/src/CUPS.ts +52 -13
  184. package/src/ClusterCosmos.ts +954 -0
  185. package/src/ClusterServiceBus.ts +242 -0
  186. package/src/{api/ContextProvider.ts → ContextProvider.ts} +19 -16
  187. package/src/Emailer/Sendgrid.ts +82 -59
  188. package/src/Emailer/fake.ts +3 -3
  189. package/src/MainFiberSet.ts +12 -10
  190. package/src/QueueMaker/SQLQueue.ts +153 -156
  191. package/src/QueueMaker/errors.ts +3 -1
  192. package/src/QueueMaker/memQueue.ts +113 -107
  193. package/src/QueueMaker/sbqueue.ts +78 -90
  194. package/src/RequestFiberSet.ts +13 -8
  195. package/src/{adapters/SQL → SQL}/Model.ts +42 -41
  196. package/src/ServiceBus.ts +219 -0
  197. package/src/Store/Cosmos/query.ts +216 -52
  198. package/src/Store/Cosmos.ts +493 -353
  199. package/src/Store/Disk.ts +109 -69
  200. package/src/Store/Memory.ts +365 -96
  201. package/src/Store/SQL/Pg.ts +363 -0
  202. package/src/Store/SQL/query.ts +603 -0
  203. package/src/Store/SQL.ts +735 -0
  204. package/src/Store/codeFilter.ts +8 -5
  205. package/src/Store/index.ts +21 -6
  206. package/src/Store/utils.ts +26 -24
  207. package/src/WorkflowEngineCosmos.ts +719 -0
  208. package/src/WorkflowEngineSqlite.ts +813 -0
  209. package/src/arbs.ts +5 -3
  210. package/src/{adapters/cosmos-client.ts → cosmos-client.ts} +5 -3
  211. package/src/errorReporter.ts +66 -76
  212. package/src/fileUtil.ts +1 -1
  213. package/src/index.ts +2 -1
  214. package/src/{api/internal → internal}/RequestContextMiddleware.ts +23 -6
  215. package/src/internal/auth.ts +272 -0
  216. package/src/{api/internal → internal}/events.ts +22 -13
  217. package/src/{api/layerUtils.ts → layerUtils.ts} +14 -10
  218. package/src/logger/jsonLogger.ts +4 -2
  219. package/src/logger/logFmtLogger.ts +2 -2
  220. package/src/logger/shared.ts +5 -4
  221. package/src/{adapters/memQueue.ts → memQueue.ts} +5 -4
  222. package/src/{adapters/mongo-client.ts → mongo-client.ts} +4 -2
  223. package/src/otel.ts +152 -0
  224. package/src/rateLimit.ts +34 -23
  225. package/src/{adapters/redis-client.ts → redis-client.ts} +7 -3
  226. package/src/{api/reportError.ts → reportError.ts} +3 -2
  227. package/src/{api/routing → routing}/middleware/RouterMiddleware.ts +5 -4
  228. package/src/{api/routing → routing}/middleware/middleware.ts +62 -17
  229. package/src/routing/middleware.ts +4 -0
  230. package/src/{api/routing → routing}/schema/jwt.ts +2 -1
  231. package/src/{api/routing → routing}/utils.ts +2 -1
  232. package/src/routing.ts +768 -0
  233. package/src/test.ts +2 -2
  234. package/test/auth.test.ts +101 -0
  235. package/test/cluster-cosmos.test.ts +503 -0
  236. package/test/cluster-servicebus.test.ts +180 -0
  237. package/test/contextProvider.test.ts +15 -12
  238. package/test/controller.test.ts +28 -32
  239. package/test/cosmos-query.test.ts +159 -0
  240. package/test/dist/_check-agg-infer.test-d.d.ts +2 -0
  241. package/test/dist/_check-agg-infer.test-d.d.ts.map +1 -0
  242. package/test/dist/_check-agg-infer.test-d.js +19 -0
  243. package/test/dist/_check-proj-infer.test-d.d.ts +2 -0
  244. package/test/dist/_check-proj-infer.test-d.d.ts.map +1 -0
  245. package/test/dist/_check-proj-infer.test-d.js +16 -0
  246. package/test/dist/_check-tighten.test-d.d.ts +2 -0
  247. package/test/dist/_check-tighten.test-d.d.ts.map +1 -0
  248. package/test/dist/_check-tighten.test-d.js +21 -0
  249. package/test/dist/auth.test.d.ts.map +1 -0
  250. package/test/dist/cluster-cosmos.test.d.ts.map +1 -0
  251. package/test/dist/cluster-servicebus.test.d.ts.map +1 -0
  252. package/test/dist/contextProvider.test.d.ts.map +1 -1
  253. package/test/dist/controller.test.d.ts.map +1 -1
  254. package/test/dist/cosmos-query.test.d.ts.map +1 -0
  255. package/test/dist/date-query.test.d.ts.map +1 -0
  256. package/test/dist/fixtures.d.ts +30 -12
  257. package/test/dist/fixtures.d.ts.map +1 -1
  258. package/test/dist/fixtures.js +17 -10
  259. package/test/dist/query.test.d.ts.map +1 -1
  260. package/test/dist/rawQuery.test.d.ts.map +1 -1
  261. package/test/dist/repository-ext.test.d.ts.map +1 -0
  262. package/test/dist/requires.test.d.ts.map +1 -1
  263. package/test/dist/router-generator.test.d.ts.map +1 -0
  264. package/test/dist/routing-interruptibility.test.d.ts.map +1 -0
  265. package/test/dist/rpc-context-map-streaming.test.d.ts.map +1 -0
  266. package/test/dist/rpc-e2e-invalidation.test.d.ts.map +1 -0
  267. package/test/dist/rpc-multi-middleware.test.d.ts.map +1 -1
  268. package/test/dist/rpc-stream-fullstack.test.d.ts.map +1 -0
  269. package/test/dist/sql-store.test.d.ts.map +1 -0
  270. package/test/dist/workflow-engine-cosmos.test.d.ts.map +1 -0
  271. package/test/dist/workflow-engine-sqlite.test.d.ts.map +1 -0
  272. package/test/fixtures.ts +16 -9
  273. package/test/layerUtils.test.ts +2 -2
  274. package/test/query.test.ts +905 -40
  275. package/test/rawQuery.test.ts +340 -22
  276. package/test/repository-ext.test.ts +62 -0
  277. package/test/requires.test.ts +10 -5
  278. package/test/router-generator.test.ts +187 -0
  279. package/test/routing-interruptibility.test.ts +66 -0
  280. package/test/rpc-context-map-streaming.test.ts +262 -0
  281. package/test/rpc-e2e-invalidation.test.ts +256 -0
  282. package/test/rpc-multi-middleware.test.ts +85 -10
  283. package/test/rpc-stream-fullstack.test.ts +304 -0
  284. package/test/sql-store.test.ts +1711 -0
  285. package/test/validateSample.test.ts +26 -14
  286. package/test/workflow-engine-cosmos.test.ts +354 -0
  287. package/test/workflow-engine-sqlite.test.ts +299 -0
  288. package/tsconfig.examples.json +1 -1
  289. package/tsconfig.json +2 -1
  290. package/tsconfig.json.bak +2 -2
  291. package/tsconfig.src.json +35 -35
  292. package/tsconfig.test.json +2 -2
  293. package/dist/Emailer/service.d.ts +0 -55
  294. package/dist/Emailer/service.d.ts.map +0 -1
  295. package/dist/Emailer/service.js +0 -6
  296. package/dist/Emailer.d.ts +0 -2
  297. package/dist/Emailer.d.ts.map +0 -1
  298. package/dist/Emailer.js +0 -2
  299. package/dist/Model/Repository/ext.d.ts +0 -41
  300. package/dist/Model/Repository/ext.d.ts.map +0 -1
  301. package/dist/Model/Repository/ext.js +0 -65
  302. package/dist/Model/Repository/internal/internal.d.ts +0 -59
  303. package/dist/Model/Repository/internal/internal.d.ts.map +0 -1
  304. package/dist/Model/Repository/internal/internal.js +0 -316
  305. package/dist/Model/Repository/legacy.d.ts +0 -19
  306. package/dist/Model/Repository/legacy.d.ts.map +0 -1
  307. package/dist/Model/Repository/legacy.js +0 -2
  308. package/dist/Model/Repository/makeRepo.d.ts +0 -49
  309. package/dist/Model/Repository/makeRepo.d.ts.map +0 -1
  310. package/dist/Model/Repository/makeRepo.js +0 -24
  311. package/dist/Model/Repository/service.d.ts +0 -89
  312. package/dist/Model/Repository/service.d.ts.map +0 -1
  313. package/dist/Model/Repository/service.js +0 -2
  314. package/dist/Model/Repository/validation.d.ts +0 -42
  315. package/dist/Model/Repository/validation.d.ts.map +0 -1
  316. package/dist/Model/Repository/validation.js +0 -32
  317. package/dist/Model/Repository.d.ts +0 -6
  318. package/dist/Model/Repository.d.ts.map +0 -1
  319. package/dist/Model/Repository.js +0 -6
  320. package/dist/Model/dsl.d.ts +0 -32
  321. package/dist/Model/dsl.d.ts.map +0 -1
  322. package/dist/Model/dsl.js +0 -44
  323. package/dist/Model/filter/filterApi.d.ts +0 -30
  324. package/dist/Model/filter/filterApi.d.ts.map +0 -1
  325. package/dist/Model/filter/filterApi.js +0 -2
  326. package/dist/Model/filter/types/errors.d.ts +0 -29
  327. package/dist/Model/filter/types/errors.d.ts.map +0 -1
  328. package/dist/Model/filter/types/errors.js +0 -2
  329. package/dist/Model/filter/types/fields.d.ts +0 -15
  330. package/dist/Model/filter/types/fields.d.ts.map +0 -1
  331. package/dist/Model/filter/types/fields.js +0 -2
  332. package/dist/Model/filter/types/path/common.d.ts +0 -316
  333. package/dist/Model/filter/types/path/common.d.ts.map +0 -1
  334. package/dist/Model/filter/types/path/common.js +0 -2
  335. package/dist/Model/filter/types/path/eager.d.ts +0 -95
  336. package/dist/Model/filter/types/path/eager.d.ts.map +0 -1
  337. package/dist/Model/filter/types/path/eager.js +0 -31
  338. package/dist/Model/filter/types/path/index.d.ts +0 -4
  339. package/dist/Model/filter/types/path/index.d.ts.map +0 -1
  340. package/dist/Model/filter/types/path/index.js +0 -3
  341. package/dist/Model/filter/types/utils.d.ts +0 -79
  342. package/dist/Model/filter/types/utils.d.ts.map +0 -1
  343. package/dist/Model/filter/types/utils.js +0 -2
  344. package/dist/Model/filter/types/validator.d.ts +0 -30
  345. package/dist/Model/filter/types/validator.d.ts.map +0 -1
  346. package/dist/Model/filter/types/validator.js +0 -2
  347. package/dist/Model/filter/types.d.ts +0 -5
  348. package/dist/Model/filter/types.d.ts.map +0 -1
  349. package/dist/Model/filter/types.js +0 -7
  350. package/dist/Model/query/dsl.d.ts +0 -248
  351. package/dist/Model/query/dsl.d.ts.map +0 -1
  352. package/dist/Model/query/dsl.js +0 -104
  353. package/dist/Model/query/new-kid-interpreter.d.ts +0 -28
  354. package/dist/Model/query/new-kid-interpreter.d.ts.map +0 -1
  355. package/dist/Model/query/new-kid-interpreter.js +0 -165
  356. package/dist/Model/query.d.ts +0 -15
  357. package/dist/Model/query.d.ts.map +0 -1
  358. package/dist/Model/query.js +0 -3
  359. package/dist/Model.d.ts +0 -4
  360. package/dist/Model.d.ts.map +0 -1
  361. package/dist/Model.js +0 -4
  362. package/dist/Operations.d.ts +0 -55
  363. package/dist/Operations.d.ts.map +0 -1
  364. package/dist/Operations.js +0 -102
  365. package/dist/OperationsRepo.d.ts +0 -41
  366. package/dist/OperationsRepo.d.ts.map +0 -1
  367. package/dist/OperationsRepo.js +0 -14
  368. package/dist/QueueMaker/service.d.ts +0 -11
  369. package/dist/QueueMaker/service.d.ts.map +0 -1
  370. package/dist/QueueMaker/service.js +0 -4
  371. package/dist/RequestContext.d.ts +0 -63
  372. package/dist/RequestContext.d.ts.map +0 -1
  373. package/dist/RequestContext.js +0 -49
  374. package/dist/Store/ContextMapContainer.d.ts +0 -14
  375. package/dist/Store/ContextMapContainer.d.ts.map +0 -1
  376. package/dist/Store/ContextMapContainer.js +0 -16
  377. package/dist/Store/service.d.ts +0 -108
  378. package/dist/Store/service.d.ts.map +0 -1
  379. package/dist/Store/service.js +0 -71
  380. package/dist/Store.d.ts +0 -2
  381. package/dist/Store.d.ts.map +0 -1
  382. package/dist/Store.js +0 -2
  383. package/dist/adapters/SQL/Model.d.ts +0 -479
  384. package/dist/adapters/SQL/Model.d.ts.map +0 -1
  385. package/dist/adapters/SQL/Model.js +0 -478
  386. package/dist/adapters/SQL.d.ts +0 -2
  387. package/dist/adapters/SQL.d.ts.map +0 -1
  388. package/dist/adapters/ServiceBus.d.ts +0 -58
  389. package/dist/adapters/ServiceBus.d.ts.map +0 -1
  390. package/dist/adapters/ServiceBus.js +0 -99
  391. package/dist/adapters/cosmos-client.d.ts +0 -14
  392. package/dist/adapters/cosmos-client.d.ts.map +0 -1
  393. package/dist/adapters/cosmos-client.js +0 -9
  394. package/dist/adapters/index.d.ts +0 -2
  395. package/dist/adapters/index.d.ts.map +0 -1
  396. package/dist/adapters/index.js +0 -2
  397. package/dist/adapters/logger.d.ts +0 -9
  398. package/dist/adapters/logger.d.ts.map +0 -1
  399. package/dist/adapters/logger.js +0 -3
  400. package/dist/adapters/memQueue.d.ts +0 -13
  401. package/dist/adapters/memQueue.d.ts.map +0 -1
  402. package/dist/adapters/memQueue.js +0 -20
  403. package/dist/adapters/mongo-client.d.ts +0 -10
  404. package/dist/adapters/mongo-client.d.ts.map +0 -1
  405. package/dist/adapters/mongo-client.js +0 -13
  406. package/dist/adapters/redis-client.d.ts +0 -39
  407. package/dist/adapters/redis-client.d.ts.map +0 -1
  408. package/dist/adapters/redis-client.js +0 -94
  409. package/dist/api/ContextProvider.d.ts +0 -31
  410. package/dist/api/ContextProvider.d.ts.map +0 -1
  411. package/dist/api/ContextProvider.js +0 -38
  412. package/dist/api/codec.d.ts +0 -5
  413. package/dist/api/codec.d.ts.map +0 -1
  414. package/dist/api/codec.js +0 -5
  415. package/dist/api/internal/RequestContextMiddleware.d.ts +0 -5
  416. package/dist/api/internal/RequestContextMiddleware.d.ts.map +0 -1
  417. package/dist/api/internal/RequestContextMiddleware.js +0 -35
  418. package/dist/api/internal/auth.d.ts +0 -15
  419. package/dist/api/internal/auth.d.ts.map +0 -1
  420. package/dist/api/internal/auth.js +0 -47
  421. package/dist/api/internal/events.d.ts +0 -9
  422. package/dist/api/internal/events.d.ts.map +0 -1
  423. package/dist/api/internal/events.js +0 -42
  424. package/dist/api/internal/health.d.ts +0 -3
  425. package/dist/api/internal/health.d.ts.map +0 -1
  426. package/dist/api/internal/health.js +0 -5
  427. package/dist/api/layerUtils.d.ts +0 -24
  428. package/dist/api/layerUtils.d.ts.map +0 -1
  429. package/dist/api/layerUtils.js +0 -16
  430. package/dist/api/middlewares.d.ts +0 -10
  431. package/dist/api/middlewares.d.ts.map +0 -1
  432. package/dist/api/reportError.d.ts +0 -4
  433. package/dist/api/reportError.d.ts.map +0 -1
  434. package/dist/api/reportError.js +0 -27
  435. package/dist/api/routing/middleware/RouterMiddleware.d.ts +0 -15
  436. package/dist/api/routing/middleware/RouterMiddleware.d.ts.map +0 -1
  437. package/dist/api/routing/middleware/middleware.d.ts +0 -9
  438. package/dist/api/routing/middleware/middleware.d.ts.map +0 -1
  439. package/dist/api/routing/middleware/middleware.js +0 -92
  440. package/dist/api/routing/middleware.d.ts +0 -4
  441. package/dist/api/routing/middleware.d.ts.map +0 -1
  442. package/dist/api/routing/schema/jwt.d.ts +0 -4
  443. package/dist/api/routing/schema/jwt.d.ts.map +0 -1
  444. package/dist/api/routing/schema/jwt.js +0 -12
  445. package/dist/api/routing/tsort.d.ts +0 -8
  446. package/dist/api/routing/tsort.d.ts.map +0 -1
  447. package/dist/api/routing/tsort.js +0 -51
  448. package/dist/api/routing/utils.d.ts +0 -19
  449. package/dist/api/routing/utils.d.ts.map +0 -1
  450. package/dist/api/routing/utils.js +0 -44
  451. package/dist/api/routing.d.ts +0 -138
  452. package/dist/api/routing.d.ts.map +0 -1
  453. package/dist/api/routing.js +0 -166
  454. package/dist/api/setupRequest.d.ts +0 -12
  455. package/dist/api/setupRequest.d.ts.map +0 -1
  456. package/dist/api/setupRequest.js +0 -44
  457. package/dist/api/util.d.ts +0 -3
  458. package/dist/api/util.d.ts.map +0 -1
  459. package/dist/api/util.js +0 -14
  460. package/eslint.config.mjs +0 -24
  461. package/src/Emailer/service.ts +0 -52
  462. package/src/Emailer.ts +0 -1
  463. package/src/Model/Repository/ext.ts +0 -283
  464. package/src/Model/Repository/internal/internal.ts +0 -577
  465. package/src/Model/Repository/legacy.ts +0 -27
  466. package/src/Model/Repository/makeRepo.ts +0 -139
  467. package/src/Model/Repository/service.ts +0 -627
  468. package/src/Model/Repository/validation.ts +0 -31
  469. package/src/Model/Repository.ts +0 -5
  470. package/src/Model/dsl.ts +0 -128
  471. package/src/Model/filter/filterApi.ts +0 -60
  472. package/src/Model/filter/types/errors.ts +0 -47
  473. package/src/Model/filter/types/fields.ts +0 -50
  474. package/src/Model/filter/types/path/common.ts +0 -404
  475. package/src/Model/filter/types/path/eager.ts +0 -298
  476. package/src/Model/filter/types/path/index.ts +0 -4
  477. package/src/Model/filter/types/utils.ts +0 -128
  478. package/src/Model/filter/types/validator.ts +0 -46
  479. package/src/Model/filter/types.ts +0 -6
  480. package/src/Model/query/dsl.ts +0 -2110
  481. package/src/Model/query/new-kid-interpreter.ts +0 -210
  482. package/src/Model/query.ts +0 -13
  483. package/src/Model.ts +0 -3
  484. package/src/Operations.ts +0 -235
  485. package/src/OperationsRepo.ts +0 -16
  486. package/src/QueueMaker/service.ts +0 -17
  487. package/src/RequestContext.ts +0 -63
  488. package/src/Store/ContextMapContainer.ts +0 -20
  489. package/src/Store/service.ts +0 -184
  490. package/src/Store.ts +0 -1
  491. package/src/adapters/ServiceBus.ts +0 -209
  492. package/src/adapters/index.ts +0 -0
  493. package/src/adapters/logger.ts +0 -3
  494. package/src/api/internal/auth.ts +0 -68
  495. package/src/api/routing/middleware.ts +0 -6
  496. package/src/api/routing.ts +0 -598
  497. package/src/api/setupRequest.ts +0 -84
  498. /package/src/{adapters/SQL.ts → SQL.ts} +0 -0
  499. /package/src/{api/codec.ts → codec.ts} +0 -0
  500. /package/src/{api/internal → internal}/health.ts +0 -0
  501. /package/src/{api/middlewares.ts → middlewares.ts} +0 -0
  502. /package/src/{api/routing → routing}/tsort.ts +0 -0
  503. /package/src/{api/util.ts → util.ts} +0 -0
package/package.json CHANGED
@@ -1,54 +1,52 @@
1
1
  {
2
2
  "name": "@effect-app/infra",
3
- "version": "4.0.0-beta.26",
3
+ "version": "4.0.0-beta.260",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
7
7
  "@faker-js/faker": "^8.4.1",
8
8
  "change-case": "^5.4.4",
9
9
  "cross-fetch": "^4.1.0",
10
- "express-oauth2-jwt-bearer": "^1.7.4",
11
- "fast-check": "~4.5.3",
10
+ "fast-check": "~4.7.0",
11
+ "jose": "^6.2.3",
12
12
  "path-parser": "^6.1.0",
13
13
  "proper-lockfile": "^4.1.2",
14
- "pure-rand": "7.0.1",
14
+ "pure-rand": "8.4.0",
15
15
  "query-string": "^9.3.1",
16
- "effect-app": "4.0.0-beta.26"
16
+ "effect-app": "4.0.0-beta.260"
17
17
  },
18
18
  "devDependencies": {
19
- "@azure/cosmos": "^4.9.1",
19
+ "@azure/cosmos": "^4.9.3",
20
20
  "@azure/service-bus": "^7.9.5",
21
- "@sentry/node": "10.42.0",
22
- "@sentry/opentelemetry": "10.42.0",
23
- "@types/express": "^5.0.6",
24
- "@types/node": "25.3.3",
21
+ "@effect/sql-sqlite-node": "4.0.0-beta.71",
22
+ "@sentry/node": "10.51.0",
23
+ "@sentry/opentelemetry": "10.51.0",
24
+ "@types/better-sqlite3": "^7.6.13",
25
+ "@types/node": "25.6.0",
25
26
  "@types/proper-lockfile": "^4.1.4",
26
27
  "@types/redis": "^2.8.32",
27
28
  "@types/redlock": "^4.0.8",
28
- "express": "^5.2.1",
29
- "jwks-rsa": "2.1.4",
29
+ "better-sqlite3": "^12.9.0",
30
30
  "jwt-decode": "^4.0.0",
31
- "mongodb": "7.1.0",
31
+ "mongodb": "7.2.0",
32
32
  "redis": "^3.1.2",
33
33
  "redlock": "^4.2.0",
34
34
  "strip-ansi": "^7.2.0",
35
- "typescript": "~5.9.3",
36
- "vitest": "^4.0.18",
37
- "@effect-app/eslint-shared-config": "0.5.7-beta.2"
35
+ "typescript": "~6.0.3",
36
+ "vitest": "^4.1.5"
38
37
  },
39
38
  "peerDependencies": {
40
- "@azure/cosmos": "^4.9.1",
39
+ "@azure/cosmos": "^4.9.3",
41
40
  "@azure/service-bus": "^7.9.5",
42
- "@effect/vitest": "^4.0.0-beta.36",
41
+ "@effect/vitest": "^4.0.0-beta.71",
43
42
  "@sendgrid/helpers": "^8.0.0",
44
43
  "@sendgrid/mail": "^8.1.6",
45
- "@sentry/node": "10.42.0",
46
- "@sentry/opentelemetry": "10.42.0",
44
+ "@sentry/node": "10.51.0",
45
+ "@sentry/opentelemetry": "10.51.0",
46
+ "effect": "^4.0.0-beta.71",
47
47
  "jwt-decode": "^4.0.0",
48
48
  "redis": "^3.1.2",
49
- "redlock": "^4.2.0",
50
- "effect": "^4.0.0-beta.36",
51
- "express": "^5.2.1"
49
+ "redlock": "^4.2.0"
52
50
  },
53
51
  "typesVersions": {
54
52
  "*": {
@@ -62,340 +60,28 @@
62
60
  "types": "./dist/index.d.ts",
63
61
  "default": "./dist/index.js"
64
62
  },
65
- "./CUPS": {
66
- "types": "./dist/CUPS.d.ts",
67
- "default": "./dist/CUPS.js"
68
- },
69
- "./Emailer": {
70
- "types": "./dist/Emailer.d.ts",
71
- "default": "./dist/Emailer.js"
72
- },
73
- "./Emailer/Sendgrid": {
74
- "types": "./dist/Emailer/Sendgrid.d.ts",
75
- "default": "./dist/Emailer/Sendgrid.js"
76
- },
77
- "./Emailer/fake": {
78
- "types": "./dist/Emailer/fake.d.ts",
79
- "default": "./dist/Emailer/fake.js"
80
- },
81
- "./Emailer/service": {
82
- "types": "./dist/Emailer/service.d.ts",
83
- "default": "./dist/Emailer/service.js"
84
- },
85
- "./MainFiberSet": {
86
- "types": "./dist/MainFiberSet.d.ts",
87
- "default": "./dist/MainFiberSet.js"
88
- },
89
- "./Model": {
90
- "types": "./dist/Model.d.ts",
91
- "default": "./dist/Model.js"
92
- },
93
- "./Model/Repository": {
94
- "types": "./dist/Model/Repository.d.ts",
95
- "default": "./dist/Model/Repository.js"
96
- },
97
- "./Model/Repository/ext": {
98
- "types": "./dist/Model/Repository/ext.d.ts",
99
- "default": "./dist/Model/Repository/ext.js"
100
- },
101
- "./Model/Repository/legacy": {
102
- "types": "./dist/Model/Repository/legacy.d.ts",
103
- "default": "./dist/Model/Repository/legacy.js"
104
- },
105
- "./Model/Repository/makeRepo": {
106
- "types": "./dist/Model/Repository/makeRepo.d.ts",
107
- "default": "./dist/Model/Repository/makeRepo.js"
108
- },
109
- "./Model/Repository/service": {
110
- "types": "./dist/Model/Repository/service.d.ts",
111
- "default": "./dist/Model/Repository/service.js"
112
- },
113
- "./Model/Repository/validation": {
114
- "types": "./dist/Model/Repository/validation.d.ts",
115
- "default": "./dist/Model/Repository/validation.js"
116
- },
117
- "./Model/dsl": {
118
- "types": "./dist/Model/dsl.d.ts",
119
- "default": "./dist/Model/dsl.js"
120
- },
121
- "./Model/filter/filterApi": {
122
- "types": "./dist/Model/filter/filterApi.d.ts",
123
- "default": "./dist/Model/filter/filterApi.js"
124
- },
125
- "./Model/filter/types": {
126
- "types": "./dist/Model/filter/types.d.ts",
127
- "default": "./dist/Model/filter/types.js"
128
- },
129
- "./Model/filter/types/errors": {
130
- "types": "./dist/Model/filter/types/errors.d.ts",
131
- "default": "./dist/Model/filter/types/errors.js"
132
- },
133
- "./Model/filter/types/fields": {
134
- "types": "./dist/Model/filter/types/fields.d.ts",
135
- "default": "./dist/Model/filter/types/fields.js"
136
- },
137
- "./Model/filter/types/path/common": {
138
- "types": "./dist/Model/filter/types/path/common.d.ts",
139
- "default": "./dist/Model/filter/types/path/common.js"
140
- },
141
- "./Model/filter/types/path/eager": {
142
- "types": "./dist/Model/filter/types/path/eager.d.ts",
143
- "default": "./dist/Model/filter/types/path/eager.js"
144
- },
145
- "./Model/filter/types/path/index": {
146
- "types": "./dist/Model/filter/types/path/index.d.ts",
147
- "default": "./dist/Model/filter/types/path/index.js"
148
- },
149
- "./Model/filter/types/utils": {
150
- "types": "./dist/Model/filter/types/utils.d.ts",
151
- "default": "./dist/Model/filter/types/utils.js"
152
- },
153
- "./Model/filter/types/validator": {
154
- "types": "./dist/Model/filter/types/validator.d.ts",
155
- "default": "./dist/Model/filter/types/validator.js"
156
- },
157
- "./Model/query": {
158
- "types": "./dist/Model/query.d.ts",
159
- "default": "./dist/Model/query.js"
160
- },
161
- "./Model/query/dsl": {
162
- "types": "./dist/Model/query/dsl.d.ts",
163
- "default": "./dist/Model/query/dsl.js"
164
- },
165
- "./Model/query/new-kid-interpreter": {
166
- "types": "./dist/Model/query/new-kid-interpreter.d.ts",
167
- "default": "./dist/Model/query/new-kid-interpreter.js"
168
- },
169
- "./Operations": {
170
- "types": "./dist/Operations.d.ts",
171
- "default": "./dist/Operations.js"
172
- },
173
- "./OperationsRepo": {
174
- "types": "./dist/OperationsRepo.d.ts",
175
- "default": "./dist/OperationsRepo.js"
176
- },
177
- "./QueueMaker/SQLQueue": {
178
- "types": "./dist/QueueMaker/SQLQueue.d.ts",
179
- "default": "./dist/QueueMaker/SQLQueue.js"
180
- },
181
- "./QueueMaker/errors": {
182
- "types": "./dist/QueueMaker/errors.d.ts",
183
- "default": "./dist/QueueMaker/errors.js"
184
- },
185
- "./QueueMaker/memQueue": {
186
- "types": "./dist/QueueMaker/memQueue.d.ts",
187
- "default": "./dist/QueueMaker/memQueue.js"
188
- },
189
- "./QueueMaker/sbqueue": {
190
- "types": "./dist/QueueMaker/sbqueue.d.ts",
191
- "default": "./dist/QueueMaker/sbqueue.js"
192
- },
193
- "./QueueMaker/service": {
194
- "types": "./dist/QueueMaker/service.d.ts",
195
- "default": "./dist/QueueMaker/service.js"
196
- },
197
- "./RequestContext": {
198
- "types": "./dist/RequestContext.d.ts",
199
- "default": "./dist/RequestContext.js"
200
- },
201
- "./RequestFiberSet": {
202
- "types": "./dist/RequestFiberSet.d.ts",
203
- "default": "./dist/RequestFiberSet.js"
204
- },
205
- "./Store": {
206
- "types": "./dist/Store.d.ts",
207
- "default": "./dist/Store.js"
208
- },
209
- "./Store/ContextMapContainer": {
210
- "types": "./dist/Store/ContextMapContainer.d.ts",
211
- "default": "./dist/Store/ContextMapContainer.js"
212
- },
213
- "./Store/Cosmos": {
214
- "types": "./dist/Store/Cosmos.d.ts",
215
- "default": "./dist/Store/Cosmos.js"
216
- },
217
- "./Store/Cosmos/query": {
218
- "types": "./dist/Store/Cosmos/query.d.ts",
219
- "default": "./dist/Store/Cosmos/query.js"
220
- },
221
- "./Store/Disk": {
222
- "types": "./dist/Store/Disk.d.ts",
223
- "default": "./dist/Store/Disk.js"
224
- },
225
- "./Store/Memory": {
226
- "types": "./dist/Store/Memory.d.ts",
227
- "default": "./dist/Store/Memory.js"
228
- },
229
- "./Store/codeFilter": {
230
- "types": "./dist/Store/codeFilter.d.ts",
231
- "default": "./dist/Store/codeFilter.js"
232
- },
233
- "./Store/index": {
234
- "types": "./dist/Store/index.d.ts",
235
- "default": "./dist/Store/index.js"
236
- },
237
- "./Store/service": {
238
- "types": "./dist/Store/service.d.ts",
239
- "default": "./dist/Store/service.js"
240
- },
241
- "./Store/utils": {
242
- "types": "./dist/Store/utils.d.ts",
243
- "default": "./dist/Store/utils.js"
244
- },
245
- "./adapters/SQL": {
246
- "types": "./dist/adapters/SQL.d.ts",
247
- "default": "./dist/adapters/SQL.js"
248
- },
249
- "./adapters/SQL/Model": {
250
- "types": "./dist/adapters/SQL/Model.d.ts",
251
- "default": "./dist/adapters/SQL/Model.js"
252
- },
253
- "./adapters/ServiceBus": {
254
- "types": "./dist/adapters/ServiceBus.d.ts",
255
- "default": "./dist/adapters/ServiceBus.js"
256
- },
257
- "./adapters/cosmos-client": {
258
- "types": "./dist/adapters/cosmos-client.d.ts",
259
- "default": "./dist/adapters/cosmos-client.js"
260
- },
261
- "./adapters/index": {
262
- "types": "./dist/adapters/index.d.ts",
263
- "default": "./dist/adapters/index.js"
264
- },
265
- "./adapters/logger": {
266
- "types": "./dist/adapters/logger.d.ts",
267
- "default": "./dist/adapters/logger.js"
268
- },
269
- "./adapters/memQueue": {
270
- "types": "./dist/adapters/memQueue.d.ts",
271
- "default": "./dist/adapters/memQueue.js"
272
- },
273
- "./adapters/mongo-client": {
274
- "types": "./dist/adapters/mongo-client.d.ts",
275
- "default": "./dist/adapters/mongo-client.js"
276
- },
277
- "./adapters/redis-client": {
278
- "types": "./dist/adapters/redis-client.d.ts",
279
- "default": "./dist/adapters/redis-client.js"
280
- },
281
- "./api/ContextProvider": {
282
- "types": "./dist/api/ContextProvider.d.ts",
283
- "default": "./dist/api/ContextProvider.js"
284
- },
285
- "./api/codec": {
286
- "types": "./dist/api/codec.d.ts",
287
- "default": "./dist/api/codec.js"
288
- },
289
- "./api/layerUtils": {
290
- "types": "./dist/api/layerUtils.d.ts",
291
- "default": "./dist/api/layerUtils.js"
292
- },
293
- "./api/middlewares": {
294
- "types": "./dist/api/middlewares.d.ts",
295
- "default": "./dist/api/middlewares.js"
296
- },
297
- "./api/reportError": {
298
- "types": "./dist/api/reportError.d.ts",
299
- "default": "./dist/api/reportError.js"
300
- },
301
- "./api/routing": {
302
- "types": "./dist/api/routing.d.ts",
303
- "default": "./dist/api/routing.js"
304
- },
305
- "./api/routing/middleware": {
306
- "types": "./dist/api/routing/middleware.d.ts",
307
- "default": "./dist/api/routing/middleware.js"
308
- },
309
- "./api/routing/middleware/RouterMiddleware": {
310
- "types": "./dist/api/routing/middleware/RouterMiddleware.d.ts",
311
- "default": "./dist/api/routing/middleware/RouterMiddleware.js"
312
- },
313
- "./api/routing/middleware/middleware": {
314
- "types": "./dist/api/routing/middleware/middleware.d.ts",
315
- "default": "./dist/api/routing/middleware/middleware.js"
316
- },
317
- "./api/routing/schema/jwt": {
318
- "types": "./dist/api/routing/schema/jwt.d.ts",
319
- "default": "./dist/api/routing/schema/jwt.js"
320
- },
321
- "./api/routing/tsort": {
322
- "types": "./dist/api/routing/tsort.d.ts",
323
- "default": "./dist/api/routing/tsort.js"
324
- },
325
- "./api/routing/utils": {
326
- "types": "./dist/api/routing/utils.d.ts",
327
- "default": "./dist/api/routing/utils.js"
328
- },
329
- "./api/setupRequest": {
330
- "types": "./dist/api/setupRequest.d.ts",
331
- "default": "./dist/api/setupRequest.js"
332
- },
333
- "./api/util": {
334
- "types": "./dist/api/util.d.ts",
335
- "default": "./dist/api/util.js"
336
- },
337
- "./arbs": {
338
- "types": "./dist/arbs.d.ts",
339
- "default": "./dist/arbs.js"
340
- },
341
- "./errorReporter": {
342
- "types": "./dist/errorReporter.d.ts",
343
- "default": "./dist/errorReporter.js"
344
- },
345
- "./errors": {
346
- "types": "./dist/errors.d.ts",
347
- "default": "./dist/errors.js"
348
- },
349
- "./fileUtil": {
350
- "types": "./dist/fileUtil.d.ts",
351
- "default": "./dist/fileUtil.js"
352
- },
353
- "./logger": {
354
- "types": "./dist/logger.d.ts",
355
- "default": "./dist/logger.js"
356
- },
357
- "./logger/jsonLogger": {
358
- "types": "./dist/logger/jsonLogger.d.ts",
359
- "default": "./dist/logger/jsonLogger.js"
360
- },
361
- "./logger/logFmtLogger": {
362
- "types": "./dist/logger/logFmtLogger.d.ts",
363
- "default": "./dist/logger/logFmtLogger.js"
364
- },
365
- "./logger/shared": {
366
- "types": "./dist/logger/shared.d.ts",
367
- "default": "./dist/logger/shared.js"
368
- },
369
- "./rateLimit": {
370
- "types": "./dist/rateLimit.d.ts",
371
- "default": "./dist/rateLimit.js"
372
- },
373
- "./test": {
374
- "types": "./dist/test.d.ts",
375
- "default": "./dist/test.js"
376
- },
377
- "./vitest": {
378
- "types": "./dist/vitest.d.ts",
379
- "default": "./dist/vitest.js"
63
+ "./internal/*": null,
64
+ "./*": {
65
+ "types": "./dist/*.d.ts",
66
+ "default": "./dist/*.js"
380
67
  }
381
68
  },
382
69
  "gitHead": "bd8e27eea3eff97db8739d577d67e7336c078d28",
383
70
  "sideEffects": false,
384
71
  "scripts": {
385
72
  "watch": "pnpm build:tsc -w",
386
- "build:tsc": "pnpm clean-dist && effect-app-cli packagejson pnpm check",
387
- "check": "tsc --build",
73
+ "build:tsc": "pnpm clean-dist && pnpm check",
74
+ "check": "tsgo --build",
388
75
  "build": "pnpm build:tsc",
389
- "watch2": "pnpm clean-dist && NODE_OPTIONS=--max-old-space-size=6144 tsc -w",
76
+ "watch2": "pnpm clean-dist && NODE_OPTIONS=--max-old-space-size=6144 tsgo -w",
390
77
  "clean": "rm -rf dist",
391
78
  "clean-dist": "sh ../../scripts/clean-dist.sh",
392
79
  "circular": "pnpm circular:src && pnpm circular:dist",
393
80
  "circular:src": "madge --circular --ts-config ./tsconfig.json --extensions ts ./src",
394
81
  "circular:dist": "madge --circular --extensions js ./dist",
395
- "compile": "NODE_OPTIONS=--max-old-space-size=6144 tsc --noEmit",
396
- "lint": "NODE_OPTIONS=--max-old-space-size=6144 ESLINT_TS=1 eslint ./src",
397
- "lint:watch": "ESLINT_TS=1 esw -w --changed --clear --ext ts,tsx .",
398
- "lint-fix": "pnpm lint --fix",
82
+ "compile": "NODE_OPTIONS=--max-old-space-size=6144 tsgo --noEmit",
83
+ "lint": "oxlint --quiet --type-aware ./src && pnpm exec dprint check --config ../../dprint.jsonc .",
84
+ "lint-fix": "oxlint --quiet --type-aware --fix ./src && pnpm exec dprint fmt --config ../../dprint.jsonc .",
399
85
  "test": "vitest",
400
86
  "test:run": "pnpm run test run --passWithNoTests",
401
87
  "testsuite": "pnpm lint && pnpm circular && pnpm run test:run",
package/run.sh ADDED
@@ -0,0 +1 @@
1
+ OSMOS_TEST_URL="AccountEndpoint=https://macs-empasa-dev.documents.azure.com:443/;AccountKey=bu1BPiecISwsSG7cNGrF0RWAX8QhAOPZKIvK9WVNQXelsdt3FJ6jo6YPqnKChvMLvtwO1USsiTKBACDb6Zp1bA==;" pnpm test test/cluster-cosmos.test.ts
package/src/CUPS.ts CHANGED
@@ -1,7 +1,14 @@
1
1
  import { type FileOptions, tempFile } from "@effect-app/infra/fileUtil"
2
2
  import cp from "child_process"
3
- import { Config, Effect, Layer, Option, Predicate, S, ServiceMap } from "effect-app"
3
+ import * as Config from "effect-app/Config"
4
+ import * as Context from "effect-app/Context"
5
+ import * as Effect from "effect-app/Effect"
6
+ import * as Layer from "effect-app/Layer"
7
+ import * as Option from "effect-app/Option"
8
+ import * as S from "effect-app/Schema"
4
9
  import { pretty } from "effect-app/utils"
10
+ import * as Data from "effect/Data"
11
+ import * as Predicate from "effect/Predicate"
5
12
  import fs from "fs"
6
13
  import os from "os"
7
14
  import path from "path"
@@ -11,13 +18,47 @@ import { InfraLogger } from "./logger.js"
11
18
  export const PrinterId = S.NonEmptyString255
12
19
  export type PrinterId = S.NonEmptyString255
13
20
 
21
+ type ExecError = Error & {
22
+ code?: number | string
23
+ killed?: boolean
24
+ signal?: NodeJS.Signals | null
25
+ cmd?: string
26
+ stdout?: string
27
+ stderr?: string
28
+ }
29
+
30
+ export class CUPSError extends Data.TaggedError("CUPSError")<{
31
+ readonly command: string
32
+ readonly message: string
33
+ readonly code: number | string | undefined
34
+ readonly signal: NodeJS.Signals | null | undefined
35
+ readonly killed: boolean | undefined
36
+ readonly stdout: string | undefined
37
+ readonly stderr: string | undefined
38
+ readonly cause: unknown
39
+ }> {}
40
+
14
41
  const exec_ = util.promisify(cp.exec)
15
42
  const exec = (command: string) =>
16
43
  Effect.andThen(
17
44
  InfraLogger.logDebug(`Executing: ${command}`),
18
45
  Effect.tap(
19
- Effect
20
- .tryPromise(() => exec_(command)),
46
+ Effect.tryPromise({
47
+ try: () => exec_(command),
48
+ catch: (cause) => {
49
+ const e = cause as ExecError
50
+ return new CUPSError({
51
+ command,
52
+ message: e?.message ?? String(cause),
53
+ code: e?.code,
54
+ signal: e?.signal,
55
+ killed: e?.killed,
56
+ stdout: e?.stdout,
57
+ stderr: e?.stderr,
58
+ cause
59
+ })
60
+ }
61
+ }),
21
62
  (r) => (InfraLogger.logDebug(`Executed`).pipe(Effect.annotateLogs("result", pretty(r))))
22
63
  )
23
64
  )
@@ -74,15 +115,13 @@ function printBuffer(printer: PrinterConfig, options: string[]) {
74
115
  )
75
116
  }
76
117
 
77
- function getAvailablePrinters(host?: string) {
78
- return Effect.gen(function*() {
79
- const { stdout } = yield* exec(["lpstat", ...buildListArgs({ host }), "-s"].join(" "))
80
- return [...stdout.matchAll(/device for (\w+):/g)]
81
- .map((_) => _[1])
82
- .filter(Predicate.isNotNullish)
83
- .map((_) => S.NonEmptyString255(_))
84
- })
85
- }
118
+ const getAvailablePrinters = Effect.fnUntraced(function*(host?: string) {
119
+ const { stdout } = yield* exec(["lpstat", ...buildListArgs({ host }), "-s"].join(" "))
120
+ return [...stdout.matchAll(/device for (\w+):/g)]
121
+ .map((_) => _[1])
122
+ .filter(Predicate.isNotNullish)
123
+ .map((_) => S.NonEmptyString255(_))
124
+ })
86
125
 
87
126
  function* buildListArgs(config?: { host?: string | undefined }) {
88
127
  if (config?.host) {
@@ -100,7 +139,7 @@ export const CUPSConfig = Config.all({
100
139
  )
101
140
  })
102
141
 
103
- export class CUPS extends ServiceMap.Service<CUPS>()("effect-app/CUPS", {
142
+ export class CUPS extends Context.Service<CUPS>()("effect-app/CUPS", {
104
143
  make: Effect.gen(function*() {
105
144
  const config = yield* CUPSConfig
106
145
  const serverUrl = Option.getOrUndefined(config.server)