@adviser/cement 0.4.72 → 0.4.80

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 (673) hide show
  1. package/cjs/add-cement-do-not-export.cjs +24 -0
  2. package/cjs/add-cement-do-not-export.cjs.map +1 -0
  3. package/cjs/add-cement-do-not-export.d.ts +3 -0
  4. package/cjs/add-cement-do-not-export.d.ts.map +1 -0
  5. package/cjs/base-basic-sys-abstraction.test.cjs +64 -6
  6. package/cjs/base-basic-sys-abstraction.test.cjs.map +1 -1
  7. package/cjs/base-sys-abstraction.cjs +6 -5
  8. package/cjs/base-sys-abstraction.cjs.map +1 -1
  9. package/cjs/base-sys-abstraction.d.ts +3 -0
  10. package/cjs/base-sys-abstraction.d.ts.map +1 -1
  11. package/cjs/cf/cf-basic-sys-abstraction.cjs +13 -14
  12. package/cjs/cf/cf-basic-sys-abstraction.cjs.map +1 -1
  13. package/cjs/cf/cf-basic-sys-abstraction.d.ts +4 -6
  14. package/cjs/cf/cf-basic-sys-abstraction.d.ts.map +1 -1
  15. package/cjs/cf/cf-env-actions.cjs +8 -7
  16. package/cjs/cf/cf-env-actions.cjs.map +1 -1
  17. package/cjs/cf/cf-env-actions.d.ts +4 -3
  18. package/cjs/cf/cf-env-actions.d.ts.map +1 -1
  19. package/cjs/deno/deno-basic-sys-abstraction.cjs +13 -16
  20. package/cjs/deno/deno-basic-sys-abstraction.cjs.map +1 -1
  21. package/cjs/deno/deno-basic-sys-abstraction.d.ts +4 -7
  22. package/cjs/deno/deno-basic-sys-abstraction.d.ts.map +1 -1
  23. package/cjs/deno/deno-env-actions.cjs +4 -5
  24. package/cjs/deno/deno-env-actions.cjs.map +1 -1
  25. package/cjs/deno/deno-env-actions.d.ts +3 -3
  26. package/cjs/deno/deno-env-actions.d.ts.map +1 -1
  27. package/cjs/deno/deno-file-service.cjs +2 -3
  28. package/cjs/deno/deno-file-service.cjs.map +1 -1
  29. package/cjs/deno/deno-file-service.d.ts +2 -3
  30. package/cjs/deno/deno-file-service.d.ts.map +1 -1
  31. package/cjs/deno/deno-sys-abstraction.cjs +10 -10
  32. package/cjs/deno/deno-sys-abstraction.cjs.map +1 -1
  33. package/cjs/deno/deno-sys-abstraction.d.ts +2 -3
  34. package/cjs/deno/deno-sys-abstraction.d.ts.map +1 -1
  35. package/cjs/deno/index.cjs +2 -0
  36. package/cjs/deno/index.cjs.map +1 -1
  37. package/cjs/deno/index.d.ts +2 -0
  38. package/cjs/deno/index.d.ts.map +1 -1
  39. package/cjs/index.cjs +13 -24
  40. package/cjs/index.cjs.cjs +0 -24
  41. package/cjs/index.cjs.cjs.map +1 -1
  42. package/cjs/index.cjs.d.ts +0 -1
  43. package/cjs/index.cjs.d.ts.map +1 -1
  44. package/cjs/index.cjs.map +1 -1
  45. package/cjs/index.d.ts +13 -1
  46. package/cjs/index.d.ts.map +1 -1
  47. package/cjs/log-level-impl.cjs +4 -4
  48. package/cjs/log-level-impl.cjs.map +1 -1
  49. package/cjs/log-level-impl.d.ts +2 -1
  50. package/cjs/log-level-impl.d.ts.map +1 -1
  51. package/cjs/logger-impl.cjs +6 -5
  52. package/cjs/logger-impl.cjs.map +1 -1
  53. package/cjs/logger-impl.d.ts +2 -1
  54. package/cjs/logger-impl.d.ts.map +1 -1
  55. package/cjs/logger.cjs +17 -41
  56. package/cjs/logger.cjs.map +1 -1
  57. package/cjs/logger.d.ts +1 -16
  58. package/cjs/logger.d.ts.map +1 -1
  59. package/cjs/logger.test.cjs +4 -2
  60. package/cjs/logger.test.cjs.map +1 -1
  61. package/cjs/mutable-url.cjs +7 -7
  62. package/cjs/mutable-url.cjs.map +1 -1
  63. package/cjs/node/index.cjs +2 -0
  64. package/cjs/node/index.cjs.map +1 -1
  65. package/cjs/node/index.d.ts +2 -0
  66. package/cjs/node/index.d.ts.map +1 -1
  67. package/cjs/node/mock-file-service.cjs +1 -2
  68. package/cjs/node/mock-file-service.cjs.map +1 -1
  69. package/cjs/node/mock-file-service.d.ts +1 -1
  70. package/cjs/node/mock-file-service.d.ts.map +1 -1
  71. package/cjs/node/mock-file-service.test.cjs +1 -1
  72. package/cjs/node/mock-file-service.test.cjs.map +1 -1
  73. package/cjs/node/node-basic-sys-abstraction.cjs +13 -14
  74. package/cjs/node/node-basic-sys-abstraction.cjs.map +1 -1
  75. package/cjs/node/node-basic-sys-abstraction.d.ts +4 -6
  76. package/cjs/node/node-basic-sys-abstraction.d.ts.map +1 -1
  77. package/cjs/node/node-env-actions.cjs +6 -7
  78. package/cjs/node/node-env-actions.cjs.map +1 -1
  79. package/cjs/node/node-env-actions.d.ts +4 -6
  80. package/cjs/node/node-env-actions.d.ts.map +1 -1
  81. package/cjs/node/node-file-service.cjs +4 -3
  82. package/cjs/node/node-file-service.cjs.map +1 -1
  83. package/cjs/node/node-file-service.d.ts +3 -3
  84. package/cjs/node/node-file-service.d.ts.map +1 -1
  85. package/cjs/node/node-sys-abstraction.cjs +10 -10
  86. package/cjs/node/node-sys-abstraction.cjs.map +1 -1
  87. package/cjs/node/node-sys-abstraction.d.ts +2 -3
  88. package/cjs/node/node-sys-abstraction.d.ts.map +1 -1
  89. package/cjs/on-func.d.ts +1 -1
  90. package/cjs/on-func.d.ts.map +1 -1
  91. package/cjs/resolve-once.cjs +5 -1
  92. package/cjs/resolve-once.cjs.map +1 -1
  93. package/cjs/resolve-once.d.ts +1 -1
  94. package/cjs/resolve-once.d.ts.map +1 -1
  95. package/cjs/resolve-once.test.cjs +38 -4
  96. package/cjs/resolve-once.test.cjs.map +1 -1
  97. package/cjs/result.cjs.map +1 -1
  98. package/cjs/result.d.ts +3 -3
  99. package/cjs/result.d.ts.map +1 -1
  100. package/cjs/sys-env.cjs +15 -13
  101. package/cjs/sys-env.cjs.map +1 -1
  102. package/cjs/sys-env.d.ts +4 -2
  103. package/cjs/sys-env.d.ts.map +1 -1
  104. package/cjs/sys-env.test.cjs +39 -5
  105. package/cjs/sys-env.test.cjs.map +1 -1
  106. package/cjs/test/log-write-stream.cjs +4 -6
  107. package/cjs/test/log-write-stream.cjs.map +1 -1
  108. package/cjs/test/log-write-stream.d.ts +1 -2
  109. package/cjs/test/log-write-stream.d.ts.map +1 -1
  110. package/cjs/test/mock-logger.cjs +3 -4
  111. package/cjs/test/mock-logger.cjs.map +1 -1
  112. package/cjs/test/mock-logger.d.ts +1 -2
  113. package/cjs/test/mock-logger.d.ts.map +1 -1
  114. package/cjs/txt-en-decoder.d.ts.map +1 -1
  115. package/cjs/types.cjs +26 -1
  116. package/cjs/types.cjs.map +1 -1
  117. package/cjs/types.d.ts +29 -0
  118. package/cjs/types.d.ts.map +1 -1
  119. package/cjs/uri.cjs +11 -12
  120. package/cjs/uri.cjs.map +1 -1
  121. package/cjs/uri.d.ts +2 -3
  122. package/cjs/uri.d.ts.map +1 -1
  123. package/cjs/utils/coerce-uint8.cjs +9 -9
  124. package/cjs/utils/coerce-uint8.cjs.map +1 -1
  125. package/cjs/utils/coerce-uint8.d.ts +1 -1
  126. package/cjs/utils/coerce-uint8.d.ts.map +1 -1
  127. package/cjs/utils/consume.cjs +2 -2
  128. package/cjs/utils/consume.cjs.map +1 -1
  129. package/cjs/utils/get-params-result.cjs +4 -5
  130. package/cjs/utils/get-params-result.cjs.map +1 -1
  131. package/cjs/utils/get-params-result.d.ts +1 -2
  132. package/cjs/utils/get-params-result.d.ts.map +1 -1
  133. package/cjs/utils/rebuffer.test.cjs +7 -7
  134. package/cjs/utils/rebuffer.test.cjs.map +1 -1
  135. package/cjs/utils/stream-map.test.cjs +8 -8
  136. package/cjs/utils/stream-map.test.cjs.map +1 -1
  137. package/cjs/utils/stream2string.test.cjs +3 -3
  138. package/cjs/utils/stream2string.test.cjs.map +1 -1
  139. package/cjs/utils/string2stream.test.cjs +4 -3
  140. package/cjs/utils/string2stream.test.cjs.map +1 -1
  141. package/cjs/version.cjs +1 -1
  142. package/cjs/web/index.cjs +1 -0
  143. package/cjs/web/index.cjs.map +1 -1
  144. package/cjs/web/index.d.ts +1 -0
  145. package/cjs/web/index.d.ts.map +1 -1
  146. package/cjs/web/web-basic-sys-abstraction.cjs +16 -16
  147. package/cjs/web/web-basic-sys-abstraction.cjs.map +1 -1
  148. package/cjs/web/web-basic-sys-abstraction.d.ts +2 -3
  149. package/cjs/web/web-basic-sys-abstraction.d.ts.map +1 -1
  150. package/cjs/web/web-env-actions.cjs +3 -3
  151. package/cjs/web/web-env-actions.cjs.map +1 -1
  152. package/cjs/web/web-env-actions.d.ts +1 -1
  153. package/cjs/web/web-env-actions.d.ts.map +1 -1
  154. package/deno.json +1 -3
  155. package/esm/add-cement-do-not-export.d.ts +3 -0
  156. package/esm/add-cement-do-not-export.d.ts.map +1 -0
  157. package/esm/add-cement-do-not-export.js +21 -0
  158. package/esm/add-cement-do-not-export.js.map +1 -0
  159. package/esm/base-basic-sys-abstraction.test.js +31 -6
  160. package/esm/base-basic-sys-abstraction.test.js.map +1 -1
  161. package/esm/base-sys-abstraction.d.ts +3 -0
  162. package/esm/base-sys-abstraction.d.ts.map +1 -1
  163. package/esm/base-sys-abstraction.js +6 -5
  164. package/esm/base-sys-abstraction.js.map +1 -1
  165. package/esm/cf/cf-basic-sys-abstraction.d.ts +4 -6
  166. package/esm/cf/cf-basic-sys-abstraction.d.ts.map +1 -1
  167. package/esm/cf/cf-basic-sys-abstraction.js +13 -14
  168. package/esm/cf/cf-basic-sys-abstraction.js.map +1 -1
  169. package/esm/cf/cf-env-actions.d.ts +4 -3
  170. package/esm/cf/cf-env-actions.d.ts.map +1 -1
  171. package/esm/cf/cf-env-actions.js +8 -7
  172. package/esm/cf/cf-env-actions.js.map +1 -1
  173. package/esm/deno/deno-basic-sys-abstraction.d.ts +4 -7
  174. package/esm/deno/deno-basic-sys-abstraction.d.ts.map +1 -1
  175. package/esm/deno/deno-basic-sys-abstraction.js +13 -16
  176. package/esm/deno/deno-basic-sys-abstraction.js.map +1 -1
  177. package/esm/deno/deno-env-actions.d.ts +3 -3
  178. package/esm/deno/deno-env-actions.d.ts.map +1 -1
  179. package/esm/deno/deno-env-actions.js +4 -5
  180. package/esm/deno/deno-env-actions.js.map +1 -1
  181. package/esm/deno/deno-file-service.d.ts +2 -3
  182. package/esm/deno/deno-file-service.d.ts.map +1 -1
  183. package/esm/deno/deno-file-service.js +2 -3
  184. package/esm/deno/deno-file-service.js.map +1 -1
  185. package/esm/deno/deno-sys-abstraction.d.ts +2 -3
  186. package/esm/deno/deno-sys-abstraction.d.ts.map +1 -1
  187. package/esm/deno/deno-sys-abstraction.js +10 -10
  188. package/esm/deno/deno-sys-abstraction.js.map +1 -1
  189. package/esm/deno/index.d.ts +2 -0
  190. package/esm/deno/index.d.ts.map +1 -1
  191. package/esm/deno/index.js +2 -0
  192. package/esm/deno/index.js.map +1 -1
  193. package/esm/index.cjs.d.ts +0 -1
  194. package/esm/index.cjs.d.ts.map +1 -1
  195. package/esm/index.cjs.js +0 -1
  196. package/esm/index.cjs.js.map +1 -1
  197. package/esm/index.d.ts +13 -1
  198. package/esm/index.d.ts.map +1 -1
  199. package/esm/index.js +13 -1
  200. package/esm/index.js.map +1 -1
  201. package/esm/log-level-impl.d.ts +2 -1
  202. package/esm/log-level-impl.d.ts.map +1 -1
  203. package/esm/log-level-impl.js +1 -1
  204. package/esm/log-level-impl.js.map +1 -1
  205. package/esm/logger-impl.d.ts +2 -1
  206. package/esm/logger-impl.d.ts.map +1 -1
  207. package/esm/logger-impl.js +2 -1
  208. package/esm/logger-impl.js.map +1 -1
  209. package/esm/logger.d.ts +1 -16
  210. package/esm/logger.d.ts.map +1 -1
  211. package/esm/logger.js +1 -23
  212. package/esm/logger.js.map +1 -1
  213. package/esm/logger.test.js +5 -3
  214. package/esm/logger.test.js.map +1 -1
  215. package/esm/mutable-url.js +1 -1
  216. package/esm/mutable-url.js.map +1 -1
  217. package/esm/node/index.d.ts +2 -0
  218. package/esm/node/index.d.ts.map +1 -1
  219. package/esm/node/index.js +2 -0
  220. package/esm/node/index.js.map +1 -1
  221. package/esm/node/mock-file-service.d.ts +1 -1
  222. package/esm/node/mock-file-service.d.ts.map +1 -1
  223. package/esm/node/mock-file-service.js +1 -2
  224. package/esm/node/mock-file-service.js.map +1 -1
  225. package/esm/node/mock-file-service.test.js +2 -2
  226. package/esm/node/mock-file-service.test.js.map +1 -1
  227. package/esm/node/node-basic-sys-abstraction.d.ts +4 -6
  228. package/esm/node/node-basic-sys-abstraction.d.ts.map +1 -1
  229. package/esm/node/node-basic-sys-abstraction.js +13 -14
  230. package/esm/node/node-basic-sys-abstraction.js.map +1 -1
  231. package/esm/node/node-env-actions.d.ts +4 -6
  232. package/esm/node/node-env-actions.d.ts.map +1 -1
  233. package/esm/node/node-env-actions.js +6 -7
  234. package/esm/node/node-env-actions.js.map +1 -1
  235. package/esm/node/node-file-service.d.ts +3 -3
  236. package/esm/node/node-file-service.d.ts.map +1 -1
  237. package/esm/node/node-file-service.js +4 -3
  238. package/esm/node/node-file-service.js.map +1 -1
  239. package/esm/node/node-sys-abstraction.d.ts +2 -3
  240. package/esm/node/node-sys-abstraction.d.ts.map +1 -1
  241. package/esm/node/node-sys-abstraction.js +10 -10
  242. package/esm/node/node-sys-abstraction.js.map +1 -1
  243. package/esm/on-func.d.ts +1 -1
  244. package/esm/on-func.d.ts.map +1 -1
  245. package/esm/resolve-once.d.ts +1 -1
  246. package/esm/resolve-once.d.ts.map +1 -1
  247. package/esm/resolve-once.js +5 -1
  248. package/esm/resolve-once.js.map +1 -1
  249. package/esm/resolve-once.test.js +38 -4
  250. package/esm/resolve-once.test.js.map +1 -1
  251. package/esm/result.d.ts +3 -3
  252. package/esm/result.d.ts.map +1 -1
  253. package/esm/result.js.map +1 -1
  254. package/esm/sys-env.d.ts +4 -2
  255. package/esm/sys-env.d.ts.map +1 -1
  256. package/esm/sys-env.js +11 -9
  257. package/esm/sys-env.js.map +1 -1
  258. package/esm/sys-env.test.js +4 -3
  259. package/esm/sys-env.test.js.map +1 -1
  260. package/esm/test/log-write-stream.d.ts +1 -2
  261. package/esm/test/log-write-stream.d.ts.map +1 -1
  262. package/esm/test/log-write-stream.js +1 -3
  263. package/esm/test/log-write-stream.js.map +1 -1
  264. package/esm/test/mock-logger.d.ts +1 -2
  265. package/esm/test/mock-logger.d.ts.map +1 -1
  266. package/esm/test/mock-logger.js +1 -2
  267. package/esm/test/mock-logger.js.map +1 -1
  268. package/esm/test/test-exit-handler.js +9 -2
  269. package/esm/test/test-exit-handler.js.map +1 -1
  270. package/esm/txt-en-decoder.d.ts.map +1 -1
  271. package/esm/txt-en-decoder.js.map +1 -1
  272. package/esm/types.d.ts +29 -0
  273. package/esm/types.d.ts.map +1 -1
  274. package/esm/types.js +24 -0
  275. package/esm/types.js.map +1 -1
  276. package/esm/uri.d.ts +2 -3
  277. package/esm/uri.d.ts.map +1 -1
  278. package/esm/uri.js +3 -4
  279. package/esm/uri.js.map +1 -1
  280. package/esm/utils/coerce-uint8.d.ts +1 -1
  281. package/esm/utils/coerce-uint8.d.ts.map +1 -1
  282. package/esm/utils/coerce-uint8.js +1 -1
  283. package/esm/utils/coerce-uint8.js.map +1 -1
  284. package/esm/utils/consume.js +1 -1
  285. package/esm/utils/consume.js.map +1 -1
  286. package/esm/utils/get-params-result.d.ts +1 -2
  287. package/esm/utils/get-params-result.d.ts.map +1 -1
  288. package/esm/utils/get-params-result.js +1 -2
  289. package/esm/utils/get-params-result.js.map +1 -1
  290. package/esm/utils/rebuffer.test.js +7 -7
  291. package/esm/utils/rebuffer.test.js.map +1 -1
  292. package/esm/utils/stream-map.test.js +8 -8
  293. package/esm/utils/stream-map.test.js.map +1 -1
  294. package/esm/utils/stream2string.test.js +1 -1
  295. package/esm/utils/stream2string.test.js.map +1 -1
  296. package/esm/utils/string2stream.test.js +4 -3
  297. package/esm/utils/string2stream.test.js.map +1 -1
  298. package/esm/version.js +1 -1
  299. package/esm/web/index.d.ts +1 -0
  300. package/esm/web/index.d.ts.map +1 -1
  301. package/esm/web/index.js +1 -0
  302. package/esm/web/index.js.map +1 -1
  303. package/esm/web/web-basic-sys-abstraction.d.ts +2 -3
  304. package/esm/web/web-basic-sys-abstraction.d.ts.map +1 -1
  305. package/esm/web/web-basic-sys-abstraction.js +16 -16
  306. package/esm/web/web-basic-sys-abstraction.js.map +1 -1
  307. package/esm/web/web-env-actions.d.ts +1 -1
  308. package/esm/web/web-env-actions.d.ts.map +1 -1
  309. package/esm/web/web-env-actions.js +3 -3
  310. package/esm/web/web-env-actions.js.map +1 -1
  311. package/package.json +2 -7
  312. package/src/add-cement-do-not-export.ts +27 -0
  313. package/src/base-sys-abstraction.ts +13 -5
  314. package/src/cf/cf-basic-sys-abstraction.ts +22 -15
  315. package/src/cf/cf-env-actions.ts +11 -10
  316. package/src/deno/deno-basic-sys-abstraction.ts +21 -17
  317. package/src/deno/deno-env-actions.ts +8 -9
  318. package/src/deno/deno-file-service.ts +3 -4
  319. package/src/deno/deno-sys-abstraction.ts +17 -18
  320. package/src/deno/index.ts +2 -0
  321. package/src/index.cjs.ts +1 -1
  322. package/src/index.ts +15 -1
  323. package/src/log-level-impl.ts +2 -1
  324. package/src/logger-impl.ts +1 -5
  325. package/src/logger.ts +1 -29
  326. package/src/mutable-url.ts +1 -1
  327. package/src/node/index.ts +2 -0
  328. package/src/node/mock-file-service.ts +2 -3
  329. package/src/node/node-basic-sys-abstraction.ts +23 -15
  330. package/src/node/node-env-actions.ts +12 -52
  331. package/src/node/node-file-service.ts +5 -4
  332. package/src/node/node-sys-abstraction.ts +17 -18
  333. package/src/on-func.ts +1 -1
  334. package/src/resolve-once.ts +7 -5
  335. package/src/result.ts +4 -4
  336. package/src/sys-env.ts +18 -14
  337. package/src/test/log-write-stream.ts +1 -3
  338. package/src/test/mock-logger.ts +1 -4
  339. package/src/txt-en-decoder.ts +1 -1
  340. package/src/types.ts +45 -0
  341. package/src/uri.ts +3 -5
  342. package/src/utils/coerce-uint8.ts +1 -1
  343. package/src/utils/consume.ts +1 -1
  344. package/src/utils/get-params-result.ts +1 -2
  345. package/src/web/index.ts +1 -0
  346. package/src/web/web-basic-sys-abstraction.ts +25 -74
  347. package/src/web/web-env-actions.ts +4 -4
  348. package/ts/cjs/add-cement-do-not-export.d.ts +3 -0
  349. package/ts/cjs/add-cement-do-not-export.d.ts.map +1 -0
  350. package/ts/cjs/add-cement-do-not-export.js +24 -0
  351. package/ts/cjs/add-cement-do-not-export.js.map +1 -0
  352. package/ts/cjs/base-basic-sys-abstraction.test.js +64 -6
  353. package/ts/cjs/base-basic-sys-abstraction.test.js.map +1 -1
  354. package/ts/cjs/base-sys-abstraction.d.ts +3 -0
  355. package/ts/cjs/base-sys-abstraction.d.ts.map +1 -1
  356. package/ts/cjs/base-sys-abstraction.js +6 -5
  357. package/ts/cjs/base-sys-abstraction.js.map +1 -1
  358. package/ts/cjs/cf/cf-basic-sys-abstraction.d.ts +4 -6
  359. package/ts/cjs/cf/cf-basic-sys-abstraction.d.ts.map +1 -1
  360. package/ts/cjs/cf/cf-basic-sys-abstraction.js +13 -14
  361. package/ts/cjs/cf/cf-basic-sys-abstraction.js.map +1 -1
  362. package/ts/cjs/cf/cf-env-actions.d.ts +4 -3
  363. package/ts/cjs/cf/cf-env-actions.d.ts.map +1 -1
  364. package/ts/cjs/cf/cf-env-actions.js +8 -7
  365. package/ts/cjs/cf/cf-env-actions.js.map +1 -1
  366. package/ts/cjs/deno/deno-basic-sys-abstraction.d.ts +4 -7
  367. package/ts/cjs/deno/deno-basic-sys-abstraction.d.ts.map +1 -1
  368. package/ts/cjs/deno/deno-basic-sys-abstraction.js +13 -16
  369. package/ts/cjs/deno/deno-basic-sys-abstraction.js.map +1 -1
  370. package/ts/cjs/deno/deno-env-actions.d.ts +3 -3
  371. package/ts/cjs/deno/deno-env-actions.d.ts.map +1 -1
  372. package/ts/cjs/deno/deno-env-actions.js +4 -5
  373. package/ts/cjs/deno/deno-env-actions.js.map +1 -1
  374. package/ts/cjs/deno/deno-file-service.d.ts +2 -3
  375. package/ts/cjs/deno/deno-file-service.d.ts.map +1 -1
  376. package/ts/cjs/deno/deno-file-service.js +2 -3
  377. package/ts/cjs/deno/deno-file-service.js.map +1 -1
  378. package/ts/cjs/deno/deno-sys-abstraction.d.ts +2 -3
  379. package/ts/cjs/deno/deno-sys-abstraction.d.ts.map +1 -1
  380. package/ts/cjs/deno/deno-sys-abstraction.js +10 -10
  381. package/ts/cjs/deno/deno-sys-abstraction.js.map +1 -1
  382. package/ts/cjs/deno/index.d.ts +2 -0
  383. package/ts/cjs/deno/index.d.ts.map +1 -1
  384. package/ts/cjs/deno/index.js +2 -0
  385. package/ts/cjs/deno/index.js.map +1 -1
  386. package/ts/cjs/index.cjs.d.ts +0 -1
  387. package/ts/cjs/index.cjs.d.ts.map +1 -1
  388. package/ts/cjs/index.cjs.js +0 -24
  389. package/ts/cjs/index.cjs.js.map +1 -1
  390. package/ts/cjs/index.d.ts +13 -1
  391. package/ts/cjs/index.d.ts.map +1 -1
  392. package/ts/cjs/index.js +13 -24
  393. package/ts/cjs/index.js.map +1 -1
  394. package/ts/cjs/log-level-impl.d.ts +2 -1
  395. package/ts/cjs/log-level-impl.d.ts.map +1 -1
  396. package/ts/cjs/log-level-impl.js +4 -4
  397. package/ts/cjs/log-level-impl.js.map +1 -1
  398. package/ts/cjs/logger-impl.d.ts +2 -1
  399. package/ts/cjs/logger-impl.d.ts.map +1 -1
  400. package/ts/cjs/logger-impl.js +6 -5
  401. package/ts/cjs/logger-impl.js.map +1 -1
  402. package/ts/cjs/logger.d.ts +1 -16
  403. package/ts/cjs/logger.d.ts.map +1 -1
  404. package/ts/cjs/logger.js +17 -41
  405. package/ts/cjs/logger.js.map +1 -1
  406. package/ts/cjs/logger.test.js +4 -2
  407. package/ts/cjs/logger.test.js.map +1 -1
  408. package/ts/cjs/mutable-url.js +7 -7
  409. package/ts/cjs/mutable-url.js.map +1 -1
  410. package/ts/cjs/node/index.d.ts +2 -0
  411. package/ts/cjs/node/index.d.ts.map +1 -1
  412. package/ts/cjs/node/index.js +2 -0
  413. package/ts/cjs/node/index.js.map +1 -1
  414. package/ts/cjs/node/mock-file-service.d.ts +1 -1
  415. package/ts/cjs/node/mock-file-service.d.ts.map +1 -1
  416. package/ts/cjs/node/mock-file-service.js +1 -2
  417. package/ts/cjs/node/mock-file-service.js.map +1 -1
  418. package/ts/cjs/node/mock-file-service.test.js +1 -1
  419. package/ts/cjs/node/mock-file-service.test.js.map +1 -1
  420. package/ts/cjs/node/node-basic-sys-abstraction.d.ts +4 -6
  421. package/ts/cjs/node/node-basic-sys-abstraction.d.ts.map +1 -1
  422. package/ts/cjs/node/node-basic-sys-abstraction.js +13 -14
  423. package/ts/cjs/node/node-basic-sys-abstraction.js.map +1 -1
  424. package/ts/cjs/node/node-env-actions.d.ts +4 -6
  425. package/ts/cjs/node/node-env-actions.d.ts.map +1 -1
  426. package/ts/cjs/node/node-env-actions.js +6 -7
  427. package/ts/cjs/node/node-env-actions.js.map +1 -1
  428. package/ts/cjs/node/node-file-service.d.ts +3 -3
  429. package/ts/cjs/node/node-file-service.d.ts.map +1 -1
  430. package/ts/cjs/node/node-file-service.js +4 -3
  431. package/ts/cjs/node/node-file-service.js.map +1 -1
  432. package/ts/cjs/node/node-sys-abstraction.d.ts +2 -3
  433. package/ts/cjs/node/node-sys-abstraction.d.ts.map +1 -1
  434. package/ts/cjs/node/node-sys-abstraction.js +10 -10
  435. package/ts/cjs/node/node-sys-abstraction.js.map +1 -1
  436. package/ts/cjs/on-func.d.ts +1 -1
  437. package/ts/cjs/on-func.d.ts.map +1 -1
  438. package/ts/cjs/resolve-once.d.ts +1 -1
  439. package/ts/cjs/resolve-once.d.ts.map +1 -1
  440. package/ts/cjs/resolve-once.js +5 -1
  441. package/ts/cjs/resolve-once.js.map +1 -1
  442. package/ts/cjs/resolve-once.test.js +38 -4
  443. package/ts/cjs/resolve-once.test.js.map +1 -1
  444. package/ts/cjs/result.d.ts +3 -3
  445. package/ts/cjs/result.d.ts.map +1 -1
  446. package/ts/cjs/result.js.map +1 -1
  447. package/ts/cjs/sys-env.d.ts +4 -2
  448. package/ts/cjs/sys-env.d.ts.map +1 -1
  449. package/ts/cjs/sys-env.js +15 -13
  450. package/ts/cjs/sys-env.js.map +1 -1
  451. package/ts/cjs/sys-env.test.js +39 -5
  452. package/ts/cjs/sys-env.test.js.map +1 -1
  453. package/ts/cjs/test/log-write-stream.d.ts +1 -2
  454. package/ts/cjs/test/log-write-stream.d.ts.map +1 -1
  455. package/ts/cjs/test/log-write-stream.js +4 -6
  456. package/ts/cjs/test/log-write-stream.js.map +1 -1
  457. package/ts/cjs/test/mock-logger.d.ts +1 -2
  458. package/ts/cjs/test/mock-logger.d.ts.map +1 -1
  459. package/ts/cjs/test/mock-logger.js +3 -4
  460. package/ts/cjs/test/mock-logger.js.map +1 -1
  461. package/ts/cjs/txt-en-decoder.d.ts.map +1 -1
  462. package/ts/cjs/types.d.ts +29 -0
  463. package/ts/cjs/types.d.ts.map +1 -1
  464. package/ts/cjs/types.js +26 -1
  465. package/ts/cjs/types.js.map +1 -1
  466. package/ts/cjs/uri.d.ts +2 -3
  467. package/ts/cjs/uri.d.ts.map +1 -1
  468. package/ts/cjs/uri.js +11 -12
  469. package/ts/cjs/uri.js.map +1 -1
  470. package/ts/cjs/utils/coerce-uint8.d.ts +1 -1
  471. package/ts/cjs/utils/coerce-uint8.d.ts.map +1 -1
  472. package/ts/cjs/utils/coerce-uint8.js +9 -9
  473. package/ts/cjs/utils/coerce-uint8.js.map +1 -1
  474. package/ts/cjs/utils/consume.js +2 -2
  475. package/ts/cjs/utils/consume.js.map +1 -1
  476. package/ts/cjs/utils/get-params-result.d.ts +1 -2
  477. package/ts/cjs/utils/get-params-result.d.ts.map +1 -1
  478. package/ts/cjs/utils/get-params-result.js +4 -5
  479. package/ts/cjs/utils/get-params-result.js.map +1 -1
  480. package/ts/cjs/utils/rebuffer.test.js +7 -7
  481. package/ts/cjs/utils/rebuffer.test.js.map +1 -1
  482. package/ts/cjs/utils/stream-map.test.js +8 -8
  483. package/ts/cjs/utils/stream-map.test.js.map +1 -1
  484. package/ts/cjs/utils/stream2string.test.js +3 -3
  485. package/ts/cjs/utils/stream2string.test.js.map +1 -1
  486. package/ts/cjs/utils/string2stream.test.js +4 -3
  487. package/ts/cjs/utils/string2stream.test.js.map +1 -1
  488. package/ts/cjs/version.js +1 -1
  489. package/ts/cjs/web/index.d.ts +1 -0
  490. package/ts/cjs/web/index.d.ts.map +1 -1
  491. package/ts/cjs/web/index.js +1 -0
  492. package/ts/cjs/web/index.js.map +1 -1
  493. package/ts/cjs/web/web-basic-sys-abstraction.d.ts +2 -3
  494. package/ts/cjs/web/web-basic-sys-abstraction.d.ts.map +1 -1
  495. package/ts/cjs/web/web-basic-sys-abstraction.js +16 -16
  496. package/ts/cjs/web/web-basic-sys-abstraction.js.map +1 -1
  497. package/ts/cjs/web/web-env-actions.d.ts +1 -1
  498. package/ts/cjs/web/web-env-actions.d.ts.map +1 -1
  499. package/ts/cjs/web/web-env-actions.js +3 -3
  500. package/ts/cjs/web/web-env-actions.js.map +1 -1
  501. package/ts/esm/add-cement-do-not-export.d.ts +3 -0
  502. package/ts/esm/add-cement-do-not-export.d.ts.map +1 -0
  503. package/ts/esm/add-cement-do-not-export.js +21 -0
  504. package/ts/esm/add-cement-do-not-export.js.map +1 -0
  505. package/ts/esm/base-basic-sys-abstraction.test.js +31 -6
  506. package/ts/esm/base-basic-sys-abstraction.test.js.map +1 -1
  507. package/ts/esm/base-sys-abstraction.d.ts +3 -0
  508. package/ts/esm/base-sys-abstraction.d.ts.map +1 -1
  509. package/ts/esm/base-sys-abstraction.js +6 -5
  510. package/ts/esm/base-sys-abstraction.js.map +1 -1
  511. package/ts/esm/cf/cf-basic-sys-abstraction.d.ts +4 -6
  512. package/ts/esm/cf/cf-basic-sys-abstraction.d.ts.map +1 -1
  513. package/ts/esm/cf/cf-basic-sys-abstraction.js +13 -14
  514. package/ts/esm/cf/cf-basic-sys-abstraction.js.map +1 -1
  515. package/ts/esm/cf/cf-env-actions.d.ts +4 -3
  516. package/ts/esm/cf/cf-env-actions.d.ts.map +1 -1
  517. package/ts/esm/cf/cf-env-actions.js +8 -7
  518. package/ts/esm/cf/cf-env-actions.js.map +1 -1
  519. package/ts/esm/deno/deno-basic-sys-abstraction.d.ts +4 -7
  520. package/ts/esm/deno/deno-basic-sys-abstraction.d.ts.map +1 -1
  521. package/ts/esm/deno/deno-basic-sys-abstraction.js +13 -16
  522. package/ts/esm/deno/deno-basic-sys-abstraction.js.map +1 -1
  523. package/ts/esm/deno/deno-env-actions.d.ts +3 -3
  524. package/ts/esm/deno/deno-env-actions.d.ts.map +1 -1
  525. package/ts/esm/deno/deno-env-actions.js +4 -5
  526. package/ts/esm/deno/deno-env-actions.js.map +1 -1
  527. package/ts/esm/deno/deno-file-service.d.ts +2 -3
  528. package/ts/esm/deno/deno-file-service.d.ts.map +1 -1
  529. package/ts/esm/deno/deno-file-service.js +2 -3
  530. package/ts/esm/deno/deno-file-service.js.map +1 -1
  531. package/ts/esm/deno/deno-sys-abstraction.d.ts +2 -3
  532. package/ts/esm/deno/deno-sys-abstraction.d.ts.map +1 -1
  533. package/ts/esm/deno/deno-sys-abstraction.js +10 -10
  534. package/ts/esm/deno/deno-sys-abstraction.js.map +1 -1
  535. package/ts/esm/deno/index.d.ts +2 -0
  536. package/ts/esm/deno/index.d.ts.map +1 -1
  537. package/ts/esm/deno/index.js +2 -0
  538. package/ts/esm/deno/index.js.map +1 -1
  539. package/ts/esm/index.cjs.d.ts +0 -1
  540. package/ts/esm/index.cjs.d.ts.map +1 -1
  541. package/ts/esm/index.cjs.js +0 -1
  542. package/ts/esm/index.cjs.js.map +1 -1
  543. package/ts/esm/index.d.ts +13 -1
  544. package/ts/esm/index.d.ts.map +1 -1
  545. package/ts/esm/index.js +13 -1
  546. package/ts/esm/index.js.map +1 -1
  547. package/ts/esm/log-level-impl.d.ts +2 -1
  548. package/ts/esm/log-level-impl.d.ts.map +1 -1
  549. package/ts/esm/log-level-impl.js +1 -1
  550. package/ts/esm/log-level-impl.js.map +1 -1
  551. package/ts/esm/logger-impl.d.ts +2 -1
  552. package/ts/esm/logger-impl.d.ts.map +1 -1
  553. package/ts/esm/logger-impl.js +2 -1
  554. package/ts/esm/logger-impl.js.map +1 -1
  555. package/ts/esm/logger.d.ts +1 -16
  556. package/ts/esm/logger.d.ts.map +1 -1
  557. package/ts/esm/logger.js +1 -23
  558. package/ts/esm/logger.js.map +1 -1
  559. package/ts/esm/logger.test.js +5 -3
  560. package/ts/esm/logger.test.js.map +1 -1
  561. package/ts/esm/mutable-url.js +1 -1
  562. package/ts/esm/mutable-url.js.map +1 -1
  563. package/ts/esm/node/index.d.ts +2 -0
  564. package/ts/esm/node/index.d.ts.map +1 -1
  565. package/ts/esm/node/index.js +2 -0
  566. package/ts/esm/node/index.js.map +1 -1
  567. package/ts/esm/node/mock-file-service.d.ts +1 -1
  568. package/ts/esm/node/mock-file-service.d.ts.map +1 -1
  569. package/ts/esm/node/mock-file-service.js +1 -2
  570. package/ts/esm/node/mock-file-service.js.map +1 -1
  571. package/ts/esm/node/mock-file-service.test.js +2 -2
  572. package/ts/esm/node/mock-file-service.test.js.map +1 -1
  573. package/ts/esm/node/node-basic-sys-abstraction.d.ts +4 -6
  574. package/ts/esm/node/node-basic-sys-abstraction.d.ts.map +1 -1
  575. package/ts/esm/node/node-basic-sys-abstraction.js +13 -14
  576. package/ts/esm/node/node-basic-sys-abstraction.js.map +1 -1
  577. package/ts/esm/node/node-env-actions.d.ts +4 -6
  578. package/ts/esm/node/node-env-actions.d.ts.map +1 -1
  579. package/ts/esm/node/node-env-actions.js +6 -7
  580. package/ts/esm/node/node-env-actions.js.map +1 -1
  581. package/ts/esm/node/node-file-service.d.ts +3 -3
  582. package/ts/esm/node/node-file-service.d.ts.map +1 -1
  583. package/ts/esm/node/node-file-service.js +4 -3
  584. package/ts/esm/node/node-file-service.js.map +1 -1
  585. package/ts/esm/node/node-sys-abstraction.d.ts +2 -3
  586. package/ts/esm/node/node-sys-abstraction.d.ts.map +1 -1
  587. package/ts/esm/node/node-sys-abstraction.js +10 -10
  588. package/ts/esm/node/node-sys-abstraction.js.map +1 -1
  589. package/ts/esm/on-func.d.ts +1 -1
  590. package/ts/esm/on-func.d.ts.map +1 -1
  591. package/ts/esm/resolve-once.d.ts +1 -1
  592. package/ts/esm/resolve-once.d.ts.map +1 -1
  593. package/ts/esm/resolve-once.js +5 -1
  594. package/ts/esm/resolve-once.js.map +1 -1
  595. package/ts/esm/resolve-once.test.js +38 -4
  596. package/ts/esm/resolve-once.test.js.map +1 -1
  597. package/ts/esm/result.d.ts +3 -3
  598. package/ts/esm/result.d.ts.map +1 -1
  599. package/ts/esm/result.js.map +1 -1
  600. package/ts/esm/sys-env.d.ts +4 -2
  601. package/ts/esm/sys-env.d.ts.map +1 -1
  602. package/ts/esm/sys-env.js +11 -9
  603. package/ts/esm/sys-env.js.map +1 -1
  604. package/ts/esm/sys-env.test.js +4 -3
  605. package/ts/esm/sys-env.test.js.map +1 -1
  606. package/ts/esm/test/log-write-stream.d.ts +1 -2
  607. package/ts/esm/test/log-write-stream.d.ts.map +1 -1
  608. package/ts/esm/test/log-write-stream.js +1 -3
  609. package/ts/esm/test/log-write-stream.js.map +1 -1
  610. package/ts/esm/test/mock-logger.d.ts +1 -2
  611. package/ts/esm/test/mock-logger.d.ts.map +1 -1
  612. package/ts/esm/test/mock-logger.js +1 -2
  613. package/ts/esm/test/mock-logger.js.map +1 -1
  614. package/ts/esm/test/test-exit-handler.js +9 -2
  615. package/ts/esm/test/test-exit-handler.js.map +1 -1
  616. package/ts/esm/txt-en-decoder.d.ts.map +1 -1
  617. package/ts/esm/txt-en-decoder.js.map +1 -1
  618. package/ts/esm/types.d.ts +29 -0
  619. package/ts/esm/types.d.ts.map +1 -1
  620. package/ts/esm/types.js +24 -0
  621. package/ts/esm/types.js.map +1 -1
  622. package/ts/esm/uri.d.ts +2 -3
  623. package/ts/esm/uri.d.ts.map +1 -1
  624. package/ts/esm/uri.js +3 -4
  625. package/ts/esm/uri.js.map +1 -1
  626. package/ts/esm/utils/coerce-uint8.d.ts +1 -1
  627. package/ts/esm/utils/coerce-uint8.d.ts.map +1 -1
  628. package/ts/esm/utils/coerce-uint8.js +1 -1
  629. package/ts/esm/utils/coerce-uint8.js.map +1 -1
  630. package/ts/esm/utils/consume.js +1 -1
  631. package/ts/esm/utils/consume.js.map +1 -1
  632. package/ts/esm/utils/get-params-result.d.ts +1 -2
  633. package/ts/esm/utils/get-params-result.d.ts.map +1 -1
  634. package/ts/esm/utils/get-params-result.js +1 -2
  635. package/ts/esm/utils/get-params-result.js.map +1 -1
  636. package/ts/esm/utils/rebuffer.test.js +7 -7
  637. package/ts/esm/utils/rebuffer.test.js.map +1 -1
  638. package/ts/esm/utils/stream-map.test.js +8 -8
  639. package/ts/esm/utils/stream-map.test.js.map +1 -1
  640. package/ts/esm/utils/stream2string.test.js +1 -1
  641. package/ts/esm/utils/stream2string.test.js.map +1 -1
  642. package/ts/esm/utils/string2stream.test.js +4 -3
  643. package/ts/esm/utils/string2stream.test.js.map +1 -1
  644. package/ts/esm/version.js +1 -1
  645. package/ts/esm/web/index.d.ts +1 -0
  646. package/ts/esm/web/index.d.ts.map +1 -1
  647. package/ts/esm/web/index.js +1 -0
  648. package/ts/esm/web/index.js.map +1 -1
  649. package/ts/esm/web/web-basic-sys-abstraction.d.ts +2 -3
  650. package/ts/esm/web/web-basic-sys-abstraction.d.ts.map +1 -1
  651. package/ts/esm/web/web-basic-sys-abstraction.js +16 -16
  652. package/ts/esm/web/web-basic-sys-abstraction.js.map +1 -1
  653. package/ts/esm/web/web-env-actions.d.ts +1 -1
  654. package/ts/esm/web/web-env-actions.d.ts.map +1 -1
  655. package/ts/esm/web/web-env-actions.js +3 -3
  656. package/ts/esm/web/web-env-actions.js.map +1 -1
  657. package/cjs/utils/index.cjs +0 -30
  658. package/cjs/utils/index.cjs.map +0 -1
  659. package/cjs/utils/index.d.ts +0 -14
  660. package/cjs/utils/index.d.ts.map +0 -1
  661. package/esm/utils/index.d.ts +0 -14
  662. package/esm/utils/index.d.ts.map +0 -1
  663. package/esm/utils/index.js +0 -14
  664. package/esm/utils/index.js.map +0 -1
  665. package/src/utils/index.ts +0 -13
  666. package/ts/cjs/utils/index.d.ts +0 -14
  667. package/ts/cjs/utils/index.d.ts.map +0 -1
  668. package/ts/cjs/utils/index.js +0 -30
  669. package/ts/cjs/utils/index.js.map +0 -1
  670. package/ts/esm/utils/index.d.ts +0 -14
  671. package/ts/esm/utils/index.d.ts.map +0 -1
  672. package/ts/esm/utils/index.js +0 -14
  673. package/ts/esm/utils/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"web-env-actions.d.ts","sourceRoot":"","sources":["../../../../src/web/web-env-actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAGhE,qBAAa,iBAAkB,YAAW,UAAU;IAClD,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAA6B;IAC9D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAEvC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,UAAU,CAEpD;IAED,OAAO,eAEN;IAED,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEnC;IACD,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAIrC;IACD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAExB;IACD,IAAI,IAAI,MAAM,EAAE,CAEf;IACD,MAAM,IAAI,OAAO,CAEhB;IAED,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAKtB;CACF"}
