@adviser/cement 0.3.4 → 0.3.5

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 (546) hide show
  1. package/{base-sys-abstraction-B-PcaG0B.d.ts → base-sys-abstraction-CKI4xiRR.d.ts} +4 -4
  2. package/{base-sys-abstraction-CLlfCI2Q.d.cts → base-sys-abstraction-DLnSeH4s.d.cts} +4 -4
  3. package/cf/index.cjs +200 -6
  4. package/cf/index.cjs.map +1 -1
  5. package/cf/index.d.cts +3 -3
  6. package/cf/index.d.ts +3 -3
  7. package/cf/index.js +3 -3
  8. package/{chunk-OQ4NGEJR.js → chunk-4QRZPFED.js} +67 -10
  9. package/chunk-4QRZPFED.js.map +1 -0
  10. package/{chunk-HFP74WLI.js → chunk-4U6TAOIU.js} +5 -4
  11. package/chunk-4U6TAOIU.js.map +1 -0
  12. package/{chunk-5GJADB3C.js → chunk-6AG3MRNY.js} +17 -167
  13. package/chunk-6AG3MRNY.js.map +1 -0
  14. package/{chunk-A7OPSHUV.js → chunk-LRJXXDF5.js} +11 -4
  15. package/chunk-LRJXXDF5.js.map +1 -0
  16. package/{chunk-MFC4AD5O.js → chunk-OIIUVSUX.js} +3 -3
  17. package/chunk-OIIUVSUX.js.map +1 -0
  18. package/chunk-QDDO6NOK.js +194 -0
  19. package/chunk-QDDO6NOK.js.map +1 -0
  20. package/deno/index.cjs +200 -6
  21. package/deno/index.cjs.map +1 -1
  22. package/deno/index.d.cts +3 -3
  23. package/deno/index.d.ts +3 -3
  24. package/deno/index.js +2 -2
  25. package/deno/index.js.map +1 -1
  26. package/get-params-result-Bhy5997x.d.cts +61 -0
  27. package/get-params-result-Bhy5997x.d.ts +61 -0
  28. package/{index-ChpAZoUE.d.ts → index-1R-hTV11.d.ts} +5 -50
  29. package/{index-CI2cJ0-W.d.cts → index-98HXQB3i.d.cts} +5 -50
  30. package/{index-Q3phXzYr.d.cts → index-BMCdndbY.d.cts} +28 -23
  31. package/{index-tIGZMHTc.d.ts → index-IrV5jK1W.d.ts} +28 -23
  32. package/index.cjs +237 -170
  33. package/index.cjs.map +1 -1
  34. package/index.d.cts +13 -11
  35. package/index.d.ts +13 -11
  36. package/index.js +16 -11
  37. package/index.js.map +1 -1
  38. package/node/index.cjs +204 -10
  39. package/node/index.cjs.map +1 -1
  40. package/node/index.d.cts +3 -3
  41. package/node/index.d.ts +3 -3
  42. package/node/index.js +6 -6
  43. package/node/index.js.map +1 -1
  44. package/package.json +1 -1
  45. package/src/base-sys-abstraction.ts +8 -6
  46. package/src/cf-test-main.ts +5 -0
  47. package/src/deno/deno-file-service.ts +1 -1
  48. package/src/http_header.ts +1 -1
  49. package/src/index.ts +3 -0
  50. package/src/jsr.json +1 -1
  51. package/src/log-writer-impl.ts +10 -5
  52. package/src/logger-impl.ts +9 -8
  53. package/src/logger.ts +4 -5
  54. package/src/node/mock-file-service.ts +4 -4
  55. package/src/resolve-once.ts +6 -5
  56. package/src/runtime.ts +3 -3
  57. package/src/sys-env.ts +60 -0
  58. package/src/test/log-write-stream.ts +2 -1
  59. package/src/tracer.ts +4 -6
  60. package/src/uri.ts +4 -69
  61. package/src/utils/console-write-stream.ts +4 -3
  62. package/src/utils/fanout-write-stream.ts +1 -1
  63. package/src/utils/get-params-result.ts +71 -0
  64. package/src/utils/index.ts +1 -0
  65. package/src/utils/rebuffer.ts +27 -21
  66. package/src/utils/relative-path.ts +1 -1
  67. package/src/utils/stream2string.ts +2 -2
  68. package/src/utils/stripper.ts +2 -2
  69. package/src/version.ts +2 -2
  70. package/src/web/web-sys-abstraction.ts +1 -1
  71. package/{sys-abstraction-Coxu8BjZ.d.cts → sys-abstraction-BRDT_TIU.d.cts} +8 -1
  72. package/{sys-abstraction-Coxu8BjZ.d.ts → sys-abstraction-Bd0EzwO6.d.ts} +8 -1
  73. package/test/index.cjs +407 -355
  74. package/test/index.cjs.map +1 -1
  75. package/test/index.d.cts +3 -3
  76. package/test/index.d.ts +3 -3
  77. package/test/index.js +5 -5
  78. package/ts/smoke/smoke.d.ts +2 -0
  79. package/ts/smoke/smoke.d.ts.map +1 -0
  80. package/ts/smoke/smoke.js +33 -0
  81. package/ts/smoke/smoke.js.map +1 -0
  82. package/ts/{base-sys-abstraction.d.ts → src/base-sys-abstraction.d.ts} +2 -2
  83. package/ts/src/base-sys-abstraction.d.ts.map +1 -0
  84. package/ts/{base-sys-abstraction.js → src/base-sys-abstraction.js} +4 -2
  85. package/ts/src/base-sys-abstraction.js.map +1 -0
  86. package/ts/src/base-sys-abstraction.test.d.ts.map +1 -0
  87. package/ts/src/base-sys-abstraction.test.js.map +1 -0
  88. package/ts/src/bin2text.d.ts.map +1 -0
  89. package/ts/src/bin2text.js.map +1 -0
  90. package/ts/{bin2text.test.d.ts.map → src/bin2text.test.d.ts.map} +1 -1
  91. package/ts/src/bin2text.test.js.map +1 -0
  92. package/ts/src/cf/cf-env-actions.d.ts.map +1 -0
  93. package/ts/src/cf/cf-env-actions.js.map +1 -0
  94. package/ts/src/cf/cf-sys-abstraction.d.ts.map +1 -0
  95. package/ts/src/cf/cf-sys-abstraction.js.map +1 -0
  96. package/ts/src/cf/index.d.ts.map +1 -0
  97. package/ts/src/cf/index.js.map +1 -0
  98. package/ts/src/cf-test-main.d.ts +5 -0
  99. package/ts/src/cf-test-main.d.ts.map +1 -0
  100. package/ts/src/cf-test-main.js +6 -0
  101. package/ts/src/cf-test-main.js.map +1 -0
  102. package/ts/src/crypto.d.ts.map +1 -0
  103. package/ts/src/crypto.js.map +1 -0
  104. package/ts/{crypto.test.d.ts.map → src/crypto.test.d.ts.map} +1 -1
  105. package/ts/src/crypto.test.js.map +1 -0
  106. package/ts/src/deno/deno-env-actions.d.ts.map +1 -0
  107. package/ts/src/deno/deno-env-actions.js.map +1 -0
  108. package/ts/src/deno/deno-file-service.d.ts.map +1 -0
  109. package/ts/src/deno/deno-file-service.js.map +1 -0
  110. package/ts/src/deno/deno-sys-abstraction.d.ts.map +1 -0
  111. package/ts/src/deno/deno-sys-abstraction.js.map +1 -0
  112. package/ts/src/deno/index.d.ts.map +1 -0
  113. package/ts/src/deno/index.js.map +1 -0
  114. package/ts/src/file-service.d.ts.map +1 -0
  115. package/ts/{file-service.js.map → src/file-service.js.map} +1 -1
  116. package/ts/src/future.d.ts.map +1 -0
  117. package/ts/src/future.js.map +1 -0
  118. package/ts/{future.test.d.ts.map → src/future.test.d.ts.map} +1 -1
  119. package/ts/src/future.test.js.map +1 -0
  120. package/ts/src/http_header.d.ts.map +1 -0
  121. package/ts/src/http_header.js.map +1 -0
  122. package/ts/src/http_header.test.d.ts.map +1 -0
  123. package/ts/src/http_header.test.js.map +1 -0
  124. package/ts/{index.d.ts → src/index.d.ts} +2 -0
  125. package/ts/src/index.d.ts.map +1 -0
  126. package/ts/{index.js → src/index.js} +2 -0
  127. package/ts/src/index.js.map +1 -0
  128. package/ts/src/log-level-impl.d.ts.map +1 -0
  129. package/ts/src/log-level-impl.js.map +1 -0
  130. package/ts/src/log-writer-impl.d.ts.map +1 -0
  131. package/ts/{log-writer-impl.js → src/log-writer-impl.js} +4 -2
  132. package/ts/src/log-writer-impl.js.map +1 -0
  133. package/ts/{logger-impl.d.ts → src/logger-impl.d.ts} +1 -1
  134. package/ts/src/logger-impl.d.ts.map +1 -0
  135. package/ts/{logger-impl.js → src/logger-impl.js} +2 -3
  136. package/ts/src/logger-impl.js.map +1 -0
  137. package/ts/{logger.d.ts → src/logger.d.ts} +1 -1
  138. package/ts/src/logger.d.ts.map +1 -0
  139. package/ts/src/logger.js.map +1 -0
  140. package/ts/{logger.test.d.ts.map → src/logger.test.d.ts.map} +1 -1
  141. package/ts/{logger.test.js → src/logger.test.js} +4 -4
  142. package/ts/src/logger.test.js.map +1 -0
  143. package/ts/src/node/index.d.ts.map +1 -0
  144. package/ts/src/node/index.js.map +1 -0
  145. package/ts/src/node/mock-file-service.d.ts.map +1 -0
  146. package/ts/{node → src/node}/mock-file-service.js +4 -4
  147. package/ts/src/node/mock-file-service.js.map +1 -0
  148. package/ts/src/node/mock-file-service.test.d.ts.map +1 -0
  149. package/ts/src/node/mock-file-service.test.js.map +1 -0
  150. package/ts/src/node/node-env-actions.d.ts.map +1 -0
  151. package/ts/src/node/node-env-actions.js.map +1 -0
  152. package/ts/src/node/node-file-service.d.ts.map +1 -0
  153. package/ts/src/node/node-file-service.js.map +1 -0
  154. package/ts/src/node/node-sys-abstraction.d.ts.map +1 -0
  155. package/ts/src/node/node-sys-abstraction.js.map +1 -0
  156. package/ts/src/node/node-sys-abstraction.test.d.ts.map +1 -0
  157. package/ts/src/node/node-sys-abstraction.test.js.map +1 -0
  158. package/ts/src/option.d.ts.map +1 -0
  159. package/ts/src/option.js.map +1 -0
  160. package/ts/{resolve-once.d.ts → src/resolve-once.d.ts} +1 -1
  161. package/ts/src/resolve-once.d.ts.map +1 -0
  162. package/ts/{resolve-once.js → src/resolve-once.js} +5 -4
  163. package/ts/src/resolve-once.js.map +1 -0
  164. package/ts/src/resolve-once.test.d.ts.map +1 -0
  165. package/ts/{resolve-once.test.js → src/resolve-once.test.js} +20 -24
  166. package/ts/src/resolve-once.test.js.map +1 -0
  167. package/ts/src/result.d.ts.map +1 -0
  168. package/ts/src/result.js.map +1 -0
  169. package/ts/{result.test.d.ts.map → src/result.test.d.ts.map} +1 -1
  170. package/ts/{result.test.js → src/result.test.js} +2 -4
  171. package/ts/src/result.test.js.map +1 -0
  172. package/ts/src/runtime.d.ts.map +1 -0
  173. package/ts/src/runtime.js.map +1 -0
  174. package/ts/src/sys-abstraction.d.ts.map +1 -0
  175. package/ts/src/sys-abstraction.js.map +1 -0
  176. package/ts/{sys-env.d.ts → src/sys-env.d.ts} +7 -0
  177. package/ts/src/sys-env.d.ts.map +1 -0
  178. package/ts/{sys-env.js → src/sys-env.js} +53 -0
  179. package/ts/src/sys-env.js.map +1 -0
  180. package/ts/{sys-env.test.d.ts.map → src/sys-env.test.d.ts.map} +1 -1
  181. package/ts/{sys-env.test.js → src/sys-env.test.js} +68 -0
  182. package/ts/src/sys-env.test.js.map +1 -0
  183. package/ts/src/test/index.d.ts.map +1 -0
  184. package/ts/src/test/index.js.map +1 -0
  185. package/ts/src/test/log-write-stream.d.ts.map +1 -0
  186. package/ts/src/test/log-write-stream.js.map +1 -0
  187. package/ts/src/test/mock-logger.d.ts.map +1 -0
  188. package/ts/src/test/mock-logger.js.map +1 -0
  189. package/ts/src/test/mock-logger.test.d.ts.map +1 -0
  190. package/ts/src/test/mock-logger.test.js.map +1 -0
  191. package/ts/src/test/test-exit-handler.d.ts.map +1 -0
  192. package/ts/{test → src/test}/test-exit-handler.js +8 -3
  193. package/ts/src/test/test-exit-handler.js.map +1 -0
  194. package/ts/src/time.d.ts.map +1 -0
  195. package/ts/src/time.js.map +1 -0
  196. package/ts/src/tracer.d.ts.map +1 -0
  197. package/ts/src/tracer.js.map +1 -0
  198. package/ts/{tracer.test.d.ts.map → src/tracer.test.d.ts.map} +1 -1
  199. package/ts/{tracer.test.js → src/tracer.test.js} +5 -5
  200. package/ts/src/tracer.test.js.map +1 -0
  201. package/ts/src/txt-en-decoder.d.ts.map +1 -0
  202. package/ts/src/txt-en-decoder.js.map +1 -0
  203. package/ts/{uri.d.ts → src/uri.d.ts} +2 -13
  204. package/ts/src/uri.d.ts.map +1 -0
  205. package/ts/{uri.js → src/uri.js} +2 -56
  206. package/ts/src/uri.js.map +1 -0
  207. package/ts/{uri.test.d.ts.map → src/uri.test.d.ts.map} +1 -1
  208. package/ts/{uri.test.js → src/uri.test.js} +7 -7
  209. package/ts/src/uri.test.js.map +1 -0
  210. package/ts/{utils → src/utils}/console-write-stream.d.ts +1 -1
  211. package/ts/src/utils/console-write-stream.d.ts.map +1 -0
  212. package/ts/{utils → src/utils}/console-write-stream.js +4 -3
  213. package/ts/src/utils/console-write-stream.js.map +1 -0
  214. package/ts/{utils → src/utils}/fanout-write-stream.d.ts +1 -1
  215. package/ts/src/utils/fanout-write-stream.d.ts.map +1 -0
  216. package/ts/src/utils/fanout-write-stream.js.map +1 -0
  217. package/ts/src/utils/get-params-result.d.ts +19 -0
  218. package/ts/src/utils/get-params-result.d.ts.map +1 -0
  219. package/ts/src/utils/get-params-result.js +58 -0
  220. package/ts/src/utils/get-params-result.js.map +1 -0
  221. package/ts/{utils → src/utils}/index.d.ts +1 -0
  222. package/ts/src/utils/index.d.ts.map +1 -0
  223. package/ts/{utils → src/utils}/index.js +1 -0
  224. package/ts/src/utils/index.js.map +1 -0
  225. package/ts/src/utils/rebuffer.d.ts.map +1 -0
  226. package/ts/{utils → src/utils}/rebuffer.js +7 -1
  227. package/ts/src/utils/rebuffer.js.map +1 -0
  228. package/ts/src/utils/rebuffer.test.d.ts.map +1 -0
  229. package/ts/src/utils/rebuffer.test.js.map +1 -0
  230. package/ts/src/utils/relative-path.d.ts.map +1 -0
  231. package/ts/src/utils/relative-path.js.map +1 -0
  232. package/ts/src/utils/relative-path.test.d.ts.map +1 -0
  233. package/ts/src/utils/relative-path.test.js.map +1 -0
  234. package/ts/src/utils/stream-map.d.ts.map +1 -0
  235. package/ts/src/utils/stream-map.js.map +1 -0
  236. package/ts/src/utils/stream-map.test.d.ts.map +1 -0
  237. package/ts/src/utils/stream-map.test.js.map +1 -0
  238. package/ts/src/utils/stream-test-helper.d.ts.map +1 -0
  239. package/ts/{utils → src/utils}/stream-test-helper.js +18 -10
  240. package/ts/src/utils/stream-test-helper.js.map +1 -0
  241. package/ts/src/utils/stream2string.d.ts.map +1 -0
  242. package/ts/src/utils/stream2string.js.map +1 -0
  243. package/ts/src/utils/stream2string.test.d.ts.map +1 -0
  244. package/ts/src/utils/stream2string.test.js.map +1 -0
  245. package/ts/src/utils/string2stream.d.ts.map +1 -0
  246. package/ts/src/utils/string2stream.js.map +1 -0
  247. package/ts/src/utils/string2stream.test.d.ts.map +1 -0
  248. package/ts/src/utils/string2stream.test.js.map +1 -0
  249. package/ts/src/utils/stripper.d.ts +3 -0
  250. package/ts/src/utils/stripper.d.ts.map +1 -0
  251. package/ts/src/utils/stripper.js.map +1 -0
  252. package/ts/src/utils/stripper.test.d.ts.map +1 -0
  253. package/ts/src/utils/stripper.test.js.map +1 -0
  254. package/ts/src/version.d.ts.map +1 -0
  255. package/ts/src/version.js.map +1 -0
  256. package/ts/src/web/index.d.ts.map +1 -0
  257. package/ts/src/web/index.js.map +1 -0
  258. package/ts/src/web/web-env-actions.d.ts.map +1 -0
  259. package/ts/src/web/web-env-actions.js.map +1 -0
  260. package/ts/{web → src/web}/web-sys-abstraction.d.ts +1 -1
  261. package/ts/src/web/web-sys-abstraction.d.ts.map +1 -0
  262. package/ts/src/web/web-sys-abstraction.js.map +1 -0
  263. package/ts/vitest.browser.config.d.ts +3 -0
  264. package/ts/vitest.browser.config.d.ts.map +1 -0
  265. package/ts/vitest.browser.config.js +17 -0
  266. package/ts/vitest.browser.config.js.map +1 -0
  267. package/ts/vitest.cf-runtime.config.d.ts +3 -0
  268. package/ts/vitest.cf-runtime.config.d.ts.map +1 -0
  269. package/ts/vitest.cf-runtime.config.js +16 -0
  270. package/ts/vitest.cf-runtime.config.js.map +1 -0
  271. package/ts/vitest.config.d.ts +3 -0
  272. package/ts/vitest.config.d.ts.map +1 -0
  273. package/ts/vitest.config.js +8 -0
  274. package/ts/vitest.config.js.map +1 -0
  275. package/ts/vitest.node.config.d.ts +3 -0
  276. package/ts/vitest.node.config.d.ts.map +1 -0
  277. package/ts/vitest.node.config.js +11 -0
  278. package/ts/vitest.node.config.js.map +1 -0
  279. package/ts/vitest.workspace.d.ts +3 -0
  280. package/ts/vitest.workspace.d.ts.map +1 -0
  281. package/ts/vitest.workspace.js +6 -0
  282. package/ts/vitest.workspace.js.map +1 -0
  283. package/utils/index.cjs +150 -3
  284. package/utils/index.cjs.map +1 -1
  285. package/utils/index.d.cts +2 -2
  286. package/utils/index.d.ts +2 -2
  287. package/utils/index.js +8 -3
  288. package/web/index.cjs +200 -6
  289. package/web/index.cjs.map +1 -1
  290. package/web/index.d.cts +4 -4
  291. package/web/index.d.ts +4 -4
  292. package/web/index.js +3 -3
  293. package/chunk-5GJADB3C.js.map +0 -1
  294. package/chunk-A7OPSHUV.js.map +0 -1
  295. package/chunk-HFP74WLI.js.map +0 -1
  296. package/chunk-MFC4AD5O.js.map +0 -1
  297. package/chunk-OQ4NGEJR.js.map +0 -1
  298. package/chunk-PPS4L4VW.js +0 -38
  299. package/chunk-PPS4L4VW.js.map +0 -1
  300. package/ts/base-sys-abstraction.d.ts.map +0 -1
  301. package/ts/base-sys-abstraction.js.map +0 -1
  302. package/ts/base-sys-abstraction.test.d.ts.map +0 -1
  303. package/ts/base-sys-abstraction.test.js.map +0 -1
  304. package/ts/bin2text.d.ts.map +0 -1
  305. package/ts/bin2text.js.map +0 -1
  306. package/ts/bin2text.test.js.map +0 -1
  307. package/ts/cf/cf-env-actions.d.ts.map +0 -1
  308. package/ts/cf/cf-env-actions.js.map +0 -1
  309. package/ts/cf/cf-sys-abstraction.d.ts.map +0 -1
  310. package/ts/cf/cf-sys-abstraction.js.map +0 -1
  311. package/ts/cf/index.d.ts.map +0 -1
  312. package/ts/cf/index.js.map +0 -1
  313. package/ts/crypto.d.ts.map +0 -1
  314. package/ts/crypto.js.map +0 -1
  315. package/ts/crypto.test.js.map +0 -1
  316. package/ts/deno/deno-env-actions.d.ts.map +0 -1
  317. package/ts/deno/deno-env-actions.js.map +0 -1
  318. package/ts/deno/deno-file-service.d.ts.map +0 -1
  319. package/ts/deno/deno-file-service.js.map +0 -1
  320. package/ts/deno/deno-sys-abstraction.d.ts.map +0 -1
  321. package/ts/deno/deno-sys-abstraction.js.map +0 -1
  322. package/ts/deno/index.d.ts.map +0 -1
  323. package/ts/deno/index.js.map +0 -1
  324. package/ts/file-service.d.ts.map +0 -1
  325. package/ts/future.d.ts.map +0 -1
  326. package/ts/future.js.map +0 -1
  327. package/ts/future.test.js.map +0 -1
  328. package/ts/http_header.d.ts.map +0 -1
  329. package/ts/http_header.js.map +0 -1
  330. package/ts/http_header.test.d.ts.map +0 -1
  331. package/ts/http_header.test.js.map +0 -1
  332. package/ts/index.d.ts.map +0 -1
  333. package/ts/index.js.map +0 -1
  334. package/ts/log-level-impl.d.ts.map +0 -1
  335. package/ts/log-level-impl.js.map +0 -1
  336. package/ts/log-writer-impl.d.ts.map +0 -1
  337. package/ts/log-writer-impl.js.map +0 -1
  338. package/ts/logger-impl.d.ts.map +0 -1
  339. package/ts/logger-impl.js.map +0 -1
  340. package/ts/logger.d.ts.map +0 -1
  341. package/ts/logger.js.map +0 -1
  342. package/ts/logger.test.js.map +0 -1
  343. package/ts/node/index.d.ts.map +0 -1
  344. package/ts/node/index.js.map +0 -1
  345. package/ts/node/mock-file-service.d.ts.map +0 -1
  346. package/ts/node/mock-file-service.js.map +0 -1
  347. package/ts/node/mock-file-service.test.d.ts.map +0 -1
  348. package/ts/node/mock-file-service.test.js.map +0 -1
  349. package/ts/node/node-env-actions.d.ts.map +0 -1
  350. package/ts/node/node-env-actions.js.map +0 -1
  351. package/ts/node/node-file-service.d.ts.map +0 -1
  352. package/ts/node/node-file-service.js.map +0 -1
  353. package/ts/node/node-sys-abstraction.d.ts.map +0 -1
  354. package/ts/node/node-sys-abstraction.js.map +0 -1
  355. package/ts/node/node-sys-abstraction.test.d.ts.map +0 -1
  356. package/ts/node/node-sys-abstraction.test.js.map +0 -1
  357. package/ts/option.d.ts.map +0 -1
  358. package/ts/option.js.map +0 -1
  359. package/ts/resolve-once.d.ts.map +0 -1
  360. package/ts/resolve-once.js.map +0 -1
  361. package/ts/resolve-once.test.d.ts.map +0 -1
  362. package/ts/resolve-once.test.js.map +0 -1
  363. package/ts/result.d.ts.map +0 -1
  364. package/ts/result.js.map +0 -1
  365. package/ts/result.test.js.map +0 -1
  366. package/ts/runtime.d.ts.map +0 -1
  367. package/ts/runtime.js.map +0 -1
  368. package/ts/sys-abstraction.d.ts.map +0 -1
  369. package/ts/sys-abstraction.js.map +0 -1
  370. package/ts/sys-env.d.ts.map +0 -1
  371. package/ts/sys-env.js.map +0 -1
  372. package/ts/sys-env.test.js.map +0 -1
  373. package/ts/test/index.d.ts.map +0 -1
  374. package/ts/test/index.js.map +0 -1
  375. package/ts/test/log-write-stream.d.ts.map +0 -1
  376. package/ts/test/log-write-stream.js.map +0 -1
  377. package/ts/test/mock-logger.d.ts.map +0 -1
  378. package/ts/test/mock-logger.js.map +0 -1
  379. package/ts/test/mock-logger.test.d.ts.map +0 -1
  380. package/ts/test/mock-logger.test.js.map +0 -1
  381. package/ts/test/test-exit-handler.d.ts.map +0 -1
  382. package/ts/test/test-exit-handler.js.map +0 -1
  383. package/ts/time.d.ts.map +0 -1
  384. package/ts/time.js.map +0 -1
  385. package/ts/tracer.d.ts.map +0 -1
  386. package/ts/tracer.js.map +0 -1
  387. package/ts/tracer.test.js.map +0 -1
  388. package/ts/txt-en-decoder.d.ts.map +0 -1
  389. package/ts/txt-en-decoder.js.map +0 -1
  390. package/ts/uri.d.ts.map +0 -1
  391. package/ts/uri.js.map +0 -1
  392. package/ts/uri.test.js.map +0 -1
  393. package/ts/utils/console-write-stream.d.ts.map +0 -1
  394. package/ts/utils/console-write-stream.js.map +0 -1
  395. package/ts/utils/fanout-write-stream.d.ts.map +0 -1
  396. package/ts/utils/fanout-write-stream.js.map +0 -1
  397. package/ts/utils/index.d.ts.map +0 -1
  398. package/ts/utils/index.js.map +0 -1
  399. package/ts/utils/rebuffer.d.ts.map +0 -1
  400. package/ts/utils/rebuffer.js.map +0 -1
  401. package/ts/utils/rebuffer.test.d.ts.map +0 -1
  402. package/ts/utils/rebuffer.test.js.map +0 -1
  403. package/ts/utils/relative-path.d.ts.map +0 -1
  404. package/ts/utils/relative-path.js.map +0 -1
  405. package/ts/utils/relative-path.test.d.ts.map +0 -1
  406. package/ts/utils/relative-path.test.js.map +0 -1
  407. package/ts/utils/stream-map.d.ts.map +0 -1
  408. package/ts/utils/stream-map.js.map +0 -1
  409. package/ts/utils/stream-map.test.d.ts.map +0 -1
  410. package/ts/utils/stream-map.test.js.map +0 -1
  411. package/ts/utils/stream-test-helper.d.ts.map +0 -1
  412. package/ts/utils/stream-test-helper.js.map +0 -1
  413. package/ts/utils/stream2string.d.ts.map +0 -1
  414. package/ts/utils/stream2string.js.map +0 -1
  415. package/ts/utils/stream2string.test.d.ts.map +0 -1
  416. package/ts/utils/stream2string.test.js.map +0 -1
  417. package/ts/utils/string2stream.d.ts.map +0 -1
  418. package/ts/utils/string2stream.js.map +0 -1
  419. package/ts/utils/string2stream.test.d.ts.map +0 -1
  420. package/ts/utils/string2stream.test.js.map +0 -1
  421. package/ts/utils/stripper.d.ts +0 -3
  422. package/ts/utils/stripper.d.ts.map +0 -1
  423. package/ts/utils/stripper.js.map +0 -1
  424. package/ts/utils/stripper.test.d.ts.map +0 -1
  425. package/ts/utils/stripper.test.js.map +0 -1
  426. package/ts/version.d.ts.map +0 -1
  427. package/ts/version.js.map +0 -1
  428. package/ts/web/index.d.ts.map +0 -1
  429. package/ts/web/index.js.map +0 -1
  430. package/ts/web/web-env-actions.d.ts.map +0 -1
  431. package/ts/web/web-env-actions.js.map +0 -1
  432. package/ts/web/web-sys-abstraction.d.ts.map +0 -1
  433. package/ts/web/web-sys-abstraction.js.map +0 -1
  434. package/txt-en-decoder-CZYJUju2.d.cts +0 -11
  435. package/txt-en-decoder-CZYJUju2.d.ts +0 -11
  436. /package/ts/{base-sys-abstraction.test.d.ts → src/base-sys-abstraction.test.d.ts} +0 -0
  437. /package/ts/{base-sys-abstraction.test.js → src/base-sys-abstraction.test.js} +0 -0
  438. /package/ts/{bin2text.d.ts → src/bin2text.d.ts} +0 -0
  439. /package/ts/{bin2text.js → src/bin2text.js} +0 -0
  440. /package/ts/{bin2text.test.d.ts → src/bin2text.test.d.ts} +0 -0
  441. /package/ts/{bin2text.test.js → src/bin2text.test.js} +0 -0
  442. /package/ts/{cf → src/cf}/cf-env-actions.d.ts +0 -0
  443. /package/ts/{cf → src/cf}/cf-env-actions.js +0 -0
  444. /package/ts/{cf → src/cf}/cf-sys-abstraction.d.ts +0 -0
  445. /package/ts/{cf → src/cf}/cf-sys-abstraction.js +0 -0
  446. /package/ts/{cf → src/cf}/index.d.ts +0 -0
  447. /package/ts/{cf → src/cf}/index.js +0 -0
  448. /package/ts/{crypto.d.ts → src/crypto.d.ts} +0 -0
  449. /package/ts/{crypto.js → src/crypto.js} +0 -0
  450. /package/ts/{crypto.test.d.ts → src/crypto.test.d.ts} +0 -0
  451. /package/ts/{crypto.test.js → src/crypto.test.js} +0 -0
  452. /package/ts/{deno → src/deno}/deno-env-actions.d.ts +0 -0
  453. /package/ts/{deno → src/deno}/deno-env-actions.js +0 -0
  454. /package/ts/{deno → src/deno}/deno-file-service.d.ts +0 -0
  455. /package/ts/{deno → src/deno}/deno-file-service.js +0 -0
  456. /package/ts/{deno → src/deno}/deno-sys-abstraction.d.ts +0 -0
  457. /package/ts/{deno → src/deno}/deno-sys-abstraction.js +0 -0
  458. /package/ts/{deno → src/deno}/index.d.ts +0 -0
  459. /package/ts/{deno → src/deno}/index.js +0 -0
  460. /package/ts/{file-service.d.ts → src/file-service.d.ts} +0 -0
  461. /package/ts/{file-service.js → src/file-service.js} +0 -0
  462. /package/ts/{future.d.ts → src/future.d.ts} +0 -0
  463. /package/ts/{future.js → src/future.js} +0 -0
  464. /package/ts/{future.test.d.ts → src/future.test.d.ts} +0 -0
  465. /package/ts/{future.test.js → src/future.test.js} +0 -0
  466. /package/ts/{http_header.d.ts → src/http_header.d.ts} +0 -0
  467. /package/ts/{http_header.js → src/http_header.js} +0 -0
  468. /package/ts/{http_header.test.d.ts → src/http_header.test.d.ts} +0 -0
  469. /package/ts/{http_header.test.js → src/http_header.test.js} +0 -0
  470. /package/ts/{log-level-impl.d.ts → src/log-level-impl.d.ts} +0 -0
  471. /package/ts/{log-level-impl.js → src/log-level-impl.js} +0 -0
  472. /package/ts/{log-writer-impl.d.ts → src/log-writer-impl.d.ts} +0 -0
  473. /package/ts/{logger.js → src/logger.js} +0 -0
  474. /package/ts/{logger.test.d.ts → src/logger.test.d.ts} +0 -0
  475. /package/ts/{node → src/node}/index.d.ts +0 -0
  476. /package/ts/{node → src/node}/index.js +0 -0
  477. /package/ts/{node → src/node}/mock-file-service.d.ts +0 -0
  478. /package/ts/{node → src/node}/mock-file-service.test.d.ts +0 -0
  479. /package/ts/{node → src/node}/mock-file-service.test.js +0 -0
  480. /package/ts/{node → src/node}/node-env-actions.d.ts +0 -0
  481. /package/ts/{node → src/node}/node-env-actions.js +0 -0
  482. /package/ts/{node → src/node}/node-file-service.d.ts +0 -0
  483. /package/ts/{node → src/node}/node-file-service.js +0 -0
  484. /package/ts/{node → src/node}/node-sys-abstraction.d.ts +0 -0
  485. /package/ts/{node → src/node}/node-sys-abstraction.js +0 -0
  486. /package/ts/{node → src/node}/node-sys-abstraction.test.d.ts +0 -0
  487. /package/ts/{node → src/node}/node-sys-abstraction.test.js +0 -0
  488. /package/ts/{option.d.ts → src/option.d.ts} +0 -0
  489. /package/ts/{option.js → src/option.js} +0 -0
  490. /package/ts/{resolve-once.test.d.ts → src/resolve-once.test.d.ts} +0 -0
  491. /package/ts/{result.d.ts → src/result.d.ts} +0 -0
  492. /package/ts/{result.js → src/result.js} +0 -0
  493. /package/ts/{result.test.d.ts → src/result.test.d.ts} +0 -0
  494. /package/ts/{runtime.d.ts → src/runtime.d.ts} +0 -0
  495. /package/ts/{runtime.js → src/runtime.js} +0 -0
  496. /package/ts/{sys-abstraction.d.ts → src/sys-abstraction.d.ts} +0 -0
  497. /package/ts/{sys-abstraction.js → src/sys-abstraction.js} +0 -0
  498. /package/ts/{sys-env.test.d.ts → src/sys-env.test.d.ts} +0 -0
  499. /package/ts/{test → src/test}/index.d.ts +0 -0
  500. /package/ts/{test → src/test}/index.js +0 -0
  501. /package/ts/{test → src/test}/log-write-stream.d.ts +0 -0
  502. /package/ts/{test → src/test}/log-write-stream.js +0 -0
  503. /package/ts/{test → src/test}/mock-logger.d.ts +0 -0
  504. /package/ts/{test → src/test}/mock-logger.js +0 -0
  505. /package/ts/{test → src/test}/mock-logger.test.d.ts +0 -0
  506. /package/ts/{test → src/test}/mock-logger.test.js +0 -0
  507. /package/ts/{test → src/test}/test-exit-handler.d.ts +0 -0
  508. /package/ts/{time.d.ts → src/time.d.ts} +0 -0
  509. /package/ts/{time.js → src/time.js} +0 -0
  510. /package/ts/{tracer.d.ts → src/tracer.d.ts} +0 -0
  511. /package/ts/{tracer.js → src/tracer.js} +0 -0
  512. /package/ts/{tracer.test.d.ts → src/tracer.test.d.ts} +0 -0
  513. /package/ts/{txt-en-decoder.d.ts → src/txt-en-decoder.d.ts} +0 -0
  514. /package/ts/{txt-en-decoder.js → src/txt-en-decoder.js} +0 -0
  515. /package/ts/{uri.test.d.ts → src/uri.test.d.ts} +0 -0
  516. /package/ts/{utils → src/utils}/fanout-write-stream.js +0 -0
  517. /package/ts/{utils → src/utils}/rebuffer.d.ts +0 -0
  518. /package/ts/{utils → src/utils}/rebuffer.test.d.ts +0 -0
  519. /package/ts/{utils → src/utils}/rebuffer.test.js +0 -0
  520. /package/ts/{utils → src/utils}/relative-path.d.ts +0 -0
  521. /package/ts/{utils → src/utils}/relative-path.js +0 -0
  522. /package/ts/{utils → src/utils}/relative-path.test.d.ts +0 -0
  523. /package/ts/{utils → src/utils}/relative-path.test.js +0 -0
  524. /package/ts/{utils → src/utils}/stream-map.d.ts +0 -0
  525. /package/ts/{utils → src/utils}/stream-map.js +0 -0
  526. /package/ts/{utils → src/utils}/stream-map.test.d.ts +0 -0
  527. /package/ts/{utils → src/utils}/stream-map.test.js +0 -0
  528. /package/ts/{utils → src/utils}/stream-test-helper.d.ts +0 -0
  529. /package/ts/{utils → src/utils}/stream2string.d.ts +0 -0
  530. /package/ts/{utils → src/utils}/stream2string.js +0 -0
  531. /package/ts/{utils → src/utils}/stream2string.test.d.ts +0 -0
  532. /package/ts/{utils → src/utils}/stream2string.test.js +0 -0
  533. /package/ts/{utils → src/utils}/string2stream.d.ts +0 -0
  534. /package/ts/{utils → src/utils}/string2stream.js +0 -0
  535. /package/ts/{utils → src/utils}/string2stream.test.d.ts +0 -0
  536. /package/ts/{utils → src/utils}/string2stream.test.js +0 -0
  537. /package/ts/{utils → src/utils}/stripper.js +0 -0
  538. /package/ts/{utils → src/utils}/stripper.test.d.ts +0 -0
  539. /package/ts/{utils → src/utils}/stripper.test.js +0 -0
  540. /package/ts/{version.d.ts → src/version.d.ts} +0 -0
  541. /package/ts/{version.js → src/version.js} +0 -0
  542. /package/ts/{web → src/web}/index.d.ts +0 -0
  543. /package/ts/{web → src/web}/index.js +0 -0
  544. /package/ts/{web → src/web}/web-env-actions.d.ts +0 -0
  545. /package/ts/{web → src/web}/web-env-actions.js +0 -0
  546. /package/ts/{web → src/web}/web-sys-abstraction.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.config.d.ts","sourceRoot":"","sources":["../../vitest.config.ts"],"names":[],"mappings":";AAEA,wBAMG"}
