@venizia/ignis-helpers 0.2.0-9 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (754) hide show
  1. package/LICENSE.md +0 -1
  2. package/README.md +73 -151
  3. package/dist/cjs/common/constants/mime.d.ts +67 -0
  4. package/dist/cjs/common/constants/mime.d.ts.map +1 -1
  5. package/dist/cjs/common/constants/mime.js +138 -1
  6. package/dist/cjs/common/constants/mime.js.map +1 -1
  7. package/dist/cjs/common/redact.d.ts.map +1 -1
  8. package/dist/cjs/common/redact.js +46 -5
  9. package/dist/cjs/common/redact.js.map +1 -1
  10. package/dist/cjs/common/resolvers.d.ts +5 -8
  11. package/dist/cjs/common/resolvers.d.ts.map +1 -1
  12. package/dist/cjs/common/resolvers.js +13 -26
  13. package/dist/cjs/common/resolvers.js.map +1 -1
  14. package/dist/cjs/common/types/resolver.d.ts +1 -4
  15. package/dist/cjs/common/types/resolver.d.ts.map +1 -1
  16. package/dist/cjs/core.d.ts +18 -8
  17. package/dist/cjs/core.d.ts.map +1 -1
  18. package/dist/cjs/core.js +26 -10
  19. package/dist/cjs/core.js.map +1 -1
  20. package/dist/cjs/modules/base.d.ts +4 -1
  21. package/dist/cjs/modules/base.d.ts.map +1 -1
  22. package/dist/cjs/modules/base.js +15 -4
  23. package/dist/cjs/modules/base.js.map +1 -1
  24. package/dist/cjs/modules/cron/helper.d.ts.map +1 -1
  25. package/dist/cjs/modules/cron/helper.js +2 -5
  26. package/dist/cjs/modules/cron/helper.js.map +1 -1
  27. package/dist/cjs/modules/crypto/algorithms/aes-legacy.algorithm.js +3 -3
  28. package/dist/cjs/modules/crypto/algorithms/aes-legacy.algorithm.js.map +1 -1
  29. package/dist/cjs/modules/crypto/algorithms/aes.algorithm.js +5 -5
  30. package/dist/cjs/modules/crypto/algorithms/aes.algorithm.js.map +1 -1
  31. package/dist/cjs/modules/crypto/algorithms/hash.algorithm.d.ts +1 -4
  32. package/dist/cjs/modules/crypto/algorithms/hash.algorithm.d.ts.map +1 -1
  33. package/dist/cjs/modules/crypto/algorithms/hash.algorithm.js +1 -4
  34. package/dist/cjs/modules/crypto/algorithms/hash.algorithm.js.map +1 -1
  35. package/dist/cjs/modules/env/app-env.d.ts +11 -0
  36. package/dist/cjs/modules/env/app-env.d.ts.map +1 -1
  37. package/dist/cjs/modules/env/app-env.js +32 -6
  38. package/dist/cjs/modules/env/app-env.js.map +1 -1
  39. package/dist/cjs/modules/index.d.ts +1 -1
  40. package/dist/cjs/modules/index.d.ts.map +1 -1
  41. package/dist/cjs/modules/index.js +1 -1
  42. package/dist/cjs/modules/index.js.map +1 -1
  43. package/dist/cjs/modules/logger/base/base.d.ts.map +1 -1
  44. package/dist/cjs/modules/logger/base/base.js +3 -0
  45. package/dist/cjs/modules/logger/base/base.js.map +1 -1
  46. package/dist/cjs/modules/logger/factory.d.ts.map +1 -1
  47. package/dist/cjs/modules/logger/factory.js +2 -1
  48. package/dist/cjs/modules/logger/factory.js.map +1 -1
  49. package/dist/cjs/modules/logger/formatting/error-prettier.d.ts +6 -0
  50. package/dist/cjs/modules/logger/formatting/error-prettier.d.ts.map +1 -1
  51. package/dist/cjs/modules/logger/formatting/error-prettier.js +35 -1
  52. package/dist/cjs/modules/logger/formatting/error-prettier.js.map +1 -1
  53. package/dist/cjs/modules/logger/hf/logger.d.ts.map +1 -1
  54. package/dist/cjs/modules/logger/hf/logger.js +3 -0
  55. package/dist/cjs/modules/logger/hf/logger.js.map +1 -1
  56. package/dist/cjs/modules/logger/pino/destination.d.ts.map +1 -1
  57. package/dist/cjs/modules/logger/pino/destination.js +2 -1
  58. package/dist/cjs/modules/logger/pino/destination.js.map +1 -1
  59. package/dist/cjs/modules/logger/resolver.d.ts +1 -1
  60. package/dist/cjs/modules/logger/resolver.d.ts.map +1 -1
  61. package/dist/cjs/modules/logger/resolver.js +8 -1
  62. package/dist/cjs/modules/logger/resolver.js.map +1 -1
  63. package/dist/cjs/modules/logger/slot.d.ts +23 -0
  64. package/dist/cjs/modules/logger/slot.d.ts.map +1 -0
  65. package/dist/cjs/modules/logger/slot.js +124 -0
  66. package/dist/cjs/modules/logger/slot.js.map +1 -0
  67. package/dist/cjs/modules/logger/winston/common/constants.d.ts.map +1 -1
  68. package/dist/cjs/modules/logger/winston/common/constants.js +6 -5
  69. package/dist/cjs/modules/logger/winston/common/constants.js.map +1 -1
  70. package/dist/cjs/modules/network/http-request/base-network-request.helper.d.ts.map +1 -1
  71. package/dist/cjs/modules/network/http-request/base-network-request.helper.js +4 -6
  72. package/dist/cjs/modules/network/http-request/base-network-request.helper.js.map +1 -1
  73. package/dist/cjs/modules/network/http-request/fetcher/node-fetcher.d.ts.map +1 -1
  74. package/dist/cjs/modules/network/http-request/fetcher/node-fetcher.js +3 -3
  75. package/dist/cjs/modules/network/http-request/fetcher/node-fetcher.js.map +1 -1
  76. package/dist/cjs/modules/network/index.d.ts +1 -0
  77. package/dist/cjs/modules/network/index.d.ts.map +1 -1
  78. package/dist/cjs/modules/network/index.js +1 -0
  79. package/dist/cjs/modules/network/index.js.map +1 -1
  80. package/dist/cjs/modules/network/tcp-socket/base-tcp-client.helper.d.ts.map +1 -1
  81. package/dist/cjs/modules/network/tcp-socket/base-tcp-client.helper.js +2 -5
  82. package/dist/cjs/modules/network/tcp-socket/base-tcp-client.helper.js.map +1 -1
  83. package/dist/cjs/modules/network/tcp-socket/base-tcp-server.helper.d.ts +2 -3
  84. package/dist/cjs/modules/network/tcp-socket/base-tcp-server.helper.d.ts.map +1 -1
  85. package/dist/cjs/modules/network/tcp-socket/base-tcp-server.helper.js +5 -5
  86. package/dist/cjs/modules/network/tcp-socket/base-tcp-server.helper.js.map +1 -1
  87. package/dist/cjs/modules/network/utilities/index.d.ts +3 -0
  88. package/dist/cjs/modules/network/utilities/index.d.ts.map +1 -0
  89. package/dist/cjs/modules/network/utilities/index.js +19 -0
  90. package/dist/cjs/modules/network/utilities/index.js.map +1 -0
  91. package/dist/cjs/modules/network/utilities/query-string.d.ts +26 -0
  92. package/dist/cjs/modules/network/utilities/query-string.d.ts.map +1 -0
  93. package/dist/cjs/modules/network/utilities/query-string.js +49 -0
  94. package/dist/cjs/modules/network/utilities/query-string.js.map +1 -0
  95. package/dist/cjs/modules/network/utilities/url-safety/common/constants.d.ts +18 -0
  96. package/dist/cjs/modules/network/utilities/url-safety/common/constants.d.ts.map +1 -0
  97. package/dist/cjs/modules/network/utilities/url-safety/common/constants.js +23 -0
  98. package/dist/cjs/modules/network/utilities/url-safety/common/constants.js.map +1 -0
  99. package/dist/cjs/modules/network/utilities/url-safety/common/errors.d.ts +31 -0
  100. package/dist/cjs/modules/network/utilities/url-safety/common/errors.d.ts.map +1 -0
  101. package/dist/cjs/modules/network/utilities/url-safety/common/errors.js +30 -0
  102. package/dist/cjs/modules/network/utilities/url-safety/common/errors.js.map +1 -0
  103. package/dist/cjs/modules/network/utilities/url-safety/common/index.d.ts +4 -0
  104. package/dist/cjs/modules/network/utilities/url-safety/common/index.d.ts.map +1 -0
  105. package/dist/cjs/modules/network/utilities/url-safety/common/index.js +20 -0
  106. package/dist/cjs/modules/network/utilities/url-safety/common/index.js.map +1 -0
  107. package/dist/cjs/modules/network/utilities/url-safety/common/types.d.ts +24 -0
  108. package/dist/cjs/modules/network/utilities/url-safety/common/types.d.ts.map +1 -0
  109. package/dist/cjs/modules/network/utilities/url-safety/common/types.js +3 -0
  110. package/dist/cjs/modules/network/utilities/url-safety/common/types.js.map +1 -0
  111. package/dist/cjs/modules/network/utilities/url-safety/index.d.ts +4 -0
  112. package/dist/cjs/modules/network/utilities/url-safety/index.d.ts.map +1 -0
  113. package/dist/cjs/modules/network/utilities/url-safety/index.js +20 -0
  114. package/dist/cjs/modules/network/utilities/url-safety/index.js.map +1 -0
  115. package/dist/cjs/modules/network/utilities/url-safety/ingest.d.ts +52 -0
  116. package/dist/cjs/modules/network/utilities/url-safety/ingest.d.ts.map +1 -0
  117. package/dist/cjs/modules/network/utilities/url-safety/ingest.js +167 -0
  118. package/dist/cjs/modules/network/utilities/url-safety/ingest.js.map +1 -0
  119. package/dist/cjs/modules/network/utilities/url-safety/policy.d.ts +29 -0
  120. package/dist/cjs/modules/network/utilities/url-safety/policy.d.ts.map +1 -0
  121. package/dist/cjs/modules/network/utilities/url-safety/policy.js +114 -0
  122. package/dist/cjs/modules/network/utilities/url-safety/policy.js.map +1 -0
  123. package/dist/cjs/modules/queue/bullmq/helper.d.ts +25 -4
  124. package/dist/cjs/modules/queue/bullmq/helper.d.ts.map +1 -1
  125. package/dist/cjs/modules/queue/bullmq/helper.js +45 -14
  126. package/dist/cjs/modules/queue/bullmq/helper.js.map +1 -1
  127. package/dist/cjs/modules/queue/internal/sequential/helper.d.ts.map +1 -1
  128. package/dist/cjs/modules/queue/internal/sequential/helper.js +2 -5
  129. package/dist/cjs/modules/queue/internal/sequential/helper.js.map +1 -1
  130. package/dist/cjs/modules/queue/kafka/base.d.ts +8 -4
  131. package/dist/cjs/modules/queue/kafka/base.d.ts.map +1 -1
  132. package/dist/cjs/modules/queue/kafka/base.js +5 -1
  133. package/dist/cjs/modules/queue/kafka/base.js.map +1 -1
  134. package/dist/cjs/modules/queue/kafka/bundler/platformatic-require.plugin.d.ts +1 -1
  135. package/dist/cjs/modules/queue/kafka/bundler/platformatic-require.plugin.d.ts.map +1 -1
  136. package/dist/cjs/modules/queue/kafka/bundler/platformatic-require.plugin.js +1 -1
  137. package/dist/cjs/modules/queue/kafka/bundler/platformatic-require.plugin.js.map +1 -1
  138. package/dist/cjs/modules/queue/kafka/common/types/callbacks.d.ts +10 -0
  139. package/dist/cjs/modules/queue/kafka/common/types/callbacks.d.ts.map +1 -1
  140. package/dist/cjs/modules/queue/kafka/common/types/consumer.d.ts +5 -1
  141. package/dist/cjs/modules/queue/kafka/common/types/consumer.d.ts.map +1 -1
  142. package/dist/cjs/modules/queue/kafka/consumer.d.ts +64 -28
  143. package/dist/cjs/modules/queue/kafka/consumer.d.ts.map +1 -1
  144. package/dist/cjs/modules/queue/kafka/consumer.js +58 -24
  145. package/dist/cjs/modules/queue/kafka/consumer.js.map +1 -1
  146. package/dist/cjs/modules/queue/mqtt/helper.d.ts.map +1 -1
  147. package/dist/cjs/modules/queue/mqtt/helper.js +6 -5
  148. package/dist/cjs/modules/queue/mqtt/helper.js.map +1 -1
  149. package/dist/cjs/modules/redis/base/abstract.helper.d.ts.map +1 -1
  150. package/dist/cjs/modules/redis/base/abstract.helper.js +10 -5
  151. package/dist/cjs/modules/redis/base/abstract.helper.js.map +1 -1
  152. package/dist/cjs/modules/redis/cluster/cluster.helper.d.ts +3 -2
  153. package/dist/cjs/modules/redis/cluster/cluster.helper.d.ts.map +1 -1
  154. package/dist/cjs/modules/redis/cluster/cluster.helper.js +18 -4
  155. package/dist/cjs/modules/redis/cluster/cluster.helper.js.map +1 -1
  156. package/dist/cjs/modules/redis/common/constants.d.ts +4 -0
  157. package/dist/cjs/modules/redis/common/constants.d.ts.map +1 -1
  158. package/dist/cjs/modules/redis/common/constants.js +6 -1
  159. package/dist/cjs/modules/redis/common/constants.js.map +1 -1
  160. package/dist/cjs/modules/redis/common/types.d.ts +13 -3
  161. package/dist/cjs/modules/redis/common/types.d.ts.map +1 -1
  162. package/dist/cjs/modules/redis/sentinel/sentinel.helper.d.ts +1 -1
  163. package/dist/cjs/modules/redis/sentinel/sentinel.helper.d.ts.map +1 -1
  164. package/dist/cjs/modules/redis/sentinel/sentinel.helper.js +3 -2
  165. package/dist/cjs/modules/redis/sentinel/sentinel.helper.js.map +1 -1
  166. package/dist/cjs/modules/redis/single/single.helper.d.ts +1 -1
  167. package/dist/cjs/modules/redis/single/single.helper.d.ts.map +1 -1
  168. package/dist/cjs/modules/redis/single/single.helper.js +4 -5
  169. package/dist/cjs/modules/redis/single/single.helper.js.map +1 -1
  170. package/dist/cjs/modules/secrets/base/abstract.helper.d.ts.map +1 -1
  171. package/dist/cjs/modules/secrets/base/abstract.helper.js +2 -1
  172. package/dist/cjs/modules/secrets/base/abstract.helper.js.map +1 -1
  173. package/dist/cjs/modules/secrets/hashicorp/hashicorp.helper.d.ts.map +1 -1
  174. package/dist/cjs/modules/secrets/hashicorp/hashicorp.helper.js +2 -1
  175. package/dist/cjs/modules/secrets/hashicorp/hashicorp.helper.js.map +1 -1
  176. package/dist/cjs/modules/secrets/system-envs/system-envs.helper.d.ts.map +1 -1
  177. package/dist/cjs/modules/secrets/system-envs/system-envs.helper.js +2 -1
  178. package/dist/cjs/modules/secrets/system-envs/system-envs.helper.js.map +1 -1
  179. package/dist/cjs/modules/socket/socket-io/client/helper.d.ts +2 -1
  180. package/dist/cjs/modules/socket/socket-io/client/helper.d.ts.map +1 -1
  181. package/dist/cjs/modules/socket/socket-io/client/helper.js +10 -4
  182. package/dist/cjs/modules/socket/socket-io/client/helper.js.map +1 -1
  183. package/dist/cjs/modules/socket/socket-io/common/types/client.d.ts +2 -0
  184. package/dist/cjs/modules/socket/socket-io/common/types/client.d.ts.map +1 -1
  185. package/dist/cjs/modules/socket/socket-io/server/helper.d.ts +1 -0
  186. package/dist/cjs/modules/socket/socket-io/server/helper.d.ts.map +1 -1
  187. package/dist/cjs/modules/socket/socket-io/server/helper.js +17 -30
  188. package/dist/cjs/modules/socket/socket-io/server/helper.js.map +1 -1
  189. package/dist/cjs/modules/socket/websocket/server/helper.d.ts.map +1 -1
  190. package/dist/cjs/modules/socket/websocket/server/helper.js +2 -1
  191. package/dist/cjs/modules/socket/websocket/server/helper.js.map +1 -1
  192. package/dist/cjs/modules/storage/base.d.ts +98 -49
  193. package/dist/cjs/modules/storage/base.d.ts.map +1 -1
  194. package/dist/cjs/modules/storage/base.js +201 -93
  195. package/dist/cjs/modules/storage/base.js.map +1 -1
  196. package/dist/cjs/modules/storage/bun-s3/helper.d.ts +74 -29
  197. package/dist/cjs/modules/storage/bun-s3/helper.d.ts.map +1 -1
  198. package/dist/cjs/modules/storage/bun-s3/helper.js +321 -55
  199. package/dist/cjs/modules/storage/bun-s3/helper.js.map +1 -1
  200. package/dist/cjs/modules/storage/bun-s3/utility.d.ts +59 -0
  201. package/dist/cjs/modules/storage/bun-s3/utility.d.ts.map +1 -1
  202. package/dist/cjs/modules/storage/bun-s3/utility.js +218 -28
  203. package/dist/cjs/modules/storage/bun-s3/utility.js.map +1 -1
  204. package/dist/cjs/modules/storage/common/constants.d.ts +27 -0
  205. package/dist/cjs/modules/storage/common/constants.d.ts.map +1 -0
  206. package/dist/cjs/modules/storage/common/constants.js +35 -0
  207. package/dist/cjs/modules/storage/common/constants.js.map +1 -0
  208. package/dist/cjs/modules/storage/common/errors.d.ts +22 -0
  209. package/dist/cjs/modules/storage/common/errors.d.ts.map +1 -0
  210. package/dist/cjs/modules/storage/common/errors.js +25 -0
  211. package/dist/cjs/modules/storage/common/errors.js.map +1 -0
  212. package/dist/cjs/modules/storage/common/index.d.ts +3 -0
  213. package/dist/cjs/modules/storage/common/index.d.ts.map +1 -1
  214. package/dist/cjs/modules/storage/common/index.js +3 -0
  215. package/dist/cjs/modules/storage/common/index.js.map +1 -1
  216. package/dist/cjs/modules/storage/common/types.d.ts +118 -38
  217. package/dist/cjs/modules/storage/common/types.d.ts.map +1 -1
  218. package/dist/cjs/modules/storage/common/utility.d.ts +7 -0
  219. package/dist/cjs/modules/storage/common/utility.d.ts.map +1 -0
  220. package/dist/cjs/modules/storage/common/utility.js +27 -0
  221. package/dist/cjs/modules/storage/common/utility.js.map +1 -0
  222. package/dist/cjs/modules/storage/disk/helper.d.ts +26 -28
  223. package/dist/cjs/modules/storage/disk/helper.d.ts.map +1 -1
  224. package/dist/cjs/modules/storage/disk/helper.js +125 -86
  225. package/dist/cjs/modules/storage/disk/helper.js.map +1 -1
  226. package/dist/cjs/modules/storage/in-memory/helper.d.ts +10 -5
  227. package/dist/cjs/modules/storage/in-memory/helper.d.ts.map +1 -1
  228. package/dist/cjs/modules/storage/in-memory/helper.js +17 -10
  229. package/dist/cjs/modules/storage/in-memory/helper.js.map +1 -1
  230. package/dist/cjs/modules/storage/minio/helper.d.ts +22 -28
  231. package/dist/cjs/modules/storage/minio/helper.d.ts.map +1 -1
  232. package/dist/cjs/modules/storage/minio/helper.js +87 -33
  233. package/dist/cjs/modules/storage/minio/helper.js.map +1 -1
  234. package/dist/cjs/modules/temporal/adapters/dayjs.d.ts +21 -0
  235. package/dist/cjs/modules/temporal/adapters/dayjs.d.ts.map +1 -0
  236. package/dist/cjs/modules/temporal/adapters/dayjs.js +48 -0
  237. package/dist/cjs/modules/temporal/adapters/dayjs.js.map +1 -0
  238. package/dist/cjs/modules/temporal/adapters/guards.d.ts +4 -0
  239. package/dist/cjs/modules/temporal/adapters/guards.d.ts.map +1 -0
  240. package/dist/cjs/modules/temporal/adapters/guards.js +14 -0
  241. package/dist/cjs/modules/temporal/adapters/guards.js.map +1 -0
  242. package/dist/cjs/modules/temporal/adapters/index.d.ts +4 -0
  243. package/dist/cjs/modules/temporal/adapters/index.d.ts.map +1 -0
  244. package/dist/cjs/modules/temporal/adapters/index.js +20 -0
  245. package/dist/cjs/modules/temporal/adapters/index.js.map +1 -0
  246. package/dist/cjs/modules/temporal/adapters/luxon.d.ts +13 -0
  247. package/dist/cjs/modules/temporal/adapters/luxon.d.ts.map +1 -0
  248. package/dist/cjs/modules/temporal/adapters/luxon.js +26 -0
  249. package/dist/cjs/modules/temporal/adapters/luxon.js.map +1 -0
  250. package/dist/cjs/modules/temporal/adapters/native.d.ts +16 -0
  251. package/dist/cjs/modules/temporal/adapters/native.d.ts.map +1 -0
  252. package/dist/cjs/modules/temporal/adapters/native.js +38 -0
  253. package/dist/cjs/modules/temporal/adapters/native.js.map +1 -0
  254. package/dist/cjs/modules/temporal/calendar.d.ts +52 -0
  255. package/dist/cjs/modules/temporal/calendar.d.ts.map +1 -0
  256. package/dist/cjs/modules/temporal/calendar.js +151 -0
  257. package/dist/cjs/modules/temporal/calendar.js.map +1 -0
  258. package/dist/cjs/modules/temporal/common/constants.d.ts +20 -0
  259. package/dist/cjs/modules/temporal/common/constants.d.ts.map +1 -0
  260. package/dist/cjs/modules/temporal/common/constants.js +33 -0
  261. package/dist/cjs/modules/temporal/common/constants.js.map +1 -0
  262. package/dist/cjs/modules/temporal/common/index.d.ts +3 -0
  263. package/dist/cjs/modules/temporal/common/index.d.ts.map +1 -0
  264. package/dist/cjs/modules/temporal/common/index.js +19 -0
  265. package/dist/cjs/modules/temporal/common/index.js.map +1 -0
  266. package/dist/cjs/modules/temporal/common/types.d.ts +69 -0
  267. package/dist/cjs/modules/temporal/common/types.d.ts.map +1 -0
  268. package/dist/cjs/modules/temporal/common/types.js +3 -0
  269. package/dist/cjs/modules/temporal/common/types.js.map +1 -0
  270. package/dist/cjs/modules/temporal/helper.d.ts +120 -0
  271. package/dist/cjs/modules/temporal/helper.d.ts.map +1 -0
  272. package/dist/cjs/modules/temporal/helper.js +326 -0
  273. package/dist/cjs/modules/temporal/helper.js.map +1 -0
  274. package/dist/cjs/modules/temporal/index.d.ts +4 -0
  275. package/dist/cjs/modules/temporal/index.d.ts.map +1 -0
  276. package/dist/cjs/modules/temporal/index.js +20 -0
  277. package/dist/cjs/modules/temporal/index.js.map +1 -0
  278. package/dist/cjs/modules/temporal/pattern.d.ts +24 -0
  279. package/dist/cjs/modules/temporal/pattern.d.ts.map +1 -0
  280. package/dist/cjs/modules/temporal/pattern.js +133 -0
  281. package/dist/cjs/modules/temporal/pattern.js.map +1 -0
  282. package/dist/cjs/modules/temporal/tokens.d.ts +65 -0
  283. package/dist/cjs/modules/temporal/tokens.d.ts.map +1 -0
  284. package/dist/cjs/modules/temporal/tokens.js +113 -0
  285. package/dist/cjs/modules/temporal/tokens.js.map +1 -0
  286. package/dist/cjs/modules/uid/index.d.ts +1 -0
  287. package/dist/cjs/modules/uid/index.d.ts.map +1 -1
  288. package/dist/cjs/modules/uid/index.js +1 -0
  289. package/dist/cjs/modules/uid/index.js.map +1 -1
  290. package/dist/cjs/modules/uid/request-id.d.ts +5 -12
  291. package/dist/cjs/modules/uid/request-id.d.ts.map +1 -1
  292. package/dist/cjs/modules/uid/request-id.js +7 -44
  293. package/dist/cjs/modules/uid/request-id.js.map +1 -1
  294. package/dist/cjs/modules/uid/uuid/common/constants.d.ts +32 -0
  295. package/dist/cjs/modules/uid/uuid/common/constants.d.ts.map +1 -0
  296. package/dist/cjs/modules/uid/uuid/common/constants.js +36 -0
  297. package/dist/cjs/modules/uid/uuid/common/constants.js.map +1 -0
  298. package/dist/cjs/modules/uid/uuid/common/index.d.ts +3 -0
  299. package/dist/cjs/modules/uid/uuid/common/index.d.ts.map +1 -0
  300. package/dist/cjs/modules/uid/uuid/common/index.js +24 -0
  301. package/dist/cjs/modules/uid/uuid/common/index.js.map +1 -0
  302. package/dist/cjs/modules/uid/uuid/common/types.d.ts +6 -0
  303. package/dist/cjs/modules/uid/uuid/common/types.d.ts.map +1 -0
  304. package/dist/cjs/modules/uid/uuid/common/types.js +3 -0
  305. package/dist/cjs/modules/uid/uuid/common/types.js.map +1 -0
  306. package/dist/cjs/modules/uid/uuid/helper.d.ts +37 -0
  307. package/dist/cjs/modules/uid/uuid/helper.d.ts.map +1 -0
  308. package/dist/cjs/modules/uid/uuid/helper.js +49 -0
  309. package/dist/cjs/modules/uid/uuid/helper.js.map +1 -0
  310. package/dist/cjs/modules/uid/uuid/index.d.ts +6 -0
  311. package/dist/cjs/modules/uid/uuid/index.d.ts.map +1 -0
  312. package/dist/cjs/modules/uid/uuid/index.js +22 -0
  313. package/dist/cjs/modules/uid/uuid/index.js.map +1 -0
  314. package/dist/cjs/modules/uid/uuid/sha1.d.ts +19 -0
  315. package/dist/cjs/modules/uid/uuid/sha1.d.ts.map +1 -0
  316. package/dist/cjs/modules/uid/uuid/sha1.js +105 -0
  317. package/dist/cjs/modules/uid/uuid/sha1.js.map +1 -0
  318. package/dist/cjs/modules/uid/uuid/v4.d.ts +9 -0
  319. package/dist/cjs/modules/uid/uuid/v4.d.ts.map +1 -0
  320. package/dist/cjs/modules/uid/uuid/v4.js +54 -0
  321. package/dist/cjs/modules/uid/uuid/v4.js.map +1 -0
  322. package/dist/cjs/modules/uid/uuid/v5.d.ts +15 -0
  323. package/dist/cjs/modules/uid/uuid/v5.d.ts.map +1 -0
  324. package/dist/cjs/modules/uid/uuid/v5.js +90 -0
  325. package/dist/cjs/modules/uid/uuid/v5.js.map +1 -0
  326. package/dist/cjs/modules/uid/uuid/v7.d.ts +11 -0
  327. package/dist/cjs/modules/uid/uuid/v7.d.ts.map +1 -0
  328. package/dist/cjs/modules/uid/uuid/v7.js +95 -0
  329. package/dist/cjs/modules/uid/uuid/v7.js.map +1 -0
  330. package/dist/cjs/temporal.d.ts +2 -0
  331. package/dist/cjs/temporal.d.ts.map +1 -0
  332. package/dist/cjs/temporal.js +19 -0
  333. package/dist/cjs/temporal.js.map +1 -0
  334. package/dist/cjs/utilities/build-info.utility.d.ts +33 -0
  335. package/dist/cjs/utilities/build-info.utility.d.ts.map +1 -0
  336. package/dist/cjs/utilities/build-info.utility.js +28 -0
  337. package/dist/cjs/utilities/build-info.utility.js.map +1 -0
  338. package/dist/cjs/utilities/hr-time.utility.d.ts +6 -0
  339. package/dist/cjs/utilities/hr-time.utility.d.ts.map +1 -0
  340. package/dist/cjs/utilities/hr-time.utility.js +14 -0
  341. package/dist/cjs/utilities/hr-time.utility.js.map +1 -0
  342. package/dist/cjs/utilities/index.d.ts +3 -1
  343. package/dist/cjs/utilities/index.d.ts.map +1 -1
  344. package/dist/cjs/utilities/index.js +3 -1
  345. package/dist/cjs/utilities/index.js.map +1 -1
  346. package/dist/cjs/utilities/module.utility.d.ts +8 -2
  347. package/dist/cjs/utilities/module.utility.d.ts.map +1 -1
  348. package/dist/cjs/utilities/module.utility.js +25 -6
  349. package/dist/cjs/utilities/module.utility.js.map +1 -1
  350. package/dist/cjs/utilities/parse.utility.d.ts +29 -0
  351. package/dist/cjs/utilities/parse.utility.d.ts.map +1 -1
  352. package/dist/cjs/utilities/parse.utility.js +58 -10
  353. package/dist/cjs/utilities/parse.utility.js.map +1 -1
  354. package/dist/cjs/utilities/project-root.utility.d.ts +17 -0
  355. package/dist/cjs/utilities/project-root.utility.d.ts.map +1 -0
  356. package/dist/cjs/utilities/project-root.utility.js +23 -0
  357. package/dist/cjs/utilities/project-root.utility.js.map +1 -0
  358. package/dist/cjs/utilities/request.utility.d.ts +22 -1
  359. package/dist/cjs/utilities/request.utility.d.ts.map +1 -1
  360. package/dist/cjs/utilities/request.utility.js +44 -3
  361. package/dist/cjs/utilities/request.utility.js.map +1 -1
  362. package/dist/cjs/utilities/sleep.utility.d.ts +0 -1
  363. package/dist/cjs/utilities/sleep.utility.d.ts.map +1 -1
  364. package/dist/cjs/utilities/sleep.utility.js +0 -1
  365. package/dist/cjs/utilities/sleep.utility.js.map +1 -1
  366. package/dist/cjs/uuid.d.ts +2 -0
  367. package/dist/cjs/uuid.d.ts.map +1 -0
  368. package/dist/cjs/uuid.js +19 -0
  369. package/dist/cjs/uuid.js.map +1 -0
  370. package/dist/esm/common/constants/mime.d.ts +67 -0
  371. package/dist/esm/common/constants/mime.d.ts.map +1 -1
  372. package/dist/esm/common/constants/mime.js +134 -0
  373. package/dist/esm/common/constants/mime.js.map +1 -1
  374. package/dist/esm/common/redact.d.ts.map +1 -1
  375. package/dist/esm/common/redact.js +46 -5
  376. package/dist/esm/common/redact.js.map +1 -1
  377. package/dist/esm/common/resolvers.d.ts +5 -8
  378. package/dist/esm/common/resolvers.d.ts.map +1 -1
  379. package/dist/esm/common/resolvers.js +8 -25
  380. package/dist/esm/common/resolvers.js.map +1 -1
  381. package/dist/esm/common/types/resolver.d.ts +1 -4
  382. package/dist/esm/common/types/resolver.d.ts.map +1 -1
  383. package/dist/esm/core.d.ts +18 -8
  384. package/dist/esm/core.d.ts.map +1 -1
  385. package/dist/esm/core.js +19 -6
  386. package/dist/esm/core.js.map +1 -1
  387. package/dist/esm/modules/base.d.ts +4 -1
  388. package/dist/esm/modules/base.d.ts.map +1 -1
  389. package/dist/esm/modules/base.js +15 -4
  390. package/dist/esm/modules/base.js.map +1 -1
  391. package/dist/esm/modules/cron/helper.d.ts.map +1 -1
  392. package/dist/esm/modules/cron/helper.js +2 -2
  393. package/dist/esm/modules/cron/helper.js.map +1 -1
  394. package/dist/esm/modules/crypto/algorithms/aes-legacy.algorithm.js +3 -3
  395. package/dist/esm/modules/crypto/algorithms/aes-legacy.algorithm.js.map +1 -1
  396. package/dist/esm/modules/crypto/algorithms/aes.algorithm.js +5 -5
  397. package/dist/esm/modules/crypto/algorithms/aes.algorithm.js.map +1 -1
  398. package/dist/esm/modules/crypto/algorithms/hash.algorithm.d.ts +1 -4
  399. package/dist/esm/modules/crypto/algorithms/hash.algorithm.d.ts.map +1 -1
  400. package/dist/esm/modules/crypto/algorithms/hash.algorithm.js +1 -4
  401. package/dist/esm/modules/crypto/algorithms/hash.algorithm.js.map +1 -1
  402. package/dist/esm/modules/env/app-env.d.ts +11 -0
  403. package/dist/esm/modules/env/app-env.d.ts.map +1 -1
  404. package/dist/esm/modules/env/app-env.js +32 -6
  405. package/dist/esm/modules/env/app-env.js.map +1 -1
  406. package/dist/esm/modules/index.d.ts +1 -1
  407. package/dist/esm/modules/index.d.ts.map +1 -1
  408. package/dist/esm/modules/index.js +1 -1
  409. package/dist/esm/modules/index.js.map +1 -1
  410. package/dist/esm/modules/logger/base/base.d.ts.map +1 -1
  411. package/dist/esm/modules/logger/base/base.js +3 -0
  412. package/dist/esm/modules/logger/base/base.js.map +1 -1
  413. package/dist/esm/modules/logger/factory.d.ts.map +1 -1
  414. package/dist/esm/modules/logger/factory.js +2 -1
  415. package/dist/esm/modules/logger/factory.js.map +1 -1
  416. package/dist/esm/modules/logger/formatting/error-prettier.d.ts +6 -0
  417. package/dist/esm/modules/logger/formatting/error-prettier.d.ts.map +1 -1
  418. package/dist/esm/modules/logger/formatting/error-prettier.js +35 -1
  419. package/dist/esm/modules/logger/formatting/error-prettier.js.map +1 -1
  420. package/dist/esm/modules/logger/hf/logger.d.ts.map +1 -1
  421. package/dist/esm/modules/logger/hf/logger.js +4 -1
  422. package/dist/esm/modules/logger/hf/logger.js.map +1 -1
  423. package/dist/esm/modules/logger/pino/destination.d.ts.map +1 -1
  424. package/dist/esm/modules/logger/pino/destination.js +2 -1
  425. package/dist/esm/modules/logger/pino/destination.js.map +1 -1
  426. package/dist/esm/modules/logger/resolver.d.ts +1 -1
  427. package/dist/esm/modules/logger/resolver.d.ts.map +1 -1
  428. package/dist/esm/modules/logger/resolver.js +8 -1
  429. package/dist/esm/modules/logger/resolver.js.map +1 -1
  430. package/dist/esm/modules/logger/slot.d.ts +23 -0
  431. package/dist/esm/modules/logger/slot.d.ts.map +1 -0
  432. package/dist/esm/modules/logger/slot.js +119 -0
  433. package/dist/esm/modules/logger/slot.js.map +1 -0
  434. package/dist/esm/modules/logger/winston/common/constants.d.ts.map +1 -1
  435. package/dist/esm/modules/logger/winston/common/constants.js +6 -5
  436. package/dist/esm/modules/logger/winston/common/constants.js.map +1 -1
  437. package/dist/esm/modules/network/http-request/base-network-request.helper.d.ts.map +1 -1
  438. package/dist/esm/modules/network/http-request/base-network-request.helper.js +4 -3
  439. package/dist/esm/modules/network/http-request/base-network-request.helper.js.map +1 -1
  440. package/dist/esm/modules/network/http-request/fetcher/node-fetcher.d.ts.map +1 -1
  441. package/dist/esm/modules/network/http-request/fetcher/node-fetcher.js +3 -3
  442. package/dist/esm/modules/network/http-request/fetcher/node-fetcher.js.map +1 -1
  443. package/dist/esm/modules/network/index.d.ts +1 -0
  444. package/dist/esm/modules/network/index.d.ts.map +1 -1
  445. package/dist/esm/modules/network/index.js +1 -0
  446. package/dist/esm/modules/network/index.js.map +1 -1
  447. package/dist/esm/modules/network/tcp-socket/base-tcp-client.helper.d.ts.map +1 -1
  448. package/dist/esm/modules/network/tcp-socket/base-tcp-client.helper.js +2 -2
  449. package/dist/esm/modules/network/tcp-socket/base-tcp-client.helper.js.map +1 -1
  450. package/dist/esm/modules/network/tcp-socket/base-tcp-server.helper.d.ts +2 -3
  451. package/dist/esm/modules/network/tcp-socket/base-tcp-server.helper.d.ts.map +1 -1
  452. package/dist/esm/modules/network/tcp-socket/base-tcp-server.helper.js +5 -5
  453. package/dist/esm/modules/network/tcp-socket/base-tcp-server.helper.js.map +1 -1
  454. package/dist/esm/modules/network/utilities/index.d.ts +3 -0
  455. package/dist/esm/modules/network/utilities/index.d.ts.map +1 -0
  456. package/dist/esm/modules/network/utilities/index.js +3 -0
  457. package/dist/esm/modules/network/utilities/index.js.map +1 -0
  458. package/dist/esm/modules/network/utilities/query-string.d.ts +26 -0
  459. package/dist/esm/modules/network/utilities/query-string.d.ts.map +1 -0
  460. package/dist/esm/modules/network/utilities/query-string.js +44 -0
  461. package/dist/esm/modules/network/utilities/query-string.js.map +1 -0
  462. package/dist/esm/modules/network/utilities/url-safety/common/constants.d.ts +18 -0
  463. package/dist/esm/modules/network/utilities/url-safety/common/constants.d.ts.map +1 -0
  464. package/dist/esm/modules/network/utilities/url-safety/common/constants.js +18 -0
  465. package/dist/esm/modules/network/utilities/url-safety/common/constants.js.map +1 -0
  466. package/dist/esm/modules/network/utilities/url-safety/common/errors.d.ts +31 -0
  467. package/dist/esm/modules/network/utilities/url-safety/common/errors.d.ts.map +1 -0
  468. package/dist/esm/modules/network/utilities/url-safety/common/errors.js +26 -0
  469. package/dist/esm/modules/network/utilities/url-safety/common/errors.js.map +1 -0
  470. package/dist/esm/modules/network/utilities/url-safety/common/index.d.ts +4 -0
  471. package/dist/esm/modules/network/utilities/url-safety/common/index.d.ts.map +1 -0
  472. package/dist/esm/modules/network/utilities/url-safety/common/index.js +4 -0
  473. package/dist/esm/modules/network/utilities/url-safety/common/index.js.map +1 -0
  474. package/dist/esm/modules/network/utilities/url-safety/common/types.d.ts +24 -0
  475. package/dist/esm/modules/network/utilities/url-safety/common/types.d.ts.map +1 -0
  476. package/dist/esm/modules/network/utilities/url-safety/common/types.js +2 -0
  477. package/dist/esm/modules/network/utilities/url-safety/common/types.js.map +1 -0
  478. package/dist/esm/modules/network/utilities/url-safety/index.d.ts +4 -0
  479. package/dist/esm/modules/network/utilities/url-safety/index.d.ts.map +1 -0
  480. package/dist/esm/modules/network/utilities/url-safety/index.js +4 -0
  481. package/dist/esm/modules/network/utilities/url-safety/index.js.map +1 -0
  482. package/dist/esm/modules/network/utilities/url-safety/ingest.d.ts +52 -0
  483. package/dist/esm/modules/network/utilities/url-safety/ingest.d.ts.map +1 -0
  484. package/dist/esm/modules/network/utilities/url-safety/ingest.js +163 -0
  485. package/dist/esm/modules/network/utilities/url-safety/ingest.js.map +1 -0
  486. package/dist/esm/modules/network/utilities/url-safety/policy.d.ts +29 -0
  487. package/dist/esm/modules/network/utilities/url-safety/policy.d.ts.map +1 -0
  488. package/dist/esm/modules/network/utilities/url-safety/policy.js +109 -0
  489. package/dist/esm/modules/network/utilities/url-safety/policy.js.map +1 -0
  490. package/dist/esm/modules/queue/bullmq/helper.d.ts +25 -4
  491. package/dist/esm/modules/queue/bullmq/helper.d.ts.map +1 -1
  492. package/dist/esm/modules/queue/bullmq/helper.js +45 -14
  493. package/dist/esm/modules/queue/bullmq/helper.js.map +1 -1
  494. package/dist/esm/modules/queue/internal/sequential/helper.d.ts.map +1 -1
  495. package/dist/esm/modules/queue/internal/sequential/helper.js +2 -2
  496. package/dist/esm/modules/queue/internal/sequential/helper.js.map +1 -1
  497. package/dist/esm/modules/queue/kafka/base.d.ts +8 -4
  498. package/dist/esm/modules/queue/kafka/base.d.ts.map +1 -1
  499. package/dist/esm/modules/queue/kafka/base.js +5 -1
  500. package/dist/esm/modules/queue/kafka/base.js.map +1 -1
  501. package/dist/esm/modules/queue/kafka/bundler/platformatic-require.plugin.d.ts +1 -1
  502. package/dist/esm/modules/queue/kafka/bundler/platformatic-require.plugin.d.ts.map +1 -1
  503. package/dist/esm/modules/queue/kafka/bundler/platformatic-require.plugin.js +1 -1
  504. package/dist/esm/modules/queue/kafka/bundler/platformatic-require.plugin.js.map +1 -1
  505. package/dist/esm/modules/queue/kafka/common/types/callbacks.d.ts +10 -0
  506. package/dist/esm/modules/queue/kafka/common/types/callbacks.d.ts.map +1 -1
  507. package/dist/esm/modules/queue/kafka/common/types/consumer.d.ts +5 -1
  508. package/dist/esm/modules/queue/kafka/common/types/consumer.d.ts.map +1 -1
  509. package/dist/esm/modules/queue/kafka/consumer.d.ts +64 -28
  510. package/dist/esm/modules/queue/kafka/consumer.d.ts.map +1 -1
  511. package/dist/esm/modules/queue/kafka/consumer.js +57 -23
  512. package/dist/esm/modules/queue/kafka/consumer.js.map +1 -1
  513. package/dist/esm/modules/queue/mqtt/helper.d.ts.map +1 -1
  514. package/dist/esm/modules/queue/mqtt/helper.js +6 -5
  515. package/dist/esm/modules/queue/mqtt/helper.js.map +1 -1
  516. package/dist/esm/modules/redis/base/abstract.helper.d.ts.map +1 -1
  517. package/dist/esm/modules/redis/base/abstract.helper.js +11 -6
  518. package/dist/esm/modules/redis/base/abstract.helper.js.map +1 -1
  519. package/dist/esm/modules/redis/cluster/cluster.helper.d.ts +3 -2
  520. package/dist/esm/modules/redis/cluster/cluster.helper.d.ts.map +1 -1
  521. package/dist/esm/modules/redis/cluster/cluster.helper.js +18 -4
  522. package/dist/esm/modules/redis/cluster/cluster.helper.js.map +1 -1
  523. package/dist/esm/modules/redis/common/constants.d.ts +4 -0
  524. package/dist/esm/modules/redis/common/constants.d.ts.map +1 -1
  525. package/dist/esm/modules/redis/common/constants.js +4 -0
  526. package/dist/esm/modules/redis/common/constants.js.map +1 -1
  527. package/dist/esm/modules/redis/common/types.d.ts +13 -3
  528. package/dist/esm/modules/redis/common/types.d.ts.map +1 -1
  529. package/dist/esm/modules/redis/sentinel/sentinel.helper.d.ts +1 -1
  530. package/dist/esm/modules/redis/sentinel/sentinel.helper.d.ts.map +1 -1
  531. package/dist/esm/modules/redis/sentinel/sentinel.helper.js +3 -2
  532. package/dist/esm/modules/redis/sentinel/sentinel.helper.js.map +1 -1
  533. package/dist/esm/modules/redis/single/single.helper.d.ts +1 -1
  534. package/dist/esm/modules/redis/single/single.helper.d.ts.map +1 -1
  535. package/dist/esm/modules/redis/single/single.helper.js +4 -2
  536. package/dist/esm/modules/redis/single/single.helper.js.map +1 -1
  537. package/dist/esm/modules/secrets/base/abstract.helper.d.ts.map +1 -1
  538. package/dist/esm/modules/secrets/base/abstract.helper.js +2 -1
  539. package/dist/esm/modules/secrets/base/abstract.helper.js.map +1 -1
  540. package/dist/esm/modules/secrets/hashicorp/hashicorp.helper.d.ts.map +1 -1
  541. package/dist/esm/modules/secrets/hashicorp/hashicorp.helper.js +2 -1
  542. package/dist/esm/modules/secrets/hashicorp/hashicorp.helper.js.map +1 -1
  543. package/dist/esm/modules/secrets/system-envs/system-envs.helper.d.ts.map +1 -1
  544. package/dist/esm/modules/secrets/system-envs/system-envs.helper.js +2 -1
  545. package/dist/esm/modules/secrets/system-envs/system-envs.helper.js.map +1 -1
  546. package/dist/esm/modules/socket/socket-io/client/helper.d.ts +2 -1
  547. package/dist/esm/modules/socket/socket-io/client/helper.d.ts.map +1 -1
  548. package/dist/esm/modules/socket/socket-io/client/helper.js +9 -3
  549. package/dist/esm/modules/socket/socket-io/client/helper.js.map +1 -1
  550. package/dist/esm/modules/socket/socket-io/common/types/client.d.ts +2 -0
  551. package/dist/esm/modules/socket/socket-io/common/types/client.d.ts.map +1 -1
  552. package/dist/esm/modules/socket/socket-io/server/helper.d.ts +1 -0
  553. package/dist/esm/modules/socket/socket-io/server/helper.d.ts.map +1 -1
  554. package/dist/esm/modules/socket/socket-io/server/helper.js +17 -27
  555. package/dist/esm/modules/socket/socket-io/server/helper.js.map +1 -1
  556. package/dist/esm/modules/socket/websocket/server/helper.d.ts.map +1 -1
  557. package/dist/esm/modules/socket/websocket/server/helper.js +2 -1
  558. package/dist/esm/modules/socket/websocket/server/helper.js.map +1 -1
  559. package/dist/esm/modules/storage/base.d.ts +98 -49
  560. package/dist/esm/modules/storage/base.d.ts.map +1 -1
  561. package/dist/esm/modules/storage/base.js +202 -91
  562. package/dist/esm/modules/storage/base.js.map +1 -1
  563. package/dist/esm/modules/storage/bun-s3/helper.d.ts +74 -29
  564. package/dist/esm/modules/storage/bun-s3/helper.d.ts.map +1 -1
  565. package/dist/esm/modules/storage/bun-s3/helper.js +322 -56
  566. package/dist/esm/modules/storage/bun-s3/helper.js.map +1 -1
  567. package/dist/esm/modules/storage/bun-s3/utility.d.ts +59 -0
  568. package/dist/esm/modules/storage/bun-s3/utility.d.ts.map +1 -1
  569. package/dist/esm/modules/storage/bun-s3/utility.js +212 -28
  570. package/dist/esm/modules/storage/bun-s3/utility.js.map +1 -1
  571. package/dist/esm/modules/storage/common/constants.d.ts +27 -0
  572. package/dist/esm/modules/storage/common/constants.d.ts.map +1 -0
  573. package/dist/esm/modules/storage/common/constants.js +28 -0
  574. package/dist/esm/modules/storage/common/constants.js.map +1 -0
  575. package/dist/esm/modules/storage/common/errors.d.ts +22 -0
  576. package/dist/esm/modules/storage/common/errors.d.ts.map +1 -0
  577. package/dist/esm/modules/storage/common/errors.js +21 -0
  578. package/dist/esm/modules/storage/common/errors.js.map +1 -0
  579. package/dist/esm/modules/storage/common/index.d.ts +3 -0
  580. package/dist/esm/modules/storage/common/index.d.ts.map +1 -1
  581. package/dist/esm/modules/storage/common/index.js +3 -0
  582. package/dist/esm/modules/storage/common/index.js.map +1 -1
  583. package/dist/esm/modules/storage/common/types.d.ts +118 -38
  584. package/dist/esm/modules/storage/common/types.d.ts.map +1 -1
  585. package/dist/esm/modules/storage/common/utility.d.ts +7 -0
  586. package/dist/esm/modules/storage/common/utility.d.ts.map +1 -0
  587. package/dist/esm/modules/storage/common/utility.js +23 -0
  588. package/dist/esm/modules/storage/common/utility.js.map +1 -0
  589. package/dist/esm/modules/storage/disk/helper.d.ts +26 -28
  590. package/dist/esm/modules/storage/disk/helper.d.ts.map +1 -1
  591. package/dist/esm/modules/storage/disk/helper.js +125 -86
  592. package/dist/esm/modules/storage/disk/helper.js.map +1 -1
  593. package/dist/esm/modules/storage/in-memory/helper.d.ts +10 -5
  594. package/dist/esm/modules/storage/in-memory/helper.d.ts.map +1 -1
  595. package/dist/esm/modules/storage/in-memory/helper.js +17 -10
  596. package/dist/esm/modules/storage/in-memory/helper.js.map +1 -1
  597. package/dist/esm/modules/storage/minio/helper.d.ts +22 -28
  598. package/dist/esm/modules/storage/minio/helper.d.ts.map +1 -1
  599. package/dist/esm/modules/storage/minio/helper.js +87 -33
  600. package/dist/esm/modules/storage/minio/helper.js.map +1 -1
  601. package/dist/esm/modules/temporal/adapters/dayjs.d.ts +21 -0
  602. package/dist/esm/modules/temporal/adapters/dayjs.d.ts.map +1 -0
  603. package/dist/esm/modules/temporal/adapters/dayjs.js +44 -0
  604. package/dist/esm/modules/temporal/adapters/dayjs.js.map +1 -0
  605. package/dist/esm/modules/temporal/adapters/guards.d.ts +4 -0
  606. package/dist/esm/modules/temporal/adapters/guards.d.ts.map +1 -0
  607. package/dist/esm/modules/temporal/adapters/guards.js +10 -0
  608. package/dist/esm/modules/temporal/adapters/guards.js.map +1 -0
  609. package/dist/esm/modules/temporal/adapters/index.d.ts +4 -0
  610. package/dist/esm/modules/temporal/adapters/index.d.ts.map +1 -0
  611. package/dist/esm/modules/temporal/adapters/index.js +4 -0
  612. package/dist/esm/modules/temporal/adapters/index.js.map +1 -0
  613. package/dist/esm/modules/temporal/adapters/luxon.d.ts +13 -0
  614. package/dist/esm/modules/temporal/adapters/luxon.d.ts.map +1 -0
  615. package/dist/esm/modules/temporal/adapters/luxon.js +22 -0
  616. package/dist/esm/modules/temporal/adapters/luxon.js.map +1 -0
  617. package/dist/esm/modules/temporal/adapters/native.d.ts +16 -0
  618. package/dist/esm/modules/temporal/adapters/native.d.ts.map +1 -0
  619. package/dist/esm/modules/temporal/adapters/native.js +34 -0
  620. package/dist/esm/modules/temporal/adapters/native.js.map +1 -0
  621. package/dist/esm/modules/temporal/calendar.d.ts +52 -0
  622. package/dist/esm/modules/temporal/calendar.d.ts.map +1 -0
  623. package/dist/esm/modules/temporal/calendar.js +138 -0
  624. package/dist/esm/modules/temporal/calendar.js.map +1 -0
  625. package/dist/esm/modules/temporal/common/constants.d.ts +20 -0
  626. package/dist/esm/modules/temporal/common/constants.d.ts.map +1 -0
  627. package/dist/esm/modules/temporal/common/constants.js +29 -0
  628. package/dist/esm/modules/temporal/common/constants.js.map +1 -0
  629. package/dist/esm/modules/temporal/common/index.d.ts +3 -0
  630. package/dist/esm/modules/temporal/common/index.d.ts.map +1 -0
  631. package/dist/esm/modules/temporal/common/index.js +3 -0
  632. package/dist/esm/modules/temporal/common/index.js.map +1 -0
  633. package/dist/esm/modules/temporal/common/types.d.ts +69 -0
  634. package/dist/esm/modules/temporal/common/types.d.ts.map +1 -0
  635. package/dist/esm/modules/temporal/common/types.js +2 -0
  636. package/dist/esm/modules/temporal/common/types.js.map +1 -0
  637. package/dist/esm/modules/temporal/helper.d.ts +120 -0
  638. package/dist/esm/modules/temporal/helper.d.ts.map +1 -0
  639. package/dist/esm/modules/temporal/helper.js +322 -0
  640. package/dist/esm/modules/temporal/helper.js.map +1 -0
  641. package/dist/esm/modules/temporal/index.d.ts +4 -0
  642. package/dist/esm/modules/temporal/index.d.ts.map +1 -0
  643. package/dist/esm/modules/temporal/index.js +4 -0
  644. package/dist/esm/modules/temporal/index.js.map +1 -0
  645. package/dist/esm/modules/temporal/pattern.d.ts +24 -0
  646. package/dist/esm/modules/temporal/pattern.d.ts.map +1 -0
  647. package/dist/esm/modules/temporal/pattern.js +129 -0
  648. package/dist/esm/modules/temporal/pattern.js.map +1 -0
  649. package/dist/esm/modules/temporal/tokens.d.ts +65 -0
  650. package/dist/esm/modules/temporal/tokens.d.ts.map +1 -0
  651. package/dist/esm/modules/temporal/tokens.js +102 -0
  652. package/dist/esm/modules/temporal/tokens.js.map +1 -0
  653. package/dist/esm/modules/uid/index.d.ts +1 -0
  654. package/dist/esm/modules/uid/index.d.ts.map +1 -1
  655. package/dist/esm/modules/uid/index.js +1 -0
  656. package/dist/esm/modules/uid/index.js.map +1 -1
  657. package/dist/esm/modules/uid/request-id.d.ts +5 -12
  658. package/dist/esm/modules/uid/request-id.d.ts.map +1 -1
  659. package/dist/esm/modules/uid/request-id.js +7 -44
  660. package/dist/esm/modules/uid/request-id.js.map +1 -1
  661. package/dist/esm/modules/uid/uuid/common/constants.d.ts +32 -0
  662. package/dist/esm/modules/uid/uuid/common/constants.d.ts.map +1 -0
  663. package/dist/esm/modules/uid/uuid/common/constants.js +32 -0
  664. package/dist/esm/modules/uid/uuid/common/constants.js.map +1 -0
  665. package/dist/esm/modules/uid/uuid/common/index.d.ts +3 -0
  666. package/dist/esm/modules/uid/uuid/common/index.d.ts.map +1 -0
  667. package/dist/esm/modules/uid/uuid/common/index.js +5 -0
  668. package/dist/esm/modules/uid/uuid/common/index.js.map +1 -0
  669. package/dist/esm/modules/uid/uuid/common/types.d.ts +6 -0
  670. package/dist/esm/modules/uid/uuid/common/types.d.ts.map +1 -0
  671. package/dist/esm/modules/uid/uuid/common/types.js +2 -0
  672. package/dist/esm/modules/uid/uuid/common/types.js.map +1 -0
  673. package/dist/esm/modules/uid/uuid/helper.d.ts +37 -0
  674. package/dist/esm/modules/uid/uuid/helper.d.ts.map +1 -0
  675. package/dist/esm/modules/uid/uuid/helper.js +45 -0
  676. package/dist/esm/modules/uid/uuid/helper.js.map +1 -0
  677. package/dist/esm/modules/uid/uuid/index.d.ts +6 -0
  678. package/dist/esm/modules/uid/uuid/index.d.ts.map +1 -0
  679. package/dist/esm/modules/uid/uuid/index.js +6 -0
  680. package/dist/esm/modules/uid/uuid/index.js.map +1 -0
  681. package/dist/esm/modules/uid/uuid/sha1.d.ts +19 -0
  682. package/dist/esm/modules/uid/uuid/sha1.d.ts.map +1 -0
  683. package/dist/esm/modules/uid/uuid/sha1.js +101 -0
  684. package/dist/esm/modules/uid/uuid/sha1.js.map +1 -0
  685. package/dist/esm/modules/uid/uuid/v4.d.ts +9 -0
  686. package/dist/esm/modules/uid/uuid/v4.d.ts.map +1 -0
  687. package/dist/esm/modules/uid/uuid/v4.js +50 -0
  688. package/dist/esm/modules/uid/uuid/v4.js.map +1 -0
  689. package/dist/esm/modules/uid/uuid/v5.d.ts +15 -0
  690. package/dist/esm/modules/uid/uuid/v5.d.ts.map +1 -0
  691. package/dist/esm/modules/uid/uuid/v5.js +86 -0
  692. package/dist/esm/modules/uid/uuid/v5.js.map +1 -0
  693. package/dist/esm/modules/uid/uuid/v7.d.ts +11 -0
  694. package/dist/esm/modules/uid/uuid/v7.d.ts.map +1 -0
  695. package/dist/esm/modules/uid/uuid/v7.js +90 -0
  696. package/dist/esm/modules/uid/uuid/v7.js.map +1 -0
  697. package/dist/esm/package.json +6 -0
  698. package/dist/esm/temporal.d.ts +2 -0
  699. package/dist/esm/temporal.d.ts.map +1 -0
  700. package/dist/esm/temporal.js +3 -0
  701. package/dist/esm/temporal.js.map +1 -0
  702. package/dist/esm/utilities/build-info.utility.d.ts +33 -0
  703. package/dist/esm/utilities/build-info.utility.d.ts.map +1 -0
  704. package/dist/esm/utilities/build-info.utility.js +24 -0
  705. package/dist/esm/utilities/build-info.utility.js.map +1 -0
  706. package/dist/esm/utilities/hr-time.utility.d.ts +6 -0
  707. package/dist/esm/utilities/hr-time.utility.d.ts.map +1 -0
  708. package/dist/esm/utilities/hr-time.utility.js +10 -0
  709. package/dist/esm/utilities/hr-time.utility.js.map +1 -0
  710. package/dist/esm/utilities/index.d.ts +3 -1
  711. package/dist/esm/utilities/index.d.ts.map +1 -1
  712. package/dist/esm/utilities/index.js +3 -1
  713. package/dist/esm/utilities/index.js.map +1 -1
  714. package/dist/esm/utilities/module.utility.d.ts +8 -2
  715. package/dist/esm/utilities/module.utility.d.ts.map +1 -1
  716. package/dist/esm/utilities/module.utility.js +25 -6
  717. package/dist/esm/utilities/module.utility.js.map +1 -1
  718. package/dist/esm/utilities/parse.utility.d.ts +29 -0
  719. package/dist/esm/utilities/parse.utility.d.ts.map +1 -1
  720. package/dist/esm/utilities/parse.utility.js +56 -6
  721. package/dist/esm/utilities/parse.utility.js.map +1 -1
  722. package/dist/esm/utilities/project-root.utility.d.ts +17 -0
  723. package/dist/esm/utilities/project-root.utility.d.ts.map +1 -0
  724. package/dist/esm/utilities/project-root.utility.js +19 -0
  725. package/dist/esm/utilities/project-root.utility.js.map +1 -0
  726. package/dist/esm/utilities/request.utility.d.ts +22 -1
  727. package/dist/esm/utilities/request.utility.d.ts.map +1 -1
  728. package/dist/esm/utilities/request.utility.js +42 -2
  729. package/dist/esm/utilities/request.utility.js.map +1 -1
  730. package/dist/esm/utilities/sleep.utility.d.ts +0 -1
  731. package/dist/esm/utilities/sleep.utility.d.ts.map +1 -1
  732. package/dist/esm/utilities/sleep.utility.js +0 -1
  733. package/dist/esm/utilities/sleep.utility.js.map +1 -1
  734. package/dist/esm/uuid.d.ts +2 -0
  735. package/dist/esm/uuid.d.ts.map +1 -0
  736. package/dist/esm/uuid.js +3 -0
  737. package/dist/esm/uuid.js.map +1 -0
  738. package/package.json +35 -19
  739. package/dist/cjs/modules/error/schemas.d.ts +0 -16
  740. package/dist/cjs/modules/error/schemas.d.ts.map +0 -1
  741. package/dist/cjs/modules/error/schemas.js +0 -36
  742. package/dist/cjs/modules/error/schemas.js.map +0 -1
  743. package/dist/cjs/utilities/date.utility.d.ts +0 -19
  744. package/dist/cjs/utilities/date.utility.d.ts.map +0 -1
  745. package/dist/cjs/utilities/date.utility.js +0 -57
  746. package/dist/cjs/utilities/date.utility.js.map +0 -1
  747. package/dist/esm/modules/error/schemas.d.ts +0 -16
  748. package/dist/esm/modules/error/schemas.d.ts.map +0 -1
  749. package/dist/esm/modules/error/schemas.js +0 -33
  750. package/dist/esm/modules/error/schemas.js.map +0 -1
  751. package/dist/esm/utilities/date.utility.d.ts +0 -19
  752. package/dist/esm/utilities/date.utility.d.ts.map +0 -1
  753. package/dist/esm/utilities/date.utility.js +0 -46
  754. package/dist/esm/utilities/date.utility.js.map +0 -1