1
+ {"version":3,"file":"web-env-actions.d.ts","sourceRoot":"","sources":["../../../../src/web/web-env-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAGvE,qBAAa,iBAAkB,YAAW,UAAU;IAClD,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAA6B;IAC9D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAEvC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,UAAU,CAGpD;IAED,OAAO,eAEN;IAED,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEnC;IACD,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAIrC;IACD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAExB;IACD,IAAI,IAAI,MAAM,EAAE,CAEf;IACD,MAAM,IAAI,OAAO,CAEhB;IAED,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAKtB;CACF"}
@@ -1,10 +1,10 @@
1
- import { ResolveOnce } from "../resolve-once.js";
2
- const once = new ResolveOnce();
1
+ let once = undefined;
3
2
  export class BrowserEnvActions {
4
3
  env = new Map();
5
4
  opts;
6
5
  static new(opts) {
7
- return once.once(() => new BrowserEnvActions(opts));
6
+ once = once ?? new BrowserEnvActions(opts);
7
+ return once;
8
8
  }
9
9
  constructor(opts) {
10
10
  this.opts = opts;
@@ -1 +1 @@
1
- {"version":3,"file":"web-env-actions.js","sourceRoot":"","sources":["../../../../src/web/web-env-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,IAAI,GAAG,IAAI,WAAW,EAAqB,CAAC;AAClD,MAAM,OAAO,iBAAiB;IACnB,GAAG,GAAwB,IAAI,GAAG,EAAkB,CAAC;IACrD,IAAI,CAA0B;IAEvC,MAAM,CAAC,GAAG,CAAC,IAA6B,EAAc;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAAA,CACrD;IAED,YAAoB,IAA6B,EAAE;QACjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAAA,CAClB;IAED,GAAG,CAAC,GAAW,EAAsB;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAAA,CAC1B;IACD,GAAG,CAAC,GAAW,EAAE,KAAc,EAAQ;QACrC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC;IAAA,CACF;IACD,MAAM,CAAC,GAAW,EAAQ;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAAA,CACtB;IACD,IAAI,GAAa;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAAA,CACpC;IACD,MAAM,GAAY;QAChB,OAAO,IAAI,CAAC;IAAA,CACb;IAED,QAAQ,CAAC,GAAQ,EAAO;QACtB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,UAA4C,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QACnB,OAAO,GAAG,CAAC;IAAA,CACZ;CACF"}
1
+ {"version":3,"file":"web-env-actions.js","sourceRoot":"","sources":["../../../../src/web/web-env-actions.ts"],"names":[],"mappings":"AAEA,IAAI,IAAI,GAAkC,SAAS,CAAC;AACpD,MAAM,OAAO,iBAAiB;IACnB,GAAG,GAAwB,IAAI,GAAG,EAAkB,CAAC;IACrD,IAAI,CAA0B;IAEvC,MAAM,CAAC,GAAG,CAAC,IAA6B,EAAc;QACpD,IAAI,GAAG,IAAI,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC;IAAA,CACb;IAED,YAAoB,IAA6B,EAAE;QACjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAAA,CAClB;IAED,GAAG,CAAC,GAAW,EAAsB;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAAA,CAC1B;IACD,GAAG,CAAC,GAAW,EAAE,KAAc,EAAQ;QACrC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC;IAAA,CACF;IACD,MAAM,CAAC,GAAW,EAAQ;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAAA,CACtB;IACD,IAAI,GAAa;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAAA,CACpC;IACD,MAAM,GAAY;QAChB,OAAO,IAAI,CAAC;IAAA,CACb;IAED,QAAQ,CAAC,GAAQ,EAAO;QACtB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,UAA4C,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QACnB,OAAO,GAAG,CAAC;IAAA,CACZ;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adviser/cement",
3
- "version": "0.4.72",
3
+ "version": "0.4.80",
4
4
  "description": "better try/catch/finally handling",
5
5
  "main": "./cjs/index.js",
6
6
  "type": "module",
@@ -21,11 +21,6 @@
21
21
  "require": "./cjs/web/index.cjs",
22
22
  "import": "./esm/web/index.js"
23
23
  },
24
- "./utils": {
25
- "types": "./esm/utils/index.d.ts",
26
- "require": "./cjs/utils/index.cjs",
27
- "import": "./esm/utils/index.js"
28
- },
29
24
  "./cf": {
30
25
  "types": "./esm/cf/index.d.ts",
31
26
  "require": "./cjs/cf/index.cjs",
@@ -94,7 +89,7 @@
94
89
  "@types/semver": "^7.7.1",
95
90
  "@typescript-eslint/eslint-plugin": "^8.46.3",
96
91
  "@typescript-eslint/parser": "^8.46.3",
97
- "@typescript/native-preview": "7.0.0-dev.20251117.1",
92
+ "@typescript/native-preview": "7.0.0-dev.20251124.1",
98
93
  "@vitest/browser": "^3.2.4",
99
94
  "@vitest/runner": "^3.2.4",
100
95
  "cmd-ts": "^0.14.1",
@@ -0,0 +1,27 @@
1
+ import { WithCement } from "./types.js";
2
+ import { runtimeFn } from "./runtime.js";
3
+ import {
4
+ WrapperBasicSysAbstraction,
5
+ WrapperRuntimeSysAbstraction,
6
+ BaseBasicSysAbstraction,
7
+ BaseSysAbstraction,
8
+ } from "./base-sys-abstraction.js";
9
+ import { TxtEnDecoderSingleton } from "./txt-en-decoder.js";
10
+ import { ConsoleWriterStream } from "./utils/console-write-stream.js";
11
+ import { envFactory } from "./sys-env.js";
12
+
13
+ export function addCement<T>(params: T): WithCement<T> {
14
+ return {
15
+ cement: {
16
+ runtimeFn,
17
+ WrapperBasicSysAbstraction,
18
+ WrapperRuntimeSysAbstraction,
19
+ TxtEnDecoderSingleton,
20
+ ConsoleWriterStream,
21
+ envFactory,
22
+ BaseBasicSysAbstraction,
23
+ BaseSysAbstraction,
24
+ },
25
+ ...params,
26
+ };
27
+ }
@@ -13,9 +13,11 @@ import { Time } from "./time.js";
13
13
  import { TxtEnDecoder } from "./txt-en-decoder.js";
14
14
  import { WebBasicSysAbstraction } from "./web/web-basic-sys-abstraction.js";
15
15
  import { Env } from "./sys-env.js";
16
- import { CFBasicSysAbstraction } from "./cf/cf-basic-sys-abstraction.js";
16
+ import { CFBasicSysAbstraction } from "@adviser/cement/cf";
17
17
  import { DenoBasicSysAbstraction } from "./deno/deno-basic-sys-abstraction.js";
18
18
  import { NodeBasicSysAbstraction } from "./node/node-basic-sys-abstraction.js";
19
+ import { WithCement } from "@adviser/cement";
20
+ import { addCement } from "./add-cement-do-not-export.js";
19
21
 
20
22
  /**
21
23
  * Real-time implementation using system clock.
@@ -325,6 +327,11 @@ export interface BasicSysAbstractionParams {
325
327
 
326
328
  export type WrapperBasicSysAbstractionParams = Partial<BasicRuntimeService & BasicSysAbstractionParams>;
327
329
 
330
+ export type BaseBasicRuntimeSysAbstractionParams =
331
+ | (BasicRuntimeService & BasicSysAbstractionParams)
332
+ | (BasicRuntimeService & BaseSysAbstractionParams);
333
+
334
+ export type WithCementWrapperSysAbstractionParams = WithCement<Partial<BaseBasicRuntimeSysAbstractionParams>>;
328
335
  /**
329
336
  * Creates a BasicSysAbstraction instance for the current runtime environment.
330
337
  *
@@ -355,17 +362,18 @@ export type WrapperBasicSysAbstractionParams = Partial<BasicRuntimeService & Bas
355
362
  * const id2 = testSys.NextId(); // "STEPId-1"
356
363
  * ```
357
364
  */
365
+
358
366
  export function BasicSysAbstractionFactory(params?: WrapperBasicSysAbstractionParams): BasicSysAbstraction {
359
367
  const fn = runtimeFn();
360
368
  switch (true) {
361
369
  case fn.isBrowser:
362
- return WebBasicSysAbstraction(params);
370
+ return WebBasicSysAbstraction(addCement(params));
363
371
  case fn.isDeno:
364
- return DenoBasicSysAbstraction(params);
372
+ return DenoBasicSysAbstraction(addCement(params));
365
373
  case fn.isCFWorker:
366
- return CFBasicSysAbstraction(params);
374
+ return CFBasicSysAbstraction(addCement(params));
367
375
  case fn.isNodeIsh:
368
- return NodeBasicSysAbstraction(params);
376
+ return NodeBasicSysAbstraction(addCement(params));
369
377
  default:
370
378
  throw new Error("Unknown runtime");
371
379
  }
@@ -1,16 +1,22 @@
1
- import { BaseBasicSysAbstraction, WrapperBasicSysAbstraction, WrapperBasicSysAbstractionParams } from "../base-sys-abstraction.js";
2
- import { ResolveOnce } from "../resolve-once.js";
3
- import { BasicRuntimeService, BasicSysAbstraction } from "../sys-abstraction.js";
4
- import { Env, envFactory } from "../sys-env.js";
5
- import { TxtEnDecoder, TxtEnDecoderSingleton } from "../txt-en-decoder.js";
1
+ import type {
2
+ BaseBasicSysAbstraction,
3
+ BasicRuntimeService,
4
+ BasicSysAbstraction,
5
+ Env,
6
+ EnvFactory,
7
+ TxtEnDecoder,
8
+ WithCementWrapperSysAbstractionParams,
9
+ } from "@adviser/cement";
6
10
 
7
11
  export class CFRuntimeService implements BasicRuntimeService {
8
12
  readonly _txtEnDe: TxtEnDecoder;
9
- constructor(ende: TxtEnDecoder) {
13
+ readonly _envFactory: EnvFactory;
14
+ constructor(ende: TxtEnDecoder, envFactory: EnvFactory) {
10
15
  this._txtEnDe = ende;
16
+ this._envFactory = envFactory;
11
17
  }
12
18
  Env(): Env {
13
- return envFactory();
19
+ return this._envFactory();
14
20
  }
15
21
  Args(): string[] {
16
22
  throw new Error("Args-Method not implemented.");
@@ -65,15 +71,16 @@ function CFWriteableStream(writeFn: (chunk: Uint8Array) => Promise<void>): Writa
65
71
  return ts.writable;
66
72
  }
67
73
 
68
- const baseSysAbstraction = new ResolveOnce<BaseBasicSysAbstraction>();
69
- export function CFBasicSysAbstraction(param?: WrapperBasicSysAbstractionParams): BasicSysAbstraction {
70
- const my = baseSysAbstraction.once(() => {
71
- return new BaseBasicSysAbstraction({
72
- TxtEnDecoder: param?.TxtEnDecoder || TxtEnDecoderSingleton(),
74
+ let baseSysAbstraction: BaseBasicSysAbstraction | undefined = undefined;
75
+ export function CFBasicSysAbstraction(param: WithCementWrapperSysAbstractionParams): BasicSysAbstraction {
76
+ const ende = param?.TxtEnDecoder || param.cement.TxtEnDecoderSingleton();
77
+ baseSysAbstraction =
78
+ baseSysAbstraction ??
79
+ new param.cement.BaseBasicSysAbstraction({
80
+ TxtEnDecoder: ende,
73
81
  });
74
- });
75
- return new WrapperBasicSysAbstraction(my, {
76
- basicRuntimeService: new CFRuntimeService(param?.TxtEnDecoder ?? my._txtEnDe),
82
+ return new param.cement.WrapperBasicSysAbstraction(baseSysAbstraction, {
83
+ basicRuntimeService: new CFRuntimeService(ende, param.cement.envFactory),
77
84
  ...param,
78
85
  });
79
86
  }
@@ -1,17 +1,17 @@
1
- import { ResolveOnce } from "../resolve-once.js";
2
- import { runtimeFn } from "../runtime.js";
3
- import { EnvActions, EnvImpl, EnvFactoryOpts, Env } from "../sys-env.js";
1
+ import type { EnvActions, EnvImpl, EnvFactoryOpts, Env, WithCement } from "@adviser/cement";
4
2
 
5
- const once = new ResolveOnce<CFEnvActions>();
3
+ let once: CFEnvActions | undefined = undefined;
6
4
  export class CFEnvActions implements EnvActions {
7
5
  readonly injectOnRegister: Record<string, string> = {};
8
6
  readonly cfEnv: Map<string, string>;
7
+ readonly opts: WithCement<Partial<EnvFactoryOpts>>;
9
8
  env?: EnvImpl;
10
- static new(opts: Partial<EnvFactoryOpts>): EnvActions {
11
- return once.once(() => new CFEnvActions(opts));
9
+ static new(opts: WithCement<Partial<EnvFactoryOpts>>): EnvActions {
10
+ once = once ?? new CFEnvActions(opts);
11
+ return once;
12
12
  }
13
- static inject(o: Record<string, string>): void {
14
- const env = CFEnvActions.new({}) as CFEnvActions;
13
+ static inject(o: Record<string, string>, cement: typeof import("@adviser/cement")): void {
14
+ const env = CFEnvActions.new({ cement }) as CFEnvActions;
15
15
  for (const key in o) {
16
16
  const value = o[key];
17
17
  if (typeof value === "string") {
@@ -23,11 +23,12 @@ export class CFEnvActions implements EnvActions {
23
23
  }
24
24
  }
25
25
  }
26
- private constructor(env: Partial<EnvFactoryOpts>) {
26
+ private constructor(env: WithCement<Partial<EnvFactoryOpts>>) {
27
27
  this.cfEnv = new Map<string, string>(Object.entries(env.presetEnv || {}));
28
+ this.opts = env;
28
29
  }
29
30
  active(): boolean {
30
- return runtimeFn().isCFWorker;
31
+ return this.opts.cement.runtimeFn().isCFWorker;
31
32
  }
32
33
  register(env: Env): Env {
33
34
  this.env = env as EnvImpl;
@@ -1,18 +1,21 @@
1
1
  /// <reference types="deno" />
2
2
 
3
- import { BaseBasicSysAbstraction, WrapperBasicSysAbstraction, WrapperBasicSysAbstractionParams } from "../base-sys-abstraction.js";
4
- import { ResolveOnce } from "../resolve-once.js";
5
- import { BasicRuntimeService, BasicSysAbstraction } from "../sys-abstraction.js";
6
- import { Env, envFactory } from "../sys-env.js";
7
- import { TxtEnDecoder, TxtEnDecoderSingleton } from "../txt-en-decoder.js";
3
+ import type {
4
+ BasicRuntimeService,
5
+ Env,
6
+ BasicSysAbstraction,
7
+ EnvFactory,
8
+ BaseBasicSysAbstraction,
9
+ WithCementWrapperSysAbstractionParams,
10
+ } from "@adviser/cement";
8
11
 
9
12
  export class DenoRuntimeService implements BasicRuntimeService {
10
- readonly _txtEnDe: TxtEnDecoder;
11
- constructor(ende: TxtEnDecoder) {
12
- this._txtEnDe = ende;
13
+ readonly _envFactory: EnvFactory;
14
+ constructor(envFactory: EnvFactory) {
15
+ this._envFactory = envFactory;
13
16
  }
14
17
  Env(): Env {
15
- return envFactory();
18
+ return this._envFactory();
16
19
  }
17
20
 
18
21
  Args(): string[] {
@@ -27,15 +30,16 @@ export class DenoRuntimeService implements BasicRuntimeService {
27
30
  }
28
31
  }
29
32
 
30
- const baseSysAbstraction = new ResolveOnce<BaseBasicSysAbstraction>();
31
- export function DenoBasicSysAbstraction(param?: WrapperBasicSysAbstractionParams): BasicSysAbstraction {
32
- const my = baseSysAbstraction.once(() => {
33
- return new BaseBasicSysAbstraction({
34
- TxtEnDecoder: param?.TxtEnDecoder || TxtEnDecoderSingleton(),
33
+ let baseBasicSysAbstraction: BaseBasicSysAbstraction | undefined = undefined;
34
+ export function DenoBasicSysAbstraction(param: WithCementWrapperSysAbstractionParams): BasicSysAbstraction {
35
+ const ende = param.TxtEnDecoder ?? param.cement.TxtEnDecoderSingleton();
36
+ baseBasicSysAbstraction =
37
+ baseBasicSysAbstraction ??
38
+ new param.cement.BaseBasicSysAbstraction({
39
+ TxtEnDecoder: ende,
35
40
  });
36
- });
37
- return new WrapperBasicSysAbstraction(my, {
38
- basicRuntimeService: new DenoRuntimeService(param?.TxtEnDecoder ?? my._txtEnDe),
41
+ return new param.cement.WrapperBasicSysAbstraction(baseBasicSysAbstraction, {
42
+ basicRuntimeService: new DenoRuntimeService(param?.cement.envFactory),
39
43
  ...param,
40
44
  });
41
45
  }
@@ -1,6 +1,4 @@
1
- import { ResolveOnce } from "../resolve-once.js";
2
- import { runtimeFn } from "../runtime.js";
3
- import { Env, EnvActions, EnvFactoryOpts } from "../sys-env.js";
1
+ import type { Env, EnvActions, EnvFactoryOpts, WithCement } from "@adviser/cement";
4
2
 
5
3
  interface DenoEnv {
6
4
  get: (key: string) => string | undefined;
@@ -10,7 +8,7 @@ interface DenoEnv {
10
8
  delete: (key: string) => void;
11
9
  }
12
10
 
13
- const once = new ResolveOnce<DenoEnvActions>();
11
+ let once: DenoEnvActions | undefined = undefined;
14
12
  export class DenoEnvActions implements EnvActions {
15
13
  readonly #deno = globalThis as unknown as {
16
14
  Deno: {
@@ -18,16 +16,17 @@ export class DenoEnvActions implements EnvActions {
18
16
  };
19
17
  };
20
18
 
21
- static new(opts: Partial<EnvFactoryOpts>): EnvActions {
22
- return once.once(() => new DenoEnvActions(opts));
19
+ static new(opts: WithCement<Partial<EnvFactoryOpts>>): EnvActions {
20
+ once = once ?? new DenoEnvActions(opts);
21
+ return once;
23
22
  }
24
23
 
25
24
  get _env(): DenoEnv {
26
25
  return this.#deno.Deno.env;
27
26
  }
28
27
 
29
- readonly opts: Partial<EnvFactoryOpts>;
30
- private constructor(opts: Partial<EnvFactoryOpts>) {
28
+ readonly opts: WithCement<Partial<EnvFactoryOpts>>;
29
+ private constructor(opts: WithCement<Partial<EnvFactoryOpts>>) {
31
30
  this.opts = opts;
32
31
  }
33
32
 
@@ -38,7 +37,7 @@ export class DenoEnvActions implements EnvActions {
38
37
  return env;
39
38
  }
40
39
  active(): boolean {
41
- return runtimeFn().isDeno;
40
+ return this.opts.cement.runtimeFn().isDeno;
42
41
  }
43
42
  keys(): string[] {
44
43
  return Object.keys(this._env.toObject());
@@ -1,6 +1,5 @@
1
1
  import * as path from "node:path";
2
- import type { FileService, NamedWritableStream } from "../file-service.js";
3
- import { TxtEnDecoder, TxtEnDecoderSingleton } from "../txt-en-decoder.js";
2
+ import type { FileService, NamedWritableStream, TxtEnDecoder } from "@adviser/cement";
4
3
 
5
4
  const Deno = (globalThis as unknown as { Deno: unknown }).Deno as {
6
5
  cwd(): string;
@@ -12,7 +11,7 @@ const Deno = (globalThis as unknown as { Deno: unknown }).Deno as {
12
11
  export class DenoFileService implements FileService {
13
12
  readonly baseDir: string;
14
13
  readonly txtEnde: TxtEnDecoder;
15
- constructor(baseDir: string = Deno.cwd(), txtEnde: TxtEnDecoder = TxtEnDecoderSingleton()) {
14
+ constructor(txtEnde: TxtEnDecoder, baseDir: string = Deno.cwd()) {
16
15
  this.baseDir = this.abs(baseDir);
17
16
  this.txtEnde = txtEnde;
18
17
  }
@@ -64,7 +63,7 @@ export class DenoFileService implements FileService {
64
63
  return path.isAbsolute(fname);
65
64
  }
66
65
 
67
- async writeFileString(fname: string, content: string, ende: TxtEnDecoder = TxtEnDecoderSingleton()): Promise<void> {
66
+ async writeFileString(fname: string, content: string, ende: TxtEnDecoder = this.txtEnde): Promise<void> {
68
67
  const o = await this.create(fname);
69
68
  const wr = o.stream.getWriter();
70
69
  await wr.write(ende.encode(content));
@@ -1,13 +1,12 @@
1
- import {
1
+ import type {
2
2
  ExitService,
3
3
  ExitHandler,
4
4
  BaseSysAbstraction,
5
- WrapperBasicSysAbstractionParams,
6
- WrapperRuntimeSysAbstraction,
7
- } from "../base-sys-abstraction.js";
8
- import { ResolveOnce } from "../resolve-once.js";
9
- import { RuntimeSysAbstraction, SystemService, VoidFunc } from "../sys-abstraction.js";
10
- import { TxtEnDecoderSingleton } from "../txt-en-decoder.js";
5
+ RuntimeSysAbstraction,
6
+ SystemService,
7
+ VoidFunc,
8
+ WithCementWrapperSysAbstractionParams,
9
+ } from "@adviser/cement";
11
10
  import { DenoBasicSysAbstraction } from "./deno-basic-sys-abstraction.js";
12
11
  // import * as process from "node:process";
13
12
  import { DenoFileService } from "./deno-file-service.js";
@@ -114,17 +113,17 @@ export class DenoSystemService implements SystemService {
114
113
  }
115
114
  }
116
115
 
117
- const baseSysAbstraction = new ResolveOnce<BaseSysAbstraction>();
118
- export function DenoSysAbstraction(param?: WrapperBasicSysAbstractionParams): RuntimeSysAbstraction {
119
- const my = baseSysAbstraction.once(
120
- () =>
121
- new BaseSysAbstraction({
122
- TxtEnDecoder: param?.TxtEnDecoder || TxtEnDecoderSingleton(),
123
- FileSystem: new DenoFileService(),
124
- SystemService: new DenoSystemService(),
125
- }),
126
- );
127
- return new WrapperRuntimeSysAbstraction(my, {
116
+ let baseSysAbstraction: BaseSysAbstraction | undefined = undefined;
117
+ export function DenoSysAbstraction(param: WithCementWrapperSysAbstractionParams): RuntimeSysAbstraction {
118
+ const ende = param?.TxtEnDecoder ?? param.cement.TxtEnDecoderSingleton();
119
+ baseSysAbstraction =
120
+ baseSysAbstraction ??
121
+ new param.cement.BaseSysAbstraction({
122
+ TxtEnDecoder: ende,
123
+ FileSystem: new DenoFileService(ende),
124
+ SystemService: new DenoSystemService(),
125
+ });
126
+ return new param.cement.WrapperRuntimeSysAbstraction(baseSysAbstraction, {
128
127
  basicRuntimeService: DenoBasicSysAbstraction(param),
129
128
  ...param,
130
129
  });
package/src/deno/index.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export * from "./deno-sys-abstraction.js";
2
2
  export * from "./deno-file-service.js";
3
+ export * from "./deno-env-actions.js";
4
+ export * from "./deno-basic-sys-abstraction.js";
package/src/index.cjs.ts CHANGED
@@ -28,7 +28,7 @@ export * from "./is-promise.js";
28
28
  export * from "./app-context.js";
29
29
 
30
30
  // ugly
31
- export * as utils from "./utils/index.js";
31
+ // export * as utils from "@adviser/cement/utils"
32
32
  // import * as utils from "./utils/index.js";
33
33
 
34
34
  // export const param = utils.param;
package/src/index.ts CHANGED
@@ -35,4 +35,18 @@ export * from "./promise-sleep.js";
35
35
  export * from "./keyed-ng.js";
36
36
 
37
37
  // ugly not really esm but how could that work otherwise?
38
- export * as utils from "./utils/index.js";
38
+ // export * as utils from "@adviser/cement/utils"
39
+
40
+ export * from "./utils/rebuffer.js";
41
+ export * from "./utils/stream-map.js";
42
+ export * from "./utils/stream2string.js";
43
+ export * from "./utils/string2stream.js";
44
+ export * from "./utils/console-write-stream.js";
45
+ export * from "./utils/fanout-write-stream.js";
46
+ export * from "./utils/get-params-result.js";
47
+ export * from "./utils/stripper.js";
48
+ export * from "./utils/sorted-object.js";
49
+ export * from "./utils/uint8array-equal.js";
50
+ export * from "./utils/coerce-uint8.js";
51
+ export * from "./utils/consume.js";
52
+ export * from "./utils/to-sorted.js";
@@ -1,5 +1,6 @@
1
- import { LevelHandler, Level } from "./logger.js";
1
+ import { LevelHandler } from "./logger.js";
2
2
  import { Option } from "./option.js";
3
+ import { Level } from "./types.js";
3
4
 
4
5
  export class LevelHandlerImpl implements LevelHandler {
5
6
  readonly _globalLevels: Set<Level> = new Set<Level>([Level.INFO, Level.ERROR, Level.WARN]);
@@ -2,17 +2,12 @@
2
2
  import YAML from "yaml";
3
3
  import {
4
4
  AsError,
5
- FnSerialized,
6
- LogSerializable,
7
- Level,
8
5
  Logger,
9
6
  logValue,
10
- Serialized,
11
7
  WithLogger,
12
8
  // sanitizeSerialize,
13
9
  Sized,
14
10
  Lengthed,
15
- LogValue,
16
11
  LevelHandler,
17
12
  LogFormatter,
18
13
  LogValueArg,
@@ -26,6 +21,7 @@ import { TxtEnDecoder, TxtEnDecoderSingleton } from "./txt-en-decoder.js";
26
21
  import { LevelHandlerSingleton } from "./log-level-impl.js";
27
22
  import { BasicSysAbstractionFactory } from "./base-sys-abstraction.js";
28
23
  import { LogWriterStream } from "./log-writer-impl.js";
24
+ import { LogValue, LogSerializable, Level, FnSerialized, Serialized } from "./types.js";
29
25
 
30
26
  function getLen(value: unknown, lvs: LogValueState): LogValue {
31
27
  if (Array.isArray(value)) {
package/src/logger.ts CHANGED
@@ -7,35 +7,7 @@ import { TxtEnDecoder, TxtEnDecoderSingleton } from "./txt-en-decoder.js";
7
7
  import { CoerceURI } from "./uri.js";
8
8
  import { isJSON } from "./is-json.js";
9
9
  import { ReadonlyURL } from "./mutable-url.js";
10
-
11
- export const Level = {
12
- WARN: "warn",
13
- DEBUG: "debug",
14
- INFO: "info",
15
- ERROR: "error",
16
- };
17
-
18
- export type Level = (typeof Level)[keyof typeof Level];
19
-
20
- export type Serialized = string | number | boolean;
21
- export type FnSerialized = () => Serialized | Serialized[];
22
-
23
- export class LogValue {
24
- constructor(readonly fn: FnSerialized) {}
25
- value(): Serialized | Serialized[] {
26
- try {
27
- // console.log("LogValue.value", this.fn.toString());
28
- return this.fn();
29
- } catch (e) {
30
- return `LogValue:${(e as Error).message}`;
31
- }
32
- }
33
- toJSON(): Serialized | Serialized[] {
34
- return this.value();
35
- }
36
- }
37
-
38
- export type LogSerializable = Record<string, LogValue | Promise<LogValue>>;
10
+ import { FnSerialized, Level, LogSerializable, LogValue, Serialized } from "./types.js";
39
11
 
40
12
  // export function sanitizeSerialize(lineEnd?: string): (key: unknown, val: unknown) => unknown {
41
13
  // const cache = new Set();
@@ -1,5 +1,5 @@
1
1
  import { exception2Result, Result } from "./result.js";
2
- import { hasHostPartProtocols } from "./uri.js";
2
+ import { hasHostPartProtocols } from "./types.js";
3
3
 
4
4
  // due to that the System URL class is has a strange behavior
5
5
  // on different platforms, we need to implement our own URL class
package/src/node/index.ts CHANGED
@@ -1,3 +1,5 @@
1
1
  export * from "./node-file-service.js";
2
2
  export * from "./node-sys-abstraction.js";
3
3
  export * from "./mock-file-service.js";
4
+ export * from "./node-env-actions.js";
5
+ export * from "./node-basic-sys-abstraction.js";
@@ -1,5 +1,4 @@
1
- import { NamedWritableStream } from "../file-service.js";
2
- import { TxtEnDecoderSingleton } from "../txt-en-decoder.js";
1
+ import type { NamedWritableStream } from "@adviser/cement";
3
2
  import { NodeFileService } from "./node-file-service.js";
4
3
 
5
4
  export interface FileCollector {
@@ -26,7 +25,7 @@ export class MockFileService extends NodeFileService {
26
25
  };
27
26
  this.files[oName] = fc;
28
27
  this.files[fname] = fc;
29
- const decoder = TxtEnDecoderSingleton();
28
+ const decoder = this.defTxtEnde;
30
29
 
31
30
  return Promise.resolve({
32
31
  name: oName,
@@ -1,11 +1,16 @@
1
- import { BaseBasicSysAbstraction, WrapperBasicSysAbstraction, WrapperBasicSysAbstractionParams } from "../base-sys-abstraction.js";
2
- import { ResolveOnce } from "../resolve-once.js";
3
- import { BasicRuntimeService, BasicSysAbstraction } from "../sys-abstraction.js";
4
- import { Env, envFactory } from "../sys-env.js";
5
- import { TxtEnDecoder, TxtEnDecoderSingleton } from "../txt-en-decoder.js";
1
+ import type {
2
+ BaseBasicSysAbstraction,
3
+ BasicRuntimeService,
4
+ BasicSysAbstraction,
5
+ Env,
6
+ EnvFactory,
7
+ TxtEnDecoder,
8
+ WithCementWrapperSysAbstractionParams,
9
+ } from "@adviser/cement";
6
10
 
7
11
  export class NodeRuntimeService implements BasicRuntimeService {
8
12
  readonly _txtEnDe: TxtEnDecoder;
13
+ readonly _envFactory: EnvFactory;
9
14
  readonly _gthis: {
10
15
  process: {
11
16
  argv: string[];
@@ -17,12 +22,13 @@ export class NodeRuntimeService implements BasicRuntimeService {
17
22
  };
18
23
  };
19
24
  };
20
- constructor(ende: TxtEnDecoder) {
25
+ constructor(ende: TxtEnDecoder, envFactory: EnvFactory) {
21
26
  this._txtEnDe = ende;
27
+ this._envFactory = envFactory;
22
28
  this._gthis = globalThis as unknown as NodeRuntimeService["_gthis"];
23
29
  }
24
30
  Env(): Env {
25
- return envFactory();
31
+ return this._envFactory();
26
32
  }
27
33
 
28
34
  Args(): string[] {
@@ -45,15 +51,17 @@ export class NodeRuntimeService implements BasicRuntimeService {
45
51
  }
46
52
  }
47
53
 
48
- const baseSysAbstraction = new ResolveOnce<BaseBasicSysAbstraction>();
49
- export function NodeBasicSysAbstraction(param?: WrapperBasicSysAbstractionParams): BasicSysAbstraction {
50
- const my = baseSysAbstraction.once(() => {
51
- return new BaseBasicSysAbstraction({
52
- TxtEnDecoder: param?.TxtEnDecoder || TxtEnDecoderSingleton(),
54
+ let baseSysAbstraction: BaseBasicSysAbstraction | undefined = undefined;
55
+
56
+ export function NodeBasicSysAbstraction(param: WithCementWrapperSysAbstractionParams): BasicSysAbstraction {
57
+ const ende = param.TxtEnDecoder ?? param.cement.TxtEnDecoderSingleton();
58
+ baseSysAbstraction =
59
+ baseSysAbstraction ??
60
+ new param.cement.BaseBasicSysAbstraction({
61
+ TxtEnDecoder: ende,
53
62
  });
54
- });
55
- return new WrapperBasicSysAbstraction(my, {
56
- basicRuntimeService: new NodeRuntimeService(param?.TxtEnDecoder ?? my._txtEnDe),
63
+ return new param.cement.WrapperBasicSysAbstraction(baseSysAbstraction, {
64
+ basicRuntimeService: new NodeRuntimeService(ende, param.cement.envFactory),
57
65
  ...param,
58
66
  });
59
67
  }