@@ -0,0 +1,8 @@
1
+ import { defineConfig } from "vitest/config";
2
+ export default defineConfig({
3
+ test: {
4
+ include: ["src/**/*test.?(c|m)[jt]s?(x)"],
5
+ globals: true,
6
+ },
7
+ });
8
+ //# sourceMappingURL=vitest.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../../vitest.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAe,YAAY,CAAC;IAE1B,IAAI,EAAE;QACJ,OAAO,EAAE,CAAC,8BAA8B,CAAC;QACzC,OAAO,EAAE,IAAI;KACd;CACF,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("vite").UserConfig;
2
+ export default _default;
3
+ //# sourceMappingURL=vitest.node.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.node.config.d.ts","sourceRoot":"","sources":["../../vitest.node.config.ts"],"names":[],"mappings":";AAGA,wBAOG"}
@@ -0,0 +1,11 @@
1
+ import { defineConfig } from "vitest/config";
2
+ import tsconfigPaths from "vite-tsconfig-paths";
3
+ export default defineConfig({
4
+ plugins: [tsconfigPaths()],
5
+ test: {
6
+ name: "node",
7
+ include: ["src/**/*test.?(c|m)[jt]s?(x)"],
8
+ globals: true,
9
+ },
10
+ });
11
+ //# sourceMappingURL=vitest.node.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.node.config.js","sourceRoot":"","sources":["../../vitest.node.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAEhD,eAAe,YAAY,CAAC;IAC1B,OAAO,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,8BAA8B,CAAC;QACzC,OAAO,EAAE,IAAI;KACd;CACF,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("vitest/config.js").WorkspaceProjectConfiguration[];
2
+ export default _default;
3
+ //# sourceMappingURL=vitest.workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.workspace.d.ts","sourceRoot":"","sources":["../../vitest.workspace.ts"],"names":[],"mappings":";AAMA,wBAA2D"}
@@ -0,0 +1,6 @@
1
+ import { defineWorkspace } from "vitest/config";
2
+ import node from "./vitest.node.config.js";
3
+ import browser from "./vitest.browser.config.js";
4
+ import cfRuntime from "./vitest.cf-runtime.config.js";
5
+ export default defineWorkspace([node, browser, cfRuntime]);
6
+ //# sourceMappingURL=vitest.workspace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.workspace.js","sourceRoot":"","sources":["../../vitest.workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,SAAS,MAAM,+BAA+B,CAAC;AAEtD,eAAe,eAAe,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC"}
package/utils/index.cjs CHANGED
@@ -25,6 +25,8 @@ __export(utils_exports, {
25
25
  FanoutWriteStream: () => FanoutWriteStream,
26
26
  array2stream: () => array2stream,
27
27
  devnull: () => devnull,
28
+ getParamsResult: () => getParamsResult,
29
+ param: () => param,
28
30
  rebuffer: () => rebuffer,
29
31
  rebufferArray: () => rebufferArray,
30
32
  stream2array: () => stream2array,
@@ -139,6 +141,9 @@ function pump(ps, controller, next) {
139
141
  ps.tmpLen += value.length;
140
142
  }
141
143
  pump(ps, controller, next);
144
+ }).catch((err) => {
145
+ controller.error(err);
146
+ next();
142
147
  });
