@uploadista/core 0.0.2 → 0.0.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 (329) hide show
  1. package/.turbo/turbo-build.log +88 -1
  2. package/README.md +6 -20
  3. package/dist/checksum-C5qE-5eg.js +2 -0
  4. package/dist/checksum-C5qE-5eg.js.map +1 -0
  5. package/dist/checksum-wSBuXX84.cjs +1 -0
  6. package/dist/errors/index.cjs +1 -1
  7. package/dist/errors/index.d.cts +2 -2
  8. package/dist/errors/index.d.ts +3 -3
  9. package/dist/errors/index.js +1 -2
  10. package/dist/flow/index.cjs +1 -1
  11. package/dist/flow/index.d.cts +5 -5
  12. package/dist/flow/index.d.ts +6 -24
  13. package/dist/flow/index.js +1 -24
  14. package/dist/flow-B0mMJM5Y.js +2 -0
  15. package/dist/flow-B0mMJM5Y.js.map +1 -0
  16. package/dist/flow-s5bgJsdb.cjs +1 -0
  17. package/dist/index-0xq1cArb.d.cts +4132 -0
  18. package/dist/index-0xq1cArb.d.cts.map +1 -0
  19. package/dist/index-B46hb7yB.d.cts +36 -0
  20. package/dist/index-B46hb7yB.d.cts.map +1 -0
  21. package/dist/{streams/stream-limiter.d.cts → index-C1mxuUxK.d.ts} +3 -3
  22. package/dist/index-C1mxuUxK.d.ts.map +1 -0
  23. package/dist/index-DMJv8Tvo.d.ts +168 -0
  24. package/dist/index-DMJv8Tvo.d.ts.map +1 -0
  25. package/dist/index-GLPiXqj4.d.cts +168 -0
  26. package/dist/index-GLPiXqj4.d.cts.map +1 -0
  27. package/dist/index-YegzC0p1.d.ts +3952 -0
  28. package/dist/index-YegzC0p1.d.ts.map +1 -0
  29. package/dist/index.cjs +1 -1
  30. package/dist/index.d.cts +5 -5
  31. package/dist/index.d.ts +6 -5
  32. package/dist/index.js +1 -5
  33. package/dist/stream-limiter-CTuiXkcq.js +2 -0
  34. package/dist/{stream-limiter-CoWKv39w.js.map → stream-limiter-CTuiXkcq.js.map} +1 -1
  35. package/dist/stream-limiter-DYGG4t9f.cjs +1 -0
  36. package/dist/streams/index.cjs +1 -0
  37. package/dist/streams/index.d.cts +3 -0
  38. package/dist/streams/index.d.ts +3 -0
  39. package/dist/streams/index.js +1 -0
  40. package/dist/streams-BiD_pOPH.cjs +0 -0
  41. package/dist/streams-Bs3GDNKJ.js +1 -0
  42. package/dist/types/index.cjs +1 -1
  43. package/dist/types/index.d.cts +5 -5
  44. package/dist/types/index.d.ts +6 -10
  45. package/dist/types/index.js +1 -9
  46. package/dist/types-Dj9g8ocl.cjs +1 -0
  47. package/dist/types-m26wrG-Z.js +2 -0
  48. package/dist/types-m26wrG-Z.js.map +1 -0
  49. package/dist/upload/index.cjs +1 -1
  50. package/dist/upload/index.d.cts +5 -5
  51. package/dist/upload/index.d.ts +6 -4
  52. package/dist/upload/index.js +1 -3
  53. package/dist/upload-BzU7ifyH.js +2 -0
  54. package/dist/upload-BzU7ifyH.js.map +1 -0
  55. package/dist/upload-DvLp6TXO.cjs +1 -0
  56. package/dist/uploadista-error-CAtkQiAv.d.cts +221 -0
  57. package/dist/uploadista-error-CAtkQiAv.d.cts.map +1 -0
  58. package/dist/{uploadista-error-BVsVxqvz.js → uploadista-error-CjfcFnVa.js} +9 -2
  59. package/dist/uploadista-error-CjfcFnVa.js.map +1 -0
  60. package/dist/uploadista-error-D9SONF9K.d.ts +221 -0
  61. package/dist/uploadista-error-D9SONF9K.d.ts.map +1 -0
  62. package/dist/{uploadista-error-BB-Wdiz9.cjs → uploadista-error-DdTP-Rjx.cjs} +9 -2
  63. package/dist/utils/index.cjs +1 -0
  64. package/dist/utils/index.d.cts +3 -0
  65. package/dist/utils/index.d.ts +3 -0
  66. package/dist/utils/index.js +1 -0
  67. package/dist/utils-BILytQlb.js +2 -0
  68. package/dist/utils-BILytQlb.js.map +1 -0
  69. package/dist/utils-BLsIUd8c.cjs +1 -0
  70. package/package.json +12 -16
  71. package/src/index.ts +2 -0
  72. package/src/streams/index.ts +1 -0
  73. package/src/utils/index.ts +5 -0
  74. package/tsdown.config.ts +2 -10
  75. package/dist/chunk-CUT6urMc.cjs +0 -1
  76. package/dist/debounce-C2SeqcxD.js +0 -2
  77. package/dist/debounce-C2SeqcxD.js.map +0 -1
  78. package/dist/debounce-LZK7yS7Z.cjs +0 -1
  79. package/dist/errors/index.d.ts.map +0 -1
  80. package/dist/errors/uploadista-error.d.ts +0 -209
  81. package/dist/errors/uploadista-error.d.ts.map +0 -1
  82. package/dist/errors/uploadista-error.js +0 -322
  83. package/dist/flow/edge.d.ts +0 -47
  84. package/dist/flow/edge.d.ts.map +0 -1
  85. package/dist/flow/edge.js +0 -40
  86. package/dist/flow/event.d.ts +0 -206
  87. package/dist/flow/event.d.ts.map +0 -1
  88. package/dist/flow/event.js +0 -53
  89. package/dist/flow/flow-server.d.ts +0 -223
  90. package/dist/flow/flow-server.d.ts.map +0 -1
  91. package/dist/flow/flow-server.js +0 -614
  92. package/dist/flow/flow.d.ts +0 -238
  93. package/dist/flow/flow.d.ts.map +0 -1
  94. package/dist/flow/flow.js +0 -629
  95. package/dist/flow/index.d.ts.map +0 -1
  96. package/dist/flow/node.d.ts +0 -136
  97. package/dist/flow/node.d.ts.map +0 -1
  98. package/dist/flow/node.js +0 -153
  99. package/dist/flow/nodes/index.d.ts +0 -8
  100. package/dist/flow/nodes/index.d.ts.map +0 -1
  101. package/dist/flow/nodes/index.js +0 -7
  102. package/dist/flow/nodes/input-node.d.ts +0 -78
  103. package/dist/flow/nodes/input-node.d.ts.map +0 -1
  104. package/dist/flow/nodes/input-node.js +0 -233
  105. package/dist/flow/nodes/storage-node.d.ts +0 -67
  106. package/dist/flow/nodes/storage-node.d.ts.map +0 -1
  107. package/dist/flow/nodes/storage-node.js +0 -94
  108. package/dist/flow/nodes/streaming-input-node.d.ts +0 -69
  109. package/dist/flow/nodes/streaming-input-node.d.ts.map +0 -1
  110. package/dist/flow/nodes/streaming-input-node.js +0 -156
  111. package/dist/flow/nodes/transform-node.d.ts +0 -85
  112. package/dist/flow/nodes/transform-node.d.ts.map +0 -1
  113. package/dist/flow/nodes/transform-node.js +0 -107
  114. package/dist/flow/parallel-scheduler.d.ts +0 -175
  115. package/dist/flow/parallel-scheduler.d.ts.map +0 -1
  116. package/dist/flow/parallel-scheduler.js +0 -193
  117. package/dist/flow/plugins/credential-provider.d.ts +0 -47
  118. package/dist/flow/plugins/credential-provider.d.ts.map +0 -1
  119. package/dist/flow/plugins/credential-provider.js +0 -24
  120. package/dist/flow/plugins/image-ai-plugin.d.ts +0 -61
  121. package/dist/flow/plugins/image-ai-plugin.d.ts.map +0 -1
  122. package/dist/flow/plugins/image-ai-plugin.js +0 -21
  123. package/dist/flow/plugins/image-plugin.d.ts +0 -52
  124. package/dist/flow/plugins/image-plugin.d.ts.map +0 -1
  125. package/dist/flow/plugins/image-plugin.js +0 -22
  126. package/dist/flow/plugins/types/describe-image-node.d.ts +0 -16
  127. package/dist/flow/plugins/types/describe-image-node.d.ts.map +0 -1
  128. package/dist/flow/plugins/types/describe-image-node.js +0 -9
  129. package/dist/flow/plugins/types/index.d.ts +0 -9
  130. package/dist/flow/plugins/types/index.d.ts.map +0 -1
  131. package/dist/flow/plugins/types/index.js +0 -8
  132. package/dist/flow/plugins/types/optimize-node.d.ts +0 -20
  133. package/dist/flow/plugins/types/optimize-node.d.ts.map +0 -1
  134. package/dist/flow/plugins/types/optimize-node.js +0 -11
  135. package/dist/flow/plugins/types/remove-background-node.d.ts +0 -16
  136. package/dist/flow/plugins/types/remove-background-node.d.ts.map +0 -1
  137. package/dist/flow/plugins/types/remove-background-node.js +0 -9
  138. package/dist/flow/plugins/types/resize-node.d.ts +0 -21
  139. package/dist/flow/plugins/types/resize-node.d.ts.map +0 -1
  140. package/dist/flow/plugins/types/resize-node.js +0 -16
  141. package/dist/flow/plugins/zip-plugin.d.ts +0 -62
  142. package/dist/flow/plugins/zip-plugin.d.ts.map +0 -1
  143. package/dist/flow/plugins/zip-plugin.js +0 -21
  144. package/dist/flow/typed-flow.d.ts +0 -90
  145. package/dist/flow/typed-flow.d.ts.map +0 -1
  146. package/dist/flow/typed-flow.js +0 -59
  147. package/dist/flow/types/flow-file.d.ts +0 -45
  148. package/dist/flow/types/flow-file.d.ts.map +0 -1
  149. package/dist/flow/types/flow-file.js +0 -27
  150. package/dist/flow/types/flow-job.d.ts +0 -118
  151. package/dist/flow/types/flow-job.d.ts.map +0 -1
  152. package/dist/flow/types/flow-job.js +0 -11
  153. package/dist/flow/types/flow-types.d.ts +0 -321
  154. package/dist/flow/types/flow-types.d.ts.map +0 -1
  155. package/dist/flow/types/flow-types.js +0 -52
  156. package/dist/flow/types/index.d.ts +0 -4
  157. package/dist/flow/types/index.d.ts.map +0 -1
  158. package/dist/flow/types/index.js +0 -3
  159. package/dist/flow/types/run-args.d.ts +0 -38
  160. package/dist/flow/types/run-args.d.ts.map +0 -1
  161. package/dist/flow/types/run-args.js +0 -30
  162. package/dist/flow/types/type-validator.d.ts +0 -26
  163. package/dist/flow/types/type-validator.d.ts.map +0 -1
  164. package/dist/flow/types/type-validator.js +0 -134
  165. package/dist/flow/utils/resolve-upload-metadata.d.ts +0 -11
  166. package/dist/flow/utils/resolve-upload-metadata.d.ts.map +0 -1
  167. package/dist/flow/utils/resolve-upload-metadata.js +0 -28
  168. package/dist/flow-2zXnEiWL.cjs +0 -1
  169. package/dist/flow-CRaKy7Vj.js +0 -2
  170. package/dist/flow-CRaKy7Vj.js.map +0 -1
  171. package/dist/generate-id-Dm-Vboxq.d.ts +0 -34
  172. package/dist/generate-id-Dm-Vboxq.d.ts.map +0 -1
  173. package/dist/generate-id-LjJRLD6N.d.cts +0 -34
  174. package/dist/generate-id-LjJRLD6N.d.cts.map +0 -1
  175. package/dist/generate-id-xHp_Z7Cl.cjs +0 -1
  176. package/dist/generate-id-yohS1ZDk.js +0 -2
  177. package/dist/generate-id-yohS1ZDk.js.map +0 -1
  178. package/dist/index-BO8GZlbD.d.cts +0 -1040
  179. package/dist/index-BO8GZlbD.d.cts.map +0 -1
  180. package/dist/index-D-CoVpkZ.d.ts +0 -1004
  181. package/dist/index-D-CoVpkZ.d.ts.map +0 -1
  182. package/dist/index.d.ts.map +0 -1
  183. package/dist/logger/logger.cjs +0 -1
  184. package/dist/logger/logger.d.cts +0 -8
  185. package/dist/logger/logger.d.cts.map +0 -1
  186. package/dist/logger/logger.d.ts +0 -5
  187. package/dist/logger/logger.d.ts.map +0 -1
  188. package/dist/logger/logger.js +0 -10
  189. package/dist/logger/logger.js.map +0 -1
  190. package/dist/semaphore-0ZwjVpyF.js +0 -2
  191. package/dist/semaphore-0ZwjVpyF.js.map +0 -1
  192. package/dist/semaphore-BHprIjFI.d.cts +0 -37
  193. package/dist/semaphore-BHprIjFI.d.cts.map +0 -1
  194. package/dist/semaphore-DThupBkc.d.ts +0 -37
  195. package/dist/semaphore-DThupBkc.d.ts.map +0 -1
  196. package/dist/semaphore-DVrONiAV.cjs +0 -1
  197. package/dist/stream-limiter-CoWKv39w.js +0 -2
  198. package/dist/stream-limiter-JgOwmkMa.cjs +0 -1
  199. package/dist/streams/multi-stream.cjs +0 -1
  200. package/dist/streams/multi-stream.d.cts +0 -91
  201. package/dist/streams/multi-stream.d.cts.map +0 -1
  202. package/dist/streams/multi-stream.d.ts +0 -86
  203. package/dist/streams/multi-stream.d.ts.map +0 -1
  204. package/dist/streams/multi-stream.js +0 -149
  205. package/dist/streams/multi-stream.js.map +0 -1
  206. package/dist/streams/stream-limiter.cjs +0 -1
  207. package/dist/streams/stream-limiter.d.cts.map +0 -1
  208. package/dist/streams/stream-limiter.d.ts +0 -27
  209. package/dist/streams/stream-limiter.d.ts.map +0 -1
  210. package/dist/streams/stream-limiter.js +0 -49
  211. package/dist/streams/stream-splitter.cjs +0 -1
  212. package/dist/streams/stream-splitter.d.cts +0 -68
  213. package/dist/streams/stream-splitter.d.cts.map +0 -1
  214. package/dist/streams/stream-splitter.d.ts +0 -51
  215. package/dist/streams/stream-splitter.d.ts.map +0 -1
  216. package/dist/streams/stream-splitter.js +0 -175
  217. package/dist/streams/stream-splitter.js.map +0 -1
  218. package/dist/types/data-store-registry.d.ts +0 -13
  219. package/dist/types/data-store-registry.d.ts.map +0 -1
  220. package/dist/types/data-store-registry.js +0 -4
  221. package/dist/types/data-store.d.ts +0 -316
  222. package/dist/types/data-store.d.ts.map +0 -1
  223. package/dist/types/data-store.js +0 -157
  224. package/dist/types/event-broadcaster.d.ts +0 -28
  225. package/dist/types/event-broadcaster.d.ts.map +0 -1
  226. package/dist/types/event-broadcaster.js +0 -6
  227. package/dist/types/event-emitter.d.ts +0 -378
  228. package/dist/types/event-emitter.d.ts.map +0 -1
  229. package/dist/types/event-emitter.js +0 -223
  230. package/dist/types/index.d.ts.map +0 -1
  231. package/dist/types/input-file.d.ts +0 -104
  232. package/dist/types/input-file.d.ts.map +0 -1
  233. package/dist/types/input-file.js +0 -27
  234. package/dist/types/kv-store.d.ts +0 -281
  235. package/dist/types/kv-store.d.ts.map +0 -1
  236. package/dist/types/kv-store.js +0 -234
  237. package/dist/types/middleware.d.ts +0 -17
  238. package/dist/types/middleware.d.ts.map +0 -1
  239. package/dist/types/middleware.js +0 -21
  240. package/dist/types/upload-event.d.ts +0 -105
  241. package/dist/types/upload-event.d.ts.map +0 -1
  242. package/dist/types/upload-event.js +0 -71
  243. package/dist/types/upload-file.d.ts +0 -136
  244. package/dist/types/upload-file.d.ts.map +0 -1
  245. package/dist/types/upload-file.js +0 -34
  246. package/dist/types/websocket.d.ts +0 -144
  247. package/dist/types/websocket.d.ts.map +0 -1
  248. package/dist/types/websocket.js +0 -40
  249. package/dist/types-BT-cvi7T.cjs +0 -1
  250. package/dist/types-DhU2j-XF.js +0 -2
  251. package/dist/types-DhU2j-XF.js.map +0 -1
  252. package/dist/upload/convert-to-stream.d.ts +0 -38
  253. package/dist/upload/convert-to-stream.d.ts.map +0 -1
  254. package/dist/upload/convert-to-stream.js +0 -43
  255. package/dist/upload/convert-upload-to-flow-file.d.ts +0 -14
  256. package/dist/upload/convert-upload-to-flow-file.d.ts.map +0 -1
  257. package/dist/upload/convert-upload-to-flow-file.js +0 -21
  258. package/dist/upload/create-upload.d.ts +0 -68
  259. package/dist/upload/create-upload.d.ts.map +0 -1
  260. package/dist/upload/create-upload.js +0 -157
  261. package/dist/upload/index.d.ts.map +0 -1
  262. package/dist/upload/mime.d.ts +0 -24
  263. package/dist/upload/mime.d.ts.map +0 -1
  264. package/dist/upload/mime.js +0 -351
  265. package/dist/upload/upload-chunk.d.ts +0 -58
  266. package/dist/upload/upload-chunk.d.ts.map +0 -1
  267. package/dist/upload/upload-chunk.js +0 -277
  268. package/dist/upload/upload-server.d.ts +0 -221
  269. package/dist/upload/upload-server.d.ts.map +0 -1
  270. package/dist/upload/upload-server.js +0 -181
  271. package/dist/upload/upload-strategy-negotiator.d.ts +0 -148
  272. package/dist/upload/upload-strategy-negotiator.d.ts.map +0 -1
  273. package/dist/upload/upload-strategy-negotiator.js +0 -217
  274. package/dist/upload/upload-url.d.ts +0 -68
  275. package/dist/upload/upload-url.d.ts.map +0 -1
  276. package/dist/upload/upload-url.js +0 -142
  277. package/dist/upload/write-to-store.d.ts +0 -77
  278. package/dist/upload/write-to-store.d.ts.map +0 -1
  279. package/dist/upload/write-to-store.js +0 -147
  280. package/dist/upload-DLuICjpP.cjs +0 -1
  281. package/dist/upload-DaXO34dE.js +0 -2
  282. package/dist/upload-DaXO34dE.js.map +0 -1
  283. package/dist/uploadista-error-BVsVxqvz.js.map +0 -1
  284. package/dist/uploadista-error-CwxYs4EB.d.ts +0 -52
  285. package/dist/uploadista-error-CwxYs4EB.d.ts.map +0 -1
  286. package/dist/uploadista-error-kKlhLRhY.d.cts +0 -52
  287. package/dist/uploadista-error-kKlhLRhY.d.cts.map +0 -1
  288. package/dist/utils/checksum.d.ts +0 -22
  289. package/dist/utils/checksum.d.ts.map +0 -1
  290. package/dist/utils/checksum.js +0 -49
  291. package/dist/utils/debounce.cjs +0 -1
  292. package/dist/utils/debounce.d.cts +0 -38
  293. package/dist/utils/debounce.d.cts.map +0 -1
  294. package/dist/utils/debounce.d.ts +0 -36
  295. package/dist/utils/debounce.d.ts.map +0 -1
  296. package/dist/utils/debounce.js +0 -73
  297. package/dist/utils/generate-id.cjs +0 -1
  298. package/dist/utils/generate-id.d.cts +0 -2
  299. package/dist/utils/generate-id.d.ts +0 -32
  300. package/dist/utils/generate-id.d.ts.map +0 -1
  301. package/dist/utils/generate-id.js +0 -23
  302. package/dist/utils/md5.cjs +0 -1
  303. package/dist/utils/md5.d.cts +0 -73
  304. package/dist/utils/md5.d.cts.map +0 -1
  305. package/dist/utils/md5.d.ts +0 -71
  306. package/dist/utils/md5.d.ts.map +0 -1
  307. package/dist/utils/md5.js +0 -417
  308. package/dist/utils/md5.js.map +0 -1
  309. package/dist/utils/once.cjs +0 -1
  310. package/dist/utils/once.d.cts +0 -25
  311. package/dist/utils/once.d.cts.map +0 -1
  312. package/dist/utils/once.d.ts +0 -21
  313. package/dist/utils/once.d.ts.map +0 -1
  314. package/dist/utils/once.js +0 -54
  315. package/dist/utils/once.js.map +0 -1
  316. package/dist/utils/semaphore.cjs +0 -1
  317. package/dist/utils/semaphore.d.cts +0 -3
  318. package/dist/utils/semaphore.d.ts +0 -78
  319. package/dist/utils/semaphore.d.ts.map +0 -1
  320. package/dist/utils/semaphore.js +0 -134
  321. package/dist/utils/throttle.cjs +0 -1
  322. package/dist/utils/throttle.d.cts +0 -24
  323. package/dist/utils/throttle.d.cts.map +0 -1
  324. package/dist/utils/throttle.d.ts +0 -18
  325. package/dist/utils/throttle.d.ts.map +0 -1
  326. package/dist/utils/throttle.js +0 -20
  327. package/dist/utils/throttle.js.map +0 -1
  328. package/src/logger/logger.ts +0 -14
  329. /package/dist/{errors-CRm1FHHT.cjs → errors-D-K-vxsP.cjs} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"once.js","names":["value: Return | undefined","cached: A | undefined"],"sources":["../../src/utils/once.ts"],"sourcesContent":["import { Effect } from \"effect\";\nimport { UploadistaError } from \"../errors/uploadista-error\";\n\n// only call a function once\nexport function once<T, A extends unknown[], Return>(\n fn: (this: T, ...args: A) => Return,\n) {\n let called = false;\n let value: Return | undefined;\n const f = function (this: T, ...args: A): Return {\n if (called) {\n if (value) {\n return value;\n }\n throw new Error(\"Function called more than once\");\n }\n called = true;\n value = fn.apply(this, args);\n return value;\n };\n return f;\n}\n\n/**\n * Effect-based once utilities\n */\nexport const OnceEffect = {\n /**\n * Creates an Effect-based once function that only executes once\n * @param effect - The effect to execute only once\n * @returns Effect that caches the result after first execution\n */\n make: <A, E, R>(\n effect: Effect.Effect<A, E, R>,\n ): Effect.Effect<A, E | UploadistaError, R> => {\n let cached: A | undefined;\n let called = false;\n\n return Effect.gen(function* () {\n if (called) {\n if (cached !== undefined) {\n return cached;\n }\n yield* new UploadistaError({\n code: \"UNKNOWN_ERROR\",\n status: 500,\n body: \"Effect called more than once with undefined result\",\n }).toEffect();\n }\n\n called = true;\n cached = yield* effect;\n return cached;\n });\n },\n\n /**\n * Creates a legacy once function wrapper\n * @param fn - Function to wrap\n * @returns Once-wrapped function\n */\n legacy: once,\n};\n"],"mappings":"kGAIA,SAAgB,EACd,EACA,CACA,IAAI,EAAS,GACTA,EAYJ,OAXU,SAAmB,GAAG,EAAiB,CAC/C,GAAI,EAAQ,CACV,GAAI,EACF,OAAO,EAET,MAAU,MAAM,iCAAiC,CAInD,MAFA,GAAS,GACT,EAAQ,EAAG,MAAM,KAAM,EAAK,CACrB,GAQX,MAAa,EAAa,CAMxB,KACE,GAC6C,CAC7C,IAAIC,EACA,EAAS,GAEb,OAAO,EAAO,IAAI,WAAa,CAC7B,GAAI,EAAQ,CACV,GAAI,IAAW,IAAA,GACb,OAAO,EAET,MAAO,IAAI,EAAgB,CACzB,KAAM,gBACN,OAAQ,IACR,KAAM,qDACP,CAAC,CAAC,UAAU,CAKf,MAFA,GAAS,GACT,EAAS,MAAO,EACT,GACP,EAQJ,OAAQ,EACT"}
