@adviser/cement 0.4.3 → 0.4.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.
package/metafile-esm.json CHANGED
@@ -1 +1 @@
1
- {"inputs":{"src/file-service.ts":{"bytes":612,"imports":[],"format":"esm"},"src/is-promise.ts":{"bytes":517,"imports":[],"format":"esm"},"src/bin2text.ts":{"bytes":1312,"imports":[],"format":"esm"},"src/logger.ts":{"bytes":8856,"imports":[{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"},{"path":"src/bin2text.ts","kind":"import-statement","original":"./bin2text.js"},{"path":"./option.js","kind":"import-statement","external":true},{"path":"./result.js","kind":"import-statement","external":true},{"path":"./txt-en-decoder.js","kind":"import-statement","external":true},{"path":"./uri.js","kind":"import-statement","external":true}],"format":"esm"},"src/result.ts":{"bytes":3774,"imports":[{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"}],"format":"esm"},"src/types.ts":{"bytes":372,"imports":[],"format":"esm"},"src/utils/get-params-result.ts":{"bytes":1635,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"../result.js"},{"path":"src/types.ts","kind":"import-statement","original":"../types.js"}],"format":"esm"},"src/utils/relative-path.ts":{"bytes":4013,"imports":[],"format":"esm"},"src/utils/stripper.ts":{"bytes":2119,"imports":[],"format":"esm"},"src/uri.ts":{"bytes":18925,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/utils/get-params-result.ts","kind":"import-statement","original":"./utils/get-params-result.js"},{"path":"src/utils/relative-path.ts","kind":"import-statement","original":"./utils/relative-path.js"},{"path":"src/utils/stripper.ts","kind":"import-statement","original":"./utils/stripper.js"}],"format":"esm"},"src/future.ts":{"bytes":637,"imports":[{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/lru-map-set.ts":{"bytes":3671,"imports":[],"format":"esm"},"src/resolve-once.ts":{"bytes":6798,"imports":[{"path":"src/future.ts","kind":"import-statement","original":"./future.js"},{"path":"src/lru-map-set.ts","kind":"import-statement","original":"./lru-map-set.js"},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"}],"format":"esm"},"src/utils/coerce-uint8.ts":{"bytes":1657,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"../result.js"}],"format":"esm"},"src/txt-en-decoder.ts":{"bytes":1496,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"./resolve-once.js"},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/utils/coerce-uint8.ts","kind":"import-statement","original":"./utils/coerce-uint8.js"}],"format":"esm"},"src/option.ts":{"bytes":1099,"imports":[],"format":"esm"},"src/log-level-impl.ts":{"bytes":2445,"imports":[{"path":"src/logger.ts","kind":"import-statement","original":"./logger.js"},{"path":"src/option.ts","kind":"import-statement","original":"./option.js"}],"format":"esm"},"src/runtime.ts":{"bytes":1395,"imports":[],"format":"esm"},"src/sys-abstraction.ts":{"bytes":1411,"imports":[{"path":"./file-service.js","kind":"import-statement","external":true},{"path":"./sys-env.js","kind":"import-statement","external":true},{"path":"./time.js","kind":"import-statement","external":true}],"format":"esm"},"src/time.ts":{"bytes":470,"imports":[],"format":"esm"},"src/deno/deno-env-actions.ts":{"bytes":1378,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"../runtime.js"},{"path":"../sys-env.js","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/node/node-env-actions.ts":{"bytes":1363,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"../runtime.js"},{"path":"../sys-env.js","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/web/web-env-actions.ts":{"bytes":1113,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-env.js","kind":"import-statement","external":true}],"format":"esm"},"src/cf/cf-env-actions.ts":{"bytes":1529,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"../runtime.js"},{"path":"../sys-env.js","kind":"import-statement","external":true}],"format":"esm"},"src/sys-env.ts":{"bytes":5910,"imports":[{"path":"src/deno/deno-env-actions.ts","kind":"import-statement","original":"./deno/deno-env-actions.js"},{"path":"src/node/node-env-actions.ts","kind":"import-statement","original":"./node/node-env-actions.js"},{"path":"src/web/web-env-actions.ts","kind":"import-statement","original":"./web/web-env-actions.js"},{"path":"src/cf/cf-env-actions.ts","kind":"import-statement","original":"./cf/cf-env-actions.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"./resolve-once.js"},{"path":"./result.js","kind":"import-statement","external":true},{"path":"src/utils/get-params-result.ts","kind":"import-statement","original":"./utils/get-params-result.js"}],"format":"esm"},"src/utils/console-write-stream.ts":{"bytes":2279,"imports":[],"format":"esm"},"src/web/web-basic-sys-abstraction.ts":{"bytes":4016,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"},{"path":"src/utils/console-write-stream.ts","kind":"import-statement","original":"../utils/console-write-stream.js"}],"format":"esm"},"src/cf/cf-basic-sys-abstraction.ts":{"bytes":2570,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/deno/deno-basic-sys-abstraction.ts":{"bytes":1338,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/node/node-basic-sys-abstraction.ts":{"bytes":1823,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/base-sys-abstraction.ts":{"bytes":7515,"imports":[{"path":"./file-service.js","kind":"import-statement","external":true},{"path":"src/runtime.ts","kind":"import-statement","original":"./runtime.js"},{"path":"src/sys-abstraction.ts","kind":"import-statement","original":"./sys-abstraction.js"},{"path":"src/time.ts","kind":"import-statement","original":"./time.js"},{"path":"./txt-en-decoder.js","kind":"import-statement","external":true},{"path":"src/web/web-basic-sys-abstraction.ts","kind":"import-statement","original":"./web/web-basic-sys-abstraction.js"},{"path":"./sys-env.js","kind":"import-statement","external":true},{"path":"src/cf/cf-basic-sys-abstraction.ts","kind":"import-statement","original":"./cf/cf-basic-sys-abstraction.js"},{"path":"src/deno/deno-basic-sys-abstraction.ts","kind":"import-statement","original":"./deno/deno-basic-sys-abstraction.js"},{"path":"src/node/node-basic-sys-abstraction.ts","kind":"import-statement","original":"./node/node-basic-sys-abstraction.js"}],"format":"esm"},"src/log-writer-impl.ts":{"bytes":2061,"imports":[],"format":"esm"},"src/logger-impl.ts":{"bytes":17803,"imports":[{"path":"yaml","kind":"import-statement","external":true},{"path":"src/logger.ts","kind":"import-statement","original":"./logger.js"},{"path":"./sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/uri.ts","kind":"import-statement","original":"./uri.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"./txt-en-decoder.js"},{"path":"src/log-level-impl.ts","kind":"import-statement","original":"./log-level-impl.js"},{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"./base-sys-abstraction.js"},{"path":"src/log-writer-impl.ts","kind":"import-statement","original":"./log-writer-impl.js"}],"format":"esm"},"src/utils/fanout-write-stream.ts":{"bytes":1138,"imports":[],"format":"esm"},"src/test/log-write-stream.ts":{"bytes":3069,"imports":[{"path":"src/utils/fanout-write-stream.ts","kind":"import-statement","original":"../utils/fanout-write-stream.js"},{"path":"src/future.ts","kind":"import-statement","original":"../future.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/test/mock-logger.ts":{"bytes":1150,"imports":[{"path":"src/log-level-impl.ts","kind":"import-statement","original":"../log-level-impl.js"},{"path":"../logger.js","kind":"import-statement","external":true},{"path":"src/logger-impl.ts","kind":"import-statement","original":"../logger-impl.js"},{"path":"src/test/log-write-stream.ts","kind":"import-statement","original":"./log-write-stream.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true}],"format":"esm"},"src/test/index.ts":{"bytes":73,"imports":[{"path":"src/test/log-write-stream.ts","kind":"import-statement","original":"./log-write-stream.js"},{"path":"src/test/mock-logger.ts","kind":"import-statement","original":"./mock-logger.js"}],"format":"esm"},"src/tracer.ts":{"bytes":5740,"imports":[{"path":"./time.js","kind":"import-statement","external":true},{"path":"./logger.js","kind":"import-statement","external":true},{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"}],"format":"esm"},"src/crypto.ts":{"bytes":3895,"imports":[],"format":"esm"},"src/version.ts":{"bytes":82,"imports":[],"format":"esm"},"src/http_header.ts":{"bytes":4570,"imports":[],"format":"esm"},"src/path-ops.ts":{"bytes":806,"imports":[{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/json-en-decoder.ts":{"bytes":3766,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"./txt-en-decoder.js"}],"format":"esm"},"src/coerce-binary.ts":{"bytes":1328,"imports":[],"format":"esm"},"src/utils/stream-map.ts":{"bytes":1658,"imports":[{"path":"src/is-promise.ts","kind":"import-statement","original":"../is-promise.js"}],"format":"esm"},"src/utils/rebuffer.ts":{"bytes":2278,"imports":[{"path":"src/utils/stream-map.ts","kind":"import-statement","original":"./stream-map.js"}],"format":"esm"},"src/utils/stream2string.ts":{"bytes":1352,"imports":[],"format":"esm"},"src/utils/string2stream.ts":{"bytes":470,"imports":[{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/utils/sorted-object.ts":{"bytes":631,"imports":[],"format":"esm"},"src/utils/uint8array-equal.ts":{"bytes":237,"imports":[],"format":"esm"},"src/utils/index.ts":{"bytes":402,"imports":[{"path":"src/utils/rebuffer.ts","kind":"import-statement","original":"./rebuffer.js"},{"path":"src/utils/stream-map.ts","kind":"import-statement","original":"./stream-map.js"},{"path":"src/utils/stream2string.ts","kind":"import-statement","original":"./stream2string.js"},{"path":"src/utils/string2stream.ts","kind":"import-statement","original":"./string2stream.js"},{"path":"src/utils/console-write-stream.ts","kind":"import-statement","original":"./console-write-stream.js"},{"path":"src/utils/fanout-write-stream.ts","kind":"import-statement","original":"./fanout-write-stream.js"},{"path":"src/utils/get-params-result.ts","kind":"import-statement","original":"./get-params-result.js"},{"path":"src/utils/stripper.ts","kind":"import-statement","original":"./stripper.js"},{"path":"src/utils/sorted-object.ts","kind":"import-statement","original":"./sorted-object.js"},{"path":"src/utils/uint8array-equal.ts","kind":"import-statement","original":"./uint8array-equal.js"},{"path":"src/utils/coerce-uint8.ts","kind":"import-statement","original":"./coerce-uint8.js"}],"format":"esm"},"src/index.ts":{"bytes":1010,"imports":[{"path":"src/file-service.ts","kind":"import-statement","original":"./file-service.js"},{"path":"src/logger-impl.ts","kind":"import-statement","original":"./logger-impl.js"},{"path":"src/logger.ts","kind":"import-statement","original":"./logger.js"},{"path":"src/sys-abstraction.ts","kind":"import-statement","original":"./sys-abstraction.js"},{"path":"src/sys-env.ts","kind":"import-statement","original":"./sys-env.js"},{"path":"src/time.ts","kind":"import-statement","original":"./time.js"},{"path":"src/test/index.ts","kind":"import-statement","original":"./test/index.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"./txt-en-decoder.js"},{"path":"src/log-level-impl.ts","kind":"import-statement","original":"./log-level-impl.js"},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/option.ts","kind":"import-statement","original":"./option.js"},{"path":"src/future.ts","kind":"import-statement","original":"./future.js"},{"path":"src/tracer.ts","kind":"import-statement","original":"./tracer.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"./resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"./runtime.js"},{"path":"src/uri.ts","kind":"import-statement","original":"./uri.js"},{"path":"src/crypto.ts","kind":"import-statement","original":"./crypto.js"},{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"./base-sys-abstraction.js"},{"path":"src/bin2text.ts","kind":"import-statement","original":"./bin2text.js"},{"path":"src/version.ts","kind":"import-statement","original":"./version.js"},{"path":"src/http_header.ts","kind":"import-statement","original":"./http_header.js"},{"path":"src/path-ops.ts","kind":"import-statement","original":"./path-ops.js"},{"path":"src/json-en-decoder.ts","kind":"import-statement","original":"./json-en-decoder.js"},{"path":"src/types.ts","kind":"import-statement","original":"./types.js"},{"path":"src/lru-map-set.ts","kind":"import-statement","original":"./lru-map-set.js"},{"path":"src/coerce-binary.ts","kind":"import-statement","original":"./coerce-binary.js"},{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"},{"path":"src/utils/index.ts","kind":"import-statement","original":"./utils/index.js"}],"format":"esm"},"src/cf/index.ts":{"bytes":84,"imports":[{"path":"src/cf/cf-basic-sys-abstraction.ts","kind":"import-statement","original":"./cf-basic-sys-abstraction.js"},{"path":"src/cf/cf-env-actions.ts","kind":"import-statement","original":"./cf-env-actions.js"}],"format":"esm"},"src/deno/deno-file-service.ts":{"bytes":2564,"imports":[{"path":"node:path","kind":"import-statement","external":true},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/deno/deno-sys-abstraction.ts":{"bytes":3843,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"},{"path":"src/deno/deno-basic-sys-abstraction.ts","kind":"import-statement","original":"./deno-basic-sys-abstraction.js"},{"path":"src/deno/deno-file-service.ts","kind":"import-statement","original":"./deno-file-service.js"}],"format":"esm"},"src/deno/index.ts":{"bytes":83,"imports":[{"path":"src/deno/deno-sys-abstraction.ts","kind":"import-statement","original":"./deno-sys-abstraction.js"},{"path":"src/deno/deno-file-service.ts","kind":"import-statement","original":"./deno-file-service.js"}],"format":"esm"},"src/node/node-file-service.ts":{"bytes":2365,"imports":[{"path":"node:path","kind":"import-statement","external":true},{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:process","kind":"import-statement","external":true},{"path":"../file-service.js","kind":"import-statement","external":true},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/node/node-sys-abstraction.ts":{"bytes":3560,"imports":[{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/node/node-file-service.ts","kind":"import-statement","original":"./node-file-service.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"},{"path":"node:process","kind":"import-statement","external":true},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/node/node-basic-sys-abstraction.ts","kind":"import-statement","original":"./node-basic-sys-abstraction.js"}],"format":"esm"},"src/node/mock-file-service.ts":{"bytes":1079,"imports":[{"path":"../file-service.js","kind":"import-statement","external":true},{"path":"src/node/node-file-service.ts","kind":"import-statement","original":"./node-file-service.js"}],"format":"esm"},"src/node/index.ts":{"bytes":123,"imports":[{"path":"src/node/node-file-service.ts","kind":"import-statement","original":"./node-file-service.js"},{"path":"src/node/node-sys-abstraction.ts","kind":"import-statement","original":"./node-sys-abstraction.js"},{"path":"src/node/mock-file-service.ts","kind":"import-statement","original":"./mock-file-service.js"}],"format":"esm"},"src/web/index.ts":{"bytes":48,"imports":[{"path":"src/web/web-basic-sys-abstraction.ts","kind":"import-statement","original":"./web-basic-sys-abstraction.js"}],"format":"esm"}},"outputs":{"dist/pkg/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":31026},"dist/pkg/index.js":{"imports":[{"path":"dist/pkg/chunk-FZHQTSQU.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NJMNJYN2.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["BaseBasicSysAbstraction","BaseSysAbstraction","BasicSysAbstractionFactory","BuildURI","ConstTime","EnvImpl","Future","HeadersImpl","HttpHeader","IDMode","IdService","IsLogger","JSONEnDecoderSingleton","JSONFormatter","Keyed","KeyedResolvOnce","KeyedResolvSeq","LRUMap","LRUSet","Level","LevelHandlerImpl","LevelHandlerSingleton","LogCollector","LogValue","LogWriteStream","LoggerImpl","Metric","Metrics","MockLogger","MutableURL","None","Option","RandomMode","RandomService","ResolveOnce","ResolveSeq","Result","ResultError","ResultOK","Some","StepTime","String2TimeMode","SysTime","Time","TimeFactory","TimeMode","TimeUnits","TraceNode","TxtEnDecoderSingleton","URI","VERSION","WrapperBasicSysAbstraction","WrapperRuntimeSysAbstraction","YAMLFormatter","asyncLogValue","bin2string","bin2text","envFactory","exception2Result","hasHostPartProtocols","isCoerceURI","isPromise","isURL","logValue","param","pathOps","registerEnvAction","runtimeFn","toCryptoRuntime","to_arraybuf","to_blob","to_uint8","top_uint8","utils"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/tracer.ts":{"bytesInOutput":3975},"src/crypto.ts":{"bytesInOutput":766},"src/version.ts":{"bytesInOutput":64},"src/http_header.ts":{"bytesInOutput":3697},"src/path-ops.ts":{"bytesInOutput":864},"src/json-en-decoder.ts":{"bytesInOutput":1508},"src/coerce-binary.ts":{"bytesInOutput":818}},"bytes":14098},"dist/pkg/cf/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/cf/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["CFBasicSysAbstraction","CFEnvActions","CFRuntimeService"],"entryPoint":"src/cf/index.ts","inputs":{"src/cf/index.ts":{"bytesInOutput":0}},"bytes":203},"dist/pkg/deno/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":10085},"dist/pkg/deno/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"},{"path":"node:path","kind":"import-statement","external":true}],"exports":["DenoExitServiceImpl","DenoFileService","DenoSysAbstraction","DenoSystemService"],"entryPoint":"src/deno/index.ts","inputs":{"src/deno/deno-file-service.ts":{"bytesInOutput":1700},"src/deno/deno-sys-abstraction.ts":{"bytesInOutput":2444},"src/deno/index.ts":{"bytesInOutput":0}},"bytes":4510},"dist/pkg/node/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":11502},"dist/pkg/node/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"},{"path":"node:path","kind":"import-statement","external":true},{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:process","kind":"import-statement","external":true},{"path":"node:process","kind":"import-statement","external":true}],"exports":["MockFileService","NodeExitServiceImpl","NodeFileService","NodeSysAbstraction","NodeSystemService"],"entryPoint":"src/node/index.ts","inputs":{"src/node/node-file-service.ts":{"bytesInOutput":1829},"src/node/index.ts":{"bytesInOutput":0},"src/node/node-sys-abstraction.ts":{"bytesInOutput":2342},"src/node/mock-file-service.ts":{"bytesInOutput":786}},"bytes":5376},"dist/pkg/test/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/test/index.js":{"imports":[{"path":"dist/pkg/chunk-FZHQTSQU.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["LogCollector","LogWriteStream","MockLogger"],"entryPoint":"src/test/index.ts","inputs":{},"bytes":239},"dist/pkg/chunk-FZHQTSQU.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":96697},"dist/pkg/chunk-FZHQTSQU.js":{"imports":[{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"},{"path":"yaml","kind":"import-statement","external":true}],"exports":["BuildURI","IsLogger","JSONFormatter","Level","LevelHandlerImpl","LevelHandlerSingleton","LogCollector","LogValue","LogWriteStream","LoggerImpl","MockLogger","MutableURL","None","Option","Some","URI","YAMLFormatter","asyncLogValue","bin2string","bin2text","hasHostPartProtocols","isCoerceURI","isURL","logValue"],"inputs":{"src/test/log-write-stream.ts":{"bytesInOutput":2031},"src/test/index.ts":{"bytesInOutput":0},"src/bin2text.ts":{"bytesInOutput":1124},"src/logger.ts":{"bytesInOutput":3566},"src/option.ts":{"bytesInOutput":762},"src/log-level-impl.ts":{"bytesInOutput":2031},"src/logger-impl.ts":{"bytesInOutput":12046},"src/utils/relative-path.ts":{"bytesInOutput":3178},"src/uri.ts":{"bytesInOutput":12523},"src/log-writer-impl.ts":{"bytesInOutput":1144},"src/test/mock-logger.ts":{"bytesInOutput":725}},"bytes":40014},"dist/pkg/utils/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/utils/index.js":{"imports":[{"path":"dist/pkg/chunk-NJMNJYN2.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["ConsoleWriterStream","ConsoleWriterStreamDefaultWriter","FanoutWriteStream","UInt8ArrayEqual","array2stream","asyncCoerceIntoUint8","coerceIntoUint8","devnull","getParamsResult","rebuffer","rebufferArray","stream2array","stream2string","stream2uint8array","streamMap","string2stream","stripper","toSortedArray","toSortedObject","toSortedObjectArray","uint8array2stream"],"entryPoint":"src/utils/index.ts","inputs":{},"bytes":912},"dist/pkg/chunk-NJMNJYN2.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":12049},"dist/pkg/chunk-NJMNJYN2.js":{"imports":[{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["UInt8ArrayEqual","array2stream","devnull","rebuffer","rebufferArray","stream2array","stream2string","stream2uint8array","streamMap","string2stream","toSortedArray","toSortedObject","toSortedObjectArray","uint8array2stream","utils_exports"],"inputs":{"src/utils/index.ts":{"bytesInOutput":921},"src/utils/stream-map.ts":{"bytesInOutput":1270},"src/utils/rebuffer.ts":{"bytesInOutput":1538},"src/utils/stream2string.ts":{"bytesInOutput":1148},"src/utils/string2stream.ts":{"bytesInOutput":269},"src/utils/sorted-object.ts":{"bytesInOutput":350},"src/utils/uint8array-equal.ts":{"bytesInOutput":197}},"bytes":6444},"dist/pkg/chunk-FOALXQST.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":5637},"dist/pkg/chunk-FOALXQST.js":{"imports":[],"exports":["FanoutWriteStream","stripper"],"inputs":{"src/utils/stripper.ts":{"bytesInOutput":1563},"src/utils/fanout-write-stream.ts":{"bytesInOutput":739}},"bytes":2409},"dist/pkg/web/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/web/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["WebBasicSysAbstraction"],"entryPoint":"src/web/index.ts","inputs":{"src/web/index.ts":{"bytesInOutput":0}},"bytes":133},"dist/pkg/chunk-FURW5CDL.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":48355},"dist/pkg/chunk-FURW5CDL.js":{"imports":[{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["BaseBasicSysAbstraction","BaseSysAbstraction","BasicSysAbstractionFactory","CFBasicSysAbstraction","CFEnvActions","CFRuntimeService","ConstTime","DenoBasicSysAbstraction","EnvImpl","IDMode","IdService","NodeBasicSysAbstraction","RandomMode","RandomService","StepTime","String2TimeMode","SysTime","Time","TimeFactory","TimeMode","TimeUnits","WebBasicSysAbstraction","WrapperBasicSysAbstraction","WrapperRuntimeSysAbstraction","envFactory","registerEnvAction","runtimeFn"],"inputs":{"src/runtime.ts":{"bytesInOutput":1066},"src/sys-abstraction.ts":{"bytesInOutput":475},"src/time.ts":{"bytesInOutput":269},"src/cf/cf-env-actions.ts":{"bytesInOutput":1020},"src/deno/deno-env-actions.ts":{"bytesInOutput":800},"src/node/node-env-actions.ts":{"bytesInOutput":792},"src/web/web-env-actions.ts":{"bytesInOutput":672},"src/sys-env.ts":{"bytesInOutput":3624},"src/cf/cf-basic-sys-abstraction.ts":{"bytesInOutput":1583},"src/deno/deno-basic-sys-abstraction.ts":{"bytesInOutput":783},"src/node/node-basic-sys-abstraction.ts":{"bytesInOutput":975},"src/base-sys-abstraction.ts":{"bytesInOutput":4493},"src/web/web-basic-sys-abstraction.ts":{"bytesInOutput":1020}},"bytes":18658},"dist/pkg/chunk-NTOGMD33.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":36692},"dist/pkg/chunk-NTOGMD33.js":{"imports":[],"exports":["ConsoleWriterStream","ConsoleWriterStreamDefaultWriter","Future","Keyed","KeyedResolvOnce","KeyedResolvSeq","LRUMap","LRUSet","ResolveOnce","ResolveSeq","Result","ResultError","ResultOK","TxtEnDecoderSingleton","__export","__privateAdd","__privateGet","__privateMethod","asyncCoerceIntoUint8","coerceIntoUint8","exception2Result","getParamsResult","isPromise","param"],"inputs":{"src/is-promise.ts":{"bytesInOutput":223},"src/result.ts":{"bytesInOutput":1613},"src/types.ts":{"bytesInOutput":228},"src/utils/get-params-result.ts":{"bytesInOutput":1108},"src/future.ts":{"bytesInOutput":823},"src/lru-map-set.ts":{"bytesInOutput":2724},"src/resolve-once.ts":{"bytesInOutput":4984},"src/utils/coerce-uint8.ts":{"bytesInOutput":925},"src/txt-en-decoder.ts":{"bytesInOutput":852},"src/utils/console-write-stream.ts":{"bytesInOutput":1582}},"bytes":16659}}}
1
+ {"inputs":{"src/file-service.ts":{"bytes":612,"imports":[],"format":"esm"},"src/is-promise.ts":{"bytes":517,"imports":[],"format":"esm"},"src/bin2text.ts":{"bytes":1312,"imports":[],"format":"esm"},"src/logger.ts":{"bytes":8856,"imports":[{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"},{"path":"src/bin2text.ts","kind":"import-statement","original":"./bin2text.js"},{"path":"./option.js","kind":"import-statement","external":true},{"path":"./result.js","kind":"import-statement","external":true},{"path":"./txt-en-decoder.js","kind":"import-statement","external":true},{"path":"./uri.js","kind":"import-statement","external":true}],"format":"esm"},"src/result.ts":{"bytes":3774,"imports":[{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"}],"format":"esm"},"src/types.ts":{"bytes":372,"imports":[],"format":"esm"},"src/utils/get-params-result.ts":{"bytes":1635,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"../result.js"},{"path":"src/types.ts","kind":"import-statement","original":"../types.js"}],"format":"esm"},"src/utils/relative-path.ts":{"bytes":4013,"imports":[],"format":"esm"},"src/utils/stripper.ts":{"bytes":2119,"imports":[],"format":"esm"},"src/uri.ts":{"bytes":21259,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/utils/get-params-result.ts","kind":"import-statement","original":"./utils/get-params-result.js"},{"path":"src/utils/relative-path.ts","kind":"import-statement","original":"./utils/relative-path.js"},{"path":"src/utils/stripper.ts","kind":"import-statement","original":"./utils/stripper.js"}],"format":"esm"},"src/future.ts":{"bytes":637,"imports":[{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/lru-map-set.ts":{"bytes":3671,"imports":[],"format":"esm"},"src/resolve-once.ts":{"bytes":6798,"imports":[{"path":"src/future.ts","kind":"import-statement","original":"./future.js"},{"path":"src/lru-map-set.ts","kind":"import-statement","original":"./lru-map-set.js"},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"}],"format":"esm"},"src/utils/coerce-uint8.ts":{"bytes":1657,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"../result.js"}],"format":"esm"},"src/txt-en-decoder.ts":{"bytes":1496,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"./resolve-once.js"},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/utils/coerce-uint8.ts","kind":"import-statement","original":"./utils/coerce-uint8.js"}],"format":"esm"},"src/option.ts":{"bytes":1099,"imports":[],"format":"esm"},"src/log-level-impl.ts":{"bytes":2445,"imports":[{"path":"src/logger.ts","kind":"import-statement","original":"./logger.js"},{"path":"src/option.ts","kind":"import-statement","original":"./option.js"}],"format":"esm"},"src/runtime.ts":{"bytes":1395,"imports":[],"format":"esm"},"src/sys-abstraction.ts":{"bytes":1411,"imports":[{"path":"./file-service.js","kind":"import-statement","external":true},{"path":"./sys-env.js","kind":"import-statement","external":true},{"path":"./time.js","kind":"import-statement","external":true}],"format":"esm"},"src/time.ts":{"bytes":470,"imports":[],"format":"esm"},"src/deno/deno-env-actions.ts":{"bytes":1378,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"../runtime.js"},{"path":"../sys-env.js","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/node/node-env-actions.ts":{"bytes":1363,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"../runtime.js"},{"path":"../sys-env.js","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/web/web-env-actions.ts":{"bytes":1113,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-env.js","kind":"import-statement","external":true}],"format":"esm"},"src/cf/cf-env-actions.ts":{"bytes":1529,"imports":[{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"../runtime.js"},{"path":"../sys-env.js","kind":"import-statement","external":true}],"format":"esm"},"src/sys-env.ts":{"bytes":5910,"imports":[{"path":"src/deno/deno-env-actions.ts","kind":"import-statement","original":"./deno/deno-env-actions.js"},{"path":"src/node/node-env-actions.ts","kind":"import-statement","original":"./node/node-env-actions.js"},{"path":"src/web/web-env-actions.ts","kind":"import-statement","original":"./web/web-env-actions.js"},{"path":"src/cf/cf-env-actions.ts","kind":"import-statement","original":"./cf/cf-env-actions.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"./resolve-once.js"},{"path":"./result.js","kind":"import-statement","external":true},{"path":"src/utils/get-params-result.ts","kind":"import-statement","original":"./utils/get-params-result.js"}],"format":"esm"},"src/utils/console-write-stream.ts":{"bytes":2279,"imports":[],"format":"esm"},"src/web/web-basic-sys-abstraction.ts":{"bytes":4016,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"},{"path":"src/utils/console-write-stream.ts","kind":"import-statement","original":"../utils/console-write-stream.js"}],"format":"esm"},"src/cf/cf-basic-sys-abstraction.ts":{"bytes":2570,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/deno/deno-basic-sys-abstraction.ts":{"bytes":1338,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/node/node-basic-sys-abstraction.ts":{"bytes":1823,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/sys-env.ts","kind":"import-statement","original":"../sys-env.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/base-sys-abstraction.ts":{"bytes":7515,"imports":[{"path":"./file-service.js","kind":"import-statement","external":true},{"path":"src/runtime.ts","kind":"import-statement","original":"./runtime.js"},{"path":"src/sys-abstraction.ts","kind":"import-statement","original":"./sys-abstraction.js"},{"path":"src/time.ts","kind":"import-statement","original":"./time.js"},{"path":"./txt-en-decoder.js","kind":"import-statement","external":true},{"path":"src/web/web-basic-sys-abstraction.ts","kind":"import-statement","original":"./web/web-basic-sys-abstraction.js"},{"path":"./sys-env.js","kind":"import-statement","external":true},{"path":"src/cf/cf-basic-sys-abstraction.ts","kind":"import-statement","original":"./cf/cf-basic-sys-abstraction.js"},{"path":"src/deno/deno-basic-sys-abstraction.ts","kind":"import-statement","original":"./deno/deno-basic-sys-abstraction.js"},{"path":"src/node/node-basic-sys-abstraction.ts","kind":"import-statement","original":"./node/node-basic-sys-abstraction.js"}],"format":"esm"},"src/log-writer-impl.ts":{"bytes":2061,"imports":[],"format":"esm"},"src/logger-impl.ts":{"bytes":17803,"imports":[{"path":"yaml","kind":"import-statement","external":true},{"path":"src/logger.ts","kind":"import-statement","original":"./logger.js"},{"path":"./sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/uri.ts","kind":"import-statement","original":"./uri.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"./txt-en-decoder.js"},{"path":"src/log-level-impl.ts","kind":"import-statement","original":"./log-level-impl.js"},{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"./base-sys-abstraction.js"},{"path":"src/log-writer-impl.ts","kind":"import-statement","original":"./log-writer-impl.js"}],"format":"esm"},"src/utils/fanout-write-stream.ts":{"bytes":1138,"imports":[],"format":"esm"},"src/test/log-write-stream.ts":{"bytes":3069,"imports":[{"path":"src/utils/fanout-write-stream.ts","kind":"import-statement","original":"../utils/fanout-write-stream.js"},{"path":"src/future.ts","kind":"import-statement","original":"../future.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/test/mock-logger.ts":{"bytes":1150,"imports":[{"path":"src/log-level-impl.ts","kind":"import-statement","original":"../log-level-impl.js"},{"path":"../logger.js","kind":"import-statement","external":true},{"path":"src/logger-impl.ts","kind":"import-statement","original":"../logger-impl.js"},{"path":"src/test/log-write-stream.ts","kind":"import-statement","original":"./log-write-stream.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true}],"format":"esm"},"src/test/index.ts":{"bytes":73,"imports":[{"path":"src/test/log-write-stream.ts","kind":"import-statement","original":"./log-write-stream.js"},{"path":"src/test/mock-logger.ts","kind":"import-statement","original":"./mock-logger.js"}],"format":"esm"},"src/tracer.ts":{"bytes":5740,"imports":[{"path":"./time.js","kind":"import-statement","external":true},{"path":"./logger.js","kind":"import-statement","external":true},{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"}],"format":"esm"},"src/crypto.ts":{"bytes":3895,"imports":[],"format":"esm"},"src/version.ts":{"bytes":82,"imports":[],"format":"esm"},"src/http_header.ts":{"bytes":4570,"imports":[],"format":"esm"},"src/path-ops.ts":{"bytes":1255,"imports":[{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/json-en-decoder.ts":{"bytes":3766,"imports":[{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"./txt-en-decoder.js"}],"format":"esm"},"src/coerce-binary.ts":{"bytes":1328,"imports":[],"format":"esm"},"src/utils/stream-map.ts":{"bytes":1658,"imports":[{"path":"src/is-promise.ts","kind":"import-statement","original":"../is-promise.js"}],"format":"esm"},"src/utils/rebuffer.ts":{"bytes":2278,"imports":[{"path":"src/utils/stream-map.ts","kind":"import-statement","original":"./stream-map.js"}],"format":"esm"},"src/utils/stream2string.ts":{"bytes":1352,"imports":[],"format":"esm"},"src/utils/string2stream.ts":{"bytes":470,"imports":[{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/utils/sorted-object.ts":{"bytes":631,"imports":[],"format":"esm"},"src/utils/uint8array-equal.ts":{"bytes":237,"imports":[],"format":"esm"},"src/utils/index.ts":{"bytes":402,"imports":[{"path":"src/utils/rebuffer.ts","kind":"import-statement","original":"./rebuffer.js"},{"path":"src/utils/stream-map.ts","kind":"import-statement","original":"./stream-map.js"},{"path":"src/utils/stream2string.ts","kind":"import-statement","original":"./stream2string.js"},{"path":"src/utils/string2stream.ts","kind":"import-statement","original":"./string2stream.js"},{"path":"src/utils/console-write-stream.ts","kind":"import-statement","original":"./console-write-stream.js"},{"path":"src/utils/fanout-write-stream.ts","kind":"import-statement","original":"./fanout-write-stream.js"},{"path":"src/utils/get-params-result.ts","kind":"import-statement","original":"./get-params-result.js"},{"path":"src/utils/stripper.ts","kind":"import-statement","original":"./stripper.js"},{"path":"src/utils/sorted-object.ts","kind":"import-statement","original":"./sorted-object.js"},{"path":"src/utils/uint8array-equal.ts","kind":"import-statement","original":"./uint8array-equal.js"},{"path":"src/utils/coerce-uint8.ts","kind":"import-statement","original":"./coerce-uint8.js"}],"format":"esm"},"src/index.ts":{"bytes":1010,"imports":[{"path":"src/file-service.ts","kind":"import-statement","original":"./file-service.js"},{"path":"src/logger-impl.ts","kind":"import-statement","original":"./logger-impl.js"},{"path":"src/logger.ts","kind":"import-statement","original":"./logger.js"},{"path":"src/sys-abstraction.ts","kind":"import-statement","original":"./sys-abstraction.js"},{"path":"src/sys-env.ts","kind":"import-statement","original":"./sys-env.js"},{"path":"src/time.ts","kind":"import-statement","original":"./time.js"},{"path":"src/test/index.ts","kind":"import-statement","original":"./test/index.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"./txt-en-decoder.js"},{"path":"src/log-level-impl.ts","kind":"import-statement","original":"./log-level-impl.js"},{"path":"src/result.ts","kind":"import-statement","original":"./result.js"},{"path":"src/option.ts","kind":"import-statement","original":"./option.js"},{"path":"src/future.ts","kind":"import-statement","original":"./future.js"},{"path":"src/tracer.ts","kind":"import-statement","original":"./tracer.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"./resolve-once.js"},{"path":"src/runtime.ts","kind":"import-statement","original":"./runtime.js"},{"path":"src/uri.ts","kind":"import-statement","original":"./uri.js"},{"path":"src/crypto.ts","kind":"import-statement","original":"./crypto.js"},{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"./base-sys-abstraction.js"},{"path":"src/bin2text.ts","kind":"import-statement","original":"./bin2text.js"},{"path":"src/version.ts","kind":"import-statement","original":"./version.js"},{"path":"src/http_header.ts","kind":"import-statement","original":"./http_header.js"},{"path":"src/path-ops.ts","kind":"import-statement","original":"./path-ops.js"},{"path":"src/json-en-decoder.ts","kind":"import-statement","original":"./json-en-decoder.js"},{"path":"src/types.ts","kind":"import-statement","original":"./types.js"},{"path":"src/lru-map-set.ts","kind":"import-statement","original":"./lru-map-set.js"},{"path":"src/coerce-binary.ts","kind":"import-statement","original":"./coerce-binary.js"},{"path":"src/is-promise.ts","kind":"import-statement","original":"./is-promise.js"},{"path":"src/utils/index.ts","kind":"import-statement","original":"./utils/index.js"}],"format":"esm"},"src/cf/index.ts":{"bytes":84,"imports":[{"path":"src/cf/cf-basic-sys-abstraction.ts","kind":"import-statement","original":"./cf-basic-sys-abstraction.js"},{"path":"src/cf/cf-env-actions.ts","kind":"import-statement","original":"./cf-env-actions.js"}],"format":"esm"},"src/deno/deno-file-service.ts":{"bytes":2564,"imports":[{"path":"node:path","kind":"import-statement","external":true},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/deno/deno-sys-abstraction.ts":{"bytes":3843,"imports":[{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"},{"path":"src/deno/deno-basic-sys-abstraction.ts","kind":"import-statement","original":"./deno-basic-sys-abstraction.js"},{"path":"src/deno/deno-file-service.ts","kind":"import-statement","original":"./deno-file-service.js"}],"format":"esm"},"src/deno/index.ts":{"bytes":83,"imports":[{"path":"src/deno/deno-sys-abstraction.ts","kind":"import-statement","original":"./deno-sys-abstraction.js"},{"path":"src/deno/deno-file-service.ts","kind":"import-statement","original":"./deno-file-service.js"}],"format":"esm"},"src/node/node-file-service.ts":{"bytes":2365,"imports":[{"path":"node:path","kind":"import-statement","external":true},{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:process","kind":"import-statement","external":true},{"path":"../file-service.js","kind":"import-statement","external":true},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"}],"format":"esm"},"src/node/node-sys-abstraction.ts":{"bytes":3560,"imports":[{"path":"../sys-abstraction.js","kind":"import-statement","external":true},{"path":"src/base-sys-abstraction.ts","kind":"import-statement","original":"../base-sys-abstraction.js"},{"path":"src/node/node-file-service.ts","kind":"import-statement","original":"./node-file-service.js"},{"path":"src/txt-en-decoder.ts","kind":"import-statement","original":"../txt-en-decoder.js"},{"path":"node:process","kind":"import-statement","external":true},{"path":"src/resolve-once.ts","kind":"import-statement","original":"../resolve-once.js"},{"path":"src/node/node-basic-sys-abstraction.ts","kind":"import-statement","original":"./node-basic-sys-abstraction.js"}],"format":"esm"},"src/node/mock-file-service.ts":{"bytes":1079,"imports":[{"path":"../file-service.js","kind":"import-statement","external":true},{"path":"src/node/node-file-service.ts","kind":"import-statement","original":"./node-file-service.js"}],"format":"esm"},"src/node/index.ts":{"bytes":123,"imports":[{"path":"src/node/node-file-service.ts","kind":"import-statement","original":"./node-file-service.js"},{"path":"src/node/node-sys-abstraction.ts","kind":"import-statement","original":"./node-sys-abstraction.js"},{"path":"src/node/mock-file-service.ts","kind":"import-statement","original":"./mock-file-service.js"}],"format":"esm"},"src/web/index.ts":{"bytes":48,"imports":[{"path":"src/web/web-basic-sys-abstraction.ts","kind":"import-statement","original":"./web-basic-sys-abstraction.js"}],"format":"esm"}},"outputs":{"dist/pkg/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":31740},"dist/pkg/index.js":{"imports":[{"path":"dist/pkg/chunk-Z724JFU6.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NJMNJYN2.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["BaseBasicSysAbstraction","BaseSysAbstraction","BasicSysAbstractionFactory","BuildURI","ConstTime","EnvImpl","Future","HeadersImpl","HttpHeader","IDMode","IdService","IsLogger","JSONEnDecoderSingleton","JSONFormatter","Keyed","KeyedResolvOnce","KeyedResolvSeq","LRUMap","LRUSet","Level","LevelHandlerImpl","LevelHandlerSingleton","LogCollector","LogValue","LogWriteStream","LoggerImpl","Metric","Metrics","MockLogger","MutableURL","None","Option","RandomMode","RandomService","ResolveOnce","ResolveSeq","Result","ResultError","ResultOK","Some","StepTime","String2TimeMode","SysTime","Time","TimeFactory","TimeMode","TimeUnits","TraceNode","TxtEnDecoderSingleton","URI","VERSION","WrapperBasicSysAbstraction","WrapperRuntimeSysAbstraction","YAMLFormatter","asyncLogValue","bin2string","bin2text","envFactory","exception2Result","hasHostPartProtocols","isCoerceURI","isPromise","isURL","logValue","param","pathOps","registerEnvAction","runtimeFn","toCryptoRuntime","to_arraybuf","to_blob","to_uint8","top_uint8","utils"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/tracer.ts":{"bytesInOutput":3975},"src/crypto.ts":{"bytesInOutput":766},"src/version.ts":{"bytesInOutput":64},"src/http_header.ts":{"bytesInOutput":3697},"src/path-ops.ts":{"bytesInOutput":1147},"src/json-en-decoder.ts":{"bytesInOutput":1508},"src/coerce-binary.ts":{"bytesInOutput":818}},"bytes":14381},"dist/pkg/cf/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/cf/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["CFBasicSysAbstraction","CFEnvActions","CFRuntimeService"],"entryPoint":"src/cf/index.ts","inputs":{"src/cf/index.ts":{"bytesInOutput":0}},"bytes":203},"dist/pkg/deno/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":10085},"dist/pkg/deno/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"},{"path":"node:path","kind":"import-statement","external":true}],"exports":["DenoExitServiceImpl","DenoFileService","DenoSysAbstraction","DenoSystemService"],"entryPoint":"src/deno/index.ts","inputs":{"src/deno/deno-file-service.ts":{"bytesInOutput":1700},"src/deno/deno-sys-abstraction.ts":{"bytesInOutput":2444},"src/deno/index.ts":{"bytesInOutput":0}},"bytes":4510},"dist/pkg/node/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":11502},"dist/pkg/node/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"},{"path":"node:path","kind":"import-statement","external":true},{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:process","kind":"import-statement","external":true},{"path":"node:process","kind":"import-statement","external":true}],"exports":["MockFileService","NodeExitServiceImpl","NodeFileService","NodeSysAbstraction","NodeSystemService"],"entryPoint":"src/node/index.ts","inputs":{"src/node/node-file-service.ts":{"bytesInOutput":1829},"src/node/index.ts":{"bytesInOutput":0},"src/node/node-sys-abstraction.ts":{"bytesInOutput":2342},"src/node/mock-file-service.ts":{"bytesInOutput":786}},"bytes":5376},"dist/pkg/test/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/test/index.js":{"imports":[{"path":"dist/pkg/chunk-Z724JFU6.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["LogCollector","LogWriteStream","MockLogger"],"entryPoint":"src/test/index.ts","inputs":{},"bytes":239},"dist/pkg/chunk-Z724JFU6.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":100750},"dist/pkg/chunk-Z724JFU6.js":{"imports":[{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"},{"path":"yaml","kind":"import-statement","external":true}],"exports":["BuildURI","IsLogger","JSONFormatter","Level","LevelHandlerImpl","LevelHandlerSingleton","LogCollector","LogValue","LogWriteStream","LoggerImpl","MockLogger","MutableURL","None","Option","Some","URI","YAMLFormatter","asyncLogValue","bin2string","bin2text","hasHostPartProtocols","isCoerceURI","isURL","logValue"],"inputs":{"src/test/log-write-stream.ts":{"bytesInOutput":2031},"src/test/index.ts":{"bytesInOutput":0},"src/bin2text.ts":{"bytesInOutput":1124},"src/logger.ts":{"bytesInOutput":3566},"src/option.ts":{"bytesInOutput":762},"src/log-level-impl.ts":{"bytesInOutput":2031},"src/logger-impl.ts":{"bytesInOutput":12046},"src/utils/relative-path.ts":{"bytesInOutput":3178},"src/uri.ts":{"bytesInOutput":14383},"src/log-writer-impl.ts":{"bytesInOutput":1144},"src/test/mock-logger.ts":{"bytesInOutput":725}},"bytes":41874},"dist/pkg/utils/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/utils/index.js":{"imports":[{"path":"dist/pkg/chunk-NJMNJYN2.js","kind":"import-statement"},{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["ConsoleWriterStream","ConsoleWriterStreamDefaultWriter","FanoutWriteStream","UInt8ArrayEqual","array2stream","asyncCoerceIntoUint8","coerceIntoUint8","devnull","getParamsResult","rebuffer","rebufferArray","stream2array","stream2string","stream2uint8array","streamMap","string2stream","stripper","toSortedArray","toSortedObject","toSortedObjectArray","uint8array2stream"],"entryPoint":"src/utils/index.ts","inputs":{},"bytes":912},"dist/pkg/chunk-NJMNJYN2.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":12049},"dist/pkg/chunk-NJMNJYN2.js":{"imports":[{"path":"dist/pkg/chunk-FOALXQST.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["UInt8ArrayEqual","array2stream","devnull","rebuffer","rebufferArray","stream2array","stream2string","stream2uint8array","streamMap","string2stream","toSortedArray","toSortedObject","toSortedObjectArray","uint8array2stream","utils_exports"],"inputs":{"src/utils/index.ts":{"bytesInOutput":921},"src/utils/stream-map.ts":{"bytesInOutput":1270},"src/utils/rebuffer.ts":{"bytesInOutput":1538},"src/utils/stream2string.ts":{"bytesInOutput":1148},"src/utils/string2stream.ts":{"bytesInOutput":269},"src/utils/sorted-object.ts":{"bytesInOutput":350},"src/utils/uint8array-equal.ts":{"bytesInOutput":197}},"bytes":6444},"dist/pkg/chunk-FOALXQST.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":5637},"dist/pkg/chunk-FOALXQST.js":{"imports":[],"exports":["FanoutWriteStream","stripper"],"inputs":{"src/utils/stripper.ts":{"bytesInOutput":1563},"src/utils/fanout-write-stream.ts":{"bytesInOutput":739}},"bytes":2409},"dist/pkg/web/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/pkg/web/index.js":{"imports":[{"path":"dist/pkg/chunk-FURW5CDL.js","kind":"import-statement"},{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["WebBasicSysAbstraction"],"entryPoint":"src/web/index.ts","inputs":{"src/web/index.ts":{"bytesInOutput":0}},"bytes":133},"dist/pkg/chunk-FURW5CDL.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":48355},"dist/pkg/chunk-FURW5CDL.js":{"imports":[{"path":"dist/pkg/chunk-NTOGMD33.js","kind":"import-statement"}],"exports":["BaseBasicSysAbstraction","BaseSysAbstraction","BasicSysAbstractionFactory","CFBasicSysAbstraction","CFEnvActions","CFRuntimeService","ConstTime","DenoBasicSysAbstraction","EnvImpl","IDMode","IdService","NodeBasicSysAbstraction","RandomMode","RandomService","StepTime","String2TimeMode","SysTime","Time","TimeFactory","TimeMode","TimeUnits","WebBasicSysAbstraction","WrapperBasicSysAbstraction","WrapperRuntimeSysAbstraction","envFactory","registerEnvAction","runtimeFn"],"inputs":{"src/runtime.ts":{"bytesInOutput":1066},"src/sys-abstraction.ts":{"bytesInOutput":475},"src/time.ts":{"bytesInOutput":269},"src/cf/cf-env-actions.ts":{"bytesInOutput":1020},"src/deno/deno-env-actions.ts":{"bytesInOutput":800},"src/node/node-env-actions.ts":{"bytesInOutput":792},"src/web/web-env-actions.ts":{"bytesInOutput":672},"src/sys-env.ts":{"bytesInOutput":3624},"src/cf/cf-basic-sys-abstraction.ts":{"bytesInOutput":1583},"src/deno/deno-basic-sys-abstraction.ts":{"bytesInOutput":783},"src/node/node-basic-sys-abstraction.ts":{"bytesInOutput":975},"src/base-sys-abstraction.ts":{"bytesInOutput":4493},"src/web/web-basic-sys-abstraction.ts":{"bytesInOutput":1020}},"bytes":18658},"dist/pkg/chunk-NTOGMD33.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":36692},"dist/pkg/chunk-NTOGMD33.js":{"imports":[],"exports":["ConsoleWriterStream","ConsoleWriterStreamDefaultWriter","Future","Keyed","KeyedResolvOnce","KeyedResolvSeq","LRUMap","LRUSet","ResolveOnce","ResolveSeq","Result","ResultError","ResultOK","TxtEnDecoderSingleton","__export","__privateAdd","__privateGet","__privateMethod","asyncCoerceIntoUint8","coerceIntoUint8","exception2Result","getParamsResult","isPromise","param"],"inputs":{"src/is-promise.ts":{"bytesInOutput":223},"src/result.ts":{"bytesInOutput":1613},"src/types.ts":{"bytesInOutput":228},"src/utils/get-params-result.ts":{"bytesInOutput":1108},"src/future.ts":{"bytesInOutput":823},"src/lru-map-set.ts":{"bytesInOutput":2724},"src/resolve-once.ts":{"bytesInOutput":4984},"src/utils/coerce-uint8.ts":{"bytesInOutput":925},"src/txt-en-decoder.ts":{"bytesInOutput":852},"src/utils/console-write-stream.ts":{"bytesInOutput":1582}},"bytes":16659}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adviser/cement",
3
- "version": "0.4.3",
3
+ "version": "0.4.5",
4
4
  "description": "better try/catch/finally handling",
5
5
  "main": "index.js",
6
6
  "type": "module",
package/src/jsr.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adviser/cement",
3
- "version": "0.4.3",
3
+ "version": "0.4.5",
4
4
  "exports": {
5
5
  ".": "./index.ts",
6
6
  "./web": "./web/index.ts",
package/src/path-ops.ts CHANGED
@@ -6,17 +6,32 @@ export interface PathOps {
6
6
 
7
7
  class pathOpsImpl implements PathOps {
8
8
  join(...paths: string[]): string {
9
- return paths.map((i) => i.replace(/\/+$/, "")).join("/");
9
+ const parts = this.#parts(paths.filter((i) => i).join("/"));
10
+ if (parts.dirname === "" || parts.dirname === ".") {
11
+ return parts.basename ? parts.basename : ".";
12
+ }
13
+ return parts.dirname + "/" + parts.basename;
10
14
  }
11
15
  #parts(path: string): { dirname: string; basename: string } {
16
+ // clean up path
17
+ // remove double slashes
18
+ // remove double dots ././
19
+ // remove trailing slashes
20
+ path = path
21
+ .replace(/\/+/g, "/")
22
+ .replace(/(\/\.\/)+/g, "/")
23
+ .replace(/\/+$/, "");
12
24
  const splitted = path.split("/");
13
- const last = splitted.pop();
14
- if (splitted.length && last === "") {
15
- return this.#parts(this.join(...splitted));
25
+ if (splitted.length === 1) {
26
+ return {
27
+ dirname: ".",
28
+ basename: splitted[0] === "." ? "" : splitted[0],
29
+ };
16
30
  }
31
+ const basename = splitted.pop() as string;
17
32
  return {
18
- dirname: this.join(...splitted),
19
- basename: last ?? "",
33
+ dirname: splitted.join("/").replace(/^\.\//, ""),
34
+ basename,
20
35
  };
21
36
  }
22
37
  dirname(path: string): string {
package/src/uri.ts CHANGED
@@ -119,6 +119,16 @@ function coerceKey(key: string | OneKey<string>, def?: string): { key: string; d
119
119
  return { key, def: def };
120
120
  }
121
121
 
122
+ function resolveHash(hash: string): { getParam: (k: string) => string | undefined } {
123
+ const searchParams = new URLSearchParams(hash.replace(/^#/, ""));
124
+ return {
125
+ getParam: (k): string | undefined => {
126
+ const ret = searchParams.get(k);
127
+ return ret === null ? undefined : ret;
128
+ },
129
+ };
130
+ }
131
+
122
132
  export interface URIObject {
123
133
  readonly style: "host" | "path";
124
134
  readonly protocol: string;
@@ -177,7 +187,7 @@ export class MutableURL extends URL {
177
187
  private _pathname: string;
178
188
  private _hasHostpart: boolean;
179
189
 
180
- override readonly hash: string;
190
+ // override readonly hash: string;
181
191
 
182
192
  constructor(urlStr: string) {
183
193
  super("defect://does.not.exist");
@@ -201,7 +211,7 @@ export class MutableURL extends URL {
201
211
  } else {
202
212
  this._pathname = urlStr.replace(new RegExp(`^${this._protocol}//`), "").replace(/[#?].*$/, "");
203
213
  }
204
- this.hash = this._sysURL.hash;
214
+ // this.hash = this._sysURL.hash;
205
215
  }
206
216
 
207
217
  [customInspectSymbol](): string {
@@ -269,17 +279,30 @@ export class MutableURL extends URL {
269
279
  this._protocol = p;
270
280
  }
271
281
 
282
+ override get hash(): string {
283
+ return this._sysURL.hash;
284
+ }
285
+
286
+ override set hash(h: string) {
287
+ this._sysURL.hash = h;
288
+ }
289
+
272
290
  override get searchParams(): URLSearchParams {
273
291
  return this._sysURL.searchParams;
274
292
  }
275
293
 
276
- override toString(): string {
294
+ override get search(): string {
277
295
  let search = "";
278
296
  if (this._sysURL.searchParams.size) {
279
297
  for (const [key, value] of Array.from(this._sysURL.searchParams.entries()).sort((a, b) => a[0].localeCompare(b[0]))) {
280
298
  search += `${!search.length ? "?" : "&"}${key}=${encodeURIComponent(value)}`;
281
299
  }
282
300
  }
301
+ return search;
302
+ }
303
+
304
+ override toString(): string {
305
+ const search = this.search;
283
306
  let hostpart = "";
284
307
  if (this._hasHostpart) {
285
308
  hostpart = this._sysURL.hostname;
@@ -290,7 +313,7 @@ export class MutableURL extends URL {
290
313
  hostpart += "/";
291
314
  }
292
315
  }
293
- return `${this._protocol}//${hostpart}${this._pathname}${search}`;
316
+ return `${this._protocol}//${hostpart}${this._pathname}${search}${this.hash}`;
294
317
  }
295
318
  }
296
319
 
@@ -370,6 +393,11 @@ export class BuildURI implements URIInterface<BuildURI> {
370
393
  return this;
371
394
  }
372
395
 
396
+ hash(h: string): BuildURI {
397
+ this._url.hash = h;
398
+ return this;
399
+ }
400
+
373
401
  // could pass a relative path or a full URL
374
402
  // if relative path, it will be appended to the current path
375
403
  resolve(p: CoerceURI): BuildURI {
@@ -419,13 +447,57 @@ export class BuildURI implements URIInterface<BuildURI> {
419
447
  return this;
420
448
  }
421
449
 
422
- cleanParams(): BuildURI {
450
+ cleanParams(...remove: (string | string[])[]): BuildURI {
451
+ const keys = new Set(remove.flat());
423
452
  for (const key of Array.from(this._url.searchParams.keys())) {
424
- this._url.searchParams.delete(key);
453
+ if (keys.size === 0 || keys.has(key)) {
454
+ this._url.searchParams.delete(key);
455
+ }
425
456
  }
426
457
  return this;
427
458
  }
428
459
 
460
+ hashParams(
461
+ val: Record<string, string | number | boolean | Date | null | undefined>,
462
+ mode: "reset" | "merge" = "reset",
463
+ ): BuildURI {
464
+ let preset: Record<string, string>;
465
+ switch (mode) {
466
+ case "reset":
467
+ this._url.hash = "";
468
+ preset = {};
469
+ break;
470
+ case "merge":
471
+ default:
472
+ preset = Object.fromEntries(new URLSearchParams(this._url.hash.replace(/^#/, "")).entries());
473
+ break;
474
+ }
475
+ const out = new URLSearchParams("");
476
+ for (const [key, value] of Object.entries({ ...preset, ...val }).sort((a, b) => a[0].localeCompare(b[0]))) {
477
+ switch (typeof value) {
478
+ case "string":
479
+ out.set(key, value);
480
+ break;
481
+ case "number":
482
+ out.set(key, value.toString());
483
+ break;
484
+ case "boolean":
485
+ out.set(key, value ? "true" : "false");
486
+ break;
487
+ default:
488
+ if (value instanceof Date) {
489
+ out.set(key, value.toISOString());
490
+ } else {
491
+ // eslint-disable-next-line no-console
492
+ console.error(`unsupported type: ${typeof value} ignore key: ${key}`);
493
+ }
494
+ break;
495
+ }
496
+ }
497
+ this._url.hash = out.toString();
498
+ return this;
499
+ }
500
+
429
501
  delParam(key: string): BuildURI {
430
502
  this._url.searchParams.delete(key);
431
503
  return this;
@@ -468,6 +540,10 @@ export class BuildURI implements URIInterface<BuildURI> {
468
540
  return getParamsResult(keys, this);
469
541
  }
470
542
 
543
+ getHashParams(...keys: KeysParam): Result<Record<string, string>> {
544
+ return getParamsResult(keys, resolveHash(this._url.hash));
545
+ }
546
+
471
547
  toString(): string {
472
548
  this._url.searchParams.sort();
473
549
  return this._url.toString();
@@ -579,6 +655,10 @@ export class URI implements URIInterface<URI> {
579
655
  return this._url.hostname;
580
656
  }
581
657
 
658
+ get local(): string {
659
+ return this._url.pathname + this._url.search;
660
+ }
661
+
582
662
  // get password(): string {
583
663
  // return this._url.password;
584
664
  // }
@@ -611,9 +691,9 @@ export class URI implements URIInterface<URI> {
611
691
  // .replace(/\?.*$/, "");
612
692
  }
613
693
 
614
- // get hash(): string {
615
- // return this._url.hash;
616
- // }
694
+ get hash(): string {
695
+ return this._url.hash;
696
+ }
617
697
 
618
698
  // get host(): string {
619
699
  // return this._url.host;
@@ -644,6 +724,10 @@ export class URI implements URIInterface<URI> {
644
724
  return getParamsResult(keys, this);
645
725
  }
646
726
 
727
+ getHashParams(...keys: KeysParam): Result<Record<string, string>> {
728
+ return getParamsResult(keys, resolveHash(this._url.hash));
729
+ }
730
+
647
731
  clone(): URI {
648
732
  return new URI(this._url);
649
733
  }