semola 0.5.1 → 0.5.3

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 (488) hide show
  1. package/README.md +144 -29
  2. package/dist/api/core/index.cjs +206 -0
  3. package/dist/api/core/index.d.cts +21 -0
  4. package/dist/api/core/index.d.cts.map +1 -0
  5. package/dist/api/core/index.d.mts +21 -0
  6. package/dist/api/core/index.d.mts.map +1 -0
  7. package/dist/api/core/index.mjs +208 -0
  8. package/dist/api/core/index.mjs.map +1 -0
  9. package/dist/api/core/types.d.cts +107 -0
  10. package/dist/api/core/types.d.cts.map +1 -0
  11. package/dist/api/core/types.d.mts +107 -0
  12. package/dist/api/core/types.d.mts.map +1 -0
  13. package/dist/api/middleware/index.cjs +8 -0
  14. package/dist/api/middleware/index.d.cts +11 -0
  15. package/dist/api/middleware/index.d.cts.map +1 -0
  16. package/dist/api/middleware/index.d.mts +11 -0
  17. package/dist/api/middleware/index.d.mts.map +1 -0
  18. package/dist/api/middleware/index.mjs +10 -0
  19. package/dist/api/middleware/index.mjs.map +1 -0
  20. package/dist/api/middleware/types.d.cts +16 -0
  21. package/dist/api/middleware/types.d.cts.map +1 -0
  22. package/dist/api/middleware/types.d.mts +16 -0
  23. package/dist/api/middleware/types.d.mts.map +1 -0
  24. package/dist/api/openapi/index.cjs +254 -0
  25. package/dist/api/openapi/index.mjs +256 -0
  26. package/dist/api/openapi/index.mjs.map +1 -0
  27. package/dist/api/openapi/types.d.cts +60 -0
  28. package/dist/api/openapi/types.d.cts.map +1 -0
  29. package/dist/api/openapi/types.d.mts +60 -0
  30. package/dist/api/openapi/types.d.mts.map +1 -0
  31. package/dist/api/validation/index.cjs +64 -0
  32. package/dist/api/validation/index.mjs +61 -0
  33. package/dist/api/validation/index.mjs.map +1 -0
  34. package/dist/cache/types.d.cts +17 -0
  35. package/dist/cache/types.d.cts.map +1 -0
  36. package/dist/cache/types.d.mts +17 -0
  37. package/dist/cache/types.d.mts.map +1 -0
  38. package/dist/cron/builder/index.cjs +166 -0
  39. package/dist/cron/builder/index.d.cts +28 -0
  40. package/dist/cron/builder/index.d.cts.map +1 -0
  41. package/dist/cron/builder/index.d.mts +28 -0
  42. package/dist/cron/builder/index.d.mts.map +1 -0
  43. package/dist/cron/builder/index.mjs +163 -0
  44. package/dist/cron/builder/index.mjs.map +1 -0
  45. package/dist/cron/builder/types.cjs +27 -0
  46. package/dist/cron/builder/types.d.cts +79 -0
  47. package/dist/cron/builder/types.d.cts.map +1 -0
  48. package/dist/cron/builder/types.d.mts +79 -0
  49. package/dist/cron/builder/types.d.mts.map +1 -0
  50. package/dist/cron/builder/types.mjs +28 -0
  51. package/dist/cron/builder/types.mjs.map +1 -0
  52. package/dist/cron/core/index.cjs +308 -0
  53. package/dist/cron/core/index.d.cts +39 -0
  54. package/dist/cron/core/index.d.cts.map +1 -0
  55. package/dist/cron/core/index.d.mts +39 -0
  56. package/dist/cron/core/index.d.mts.map +1 -0
  57. package/dist/cron/core/index.mjs +310 -0
  58. package/dist/cron/core/index.mjs.map +1 -0
  59. package/dist/cron/core/scanner.cjs +237 -0
  60. package/dist/cron/core/scanner.mjs +238 -0
  61. package/dist/cron/core/scanner.mjs.map +1 -0
  62. package/dist/cron/core/types.d.cts +11 -0
  63. package/dist/cron/core/types.d.cts.map +1 -0
  64. package/dist/cron/core/types.d.mts +11 -0
  65. package/dist/cron/core/types.d.mts.map +1 -0
  66. package/dist/errors/types.d.cts +5 -0
  67. package/dist/errors/types.d.cts.map +1 -0
  68. package/dist/errors/types.d.mts +5 -0
  69. package/dist/errors/types.d.mts.map +1 -0
  70. package/dist/i18n/types.d.cts +13 -0
  71. package/dist/i18n/types.d.cts.map +1 -0
  72. package/dist/i18n/types.d.mts +13 -0
  73. package/dist/i18n/types.d.mts.map +1 -0
  74. package/dist/lib/api/index.cjs +5 -0
  75. package/dist/lib/api/index.d.cts +5 -0
  76. package/dist/lib/api/index.d.mts +5 -0
  77. package/dist/lib/api/index.mjs +3 -0
  78. package/dist/lib/cache/index.cjs +74 -0
  79. package/dist/lib/cache/index.d.cts +36 -0
  80. package/dist/lib/cache/index.d.cts.map +1 -0
  81. package/dist/lib/cache/index.d.mts +36 -0
  82. package/dist/lib/cache/index.d.mts.map +1 -0
  83. package/dist/lib/cache/index.mjs +75 -0
  84. package/dist/lib/cache/index.mjs.map +1 -0
  85. package/dist/lib/cron/index.cjs +13 -0
  86. package/dist/lib/cron/index.d.cts +4 -0
  87. package/dist/lib/cron/index.d.mts +4 -0
  88. package/dist/lib/cron/index.mjs +4 -0
  89. package/dist/lib/errors/index.cjs +30 -0
  90. package/dist/lib/errors/index.d.cts +13 -0
  91. package/dist/lib/errors/index.d.cts.map +1 -0
  92. package/dist/lib/errors/index.d.mts +13 -0
  93. package/dist/lib/errors/index.d.mts.map +1 -0
  94. package/dist/lib/errors/index.mjs +28 -0
  95. package/dist/lib/errors/index.mjs.map +1 -0
  96. package/dist/lib/i18n/index.cjs +42 -0
  97. package/dist/lib/i18n/index.d.cts +20 -0
  98. package/dist/lib/i18n/index.d.cts.map +1 -0
  99. package/dist/lib/i18n/index.d.mts +20 -0
  100. package/dist/lib/i18n/index.d.mts.map +1 -0
  101. package/dist/lib/i18n/index.mjs +43 -0
  102. package/dist/lib/i18n/index.mjs.map +1 -0
  103. package/dist/lib/logging/index.cjs +18 -0
  104. package/dist/lib/logging/index.d.cts +7 -0
  105. package/dist/lib/logging/index.d.mts +7 -0
  106. package/dist/lib/logging/index.mjs +5 -0
  107. package/dist/lib/orm/index.cjs +20 -0
  108. package/dist/lib/orm/index.d.cts +7 -0
  109. package/dist/lib/orm/index.d.mts +7 -0
  110. package/dist/lib/orm/index.mjs +6 -0
  111. package/dist/lib/policy/index.cjs +99 -0
  112. package/dist/lib/policy/index.d.cts +21 -0
  113. package/dist/lib/policy/index.d.cts.map +1 -0
  114. package/dist/lib/policy/index.d.mts +21 -0
  115. package/dist/lib/policy/index.d.mts.map +1 -0
  116. package/dist/lib/policy/index.mjs +81 -0
  117. package/dist/lib/policy/index.mjs.map +1 -0
  118. package/dist/lib/prompts/index.cjs +409 -0
  119. package/dist/lib/prompts/index.d.cts +31 -0
  120. package/dist/lib/prompts/index.d.cts.map +1 -0
  121. package/dist/lib/prompts/index.d.mts +31 -0
  122. package/dist/lib/prompts/index.d.mts.map +1 -0
  123. package/dist/lib/prompts/index.mjs +405 -0
  124. package/dist/lib/prompts/index.mjs.map +1 -0
  125. package/dist/lib/pubsub/index.cjs +117 -0
  126. package/dist/lib/pubsub/index.d.cts +36 -0
  127. package/dist/lib/pubsub/index.d.cts.map +1 -0
  128. package/dist/lib/pubsub/index.d.mts +36 -0
  129. package/dist/lib/pubsub/index.d.mts.map +1 -0
  130. package/dist/lib/pubsub/index.mjs +118 -0
  131. package/dist/lib/pubsub/index.mjs.map +1 -0
  132. package/dist/lib/queue/index.cjs +182 -0
  133. package/dist/lib/queue/index.d.cts +32 -0
  134. package/dist/lib/queue/index.d.cts.map +1 -0
  135. package/dist/lib/queue/index.d.mts +32 -0
  136. package/dist/lib/queue/index.d.mts.map +1 -0
  137. package/dist/lib/queue/index.mjs +183 -0
  138. package/dist/lib/queue/index.mjs.map +1 -0
  139. package/dist/lib/workflow/index.cjs +534 -0
  140. package/dist/lib/workflow/index.d.cts +7 -0
  141. package/dist/lib/workflow/index.d.cts.map +1 -0
  142. package/dist/lib/workflow/index.d.mts +7 -0
  143. package/dist/lib/workflow/index.d.mts.map +1 -0
  144. package/dist/lib/workflow/index.mjs +535 -0
  145. package/dist/lib/workflow/index.mjs.map +1 -0
  146. package/dist/logging/core/index.cjs +99 -0
  147. package/dist/logging/core/index.d.cts +26 -0
  148. package/dist/logging/core/index.d.cts.map +1 -0
  149. package/dist/logging/core/index.d.mts +26 -0
  150. package/dist/logging/core/index.d.mts.map +1 -0
  151. package/dist/logging/core/index.mjs +99 -0
  152. package/dist/logging/core/index.mjs.map +1 -0
  153. package/dist/logging/core/types.cjs +10 -0
  154. package/dist/logging/core/types.d.cts +22 -0
  155. package/dist/logging/core/types.d.cts.map +1 -0
  156. package/dist/logging/core/types.d.mts +22 -0
  157. package/dist/logging/core/types.d.mts.map +1 -0
  158. package/dist/logging/core/types.mjs +12 -0
  159. package/dist/logging/core/types.mjs.map +1 -0
  160. package/dist/logging/formatter/index.cjs +119 -0
  161. package/dist/logging/formatter/index.d.cts +27 -0
  162. package/dist/logging/formatter/index.d.cts.map +1 -0
  163. package/dist/logging/formatter/index.d.mts +27 -0
  164. package/dist/logging/formatter/index.d.mts.map +1 -0
  165. package/dist/logging/formatter/index.mjs +115 -0
  166. package/dist/logging/formatter/index.mjs.map +1 -0
  167. package/dist/logging/formatter/types.d.cts +5 -0
  168. package/dist/logging/formatter/types.d.cts.map +1 -0
  169. package/dist/logging/formatter/types.d.mts +5 -0
  170. package/dist/logging/formatter/types.d.mts.map +1 -0
  171. package/dist/logging/provider/index.cjs +165 -0
  172. package/dist/logging/provider/index.d.cts +28 -0
  173. package/dist/logging/provider/index.d.cts.map +1 -0
  174. package/dist/logging/provider/index.d.mts +28 -0
  175. package/dist/logging/provider/index.d.mts.map +1 -0
  176. package/dist/logging/provider/index.mjs +165 -0
  177. package/dist/logging/provider/index.mjs.map +1 -0
  178. package/dist/logging/provider/types.d.cts +23 -0
  179. package/dist/logging/provider/types.d.cts.map +1 -0
  180. package/dist/logging/provider/types.d.mts +23 -0
  181. package/dist/logging/provider/types.d.mts.map +1 -0
  182. package/dist/node_modules/@standard-schema/spec/dist/index.d.cts +80 -0
  183. package/dist/node_modules/@standard-schema/spec/dist/index.d.cts.map +1 -0
  184. package/dist/node_modules/@standard-schema/spec/dist/index.d.mts +80 -0
  185. package/dist/node_modules/@standard-schema/spec/dist/index.d.mts.map +1 -0
  186. package/dist/orm/column.cjs +137 -0
  187. package/dist/orm/column.d.cts +121 -0
  188. package/dist/orm/column.d.cts.map +1 -0
  189. package/dist/orm/column.d.mts +121 -0
  190. package/dist/orm/column.d.mts.map +1 -0
  191. package/dist/orm/column.mjs +132 -0
  192. package/dist/orm/column.mjs.map +1 -0
  193. package/dist/orm/dialect/index.cjs +14 -0
  194. package/dist/orm/dialect/index.mjs +16 -0
  195. package/dist/orm/dialect/index.mjs.map +1 -0
  196. package/dist/orm/dialect/mysql.cjs +31 -0
  197. package/dist/orm/dialect/mysql.mjs +33 -0
  198. package/dist/orm/dialect/mysql.mjs.map +1 -0
  199. package/dist/orm/dialect/postgres.cjs +23 -0
  200. package/dist/orm/dialect/postgres.mjs +25 -0
  201. package/dist/orm/dialect/postgres.mjs.map +1 -0
  202. package/dist/orm/dialect/sqlite.cjs +31 -0
  203. package/dist/orm/dialect/sqlite.mjs +33 -0
  204. package/dist/orm/dialect/sqlite.mjs.map +1 -0
  205. package/dist/orm/dialect/utils.cjs +8 -0
  206. package/dist/orm/dialect/utils.mjs +10 -0
  207. package/dist/orm/dialect/utils.mjs.map +1 -0
  208. package/dist/orm/internal/table-columns.cjs +31 -0
  209. package/dist/orm/internal/table-columns.mjs +32 -0
  210. package/dist/orm/internal/table-columns.mjs.map +1 -0
  211. package/dist/orm/internal/table-lookup.cjs +35 -0
  212. package/dist/orm/internal/table-lookup.mjs +35 -0
  213. package/dist/orm/internal/table-lookup.mjs.map +1 -0
  214. package/dist/orm/internal/table-relations.cjs +28 -0
  215. package/dist/orm/internal/table-relations.mjs +29 -0
  216. package/dist/orm/internal/table-relations.mjs.map +1 -0
  217. package/dist/orm/migration/config.cjs +7 -0
  218. package/dist/orm/migration/config.d.cts +7 -0
  219. package/dist/orm/migration/config.d.cts.map +1 -0
  220. package/dist/orm/migration/config.d.mts +7 -0
  221. package/dist/orm/migration/config.d.mts.map +1 -0
  222. package/dist/orm/migration/config.mjs +8 -0
  223. package/dist/orm/migration/config.mjs.map +1 -0
  224. package/dist/orm/migration/types.d.cts +20 -0
  225. package/dist/orm/migration/types.d.cts.map +1 -0
  226. package/dist/orm/migration/types.d.mts +20 -0
  227. package/dist/orm/migration/types.d.mts.map +1 -0
  228. package/dist/orm/orm.cjs +41 -0
  229. package/dist/orm/orm.d.cts +18 -0
  230. package/dist/orm/orm.d.cts.map +1 -0
  231. package/dist/orm/orm.d.mts +18 -0
  232. package/dist/orm/orm.d.mts.map +1 -0
  233. package/dist/orm/orm.mjs +43 -0
  234. package/dist/orm/orm.mjs.map +1 -0
  235. package/dist/orm/relation.cjs +18 -0
  236. package/dist/orm/relation.d.cts +8 -0
  237. package/dist/orm/relation.d.cts.map +1 -0
  238. package/dist/orm/relation.d.mts +8 -0
  239. package/dist/orm/relation.d.mts.map +1 -0
  240. package/dist/orm/relation.mjs +19 -0
  241. package/dist/orm/relation.mjs.map +1 -0
  242. package/dist/orm/runtime/builders/mutations.cjs +29 -0
  243. package/dist/orm/runtime/builders/mutations.mjs +28 -0
  244. package/dist/orm/runtime/builders/mutations.mjs.map +1 -0
  245. package/dist/orm/runtime/builders/select.cjs +18 -0
  246. package/dist/orm/runtime/builders/select.mjs +19 -0
  247. package/dist/orm/runtime/builders/select.mjs.map +1 -0
  248. package/dist/orm/runtime/client.cjs +90 -0
  249. package/dist/orm/runtime/client.mjs +92 -0
  250. package/dist/orm/runtime/client.mjs.map +1 -0
  251. package/dist/orm/runtime/context.cjs +49 -0
  252. package/dist/orm/runtime/context.mjs +51 -0
  253. package/dist/orm/runtime/context.mjs.map +1 -0
  254. package/dist/orm/runtime/dialect/index.cjs +11 -0
  255. package/dist/orm/runtime/dialect/index.mjs +13 -0
  256. package/dist/orm/runtime/dialect/index.mjs.map +1 -0
  257. package/dist/orm/runtime/dialect/mysql.cjs +95 -0
  258. package/dist/orm/runtime/dialect/mysql.mjs +97 -0
  259. package/dist/orm/runtime/dialect/mysql.mjs.map +1 -0
  260. package/dist/orm/runtime/dialect/postgres.cjs +51 -0
  261. package/dist/orm/runtime/dialect/postgres.mjs +53 -0
  262. package/dist/orm/runtime/dialect/postgres.mjs.map +1 -0
  263. package/dist/orm/runtime/dialect/sqlite.cjs +4 -0
  264. package/dist/orm/runtime/dialect/sqlite.mjs +7 -0
  265. package/dist/orm/runtime/dialect/sqlite.mjs.map +1 -0
  266. package/dist/orm/runtime/errors.cjs +19 -0
  267. package/dist/orm/runtime/errors.mjs +21 -0
  268. package/dist/orm/runtime/errors.mjs.map +1 -0
  269. package/dist/orm/runtime/hydrate/many.cjs +46 -0
  270. package/dist/orm/runtime/hydrate/many.mjs +48 -0
  271. package/dist/orm/runtime/hydrate/many.mjs.map +1 -0
  272. package/dist/orm/runtime/hydrate/one.cjs +38 -0
  273. package/dist/orm/runtime/hydrate/one.mjs +40 -0
  274. package/dist/orm/runtime/hydrate/one.mjs.map +1 -0
  275. package/dist/orm/runtime/hydrate.cjs +49 -0
  276. package/dist/orm/runtime/hydrate.mjs +51 -0
  277. package/dist/orm/runtime/hydrate.mjs.map +1 -0
  278. package/dist/orm/runtime/rows.cjs +30 -0
  279. package/dist/orm/runtime/rows.mjs +31 -0
  280. package/dist/orm/runtime/rows.mjs.map +1 -0
  281. package/dist/orm/runtime/utils.cjs +27 -0
  282. package/dist/orm/runtime/utils.mjs +27 -0
  283. package/dist/orm/runtime/utils.mjs.map +1 -0
  284. package/dist/orm/sql/parse-array.cjs +64 -0
  285. package/dist/orm/sql/parse-array.mjs +66 -0
  286. package/dist/orm/sql/parse-array.mjs.map +1 -0
  287. package/dist/orm/sql/plan/select.cjs +36 -0
  288. package/dist/orm/sql/plan/select.mjs +38 -0
  289. package/dist/orm/sql/plan/select.mjs.map +1 -0
  290. package/dist/orm/sql/plan/where/operators.cjs +95 -0
  291. package/dist/orm/sql/plan/where/operators.mjs +97 -0
  292. package/dist/orm/sql/plan/where/operators.mjs.map +1 -0
  293. package/dist/orm/sql/plan/where.cjs +59 -0
  294. package/dist/orm/sql/plan/where.mjs +61 -0
  295. package/dist/orm/sql/plan/where.mjs.map +1 -0
  296. package/dist/orm/sql/serialize/clauses.cjs +36 -0
  297. package/dist/orm/sql/serialize/clauses.mjs +37 -0
  298. package/dist/orm/sql/serialize/clauses.mjs.map +1 -0
  299. package/dist/orm/sql/serialize/joins.cjs +31 -0
  300. package/dist/orm/sql/serialize/joins.mjs +33 -0
  301. package/dist/orm/sql/serialize/joins.mjs.map +1 -0
  302. package/dist/orm/sql/serialize/values.cjs +30 -0
  303. package/dist/orm/sql/serialize/values.mjs +32 -0
  304. package/dist/orm/sql/serialize/values.mjs.map +1 -0
  305. package/dist/orm/sql/serialize/where/predicate.cjs +73 -0
  306. package/dist/orm/sql/serialize/where/predicate.mjs +75 -0
  307. package/dist/orm/sql/serialize/where/predicate.mjs.map +1 -0
  308. package/dist/orm/sql/serialize/where/tree.cjs +26 -0
  309. package/dist/orm/sql/serialize/where/tree.mjs +28 -0
  310. package/dist/orm/sql/serialize/where/tree.mjs.map +1 -0
  311. package/dist/orm/sql/serialize/where.cjs +10 -0
  312. package/dist/orm/sql/serialize/where.mjs +12 -0
  313. package/dist/orm/sql/serialize/where.mjs.map +1 -0
  314. package/dist/orm/sql/serialize.cjs +24 -0
  315. package/dist/orm/sql/serialize.mjs +25 -0
  316. package/dist/orm/sql/serialize.mjs.map +1 -0
  317. package/dist/orm/table.cjs +12 -0
  318. package/dist/orm/table.d.cts +12 -0
  319. package/dist/orm/table.d.cts.map +1 -0
  320. package/dist/orm/table.d.mts +12 -0
  321. package/dist/orm/table.d.mts.map +1 -0
  322. package/dist/orm/table.mjs +14 -0
  323. package/dist/orm/table.mjs.map +1 -0
  324. package/dist/orm/types.d.cts +183 -0
  325. package/dist/orm/types.d.cts.map +1 -0
  326. package/dist/orm/types.d.mts +183 -0
  327. package/dist/orm/types.d.mts.map +1 -0
  328. package/dist/policy/helpers.cjs +206 -0
  329. package/dist/policy/helpers.d.cts +50 -0
  330. package/dist/policy/helpers.d.cts.map +1 -0
  331. package/dist/policy/helpers.d.mts +50 -0
  332. package/dist/policy/helpers.d.mts.map +1 -0
  333. package/dist/policy/helpers.mjs +190 -0
  334. package/dist/policy/helpers.mjs.map +1 -0
  335. package/dist/policy/types.d.cts +16 -0
  336. package/dist/policy/types.d.cts.map +1 -0
  337. package/dist/policy/types.d.mts +16 -0
  338. package/dist/policy/types.d.mts.map +1 -0
  339. package/dist/prompts/core/keys.cjs +165 -0
  340. package/dist/prompts/core/keys.mjs +167 -0
  341. package/dist/prompts/core/keys.mjs.map +1 -0
  342. package/dist/prompts/core/runtime.cjs +104 -0
  343. package/dist/prompts/core/runtime.mjs +106 -0
  344. package/dist/prompts/core/runtime.mjs.map +1 -0
  345. package/dist/prompts/core/session.cjs +98 -0
  346. package/dist/prompts/core/session.mjs +100 -0
  347. package/dist/prompts/core/session.mjs.map +1 -0
  348. package/dist/prompts/core/types.d.cts +21 -0
  349. package/dist/prompts/core/types.d.cts.map +1 -0
  350. package/dist/prompts/core/types.d.mts +21 -0
  351. package/dist/prompts/core/types.d.mts.map +1 -0
  352. package/dist/prompts/types.d.cts +52 -0
  353. package/dist/prompts/types.d.cts.map +1 -0
  354. package/dist/prompts/types.d.mts +52 -0
  355. package/dist/prompts/types.d.mts.map +1 -0
  356. package/dist/pubsub/types.d.cts +10 -0
  357. package/dist/pubsub/types.d.cts.map +1 -0
  358. package/dist/pubsub/types.d.mts +10 -0
  359. package/dist/pubsub/types.d.mts.map +1 -0
  360. package/dist/queue/types.d.cts +47 -0
  361. package/dist/queue/types.d.cts.map +1 -0
  362. package/dist/queue/types.d.mts +47 -0
  363. package/dist/queue/types.d.mts.map +1 -0
  364. package/dist/workflow/types.d.cts +83 -0
  365. package/dist/workflow/types.d.cts.map +1 -0
  366. package/dist/workflow/types.d.mts +83 -0
  367. package/dist/workflow/types.d.mts.map +1 -0
  368. package/package.json +112 -16
  369. package/dist/lib/api/core/index.d.ts +0 -15
  370. package/dist/lib/api/core/index.d.ts.map +0 -1
  371. package/dist/lib/api/core/index.js +0 -218
  372. package/dist/lib/api/core/index.js.map +0 -1
  373. package/dist/lib/api/core/index.test.d.ts +0 -2
  374. package/dist/lib/api/core/index.test.d.ts.map +0 -1
  375. package/dist/lib/api/core/index.test.js +0 -219
  376. package/dist/lib/api/core/index.test.js.map +0 -1
  377. package/dist/lib/api/core/types.d.ts +0 -109
  378. package/dist/lib/api/core/types.d.ts.map +0 -1
  379. package/dist/lib/api/core/types.js +0 -2
  380. package/dist/lib/api/core/types.js.map +0 -1
  381. package/dist/lib/api/index.d.ts +0 -5
  382. package/dist/lib/api/index.d.ts.map +0 -1
  383. package/dist/lib/api/index.js +0 -3
  384. package/dist/lib/api/index.js.map +0 -1
  385. package/dist/lib/api/middleware/index.d.ts +0 -7
  386. package/dist/lib/api/middleware/index.d.ts.map +0 -1
  387. package/dist/lib/api/middleware/index.js +0 -7
  388. package/dist/lib/api/middleware/index.js.map +0 -1
  389. package/dist/lib/api/middleware/index.test.d.ts +0 -2
  390. package/dist/lib/api/middleware/index.test.d.ts.map +0 -1
  391. package/dist/lib/api/middleware/index.test.js +0 -67
  392. package/dist/lib/api/middleware/index.test.js.map +0 -1
  393. package/dist/lib/api/middleware/types.d.ts +0 -12
  394. package/dist/lib/api/middleware/types.d.ts.map +0 -1
  395. package/dist/lib/api/middleware/types.js +0 -2
  396. package/dist/lib/api/middleware/types.js.map +0 -1
  397. package/dist/lib/api/openapi/index.d.ts +0 -31
  398. package/dist/lib/api/openapi/index.d.ts.map +0 -1
  399. package/dist/lib/api/openapi/index.js +0 -284
  400. package/dist/lib/api/openapi/index.js.map +0 -1
  401. package/dist/lib/api/openapi/index.test.d.ts +0 -2
  402. package/dist/lib/api/openapi/index.test.d.ts.map +0 -1
  403. package/dist/lib/api/openapi/index.test.js +0 -359
  404. package/dist/lib/api/openapi/index.test.js.map +0 -1
  405. package/dist/lib/api/openapi/types.d.ts +0 -57
  406. package/dist/lib/api/openapi/types.d.ts.map +0 -1
  407. package/dist/lib/api/openapi/types.js +0 -5
  408. package/dist/lib/api/openapi/types.js.map +0 -1
  409. package/dist/lib/api/validation/index.d.ts +0 -33
  410. package/dist/lib/api/validation/index.d.ts.map +0 -1
  411. package/dist/lib/api/validation/index.js +0 -92
  412. package/dist/lib/api/validation/index.js.map +0 -1
  413. package/dist/lib/api/validation/index.test.d.ts +0 -2
  414. package/dist/lib/api/validation/index.test.d.ts.map +0 -1
  415. package/dist/lib/api/validation/index.test.js +0 -135
  416. package/dist/lib/api/validation/index.test.js.map +0 -1
  417. package/dist/lib/cache/index.d.ts +0 -25
  418. package/dist/lib/cache/index.d.ts.map +0 -1
  419. package/dist/lib/cache/index.js +0 -62
  420. package/dist/lib/cache/index.js.map +0 -1
  421. package/dist/lib/cache/index.test.d.ts +0 -2
  422. package/dist/lib/cache/index.test.d.ts.map +0 -1
  423. package/dist/lib/cache/index.test.js +0 -314
  424. package/dist/lib/cache/index.test.js.map +0 -1
  425. package/dist/lib/cache/types.d.ts +0 -5
  426. package/dist/lib/cache/types.d.ts.map +0 -1
  427. package/dist/lib/cache/types.js +0 -2
  428. package/dist/lib/cache/types.js.map +0 -1
  429. package/dist/lib/errors/index.d.ts +0 -9
  430. package/dist/lib/errors/index.d.ts.map +0 -1
  431. package/dist/lib/errors/index.js +0 -25
  432. package/dist/lib/errors/index.js.map +0 -1
  433. package/dist/lib/errors/index.test.d.ts +0 -2
  434. package/dist/lib/errors/index.test.d.ts.map +0 -1
  435. package/dist/lib/errors/index.test.js +0 -197
  436. package/dist/lib/errors/index.test.js.map +0 -1
  437. package/dist/lib/errors/types.d.ts +0 -2
  438. package/dist/lib/errors/types.d.ts.map +0 -1
  439. package/dist/lib/errors/types.js +0 -2
  440. package/dist/lib/errors/types.js.map +0 -1
  441. package/dist/lib/i18n/index.d.ts +0 -18
  442. package/dist/lib/i18n/index.d.ts.map +0 -1
  443. package/dist/lib/i18n/index.js +0 -38
  444. package/dist/lib/i18n/index.js.map +0 -1
  445. package/dist/lib/i18n/index.test.d.ts +0 -2
  446. package/dist/lib/i18n/index.test.d.ts.map +0 -1
  447. package/dist/lib/i18n/index.test.js +0 -402
  448. package/dist/lib/i18n/index.test.js.map +0 -1
  449. package/dist/lib/i18n/types.d.ts +0 -15
  450. package/dist/lib/i18n/types.d.ts.map +0 -1
  451. package/dist/lib/i18n/types.js +0 -2
  452. package/dist/lib/i18n/types.js.map +0 -1
  453. package/dist/lib/policy/index.d.ts +0 -9
  454. package/dist/lib/policy/index.d.ts.map +0 -1
  455. package/dist/lib/policy/index.js +0 -51
  456. package/dist/lib/policy/index.js.map +0 -1
  457. package/dist/lib/policy/index.test.d.ts +0 -2
  458. package/dist/lib/policy/index.test.d.ts.map +0 -1
  459. package/dist/lib/policy/index.test.js +0 -328
  460. package/dist/lib/policy/index.test.js.map +0 -1
  461. package/dist/lib/policy/types.d.ts +0 -27
  462. package/dist/lib/policy/types.d.ts.map +0 -1
  463. package/dist/lib/policy/types.js +0 -2
  464. package/dist/lib/policy/types.js.map +0 -1
  465. package/dist/lib/pubsub/index.d.ts +0 -23
  466. package/dist/lib/pubsub/index.d.ts.map +0 -1
  467. package/dist/lib/pubsub/index.js +0 -55
  468. package/dist/lib/pubsub/index.js.map +0 -1
  469. package/dist/lib/pubsub/index.test.d.ts +0 -2
  470. package/dist/lib/pubsub/index.test.d.ts.map +0 -1
  471. package/dist/lib/pubsub/index.test.js +0 -550
  472. package/dist/lib/pubsub/index.test.js.map +0 -1
  473. package/dist/lib/pubsub/types.d.ts +0 -7
  474. package/dist/lib/pubsub/types.d.ts.map +0 -1
  475. package/dist/lib/pubsub/types.js +0 -2
  476. package/dist/lib/pubsub/types.js.map +0 -1
  477. package/dist/lib/queue/index.d.ts +0 -28
  478. package/dist/lib/queue/index.d.ts.map +0 -1
  479. package/dist/lib/queue/index.js +0 -211
  480. package/dist/lib/queue/index.js.map +0 -1
  481. package/dist/lib/queue/index.test.d.ts +0 -2
  482. package/dist/lib/queue/index.test.d.ts.map +0 -1
  483. package/dist/lib/queue/index.test.js +0 -740
  484. package/dist/lib/queue/index.test.js.map +0 -1
  485. package/dist/lib/queue/types.d.ts +0 -52
  486. package/dist/lib/queue/types.d.ts.map +0 -1
  487. package/dist/lib/queue/types.js +0 -2
  488. package/dist/lib/queue/types.js.map +0 -1