143
148
  }
144
149
  function rebuffer(a, chunkSize) {
@@ -254,7 +259,7 @@ var ConsoleWriterStreamDefaultWriter = class {
254
259
  this.ready = Promise.resolve(void 0);
255
260
  this.closed = Promise.resolve(void 0);
256
261
  }
257
- async write(chunk) {
262
+ write(chunk) {
258
263
  let strObj = this.decoder.decode(chunk).trimEnd();
259
264
  let output = "log";
260
265
  try {
@@ -272,6 +277,7 @@ var ConsoleWriterStreamDefaultWriter = class {
272
277
  default:
273
278
  console.log(strObj);
274
279
  }
280
+ return Promise.resolve();
275
281
  }
276
282
  };
277
283
  var ConsoleWriterStream = class {
@@ -282,8 +288,8 @@ var ConsoleWriterStream = class {
282
288
  abort(reason) {
283
289
  throw new Error("Method not implemented.");
284
290
  }
285
- async close() {
286
- return;
291
+ close() {
292
+ return Promise.resolve();
287
293
  }
288
294
  getWriter() {
289
295
  if (this.locked) {
@@ -322,6 +328,145 @@ var FanoutWriteStream = class {
322
328
  });
323
329
  }
324
330
  };
331
+
332
+ // src/result.ts
333
+ var Result = class _Result {
334
+ static Ok(t) {
335
+ return new ResultOK(t);
336
+ }
337
+ static Err(t) {
338
+ if (typeof t === "string") {
339
+ return new ResultError(new Error(t));
340
+ }
341
+ if (_Result.Is(t)) {
342
+ if (t.is_ok()) {
343
+ return new ResultError(new Error("Result Error is Ok"));
344
+ }
345
+ return t;
346
+ }
347
+ return new ResultError(t);
348
+ }
349
+ static Is(t) {
350
+ if (!t) {
351
+ return false;
352
+ }
353
+ if (t instanceof _Result) {
354
+ return true;
355
+ }
356
+ const rt = t;
357
+ if ([typeof rt.is_ok, typeof rt.is_err, typeof rt.unwrap, typeof rt.unwrap_err].every((x) => x === "function")) {
358
+ return true;
359
+ }
360
+ return false;
361
+ }
362
+ isOk() {
363
+ return this.is_ok();
364
+ }
365
+ isErr() {
366
+ return this.is_err();
367
+ }
368
+ Ok() {
369
+ return this.unwrap();
370
+ }
371
+ Err() {
372
+ return this.unwrap_err();
373
+ }
374
+ };
375
+ var ResultOK = class extends Result {
376
+ constructor(t) {
377
+ super();
378
+ this._t = t;
379
+ }
380
+ is_ok() {
381
+ return true;
382
+ }
383
+ is_err() {
384
+ return false;
385
+ }
386
+ unwrap_err() {
387
+ throw new Error("Result is Ok");
388
+ }
389
+ unwrap() {
390
+ return this._t;
391
+ }
392
+ };
393
+ var ResultError = class extends Result {
394
+ constructor(t) {
395
+ super();
396
+ this._error = t;
397
+ }
398
+ is_ok() {
399
+ return false;
400
+ }
401
+ is_err() {
402
+ return true;
403
+ }
404
+ unwrap() {
405
+ throw new Error(`Result is Err: ${this._error}`);
406
+ }
407
+ unwrap_err() {
408
+ return this._error;
409
+ }
410
+ };
411
+
412
+ // src/utils/get-params-result.ts
413
+ var _REQUIRED = class {
414
+ constructor() {
415
+ this.val = "REQUIRED";
416
+ }
417
+ };
418
+ var _OPTIONAL = class {
419
+ constructor() {
420
+ this.val = "OPTIONAL";
421
+ }
422
+ };
423
+ var param = {
424
+ REQUIRED: new _REQUIRED(),
425
+ OPTIONAL: new _OPTIONAL()
426
+ };
427
+ function getParamsResult(keys, getParam) {
428
+ const keyDef = keys.flat().reduce(
429
+ (acc, i) => {
430
+ if (typeof i === "string") {
431
+ acc.push({ key: i, def: void 0, isOptional: false });
432
+ } else if (typeof i === "object") {
433
+ acc.push(
434
+ ...Object.keys(i).map((k) => ({
435
+ key: k,
436
+ def: typeof i[k] === "string" ? i[k] : void 0,
437
+ isOptional: i[k] === param.OPTIONAL
438
+ }))
439
+ );
440
+ }
441
+ return acc;
442
+ },
443
+ []
444
+ );
445
+ const msgFn = keys.find((k) => typeof k === "function") || ((...keys2) => {
446
+ const msg = keys2.join(",");
447
+ return `missing parameters: ${msg}`;
448
+ });
449
+ const errors = [];
450
+ const result = {};
451
+ for (const kd of keyDef) {
452
+ const val = getParam.getParam(kd.key);
453
+ if (val === void 0) {
454
+ if (typeof kd.def === "string") {
455
+ result[kd.key] = kd.def;
456
+ } else {
457
+ if (!kd.isOptional) {
458
+ errors.push(kd.key);
459
+ }
460
+ }
461
+ } else {
462
+ result[kd.key] = val;
463
+ }
464
+ }
465
+ if (errors.length) {
466
+ return Result.Err(msgFn(...errors));
467
+ }
468
+ return Result.Ok(result);
469
+ }
325
470
  // Annotate the CommonJS export names for ESM import in node:
326
471
  0 && (module.exports = {
327
472
  ConsoleWriterStream,
@@ -329,6 +474,8 @@ var FanoutWriteStream = class {
329
474
  FanoutWriteStream,
330
475
  array2stream,
331
476
  devnull,
477
+ getParamsResult,
478
+ param,
332
479
  rebuffer,
333
480
  rebufferArray,
334
481
  stream2array,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/index.ts","../../../src/utils/stream-map.ts","../../../src/utils/rebuffer.ts","../../../src/utils/stream2string.ts","../../../src/txt-en-decoder.ts","../../../src/utils/string2stream.ts","../../../src/utils/console-write-stream.ts","../../../src/utils/fanout-write-stream.ts"],"sourcesContent":["export * from \"./rebuffer.js\";\nexport * from \"./stream-map.js\";\nexport * from \"./stream2string.js\";\nexport * from \"./string2stream.js\";\nexport * from \"./console-write-stream.js\";\nexport * from \"./fanout-write-stream.js\";\n","export interface StreamMap<T, U> {\n Map(s: T, idx: number): U | Promise<U>;\n readonly Close?: () => void;\n}\nexport function streamMap<T, U>(s: ReadableStream<T>, sm: StreamMap<T, U>): ReadableStream<U> {\n const state = { reader: s.getReader(), streamMap: sm, idx: 0 };\n return new ReadableStream<U>({\n async pull(controller): Promise<void> {\n const { done, value } = await state.reader.read();\n if (done) {\n if (state.streamMap.Close) {\n state.streamMap.Close();\n }\n controller.close();\n return;\n }\n const promiseOrU = state.streamMap.Map(value, state.idx++);\n let mapped: U;\n if (promiseOrU instanceof Promise || typeof (promiseOrU as { then: () => void }).then === \"function\") {\n mapped = await promiseOrU;\n } else {\n mapped = promiseOrU;\n }\n controller.enqueue(mapped);\n },\n });\n}\n\nexport async function devnull<T>(a: ReadableStream<T>): Promise<number> {\n const reader = a.getReader();\n let cnt = 0;\n while (true) {\n const { done } = await reader.read();\n if (done) {\n break;\n }\n cnt++;\n }\n return cnt;\n}\n\nexport function array2stream<T>(a: T[]): ReadableStream<T> {\n let i = 0;\n return new ReadableStream<T>({\n pull(controller): void {\n if (i >= a.length) {\n controller.close();\n return;\n }\n controller.enqueue(a[i]);\n i++;\n },\n });\n}\n\nexport async function stream2array<T>(a: ReadableStream<T>): Promise<T[]> {\n const ret: T[] = [];\n const reader = a.getReader();\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n ret.push(value);\n }\n return ret;\n}\n","import { array2stream, stream2array } from \"./stream-map.js\";\n\ninterface ReChunkResult {\n readonly rest: Uint8Array;\n readonly chunk: Uint8Array;\n}\n\nexport async function rebufferArray(a: Uint8Array[], chunkSize: number): Promise<Uint8Array[]> {\n return stream2array(rebuffer(array2stream(a), chunkSize));\n}\n\nfunction reChunk(cs: Uint8Array[], chunkSize: number): ReChunkResult {\n const len = cs.reduce((acc, v) => acc + v.length, 0);\n const last = cs[cs.length - 1];\n const lastOfs = len - last.length;\n // console.log(\"reChunk\", len, lastOfs, last.length, chunkSize, chunkSize - lastOfs)\n const rest = last.subarray(chunkSize - lastOfs);\n cs[cs.length - 1] = last.subarray(0, chunkSize - lastOfs);\n const chunk = new Uint8Array(chunkSize);\n let ofs = 0;\n for (const c of cs) {\n chunk.set(c, ofs);\n ofs += c.length;\n }\n return { rest, chunk };\n}\n\ninterface pumpState {\n readonly reader: ReadableStreamDefaultReader<Uint8Array>;\n tmp: Uint8Array[];\n tmpLen: number;\n readonly chunkSize: number;\n}\n\nfunction pump(ps: pumpState, controller: ReadableStreamDefaultController<Uint8Array>, next: () => void): void {\n ps.reader.read().then(({ done, value }) => {\n if (done) {\n if (ps.tmpLen > 0) {\n controller.enqueue(reChunk(ps.tmp, ps.tmpLen).chunk);\n }\n controller.close();\n next();\n return;\n }\n if (ps.tmpLen + value.length > ps.chunkSize) {\n ps.tmp.push(value);\n const res = reChunk(ps.tmp, ps.chunkSize);\n controller.enqueue(res.chunk);\n ps.tmp = [res.rest];\n ps.tmpLen = res.rest.length;\n next();\n return;\n } else if (value.length) {\n ps.tmp.push(value);\n ps.tmpLen += value.length;\n }\n pump(ps, controller, next);\n });\n}\n\nexport function rebuffer(a: ReadableStream<Uint8Array>, chunkSize: number): ReadableStream<Uint8Array> {\n const state: pumpState = {\n reader: a.getReader(),\n tmp: [],\n tmpLen: 0,\n chunkSize,\n };\n return new ReadableStream<Uint8Array>({\n async pull(controller): Promise<void> {\n return new Promise<void>((resolve) => {\n pump(state, controller, resolve);\n });\n },\n });\n}\n","export async function stream2string(stream?: ReadableStream<Uint8Array> | null, maxSize?: number): Promise<string> {\n if (!stream) {\n return Promise.resolve(\"\");\n }\n const reader = stream.getReader();\n let res = \"\";\n const decoder = new TextDecoder();\n let rSize = 0;\n while (typeof maxSize === \"undefined\" || rSize < maxSize) {\n try {\n const read = await reader.read();\n if (read.done) {\n break;\n }\n if (maxSize && rSize + read.value.length > maxSize) {\n read.value = read.value.slice(0, maxSize - rSize);\n }\n const block = decoder.decode(read.value, { stream: true });\n rSize += read.value.length;\n res += block;\n } catch (err) {\n return Promise.reject(err);\n }\n }\n return Promise.resolve(res);\n}\n\nexport async function stream2uint8array(stream?: ReadableStream<Uint8Array> | null): Promise<Uint8Array> {\n if (!stream) {\n return Promise.resolve(new Uint8Array());\n }\n const reader = stream.getReader();\n let res = new Uint8Array();\n // eslint-disable-next-line no-constant-condition\n while (1) {\n try {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n res = new Uint8Array([...res, ...value]);\n } catch (err) {\n return Promise.reject(err);\n }\n }\n return Promise.resolve(res);\n}\n","export interface TxtEnDecoder {\n encode(str: string): Uint8Array;\n decode(data: Uint8Array): string;\n}\n\nconst encoder = new TextEncoder();\nconst decoder = new TextDecoder();\n\nexport class Utf8EnDecoder implements TxtEnDecoder {\n encode(str: string): Uint8Array {\n return encoder.encode(str);\n }\n decode(data: Uint8Array): string {\n return decoder.decode(data);\n }\n}\n\nconst utf8EnDecoder = new Utf8EnDecoder();\nexport function Utf8EnDecoderSingleton(): TxtEnDecoder {\n return utf8EnDecoder;\n}\n","import { TxtEnDecoder, Utf8EnDecoderSingleton } from \"../txt-en-decoder.js\";\n\nexport function string2stream(str: string, ende: TxtEnDecoder = Utf8EnDecoderSingleton()): ReadableStream<Uint8Array> {\n return uint8array2stream(ende.encode(str));\n}\n\nexport function uint8array2stream(str: Uint8Array): ReadableStream<Uint8Array> {\n return new ReadableStream<Uint8Array>({\n start(controller): void {\n controller.enqueue(str);\n controller.close();\n },\n });\n}\n","export class ConsoleWriterStreamDefaultWriter implements WritableStreamDefaultWriter<Uint8Array> {\n readonly desiredSize: number | null = null;\n readonly decoder: TextDecoder = new TextDecoder();\n\n closed: Promise<undefined>;\n ready: Promise<undefined>;\n readonly _stream: ConsoleWriterStream;\n\n constructor(private stream: ConsoleWriterStream) {\n this._stream = stream;\n this.ready = Promise.resolve(undefined);\n this.closed = Promise.resolve(undefined);\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any\n abort(reason?: any): Promise<void> {\n throw new Error(\"Method not implemented.\");\n }\n async close(): Promise<void> {\n // noop\n }\n releaseLock(): void {\n this._stream.locked = false;\n this.ready = Promise.resolve(undefined);\n this.closed = Promise.resolve(undefined);\n }\n async write(chunk?: Uint8Array | undefined): Promise<void> {\n let strObj: string | { level: string } = this.decoder.decode(chunk).trimEnd();\n let output = \"log\";\n try {\n strObj = JSON.parse(strObj) as { level: string };\n output = strObj.level;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (e) {\n /* noop */\n }\n switch (output) {\n case \"error\":\n // eslint-disable-next-line no-console\n console.error(strObj);\n break;\n case \"warn\":\n // eslint-disable-next-line no-console\n console.warn(strObj);\n break;\n default:\n // eslint-disable-next-line no-console\n console.log(strObj);\n }\n }\n}\n\nexport class ConsoleWriterStream implements WritableStream<Uint8Array> {\n locked = false;\n _writer?: WritableStreamDefaultWriter<Uint8Array>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n abort(reason?: any): Promise<void> {\n throw new Error(\"Method not implemented.\");\n }\n async close(): Promise<void> {\n return;\n }\n getWriter(): WritableStreamDefaultWriter<Uint8Array> {\n if (this.locked) {\n throw new Error(\"Stream is locked\");\n }\n this.locked = true;\n if (!this._writer) {\n this._writer = new ConsoleWriterStreamDefaultWriter(this);\n }\n return this._writer;\n }\n}\n","export class FanoutWriteStream implements WritableStreamDefaultWriter<Uint8Array> {\n readonly _writers: WritableStreamDefaultWriter<Uint8Array>[];\n readonly ready: Promise<undefined>;\n readonly closed: Promise<undefined>;\n readonly desiredSize: number | null = null;\n constructor(writers: WritableStreamDefaultWriter<Uint8Array>[]) {\n this._writers = writers;\n this.ready = Promise.all(this._writers.map((w) => w.ready)).then(() => undefined);\n this.closed = Promise.all(this._writers.map((w) => w.closed)).then(() => undefined);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n abort(reason?: any): Promise<void> {\n return Promise.all(this._writers.map((w) => w.abort(reason))).then(() => {\n /* do nothing */\n });\n }\n close(): Promise<void> {\n return Promise.all(this._writers.map((w) => w.close())).then(() => {\n /* do nothing */\n });\n }\n releaseLock(): void {\n this._writers.map((w) => w.releaseLock());\n }\n\n write(chunk?: Uint8Array | undefined): Promise<void> {\n return Promise.all(this._writers.map((w) => w.write(chunk))).then(() => {\n /* do nothing */\n });\n }\n}\n"],"mappings":"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","names":["decoder"]}
1
+ {"version":3,"sources":["../../../src/utils/index.ts","../../../src/utils/stream-map.ts","../../../src/utils/rebuffer.ts","../../../src/utils/stream2string.ts","../../../src/txt-en-decoder.ts","../../../src/utils/string2stream.ts","../../../src/utils/console-write-stream.ts","../../../src/utils/fanout-write-stream.ts","../../../src/result.ts","../../../src/utils/get-params-result.ts"],"sourcesContent":["export * from \"./rebuffer.js\";\nexport * from \"./stream-map.js\";\nexport * from \"./stream2string.js\";\nexport * from \"./string2stream.js\";\nexport * from \"./console-write-stream.js\";\nexport * from \"./fanout-write-stream.js\";\nexport * from \"./get-params-result.js\";\n","export interface StreamMap<T, U> {\n Map(s: T, idx: number): U | Promise<U>;\n readonly Close?: () => void;\n}\nexport function streamMap<T, U>(s: ReadableStream<T>, sm: StreamMap<T, U>): ReadableStream<U> {\n const state = { reader: s.getReader(), streamMap: sm, idx: 0 };\n return new ReadableStream<U>({\n async pull(controller): Promise<void> {\n const { done, value } = await state.reader.read();\n if (done) {\n if (state.streamMap.Close) {\n state.streamMap.Close();\n }\n controller.close();\n return;\n }\n const promiseOrU = state.streamMap.Map(value, state.idx++);\n let mapped: U;\n if (promiseOrU instanceof Promise || typeof (promiseOrU as { then: () => void }).then === \"function\") {\n mapped = await promiseOrU;\n } else {\n mapped = promiseOrU;\n }\n controller.enqueue(mapped);\n },\n });\n}\n\nexport async function devnull<T>(a: ReadableStream<T>): Promise<number> {\n const reader = a.getReader();\n let cnt = 0;\n while (true) {\n const { done } = await reader.read();\n if (done) {\n break;\n }\n cnt++;\n }\n return cnt;\n}\n\nexport function array2stream<T>(a: T[]): ReadableStream<T> {\n let i = 0;\n return new ReadableStream<T>({\n pull(controller): void {\n if (i >= a.length) {\n controller.close();\n return;\n }\n controller.enqueue(a[i]);\n i++;\n },\n });\n}\n\nexport async function stream2array<T>(a: ReadableStream<T>): Promise<T[]> {\n const ret: T[] = [];\n const reader = a.getReader();\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n ret.push(value);\n }\n return ret;\n}\n","import { array2stream, stream2array } from \"./stream-map.js\";\n\ninterface ReChunkResult {\n readonly rest: Uint8Array;\n readonly chunk: Uint8Array;\n}\n\nexport async function rebufferArray(a: Uint8Array[], chunkSize: number): Promise<Uint8Array[]> {\n return stream2array(rebuffer(array2stream(a), chunkSize));\n}\n\nfunction reChunk(cs: Uint8Array[], chunkSize: number): ReChunkResult {\n const len = cs.reduce((acc, v) => acc + v.length, 0);\n const last = cs[cs.length - 1];\n const lastOfs = len - last.length;\n // console.log(\"reChunk\", len, lastOfs, last.length, chunkSize, chunkSize - lastOfs)\n const rest = last.subarray(chunkSize - lastOfs);\n cs[cs.length - 1] = last.subarray(0, chunkSize - lastOfs);\n const chunk = new Uint8Array(chunkSize);\n let ofs = 0;\n for (const c of cs) {\n chunk.set(c, ofs);\n ofs += c.length;\n }\n return { rest, chunk };\n}\n\ninterface pumpState {\n readonly reader: ReadableStreamDefaultReader<Uint8Array>;\n tmp: Uint8Array[];\n tmpLen: number;\n readonly chunkSize: number;\n}\n\nfunction pump(ps: pumpState, controller: ReadableStreamDefaultController<Uint8Array>, next: () => void): void {\n ps.reader\n .read()\n .then(({ done, value }) => {\n if (done) {\n if (ps.tmpLen > 0) {\n controller.enqueue(reChunk(ps.tmp, ps.tmpLen).chunk);\n }\n controller.close();\n next();\n return;\n }\n if (ps.tmpLen + value.length > ps.chunkSize) {\n ps.tmp.push(value);\n const res = reChunk(ps.tmp, ps.chunkSize);\n controller.enqueue(res.chunk);\n ps.tmp = [res.rest];\n ps.tmpLen = res.rest.length;\n next();\n return;\n } else if (value.length) {\n ps.tmp.push(value);\n ps.tmpLen += value.length;\n }\n pump(ps, controller, next);\n })\n .catch((err) => {\n controller.error(err);\n next();\n });\n}\n\nexport function rebuffer(a: ReadableStream<Uint8Array>, chunkSize: number): ReadableStream<Uint8Array> {\n const state: pumpState = {\n reader: a.getReader(),\n tmp: [],\n tmpLen: 0,\n chunkSize,\n };\n return new ReadableStream<Uint8Array>({\n async pull(controller): Promise<void> {\n return new Promise<void>((resolve) => {\n pump(state, controller, resolve);\n });\n },\n });\n}\n","export async function stream2string(stream?: ReadableStream<Uint8Array> | null, maxSize?: number): Promise<string> {\n if (!stream) {\n return Promise.resolve(\"\");\n }\n const reader = stream.getReader();\n let res = \"\";\n const decoder = new TextDecoder();\n let rSize = 0;\n while (typeof maxSize === \"undefined\" || rSize < maxSize) {\n try {\n const read = await reader.read();\n if (read.done) {\n break;\n }\n if (maxSize && rSize + read.value.length > maxSize) {\n read.value = read.value.slice(0, maxSize - rSize);\n }\n const block = decoder.decode(read.value, { stream: true });\n rSize += read.value.length;\n res += block;\n } catch (err) {\n return Promise.reject(err as Error);\n }\n }\n return Promise.resolve(res);\n}\n\nexport async function stream2uint8array(stream?: ReadableStream<Uint8Array> | null): Promise<Uint8Array> {\n if (!stream) {\n return Promise.resolve(new Uint8Array());\n }\n const reader = stream.getReader();\n let res = new Uint8Array();\n // eslint-disable-next-line no-constant-condition\n while (1) {\n try {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n res = new Uint8Array([...res, ...value]);\n } catch (err) {\n return Promise.reject(err as Error);\n }\n }\n return Promise.resolve(res);\n}\n","export interface TxtEnDecoder {\n encode(str: string): Uint8Array;\n decode(data: Uint8Array): string;\n}\n\nconst encoder = new TextEncoder();\nconst decoder = new TextDecoder();\n\nexport class Utf8EnDecoder implements TxtEnDecoder {\n encode(str: string): Uint8Array {\n return encoder.encode(str);\n }\n decode(data: Uint8Array): string {\n return decoder.decode(data);\n }\n}\n\nconst utf8EnDecoder = new Utf8EnDecoder();\nexport function Utf8EnDecoderSingleton(): TxtEnDecoder {\n return utf8EnDecoder;\n}\n","import { TxtEnDecoder, Utf8EnDecoderSingleton } from \"../txt-en-decoder.js\";\n\nexport function string2stream(str: string, ende: TxtEnDecoder = Utf8EnDecoderSingleton()): ReadableStream<Uint8Array> {\n return uint8array2stream(ende.encode(str));\n}\n\nexport function uint8array2stream(str: Uint8Array): ReadableStream<Uint8Array> {\n return new ReadableStream<Uint8Array>({\n start(controller): void {\n controller.enqueue(str);\n controller.close();\n },\n });\n}\n","export class ConsoleWriterStreamDefaultWriter implements WritableStreamDefaultWriter<Uint8Array> {\n readonly desiredSize: number | null = null;\n readonly decoder: TextDecoder = new TextDecoder();\n\n closed: Promise<undefined>;\n ready: Promise<undefined>;\n readonly _stream: ConsoleWriterStream;\n\n constructor(private stream: ConsoleWriterStream) {\n this._stream = stream;\n this.ready = Promise.resolve(undefined);\n this.closed = Promise.resolve(undefined);\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any\n abort(reason?: any): Promise<void> {\n throw new Error(\"Method not implemented.\");\n }\n async close(): Promise<void> {\n // noop\n }\n releaseLock(): void {\n this._stream.locked = false;\n this.ready = Promise.resolve(undefined);\n this.closed = Promise.resolve(undefined);\n }\n write(chunk?: Uint8Array): Promise<void> {\n let strObj: string | { level: string } = this.decoder.decode(chunk).trimEnd();\n let output = \"log\";\n try {\n strObj = JSON.parse(strObj) as { level: string };\n output = strObj.level;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n } catch (e) {\n /* noop */\n }\n switch (output) {\n case \"error\":\n // eslint-disable-next-line no-console\n console.error(strObj);\n break;\n case \"warn\":\n // eslint-disable-next-line no-console\n console.warn(strObj);\n break;\n default:\n // eslint-disable-next-line no-console\n console.log(strObj);\n }\n return Promise.resolve();\n }\n}\n\nexport class ConsoleWriterStream implements WritableStream<Uint8Array> {\n locked = false;\n _writer?: WritableStreamDefaultWriter<Uint8Array>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n abort(reason?: any): Promise<void> {\n throw new Error(\"Method not implemented.\");\n }\n close(): Promise<void> {\n return Promise.resolve();\n }\n getWriter(): WritableStreamDefaultWriter<Uint8Array> {\n if (this.locked) {\n throw new Error(\"Stream is locked\");\n }\n this.locked = true;\n if (!this._writer) {\n this._writer = new ConsoleWriterStreamDefaultWriter(this);\n }\n return this._writer;\n }\n}\n","export class FanoutWriteStream implements WritableStreamDefaultWriter<Uint8Array> {\n readonly _writers: WritableStreamDefaultWriter<Uint8Array>[];\n readonly ready: Promise<undefined>;\n readonly closed: Promise<undefined>;\n readonly desiredSize: number | null = null;\n constructor(writers: WritableStreamDefaultWriter<Uint8Array>[]) {\n this._writers = writers;\n this.ready = Promise.all(this._writers.map((w) => w.ready)).then(() => undefined);\n this.closed = Promise.all(this._writers.map((w) => w.closed)).then(() => undefined);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n abort(reason?: any): Promise<void> {\n return Promise.all(this._writers.map((w) => w.abort(reason))).then(() => {\n /* do nothing */\n });\n }\n close(): Promise<void> {\n return Promise.all(this._writers.map((w) => w.close())).then(() => {\n /* do nothing */\n });\n }\n releaseLock(): void {\n this._writers.map((w) => w.releaseLock());\n }\n\n write(chunk?: Uint8Array): Promise<void> {\n return Promise.all(this._writers.map((w) => w.write(chunk))).then(() => {\n /* do nothing */\n });\n }\n}\n","export abstract class Result<T, E = Error> {\n static Ok<T = void>(t: T): Result<T, Error> {\n return new ResultOK(t);\n }\n static Err<T, E extends Error = Error>(t: E | string | Result<unknown, E>): Result<T, E> {\n if (typeof t === \"string\") {\n return new ResultError(new Error(t) as E);\n }\n if (Result.Is(t)) {\n if (t.is_ok()) {\n return new ResultError(new Error(\"Result Error is Ok\") as E);\n }\n return t as Result<T, E>;\n }\n return new ResultError(t);\n }\n static Is<T>(t: unknown): t is Result<T> {\n if (!t) {\n return false;\n }\n if (t instanceof Result) {\n return true;\n }\n const rt = t as Result<T>;\n if ([typeof rt.is_ok, typeof rt.is_err, typeof rt.unwrap, typeof rt.unwrap_err].every((x) => x === \"function\")) {\n return true;\n }\n return false;\n }\n\n isOk(): boolean {\n return this.is_ok();\n }\n isErr(): boolean {\n return this.is_err();\n }\n\n Ok(): T {\n return this.unwrap();\n }\n Err(): E {\n return this.unwrap_err();\n }\n\n abstract is_ok(): boolean;\n abstract is_err(): boolean;\n abstract unwrap(): T;\n abstract unwrap_err(): E;\n}\n\nexport class ResultOK<T> extends Result<T, Error> {\n private _t: T;\n constructor(t: T) {\n super();\n this._t = t;\n }\n is_ok(): boolean {\n return true;\n }\n is_err(): boolean {\n return false;\n }\n unwrap_err(): Error {\n throw new Error(\"Result is Ok\");\n }\n unwrap(): T {\n return this._t;\n }\n}\n\nexport class ResultError<T extends Error> extends Result<never, T> {\n private _error: T;\n constructor(t: T) {\n super();\n this._error = t;\n }\n is_ok(): boolean {\n return false;\n }\n is_err(): boolean {\n return true;\n }\n unwrap(): never {\n throw new Error(`Result is Err: ${this._error}`);\n }\n unwrap_err(): T {\n return this._error;\n }\n}\n\nexport type WithoutResult<T> = T extends Result<infer U> ? U : T;\n\n// type WithoutPromise<T> = T extends Promise<infer U> ? U : T;\ntype WithResult<T> = T extends Promise<infer U> ? Promise<Result<U>> : Result<T>;\n\nexport function exception2Result<FN extends () => Promise<T> | T, T>(fn: FN): WithResult<ReturnType<FN>> {\n try {\n const res = fn();\n if (res instanceof Promise) {\n return res.then((value) => Result.Ok(value)).catch((e) => Result.Err(e)) as WithResult<ReturnType<FN>>;\n }\n return Result.Ok(res) as WithResult<ReturnType<FN>>;\n } catch (e) {\n return Result.Err(e as Error) as WithResult<ReturnType<FN>>;\n }\n}\n\n/*\n\ntype FinalizedResult<T> = {\n result: T;\n scopeResult?: Result<void>;\n finally: () => Promise<void>;\n}\n\ntype exection2ResultParam<T> = {\n init: () => Promise<T>;\n inScope?: (t: T) => Promise<void>;\n cleanup: (t: T) => Promise<void>;\n\n}\n\nasync function expection2Result<T>({fn, inScope, cleanup}: exection2ResultParam<T>): Promise<Result<FinalizedResult<T>>> {\n try {\n const res = await fn();\n if (inScope) {\n try {\n await inScope?.(res)\n } catch (err) {\n return Result.Err(err as Error)\n }\n await cleanup(res)\n return Result.Ok({\n result: res,\n finally: async () => { }\n })\n }\n return Result.Ok({\n result: res ,\n finally: async () => {\n return cleanup(res)\n }\n })\n } catch (err) {\n return Result.Err(err as Error)\n }\n}\n*/\n\n// await expection2Result({\n// init: openDB,\n// inScope: (res) => {\n// res.query()\n// },\n// cleanup: async (y) => {\n// await y.close()\n// }\n// })\n// async function openDB() {\n// try {\n// const opendb = await openDB()\n// return Result.Ok({\n// openDB,\n// finally: async () => {\n// await opendb.close()\n// }})\n// } catch (err) {\n// return Result.Err(err)\n// }\n// }\n// }\n","import { Result } from \"../result.js\";\n\nclass _REQUIRED {\n readonly val = \"REQUIRED\";\n}\nclass _OPTIONAL {\n readonly val = \"OPTIONAL\";\n}\n\nexport interface Param {\n readonly REQUIRED: _REQUIRED;\n readonly OPTIONAL: _OPTIONAL;\n}\n\nexport const param: Param = {\n REQUIRED: new _REQUIRED(),\n OPTIONAL: new _OPTIONAL(),\n};\n\nexport type MsgFn = (...keys: string[]) => string;\nexport type KeysParam = (string | MsgFn | Record<string, _REQUIRED | _OPTIONAL | number | string | boolean | undefined | null>)[];\n\nexport function getParamsResult(\n keys: KeysParam,\n getParam: { getParam: (key: string) => string | undefined },\n): Result<Record<string, string>> {\n const keyDef = keys.flat().reduce(\n (acc, i) => {\n if (typeof i === \"string\") {\n acc.push({ key: i, def: undefined, isOptional: false });\n } else if (typeof i === \"object\") {\n acc.push(\n ...Object.keys(i).map((k) => ({\n key: k,\n def: typeof i[k] === \"string\" ? i[k] : undefined,\n isOptional: i[k] === param.OPTIONAL,\n })),\n );\n }\n return acc;\n },\n [] as { key: string; def?: string; isOptional: boolean }[],\n );\n //.filter((k) => typeof k === \"string\");\n const msgFn =\n keys.find((k) => typeof k === \"function\") ||\n ((...keys: string[]): string => {\n const msg = keys.join(\",\");\n return `missing parameters: ${msg}`;\n });\n const errors: string[] = [];\n const result: Record<string, string> = {};\n for (const kd of keyDef) {\n const val = getParam.getParam(kd.key);\n if (val === undefined) {\n if (typeof kd.def === \"string\") {\n result[kd.key] = kd.def;\n } else {\n if (!kd.isOptional) {\n errors.push(kd.key);\n }\n }\n } else {\n result[kd.key] = val;\n }\n }\n if (errors.length) {\n return Result.Err(msgFn(...errors));\n }\n return Result.Ok(result);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACIO,SAAS,UAAgB,GAAsB,IAAwC;AAC5F,QAAM,QAAQ,EAAE,QAAQ,EAAE,UAAU,GAAG,WAAW,IAAI,KAAK,EAAE;AAC7D,SAAO,IAAI,eAAkB;AAAA,IAC3B,MAAM,KAAK,YAA2B;AACpC,YAAM,EAAE,MAAM,MAAM,IAAI,MAAM,MAAM,OAAO,KAAK;AAChD,UAAI,MAAM;AACR,YAAI,MAAM,UAAU,OAAO;AACzB,gBAAM,UAAU,MAAM;AAAA,QACxB;AACA,mBAAW,MAAM;AACjB;AAAA,MACF;AACA,YAAM,aAAa,MAAM,UAAU,IAAI,OAAO,MAAM,KAAK;AACzD,UAAI;AACJ,UAAI,sBAAsB,WAAW,OAAQ,WAAoC,SAAS,YAAY;AACpG,iBAAS,MAAM;AAAA,MACjB,OAAO;AACL,iBAAS;AAAA,MACX;AACA,iBAAW,QAAQ,MAAM;AAAA,IAC3B;AAAA,EACF,CAAC;AACH;AAEA,eAAsB,QAAW,GAAuC;AACtE,QAAM,SAAS,EAAE,UAAU;AAC3B,MAAI,MAAM;AACV,SAAO,MAAM;AACX,UAAM,EAAE,KAAK,IAAI,MAAM,OAAO,KAAK;AACnC,QAAI,MAAM;AACR;AAAA,IACF;AACA;AAAA,EACF;AACA,SAAO;AACT;AAEO,SAAS,aAAgB,GAA2B;AACzD,MAAI,IAAI;AACR,SAAO,IAAI,eAAkB;AAAA,IAC3B,KAAK,YAAkB;AACrB,UAAI,KAAK,EAAE,QAAQ;AACjB,mBAAW,MAAM;AACjB;AAAA,MACF;AACA,iBAAW,QAAQ,EAAE,CAAC,CAAC;AACvB;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEA,eAAsB,aAAgB,GAAoC;AACxE,QAAM,MAAW,CAAC;AAClB,QAAM,SAAS,EAAE,UAAU;AAC3B,SAAO,MAAM;AACX,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,QAAI,MAAM;AACR;AAAA,IACF;AACA,QAAI,KAAK,KAAK;AAAA,EAChB;AACA,SAAO;AACT;;;AC3DA,eAAsB,cAAc,GAAiB,WAA0C;AAC7F,SAAO,aAAa,SAAS,aAAa,CAAC,GAAG,SAAS,CAAC;AAC1D;AAEA,SAAS,QAAQ,IAAkB,WAAkC;AACnE,QAAM,MAAM,GAAG,OAAO,CAAC,KAAK,MAAM,MAAM,EAAE,QAAQ,CAAC;AACnD,QAAM,OAAO,GAAG,GAAG,SAAS,CAAC;AAC7B,QAAM,UAAU,MAAM,KAAK;AAE3B,QAAM,OAAO,KAAK,SAAS,YAAY,OAAO;AAC9C,KAAG,GAAG,SAAS,CAAC,IAAI,KAAK,SAAS,GAAG,YAAY,OAAO;AACxD,QAAM,QAAQ,IAAI,WAAW,SAAS;AACtC,MAAI,MAAM;AACV,aAAW,KAAK,IAAI;AAClB,UAAM,IAAI,GAAG,GAAG;AAChB,WAAO,EAAE;AAAA,EACX;AACA,SAAO,EAAE,MAAM,MAAM;AACvB;AASA,SAAS,KAAK,IAAe,YAAyD,MAAwB;AAC5G,KAAG,OACA,KAAK,EACL,KAAK,CAAC,EAAE,MAAM,MAAM,MAAM;AACzB,QAAI,MAAM;AACR,UAAI,GAAG,SAAS,GAAG;AACjB,mBAAW,QAAQ,QAAQ,GAAG,KAAK,GAAG,MAAM,EAAE,KAAK;AAAA,MACrD;AACA,iBAAW,MAAM;AACjB,WAAK;AACL;AAAA,IACF;AACA,QAAI,GAAG,SAAS,MAAM,SAAS,GAAG,WAAW;AAC3C,SAAG,IAAI,KAAK,KAAK;AACjB,YAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,SAAS;AACxC,iBAAW,QAAQ,IAAI,KAAK;AAC5B,SAAG,MAAM,CAAC,IAAI,IAAI;AAClB,SAAG,SAAS,IAAI,KAAK;AACrB,WAAK;AACL;AAAA,IACF,WAAW,MAAM,QAAQ;AACvB,SAAG,IAAI,KAAK,KAAK;AACjB,SAAG,UAAU,MAAM;AAAA,IACrB;AACA,SAAK,IAAI,YAAY,IAAI;AAAA,EAC3B,CAAC,EACA,MAAM,CAAC,QAAQ;AACd,eAAW,MAAM,GAAG;AACpB,SAAK;AAAA,EACP,CAAC;AACL;AAEO,SAAS,SAAS,GAA+B,WAA+C;AACrG,QAAM,QAAmB;AAAA,IACvB,QAAQ,EAAE,UAAU;AAAA,IACpB,KAAK,CAAC;AAAA,IACN,QAAQ;AAAA,IACR;AAAA,EACF;AACA,SAAO,IAAI,eAA2B;AAAA,IACpC,MAAM,KAAK,YAA2B;AACpC,aAAO,IAAI,QAAc,CAAC,YAAY;AACpC,aAAK,OAAO,YAAY,OAAO;AAAA,MACjC,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AACH;;;AChFA,eAAsB,cAAc,QAA4C,SAAmC;AACjH,MAAI,CAAC,QAAQ;AACX,WAAO,QAAQ,QAAQ,EAAE;AAAA,EAC3B;AACA,QAAM,SAAS,OAAO,UAAU;AAChC,MAAI,MAAM;AACV,QAAMA,WAAU,IAAI,YAAY;AAChC,MAAI,QAAQ;AACZ,SAAO,OAAO,YAAY,eAAe,QAAQ,SAAS;AACxD,QAAI;AACF,YAAM,OAAO,MAAM,OAAO,KAAK;AAC/B,UAAI,KAAK,MAAM;AACb;AAAA,MACF;AACA,UAAI,WAAW,QAAQ,KAAK,MAAM,SAAS,SAAS;AAClD,aAAK,QAAQ,KAAK,MAAM,MAAM,GAAG,UAAU,KAAK;AAAA,MAClD;AACA,YAAM,QAAQA,SAAQ,OAAO,KAAK,OAAO,EAAE,QAAQ,KAAK,CAAC;AACzD,eAAS,KAAK,MAAM;AACpB,aAAO;AAAA,IACT,SAAS,KAAK;AACZ,aAAO,QAAQ,OAAO,GAAY;AAAA,IACpC;AAAA,EACF;AACA,SAAO,QAAQ,QAAQ,GAAG;AAC5B;AAEA,eAAsB,kBAAkB,QAAiE;AACvG,MAAI,CAAC,QAAQ;AACX,WAAO,QAAQ,QAAQ,IAAI,WAAW,CAAC;AAAA,EACzC;AACA,QAAM,SAAS,OAAO,UAAU;AAChC,MAAI,MAAM,IAAI,WAAW;AAEzB,SAAO,GAAG;AACR,QAAI;AACF,YAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,UAAI,MAAM;AACR;AAAA,MACF;AACA,YAAM,IAAI,WAAW,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC;AAAA,IACzC,SAAS,KAAK;AACZ,aAAO,QAAQ,OAAO,GAAY;AAAA,IACpC;AAAA,EACF;AACA,SAAO,QAAQ,QAAQ,GAAG;AAC5B;;;ACzCA,IAAM,UAAU,IAAI,YAAY;AAChC,IAAM,UAAU,IAAI,YAAY;AAEzB,IAAM,gBAAN,MAA4C;AAAA,EACjD,OAAO,KAAyB;AAC9B,WAAO,QAAQ,OAAO,GAAG;AAAA,EAC3B;AAAA,EACA,OAAO,MAA0B;AAC/B,WAAO,QAAQ,OAAO,IAAI;AAAA,EAC5B;AACF;AAEA,IAAM,gBAAgB,IAAI,cAAc;AACjC,SAAS,yBAAuC;AACrD,SAAO;AACT;;;AClBO,SAAS,cAAc,KAAa,OAAqB,uBAAuB,GAA+B;AACpH,SAAO,kBAAkB,KAAK,OAAO,GAAG,CAAC;AAC3C;AAEO,SAAS,kBAAkB,KAA6C;AAC7E,SAAO,IAAI,eAA2B;AAAA,IACpC,MAAM,YAAkB;AACtB,iBAAW,QAAQ,GAAG;AACtB,iBAAW,MAAM;AAAA,IACnB;AAAA,EACF,CAAC;AACH;;;ACbO,IAAM,mCAAN,MAA0F;AAAA,EAQ/F,YAAoB,QAA6B;AAA7B;AAPpB,SAAS,cAA6B;AACtC,SAAS,UAAuB,IAAI,YAAY;AAO9C,SAAK,UAAU;AACf,SAAK,QAAQ,QAAQ,QAAQ,MAAS;AACtC,SAAK,SAAS,QAAQ,QAAQ,MAAS;AAAA,EACzC;AAAA;AAAA,EAEA,MAAM,QAA6B;AACjC,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EACA,MAAM,QAAuB;AAAA,EAE7B;AAAA,EACA,cAAoB;AAClB,SAAK,QAAQ,SAAS;AACtB,SAAK,QAAQ,QAAQ,QAAQ,MAAS;AACtC,SAAK,SAAS,QAAQ,QAAQ,MAAS;AAAA,EACzC;AAAA,EACA,MAAM,OAAmC;AACvC,QAAI,SAAqC,KAAK,QAAQ,OAAO,KAAK,EAAE,QAAQ;AAC5E,QAAI,SAAS;AACb,QAAI;AACF,eAAS,KAAK,MAAM,MAAM;AAC1B,eAAS,OAAO;AAAA,IAElB,SAAS,GAAG;AAAA,IAEZ;AACA,YAAQ,QAAQ;AAAA,MACd,KAAK;AAEH,gBAAQ,MAAM,MAAM;AACpB;AAAA,MACF,KAAK;AAEH,gBAAQ,KAAK,MAAM;AACnB;AAAA,MACF;AAEE,gBAAQ,IAAI,MAAM;AAAA,IACtB;AACA,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;AAEO,IAAM,sBAAN,MAAgE;AAAA,EAAhE;AACL,kBAAS;AAAA;AAAA;AAAA,EAGT,MAAM,QAA6B;AACjC,UAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EACA,QAAuB;AACrB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EACA,YAAqD;AACnD,QAAI,KAAK,QAAQ;AACf,YAAM,IAAI,MAAM,kBAAkB;AAAA,IACpC;AACA,SAAK,SAAS;AACd,QAAI,CAAC,KAAK,SAAS;AACjB,WAAK,UAAU,IAAI,iCAAiC,IAAI;AAAA,IAC1D;AACA,WAAO,KAAK;AAAA,EACd;AACF;;;ACxEO,IAAM,oBAAN,MAA2E;AAAA,EAKhF,YAAY,SAAoD;AADhE,SAAS,cAA6B;AAEpC,SAAK,WAAW;AAChB,SAAK,QAAQ,QAAQ,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,MAAM,MAAS;AAChF,SAAK,SAAS,QAAQ,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,MAAM,MAAS;AAAA,EACpF;AAAA;AAAA,EAGA,MAAM,QAA6B;AACjC,WAAO,QAAQ,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,EAAE,KAAK,MAAM;AAAA,IAEzE,CAAC;AAAA,EACH;AAAA,EACA,QAAuB;AACrB,WAAO,QAAQ,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,MAAM;AAAA,IAEnE,CAAC;AAAA,EACH;AAAA,EACA,cAAoB;AAClB,SAAK,SAAS,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC;AAAA,EAC1C;AAAA,EAEA,MAAM,OAAmC;AACvC,WAAO,QAAQ,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC,EAAE,KAAK,MAAM;AAAA,IAExE,CAAC;AAAA,EACH;AACF;;;AC/BO,IAAe,SAAf,MAAe,QAAqB;AAAA,EACzC,OAAO,GAAa,GAAwB;AAC1C,WAAO,IAAI,SAAS,CAAC;AAAA,EACvB;AAAA,EACA,OAAO,IAAgC,GAAkD;AACvF,QAAI,OAAO,MAAM,UAAU;AACzB,aAAO,IAAI,YAAY,IAAI,MAAM,CAAC,CAAM;AAAA,IAC1C;AACA,QAAI,QAAO,GAAG,CAAC,GAAG;AAChB,UAAI,EAAE,MAAM,GAAG;AACb,eAAO,IAAI,YAAY,IAAI,MAAM,oBAAoB,CAAM;AAAA,MAC7D;AACA,aAAO;AAAA,IACT;AACA,WAAO,IAAI,YAAY,CAAC;AAAA,EAC1B;AAAA,EACA,OAAO,GAAM,GAA4B;AACvC,QAAI,CAAC,GAAG;AACN,aAAO;AAAA,IACT;AACA,QAAI,aAAa,SAAQ;AACvB,aAAO;AAAA,IACT;AACA,UAAM,KAAK;AACX,QAAI,CAAC,OAAO,GAAG,OAAO,OAAO,GAAG,QAAQ,OAAO,GAAG,QAAQ,OAAO,GAAG,UAAU,EAAE,MAAM,CAAC,MAAM,MAAM,UAAU,GAAG;AAC9G,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAgB;AACd,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA,EACA,QAAiB;AACf,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA,EAEA,KAAQ;AACN,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA,EACA,MAAS;AACP,WAAO,KAAK,WAAW;AAAA,EACzB;AAMF;AAEO,IAAM,WAAN,cAA0B,OAAiB;AAAA,EAEhD,YAAY,GAAM;AAChB,UAAM;AACN,SAAK,KAAK;AAAA,EACZ;AAAA,EACA,QAAiB;AACf,WAAO;AAAA,EACT;AAAA,EACA,SAAkB;AAChB,WAAO;AAAA,EACT;AAAA,EACA,aAAoB;AAClB,UAAM,IAAI,MAAM,cAAc;AAAA,EAChC;AAAA,EACA,SAAY;AACV,WAAO,KAAK;AAAA,EACd;AACF;AAEO,IAAM,cAAN,cAA2C,OAAiB;AAAA,EAEjE,YAAY,GAAM;AAChB,UAAM;AACN,SAAK,SAAS;AAAA,EAChB;AAAA,EACA,QAAiB;AACf,WAAO;AAAA,EACT;AAAA,EACA,SAAkB;AAChB,WAAO;AAAA,EACT;AAAA,EACA,SAAgB;AACd,UAAM,IAAI,MAAM,kBAAkB,KAAK,MAAM,EAAE;AAAA,EACjD;AAAA,EACA,aAAgB;AACd,WAAO,KAAK;AAAA,EACd;AACF;;;ACtFA,IAAM,YAAN,MAAgB;AAAA,EAAhB;AACE,SAAS,MAAM;AAAA;AACjB;AACA,IAAM,YAAN,MAAgB;AAAA,EAAhB;AACE,SAAS,MAAM;AAAA;AACjB;AAOO,IAAM,QAAe;AAAA,EAC1B,UAAU,IAAI,UAAU;AAAA,EACxB,UAAU,IAAI,UAAU;AAC1B;AAKO,SAAS,gBACd,MACA,UACgC;AAChC,QAAM,SAAS,KAAK,KAAK,EAAE;AAAA,IACzB,CAAC,KAAK,MAAM;AACV,UAAI,OAAO,MAAM,UAAU;AACzB,YAAI,KAAK,EAAE,KAAK,GAAG,KAAK,QAAW,YAAY,MAAM,CAAC;AAAA,MACxD,WAAW,OAAO,MAAM,UAAU;AAChC,YAAI;AAAA,UACF,GAAG,OAAO,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO;AAAA,YAC5B,KAAK;AAAA,YACL,KAAK,OAAO,EAAE,CAAC,MAAM,WAAW,EAAE,CAAC,IAAI;AAAA,YACvC,YAAY,EAAE,CAAC,MAAM,MAAM;AAAA,UAC7B,EAAE;AAAA,QACJ;AAAA,MACF;AACA,aAAO;AAAA,IACT;AAAA,IACA,CAAC;AAAA,EACH;AAEA,QAAM,QACJ,KAAK,KAAK,CAAC,MAAM,OAAO,MAAM,UAAU,MACvC,IAAIC,UAA2B;AAC9B,UAAM,MAAMA,MAAK,KAAK,GAAG;AACzB,WAAO,uBAAuB,GAAG;AAAA,EACnC;AACF,QAAM,SAAmB,CAAC;AAC1B,QAAM,SAAiC,CAAC;AACxC,aAAW,MAAM,QAAQ;AACvB,UAAM,MAAM,SAAS,SAAS,GAAG,GAAG;AACpC,QAAI,QAAQ,QAAW;AACrB,UAAI,OAAO,GAAG,QAAQ,UAAU;AAC9B,eAAO,GAAG,GAAG,IAAI,GAAG;AAAA,MACtB,OAAO;AACL,YAAI,CAAC,GAAG,YAAY;AAClB,iBAAO,KAAK,GAAG,GAAG;AAAA,QACpB;AAAA,MACF;AAAA,IACF,OAAO;AACL,aAAO,GAAG,GAAG,IAAI;AAAA,IACnB;AAAA,EACF;AACA,MAAI,OAAO,QAAQ;AACjB,WAAO,OAAO,IAAI,MAAM,GAAG,MAAM,CAAC;AAAA,EACpC;AACA,SAAO,OAAO,GAAG,MAAM;AACzB;","names":["decoder","keys"]}
package/utils/index.d.cts CHANGED
@@ -1,2 +1,2 @@
1
- export { h as ConsoleWriterStream, C as ConsoleWriterStreamDefaultWriter, F as FanoutWriteStream, S as StreamMap, b as array2stream, d as devnull, a as rebuffer, r as rebufferArray, c as stream2array, e as stream2string, f as stream2uint8array, s as streamMap, g as string2stream, u as uint8array2stream } from '../index-Q3phXzYr.cjs';
2
- import '../txt-en-decoder-CZYJUju2.cjs';
1
+ export { i as ConsoleWriterStream, C as ConsoleWriterStreamDefaultWriter, F as FanoutWriteStream, S as StreamMap, b as array2stream, d as devnull, a as rebuffer, r as rebufferArray, c as stream2array, e as stream2string, f as stream2uint8array, s as streamMap, g as string2stream, h as uint8array2stream } from '../index-BMCdndbY.cjs';
2
+ export { K as KeysParam, M as MsgFn, P as Param, g as getParamsResult, p as param } from '../get-params-result-Bhy5997x.cjs';
package/utils/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export { h as ConsoleWriterStream, C as ConsoleWriterStreamDefaultWriter, F as FanoutWriteStream, S as StreamMap, b as array2stream, d as devnull, a as rebuffer, r as rebufferArray, c as stream2array, e as stream2string, f as stream2uint8array, s as streamMap, g as string2stream, u as uint8array2stream } from '../index-tIGZMHTc.js';
2
- import '../txt-en-decoder-CZYJUju2.js';
1
+ export { i as ConsoleWriterStream, C as ConsoleWriterStreamDefaultWriter, F as FanoutWriteStream, S as StreamMap, b as array2stream, d as devnull, a as rebuffer, r as rebufferArray, c as stream2array, e as stream2string, f as stream2uint8array, s as streamMap, g as string2stream, h as uint8array2stream } from '../index-IrV5jK1W.js';
2
+ export { K as KeysParam, M as MsgFn, P as Param, g as getParamsResult, p as param } from '../get-params-result-Bhy5997x.js';
package/utils/index.js CHANGED
@@ -9,19 +9,24 @@ import {
9
9
  streamMap,
10
10
  string2stream,
11
11
  uint8array2stream
12
- } from "../chunk-A7OPSHUV.js";
12
+ } from "../chunk-LRJXXDF5.js";
13
13
  import {
14
14
  ConsoleWriterStream,
15
15
  ConsoleWriterStreamDefaultWriter,
16
16
  FanoutWriteStream
17
- } from "../chunk-HFP74WLI.js";
18
- import "../chunk-PPS4L4VW.js";
17
+ } from "../chunk-4U6TAOIU.js";
18
+ import {
19
+ getParamsResult,
20
+ param
21
+ } from "../chunk-QDDO6NOK.js";
19
22
  export {
20
23
  ConsoleWriterStream,
21
24
  ConsoleWriterStreamDefaultWriter,
22
25
  FanoutWriteStream,
23
26
  array2stream,
24
27
  devnull,
28
+ getParamsResult,
29
+ param,
25
30
  rebuffer,
26
31
  rebufferArray,
27
32
  stream2array,
package/web/index.cjs CHANGED
@@ -161,13 +161,15 @@ var BaseSysAbstraction = class {
161
161
  this._systemService = params.SystemService;
162
162
  this._txtEnDe = params.TxtEnDecoder;
163
163
  const decoder2 = this._txtEnDe;
164
- this._stdout = CFWriteableStream(async (chunk) => {
164
+ this._stdout = CFWriteableStream((chunk) => {
165
165
  const decoded = decoder2.decode(chunk);
166
166
  console.log(decoded.trimEnd());
167
+ return Promise.resolve();
167
168
  });
168
- this._stderr = CFWriteableStream(async (chunk) => {
169
+ this._stderr = CFWriteableStream((chunk) => {
169
170
  const decoded = decoder2.decode(chunk);
170
171
  console.error(decoded.trimEnd());
172
+ return Promise.resolve();
171
173
  });
172
174
  }
173
175
  };
@@ -384,7 +386,10 @@ function isSet(value, ref = globalThis) {
384
386
  }
385
387
  function runtimeFn() {
386
388
  const gt = globalThis;
387
- let isReactNative = isSet("navigator.product") && typeof gt["navigator"] === "object" && gt["navigator"]["product"] === "ReactNative";
389
+ let isReactNative = (
390
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
391
+ isSet("navigator.product") && typeof gt["navigator"] === "object" && gt["navigator"]["product"] === "ReactNative"
392
+ );
388
393
  let isNodeIsh = false;
389
394
  if (!isSet("Deno")) {
390
395
  isNodeIsh = isSet("process.versions.node") && !isReactNative;
@@ -569,6 +574,145 @@ var CFEnvActions = class _CFEnvActions {
569
574
  }
570
575
  };
571
576
 
577
+ // src/result.ts
578
+ var Result = class _Result {
579
+ static Ok(t) {
580
+ return new ResultOK(t);
581
+ }
582
+ static Err(t) {
583
+ if (typeof t === "string") {
584
+ return new ResultError(new Error(t));
585
+ }
586
+ if (_Result.Is(t)) {
587
+ if (t.is_ok()) {
588
+ return new ResultError(new Error("Result Error is Ok"));
589
+ }
590
+ return t;
591
+ }
592
+ return new ResultError(t);
593
+ }
594
+ static Is(t) {
595
+ if (!t) {
596
+ return false;
597
+ }
598
+ if (t instanceof _Result) {
599
+ return true;
600
+ }
601
+ const rt = t;
602
+ if ([typeof rt.is_ok, typeof rt.is_err, typeof rt.unwrap, typeof rt.unwrap_err].every((x) => x === "function")) {
603
+ return true;
604
+ }
605
+ return false;
606
+ }
607
+ isOk() {
608
+ return this.is_ok();
609
+ }
610
+ isErr() {
611
+ return this.is_err();
612
+ }
613
+ Ok() {
614
+ return this.unwrap();
615
+ }
616
+ Err() {
617
+ return this.unwrap_err();
618
+ }
619
+ };
620
+ var ResultOK = class extends Result {
621
+ constructor(t) {
622
+ super();
623
+ this._t = t;
624
+ }
625
+ is_ok() {
626
+ return true;
627
+ }
628
+ is_err() {
629
+ return false;
630
+ }
631
+ unwrap_err() {
632
+ throw new Error("Result is Ok");
633
+ }
634
+ unwrap() {
635
+ return this._t;
636
+ }
637
+ };
638
+ var ResultError = class extends Result {
639
+ constructor(t) {
640
+ super();
641
+ this._error = t;
642
+ }
643
+ is_ok() {
644
+ return false;
645
+ }
646
+ is_err() {
647
+ return true;
648
+ }
649
+ unwrap() {
650
+ throw new Error(`Result is Err: ${this._error}`);
651
+ }
652
+ unwrap_err() {
653
+ return this._error;
654
+ }
655
+ };
656
+
657
+ // src/utils/get-params-result.ts
658
+ var _REQUIRED = class {
659
+ constructor() {
660
+ this.val = "REQUIRED";
661
+ }
662
+ };
663
+ var _OPTIONAL = class {
664
+ constructor() {
665
+ this.val = "OPTIONAL";
666
+ }
667
+ };
668
+ var param = {
669
+ REQUIRED: new _REQUIRED(),
670
+ OPTIONAL: new _OPTIONAL()
671
+ };
672
+ function getParamsResult(keys, getParam) {
673
+ const keyDef = keys.flat().reduce(
674
+ (acc, i) => {
675
+ if (typeof i === "string") {
676
+ acc.push({ key: i, def: void 0, isOptional: false });
677
+ } else if (typeof i === "object") {
678
+ acc.push(
679
+ ...Object.keys(i).map((k) => ({
680
+ key: k,
681
+ def: typeof i[k] === "string" ? i[k] : void 0,
682
+ isOptional: i[k] === param.OPTIONAL
683
+ }))
684
+ );
685
+ }
686
+ return acc;
687
+ },
688
+ []
689
+ );
690
+ const msgFn = keys.find((k) => typeof k === "function") || ((...keys2) => {
691
+ const msg = keys2.join(",");
692
+ return `missing parameters: ${msg}`;
693
+ });
694
+ const errors = [];
695
+ const result = {};
696
+ for (const kd of keyDef) {
697
+ const val = getParam.getParam(kd.key);
698
+ if (val === void 0) {
699
+ if (typeof kd.def === "string") {
700
+ result[kd.key] = kd.def;
701
+ } else {
702
+ if (!kd.isOptional) {
703
+ errors.push(kd.key);
704
+ }
705
+ }
706
+ } else {
707
+ result[kd.key] = val;
708
+ }
709
+ }
710
+ if (errors.length) {
711
+ return Result.Err(msgFn(...errors));
712
+ }
713
+ return Result.Ok(result);
714
+ }
715
+
572
716
  // src/sys-env.ts
573
717
  var envActions = [
574
718
  { id: "cf", fn: (opts) => CFEnvActions.new(opts) },
@@ -589,12 +733,62 @@ function envFactory(opts = {}) {
589
733
  return ret;
590
734
  });
591
735
  }
736
+ function isIterable(obj) {
737
+ if (obj == null) {
738
+ return false;
739
+ }
740
+ return typeof obj[Symbol.iterator] === "function";
741
+ }
592
742
  var EnvImpl = class {
593
743
  constructor(map, opts = {}) {
594
744
  this._onSet = [];
595
745
  this._map = map;
596
746
  this._updatePresets(opts.presetEnv);
597
747
  }
748
+ gets(...kparams) {
749
+ return getParamsResult(kparams, {
750
+ getParam: (k) => this.get(k)
751
+ });
752
+ }
753
+ sets(...keys) {
754
+ keys.forEach((key) => {
755
+ if (Array.isArray(key)) {
756
+ if (key.length === 2) {
757
+ const [k, v] = key;
758
+ if (typeof k === "string" && typeof v === "string") {
759
+ this.set(k, v);
760
+ return;
761
+ }
762
+ }
763
+ for (const item of key) {
764
+ if (Array.isArray(item)) {
765
+ if (item.length === 2) {
766
+ const [k, v] = item;
767
+ if (typeof k === "string" && typeof v === "string") {
768
+ this.set(k, v);
769
+ }
770
+ }
771
+ }
772
+ }
773
+ } else {
774
+ if (isIterable(key)) {
775
+ for (const [k, v] of key) {
776
+ if (typeof k === "string" && typeof v === "string") {
777
+ this.set(k, v);
778
+ }
779
+ }
780
+ } else {
781
+ const rKey = key;
782
+ for (const k in rKey) {
783
+ const v = rKey[k];
784
+ if (typeof k === "string" && typeof v === "string") {
785
+ this.set(k, v);
786
+ }
787
+ }
788
+ }
789
+ }
790
+ });
791
+ }
598
792
  _updatePresets(presetEnv) {
599
793
  if (!presetEnv) {
600
794
  return;
@@ -736,15 +930,15 @@ var WebSystemService = class {
736
930
  }
737
931
  };
738
932
  var my = void 0;
739
- function WebSysAbstraction(param) {
933
+ function WebSysAbstraction(param2) {
740
934
  if (!my) {
741
935
  my = new BaseSysAbstraction({
742
- TxtEnDecoder: (param == null ? void 0 : param.TxtEnDecoder) || Utf8EnDecoderSingleton(),
936
+ TxtEnDecoder: (param2 == null ? void 0 : param2.TxtEnDecoder) || Utf8EnDecoderSingleton(),
743
937
  FileSystem: new WebFileService(),
744
938
  SystemService: new WebSystemService()
745
939
  });
746
940
  }
747
- return new WrapperSysAbstraction(my, param);
941
+ return new WrapperSysAbstraction(my, param2);
748
942
  }
749
943
  // Annotate the CommonJS export names for ESM import in node:
750
944
  0 && (module.exports = {