@@ -1,133 +1,121 @@
1
- import { MimeTypes } from '../../common/index.js';
1
+ import { isEmpty } from '@venizia/ignis-inversion';
2
+ import { ContentTypeTable, MimeTypes } from '../../common/index.js';
2
3
  import { BaseHelper } from '../base.js';
3
4
  import { getError } from '../error/index.js';
4
- import isEmpty from 'lodash/isEmpty';
5
- import path from 'node:path';
5
+ import { executePromiseWithLimit } from '../../utilities/promise.utility.js';
6
+ import { Readable } from 'node:stream';
7
+ import { isNotFoundError, StorageConcurrency, StorageErrors } from './common/index.js';
6
8
  export class BaseStorageHelper extends BaseHelper {
7
- static { this.MIME_MAP = {
8
- '.png': 'image/png',
9
- '.jpg': 'image/jpeg',
10
- '.jpeg': 'image/jpeg',
11
- '.gif': 'image/gif',
12
- '.webp': 'image/webp',
13
- '.svg': 'image/svg+xml',
14
- '.pdf': 'application/pdf',
15
- '.json': 'application/json',
16
- '.txt': 'text/plain',
17
- '.html': 'text/html',
18
- '.css': 'text/css',
19
- '.js': 'text/javascript',
20
- '.mp4': 'video/mp4',
21
- '.webm': 'video/webm',
22
- '.mp3': 'audio/mpeg',
23
- '.wav': 'audio/wav',
24
- '.zip': 'application/zip',
25
- '.csv': 'text/csv',
26
- '.xml': 'application/xml',
27
- }; }
28
9
  constructor(opts) {
29
10
  super(opts);
30
11
  }
31
- getMimeType(filename) {
32
- const ext = path.extname(filename).toLowerCase();
33
- return BaseStorageHelper.MIME_MAP[ext] || 'application/octet-stream';
12
+ getMimeType(opts) {
13
+ return ContentTypeTable.resolve(opts);
34
14
  }
35
- isValidName(name) {
15
+ /** One path segment or file name: no separator, no traversal, no control or shell character. */
16
+ isValidSegment(opts) {
17
+ const name = opts.segment;
36
18
  if (typeof name !== 'string') {
37
- this.logger.for(this.isValidName.name).error('Invalid name provided: %j', name);
19
+ this.logger.for(this.isValidSegment.name).error('Invalid name provided: %j', name);
38
20
  return false;
39
21
  }
40
- if (!name || isEmpty(name)) {
41
- this.logger.for(this.isValidName.name).error('Empty name provided');
22
+ if (!name || isEmpty({ value: name })) {
23
+ this.logger.for(this.isValidSegment.name).error('Empty name provided');
42
24
  return false;
43
25
  }
44
- // Prevent path traversal
45
26
  if (name.includes('..') || name.includes('/') || name.includes('\\')) {
46
27
  this.logger
47
- .for(this.isValidName.name)
28
+ .for(this.isValidSegment.name)
48
29
  .error('Name contains invalid path characters: %s', name);
49
30
  return false;
50
31
  }
51
- // Prevent hidden files (starting with dot)
52
32
  if (name.startsWith('.')) {
53
- this.logger.for(this.isValidName.name).error('Name cannot start with a dot: %s', name);
33
+ this.logger.for(this.isValidSegment.name).error('Name cannot start with a dot: %s', name);
54
34
  return false;
55
35
  }
56
- // Prevent special shell characters
57
36
  const dangerousChars = /[;|&$`<>{}[\]!#]/;
58
37
  if (dangerousChars.test(name)) {
59
- this.logger.for(this.isValidName.name).error('Name contains dangerous characters: %s', name);
38
+ this.logger
39
+ .for(this.isValidSegment.name)
40
+ .error('Name contains dangerous characters: %s', name);
60
41
  return false;
61
42
  }
62
- // Prevent newlines/carriage returns (header injection)
63
43
  if (name.includes('\n') || name.includes('\r') || name.includes('\0')) {
64
44
  this.logger
65
- .for(this.isValidName.name)
45
+ .for(this.isValidSegment.name)
66
46
  .error('Name contains invalid control characters: %s', name);
67
47
  return false;
68
48
  }
69
- // Prevent extremely long names (DoS)
70
49
  if (name.length > 255) {
71
50
  this.logger
72
- .for(this.isValidName.name)
51
+ .for(this.isValidSegment.name)
73
52
  .error('Name is too long (%d characters): %s', name.length, name);
74
53
  return false;
75
54
  }
76
- // Prevent empty or whitespace-only names
77
55
  if (name.trim().length === 0) {
78
56
  this.logger
79
- .for(this.isValidName.name)
57
+ .for(this.isValidSegment.name)
80
58
  .error('Name cannot be empty or whitespace only: "%s"', name);
81
59
  return false;
82
60
  }
83
61
  return true;
84
62
  }
85
63
  static { this.DEFAULT_MAX_FOLDER_DEPTH = 2; }
86
- isValidPath(pathStr, opts) {
87
- const maxDepth = opts?.maxDepth ?? BaseStorageHelper.DEFAULT_MAX_FOLDER_DEPTH;
88
- if (typeof pathStr !== 'string' || !pathStr || isEmpty(pathStr)) {
89
- this.logger.for(this.isValidPath.name).error('Empty or invalid path provided');
64
+ /** A bucket name is one segment; a separator in it would silently address a different bucket. */
65
+ isValidBucketName(opts) {
66
+ return this.isValidSegment({ segment: opts.bucket.name });
67
+ }
68
+ /** A whole object key: every segment valid, and no deeper than `maxDepth` folders. */
69
+ isValidObjectKey(opts) {
70
+ return this.isValidKeyPath({ path: opts.object.key, maxDepth: opts.maxDepth });
71
+ }
72
+ /** The shared rule behind `isValidObjectKey` and the folder check inside `upload`. */
73
+ isValidKeyPath(opts) {
74
+ const { path: pathStr } = opts;
75
+ const maxDepth = opts.maxDepth ?? BaseStorageHelper.DEFAULT_MAX_FOLDER_DEPTH;
76
+ if (typeof pathStr !== 'string' || !pathStr || isEmpty({ value: pathStr })) {
77
+ this.logger.for(this.isValidKeyPath.name).error('Empty or invalid path provided');
90
78
  return false;
91
79
  }
92
- // Trim leading/trailing slashes for normalization
93
80
  const normalized = pathStr.replace(/^\/+|\/+$/g, '');
94
81
  if (!normalized) {
95
- this.logger.for(this.isValidPath.name).error('Path resolved to empty after trimming slashes');
82
+ this.logger
83
+ .for(this.isValidKeyPath.name)
84
+ .error('Path resolved to empty after trimming slashes');
96
85
  return false;
97
86
  }
98
87
  const segments = normalized.split('/');
99
- // Reject empty segments (double slashes like "a//b")
100
88
  if (segments.some(s => s.length === 0)) {
101
89
  this.logger
102
- .for(this.isValidPath.name)
90
+ .for(this.isValidKeyPath.name)
103
91
  .error('Path contains empty segments (double slashes): %s', pathStr);
104
92
  return false;
105
93
  }
106
- // Enforce max depth: segments include folders + filename, so depth = segments.length - 1
94
+ // segments include the filename, so depth is one less.
107
95
  const folderDepth = segments.length - 1;
108
96
  if (folderDepth > maxDepth) {
109
97
  this.logger
110
- .for(this.isValidPath.name)
98
+ .for(this.isValidKeyPath.name)
111
99
  .error('Path exceeds max folder depth (%d): %s (depth: %d)', maxDepth, pathStr, folderDepth);
112
100
  return false;
113
101
  }
114
102
  for (const segment of segments) {
115
- if (!this.isValidName(segment)) {
103
+ if (!this.isValidSegment({ segment })) {
116
104
  this.logger
117
- .for(this.isValidPath.name)
105
+ .for(this.isValidKeyPath.name)
118
106
  .error('Path segment failed validation: %s (in path: %s)', segment, pathStr);
119
107
  return false;
120
108
  }
121
109
  }
122
110
  if (normalized.length > 1024) {
123
111
  this.logger
124
- .for(this.isValidPath.name)
112
+ .for(this.isValidKeyPath.name)
125
113
  .error('Path is too long (%d characters): %s', normalized.length, pathStr);
126
114
  return false;
127
115
  }
128
116
  return true;
129
117
  }
130
- getFileType(opts) {
118
+ getMediaType(opts) {
131
119
  const { mimeType } = opts;
132
120
  if (mimeType?.toLowerCase()?.startsWith(MimeTypes.IMAGE)) {
133
121
  return MimeTypes.IMAGE;
@@ -141,7 +129,7 @@ export class BaseStorageHelper extends BaseHelper {
141
129
  return MimeTypes.UNKNOWN;
142
130
  }
143
131
  normalizeObjectName(opts) {
144
- const { originalName, folderPath } = opts;
132
+ const { originalName, folderPath } = opts.file;
145
133
  const normalizedFileName = originalName.toLowerCase().replace(/ /g, '_');
146
134
  if (!folderPath) {
147
135
  return normalizedFileName;
@@ -149,8 +137,8 @@ export class BaseStorageHelper extends BaseHelper {
149
137
  return `${folderPath.toLowerCase().replace(/ /g, '_')}/${normalizedFileName}`;
150
138
  }
151
139
  normalizeObjectLink(opts) {
152
- const { bucketName, normalizeName } = opts;
153
- const encodedName = normalizeName
140
+ const bucketName = opts.bucket.name;
141
+ const encodedName = opts.object.key
154
142
  .split('/')
155
143
  .map(segment => encodeURIComponent(segment))
156
144
  .join('/');
@@ -165,10 +153,11 @@ export class BaseStorageHelper extends BaseHelper {
165
153
  validateUploadFile(opts) {
166
154
  const { file, maxFolderDepth } = opts;
167
155
  const { originalName, size, folderPath } = file;
168
- if (!this.isValidName(originalName)) {
156
+ if (!this.isValidSegment({ segment: originalName })) {
169
157
  throw getError({ message: '[upload] Invalid original file name' });
170
158
  }
171
- // Honours the CALLER's depth (not the hard default) so a deeper-tree app fails fast here rather than after spooling the whole body; isValidPath measures an OBJECT path (folder + filename, one folder more than a bare folderPath), so folderPath's depth is checked directly instead.
159
+ // Checked against the CALLER's depth, before the body is spooled. `isValidKeyPath` measures an
160
+ // object path (one folder deeper than a bare folderPath), so the depth is checked directly.
172
161
  if (folderPath) {
173
162
  const depthLimit = maxFolderDepth ?? BaseStorageHelper.DEFAULT_MAX_FOLDER_DEPTH;
174
163
  const folderSegments = folderPath.replace(/^\/+|\/+$/g, '').split('/');
@@ -177,11 +166,11 @@ export class BaseStorageHelper extends BaseHelper {
177
166
  message: `[upload] Invalid folder path | depth: ${folderSegments.length} | max: ${depthLimit}`,
178
167
  });
179
168
  }
180
- if (!this.isValidPath(folderPath, { maxDepth: depthLimit })) {
169
+ if (!this.isValidKeyPath({ path: folderPath, maxDepth: depthLimit })) {
181
170
  throw getError({ message: '[upload] Invalid folder path' });
182
171
  }
183
172
  }
184
- // What is invalid is a missing or negative size, not a zero-byte upload - a bare `!size` also rejected a legitimate EMPTY file.
173
+ // Missing or negative is invalid; zero is a legitimate empty file.
185
174
  if (size === undefined || size === null || size < 0) {
186
175
  throw getError({ message: `[upload] Invalid file size | size: ${size}` });
187
176
  }
@@ -191,39 +180,161 @@ export class BaseStorageHelper extends BaseHelper {
191
180
  if (!files || files.length === 0) {
192
181
  return [];
193
182
  }
194
- const isExists = await this.isBucketExists({ name: bucket });
183
+ const isExists = await this.hasBucket({ bucket });
195
184
  if (!isExists) {
196
185
  throw getError({
197
- message: `[upload] Bucket does not exist | name: ${bucket}`,
186
+ message: `[upload] Bucket does not exist | name: ${bucket.name}`,
198
187
  });
199
188
  }
200
189
  this.validateUploadFiles({ files, maxFolderDepth });
201
- const uploadPromises = files.map(async (file) => {
202
- const { originalName, mimetype: mimeType, size, encoding, folderPath } = file;
203
- const t = performance.now();
204
- const normalizeName = normalizeNameFn
205
- ? normalizeNameFn({ originalName, folderPath })
206
- : this.normalizeObjectName({ originalName, folderPath });
207
- // The caller's normalizeNameFn output is what DiskHelper path.join()s under the bucket root - an unvalidated `../../../etc/cron.d/pwn` writes outside it; the original name was validated above, this validates what actually reaches the filesystem.
208
- if (!this.isValidPath(normalizeName, { maxDepth: maxFolderDepth })) {
209
- throw getError({
210
- message: `[upload] Invalid normalized object name | name: ${normalizeName}`,
211
- });
212
- }
213
- const normalizeLink = normalizeLinkFn
214
- ? normalizeLinkFn({ bucketName: bucket, normalizeName })
215
- : this.normalizeObjectLink({ bucketName: bucket, normalizeName });
216
- await this.writeObject({ bucket, normalizeName, file });
217
- this.logger
218
- .for(this.upload.name)
219
- .info('Uploaded: %j | Took: %s (ms)', { normalizeName, normalizeLink, mimeType, encoding, size }, performance.now() - t);
220
- return {
221
- bucketName: bucket,
222
- objectName: normalizeName,
223
- link: normalizeLink,
224
- };
190
+ return this.mapWithConcurrency({
191
+ items: files,
192
+ task: async ({ item: file }) => {
193
+ const { originalName, mimetype: mimeType, size, encoding, folderPath } = file;
194
+ const t = performance.now();
195
+ const naming = { originalName, folderPath };
196
+ const key = normalizeNameFn
197
+ ? normalizeNameFn({ file: naming })
198
+ : this.normalizeObjectName({ file: naming });
199
+ // `normalizeNameFn` output is what reaches the filesystem; the original name was validated
200
+ // above, this validates what a caller's own normalizer produced.
201
+ if (!this.isValidObjectKey({ object: { key }, maxDepth: maxFolderDepth })) {
202
+ throw getError({
203
+ message: `[upload] Invalid normalized object name | name: ${key}`,
204
+ });
205
+ }
206
+ const object = { key };
207
+ const link = normalizeLinkFn
208
+ ? normalizeLinkFn({ bucket, object })
209
+ : this.normalizeObjectLink({ bucket, object });
210
+ await this.writeObject({ bucket, object, file });
211
+ this.logger
212
+ .for(this.upload.name)
213
+ .info('Uploaded: %j | Took: %s (ms)', { key, link, mimeType, encoding, size }, performance.now() - t);
214
+ return {
215
+ bucket: { name: bucket.name },
216
+ object: { key, size, contentType: mimeType },
217
+ link,
218
+ };
219
+ },
220
+ });
221
+ }
222
+ /** Correct anywhere; overridden by a backend whose transport is already a web stream. */
223
+ async getObjectStream(opts) {
224
+ const { bucket, object, range } = opts;
225
+ const source = await this.getObject({ bucket, object });
226
+ if (!range) {
227
+ return Readable.toWeb(source);
228
+ }
229
+ // No native range here: take the window off the front of the full stream. `pull` rather than
230
+ // `start`, so one chunk is read per demand instead of the whole range landing in memory.
231
+ const { start, end } = range;
232
+ const chunks = source[Symbol.asyncIterator]();
233
+ let offset = 0;
234
+ return new ReadableStream({
235
+ async pull(controller) {
236
+ while (true) {
237
+ const next = await chunks.next();
238
+ if (next.done) {
239
+ controller.close();
240
+ return;
241
+ }
242
+ const bytes = next.value;
243
+ const chunkEnd = offset + bytes.byteLength;
244
+ const from = Math.max(start - offset, 0);
245
+ const to = end === undefined ? bytes.byteLength : Math.min(end + 1 - offset, bytes.byteLength);
246
+ const isWanted = chunkEnd > start && from < to;
247
+ if (isWanted) {
248
+ controller.enqueue(bytes.subarray(from, to));
249
+ }
250
+ offset = chunkEnd;
251
+ if (end !== undefined && offset > end) {
252
+ source.destroy();
253
+ controller.close();
254
+ return;
255
+ }
256
+ if (isWanted) {
257
+ return;
258
+ }
259
+ }
260
+ },
261
+ // Without this a client that aborts leaves the backend stream draining to nowhere.
262
+ cancel() {
263
+ source.destroy();
264
+ },
265
+ });
266
+ }
267
+ /**
268
+ * Correct anywhere, and the wrong path to stay on: it buffers, so a backend whose transport takes
269
+ * a stream overrides it. `BunS3Helper` does.
270
+ */
271
+ async writeStream(opts) {
272
+ const { bucket, object, source, contentType } = opts;
273
+ const body = source instanceof Response || source instanceof Request ? source : new Response(source);
274
+ const buffer = Buffer.from(await body.arrayBuffer());
275
+ await this.writeObject({
276
+ bucket,
277
+ object,
278
+ file: {
279
+ originalName: object.key,
280
+ mimetype: contentType ?? this.getMimeType({ filename: object.key }),
281
+ buffer,
282
+ size: buffer.length,
283
+ },
284
+ });
285
+ }
286
+ /** Bounded fan-out on the shared limiter; unbounded exhausts sockets and gets rate limited. */
287
+ async mapWithConcurrency(opts) {
288
+ const { items, task } = opts;
289
+ if (items.length === 0) {
290
+ return [];
291
+ }
292
+ return executePromiseWithLimit({
293
+ limit: Math.max(1, opts.limit ?? StorageConcurrency.DEFAULT_LIMIT),
294
+ tasks: items.map((item, index) => () => task({ item, index })),
295
+ });
296
+ }
297
+ /** A "not there" failure becomes a catalogued 404; every other failure passes through unchanged. */
298
+ asStorageError(opts) {
299
+ const { error, operation, bucket, object } = opts;
300
+ if (!isNotFoundError({ error })) {
301
+ return error;
302
+ }
303
+ return getError({
304
+ error: StorageErrors.OBJECT_NOT_FOUND,
305
+ message: `[${operation}] Object not found | bucket: ${bucket.name} | key: ${object.key}`,
306
+ });
307
+ }
308
+ // No transport for these: throwing beats returning undefined, which reads as a valid empty result.
309
+ async copyObject(_opts) {
310
+ throw getError({
311
+ message: `[${this.constructor.name}.copyObject] Server-side copy is not supported by this helper`,
312
+ });
313
+ }
314
+ async presignPost(_opts) {
315
+ throw getError({
316
+ message: `[${this.constructor.name}.presignPost] Signed POST policies are not supported by this helper`,
317
+ });
318
+ }
319
+ async presignPut(_opts) {
320
+ throw getError({
321
+ message: `[${this.constructor.name}.presignPut] Presigned PUT URLs are not supported by this helper`,
322
+ });
323
+ }
324
+ async presignGet(_opts) {
325
+ throw getError({
326
+ message: `[${this.constructor.name}.presignGet] Presigned GET URLs are not supported by this helper`,
327
+ });
328
+ }
329
+ async getObjectTags(_opts) {
330
+ throw getError({
331
+ message: `[${this.constructor.name}.getObjectTags] Object tagging is not supported by this helper`,
332
+ });
333
+ }
334
+ async replaceObjectTags(_opts) {
335
+ throw getError({
336
+ message: `[${this.constructor.name}.replaceObjectTags] Object tagging is not supported by this helper`,
225
337
  });
226
- return Promise.all(uploadPromises);
227
338
  }
228
339
  }
229
340
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/modules/storage/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/modules/storage/base.ts"],"names":[],"mappings":"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"}
@@ -1,58 +1,103 @@
1
+ import type { IDuration } from '../../../common/index.js';
1
2
  import { Readable } from 'node:stream';
2
3
  import { BaseStorageHelper } from '../base.js';
3
- import type { IBucketInfo, IFileStat, IObjectInfo, IStorageHelperOptions, IUploadFile } from '../common/index.js';
4
+ import type { IBucketInfo, IBucketRef, IFileStat, IListObjectsOptions, IObjectInfo, IObjectLocation, IObjectRef, IPostPolicy, IStorageHelperOptions, IUploadFile } from '../common/index.js';
4
5
  export interface IBunS3HelperOptions extends IStorageHelperOptions {
5
6
  accessKey: string;
6
7
  secretKey: string;
7
- endpoint: string;
8
8
  region?: string;
9
9
  sessionToken?: string;
10
+ /** `default` is the host THIS process talks to; `public` is the host a browser is handed. `host` is inside every SigV4 signature, so a URL signed against an internal name cannot be rewritten later - which is why the two are separate rather than one value patched afterwards. */
11
+ endpoint: {
12
+ default: string;
13
+ public?: string;
14
+ };
15
+ /** `https://<bucket>.<endpoint>/<key>` instead of `<endpoint>/<bucket>/<key>`. AWS requires it; MinIO and R2 do not. */
16
+ virtualHostedStyle?: boolean;
17
+ partSize?: number;
18
+ queueSize?: number;
19
+ /** Retries Bun performs on a failed part before the write fails. */
20
+ retry?: number;
10
21
  }
11
22
  export declare class BunS3Helper extends BaseStorageHelper {
12
23
  private client;
13
24
  private credentials;
25
+ /** Undefined leaves Bun's own defaults in force. */
26
+ private transfer;
14
27
  constructor(options: IBunS3HelperOptions);
15
- isBucketExists(opts: {
16
- name: string;
28
+ /** One bucket's objects, in either addressing style. `audience` picks the host: `server` for a call this process makes, `browser` for a URL it hands out. Virtual-hosted derives the per-bucket host, because the bucket arrives per call. */
29
+ private objectEndpoint;
30
+ /** Per-call overrides, so one client serves every bucket in either addressing style. */
31
+ private presignOptions;
32
+ hasBucket(opts: {
33
+ bucket: IBucketRef;
17
34
  }): Promise<boolean>;
18
35
  getBuckets(): Promise<IBucketInfo[]>;
36
+ /** S3 exposes a creation date only through `ListBuckets`, so one full listing is the cheapest correct answer. */
19
37
  getBucket(opts: {
20
- name: string;
38
+ bucket: IBucketRef;
21
39
  }): Promise<IBucketInfo | null>;
22
40
  createBucket(opts: {
23
- name: string;
41
+ bucket: IBucketRef;
24
42
  }): Promise<IBucketInfo | null>;
25
43
  removeBucket(opts: {
26
- name: string;
44
+ bucket: IBucketRef;
27
45
  }): Promise<boolean>;
46
+ copyObject(opts: {
47
+ bucket: IBucketRef;
48
+ source: IObjectRef;
49
+ destination: IObjectRef;
50
+ }): Promise<void>;
51
+ presignPost(opts: {
52
+ bucket: IBucketRef;
53
+ keyPrefix: string;
54
+ maxBytes: number;
55
+ contentType?: string;
56
+ expiresIn?: IDuration;
57
+ }): Promise<IPostPolicy>;
58
+ presignPut(opts: IObjectLocation & {
59
+ expiresIn?: IDuration;
60
+ tagging?: Record<string, string>;
61
+ contentLength?: number;
62
+ contentType?: string;
63
+ }): Promise<string>;
64
+ presignGet(opts: IObjectLocation & {
65
+ expiresIn?: IDuration;
66
+ responseContentType?: string;
67
+ responseContentDisposition?: string;
68
+ }): Promise<string>;
69
+ getObjectTags(opts: IObjectLocation): Promise<Record<string, string>>;
70
+ replaceObjectTags(opts: IObjectLocation & {
71
+ tags: Record<string, string>;
72
+ }): Promise<void>;
28
73
  protected get defaultLinkPrefix(): string;
29
- protected writeObject(opts: {
30
- bucket: string;
31
- normalizeName: string;
74
+ protected writeObject(opts: IObjectLocation & {
32
75
  file: IUploadFile;
33
76
  }): Promise<void>;
34
- getFile(opts: {
35
- bucket: string;
36
- name: string;
77
+ /** Streams without holding the object in memory. `upload` carries a `Buffer`, so it cannot; this is the path for anything large. */
78
+ writeStream(opts: IObjectLocation & {
79
+ source: ReadableStream<Uint8Array> | Blob | Response | Request;
80
+ contentType?: string;
81
+ maxFolderDepth?: number;
82
+ }): Promise<void>;
83
+ /** `S3File.stream()` is lazy: it reaches the network on first read, so a `try` here never sees a 404 - the failure arrives on the stream. */
84
+ getObject(opts: IObjectLocation & {
37
85
  options?: any;
38
86
  }): Promise<Readable>;
39
- getStat(opts: {
40
- bucket: string;
41
- name: string;
42
- }): Promise<IFileStat>;
43
- removeObject(opts: {
44
- bucket: string;
45
- name: string;
46
- }): Promise<void>;
87
+ /** The conversion-free path a `Response` body wants. `slice` makes it a ranged GET, so only the requested bytes leave S3. */
88
+ getObjectStream(opts: IObjectLocation & {
89
+ range?: {
90
+ start: number;
91
+ end?: number;
92
+ };
93
+ }): Promise<ReadableStream<Uint8Array>>;
94
+ getStat(opts: IObjectLocation): Promise<IFileStat>;
95
+ removeObject(opts: IObjectLocation): Promise<void>;
47
96
  removeObjects(opts: {
48
- bucket: string;
49
- names: string[];
97
+ bucket: IBucketRef;
98
+ objects: IObjectRef[];
50
99
  }): Promise<void>;
51
- listObjects(opts: {
52
- bucket: string;
53
- prefix?: string;
54
- useRecursive?: boolean;
55
- maxKeys?: number;
56
- }): Promise<IObjectInfo[]>;
100
+ /** S3 caps a call at 1000 keys and continues through `nextContinuationToken`. `useRecursive: false` maps to `delimiter: '/'`. */
101
+ listObjects(opts: IListObjectsOptions): Promise<IObjectInfo[]>;
57
102
  }
58
103
  //# sourceMappingURL=helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../../src/modules/storage/bun-s3/helper.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,qBAAqB,EACrB,WAAW,EACZ,MAAM,WAAW,CAAC;AAGnB,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAgBD,qBAAa,WAAY,SAAQ,iBAAiB;IAChD,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,WAAW,CAMjB;gBAEU,OAAO,EAAE,mBAAmB;IAuBlC,cAAc,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAuBxD,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAmCpC,SAAS,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAU9D,YAAY,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IA4BjE,YAAY,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IA4B5D,SAAS,KAAK,iBAAiB,IAAI,MAAM,CAExC;cAEe,WAAW,CAAC,IAAI,EAAE;QAChC,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,WAAW,CAAC;KACnB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOX,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;IAMjF,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAWnE,YAAY,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE,aAAa,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvE,WAAW,CAAC,IAAI,EAAE;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CAY3B"}
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../../src/modules/storage/bun-s3/helper.ts"],"names":[],"mappings":"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"}