@@ -1 +0,0 @@
1
- const e=require(`../semaphore-DVrONiAV.cjs`);exports.SemaphoreEffect=e.SemaphoreEffect,exports.permit=e.permit,exports.semaphore=e.semaphore;
@@ -1,3 +0,0 @@
1
- import "../uploadista-error-kKlhLRhY.cjs";
2
- import { Permit, Semaphore, SemaphoreEffect, permit, semaphore } from "../semaphore-BHprIjFI.cjs";
3
- export { Permit, Semaphore, SemaphoreEffect, permit, semaphore };
@@ -1,78 +0,0 @@
1
- import { Effect, type Scope } from "effect";
2
- import type { UploadistaError } from "../errors/uploadista-error";
3
- type ReleaseCallback = () => Promise<void>;
4
- /**
5
- * Creates a permit that must be explicitly released to free up a semaphore slot.
6
- *
7
- * Permits are used internally by semaphores to track resource acquisition and release.
8
- * Each permit represents one available slot in the semaphore's concurrency limit.
9
- *
10
- * @param onRelease - Callback function to execute when the permit is released
11
- * @returns A permit object with a release method
12
- * @internal
13
- */
14
- export declare function permit(onRelease: ReleaseCallback): {
15
- release: () => Promise<void>;
16
- };
17
- export type Permit = ReturnType<typeof permit>;
18
- /**
19
- * Creates a semaphore for controlling concurrent access to resources.
20
- *
21
- * A semaphore limits the number of concurrent operations that can access a shared
22
- * resource. This is useful for:
23
- * - Limiting parallel file uploads
24
- * - Controlling database connection pool size
25
- * - Throttling API requests
26
- * - Managing concurrent flow node execution
27
- *
28
- * When all permits are in use, new acquire() calls will wait until a permit
29
- * becomes available.
30
- *
31
- * @param count - Maximum number of concurrent operations allowed
32
- * @returns A semaphore object with an acquire method
33
- *
34
- * @example
35
- * ```typescript
36
- * const uploadSemaphore = semaphore(3); // Max 3 concurrent uploads
37
- *
38
- * async function uploadFile(file: File) {
39
- * const permit = await uploadSemaphore.acquire();
40
- * try {
41
- * // Upload file (max 3 concurrent)
42
- * await uploadToServer(file);
43
- * } finally {
44
- * await permit.release();
45
- * }
46
- * }
47
- *
48
- * // Process files with concurrency limit
49
- * await Promise.all(files.map(uploadFile));
50
- * ```
51
- */
52
- export declare function semaphore(count: number): {
53
- acquire: () => Promise<Permit>;
54
- };
55
- export type Semaphore = ReturnType<typeof semaphore>;
56
- /**
57
- * Effect-based semaphore utilities
58
- */
59
- export declare const SemaphoreEffect: {
60
- /**
61
- * Creates an Effect-based semaphore with resource management
62
- * @param count - Number of permits available
63
- * @returns Effect semaphore with automatic resource cleanup
64
- */
65
- make: (count: number) => Effect.Effect<{
66
- acquire: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E | UploadistaError, R>;
67
- }, never, Scope.Scope>;
68
- /**
69
- * Creates a legacy semaphore wrapper
70
- * @param count - Number of permits
71
- * @returns Legacy semaphore instance
72
- */
73
- legacy: (count: number) => {
74
- acquire: () => Promise<Permit>;
75
- };
76
- };
77
- export {};
78
- //# sourceMappingURL=semaphore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"semaphore.d.ts","sourceRoot":"","sources":["../../src/utils/semaphore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE,KAAK,eAAe,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;AAE3C;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAAC,SAAS,EAAE,eAAe;;EAahD;AAED,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;AAO/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM;mBAIjB,OAAO,CAAC,MAAM,CAAC;EAgCpC;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,eAAe;IAC1B;;;;OAIG;kBAEM,MAAM,KACZ,MAAM,CAAC,MAAM,CACd;QACE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACf,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,CAAC,CAAC;KAC/C,EACD,KAAK,EACL,KAAK,CAAC,KAAK,CACZ;IAyCD;;;;OAIG;oBACa,MAAM;uBArGF,OAAO,CAAC,MAAM,CAAC;;CAsGpC,CAAC"}
@@ -1,134 +0,0 @@
1
- import { Effect } from "effect";
2
- /**
3
- * Creates a permit that must be explicitly released to free up a semaphore slot.
4
- *
5
- * Permits are used internally by semaphores to track resource acquisition and release.
6
- * Each permit represents one available slot in the semaphore's concurrency limit.
7
- *
8
- * @param onRelease - Callback function to execute when the permit is released
9
- * @returns A permit object with a release method
10
- * @internal
11
- */
12
- export function permit(onRelease) {
13
- let isReleased = false;
14
- async function release() {
15
- if (!isReleased) {
16
- isReleased = true;
17
- await onRelease();
18
- }
19
- }
20
- return {
21
- release,
22
- };
23
- }
24
- /**
25
- * Creates a semaphore for controlling concurrent access to resources.
26
- *
27
- * A semaphore limits the number of concurrent operations that can access a shared
28
- * resource. This is useful for:
29
- * - Limiting parallel file uploads
30
- * - Controlling database connection pool size
31
- * - Throttling API requests
32
- * - Managing concurrent flow node execution
33
- *
34
- * When all permits are in use, new acquire() calls will wait until a permit
35
- * becomes available.
36
- *
37
- * @param count - Maximum number of concurrent operations allowed
38
- * @returns A semaphore object with an acquire method
39
- *
40
- * @example
41
- * ```typescript
42
- * const uploadSemaphore = semaphore(3); // Max 3 concurrent uploads
43
- *
44
- * async function uploadFile(file: File) {
45
- * const permit = await uploadSemaphore.acquire();
46
- * try {
47
- * // Upload file (max 3 concurrent)
48
- * await uploadToServer(file);
49
- * } finally {
50
- * await permit.release();
51
- * }
52
- * }
53
- *
54
- * // Process files with concurrency limit
55
- * await Promise.all(files.map(uploadFile));
56
- * ```
57
- */
58
- export function semaphore(count) {
59
- let availablePermits = count;
60
- const deferreds = [];
61
- function acquire() {
62
- if (availablePermits > 0) {
63
- return Promise.resolve(createPermit());
64
- }
65
- const deferred = {};
66
- deferred.promise = new Promise((resolve) => {
67
- deferred.resolve = resolve;
68
- });
69
- deferreds.push(deferred);
70
- return deferred.promise;
71
- }
72
- function createPermit() {
73
- availablePermits--;
74
- return permit(async () => {
75
- availablePermits++;
76
- if (deferreds.length > 0) {
77
- const deferred = deferreds.shift();
78
- if (deferred) {
79
- deferred.resolve?.(createPermit());
80
- await deferred.promise;
81
- }
82
- }
83
- });
84
- }
85
- return {
86
- acquire,
87
- };
88
- }
89
- /**
90
- * Effect-based semaphore utilities
91
- */
92
- export const SemaphoreEffect = {
93
- /**
94
- * Creates an Effect-based semaphore with resource management
95
- * @param count - Number of permits available
96
- * @returns Effect semaphore with automatic resource cleanup
97
- */
98
- make: (count) => Effect.acquireRelease(Effect.sync(() => {
99
- let availablePermits = count;
100
- const queue = [];
101
- const acquire = (effect) => Effect.gen(function* () {
102
- // Wait for a permit
103
- yield* Effect.async((resume) => {
104
- if (availablePermits > 0) {
105
- availablePermits--;
106
- resume(Effect.void);
107
- }
108
- else {
109
- queue.push((releasePermit) => {
110
- availablePermits--;
111
- resume(Effect.void);
112
- });
113
- }
114
- });
115
- // Execute the effect with cleanup
116
- return yield* Effect.ensuring(effect, Effect.sync(() => {
117
- availablePermits++;
118
- if (queue.length > 0) {
119
- const nextWaiting = queue.shift();
120
- if (nextWaiting) {
121
- nextWaiting(() => { });
122
- }
123
- }
124
- }));
125
- });
126
- return { acquire };
127
- }), () => Effect.void),
128
- /**
129
- * Creates a legacy semaphore wrapper
130
- * @param count - Number of permits
131
- * @returns Legacy semaphore instance
132
- */
133
- legacy: (count) => semaphore(count),
134
- };
@@ -1 +0,0 @@
1
- const e=require(`../debounce-LZK7yS7Z.cjs`);function t(t,n,{leading:r=!0,trailing:i=!0}={}){return e.debounce(t,n,{leading:r,trailing:i})}const n={legacy:t};exports.ThrottleEffect=n,exports.throttle=t;
@@ -1,24 +0,0 @@
1
- //#region src/utils/throttle.d.ts
2
- declare function throttle<T, A extends unknown[], Return>(fn: (this: T, ...args: A) => Return, wait: number, {
3
- leading,
4
- trailing
5
- }?: {
6
- leading?: boolean;
7
- trailing?: boolean;
8
- }): (this: T, ...args: A) => void;
9
- /**
10
- * Effect-based throttle utilities
11
- */
12
- declare const ThrottleEffect: {
13
- /**
14
- * Creates a legacy throttle function wrapper
15
- * @param fn - Function to throttle
16
- * @param wait - Wait time in milliseconds
17
- * @param options - Throttle options
18
- * @returns Throttled function
19
- */
20
- legacy: typeof throttle;
21
- };
22
- //#endregion
23
- export { ThrottleEffect, throttle };
24
- //# sourceMappingURL=throttle.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"throttle.d.cts","names":[],"sources":["../../src/utils/throttle.ts"],"sourcesContent":[],"mappings":";iBAEgB,oDACH,YAAY,MAAM;;;;EADf,OAAA,CAAA,EAAA,OAAQ;EAAA,QAAA,CAAA,EAAA,OAAA;SACX,EAKsC,CALtC,EAAA,GAAA,IAAA,EAKsC,CALtC,EAAA,GAAA,IAAA;;;;AAIT,cAYS,cAZT,EAAA;;;;AAYJ;;;;iBASC"}
@@ -1,18 +0,0 @@
1
- export declare function throttle<T, A extends unknown[], Return>(fn: (this: T, ...args: A) => Return, wait: number, { leading, trailing, }?: {
2
- leading?: boolean;
3
- trailing?: boolean;
4
- }): (this: T, ...args: A) => void;
5
- /**
6
- * Effect-based throttle utilities
7
- */
8
- export declare const ThrottleEffect: {
9
- /**
10
- * Creates a legacy throttle function wrapper
11
- * @param fn - Function to throttle
12
- * @param wait - Wait time in milliseconds
13
- * @param options - Throttle options
14
- * @returns Throttled function
15
- */
16
- legacy: typeof throttle;
17
- };
18
- //# sourceMappingURL=throttle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"throttle.d.ts","sourceRoot":"","sources":["../../src/utils/throttle.ts"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,EAAE,MAAM,EACrD,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,MAAM,EACnC,IAAI,EAAE,MAAM,EACZ,EACE,OAAc,EACd,QAAe,GAChB,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,iCAMlD;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;IACzB;;;;;;OAMG;;CAEJ,CAAC"}
@@ -1,20 +0,0 @@
1
- import { debounce } from "./debounce.js";
2
- export function throttle(fn, wait, { leading = true, trailing = true, } = {}) {
3
- return debounce(fn, wait, {
4
- leading,
5
- trailing,
6
- });
7
- }
8
- /**
9
- * Effect-based throttle utilities
10
- */
11
- export const ThrottleEffect = {
12
- /**
13
- * Creates a legacy throttle function wrapper
14
- * @param fn - Function to throttle
15
- * @param wait - Wait time in milliseconds
16
- * @param options - Throttle options
17
- * @returns Throttled function
18
- */
19
- legacy: throttle,
20
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"throttle.js","names":[],"sources":["../../src/utils/throttle.ts"],"sourcesContent":["import { debounce } from \"./debounce.js\";\n\nexport function throttle<T, A extends unknown[], Return>(\n fn: (this: T, ...args: A) => Return,\n wait: number,\n {\n leading = true,\n trailing = true,\n }: { leading?: boolean; trailing?: boolean } = {},\n) {\n return debounce(fn, wait, {\n leading,\n trailing,\n });\n}\n\n/**\n * Effect-based throttle utilities\n */\nexport const ThrottleEffect = {\n /**\n * Creates a legacy throttle function wrapper\n * @param fn - Function to throttle\n * @param wait - Wait time in milliseconds\n * @param options - Throttle options\n * @returns Throttled function\n */\n legacy: throttle,\n};\n"],"mappings":"mDAEA,SAAgB,EACd,EACA,EACA,CACE,UAAU,GACV,WAAW,IACkC,EAAE,CACjD,CACA,OAAO,EAAS,EAAI,EAAM,CACxB,UACA,WACD,CAAC,CAMJ,MAAa,EAAiB,CAQ5B,OAAQ,EACT"}
@@ -1,14 +0,0 @@
1
- export type Logger = {
2
- log: (message: string) => void;
3
- };
4
-
5
- export function createLogger(enabled: boolean): Logger {
6
- return {
7
- log: (message: string) => {
8
- if (enabled) {
9
- // eslint-disable-next-line no-console
10
- console.log(message);
11
- }
12
- },
13
- };
14
- }