@@ -0,0 +1,79 @@
1
+ //#region src/lib/cron/builder/types.d.ts
2
+ declare const WeekDay: {
3
+ readonly sun: 0;
4
+ readonly mon: 1;
5
+ readonly tue: 2;
6
+ readonly wed: 3;
7
+ readonly thu: 4;
8
+ readonly fri: 5;
9
+ readonly sat: 6;
10
+ };
11
+ declare const Month: {
12
+ readonly jan: 1;
13
+ readonly feb: 2;
14
+ readonly mar: 3;
15
+ readonly apr: 4;
16
+ readonly may: 5;
17
+ readonly jun: 6;
18
+ readonly jul: 7;
19
+ readonly aug: 8;
20
+ readonly sep: 9;
21
+ readonly oct: 10;
22
+ readonly nov: 11;
23
+ readonly dec: 12;
24
+ };
25
+ type Enumerate<N extends number, Acc extends number[] = []> = Acc["length"] extends N ? Acc[number] : Enumerate<N, [...Acc, Acc["length"]]>;
26
+ type IntRange<F extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F>>;
27
+ type TimeType = IntRange<0, 60>;
28
+ type HourType = IntRange<0, 24>;
29
+ type DayType = IntRange<1, 32>;
30
+ type MonthType = IntRange<1, 13>;
31
+ type WeekDayType = IntRange<0, 7>;
32
+ type CronRange<T> = {
33
+ min: NoInfer<T>;
34
+ max: NoInfer<T>;
35
+ };
36
+ type CronStep<T> = {
37
+ step: NoInfer<T>;
38
+ range?: {
39
+ min: NoInfer<T>;
40
+ max?: NoInfer<T>;
41
+ };
42
+ };
43
+ type CronField = "second" | "minute" | "hour" | "day" | "month" | "weekday";
44
+ type CronListExpr<T> = Exclude<CronExpr<T>, {
45
+ type: "list";
46
+ }>;
47
+ type CronExpr<T> = {
48
+ type: "any";
49
+ } | {
50
+ type: "value";
51
+ value: T;
52
+ } | {
53
+ type: "range";
54
+ min: T;
55
+ max: T;
56
+ } | {
57
+ type: "step";
58
+ step: T;
59
+ range?: {
60
+ min: T;
61
+ max?: T;
62
+ };
63
+ } | {
64
+ type: "list";
65
+ values: CronListExpr<T>[];
66
+ };
67
+ interface IBuilder<Used extends CronField> {
68
+ second(expr: CronExpr<TimeType>): CronBuilderType<Used | "second">;
69
+ minute(expr: CronExpr<TimeType>): CronBuilderType<Used | "minute">;
70
+ hour(expr: CronExpr<HourType>): CronBuilderType<Used | "hour">;
71
+ day(expr: CronExpr<DayType>): CronBuilderType<Used | "day">;
72
+ month(expr: CronExpr<MonthType>): CronBuilderType<Used | "month">;
73
+ weekday(expr: CronExpr<WeekDayType>): CronBuilderType<Used | "weekday">;
74
+ }
75
+ type CronBuilderType<Used extends CronField = never> = Omit<IBuilder<Used>, Used>;
76
+ type BuilderFn = (builder: CronBuilderType) => void;
77
+ //#endregion
78
+ export { BuilderFn, CronExpr, CronListExpr, CronRange, CronStep, Month, WeekDay };
79
+ //# sourceMappingURL=types.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.cts","names":[],"sources":["../../../src/lib/cron/builder/types.ts"],"mappings":";cAAa,OAAA;EAAA;;;;;;;;cAUA,KAAA;EAAA;;;;;;;;;;;;;KAeR,SAAA,gDAGD,GAAA,mBAAsB,CAAA,GACtB,GAAA,WACA,SAAA,CAAU,CAAA,MAAO,GAAA,EAAK,GAAA;AAAA,KAErB,QAAA,uCAA+C,OAAA,CAClD,SAAA,CAAU,CAAA,GACV,SAAA,CAAU,CAAA;AAAA,KAGA,QAAA,GAAW,QAAA;AAAA,KACX,QAAA,GAAW,QAAA;AAAA,KACX,OAAA,GAAU,QAAA;AAAA,KACV,SAAA,GAAY,QAAA;AAAA,KACZ,WAAA,GAAc,QAAA;AAAA,KAEd,SAAA;EAAiB,GAAA,EAAK,OAAA,CAAQ,CAAA;EAAI,GAAA,EAAK,OAAA,CAAQ,CAAA;AAAA;AAAA,KAC/C,QAAA;EACV,IAAA,EAAM,OAAA,CAAQ,CAAA;EACd,KAAA;IAAU,GAAA,EAAK,OAAA,CAAQ,CAAA;IAAI,GAAA,GAAM,OAAA,CAAQ,CAAA;EAAA;AAAA;AAAA,KAG/B,SAAA;AAAA,KAQA,YAAA,MAAkB,OAAA,CAAQ,QAAA,CAAS,CAAA;EAAM,IAAA;AAAA;AAAA,KAEzC,QAAA;EACN,IAAA;AAAA;EACA,IAAA;EAAe,KAAA,EAAO,CAAA;AAAA;EACtB,IAAA;EAAe,GAAA,EAAK,CAAA;EAAG,GAAA,EAAK,CAAA;AAAA;EAC5B,IAAA;EAAc,IAAA,EAAM,CAAA;EAAG,KAAA;IAAU,GAAA,EAAK,CAAA;IAAG,GAAA,GAAM,CAAA;EAAA;AAAA;EAC/C,IAAA;EAAc,MAAA,EAAQ,YAAA,CAAa,CAAA;AAAA;AAAA,UAE/B,QAAA,cAAsB,SAAA;EAC9B,MAAA,CAAO,IAAA,EAAM,QAAA,CAAS,QAAA,IAAY,eAAA,CAAgB,IAAA;EAClD,MAAA,CAAO,IAAA,EAAM,QAAA,CAAS,QAAA,IAAY,eAAA,CAAgB,IAAA;EAClD,IAAA,CAAK,IAAA,EAAM,QAAA,CAAS,QAAA,IAAY,eAAA,CAAgB,IAAA;EAChD,GAAA,CAAI,IAAA,EAAM,QAAA,CAAS,OAAA,IAAW,eAAA,CAAgB,IAAA;EAC9C,KAAA,CAAM,IAAA,EAAM,QAAA,CAAS,SAAA,IAAa,eAAA,CAAgB,IAAA;EAClD,OAAA,CAAQ,IAAA,EAAM,QAAA,CAAS,WAAA,IAAe,eAAA,CAAgB,IAAA;AAAA;AAAA,KAG5C,eAAA,cAA6B,SAAA,YAAqB,IAAA,CAC5D,QAAA,CAAS,IAAA,GACT,IAAA;AAAA,KAGU,SAAA,IAAa,OAAA,EAAS,eAAA"}
@@ -0,0 +1,79 @@
1
+ //#region src/lib/cron/builder/types.d.ts
2
+ declare const WeekDay: {
3
+ readonly sun: 0;
4
+ readonly mon: 1;
5
+ readonly tue: 2;
6
+ readonly wed: 3;
7
+ readonly thu: 4;
8
+ readonly fri: 5;
9
+ readonly sat: 6;
10
+ };
11
+ declare const Month: {
12
+ readonly jan: 1;
13
+ readonly feb: 2;
14
+ readonly mar: 3;
15
+ readonly apr: 4;
16
+ readonly may: 5;
17
+ readonly jun: 6;
18
+ readonly jul: 7;
19
+ readonly aug: 8;
20
+ readonly sep: 9;
21
+ readonly oct: 10;
22
+ readonly nov: 11;
23
+ readonly dec: 12;
24
+ };
25
+ type Enumerate<N extends number, Acc extends number[] = []> = Acc["length"] extends N ? Acc[number] : Enumerate<N, [...Acc, Acc["length"]]>;
26
+ type IntRange<F extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F>>;
27
+ type TimeType = IntRange<0, 60>;
28
+ type HourType = IntRange<0, 24>;
29
+ type DayType = IntRange<1, 32>;
30
+ type MonthType = IntRange<1, 13>;
31
+ type WeekDayType = IntRange<0, 7>;
32
+ type CronRange<T> = {
33
+ min: NoInfer<T>;
34
+ max: NoInfer<T>;
35
+ };
36
+ type CronStep<T> = {
37
+ step: NoInfer<T>;
38
+ range?: {
39
+ min: NoInfer<T>;
40
+ max?: NoInfer<T>;
41
+ };
42
+ };
43
+ type CronField = "second" | "minute" | "hour" | "day" | "month" | "weekday";
44
+ type CronListExpr<T> = Exclude<CronExpr<T>, {
45
+ type: "list";
46
+ }>;
47
+ type CronExpr<T> = {
48
+ type: "any";
49
+ } | {
50
+ type: "value";
51
+ value: T;
52
+ } | {
53
+ type: "range";
54
+ min: T;
55
+ max: T;
56
+ } | {
57
+ type: "step";
58
+ step: T;
59
+ range?: {
60
+ min: T;
61
+ max?: T;
62
+ };
63
+ } | {
64
+ type: "list";
65
+ values: CronListExpr<T>[];
66
+ };
67
+ interface IBuilder<Used extends CronField> {
68
+ second(expr: CronExpr<TimeType>): CronBuilderType<Used | "second">;
69
+ minute(expr: CronExpr<TimeType>): CronBuilderType<Used | "minute">;
70
+ hour(expr: CronExpr<HourType>): CronBuilderType<Used | "hour">;
71
+ day(expr: CronExpr<DayType>): CronBuilderType<Used | "day">;
72
+ month(expr: CronExpr<MonthType>): CronBuilderType<Used | "month">;
73
+ weekday(expr: CronExpr<WeekDayType>): CronBuilderType<Used | "weekday">;
74
+ }
75
+ type CronBuilderType<Used extends CronField = never> = Omit<IBuilder<Used>, Used>;
76
+ type BuilderFn = (builder: CronBuilderType) => void;
77
+ //#endregion
78
+ export { BuilderFn, CronExpr, CronListExpr, CronRange, CronStep, Month, WeekDay };
79
+ //# sourceMappingURL=types.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.mts","names":[],"sources":["../../../src/lib/cron/builder/types.ts"],"mappings":";cAAa,OAAA;EAAA;;;;;;;;cAUA,KAAA;EAAA;;;;;;;;;;;;;KAeR,SAAA,gDAGD,GAAA,mBAAsB,CAAA,GACtB,GAAA,WACA,SAAA,CAAU,CAAA,MAAO,GAAA,EAAK,GAAA;AAAA,KAErB,QAAA,uCAA+C,OAAA,CAClD,SAAA,CAAU,CAAA,GACV,SAAA,CAAU,CAAA;AAAA,KAGA,QAAA,GAAW,QAAA;AAAA,KACX,QAAA,GAAW,QAAA;AAAA,KACX,OAAA,GAAU,QAAA;AAAA,KACV,SAAA,GAAY,QAAA;AAAA,KACZ,WAAA,GAAc,QAAA;AAAA,KAEd,SAAA;EAAiB,GAAA,EAAK,OAAA,CAAQ,CAAA;EAAI,GAAA,EAAK,OAAA,CAAQ,CAAA;AAAA;AAAA,KAC/C,QAAA;EACV,IAAA,EAAM,OAAA,CAAQ,CAAA;EACd,KAAA;IAAU,GAAA,EAAK,OAAA,CAAQ,CAAA;IAAI,GAAA,GAAM,OAAA,CAAQ,CAAA;EAAA;AAAA;AAAA,KAG/B,SAAA;AAAA,KAQA,YAAA,MAAkB,OAAA,CAAQ,QAAA,CAAS,CAAA;EAAM,IAAA;AAAA;AAAA,KAEzC,QAAA;EACN,IAAA;AAAA;EACA,IAAA;EAAe,KAAA,EAAO,CAAA;AAAA;EACtB,IAAA;EAAe,GAAA,EAAK,CAAA;EAAG,GAAA,EAAK,CAAA;AAAA;EAC5B,IAAA;EAAc,IAAA,EAAM,CAAA;EAAG,KAAA;IAAU,GAAA,EAAK,CAAA;IAAG,GAAA,GAAM,CAAA;EAAA;AAAA;EAC/C,IAAA;EAAc,MAAA,EAAQ,YAAA,CAAa,CAAA;AAAA;AAAA,UAE/B,QAAA,cAAsB,SAAA;EAC9B,MAAA,CAAO,IAAA,EAAM,QAAA,CAAS,QAAA,IAAY,eAAA,CAAgB,IAAA;EAClD,MAAA,CAAO,IAAA,EAAM,QAAA,CAAS,QAAA,IAAY,eAAA,CAAgB,IAAA;EAClD,IAAA,CAAK,IAAA,EAAM,QAAA,CAAS,QAAA,IAAY,eAAA,CAAgB,IAAA;EAChD,GAAA,CAAI,IAAA,EAAM,QAAA,CAAS,OAAA,IAAW,eAAA,CAAgB,IAAA;EAC9C,KAAA,CAAM,IAAA,EAAM,QAAA,CAAS,SAAA,IAAa,eAAA,CAAgB,IAAA;EAClD,OAAA,CAAQ,IAAA,EAAM,QAAA,CAAS,WAAA,IAAe,eAAA,CAAgB,IAAA;AAAA;AAAA,KAG5C,eAAA,cAA6B,SAAA,YAAqB,IAAA,CAC5D,QAAA,CAAS,IAAA,GACT,IAAA;AAAA,KAGU,SAAA,IAAa,OAAA,EAAS,eAAA"}
@@ -0,0 +1,28 @@
1
+ //#region src/lib/cron/builder/types.ts
2
+ const WeekDay = {
3
+ sun: 0,
4
+ mon: 1,
5
+ tue: 2,
6
+ wed: 3,
7
+ thu: 4,
8
+ fri: 5,
9
+ sat: 6
10
+ };
11
+ const Month = {
12
+ jan: 1,
13
+ feb: 2,
14
+ mar: 3,
15
+ apr: 4,
16
+ may: 5,
17
+ jun: 6,
18
+ jul: 7,
19
+ aug: 8,
20
+ sep: 9,
21
+ oct: 10,
22
+ nov: 11,
23
+ dec: 12
24
+ };
25
+ //#endregion
26
+ export { Month, WeekDay };
27
+
28
+ //# sourceMappingURL=types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.mjs","names":[],"sources":["../../../src/lib/cron/builder/types.ts"],"sourcesContent":["export const WeekDay = {\n sun: 0,\n mon: 1,\n tue: 2,\n wed: 3,\n thu: 4,\n fri: 5,\n sat: 6,\n} as const;\n\nexport const Month = {\n jan: 1,\n feb: 2,\n mar: 3,\n apr: 4,\n may: 5,\n jun: 6,\n jul: 7,\n aug: 8,\n sep: 9,\n oct: 10,\n nov: 11,\n dec: 12,\n} as const;\n\ntype Enumerate<\n N extends number,\n Acc extends number[] = [],\n> = Acc[\"length\"] extends N\n ? Acc[number]\n : Enumerate<N, [...Acc, Acc[\"length\"]]>;\n\ntype IntRange<F extends number, T extends number> = Exclude<\n Enumerate<T>,\n Enumerate<F>\n>;\n\nexport type TimeType = IntRange<0, 60>; // 0–59\nexport type HourType = IntRange<0, 24>; // 0–23\nexport type DayType = IntRange<1, 32>; // 1–31\nexport type MonthType = IntRange<1, 13>; // 1–12\nexport type WeekDayType = IntRange<0, 7>; // 0–6\n\nexport type CronRange<T> = { min: NoInfer<T>; max: NoInfer<T> };\nexport type CronStep<T> = {\n step: NoInfer<T>;\n range?: { min: NoInfer<T>; max?: NoInfer<T> };\n};\n\nexport type CronField =\n | \"second\"\n | \"minute\"\n | \"hour\"\n | \"day\"\n | \"month\"\n | \"weekday\";\n\nexport type CronListExpr<T> = Exclude<CronExpr<T>, { type: \"list\" }>;\n\nexport type CronExpr<T> =\n | { type: \"any\" }\n | { type: \"value\"; value: T }\n | { type: \"range\"; min: T; max: T }\n | { type: \"step\"; step: T; range?: { min: T; max?: T } }\n | { type: \"list\"; values: CronListExpr<T>[] };\n\ninterface IBuilder<Used extends CronField> {\n second(expr: CronExpr<TimeType>): CronBuilderType<Used | \"second\">;\n minute(expr: CronExpr<TimeType>): CronBuilderType<Used | \"minute\">;\n hour(expr: CronExpr<HourType>): CronBuilderType<Used | \"hour\">;\n day(expr: CronExpr<DayType>): CronBuilderType<Used | \"day\">;\n month(expr: CronExpr<MonthType>): CronBuilderType<Used | \"month\">;\n weekday(expr: CronExpr<WeekDayType>): CronBuilderType<Used | \"weekday\">;\n}\n\nexport type CronBuilderType<Used extends CronField = never> = Omit<\n IBuilder<Used>,\n Used\n>;\n\nexport type BuilderFn = (builder: CronBuilderType) => void;\n"],"mappings":";AAAA,MAAa,UAAU;CACrB,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACN;AAED,MAAa,QAAQ;CACnB,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACN"}
@@ -0,0 +1,308 @@
1
+ const require_lib_errors_index = require("../../lib/errors/index.cjs");
2
+ const require_scanner = require("./scanner.cjs");
3
+ //#region src/lib/cron/core/index.ts
4
+ const RETRY_DELAY_MS = 3600 * 1e3;
5
+ const MAX_YEARS = 4;
6
+ const ALIASES = {
7
+ "@yearly": "0 0 1 1 *",
8
+ "@monthly": "0 0 1 * *",
9
+ "@weekly": "0 0 * * 0",
10
+ "@daily": "0 0 * * *",
11
+ "@hourly": "0 * * * *",
12
+ "@minutely": "* * * * *"
13
+ };
14
+ const CronSecondRange = {
15
+ min: 0,
16
+ max: 59
17
+ };
18
+ const CronMinuteRange = {
19
+ min: 0,
20
+ max: 59
21
+ };
22
+ const CronHourRange = {
23
+ min: 0,
24
+ max: 23
25
+ };
26
+ const CronDayRange = {
27
+ min: 1,
28
+ max: 31
29
+ };
30
+ const CronMonthRange = {
31
+ min: 1,
32
+ max: 12
33
+ };
34
+ const CronDayOfWeekRange = {
35
+ min: 0,
36
+ max: 6
37
+ };
38
+ var Cron = class {
39
+ options;
40
+ status = "idle";
41
+ timeoutId = null;
42
+ second = Array(CronSecondRange.max + 1).fill(0);
43
+ minute = Array(CronMinuteRange.max + 1).fill(0);
44
+ hour = Array(CronHourRange.max + 1).fill(0);
45
+ day = Array(CronDayRange.max + 1).fill(0);
46
+ month = Array(CronMonthRange.max + 1).fill(0);
47
+ dayOfWeek = Array(CronDayOfWeekRange.max + 1).fill(0);
48
+ hasSeconds;
49
+ _dayWildcard = false;
50
+ _dowWildcard = false;
51
+ fillRange(values, min, max) {
52
+ for (let i = min; i <= max; i++) values[i] = 1;
53
+ }
54
+ handleStep(part, values, min, max) {
55
+ const [rangePart, stepStr] = part.split("/");
56
+ if (!rangePart) return require_lib_errors_index.err("InvalidValueError", `'${rangePart}' is empty`);
57
+ if (!stepStr) return require_lib_errors_index.err("InvalidValueError", `'${stepStr}' is empty`);
58
+ const step = Number(stepStr);
59
+ if (!Number.isInteger(step)) return require_lib_errors_index.err("InvalidValueError", `'${step}' is not a valid number`);
60
+ if (step <= 0) return require_lib_errors_index.err("OutOfBoundError", `Expected ${step} > 0`);
61
+ if (rangePart === "*") {
62
+ for (let i = min; i <= max; i += step) values[i] = 1;
63
+ return require_lib_errors_index.ok(true);
64
+ }
65
+ if (rangePart.includes("-")) return this.handleStepRange(rangePart, step, values, min, max);
66
+ return this.handleStepSingle(rangePart, step, values, min, max);
67
+ }
68
+ handleStepRange(range, step, values, min, max) {
69
+ const [startStr, endStr] = range.split("-");
70
+ if (!endStr) return require_lib_errors_index.err("InvalidValueError", `'${endStr}' is empty`);
71
+ let start = min;
72
+ if (startStr && startStr.length > 0) start = Number(startStr);
73
+ const end = Number(endStr);
74
+ if (!Number.isInteger(start)) return require_lib_errors_index.err("InvalidValueError", `'${start}' is not a valid number`);
75
+ if (!Number.isInteger(end)) return require_lib_errors_index.err("InvalidValueError", `'${end}' is not a valid number`);
76
+ if (start < min) return require_lib_errors_index.err("OutOfBoundError", `Expected ${start} >= ${min}`);
77
+ if (end > max) return require_lib_errors_index.err("OutOfBoundError", `Expected ${end} <= ${max}`);
78
+ if (start > end) return require_lib_errors_index.err("OutOfBoundError", `Expected ${start} <= ${end}`);
79
+ for (let i = start; i <= end; i += step) values[i] = 1;
80
+ return require_lib_errors_index.ok(true);
81
+ }
82
+ handleStepSingle(value, step, values, min, max) {
83
+ const start = Number(value);
84
+ if (!Number.isInteger(start)) return require_lib_errors_index.err("InvalidValueError", `'${start}' is not a valid number`);
85
+ if (start < min) return require_lib_errors_index.err("OutOfBoundError", `Expected ${start} >= ${min}`);
86
+ if (start > max) return require_lib_errors_index.err("OutOfBoundError", `Expected ${start} <= ${max}`);
87
+ for (let i = start; i <= max; i += step) values[i] = 1;
88
+ return require_lib_errors_index.ok(true);
89
+ }
90
+ handleRange(part, values, min, max) {
91
+ const [startStr, endStr] = part.split("-");
92
+ if (!startStr) return require_lib_errors_index.err("InvalidValueError", `'${startStr}' is empty`);
93
+ if (!endStr) return require_lib_errors_index.err("InvalidValueError", `'${endStr}' is empty`);
94
+ const start = Number(startStr);
95
+ const end = Number(endStr);
96
+ if (!Number.isInteger(start)) return require_lib_errors_index.err("InvalidValueError", `'${start}' is not a valid number`);
97
+ if (!Number.isInteger(end)) return require_lib_errors_index.err("InvalidValueError", `'${end}' is not a valid number`);
98
+ if (start < min) return require_lib_errors_index.err("OutOfBoundError", `Expected ${start} >= ${min}`);
99
+ if (end > max) return require_lib_errors_index.err("OutOfBoundError", `Expected ${end} <= ${max}`);
100
+ if (start > end) return require_lib_errors_index.err("OutOfBoundError", `Expected ${start} <= ${end}`);
101
+ for (let i = start; i <= end; i++) values[i] = 1;
102
+ return require_lib_errors_index.ok(true);
103
+ }
104
+ handleNumber(value, values, min, max) {
105
+ const n = Number(value);
106
+ if (!Number.isInteger(n)) return require_lib_errors_index.err("InvalidValueError", `'${value}' is not a valid number`);
107
+ if (n < min) return require_lib_errors_index.err("OutOfBoundError", `Expected ${n} >= ${min}`);
108
+ if (n > max) return require_lib_errors_index.err("OutOfBoundError", `Expected ${n} <= ${max}`);
109
+ values[n] = 1;
110
+ return require_lib_errors_index.ok(true);
111
+ }
112
+ constructor(options) {
113
+ this.options = options;
114
+ const expr = this.resolveAlias(options.schedule);
115
+ const [error, tokens] = new require_scanner.Scanner(expr).scan();
116
+ if (error) throw new Error(`${error.type}: ${error.message}`);
117
+ this.hasSeconds = expr.trim().split(/\s+/).length === require_scanner.FieldAmount.max;
118
+ const [parsingError, _] = this.parse(tokens);
119
+ if (parsingError) throw new Error(`${parsingError.type}: ${parsingError.message}`);
120
+ }
121
+ resolveAlias(schedule) {
122
+ return ALIASES[schedule] || schedule;
123
+ }
124
+ parse(tokens) {
125
+ for (let i = 0; i < tokens.length; i++) {
126
+ const token = tokens[i];
127
+ if (!token) return require_lib_errors_index.err("InvalidValueError", "Undefined token");
128
+ const tokenType = token.getTokenType();
129
+ switch (token.getField()) {
130
+ case "second": {
131
+ const [error, _] = this.handleField(token, this.second, CronSecondRange.min, CronSecondRange.max);
132
+ if (error) return require_lib_errors_index.err(error.type, `${error.message} in field '${token.getField()}'`);
133
+ break;
134
+ }
135
+ case "minute": {
136
+ const [error, _] = this.handleField(token, this.minute, CronMinuteRange.min, CronMinuteRange.max);
137
+ if (error) return require_lib_errors_index.err(error.type, `${error.message} in field '${token.getField()}'`);
138
+ break;
139
+ }
140
+ case "hour": {
141
+ const [error, _] = this.handleField(token, this.hour, CronHourRange.min, CronHourRange.max);
142
+ if (error) return require_lib_errors_index.err(error.type, `${error.message} in field '${token.getField()}'`);
143
+ break;
144
+ }
145
+ case "day": {
146
+ if (tokenType === "any") this._dayWildcard = true;
147
+ const [error, _] = this.handleField(token, this.day, CronDayRange.min, CronDayRange.max);
148
+ if (error) return require_lib_errors_index.err(error.type, `${error.message} in field '${token.getField()}'`);
149
+ break;
150
+ }
151
+ case "month": {
152
+ const [error, _] = this.handleField(token, this.month, CronMonthRange.min, CronMonthRange.max);
153
+ if (error) return require_lib_errors_index.err(error.type, `${error.message} in field '${token.getField()}'`);
154
+ break;
155
+ }
156
+ case "weekday": {
157
+ if (tokenType === "any") this._dowWildcard = true;
158
+ const [error, _] = this.handleField(token, this.dayOfWeek, CronDayOfWeekRange.min, CronDayOfWeekRange.max);
159
+ if (error) return require_lib_errors_index.err(error.type, `${error.message} in field '${token.getField()}'`);
160
+ break;
161
+ }
162
+ default: return require_lib_errors_index.err("InvalidValueError", `Invalid field '${token.getField()}'`);
163
+ }
164
+ }
165
+ return require_lib_errors_index.ok(true);
166
+ }
167
+ handleField(token, field, min, max) {
168
+ switch (token.getTokenType()) {
169
+ case "any":
170
+ this.fillRange(field, min, max);
171
+ break;
172
+ case "number": {
173
+ const [error, _] = this.handleNumber(token.getComponent(), field, min, max);
174
+ if (error) return require_lib_errors_index.err(error.type, error.message);
175
+ break;
176
+ }
177
+ case "range": {
178
+ const component = token.getComponent();
179
+ const [error, _] = this.handleRange(component, field, min, max);
180
+ if (error) return require_lib_errors_index.err(error.type, error.message);
181
+ break;
182
+ }
183
+ case "step": {
184
+ const component = token.getComponent();
185
+ const [error, _] = this.handleStep(component, field, min, max);
186
+ if (error) return require_lib_errors_index.err(error.type, error.message);
187
+ break;
188
+ }
189
+ default: return require_lib_errors_index.err("InvalidValueError", `Invalid token type '${token.getTokenType()}'`);
190
+ }
191
+ return require_lib_errors_index.ok(true);
192
+ }
193
+ matches(date) {
194
+ const s = date.getSeconds();
195
+ const m = date.getMinutes();
196
+ const h = date.getHours();
197
+ const d = date.getDate();
198
+ const mon = date.getMonth();
199
+ const dow = date.getDay();
200
+ const isSecondMatch = this.hasSeconds ? this.second[s] === 1 : true;
201
+ const isMinuteMatch = this.minute[m] === 1;
202
+ const isHourMatch = this.hour[h] === 1;
203
+ const isMonthMatch = this.month[mon + 1] === 1;
204
+ let isDayOrDowMatch;
205
+ if (!this._dayWildcard && !this._dowWildcard) isDayOrDowMatch = this.day[d] === 1 || this.dayOfWeek[dow] === 1;
206
+ else isDayOrDowMatch = this.day[d] === 1 && this.dayOfWeek[dow] === 1;
207
+ return isSecondMatch && isMinuteMatch && isHourMatch && isDayOrDowMatch && isMonthMatch;
208
+ }
209
+ getNextRun() {
210
+ const date = /* @__PURE__ */ new Date();
211
+ if (this.hasSeconds) {
212
+ date.setMilliseconds(0);
213
+ date.setSeconds(date.getSeconds() + 1);
214
+ } else {
215
+ date.setSeconds(0, 0);
216
+ date.setMinutes(date.getMinutes() + 1);
217
+ }
218
+ const deadline = new Date(date);
219
+ deadline.setFullYear(deadline.getFullYear() + MAX_YEARS);
220
+ while (date < deadline) {
221
+ const s = date.getSeconds();
222
+ const m = date.getMinutes();
223
+ const h = date.getHours();
224
+ const d = date.getDate();
225
+ const mon = date.getMonth();
226
+ const dow = date.getDay();
227
+ if (this.month[mon + 1] === 0) {
228
+ date.setDate(1);
229
+ date.setMonth(mon + 1);
230
+ date.setHours(0, 0, 0, 0);
231
+ continue;
232
+ }
233
+ let isDayOrDowMatch;
234
+ if (!this._dayWildcard && !this._dowWildcard) isDayOrDowMatch = this.day[d] === 0 && this.dayOfWeek[dow] === 0;
235
+ else isDayOrDowMatch = this.day[d] === 0 || this.dayOfWeek[dow] === 0;
236
+ if (isDayOrDowMatch) {
237
+ date.setDate(d + 1);
238
+ date.setHours(0, 0, 0, 0);
239
+ continue;
240
+ }
241
+ if (this.hour[h] === 0) {
242
+ date.setHours(h + 1);
243
+ date.setMinutes(0, 0, 0);
244
+ continue;
245
+ }
246
+ if (this.minute[m] === 0) {
247
+ date.setMinutes(m + 1);
248
+ date.setSeconds(0, 0);
249
+ continue;
250
+ }
251
+ if (this.hasSeconds && this.second[s] === 0) {
252
+ date.setSeconds(s + 1);
253
+ date.setMilliseconds(0);
254
+ continue;
255
+ }
256
+ return new Date(date);
257
+ }
258
+ return null;
259
+ }
260
+ start() {
261
+ if (this.status !== "idle") return;
262
+ this.status = "running";
263
+ this.next();
264
+ }
265
+ stop() {
266
+ this.status = "idle";
267
+ if (this.timeoutId) {
268
+ clearTimeout(this.timeoutId);
269
+ this.timeoutId = null;
270
+ }
271
+ }
272
+ pause() {
273
+ if (this.status !== "running") return;
274
+ this.status = "paused";
275
+ if (this.timeoutId) {
276
+ clearTimeout(this.timeoutId);
277
+ this.timeoutId = null;
278
+ }
279
+ }
280
+ resume() {
281
+ if (this.status !== "paused") return;
282
+ this.status = "running";
283
+ this.next();
284
+ }
285
+ getStatus() {
286
+ return this.status;
287
+ }
288
+ next() {
289
+ if (this.status !== "running") return;
290
+ const nextRun = this.getNextRun();
291
+ if (!nextRun) {
292
+ this.timeoutId = setTimeout(() => this.next(), RETRY_DELAY_MS);
293
+ return;
294
+ }
295
+ const delay = nextRun.getTime() - Date.now();
296
+ this.timeoutId = setTimeout(() => {
297
+ this.run();
298
+ }, Math.max(0, delay));
299
+ }
300
+ async run() {
301
+ if (this.status !== "running") return;
302
+ const handlerResult = this.options.handler();
303
+ await require_lib_errors_index.mightThrow(Promise.resolve(handlerResult));
304
+ if (this.status === "running") this.next();
305
+ }
306
+ };
307
+ //#endregion
308
+ exports.Cron = Cron;
@@ -0,0 +1,39 @@
1
+ import { CronOptions, CronStatus } from "./types.cjs";
2
+
3
+ //#region src/lib/cron/core/index.d.ts
4
+ declare class Cron {
5
+ private options;
6
+ private status;
7
+ private timeoutId;
8
+ private second;
9
+ private minute;
10
+ private hour;
11
+ private day;
12
+ private month;
13
+ private dayOfWeek;
14
+ private hasSeconds;
15
+ private _dayWildcard;
16
+ private _dowWildcard;
17
+ private fillRange;
18
+ private handleStep;
19
+ private handleStepRange;
20
+ private handleStepSingle;
21
+ private handleRange;
22
+ private handleNumber;
23
+ constructor(options: CronOptions);
24
+ private resolveAlias;
25
+ private parse;
26
+ private handleField;
27
+ matches(date: Date): boolean;
28
+ getNextRun(): Date | null;
29
+ start(): void;
30
+ stop(): void;
31
+ pause(): void;
32
+ resume(): void;
33
+ getStatus(): CronStatus;
34
+ private next;
35
+ private run;
36
+ }
37
+ //#endregion
38
+ export { Cron };
39
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/lib/cron/core/index.ts"],"mappings":";;;cA8Ca,IAAA;EAAA,QACH,OAAA;EAAA,QACA,MAAA;EAAA,QACA,SAAA;EAAA,QAGA,MAAA;EAAA,QACA,MAAA;EAAA,QACA,IAAA;EAAA,QACA,GAAA;EAAA,QACA,KAAA;EAAA,QACA,SAAA;EAAA,QACA,UAAA;EAAA,QACA,YAAA;EAAA,QACA,YAAA;EAAA,QAGA,SAAA;EAAA,QAMA,UAAA;EAAA,QAkDA,eAAA;EAAA,QAiEA,gBAAA;EAAA,QAuCA,WAAA;EAAA,QAmEA,YAAA;cAkCW,OAAA,EAAS,WAAA;EAAA,QAoBpB,YAAA;EAAA,QAIA,KAAA;EAAA,QAoIA,WAAA;EAyCD,OAAA,CAAQ,IAAA,EAAM,IAAA;EAkCd,UAAA,CAAA,GAAU,IAAA;EAoEV,KAAA,CAAA;EAOA,IAAA,CAAA;EASA,KAAA,CAAA;EAWA,MAAA,CAAA;EAOA,SAAA,CAAA,GAAS,UAAA;EAAA,QAIR,IAAA;EAAA,QAkBM,GAAA;AAAA"}
@@ -0,0 +1,39 @@
1
+ import { CronOptions, CronStatus } from "./types.mjs";
2
+
3
+ //#region src/lib/cron/core/index.d.ts
4
+ declare class Cron {
5
+ private options;
6
+ private status;
7
+ private timeoutId;
8
+ private second;
9
+ private minute;
10
+ private hour;
11
+ private day;
12
+ private month;
13
+ private dayOfWeek;
14
+ private hasSeconds;
15
+ private _dayWildcard;
16
+ private _dowWildcard;
17
+ private fillRange;
18
+ private handleStep;
19
+ private handleStepRange;
20
+ private handleStepSingle;
21
+ private handleRange;
22
+ private handleNumber;
23
+ constructor(options: CronOptions);
24
+ private resolveAlias;
25
+ private parse;
26
+ private handleField;
27
+ matches(date: Date): boolean;
28
+ getNextRun(): Date | null;
29
+ start(): void;
30
+ stop(): void;
31
+ pause(): void;
32
+ resume(): void;
33
+ getStatus(): CronStatus;
34
+ private next;
35
+ private run;
36
+ }
37
+ //#endregion
38
+ export { Cron };
39
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/lib/cron/core/index.ts"],"mappings":";;;cA8Ca,IAAA;EAAA,QACH,OAAA;EAAA,QACA,MAAA;EAAA,QACA,SAAA;EAAA,QAGA,MAAA;EAAA,QACA,MAAA;EAAA,QACA,IAAA;EAAA,QACA,GAAA;EAAA,QACA,KAAA;EAAA,QACA,SAAA;EAAA,QACA,UAAA;EAAA,QACA,YAAA;EAAA,QACA,YAAA;EAAA,QAGA,SAAA;EAAA,QAMA,UAAA;EAAA,QAkDA,eAAA;EAAA,QAiEA,gBAAA;EAAA,QAuCA,WAAA;EAAA,QAmEA,YAAA;cAkCW,OAAA,EAAS,WAAA;EAAA,QAoBpB,YAAA;EAAA,QAIA,KAAA;EAAA,QAoIA,WAAA;EAyCD,OAAA,CAAQ,IAAA,EAAM,IAAA;EAkCd,UAAA,CAAA,GAAU,IAAA;EAoEV,KAAA,CAAA;EAOA,IAAA,CAAA;EASA,KAAA,CAAA;EAWA,MAAA,CAAA;EAOA,SAAA,CAAA,GAAS,UAAA;EAAA,QAIR,IAAA;EAAA,QAkBM,GAAA;AAAA"}