zeed 1.1.1 → 1.2.4
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/AGENTS.md +225 -18
- package/README.md +1 -1
- package/dist/_experiments/bitcask.cjs.map +1 -1
- package/dist/browser/base64.cjs.map +1 -1
- package/dist/browser/gravatar.cjs.map +1 -1
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/localstorage.cjs.map +1 -1
- package/dist/browser/log/index.cjs.map +1 -1
- package/dist/browser/log/log-browser-factory.cjs.map +1 -1
- package/dist/browser/log/log-browser.cjs.map +1 -1
- package/dist/browser/log/log-colors.cjs.map +1 -1
- package/dist/browser/log/log-context-browser.cjs.map +1 -1
- package/dist/chunk-2TNLYCZH.cjs.map +1 -1
- package/dist/chunk-2UQU3IBA.cjs.map +1 -1
- package/dist/chunk-32B4KRI6.cjs.map +1 -1
- package/dist/{chunk-DAD3M2IM.cjs → chunk-344WNUEK.cjs} +2 -2
- package/dist/chunk-344WNUEK.cjs.map +1 -0
- package/dist/chunk-36N7ZI6A.cjs.map +1 -1
- package/dist/chunk-3P4XRJ23.cjs.map +1 -1
- package/dist/chunk-3TNVJY4F.cjs.map +1 -1
- package/dist/chunk-3ZBLU4D6.cjs.map +1 -1
- package/dist/chunk-47GAJHNO.cjs.map +1 -1
- package/dist/chunk-4ATJXWZH.cjs.map +1 -1
- package/dist/chunk-4B2XCWGL.cjs.map +1 -1
- package/dist/chunk-4M4EUXUS.cjs.map +1 -1
- package/dist/chunk-4TLMJAZB.cjs.map +1 -1
- package/dist/chunk-5RHVNJKM.cjs.map +1 -1
- package/dist/chunk-5RJ6XORD.cjs.map +1 -1
- package/dist/chunk-5VHLMAKU.cjs.map +1 -1
- package/dist/chunk-75LG3YTX.cjs.map +1 -1
- package/dist/chunk-7HXAZLZN.cjs.map +1 -1
- package/dist/chunk-7UA33BQW.cjs.map +1 -1
- package/dist/chunk-7XE6IQ4X.cjs.map +1 -1
- package/dist/chunk-A6DSKTWF.cjs.map +1 -1
- package/dist/chunk-ABCQXAMV.cjs.map +1 -1
- package/dist/chunk-AERHWWDH.cjs.map +1 -1
- package/dist/chunk-AH7ZMSSE.cjs.map +1 -1
- package/dist/chunk-B2XPF5R4.cjs.map +1 -1
- package/dist/chunk-B75IPNYG.cjs.map +1 -1
- package/dist/{chunk-RZPIAOGG.js → chunk-BPPN3ZNV.js} +2 -2
- package/dist/chunk-BPWOWVF7.cjs.map +1 -1
- package/dist/chunk-BQ66KUDG.cjs.map +1 -1
- package/dist/chunk-BTEZYY77.cjs.map +1 -1
- package/dist/chunk-BTOZJX47.cjs.map +1 -1
- package/dist/chunk-C3WUDLBK.cjs.map +1 -1
- package/dist/{chunk-AUYYYDRM.cjs → chunk-C72ST4ZR.cjs} +1 -1
- package/dist/chunk-C72ST4ZR.cjs.map +1 -0
- package/dist/chunk-C7CD7VGT.cjs.map +1 -1
- package/dist/chunk-CEANCAI7.cjs.map +1 -1
- package/dist/chunk-CGNAZMNO.cjs.map +1 -1
- package/dist/chunk-CGQIHGXL.cjs.map +1 -1
- package/dist/chunk-CHR4BOAA.cjs.map +1 -1
- package/dist/{chunk-LXFL3VYA.cjs → chunk-CLMIDN5Q.cjs} +2 -2
- package/dist/chunk-CLMIDN5Q.cjs.map +1 -0
- package/dist/chunk-CM2VW6MR.cjs.map +1 -1
- package/dist/chunk-CWGNDC2T.cjs.map +1 -1
- package/dist/chunk-CYPMLO24.cjs.map +1 -1
- package/dist/{chunk-AH3LPY2A.js → chunk-DBXJFUZ7.js} +2 -2
- package/dist/chunk-DHZPCNPE.cjs.map +1 -1
- package/dist/chunk-DLVWYIS2.cjs.map +1 -1
- package/dist/chunk-DMKWVXY7.cjs.map +1 -1
- package/dist/chunk-DRKHTT76.cjs.map +1 -1
- package/dist/chunk-DXQHNAIL.cjs.map +1 -1
- package/dist/chunk-ETHALF2S.cjs.map +1 -1
- package/dist/chunk-FMMEBQFR.cjs.map +1 -1
- package/dist/{chunk-5BA3O5XZ.cjs → chunk-GARQAHQE.cjs} +2 -2
- package/dist/chunk-GARQAHQE.cjs.map +1 -0
- package/dist/chunk-GFMSFYKE.cjs.map +1 -1
- package/dist/chunk-GILR5DT5.cjs.map +1 -1
- package/dist/chunk-HEYAOG5D.cjs.map +1 -1
- package/dist/chunk-HTEAHUXG.cjs.map +1 -1
- package/dist/chunk-HZC2RTNS.cjs.map +1 -1
- package/dist/chunk-I5HBI6EC.cjs.map +1 -1
- package/dist/chunk-IA2OMOCB.cjs.map +1 -1
- package/dist/chunk-IJE3VBKC.cjs.map +1 -1
- package/dist/chunk-IOEXXFCL.cjs.map +1 -1
- package/dist/chunk-IVUEQANC.cjs.map +1 -1
- package/dist/chunk-IXH5D35S.cjs.map +1 -1
- package/dist/chunk-JJKWFF7B.cjs.map +1 -1
- package/dist/chunk-JLB5ALZ5.cjs.map +1 -1
- package/dist/chunk-JWON4PLZ.cjs.map +1 -1
- package/dist/chunk-K4IRAHZV.cjs.map +1 -1
- package/dist/chunk-KFNJHRCB.cjs.map +1 -1
- package/dist/chunk-KJ3RKZH5.cjs.map +1 -1
- package/dist/chunk-KNKYRU4X.cjs.map +1 -1
- package/dist/chunk-KPU7ZOUH.cjs.map +1 -1
- package/dist/{chunk-LI2YWV3G.js → chunk-KWFFSQMW.js} +2 -2
- package/dist/chunk-KYDHX5HW.cjs.map +1 -1
- package/dist/chunk-KYNPDWX4.cjs.map +1 -1
- package/dist/chunk-L5C7BHMX.cjs.map +1 -1
- package/dist/chunk-L5IXZXHR.cjs.map +1 -1
- package/dist/chunk-L5XYQBG4.cjs.map +1 -1
- package/dist/chunk-LCZEBSTH.cjs.map +1 -1
- package/dist/{chunk-ETMFCGHO.cjs → chunk-LG7UXZKN.cjs} +2 -2
- package/dist/chunk-LG7UXZKN.cjs.map +1 -0
- package/dist/chunk-LLRM7AW7.cjs.map +1 -1
- package/dist/chunk-LONV4KUS.cjs +2 -0
- package/dist/chunk-LONV4KUS.cjs.map +1 -0
- package/dist/chunk-LUPESR7S.cjs.map +1 -1
- package/dist/chunk-M3W3RDZF.cjs.map +1 -1
- package/dist/chunk-MIEXPALS.cjs.map +1 -1
- package/dist/chunk-MQFII6MR.cjs.map +1 -1
- package/dist/{chunk-UFYY2K4G.js → chunk-MV2F4DQ6.js} +2 -2
- package/dist/chunk-MVSJTIGR.cjs.map +1 -1
- package/dist/chunk-N7XCSNC7.cjs.map +1 -1
- package/dist/chunk-NNQYMABK.cjs.map +1 -1
- package/dist/chunk-NPQ77LO4.cjs.map +1 -1
- package/dist/chunk-NU2LARFE.cjs.map +1 -1
- package/dist/chunk-NVLJOTGF.cjs.map +1 -1
- package/dist/chunk-NVLQ55J2.cjs.map +1 -1
- package/dist/chunk-O5QH7LLM.cjs.map +1 -1
- package/dist/chunk-OGP3AZFM.cjs.map +1 -1
- package/dist/chunk-ONPGFM6G.cjs.map +1 -1
- package/dist/chunk-P7XCQ7WV.cjs.map +1 -1
- package/dist/{chunk-X7RJP4DR.cjs → chunk-PU67BXVP.cjs} +1 -1
- package/dist/chunk-PU67BXVP.cjs.map +1 -0
- package/dist/chunk-PYRSJ4KI.cjs.map +1 -1
- package/dist/chunk-Q2SNIYQS.cjs.map +1 -1
- package/dist/chunk-QOZ5S3UC.cjs.map +1 -1
- package/dist/chunk-R3NVN3FY.cjs.map +1 -1
- package/dist/chunk-R74LEJVE.cjs.map +1 -1
- package/dist/chunk-RAXM7FU3.cjs.map +1 -1
- package/dist/chunk-RLII6GIK.cjs.map +1 -1
- package/dist/chunk-RMTW3TW2.cjs.map +1 -1
- package/dist/chunk-SEQAFKIV.cjs.map +1 -1
- package/dist/chunk-SHOLGUSO.cjs.map +1 -1
- package/dist/chunk-SQK2VOFN.cjs.map +1 -1
- package/dist/{chunk-BRQSQXKK.js → chunk-SSKDGT5N.js} +1 -1
- package/dist/chunk-SSKDGT5N.js.map +1 -0
- package/dist/chunk-TAUWRIFY.cjs.map +1 -1
- package/dist/chunk-TJQMBWXU.cjs.map +1 -1
- package/dist/chunk-TNMEWZPW.cjs.map +1 -1
- package/dist/chunk-UCS53L2H.cjs.map +1 -1
- package/dist/chunk-ULLUQLTA.cjs.map +1 -1
- package/dist/chunk-UO65Z4DR.cjs.map +1 -1
- package/dist/chunk-UXW3L3L6.cjs.map +1 -1
- package/dist/{chunk-IMM23TO5.cjs → chunk-V3A7ZIGT.cjs} +2 -2
- package/dist/chunk-V3A7ZIGT.cjs.map +1 -0
- package/dist/chunk-VMGJFJIM.cjs.map +1 -1
- package/dist/chunk-VR7T3I5N.cjs.map +1 -1
- package/dist/chunk-VWJZWXTJ.cjs.map +1 -1
- package/dist/chunk-VX3R7DUJ.cjs.map +1 -1
- package/dist/{chunk-LTEGKVQQ.js → chunk-W4M6PGBQ.js} +2 -2
- package/dist/chunk-WAK73JNG.cjs.map +1 -1
- package/dist/chunk-WCOWHFZD.cjs.map +1 -1
- package/dist/chunk-WEF4N7J4.cjs.map +1 -1
- package/dist/{chunk-4X7UJTXJ.js → chunk-WH4WW45N.js} +2 -2
- package/dist/chunk-WHJI4PQ2.cjs.map +1 -1
- package/dist/chunk-WK6DXBUD.cjs.map +1 -1
- package/dist/chunk-WPWV7ZEM.cjs.map +1 -1
- package/dist/chunk-WSRQ3X55.cjs.map +1 -1
- package/dist/chunk-X6SZNPFL.cjs.map +1 -1
- package/dist/chunk-X764QBCC.cjs.map +1 -1
- package/dist/{chunk-L5OF6DSH.cjs → chunk-XAU2ICXA.cjs} +2 -2
- package/dist/chunk-XAU2ICXA.cjs.map +1 -0
- package/dist/chunk-XH7UHZOF.cjs.map +1 -1
- package/dist/chunk-XICDURQQ.cjs.map +1 -1
- package/dist/chunk-XMUXVBF2.cjs.map +1 -1
- package/dist/chunk-XX5NP5VA.cjs.map +1 -1
- package/dist/chunk-Y6NKJM35.cjs.map +1 -1
- package/dist/chunk-YEP2NVSS.js +2 -0
- package/dist/chunk-YEP2NVSS.js.map +1 -0
- package/dist/{chunk-PRTEIKN2.js → chunk-YO6FIHXC.js} +1 -1
- package/dist/chunk-YO6FIHXC.js.map +1 -0
- package/dist/chunk-ZBG4FI7E.cjs.map +1 -1
- package/dist/chunk-ZEDMMWJI.cjs.map +1 -1
- package/dist/chunk-ZEQQVU3K.cjs.map +1 -1
- package/dist/chunk-ZJQITDTA.cjs.map +1 -1
- package/dist/common/assert.cjs.map +1 -1
- package/dist/common/bin/index.cjs.map +1 -1
- package/dist/common/bin/lib0/binary.cjs.map +1 -1
- package/dist/common/bin/lib0/buffer.cjs.map +1 -1
- package/dist/common/bin/lib0/create.cjs.map +1 -1
- package/dist/common/bin/lib0/decoding.cjs.map +1 -1
- package/dist/common/bin/lib0/encoding.cjs.map +1 -1
- package/dist/common/bin/lib0/string.cjs.map +1 -1
- package/dist/common/crypto/aes-sealed.cjs.map +1 -1
- package/dist/common/crypto/crypto.cjs.map +1 -1
- package/dist/common/crypto/index.cjs.map +1 -1
- package/dist/common/crypto/xaes.cjs.map +1 -1
- package/dist/common/csv.cjs.map +1 -1
- package/dist/common/data/array.cjs.map +1 -1
- package/dist/common/data/basex-secure.cjs.map +1 -1
- package/dist/common/data/basex.cjs.map +1 -1
- package/dist/common/data/bin-types.cjs.map +1 -1
- package/dist/common/data/bin.cjs.map +1 -1
- package/dist/common/data/camelcase.cjs.map +1 -1
- package/dist/common/data/convert.cjs.map +1 -1
- package/dist/common/data/datauri.cjs.map +1 -1
- package/dist/common/data/day-legacy.cjs +1 -1
- package/dist/common/data/day-legacy.cjs.map +1 -1
- package/dist/common/data/day-legacy.js +1 -1
- package/dist/common/data/day.cjs +1 -1
- package/dist/common/data/day.cjs.map +1 -1
- package/dist/common/data/day.d.cts +19 -1
- package/dist/common/data/day.d.ts +19 -1
- package/dist/common/data/day.js +1 -1
- package/dist/common/data/decimal.cjs.map +1 -1
- package/dist/common/data/deep.cjs.map +1 -1
- package/dist/common/data/diff.cjs.map +1 -1
- package/dist/common/data/distributed.cjs.map +1 -1
- package/dist/common/data/format.cjs.map +1 -1
- package/dist/common/data/html.cjs.map +1 -1
- package/dist/common/data/index.cjs +1 -1
- package/dist/common/data/index.cjs.map +1 -1
- package/dist/common/data/index.d.cts +1 -1
- package/dist/common/data/index.d.ts +1 -1
- package/dist/common/data/index.js +1 -1
- package/dist/common/data/is.cjs.map +1 -1
- package/dist/common/data/json.cjs.map +1 -1
- package/dist/common/data/list.cjs.map +1 -1
- package/dist/common/data/lru.cjs.map +1 -1
- package/dist/common/data/math.cjs.map +1 -1
- package/dist/common/data/message.cjs.map +1 -1
- package/dist/common/data/object-changes.cjs.map +1 -1
- package/dist/common/data/object.cjs.map +1 -1
- package/dist/common/data/orderby.cjs.map +1 -1
- package/dist/common/data/path.cjs.map +1 -1
- package/dist/common/data/regexp.cjs.map +1 -1
- package/dist/common/data/rounding.cjs.map +1 -1
- package/dist/common/data/signal.cjs.map +1 -1
- package/dist/common/data/sortable.cjs.map +1 -1
- package/dist/common/data/sorted.cjs.map +1 -1
- package/dist/common/data/string-deburr.cjs.map +1 -1
- package/dist/common/data/string-hash-fnv.cjs.map +1 -1
- package/dist/common/data/string-hash-pool.cjs.map +1 -1
- package/dist/common/data/url.cjs.map +1 -1
- package/dist/common/data/utils.cjs.map +1 -1
- package/dist/common/data/wordlist.cjs.map +1 -1
- package/dist/common/data/xrx.cjs.map +1 -1
- package/dist/common/dispose-defer.cjs.map +1 -1
- package/dist/common/dispose-types.cjs.map +1 -1
- package/dist/common/dispose-utils.cjs.map +1 -1
- package/dist/common/exec/index.cjs +1 -1
- package/dist/common/exec/index.cjs.map +1 -1
- package/dist/common/exec/index.js +1 -1
- package/dist/common/exec/mutex.cjs.map +1 -1
- package/dist/common/exec/pool.cjs +1 -1
- package/dist/common/exec/pool.cjs.map +1 -1
- package/dist/common/exec/pool.js +1 -1
- package/dist/common/exec/progress.cjs.map +1 -1
- package/dist/common/exec/promise.cjs.map +1 -1
- package/dist/common/exec/queue.cjs.map +1 -1
- package/dist/common/exec/throttle-debounce.cjs.map +1 -1
- package/dist/common/global.cjs.map +1 -1
- package/dist/common/index.cjs +1 -1
- package/dist/common/index.cjs.map +1 -1
- package/dist/common/index.d.cts +1 -1
- package/dist/common/index.d.ts +1 -1
- package/dist/common/index.js +1 -1
- package/dist/common/localhost.cjs.map +1 -1
- package/dist/common/log/index.cjs.map +1 -1
- package/dist/common/log/log-base.cjs.map +1 -1
- package/dist/common/log/log-colors.cjs.map +1 -1
- package/dist/common/log/log-config.cjs.map +1 -1
- package/dist/common/log/log-console-capture.cjs.map +1 -1
- package/dist/common/log/log-console-original.cjs.map +1 -1
- package/dist/common/log/log-console.cjs.map +1 -1
- package/dist/common/log/log-context.cjs.map +1 -1
- package/dist/common/log/log-filter.cjs.map +1 -1
- package/dist/common/log/log-memory.cjs.map +1 -1
- package/dist/common/log/log-noop.cjs.map +1 -1
- package/dist/common/log/log.cjs.map +1 -1
- package/dist/common/msg/channel-debug.cjs.map +1 -1
- package/dist/common/msg/channel-local.cjs.map +1 -1
- package/dist/common/msg/channel-resilient.cjs.map +1 -1
- package/dist/common/msg/channel-wkwebview.cjs +2 -0
- package/dist/common/msg/channel-wkwebview.cjs.map +1 -0
- package/dist/common/msg/channel-wkwebview.d.cts +22 -0
- package/dist/common/msg/channel-wkwebview.d.ts +22 -0
- package/dist/common/msg/channel-wkwebview.js +2 -0
- package/dist/common/msg/channel-wkwebview.js.map +1 -0
- package/dist/common/msg/channel.cjs.map +1 -1
- package/dist/common/msg/emitter.cjs.map +1 -1
- package/dist/common/msg/encoder.cjs.map +1 -1
- package/dist/common/msg/index.cjs.map +1 -1
- package/dist/common/msg/messages.cjs.map +1 -1
- package/dist/common/msg/pipe.cjs.map +1 -1
- package/dist/common/msg/pubsub.cjs.map +1 -1
- package/dist/common/msg/rpc.cjs.map +1 -1
- package/dist/common/network.cjs.map +1 -1
- package/dist/common/platform.cjs.map +1 -1
- package/dist/common/schema/_sandbox/sandbox-inherit.cjs +1 -0
- package/dist/common/schema/_sandbox/sandbox-inherit.cjs.map +1 -0
- package/dist/common/schema/_sandbox/sandbox-inherit.d.cts +2 -0
- package/dist/common/schema/_sandbox/sandbox-inherit.d.ts +2 -0
- package/dist/common/schema/_sandbox/sandbox-inherit.js +1 -0
- package/dist/common/schema/_sandbox/sandbox-inherit.js.map +1 -0
- package/dist/common/schema/_sandbox/sandbox.cjs +1 -0
- package/dist/common/schema/_sandbox/sandbox.cjs.map +1 -0
- package/dist/common/schema/_sandbox/sandbox.d.cts +2 -0
- package/dist/common/schema/_sandbox/sandbox.d.ts +2 -0
- package/dist/common/schema/_sandbox/sandbox.js +1 -0
- package/dist/common/schema/_sandbox/sandbox.js.map +1 -0
- package/dist/common/schema/_sandbox/sandbox.xspec.cjs +1 -0
- package/dist/common/schema/_sandbox/sandbox.xspec.cjs.map +1 -0
- package/dist/common/schema/_sandbox/sandbox.xspec.d.cts +2 -0
- package/dist/common/schema/_sandbox/sandbox.xspec.d.ts +2 -0
- package/dist/common/schema/_sandbox/sandbox.xspec.js +1 -0
- package/dist/common/schema/_sandbox/sandbox.xspec.js.map +1 -0
- package/dist/common/schema/export-json-schema.cjs +1 -1
- package/dist/common/schema/export-json-schema.cjs.map +1 -1
- package/dist/common/schema/export-json-schema.js +1 -1
- package/dist/common/schema/export-swift.cjs +1 -1
- package/dist/common/schema/export-swift.cjs.map +1 -1
- package/dist/common/schema/export-swift.js +1 -1
- package/dist/common/schema/export-typescript.cjs.map +1 -1
- package/dist/common/schema/index.cjs +1 -1
- package/dist/common/schema/index.cjs.map +1 -1
- package/dist/common/schema/index.js +1 -1
- package/dist/common/schema/parse-args.cjs +1 -1
- package/dist/common/schema/parse-args.cjs.map +1 -1
- package/dist/common/schema/parse-args.js +1 -1
- package/dist/common/schema/parse-env.cjs +1 -1
- package/dist/common/schema/parse-env.cjs.map +1 -1
- package/dist/common/schema/parse-env.js +1 -1
- package/dist/common/schema/parse-object.cjs +1 -1
- package/dist/common/schema/parse-object.cjs.map +1 -1
- package/dist/common/schema/parse-object.js +1 -1
- package/dist/common/schema/schema-standard.cjs.map +1 -1
- package/dist/common/schema/schema.cjs.map +1 -1
- package/dist/common/schema/serialize.cjs.map +1 -1
- package/dist/common/schema/type-test.cjs.map +1 -1
- package/dist/common/schema/utils.cjs.map +1 -1
- package/dist/common/schema/z-collection.cjs.map +1 -1
- package/dist/common/schema/z.cjs.map +1 -1
- package/dist/common/storage/index.cjs.map +1 -1
- package/dist/common/storage/memstorage.cjs.map +1 -1
- package/dist/common/test.cjs +1 -1
- package/dist/common/test.cjs.map +1 -1
- package/dist/common/test.js +1 -1
- package/dist/common/time.cjs.map +1 -1
- package/dist/common/timeout.cjs.map +1 -1
- package/dist/common/types.cjs.map +1 -1
- package/dist/common/utils.cjs.map +1 -1
- package/dist/common/uuid.cjs.map +1 -1
- package/dist/index.all.cjs +1 -1
- package/dist/index.all.cjs.map +1 -1
- package/dist/index.all.d.cts +1 -1
- package/dist/index.all.d.ts +1 -1
- package/dist/index.all.js +1 -1
- package/dist/index.browser.cjs +1 -1
- package/dist/index.browser.cjs.map +1 -1
- package/dist/index.browser.d.cts +1 -1
- package/dist/index.browser.d.ts +1 -1
- package/dist/index.browser.js +1 -1
- package/dist/index.jsr.cjs.map +1 -1
- package/dist/index.node.cjs +1 -1
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.d.cts +1 -1
- package/dist/index.node.d.ts +1 -1
- package/dist/index.node.js +1 -1
- package/dist/node/args.cjs.map +1 -1
- package/dist/node/clipboard.cjs.map +1 -1
- package/dist/node/crypto.cjs.map +1 -1
- package/dist/node/env.cjs.map +1 -1
- package/dist/node/files-async.cjs.map +1 -1
- package/dist/node/files.cjs.map +1 -1
- package/dist/node/filestorage.cjs.map +1 -1
- package/dist/node/fs.cjs.map +1 -1
- package/dist/node/glob.cjs.map +1 -1
- package/dist/node/index.cjs +1 -1
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +1 -1
- package/dist/node/log/index.cjs +1 -1
- package/dist/node/log/index.cjs.map +1 -1
- package/dist/node/log/index.js +1 -1
- package/dist/node/log/log-context-node.cjs +1 -1
- package/dist/node/log/log-context-node.cjs.map +1 -1
- package/dist/node/log/log-context-node.js +1 -1
- package/dist/node/log/log-file-rotation.cjs +1 -1
- package/dist/node/log/log-file-rotation.cjs.map +1 -1
- package/dist/node/log/log-file-rotation.js +1 -1
- package/dist/node/log/log-file.cjs +1 -1
- package/dist/node/log/log-file.cjs.map +1 -1
- package/dist/node/log/log-file.js +1 -1
- package/dist/node/log/log-node.cjs.map +1 -1
- package/dist/node/log/log-rotation.cjs.map +1 -1
- package/dist/node/log/log-util.cjs.map +1 -1
- package/dist/node/open-browser.cjs.map +1 -1
- package/dist/shim-window.d.cjs.map +1 -1
- package/package.json +16 -15
- package/src/common/data/day.spec.ts +20 -1
- package/src/common/data/day.ts +44 -0
- package/src/common/exec/pool.ts +1 -1
- package/src/common/msg/channel-wkwebview.ts +47 -0
- package/src/common/schema/_sandbox/sandbox-inherit.ts +13 -0
- package/src/common/schema/_sandbox/sandbox.ts +42 -0
- package/src/common/schema/_sandbox/sandbox.xspec.ts +45 -0
- package/src/common/schema/parse-object.ts +1 -3
- package/src/common/time.spec.ts +3 -4
- package/dist/chunk-5BA3O5XZ.cjs.map +0 -1
- package/dist/chunk-AUYYYDRM.cjs.map +0 -1
- package/dist/chunk-BRQSQXKK.js.map +0 -1
- package/dist/chunk-DAD3M2IM.cjs.map +0 -1
- package/dist/chunk-ETMFCGHO.cjs.map +0 -1
- package/dist/chunk-IMM23TO5.cjs.map +0 -1
- package/dist/chunk-KHK37DTS.cjs +0 -2
- package/dist/chunk-KHK37DTS.cjs.map +0 -1
- package/dist/chunk-L5OF6DSH.cjs.map +0 -1
- package/dist/chunk-LXFL3VYA.cjs.map +0 -1
- package/dist/chunk-PRTEIKN2.js.map +0 -1
- package/dist/chunk-TSNDVQHW.js +0 -2
- package/dist/chunk-TSNDVQHW.js.map +0 -1
- package/dist/chunk-X7RJP4DR.cjs.map +0 -1
- /package/dist/{chunk-RZPIAOGG.js.map → chunk-BPPN3ZNV.js.map} +0 -0
- /package/dist/{chunk-AH3LPY2A.js.map → chunk-DBXJFUZ7.js.map} +0 -0
- /package/dist/{chunk-LI2YWV3G.js.map → chunk-KWFFSQMW.js.map} +0 -0
- /package/dist/{chunk-UFYY2K4G.js.map → chunk-MV2F4DQ6.js.map} +0 -0
- /package/dist/{chunk-LTEGKVQQ.js.map → chunk-W4M6PGBQ.js.map} +0 -0
- /package/dist/{chunk-4X7UJTXJ.js.map → chunk-WH4WW45N.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-B75IPNYG.cjs","../src/common/network.ts"],"names":["defaultOptions","parseBasicAuth","url","m","username","password"],"mappings":"AAAA,iIAAwC,wDAAoC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAA2C,wDAAyC,ICmD9TA,CAAAA,CAAkC,CACtC,KAAA,CAAO,UAAA,CACP,QAAA,CAAU,QAAA,CACV,OAAA,CAAS,CAAC,CACZ,CAAA,CAcO,SAASC,CAAAA,CAAeC,CAAAA,CAAa,CAC1C,IAAMC,CAAAA,CAAI,eAAA,CAAgB,IAAA,CAAKD,CAAG,CAAA,CAClC,EAAA,CAAIC,CAAAA,EAAKA,CAAAA,CAAE,CAAC,CAAA,CAAG,CACb,GAAM,CAACC,CAAAA,CAAUC,CAAQ,CAAA,CAAIF,CAAAA,CAAE,CAAC,CAAA,CAAE,KAAA,CAAM,GAAA,CAAK,CAAC,CAAA,CAC9C,MAAO,CACL,GAAA,CAAKD,CAAAA,CAAI,OAAA,CAAQ,CAAA,EAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-B75IPNYG.cjs","sourcesContent":[null,"import type { Json } from './types'\nimport { arrayFlatten } from './data/array'\nimport { toBase64 } from './data/bin'\nimport { deepMerge } from './data/deep'\nimport { isArray } from './data/is'\nimport { jsonParse, jsonStringifySafe } from './data/json'\nimport { encodeQuery } from './data/url'\nimport { DefaultLogger } from './log/log'\n\n// TODO: Abort signal https://codedrivendevelopment.com/posts/everything-about-abort-signal-timeout\n\n/**\n * Options for fetch requests.\n * @category Network\n */\nexport interface fetchOptionType {\n /** Returns the cache mode associated with request, which is a string indicating how the request will interact with the browser's cache when fetching. */\n cache?: RequestCache\n /** Returns the credentials mode associated with request, which is a string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. */\n credentials?: RequestCredentials\n /** Returns the kind of resource requested by request, e.g., \"document\" or \"script\". */\n destination?: RequestDestination\n /** Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the \"Host\" header. */\n headers?: Record<string, string>\n /** Returns request's subresource integrity metadata, which is a cryptographic hash of the resource being fetched. Its value consists of multiple hashes separated by whitespace. [SRI] */\n integrity?: string\n /** Returns a boolean indicating whether or not request can outlive the global in which it was created. */\n keepalive?: boolean\n /** Returns request's HTTP method, which is \"GET\" by default. */\n method?: string\n /** Returns the mode associated with request, which is a string indicating whether the request will use CORS, or will be restricted to same-origin URLs. */\n mode?: RequestMode\n /** Returns the redirect mode associated with request, which is a string indicating how redirects for the request will be handled during fetching. A request will follow redirects by default. */\n redirect?: RequestRedirect\n /** Returns the referrer of request. Its value can be a same-origin URL if explicitly set in init, the empty string to indicate no referrer, and \"about:client\" when defaulting to the global's default. This is used during fetching to determine the value of the `Referer` header of the request being made. */\n referrer?: string\n /** Returns the referrer policy associated with request. This is used during fetching to compute the value of the request's referrer. */\n referrerPolicy?: ReferrerPolicy\n /** Returns the signal associated with request, which is an AbortSignal object indicating whether or not request has been aborted, and its abort event handler. */\n signal?: AbortSignal\n /** Returns the URL of request as a string. */\n url?: string\n body?: any\n}\n\n/**\n * Type for fetch options, can be a single option or an array of options.\n * @category Network\n */\nexport type fetchOptionsType = fetchOptionType | fetchOptionsType[]\n\nconst defaultOptions: fetchOptionType = {\n cache: 'no-cache',\n redirect: 'follow',\n headers: {},\n}\n\n// Source https://developer.mozilla.org/de/docs/Web/HTTP/Methods\nexport type httpMethod\n = | 'GET'\n | 'POST'\n | 'PUT'\n | 'DELETE'\n | 'HEAD'\n | 'CONNECT'\n | 'OPTIONS'\n | 'TRACE'\n | 'PATCH'\n\nexport function parseBasicAuth(url: string) {\n const m = /:\\/\\/([^@]*)@/.exec(url)\n if (m && m[1]) {\n const [username, password] = m[1].split(':', 2)\n return {\n url: url.replace(`${m[1]}@`, ''),\n username,\n password,\n }\n }\n}\n\n/**\n * Simplified `fetch` wrapper.\n * - Accepts a single fetch options object or an array of options which will be deep-merged.\n * - Supports basic auth embedded in the URL (e.g. https://user:pass@host/path).\n * - Normalizes headers to a `Headers` instance.\n * - Returns the `Response` when status < 400, otherwise returns `undefined`.\n * @category Network\n */\nexport async function fetchBasic(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<Response | undefined> {\n try {\n if (isArray(fetchOptions))\n fetchOptions = deepMerge({}, ...arrayFlatten(fetchOptions))\n\n const auth = parseBasicAuth(String(url))\n if (auth) {\n url = auth.url\n fetchOptions = deepMerge(\n {},\n fetchOptions,\n fetchOptionsBasicAuth(auth.username, auth.password),\n )\n }\n\n if (\n // @ts-expect-error headers\n fetchOptions.headers != null\n // @ts-expect-error headers\n && !(fetchOptions.headers instanceof Headers)\n ) {\n // @ts-expect-error headers\n fetchOptions.headers = new Headers(fetchOptions.headers)\n }\n\n // log(\"fetch\", url, fetchOptions)\n const response = await fetchFn(String(url), fetchOptions as RequestInit)\n\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Status\n if (response.status < 400)\n return response\n\n const log = DefaultLogger('zeed:network')\n\n try {\n log.warn(`Fetch of ${String(url)} returned status=${response.status}. Options:`, fetchOptions)\n log.warn(`Response: ${await response.text()}`)\n }\n catch (err) {\n log.error('Exception:', err)\n }\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchBasic', err)\n }\n}\n/**\n * Fetch and parse JSON.\n * Returns the parsed JSON object or `undefined` on error.\n * @category Network\n */\nexport async function fetchJson<T = Json>(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<T | undefined> {\n try {\n const res = await fetchBasic(\n url,\n [\n {\n method: 'GET',\n headers: {\n Accept: 'application/json',\n },\n },\n fetchOptions,\n ],\n fetchFn,\n )\n if (res)\n return jsonParse(await res.text())\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchJSON error:', err)\n }\n}\n/**\n * Fetch text content.\n * Returns the response text or `undefined` on error.\n * @category Network\n */\nexport async function fetchText(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<string | undefined> {\n try {\n const res = await fetchBasic(\n url,\n [defaultOptions, { method: 'GET' }, fetchOptions],\n fetchFn,\n )\n if (res)\n return await res.text()\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchHTML error:', err)\n }\n}\n\n///\n\n/**\n * Options for `fetchBasic` to send data as application/x-www-form-urlencoded.\n * @category Network\n */\nexport function fetchOptionsFormURLEncoded(\n data: object,\n method: httpMethod = 'POST',\n): fetchOptionType {\n return {\n method,\n ...defaultOptions,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\n },\n body: encodeQuery(data),\n }\n}\n\n/**\n * Options for `fetchBasic` to send JSON data.\n * @category Network\n */\nexport function fetchOptionsJson(\n data: object,\n method: httpMethod = 'POST',\n): fetchOptionType {\n return {\n method,\n ...defaultOptions,\n headers: {\n 'Content-Type': 'application/json; charset=utf-8',\n // Accept: \"application/json\",\n },\n body: jsonStringifySafe(data),\n }\n}\n\n/**\n * Create options to add Basic Authorization header using given username/password.\n * @category Network\n */\nexport function fetchOptionsBasicAuth(\n username: string,\n password: string,\n): fetchOptionType {\n return {\n headers: {\n Authorization: `Basic ${toBase64(`${username}:${password}`)}`,\n },\n }\n}\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{c as d}from"./chunk-
|
|
1
|
+
import{c as d}from"./chunk-SSKDGT5N.js";import{e as y}from"./chunk-GAJVPW4Z.js";import{a as c}from"./chunk-CU3XJDAD.js";import{h as T}from"./chunk-WFBD5UN5.js";import{a as i,d as u}from"./chunk-LXMVVR3R.js";import{b as f}from"./chunk-UVILAVID.js";import{a as m}from"./chunk-5NKC2EQJ.js";function A(o,l=process?.argv??{}){f(y(o),"schema should be a flat object");let p={},t=[];c(o._object,(r,e)=>{e._meta?.argShort&&(p[i(e._meta.argShort)]=i(r)),e.type==="boolean"&&t.push(i(r))});let a=[...l],s,b=[],g={};for(;s=a.shift();){let r;if(/^--?/.test(s)){let e=s.replace(/^--?/,"");if(s.includes("=")){let[n,h]=e.split("=",2);e=n.trim(),r=h.trim()}e=i(e),e=p[e]??e,t.includes(e)?g[e]=!0:(r=r??a.shift()??"",g[e]=r)}else b.push(s)}return[c(o._object,(r,e)=>{let n=g[i(r)];return e.type==="number"&&n!=null&&(n=T(n)),d(e,n)}),b]}m(A,"parseSchemaArgs");function O(o){f(y(o),"schema should be a flat object");let l=[];return c(o._object,(p,t)=>{let a=`--${u(p)}`;t._meta?.argShort&&(a+=`, -${u(t._meta.argShort)}`),t.type!=="boolean"&&(a+=`=${t.type}`),l.push(a);let s=t._meta?.argDesc??t._meta?.desc;s&&l.push(` ${s}`)}),l.join(`
|
|
2
2
|
`)}m(O,"helpSchemaArgs");export{A as a,O as b};
|
|
3
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
//# sourceMappingURL=chunk-BPPN3ZNV.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-BPWOWVF7.cjs","../src/common/timeout.ts"],"names":["safeTimeout","fn","delay","unref","timerId","disposeTimer","__name"],"mappings":"AAAA,qoBAAwC,SCQxBA,CAAAA,CAAYC,CAAAA,CAAgBC,CAAAA,CAAQ,CAAA,CAAGC,CAAAA,CAAQ,CAAA,CAAA,CAAmB,CAChF,IAAIC,CAAAA,CAEEC,CAAAA,CAAeC,iCAAAA,CAAA,CAAA,EAAM,CACzB,YAAA,CAAaF,CAAO,CAAA,CACpBA,CAAAA,CAAU,KAAA,CACZ,CAAA,CAHqB,cAAA,CAAA,CAKrB,OAAAA,CAAAA,CAAU,UAAA,CAAW,CAAA,CAAA,EAAM,CACzBH,CAAAA,CAAG,CAAA,CACHI,CAAAA,CAAa,CACf,CAAA,CAAGH,CAAK,CAAA,CAEJC,CAAAA,kBACFC,CAAAA,mBAAQ,KAAA,0BAAA,CAAQ,GAAA,CAEXC,CACT,CAjBgBC,iCAAAA,CAAAN,CAAA,aAAA,CAAA,CAAA,cAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-BPWOWVF7.cjs","sourcesContent":[null,"/**\n * Slightliy enhanced setTimeout to avoid garbage collection issues.\n * Returns a dispose function.\n *\n * Discussion see\n * https://jakearchibald.com/2024/garbage-collection-and-closures/\n * https://news.ycombinator.com/item?id=41111062\n */\nexport function safeTimeout(fn: () => void, delay = 0, unref = false): () => void {\n let timerId: any\n\n const disposeTimer = () => {\n clearTimeout(timerId)\n timerId = undefined\n }\n\n timerId = setTimeout(() => {\n fn()\n disposeTimer()\n }, delay)\n\n if (unref)\n timerId.unref?.()\n\n return disposeTimer\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-BQ66KUDG.cjs","../src/common/data/object.ts"],"names":["objectMap","obj","fn","isObject","k","v","r","isArray","__name","objectFilter","objectMergeDisposable","a","b","objectIsEmpty","objectPick","keys","key","objectInclusivePick","objectOmit","objectPlain","opt","maxDepth","circleValue","maxDepthValue","errorTrace","filter","keepAsIs","transformer","cycle","handleObject","depth","isPrimitive","result","isSymbol","isBinaryArray","o","objName","nobj","value"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/chunk-BQ66KUDG.cjs","sourcesContent":[null,"import { isArray, isBinaryArray, isObject, isPrimitive, isSymbol } from './is'\n\n/** Like `.map()` for object. Return new key and value or `undefined` to delete. */\nexport function objectMap<T = any>(\n obj: any,\n fn: (key: string, value: any) => [key: string, value: T] | T | undefined | null,\n): Record<string, T> {\n if (!isObject(obj))\n return {}\n return Object.fromEntries(\n Object.entries(obj)\n .map(([k, v]) => {\n const r = fn(k, v)\n if (isArray(r) && r.length === 2)\n return r\n return [k, r]\n })\n .filter(v => v != null),\n )\n}\n\n/** Like `.filter()` for object. */\nexport function objectFilter<T = any>(\n obj: any,\n fn: (key: string, value: any) => boolean,\n): Partial<T> {\n if (!isObject(obj))\n return {}\n return Object.fromEntries(Object.entries(obj).filter(([k, v]) => fn(k, v))) as any\n}\n\n/** Merge right into left object. If dispose is defined, it will be combined. Left can be a complex object i.e. a insantiated class. */\nexport function objectMergeDisposable<A extends object, B extends object>(\n a: A,\n b: B,\n): A & B {\n // @ts-expect-error xxx\n if (b.dispose && a.dispose) {\n // @ts-expect-error xxx\n b.dispose.add(a.dispose)\n }\n return Object.assign(a, b)\n}\n\n// export function objectMerge<A, B>(a: A, b: B): A & B {\n// return Object.assign({}, a, b)\n// }\n\nexport function objectIsEmpty(obj: object) {\n return Object.keys(obj).length <= 0\n}\n\n// https://stackoverflow.com/a/56592365/140927\nexport function objectPick<T extends object, K extends keyof T>(obj: T, ...keys: K[]) {\n return Object.fromEntries(keys.filter(key => key in obj).map(key => [key, obj[key]])) as Pick<T, K>\n}\n\nexport function objectInclusivePick<T extends object, K extends (string | number | symbol)>(obj: T, ...keys: K[]) {\n return Object.fromEntries(keys.map(key => [key, obj[key as unknown as keyof T]])) as { [key in K]: key extends keyof T ? T[key] : undefined }\n}\n\nexport function objectOmit<T extends object, K extends keyof T>(obj: T, ...keys: K[]) {\n return Object.fromEntries(Object.entries(obj).filter(([key]) => !keys.includes(key as K))) as Omit<T, K>\n}\n\n/// Convert object to plain object with max depth.\nexport function objectPlain(obj: any, opt?: {\n maxDepth?: number\n maxDepthValue?: any\n circleValue?: any\n errorTrace?: boolean\n filter?: (value: any) => boolean\n keepAsIs?: (value: any) => boolean\n transformer?: (value: any) => any | undefined\n}): any {\n const {\n maxDepth = 99,\n circleValue,\n maxDepthValue,\n errorTrace = true,\n filter = () => true,\n keepAsIs = () => false,\n transformer = () => undefined,\n } = opt ?? {}\n\n const cycle: any = []\n\n function handleObject(obj: any, depth: number): any {\n if (depth > maxDepth)\n return maxDepthValue // '*** MAX DEPTH ***'\n\n if (keepAsIs(obj))\n return obj\n\n if (!isPrimitive(obj)) {\n if (cycle.includes(obj))\n return circleValue // '*** CYCLE ***'\n cycle.push(obj)\n }\n\n if (transformer) {\n const result = transformer(obj)\n if (result !== undefined)\n return result\n }\n\n if (isSymbol(obj))\n return String(obj)\n\n if (isPrimitive(obj))\n return obj\n\n if (typeof Date !== 'undefined' && obj instanceof Date) {\n return {\n __class: 'Date',\n value: obj.toISOString(),\n }\n }\n\n if (typeof RegExp !== 'undefined' && obj instanceof RegExp) {\n return {\n __class: 'RegExp',\n source: obj.toString(),\n }\n }\n\n if (typeof Map !== 'undefined' && obj instanceof Map)\n obj = Object.fromEntries(obj)\n\n if (typeof Set !== 'undefined' && obj instanceof Set || isBinaryArray(obj))\n obj = Array.from(obj as any)\n\n if (typeof ErrorEvent !== 'undefined' && obj instanceof ErrorEvent) {\n return {\n __class: 'ErrorEvent',\n message: obj.message,\n filename: obj.filename,\n lineno: obj.lineno,\n colno: obj.colno,\n error: obj.error ? handleObject(obj.error, depth + 1) : undefined,\n }\n }\n\n if (typeof Event !== 'undefined' && obj instanceof Event) {\n return {\n __class: 'Event',\n type: obj.type,\n eventPhase: obj.eventPhase,\n bubbles: obj.bubbles,\n cancelable: obj.cancelable,\n defaultPrevented: obj.defaultPrevented,\n composed: obj.composed,\n timeStamp: obj.timeStamp,\n }\n }\n\n if (typeof Error !== 'undefined' && obj instanceof Error) {\n return {\n __class: 'Error',\n name: obj.name,\n message: obj.message,\n stack: errorTrace ? obj.stack : undefined,\n cause: (obj as any).cause ? String((obj as any).cause) : undefined,\n }\n }\n // return `${obj.name || 'Error'}: ${obj.message}${errorTrace ? `\\n${obj.stack}` : ''}`\n\n /* if (obj instanceof Element) {\n const attrs = obj.getAttributeNames().map(name => `${name}=\"${String(obj.getAttribute(name))}\"`).join(' ')\n return `<${[obj.tagName.toLocaleLowerCase(), ...attrs].join(' ')}}>`\n } */\n\n if (Array.isArray(obj)) {\n return obj\n .filter(filter)\n .map(o => handleObject(o, depth + 1))\n }\n\n // For class objects just dump the first level of primitives\n const objName = obj?.constructor?.name\n if (objName && objName !== 'Object') {\n const nobj: any = {\n __class: objName,\n // __code: obj.toString ? obj.toString() : undefined,\n }\n for (const k in obj) {\n if (obj && obj.hasOwnProperty(k) && isPrimitive(obj[k]))\n nobj[k] = obj[k]\n }\n return nobj\n }\n\n // Plain objects are recursively dumped\n const nobj: any = {}\n for (const key in obj) {\n const value = obj[key]\n if (filter(value))\n nobj[key] = handleObject(value, depth + 1)\n }\n return nobj\n\n // return undefined\n }\n\n return handleObject(obj, 0)\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-BQ66KUDG.cjs","../src/common/data/object.ts"],"names":["objectMap","obj","fn","isObject","k","v","r","isArray","__name","objectFilter","objectMergeDisposable","a","b","objectIsEmpty","objectPick","keys","key","objectInclusivePick","objectOmit","objectPlain","opt","maxDepth","circleValue","maxDepthValue","errorTrace","filter","keepAsIs","transformer","cycle","handleObject","depth","isPrimitive","result","isSymbol","isBinaryArray","o","objName","nobj","value"],"mappings":"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","file":"/Users/dirk/work/github-zeed/dist/chunk-BQ66KUDG.cjs","sourcesContent":[null,"import { isArray, isBinaryArray, isObject, isPrimitive, isSymbol } from './is'\n\n/** Like `.map()` for object. Return new key and value or `undefined` to delete. */\nexport function objectMap<T = any>(\n obj: any,\n fn: (key: string, value: any) => [key: string, value: T] | T | undefined | null,\n): Record<string, T> {\n if (!isObject(obj))\n return {}\n return Object.fromEntries(\n Object.entries(obj)\n .map(([k, v]) => {\n const r = fn(k, v)\n if (isArray(r) && r.length === 2)\n return r\n return [k, r]\n })\n .filter(v => v != null),\n )\n}\n\n/** Like `.filter()` for object. */\nexport function objectFilter<T = any>(\n obj: any,\n fn: (key: string, value: any) => boolean,\n): Partial<T> {\n if (!isObject(obj))\n return {}\n return Object.fromEntries(Object.entries(obj).filter(([k, v]) => fn(k, v))) as any\n}\n\n/** Merge right into left object. If dispose is defined, it will be combined. Left can be a complex object i.e. a insantiated class. */\nexport function objectMergeDisposable<A extends object, B extends object>(\n a: A,\n b: B,\n): A & B {\n // @ts-expect-error xxx\n if (b.dispose && a.dispose) {\n // @ts-expect-error xxx\n b.dispose.add(a.dispose)\n }\n return Object.assign(a, b)\n}\n\n// export function objectMerge<A, B>(a: A, b: B): A & B {\n// return Object.assign({}, a, b)\n// }\n\nexport function objectIsEmpty(obj: object) {\n return Object.keys(obj).length <= 0\n}\n\n// https://stackoverflow.com/a/56592365/140927\nexport function objectPick<T extends object, K extends keyof T>(obj: T, ...keys: K[]) {\n return Object.fromEntries(keys.filter(key => key in obj).map(key => [key, obj[key]])) as Pick<T, K>\n}\n\nexport function objectInclusivePick<T extends object, K extends (string | number | symbol)>(obj: T, ...keys: K[]) {\n return Object.fromEntries(keys.map(key => [key, obj[key as unknown as keyof T]])) as { [key in K]: key extends keyof T ? T[key] : undefined }\n}\n\nexport function objectOmit<T extends object, K extends keyof T>(obj: T, ...keys: K[]) {\n return Object.fromEntries(Object.entries(obj).filter(([key]) => !keys.includes(key as K))) as Omit<T, K>\n}\n\n/// Convert object to plain object with max depth.\nexport function objectPlain(obj: any, opt?: {\n maxDepth?: number\n maxDepthValue?: any\n circleValue?: any\n errorTrace?: boolean\n filter?: (value: any) => boolean\n keepAsIs?: (value: any) => boolean\n transformer?: (value: any) => any | undefined\n}): any {\n const {\n maxDepth = 99,\n circleValue,\n maxDepthValue,\n errorTrace = true,\n filter = () => true,\n keepAsIs = () => false,\n transformer = () => undefined,\n } = opt ?? {}\n\n const cycle: any = []\n\n function handleObject(obj: any, depth: number): any {\n if (depth > maxDepth)\n return maxDepthValue // '*** MAX DEPTH ***'\n\n if (keepAsIs(obj))\n return obj\n\n if (!isPrimitive(obj)) {\n if (cycle.includes(obj))\n return circleValue // '*** CYCLE ***'\n cycle.push(obj)\n }\n\n if (transformer) {\n const result = transformer(obj)\n if (result !== undefined)\n return result\n }\n\n if (isSymbol(obj))\n return String(obj)\n\n if (isPrimitive(obj))\n return obj\n\n if (typeof Date !== 'undefined' && obj instanceof Date) {\n return {\n __class: 'Date',\n value: obj.toISOString(),\n }\n }\n\n if (typeof RegExp !== 'undefined' && obj instanceof RegExp) {\n return {\n __class: 'RegExp',\n source: obj.toString(),\n }\n }\n\n if (typeof Map !== 'undefined' && obj instanceof Map)\n obj = Object.fromEntries(obj)\n\n if (typeof Set !== 'undefined' && obj instanceof Set || isBinaryArray(obj))\n obj = Array.from(obj as any)\n\n if (typeof ErrorEvent !== 'undefined' && obj instanceof ErrorEvent) {\n return {\n __class: 'ErrorEvent',\n message: obj.message,\n filename: obj.filename,\n lineno: obj.lineno,\n colno: obj.colno,\n error: obj.error ? handleObject(obj.error, depth + 1) : undefined,\n }\n }\n\n if (typeof Event !== 'undefined' && obj instanceof Event) {\n return {\n __class: 'Event',\n type: obj.type,\n eventPhase: obj.eventPhase,\n bubbles: obj.bubbles,\n cancelable: obj.cancelable,\n defaultPrevented: obj.defaultPrevented,\n composed: obj.composed,\n timeStamp: obj.timeStamp,\n }\n }\n\n if (typeof Error !== 'undefined' && obj instanceof Error) {\n return {\n __class: 'Error',\n name: obj.name,\n message: obj.message,\n stack: errorTrace ? obj.stack : undefined,\n cause: (obj as any).cause ? String((obj as any).cause) : undefined,\n }\n }\n // return `${obj.name || 'Error'}: ${obj.message}${errorTrace ? `\\n${obj.stack}` : ''}`\n\n /* if (obj instanceof Element) {\n const attrs = obj.getAttributeNames().map(name => `${name}=\"${String(obj.getAttribute(name))}\"`).join(' ')\n return `<${[obj.tagName.toLocaleLowerCase(), ...attrs].join(' ')}}>`\n } */\n\n if (Array.isArray(obj)) {\n return obj\n .filter(filter)\n .map(o => handleObject(o, depth + 1))\n }\n\n // For class objects just dump the first level of primitives\n const objName = obj?.constructor?.name\n if (objName && objName !== 'Object') {\n const nobj: any = {\n __class: objName,\n // __code: obj.toString ? obj.toString() : undefined,\n }\n for (const k in obj) {\n if (obj && obj.hasOwnProperty(k) && isPrimitive(obj[k]))\n nobj[k] = obj[k]\n }\n return nobj\n }\n\n // Plain objects are recursively dumped\n const nobj: any = {}\n for (const key in obj) {\n const value = obj[key]\n if (filter(value))\n nobj[key] = handleObject(value, depth + 1)\n }\n return nobj\n\n // return undefined\n }\n\n return handleObject(obj, 0)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-BTEZYY77.cjs","../src/browser/log/log-context-browser.ts"],"names":["Logger","name","level","getGlobalLogger","context","isBrowser","isEmpty","LoggerBrowserHandler","LoggerBrowserSetupDebugFactory","__name","LoggerFromConfig","config","_LoggerFromConfig"],"mappings":"AAAA,qoBAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,SCS9QA,CAAAA,CAAOC,CAAAA,CAAeC,CAAAA,CAA4C,CAChF,OAAOC,iCAAAA,CAAiBC,EAAY,CAC9BC,iCAAAA,CAAU,EAAA,CAAM,OAAO,YAAA,CAAiB,GAAA,EAAc,CAACC,iCAAAA,gBAAQ,YAAA,2BAAc,OAAA,mBAAQ,MAAM,GAAC,CAAA,CAAA,EAAA,CAC9FF,CAAAA,CAAQ,WAAA,CAAY,CAACG,iCAAAA,CAAsB,CAAC,CAAA,CAC5CH,CAAAA,CAAQ,UAAA,CAAWI,iCAAAA,CAAgC,CAAC,CAAC,CAAA,CAEzD,CAAC,CAAA,CAAEP,CAAAA,CAAMC,CAAK,CAChB,CAPgBO,iCAAAA,CAAAT,CAAA,QAAA,CAAA,CAUT,SAASU,CAAAA,CAAiBC,CAAAA,CAAmBV,CAAAA,CAAcC,CAAAA,CAA4C,CAC5G,OAAOU,iCAAAA,CAAkBZ,CAAQW,CAAAA,CAAQV,CAAAA,CAAMC,CAAK,CACtD,CAFgBO,iCAAAA,CAAAC,CAAA,kBAAA,CAAA,CAAA,6BAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-BTEZYY77.cjs","sourcesContent":[null,"import type { LoggerInterface, LogLevelAliasType } from '../../common/log/log-base'\nimport type { LogConfig } from '../../common/log/log-config'\nimport { isEmpty } from '../../common/data/is'\nimport { getGlobalLogger } from '../../common/log/log'\nimport { _LoggerFromConfig } from '../../common/log/log-config'\nimport { isBrowser } from '../../common/platform'\nimport { LoggerBrowserHandler } from './log-browser'\nimport { LoggerBrowserSetupDebugFactory } from './log-browser-factory'\n\nexport function Logger(name?: string, level?: LogLevelAliasType): LoggerInterface {\n return getGlobalLogger((context) => {\n if (isBrowser() && (typeof localStorage !== 'undefined' ? !isEmpty(localStorage?.getItem('zeed')) : false)) {\n context.setHandlers([LoggerBrowserHandler()]) // Fallback for previously registered Loggers\n context.setFactory(LoggerBrowserSetupDebugFactory({}))\n }\n })(name, level)\n}\n\n/** See LogConfig */\nexport function LoggerFromConfig(config: LogConfig, name: string, level?: LogLevelAliasType): LoggerInterface {\n return _LoggerFromConfig(Logger, config, name, level)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-BTOZJX47.cjs","../src/common/data/signal.ts"],"names":["useSignal","value","onChange","signal","watchers","off","fn","arrayRemoveElement","__name","on","get","set","oldValue","obj"],"mappings":"AAAA,iIAAwC,wDAAyC,SCoBjEA,CAAAA,CAAmBC,CAAAA,CAAUC,CAAAA,CAAwC,CACnF,IAAIC,CAAAA,CAAS,eAAA,CAAgBF,CAAK,CAAA,CAE5BG,CAAAA,CAA+B,CAAC,CAAA,CAEtC,SAASC,CAAAA,CAAIC,CAAAA,CAAsB,CACjCC,iCAAAA,CAAmBH,CAAUE,CAAE,CACjC,CAFSE,iCAAAA,CAAAH,CAAA,KAAA,CAAA,CAIT,SAASI,CAAAA,CAAGH,CAAAA,CAAsB,CAChC,OAAAF,CAAAA,CAAS,IAAA,CAAKE,CAAE,CAAA,CACT,CAAA,CAAA,EAAMD,CAAAA,CAAIC,CAAE,CACrB,CAHSE,iCAAAA,CAAAC,CAAA,IAAA,CAAA,CAKLP,CAAAA,EACFE,CAAAA,CAAS,IAAA,CAAKF,CAAQ,CAAA,CAExB,IAAMQ,CAAAA,CAAMF,iCAAAA,CAAA,CAAA,EAAM,eAAA,CAAgBL,CAAM,CAAA,CAA5B,KAAA,CAAA,CAENQ,CAAAA,CAAMH,iCAAAA,CAACP,EAAa,CACxB,EAAA,CAAIA,CAAAA,GAAUE,CAAAA,CAAQ,CACpB,IAAMS,CAAAA,CAAWT,CAAAA,CACjBA,CAAAA,CAASF,CAAAA,CACTG,CAAAA,CAAS,OAAA,CAAQE,CAAAA,EAAMA,CAAAA,CAAGL,CAAAA,CAAOW,CAAQ,CAAC,CAC5C,CACF,CAAA,CANY,KAAA,CAAA,CAQNC,CAAAA,CAAW,CAACH,CAAAA,CAAKC,CAAAA,CAAKF,CAAAA,CAAIJ,CAAG,CAAA,CACnC,OAAAQ,CAAAA,CAAI,GAAA,CAAMH,CAAAA,CACVG,CAAAA,CAAI,GAAA,CAAMF,CAAAA,CACVE,CAAAA,CAAI,EAAA,CAAKJ,CAAAA,CACTI,CAAAA,CAAI,GAAA,CAAMR,CAAAA,CACHQ,CACT,CAjCgBL,iCAAAA,CAAAR,CAAA,WAAA,CAAA,CAAA,cAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-BTOZJX47.cjs","sourcesContent":[null,"import { arrayRemoveElement } from './array'\n\n// I'm aware of this one, but like mine better ;)\n// https://github.com/proposal-signals/proposal-signals\n\nexport type SignalWatcher<T> = (value: T, oldValue: T) => void\n\nexport type Signal<T> = [\n () => T,\n (value: T) => void,\n (fn: SignalWatcher<T>) => () => void,\n (fn: SignalWatcher<T>) => void,\n] & {\n get: () => T\n set: (value: T) => void\n on: (fn: SignalWatcher<T>) => () => void\n off: (fn: SignalWatcher<T>) => void\n}\n\n/** Super simple signal implementation */\nexport function useSignal<T = any>(value: T, onChange?: SignalWatcher<T>): Signal<T> {\n let signal = structuredClone(value)\n\n const watchers: SignalWatcher<T>[] = []\n\n function off(fn: SignalWatcher<T>) {\n arrayRemoveElement(watchers, fn)\n }\n\n function on(fn: SignalWatcher<T>) {\n watchers.push(fn)\n return () => off(fn)\n }\n\n if (onChange)\n watchers.push(onChange)\n\n const get = () => structuredClone(signal)\n\n const set = (value: T) => {\n if (value !== signal) {\n const oldValue = signal\n signal = value\n watchers.forEach(fn => fn(value, oldValue))\n }\n }\n\n const obj: any = [get, set, on, off]\n obj.get = get\n obj.set = set\n obj.on = on\n obj.off = off\n return obj\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-C3WUDLBK.cjs","../src/common/utils.ts"],"names":["noop","__name"],"mappings":"AAAA,iIAAwC,SCAxBA,CAAAA,CAAAA,CAAO,CAAE,CAATC,iCAAAA,CAAAD,CAAA,MAAA,CAAA,CAAA,cAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-C3WUDLBK.cjs","sourcesContent":[null,"export function noop() { }\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkKYNPDWX4cjs = require('./chunk-KYNPDWX4.cjs');var _chunkABCQXAMVcjs = require('./chunk-ABCQXAMV.cjs');var _chunkWEF4N7J4cjs = require('./chunk-WEF4N7J4.cjs');var _chunk7UA33BQWcjs = require('./chunk-7UA33BQW.cjs');var _chunkFMMEBQFRcjs = require('./chunk-FMMEBQFR.cjs');var _chunkP7XCQ7WVcjs = require('./chunk-P7XCQ7WV.cjs');function $(F={}){let{maxParallel:U=3,name:j=_chunkFMMEBQFRcjs.u.call(void 0, "pool"),idConflictResolution:I="memoize"}=F,l=new _chunkABCQXAMVcjs.a,k=_chunkWEF4N7J4cjs.b.call(void 0, );k.add(g);let f=new (0, _chunkKYNPDWX4cjs.a)({name:j});f.on("progressCancelled",g);let c=0,p=0,v=0,P=0,i={};async function z(){if(c>0){let[t,e]=_chunk7UA33BQWcjs.a.call(void 0, );return l.once("didFinish",e),t}}_chunkP7XCQ7WVcjs.a.call(void 0, z,"waitFinishAll");async function M(){for(let t of Object.keys(i))i[t].state==="finished"&&(await i[t].progress.dispose(),delete i[t])}_chunkP7XCQ7WVcjs.a.call(void 0, M,"cleanupFinished");function E(){l.emit("didFinish"),c=0,p=0,M(),f.reset()}_chunkP7XCQ7WVcjs.a.call(void 0, E,"didFinish");function m(){let t=0,e=0;for(let{max:n,resolved:d,state:o}of Object.values(i))t+=n,e+=o==="finished"?n:Math.min(n,d);l.emit("didUpdate",c,p,t,e)}_chunkP7XCQ7WVcjs.a.call(void 0, m,"didUpdate");function T(){if(m(),c>0&&c===p&&E(),v>=U)return;let t=Object.values(i).filter(e=>e.state==="waiting");if(t.length>0){let e;for(let n of t)n.group!=null&&Object.values(i).some(d=>d.state==="running"&&d.id!==n.id&&d.group===n.group)||(e==null||n.priority<e.priority)&&(e=n);if(e!=null){let n=e.id,d=e.done;e.state="running",++v,l.emit("didStart",n);let o=_chunkP7XCQ7WVcjs.a.call(void 0, a=>{e&&(e.result=a,e.state="finished",e.resolved=e.max,_optionalChain([e, 'access', _ => _.progress, 'optionalAccess', _2 => _2.setCompleted, 'call', _3 => _3()])),--v,++p,T()},"taskFinished");e.task(e).then(a=>{d(a),l.emit("didResolve",n,a),o(a)}).catch(a=>{d(),l.emit("didReject",n,a),o()})}}}_chunkP7XCQ7WVcjs.a.call(void 0, T,"performNext");function u(t){let e=i[t];e&&e.state==="waiting"&&(i[t].state="finished",++p,l.emit("didCancel",t),i[t].progress.dispose(),m())}_chunkP7XCQ7WVcjs.a.call(void 0, u,"cancel");function g(){Object.keys(i).forEach(u)}_chunkP7XCQ7WVcjs.a.call(void 0, g,"cancelAll");function O(t){return i[t]!=null}_chunkP7XCQ7WVcjs.a.call(void 0, O,"hasById");function S(t,e={}){let n,d=new Promise(r=>n=r),o=_nullishCoalesce(e.id, () => (_chunkFMMEBQFRcjs.q.call(void 0, )));if(i[o]!=null){let r=_nullishCoalesce(e.idConflictResolution, () => (I));if(r==="replace")u(o);else if(r==="memoize"||r==="prioritize"){let x=i[o];return r==="prioritize"&&(x.priority=++P),{id:o,promise:(async()=>{if(x.state==="finished")return i[o].result})(),dispose:_chunkP7XCQ7WVcjs.a.call(void 0, ()=>u(o),"dispose"),cancel:_chunkP7XCQ7WVcjs.a.call(void 0, ()=>u(o),"cancel")}}else throw new Error(`Pool task with id=${o} already exists!`)}let a=new (0, _chunkKYNPDWX4cjs.a)({name:o,totalUnits:_nullishCoalesce(e.max, () => (1)),completeUnits:_nullishCoalesce(e.resolved, () => (0))});return f.addChild(a),i[o]={id:o,task:t,priority:++P,group:e.group,state:"waiting",max:_nullishCoalesce(e.max, () => (1)),resolved:_nullishCoalesce(e.resolved, () => (0)),done:n,payload:e.payload,progress:a,setMax(r){a.setTotalUnits(r),i[o].max=r,m()},setResolved(r){a.setCompletetedUnits(r),i[o].resolved=r,m()},incResolved(r=1){a.incCompletedUnits(r),i[o].resolved+=r,m()}},++c,T(),{id:o,promise:d,dispose:_chunkP7XCQ7WVcjs.a.call(void 0, ()=>u(o),"dispose"),cancel:_chunkP7XCQ7WVcjs.a.call(void 0, ()=>u(o),"cancel")}}return _chunkP7XCQ7WVcjs.a.call(void 0, S,"enqueue"),{events:l,cancel:u,cancelAll:g,hasById:O,progress:f,enqueue:S,dispose:k,waitFinishAll:z}}_chunkP7XCQ7WVcjs.a.call(void 0, $,"usePool");exports.a = $;
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
2
|
+
//# sourceMappingURL=chunk-C72ST4ZR.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-C72ST4ZR.cjs","../src/common/exec/pool.ts"],"names":["usePool","config","maxParallel","name","uname","idConflictResolution","events","Emitter","dispose","useDispose","cancelAll","progress","Progress","countMax","countResolved","currentParallel","priority","tasks","waitFinishAll","promise","resolve","createPromise","__name","cleanupFinished","id","didFinish","didUpdate","presentMax","presentResolved","max","resolved","state","performNext","waitingTasks","t","taskInfo","tt","done","taskFinished","result","r","err","cancel","hasById","enqueue","task","uuid","resolution","runningTask","taskProgress","units","inc"],"mappings":"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","file":"/Users/dirk/work/github-zeed/dist/chunk-C72ST4ZR.cjs","sourcesContent":[null,"import { useDispose } from '../dispose-defer'\nimport { Emitter } from '../msg/emitter'\nimport { uname, uuid } from '../uuid'\nimport { Progress } from './progress'\nimport { createPromise } from './promise'\n\nexport type PoolTaskIdConflictResolution = 'replace' | 'memoize' | 'prioritize' | 'error'\n\n// export enum PoolTaskIdConflictResolution {\n// /**\n// * Tasks with same `id` are replaced. Newest wins.\n// */\n// replace = 0,\n\n// /**\n// * Task with same `id` will continue to run. Reference is returned with option to cancel.\n// * Named \"memoize\" because the result of the task should always be the same for the same `id`,\n// * like e.g. a download.\n// */\n// memoize = 1,\n\n// /** Like memoize, but try to put on top of the list */\n// prioritize = 2,\n\n// /**\n// * Tasks with same `id` throw error\n// */\n// error = 3,\n\n// }\n\nexport interface PoolConfig {\n name?: string\n maxParallel?: number\n idConflictResolution?: PoolTaskIdConflictResolution\n}\n\nexport type PoolTaskFn<T = any> = (taskInfo: PoolTask<T>) => Promise<T>\n\nexport type PoolTaskState = 'waiting' | 'running' | 'finished'\n\n/** Task */\nexport interface PoolTask<T> {\n readonly id: string\n readonly task: PoolTaskFn<T>\n readonly done: (result?: any) => void\n readonly setMax: (max: number) => void\n readonly setResolved: (resolved: number) => void\n readonly incResolved: (inc?: number) => void\n state: PoolTaskState\n priority: number\n /** Same groups are executed only one at a time */\n group?: string\n\n progress: Progress\n max: number\n resolved: number\n\n result?: T\n payload?: unknown\n}\n\nexport interface PoolTaskEvents {\n didUpdate: (\n max: number,\n resolved: number,\n presentMax: number,\n presentResolved: number,\n ) => void\n didStart: (id: string) => void\n didCancel: (id: string) => void\n didFinish: () => void\n didResolve: (id: string, value: any) => void\n didReject: (id: string, error: any) => void\n}\n\n// todo: barrier\n// todo: dependents\n\nexport function usePool<T = any>(config: PoolConfig = {}) {\n const {\n maxParallel = 3,\n name = uname('pool'),\n idConflictResolution = 'memoize',\n } = config\n\n const events = new Emitter<PoolTaskEvents>()\n\n const dispose = useDispose()\n dispose.add(cancelAll)\n\n const progress = new Progress({ name })\n\n progress.on('progressCancelled', cancelAll)\n\n let countMax = 0\n let countResolved = 0\n let currentParallel = 0\n let priority = 0\n const tasks: Record<string, PoolTask<T>> = {}\n\n // const [allFinishedPromise, allFinishedResolve] = createPromise()\n\n async function waitFinishAll() {\n if (countMax > 0) {\n const [promise, resolve] = createPromise()\n events.once('didFinish', resolve)\n return promise\n }\n }\n\n async function cleanupFinished() {\n for (const id of Object.keys(tasks)) {\n const task = tasks[id]\n if (task.state === 'finished') {\n await tasks[id].progress.dispose()\n delete tasks[id]\n }\n }\n }\n\n function didFinish() {\n void events.emit('didFinish')\n // allFinishedResolve(countMax)\n countMax = 0\n countResolved = 0\n void cleanupFinished()\n progress.reset()\n }\n\n function didUpdate() {\n let presentMax = 0\n let presentResolved = 0\n for (const { max, resolved, state } of Object.values(tasks)) {\n presentMax += max\n presentResolved += state === 'finished' ? max : Math.min(max, resolved)\n }\n void events.emit(\n 'didUpdate',\n countMax,\n countResolved,\n presentMax,\n presentResolved,\n )\n }\n\n function performNext() {\n didUpdate()\n if (countMax > 0 && countMax === countResolved)\n didFinish()\n if (currentParallel >= maxParallel)\n return\n const waitingTasks = Object.values(tasks).filter(\n t => t.state === 'waiting',\n )\n if (waitingTasks.length > 0) {\n let taskInfo: PoolTask<T> | undefined\n for (const t of waitingTasks) {\n // Skip task if one of same group is running.\n // Forces serialized execution for subgroup of tasks.\n if (\n t.group != null\n && Object.values(tasks).some(\n tt =>\n tt.state === 'running'\n && tt.id !== t.id\n && tt.group === t.group,\n )\n ) {\n continue\n }\n\n // fifo\n if (taskInfo == null || t.priority < taskInfo.priority)\n taskInfo = t\n }\n if (taskInfo != null) {\n const id = taskInfo.id\n const done = taskInfo.done\n taskInfo.state = 'running'\n ++currentParallel\n void events.emit('didStart', id)\n\n const taskFinished = (result?: T) => {\n if (taskInfo) {\n taskInfo.result = result\n taskInfo.state = 'finished'\n taskInfo.resolved = taskInfo.max\n taskInfo.progress?.setCompleted()\n // void taskInfo.progress.dispose()\n }\n --currentParallel\n ++countResolved\n performNext()\n }\n\n taskInfo\n .task(taskInfo)\n .then((r) => {\n done(r)\n void events.emit('didResolve', id, r)\n taskFinished(r)\n })\n .catch((err) => {\n done()\n void events.emit('didReject', id, err)\n taskFinished()\n })\n }\n }\n }\n\n function cancel(id: string) {\n const taskInfo = tasks[id]\n if (taskInfo && taskInfo.state === 'waiting') {\n tasks[id].state = 'finished'\n ++countResolved\n void events.emit('didCancel', id)\n void tasks[id].progress.dispose()\n didUpdate()\n }\n }\n\n function cancelAll() {\n Object.keys(tasks).forEach(cancel)\n // progress.dispose()\n }\n\n function hasById(id: string) {\n return tasks[id] != null\n }\n\n function enqueue<P>(\n task: PoolTaskFn<T>,\n config: {\n id?: string\n max?: number\n resolved?: number\n group?: string\n idConflictResolution?: PoolTaskIdConflictResolution\n payload?: P\n } = {},\n ) {\n let done: any\n const promise: Promise<any> = new Promise(resolve => (done = resolve))\n const id = config.id ?? uuid()\n\n if (tasks[id] != null) {\n const resolution = config.idConflictResolution ?? idConflictResolution\n\n if (resolution === 'replace') {\n cancel(id)\n }\n else if (resolution === 'memoize' || resolution === 'prioritize') {\n const runningTask = tasks[id]\n\n if (resolution === 'prioritize')\n runningTask.priority = ++priority\n\n return {\n id,\n promise: (async () => {\n if (runningTask.state === 'finished')\n return tasks[id].result\n\n // todo: wait for task to finish\n })(),\n dispose: () => cancel(id),\n cancel: () => cancel(id),\n }\n }\n else {\n throw new Error(`Pool task with id=${id} already exists!`)\n }\n }\n\n const taskProgress = new Progress({\n name: id,\n totalUnits: config.max ?? 1,\n completeUnits: config.resolved ?? 0,\n })\n\n progress.addChild(taskProgress)\n\n tasks[id] = {\n id,\n task,\n priority: ++priority,\n group: config.group,\n state: 'waiting',\n max: config.max ?? 1,\n resolved: config.resolved ?? 0,\n done,\n payload: config.payload,\n progress: taskProgress,\n\n /** @deprecated should use `.progress` */\n setMax(units) {\n taskProgress.setTotalUnits(units)\n tasks[id].max = units\n didUpdate()\n },\n\n /** @deprecated should use `.progress` */\n setResolved(units) {\n taskProgress.setCompletetedUnits(units)\n tasks[id].resolved = units\n didUpdate()\n },\n\n /** @deprecated should use `.progress` */\n incResolved(inc = 1) {\n taskProgress.incCompletedUnits(inc)\n tasks[id].resolved += inc\n didUpdate()\n },\n }\n ++countMax\n performNext()\n\n return {\n id,\n promise,\n dispose: () => cancel(id),\n cancel: () => cancel(id),\n }\n }\n\n return {\n events,\n cancel,\n cancelAll,\n hasById,\n progress,\n enqueue,\n dispose,\n waitFinishAll,\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-C7CD7VGT.cjs","../src/browser/gravatar.ts"],"names":["gravatar","email","options","hex_chr","md5cycle","e","t","n","r","i","s","ff","gg","hh","ii","add32","__name","cmn","o","md51","md5blk","rhex","hex","md5","params","base"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/chunk-C7CD7VGT.cjs","sourcesContent":[null,"// MIT licensed\n// https://github.com/mazondo/gravatarjs/blob/master/gravatar.js\n// https://en.gravatar.com/site/implement/images/\n\n/** @deprecated Due to privacy concerns. Prefer local or custom solutions. */\nfunction gravatar(\n email: string,\n options: { size?: any, backup?: any, secure?: any, rating?: any },\n) {\n const hex_chr = '0123456789abcdef'.split('')\n\n // using md5() from here: http://www.myersdaily.org/joseph/javascript/md5-text.html\n function md5cycle(e: any[], t: any[]) {\n let n = e[0]\n let r = e[1]\n let i = e[2]\n let s = e[3]\n n = ff(n, r, i, s, t[0], 7, -680876936)\n s = ff(s, n, r, i, t[1], 12, -389564586)\n i = ff(i, s, n, r, t[2], 17, 606105819)\n r = ff(r, i, s, n, t[3], 22, -1044525330)\n n = ff(n, r, i, s, t[4], 7, -176418897)\n s = ff(s, n, r, i, t[5], 12, 1200080426)\n i = ff(i, s, n, r, t[6], 17, -1473231341)\n r = ff(r, i, s, n, t[7], 22, -45705983)\n n = ff(n, r, i, s, t[8], 7, 1770035416)\n s = ff(s, n, r, i, t[9], 12, -1958414417)\n i = ff(i, s, n, r, t[10], 17, -42063)\n r = ff(r, i, s, n, t[11], 22, -1990404162)\n n = ff(n, r, i, s, t[12], 7, 1804603682)\n s = ff(s, n, r, i, t[13], 12, -40341101)\n i = ff(i, s, n, r, t[14], 17, -1502002290)\n r = ff(r, i, s, n, t[15], 22, 1236535329)\n n = gg(n, r, i, s, t[1], 5, -165796510)\n s = gg(s, n, r, i, t[6], 9, -1069501632)\n i = gg(i, s, n, r, t[11], 14, 643717713)\n r = gg(r, i, s, n, t[0], 20, -373897302)\n n = gg(n, r, i, s, t[5], 5, -701558691)\n s = gg(s, n, r, i, t[10], 9, 38016083)\n i = gg(i, s, n, r, t[15], 14, -660478335)\n r = gg(r, i, s, n, t[4], 20, -405537848)\n n = gg(n, r, i, s, t[9], 5, 568446438)\n s = gg(s, n, r, i, t[14], 9, -1019803690)\n i = gg(i, s, n, r, t[3], 14, -187363961)\n r = gg(r, i, s, n, t[8], 20, 1163531501)\n n = gg(n, r, i, s, t[13], 5, -1444681467)\n s = gg(s, n, r, i, t[2], 9, -51403784)\n i = gg(i, s, n, r, t[7], 14, 1735328473)\n r = gg(r, i, s, n, t[12], 20, -1926607734)\n n = hh(n, r, i, s, t[5], 4, -378558)\n s = hh(s, n, r, i, t[8], 11, -2022574463)\n i = hh(i, s, n, r, t[11], 16, 1839030562)\n r = hh(r, i, s, n, t[14], 23, -35309556)\n n = hh(n, r, i, s, t[1], 4, -1530992060)\n s = hh(s, n, r, i, t[4], 11, 1272893353)\n i = hh(i, s, n, r, t[7], 16, -155497632)\n r = hh(r, i, s, n, t[10], 23, -1094730640)\n n = hh(n, r, i, s, t[13], 4, 681279174)\n s = hh(s, n, r, i, t[0], 11, -358537222)\n i = hh(i, s, n, r, t[3], 16, -722521979)\n r = hh(r, i, s, n, t[6], 23, 76029189)\n n = hh(n, r, i, s, t[9], 4, -640364487)\n s = hh(s, n, r, i, t[12], 11, -421815835)\n i = hh(i, s, n, r, t[15], 16, 530742520)\n r = hh(r, i, s, n, t[2], 23, -995338651)\n n = ii(n, r, i, s, t[0], 6, -198630844)\n s = ii(s, n, r, i, t[7], 10, 1126891415)\n i = ii(i, s, n, r, t[14], 15, -1416354905)\n r = ii(r, i, s, n, t[5], 21, -57434055)\n n = ii(n, r, i, s, t[12], 6, 1700485571)\n s = ii(s, n, r, i, t[3], 10, -1894986606)\n i = ii(i, s, n, r, t[10], 15, -1051523)\n r = ii(r, i, s, n, t[1], 21, -2054922799)\n n = ii(n, r, i, s, t[8], 6, 1873313359)\n s = ii(s, n, r, i, t[15], 10, -30611744)\n i = ii(i, s, n, r, t[6], 15, -1560198380)\n r = ii(r, i, s, n, t[13], 21, 1309151649)\n n = ii(n, r, i, s, t[4], 6, -145523070)\n s = ii(s, n, r, i, t[11], 10, -1120210379)\n i = ii(i, s, n, r, t[2], 15, 718787259)\n r = ii(r, i, s, n, t[9], 21, -343485551)\n e[0] = add32(n, e[0])\n e[1] = add32(r, e[1])\n e[2] = add32(i, e[2])\n e[3] = add32(s, e[3])\n }\n function cmn(e: number, t: number, n: any, r: any, i: number, s: any) {\n t = add32(add32(t, e), add32(r, s))\n return add32((t << i) | (t >>> (32 - i)), n)\n }\n function ff(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn((t & n) | (~t & r), e, t, i, s, o)\n }\n function gg(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn((t & r) | (n & ~r), e, t, i, s, o)\n }\n function hh(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn(t ^ n ^ r, e, t, i, s, o)\n }\n function ii(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn(n ^ (t | ~r), e, t, i, s, o)\n }\n function md51(e: string) {\n const t = e.length\n const n = [1732584193, -271733879, -1732584194, 271733878]\n let r: number\n for (r = 64; r <= e.length; r += 64)\n md5cycle(n, md5blk(e.substring(r - 64, r)))\n\n e = e.substring(r - 64)\n const i = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n for (r = 0; r < e.length; r++) i[r >> 2] |= e.charCodeAt(r) << (r % 4 << 3)\n i[r >> 2] |= 128 << (r % 4 << 3)\n if (r > 55) {\n md5cycle(n, i)\n for (r = 0; r < 16; r++) i[r] = 0\n }\n i[14] = t * 8\n md5cycle(n, i)\n return n\n }\n function md5blk(e: string) {\n const t = []\n let n: number\n for (n = 0; n < 64; n += 4) {\n t[n >> 2]\n = e.charCodeAt(n)\n + (e.charCodeAt(n + 1) << 8)\n + (e.charCodeAt(n + 2) << 16)\n + (e.charCodeAt(n + 3) << 24)\n }\n return t\n }\n function rhex(e: number) {\n let t = ''\n let n = 0\n for (; n < 4; n++)\n t += hex_chr[(e >> (n * 8 + 4)) & 15] + hex_chr[(e >> (n * 8)) & 15]\n return t\n }\n function hex(e: any[]) {\n for (let t = 0; t < e.length; t++) e[t] = rhex(e[t])\n return e.join('')\n }\n function md5(e: string) {\n return hex(md51(e))\n }\n function add32(e: number, t: number) {\n return (e + t) & 4294967295\n }\n\n // check to make sure you gave us something\n options = options || {}\n\n const params = []\n\n // set some defaults, just in case\n options = {\n size: options.size || '50',\n rating: options.rating || 'g',\n secure: options.secure || location.protocol === 'https:',\n backup: options.backup || '',\n }\n\n // setup the email address\n email = email.trim().toLowerCase()\n\n // determine which base to use\n const base = options.secure\n ? 'https://secure.gravatar.com/avatar/'\n : 'http://www.gravatar.com/avatar/'\n\n // add the params\n if (options.rating)\n params.push(`r=${options.rating}`)\n\n if (options.backup)\n params.push(`d=${encodeURIComponent(options.backup)}`)\n\n if (options.size)\n params.push(`s=${options.size}`)\n\n // now throw it all together\n return `${base + md5(email)}?${params.join('&')}`\n}\n\nexport function gravatarURLByEmail(\n email: string,\n defaultURL = '',\n): string {\n try {\n return gravatar(email, {\n size: 256,\n backup: 'monsterid',\n // backup: \"https://holtwick.de/download/user.png\", // \"retro\",\n secure: true,\n })\n }\n catch (error) {\n return defaultURL\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-C7CD7VGT.cjs","../src/browser/gravatar.ts"],"names":["gravatar","email","options","hex_chr","md5cycle","e","t","n","r","i","s","ff","gg","hh","ii","add32","__name","cmn","o","md51","md5blk","rhex","hex","md5","params","base"],"mappings":"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","file":"/Users/dirk/work/github-zeed/dist/chunk-C7CD7VGT.cjs","sourcesContent":[null,"// MIT licensed\n// https://github.com/mazondo/gravatarjs/blob/master/gravatar.js\n// https://en.gravatar.com/site/implement/images/\n\n/** @deprecated Due to privacy concerns. Prefer local or custom solutions. */\nfunction gravatar(\n email: string,\n options: { size?: any, backup?: any, secure?: any, rating?: any },\n) {\n const hex_chr = '0123456789abcdef'.split('')\n\n // using md5() from here: http://www.myersdaily.org/joseph/javascript/md5-text.html\n function md5cycle(e: any[], t: any[]) {\n let n = e[0]\n let r = e[1]\n let i = e[2]\n let s = e[3]\n n = ff(n, r, i, s, t[0], 7, -680876936)\n s = ff(s, n, r, i, t[1], 12, -389564586)\n i = ff(i, s, n, r, t[2], 17, 606105819)\n r = ff(r, i, s, n, t[3], 22, -1044525330)\n n = ff(n, r, i, s, t[4], 7, -176418897)\n s = ff(s, n, r, i, t[5], 12, 1200080426)\n i = ff(i, s, n, r, t[6], 17, -1473231341)\n r = ff(r, i, s, n, t[7], 22, -45705983)\n n = ff(n, r, i, s, t[8], 7, 1770035416)\n s = ff(s, n, r, i, t[9], 12, -1958414417)\n i = ff(i, s, n, r, t[10], 17, -42063)\n r = ff(r, i, s, n, t[11], 22, -1990404162)\n n = ff(n, r, i, s, t[12], 7, 1804603682)\n s = ff(s, n, r, i, t[13], 12, -40341101)\n i = ff(i, s, n, r, t[14], 17, -1502002290)\n r = ff(r, i, s, n, t[15], 22, 1236535329)\n n = gg(n, r, i, s, t[1], 5, -165796510)\n s = gg(s, n, r, i, t[6], 9, -1069501632)\n i = gg(i, s, n, r, t[11], 14, 643717713)\n r = gg(r, i, s, n, t[0], 20, -373897302)\n n = gg(n, r, i, s, t[5], 5, -701558691)\n s = gg(s, n, r, i, t[10], 9, 38016083)\n i = gg(i, s, n, r, t[15], 14, -660478335)\n r = gg(r, i, s, n, t[4], 20, -405537848)\n n = gg(n, r, i, s, t[9], 5, 568446438)\n s = gg(s, n, r, i, t[14], 9, -1019803690)\n i = gg(i, s, n, r, t[3], 14, -187363961)\n r = gg(r, i, s, n, t[8], 20, 1163531501)\n n = gg(n, r, i, s, t[13], 5, -1444681467)\n s = gg(s, n, r, i, t[2], 9, -51403784)\n i = gg(i, s, n, r, t[7], 14, 1735328473)\n r = gg(r, i, s, n, t[12], 20, -1926607734)\n n = hh(n, r, i, s, t[5], 4, -378558)\n s = hh(s, n, r, i, t[8], 11, -2022574463)\n i = hh(i, s, n, r, t[11], 16, 1839030562)\n r = hh(r, i, s, n, t[14], 23, -35309556)\n n = hh(n, r, i, s, t[1], 4, -1530992060)\n s = hh(s, n, r, i, t[4], 11, 1272893353)\n i = hh(i, s, n, r, t[7], 16, -155497632)\n r = hh(r, i, s, n, t[10], 23, -1094730640)\n n = hh(n, r, i, s, t[13], 4, 681279174)\n s = hh(s, n, r, i, t[0], 11, -358537222)\n i = hh(i, s, n, r, t[3], 16, -722521979)\n r = hh(r, i, s, n, t[6], 23, 76029189)\n n = hh(n, r, i, s, t[9], 4, -640364487)\n s = hh(s, n, r, i, t[12], 11, -421815835)\n i = hh(i, s, n, r, t[15], 16, 530742520)\n r = hh(r, i, s, n, t[2], 23, -995338651)\n n = ii(n, r, i, s, t[0], 6, -198630844)\n s = ii(s, n, r, i, t[7], 10, 1126891415)\n i = ii(i, s, n, r, t[14], 15, -1416354905)\n r = ii(r, i, s, n, t[5], 21, -57434055)\n n = ii(n, r, i, s, t[12], 6, 1700485571)\n s = ii(s, n, r, i, t[3], 10, -1894986606)\n i = ii(i, s, n, r, t[10], 15, -1051523)\n r = ii(r, i, s, n, t[1], 21, -2054922799)\n n = ii(n, r, i, s, t[8], 6, 1873313359)\n s = ii(s, n, r, i, t[15], 10, -30611744)\n i = ii(i, s, n, r, t[6], 15, -1560198380)\n r = ii(r, i, s, n, t[13], 21, 1309151649)\n n = ii(n, r, i, s, t[4], 6, -145523070)\n s = ii(s, n, r, i, t[11], 10, -1120210379)\n i = ii(i, s, n, r, t[2], 15, 718787259)\n r = ii(r, i, s, n, t[9], 21, -343485551)\n e[0] = add32(n, e[0])\n e[1] = add32(r, e[1])\n e[2] = add32(i, e[2])\n e[3] = add32(s, e[3])\n }\n function cmn(e: number, t: number, n: any, r: any, i: number, s: any) {\n t = add32(add32(t, e), add32(r, s))\n return add32((t << i) | (t >>> (32 - i)), n)\n }\n function ff(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn((t & n) | (~t & r), e, t, i, s, o)\n }\n function gg(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn((t & r) | (n & ~r), e, t, i, s, o)\n }\n function hh(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn(t ^ n ^ r, e, t, i, s, o)\n }\n function ii(\n e: any,\n t: number,\n n: number,\n r: number,\n i: any,\n s: number,\n o: number,\n ) {\n return cmn(n ^ (t | ~r), e, t, i, s, o)\n }\n function md51(e: string) {\n const t = e.length\n const n = [1732584193, -271733879, -1732584194, 271733878]\n let r: number\n for (r = 64; r <= e.length; r += 64)\n md5cycle(n, md5blk(e.substring(r - 64, r)))\n\n e = e.substring(r - 64)\n const i = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n for (r = 0; r < e.length; r++) i[r >> 2] |= e.charCodeAt(r) << (r % 4 << 3)\n i[r >> 2] |= 128 << (r % 4 << 3)\n if (r > 55) {\n md5cycle(n, i)\n for (r = 0; r < 16; r++) i[r] = 0\n }\n i[14] = t * 8\n md5cycle(n, i)\n return n\n }\n function md5blk(e: string) {\n const t = []\n let n: number\n for (n = 0; n < 64; n += 4) {\n t[n >> 2]\n = e.charCodeAt(n)\n + (e.charCodeAt(n + 1) << 8)\n + (e.charCodeAt(n + 2) << 16)\n + (e.charCodeAt(n + 3) << 24)\n }\n return t\n }\n function rhex(e: number) {\n let t = ''\n let n = 0\n for (; n < 4; n++)\n t += hex_chr[(e >> (n * 8 + 4)) & 15] + hex_chr[(e >> (n * 8)) & 15]\n return t\n }\n function hex(e: any[]) {\n for (let t = 0; t < e.length; t++) e[t] = rhex(e[t])\n return e.join('')\n }\n function md5(e: string) {\n return hex(md51(e))\n }\n function add32(e: number, t: number) {\n return (e + t) & 4294967295\n }\n\n // check to make sure you gave us something\n options = options || {}\n\n const params = []\n\n // set some defaults, just in case\n options = {\n size: options.size || '50',\n rating: options.rating || 'g',\n secure: options.secure || location.protocol === 'https:',\n backup: options.backup || '',\n }\n\n // setup the email address\n email = email.trim().toLowerCase()\n\n // determine which base to use\n const base = options.secure\n ? 'https://secure.gravatar.com/avatar/'\n : 'http://www.gravatar.com/avatar/'\n\n // add the params\n if (options.rating)\n params.push(`r=${options.rating}`)\n\n if (options.backup)\n params.push(`d=${encodeURIComponent(options.backup)}`)\n\n if (options.size)\n params.push(`s=${options.size}`)\n\n // now throw it all together\n return `${base + md5(email)}?${params.join('&')}`\n}\n\nexport function gravatarURLByEmail(\n email: string,\n defaultURL = '',\n): string {\n try {\n return gravatar(email, {\n size: 256,\n backup: 'monsterid',\n // backup: \"https://holtwick.de/download/user.png\", // \"retro\",\n secure: true,\n })\n }\n catch (error) {\n return defaultURL\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CEANCAI7.cjs","../src/common/msg/messages.ts"],"names":["createPromiseProxy","fn","opt","predefinedMethods","__name","target","name","args","useMessageHub","uname","encoder","JsonEncoder","retryAfter","ignoreUnhandled","logLevel","log","DefaultLogger","handlers","channel","queue","queueRetryTimer","waitingForResponse","dispose","postNext","message","err","postMessage","connect","newChannel","msg","id","result","error"],"mappings":"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","file":"/Users/dirk/work/github-zeed/dist/chunk-CEANCAI7.cjs","sourcesContent":[null,"import type { LogLevelAliasType } from '../log/log-base'\nimport type { Json } from '../types'\nimport type { Channel } from './channel'\nimport type { Encoder } from './encoder'\nimport { valueToString } from '../data/convert'\nimport { isPromise, tryTimeout } from '../exec/promise'\nimport { DefaultLogger } from '../log/log'\nimport { uname, uuid } from '../uuid'\nimport { JsonEncoder } from './encoder'\n\nexport interface MessageAction {\n name: string\n id: string\n args?: Json[]\n}\n\nexport interface MessageResult {\n id: string\n result?: Json\n error?: { stack?: string, name: string, message: string }\n}\n\nexport type Message = MessageAction | MessageResult\n\nexport interface MessagesOptions {\n timeout?: number\n}\n\nexport interface MessagesDefaultMethods<L> {\n dispose: () => void\n connect?: (channel: Channel) => void\n options: (opt: MessagesOptions) => L\n}\n\nexport type MessagesMethods<L> = L & MessagesDefaultMethods<L>\n\n// export type MessageDefinitions = {\n// [key: string]: (...args: any) => Promise<any>\n// }\n\nexport type MessageDefinitions = Record<any, (...args: any) => Promise<any>>\n\nexport interface MessageHub {\n dispose: () => void\n connect: (newChannel: Channel) => void\n listen: <L extends MessageDefinitions>(newHandlers: L) => void\n send: <L extends MessageDefinitions>() => MessagesMethods<L>\n}\n\n// The async proxy, waiting for a response\nexport function createPromiseProxy<P extends object>(fn: (name: string, args: any[], opt: any) => Promise<unknown>, opt: MessagesOptions, predefinedMethods: any = {}): P {\n return new Proxy<P>(predefinedMethods, {\n get: (target: any, name: any) => {\n if (name in target)\n return target[name]\n return (...args: any): any => fn(name, args, opt)\n },\n })\n}\n\n/**\n * RPC\n *\n * Features:\n * - Waits for connection\n * - Retries after fail\n * - Timeouts\n */\nexport function useMessageHub(\n opt: {\n name?: string\n channel?: Channel\n encoder?: Encoder\n retryAfter?: number\n ignoreUnhandled?: boolean\n debug?: boolean\n logLevel?: LogLevelAliasType\n } = {},\n): MessageHub {\n const {\n name = uname('hub'),\n encoder = new JsonEncoder(),\n retryAfter = 1000,\n ignoreUnhandled = true,\n logLevel = false,\n } = opt\n\n const log = DefaultLogger(name, logLevel)\n\n const handlers = {}\n let channel: Channel | undefined\n const queue: Message[] = []\n let queueRetryTimer: any\n const waitingForResponse: Record<string, [\n (result?: any) => any, // resolve\n (result?: any) => any, // reject\n ]> = {}\n\n const dispose = () => {\n clearTimeout(queueRetryTimer)\n }\n\n const postNext = async () => {\n clearTimeout(queueRetryTimer)\n if (channel) {\n if (channel.isConnected) {\n while (queue.length) {\n const message = queue[0]\n try {\n channel.postMessage(await encoder.encode(message))\n queue.shift() // remove from queue when done\n }\n catch (err) {\n log.warn('postMessage', err)\n break\n }\n }\n }\n if (queue.length > 0 && retryAfter > 0)\n queueRetryTimer = setTimeout(postNext, retryAfter)\n }\n }\n\n const postMessage = async (message: Message) => {\n log('enqueue postMessage', message)\n queue.push(message)\n await postNext()\n }\n\n const connect = async (newChannel: Channel) => {\n channel = newChannel\n\n channel.on('connect', postNext)\n\n channel.on('message', async (msg: any) => {\n log('onmessage', typeof msg)\n const { name, args, id, result, error } = await encoder.decode(msg.data)\n\n // Incoming new message\n if (name) {\n log(`name ${name} id ${id}`)\n try {\n // @ts-expect-error xxx\n if (handlers[name] == null)\n throw new Error(`handler for ${name} was not found`)\n\n // @ts-expect-error xxx\n let result = handlers[name](...args)\n if (isPromise(result))\n result = await result\n log(`result ${result}`)\n if (id)\n await postMessage({ id, result })\n }\n catch (error) {\n const err = error instanceof Error ? error : new Error(valueToString(error))\n log.warn('execution error', err.name)\n await postMessage({\n id,\n error: {\n message: err.message,\n stack: err.stack,\n name: err.name,\n },\n })\n }\n }\n\n // Incoming new response\n else if (id) {\n log(`response for id=${id}: result=${result}, error=${error}`)\n if (waitingForResponse[id] == null) {\n if (result === undefined)\n log(`skip response for ${id}`)\n else\n log.warn(`no response hook for ${id}`)\n }\n else {\n const [resolve, reject] = waitingForResponse[id]\n if (resolve && reject) {\n delete waitingForResponse[id]\n if (error) {\n const err = new Error(error.message)\n err.stack = error.stack\n err.name = error.name\n log.warn('reject', err.name)\n reject(err)\n }\n else {\n log('resolve', result)\n resolve(result)\n }\n }\n }\n }\n\n // Don't know what to do with it\n else if (!ignoreUnhandled) {\n log.warn('Unhandled message', msg)\n }\n })\n\n await postNext()\n }\n\n const fetchMessage = async (\n name: string,\n args: any[],\n opt: MessagesOptions = {},\n ): Promise<unknown> => {\n const { timeout = 5000 } = opt\n const id = uuid()\n await postMessage({\n name,\n args,\n id,\n })\n return tryTimeout(\n new Promise(\n (resolve, reject) => (waitingForResponse[id] = [resolve, reject]),\n ),\n timeout,\n )\n }\n\n if (opt.channel)\n void connect(opt.channel) // todo async\n\n return {\n dispose,\n\n connect,\n listen<L extends object>(newHandlers: L) {\n Object.assign(handlers, newHandlers)\n },\n send<L extends object>() {\n // The regular proxy without responding, just send\n return createPromiseProxy<L>(fetchMessage, {}, {\n options(perCallopt: MessagesOptions) {\n return createPromiseProxy<L>(fetchMessage, { ...perCallopt })\n },\n } as MessagesDefaultMethods<L>) as MessagesMethods<L>\n },\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CGNAZMNO.cjs","../src/common/data/deep.ts"],"names":["deepEqual","a","b","hash","isPrimitive","p","aa","bb","__name","deepStripUndefinedInPlace","isRecord","isArray","i","deepMerge","target","sources","source","isObject","key","targetValue","sourceValue"],"mappings":"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","file":"/Users/dirk/work/github-zeed/dist/chunk-CGNAZMNO.cjs","sourcesContent":[null,"/* eslint-disable no-prototype-builtins */\n\nimport { isArray, isObject, isPrimitive, isRecord } from './is'\n\nexport function deepEqual(a: any, b: any, hash = new WeakSet()) {\n // if both x and y are null or undefined and exactly the same\n if (a === b)\n return true\n\n // Cyclic\n if (hash.has(b)) {\n // console.log('cyclic')\n return false\n }\n\n if (!isPrimitive(b))\n hash.add(b)\n\n // if they are not strictly equal, they both need to be Objects\n if (!(a instanceof Object) || !(b instanceof Object))\n return false\n\n // they must have the exact same prototype chain, the closest we can do is\n // test there constructor.\n if (a.constructor !== b.constructor)\n return false\n\n // Shortcut to avoid to many loops\n if (a.length !== b.length)\n return false\n\n for (const p in a) {\n // other properties were tested using x.constructor === y.constructor\n if (!a.hasOwnProperty(p))\n continue\n\n // allows to compare x[ p ] and y[ p ] when set to undefined\n if (!b.hasOwnProperty(p))\n return false\n\n const aa = a[p]\n const bb = b[p]\n\n // if they have the same strict value or identity then they are equal\n // if (aa === bb) {\n // console.log('eq', typeof bb)\n // if (bb != null) hash.set(bb, true)\n // continue\n // }\n //\n // // Numbers, Strings, Functions, Booleans must be strictly equal\n // if (typeof (aa) !== 'object') {\n // return false\n // }\n\n // Objects and Arrays must be tested recursively\n if (!deepEqual(aa, bb, hash))\n return false\n }\n\n // allows x[ p ] to be set to undefined\n for (const p in b) {\n if (b.hasOwnProperty(p) && !a.hasOwnProperty(p))\n return false\n }\n\n return true\n}\n\n/** Strip properties with value `undefined` in place */\nexport function deepStripUndefinedInPlace(a: any, hash:WeakSet<object> = new WeakSet()) {\n // Cyclic\n if (hash.has(a))\n return '[Circular ~]'\n if (!isPrimitive(a))\n hash.add(a)\n\n if (isRecord(a)) {\n for (const p in a) {\n if (!a.hasOwnProperty(p))\n continue\n if (a[p] === undefined) {\n delete a[p]\n continue\n }\n deepStripUndefinedInPlace(a[p], hash)\n }\n }\n else if (isArray(a)) {\n for (let i = a.length - 1; i >= 0; i--) {\n if (a[i] === undefined)\n a.splice(i, 1)\n }\n }\n // else ignore\n\n return a\n}\n\nexport function deepMerge(target: any, ...sources: any[]) {\n // todo cyclic protection\n for (const source of sources) {\n if (!isObject(target))\n target = {}\n\n if (source == null || !isObject(source))\n continue\n\n Object.keys(source).forEach((key) => {\n const targetValue = target[key]\n const sourceValue = (source as any)[key]\n\n if (Array.isArray(targetValue) && Array.isArray(sourceValue))\n target[key] = targetValue.concat(sourceValue)\n else if (isObject(targetValue) && isObject(sourceValue))\n target[key] = deepMerge(Object.assign({}, targetValue), sourceValue)\n else\n target[key] = sourceValue\n })\n }\n\n return target\n}\n\n// // https://stackoverflow.com/a/40294058/140927\n// // Handles cyclic references\n// export function deepClonePrimitives(obj, hash = new WeakMap()) {\n//\n// // primitives\n// if (Object(obj) !== obj) {\n// // log('Primitive', obj)\n// return obj\n// }\n//\n// // cyclic reference\n// if (hash.has(obj)) {\n// return hash.get(obj)\n// }\n//\n// let result\n//\n// // primitives as objects like new String(), new Number()\n// if (\n// obj instanceof String ||\n// obj instanceof Number ||\n// obj instanceof BigInt ||\n// obj instanceof Boolean ||\n// obj instanceof Symbol\n// ) {\n// result = new obj.constructor(obj.valueOf())\n// // hash.set(obj, result)\n// return result\n// }\n//\n// // log('Obj', obj)\n//\n// if (obj instanceof Set) {\n// result = new Set(obj)\n// } else if (obj instanceof Map) {\n// result = new Map(Array.from(obj, ([key, val]) => [key, deepClonePrimitives(val, hash)]))\n// } else if (obj instanceof Date) {\n// result = new Date(obj)\n// } else if (obj instanceof RegExp) {\n// result = new RegExp(obj.source, obj.flags)\n// } else if (Array.isArray(obj)) {\n// result = Array.from(obj, val => deepClonePrimitives(val, hash))\n// } else if (obj.constructor) {\n// result = new obj.constructor()\n// log('bj object', result)\n// } else if (obj instanceof Function || typeof obj === 'function') {\n// log('Keep object', obj, Object.getPrototypeOf(obj))\n// result = obj\n// } else {\n// result = Object.create(null)\n// }\n//\n// hash.set(obj, result)\n//\n// return Object.assign(result, ...Object.keys(obj).map(key => ({\n// [key]: deepClonePrimitives(obj[key], hash),\n// })))\n// }\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CGQIHGXL.cjs","../src/common/msg/channel-resilient.ts"],"names":["ResillientChannel","Channel","__name","useDisposeWithUtils","data","channel","msg"],"mappings":"AAAA,ipBAAwC,wDAAyC,wDAAyC,ICO7GA,CAAAA,WAAN,MAAA,QAAgCC,mBAAQ,iHAP/C,MAO+C,CAAAC,iCAAAA,IAAA,CAAA,mBAAA,CAAA,CACrC,eACA,MAAA,CAAkC,CAAC,EAAA,gBAE3C,OAAA,CAAUC,iCAAAA,EAAoB,cAEtB,CAAeC,CAAAA,CAAoC,CACzD,GAAI,CACF,EAAA,iBAAI,IAAA,mBAAK,OAAA,6BAAS,aAAA,CAChB,OAAA,IAAA,CAAK,OAAA,CAAQ,WAAA,CAAYA,CAAI,CAAA,CACtB,CAAA,CAEX,CAAA,UACY,CAEZ,CACA,MAAO,CAAA,CACT,CAGA,WAAA,CAAA,CAAc,CACZ,GAAA,CAAA,CAAO,IAAA,CAAK,MAAA,CAAO,MAAA,CAAA,CAAQ,CACzB,IAAMA,CAAAA,CAAO,IAAA,CAAK,MAAA,CAAO,KAAA,CAAM,CAAA,CAC/B,EAAA,CAAIA,CAAAA,EAAQ,CAAC,IAAA,CAAK,cAAA,CAAeA,CAAI,CAAA,CAAG,CACtC,IAAA,CAAK,MAAA,CAAO,OAAA,CAAQA,CAAI,CAAA,CACxB,KACF,CACF,CACF,CAGA,WAAA,CAAA,CAAc,CACZ,IAAA,CAAK,MAAA,CAAS,CAAC,CACjB,CAKA,UAAA,CAAWC,CAAAA,CAAmB,CACvB,IAAA,CAAK,OAAA,CAAQ,CAAA,CAClB,IAAA,CAAK,OAAA,CAAUA,CAAAA,CACXA,CAAAA,EAAAA,CACF,IAAA,CAAK,OAAA,CAAQ,GAAA,CAAIA,CAAAA,CAAQ,EAAA,CAAG,SAAA,CAAWC,CAAAA,EAAO,IAAA,CAAK,IAAA,CAAK,SAAA,CAAWA,CAAG,CAAC,CAAC,CAAA,CACpED,CAAAA,CAAQ,WAAA,CACV,IAAA,CAAK,WAAA,CAAY,CAAA,CAEjB,IAAA,CAAK,OAAA,CAAQ,GAAA,CAAIA,CAAAA,CAAQ,EAAA,CAAG,SAAA,CAAW,CAAA,CAAA,EAAM,IAAA,CAAK,WAAA,CAAY,CAAC,CAAC,CAAA,CAGtE,CAGA,aAAA,CAAA,CAAgB,CACd,IAAA,CAAK,UAAA,CAAW,CAClB,CAEA,WAAA,CAAYD,CAAAA,CAAiC,CAC3C,IAAA,CAAK,WAAA,CAAY,CAAA,CACZ,IAAA,CAAK,cAAA,CAAeA,CAAI,CAAA,EAC3B,IAAA,CAAK,MAAA,CAAO,IAAA,CAAKA,CAAI,CACzB,CAEA,IAAI,WAAA,CAAA,CAAc,CAChB,uBAAO,IAAA,qBAAK,OAAA,6BAAS,aAAA,GAAgB,CAAA,CACvC,CACF,UAAA,CAAA,cAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-CGQIHGXL.cjs","sourcesContent":[null,"import { useDisposeWithUtils } from '../dispose-utils'\nimport { Channel } from './channel'\n\n/**\n * Channel that buffers if not connected.\n * The actual channel can be removed and replaced.\n */\nexport class ResillientChannel extends Channel {\n private channel?: Channel\n private buffer: (Uint8Array | string)[] = []\n\n dispose = useDisposeWithUtils()\n\n private postMessageRaw(data: Uint8Array | string): boolean {\n try {\n if (this.channel?.isConnected) {\n this.channel.postMessage(data)\n return true\n }\n }\n catch (err) {\n // log.warn('send failed', err)\n }\n return false\n }\n\n /** Post all buffered messages */\n flushBuffer() {\n while (this.buffer.length) {\n const data = this.buffer.shift()\n if (data && !this.postMessageRaw(data)) {\n this.buffer.unshift(data)\n break\n }\n }\n }\n\n /** Reset buffer without force sending */\n emptyBuffer() {\n this.buffer = []\n }\n\n /**\n * Set a new channel and flush buffer\n */\n setChannel(channel?: Channel) {\n void this.dispose()\n this.channel = channel\n if (channel) {\n this.dispose.add(channel.on('message', msg => this.emit('message', msg)))\n if (channel.isConnected)\n this.flushBuffer()\n else\n this.dispose.add(channel.on('connect', () => this.flushBuffer()))\n // channel.on('close', () => this.channels.delete(channel))\n }\n }\n\n /** @deprecated use `setChannel(undefined)` */\n deleteChannel() {\n this.setChannel()\n }\n\n postMessage(data: Uint8Array | string): void {\n this.flushBuffer()\n if (!this.postMessageRaw(data))\n this.buffer.push(data)\n }\n\n get isConnected() {\n return this.channel?.isConnected === true\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CHR4BOAA.cjs","../src/common/data/sorted.ts"],"names":["useSorted","config","getter","__name","item","items","a","b","start","acc","getSecureRandomIfPossible","end","between","lower","upper","distance","middle","fuzzy","move","newIndex","oldIndex","sortableItems","count","moveLower","step"],"mappings":"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","file":"/Users/dirk/work/github-zeed/dist/chunk-CHR4BOAA.cjs","sourcesContent":[null,"import { getSecureRandomIfPossible } from './math'\n\n/** CRDT compatible sorting with a single operation. Default name is `sort` */\nexport function useSorted<S extends Record<string, any>>(\n config: {\n getter?: (item: S) => number\n // setter?: (item: S, value: number) => void\n } = {},\n) {\n const {\n getter = (item: any): number => item.sort,\n // setter = (item: any, value) => (item.sort = value),\n } = config\n\n /** Return sorted list from low to high. */\n function items<T extends S>(items: T[]): T[] {\n items.sort((a, b) => (getter(a) || 0) - (getter(b) || 0))\n return items\n }\n\n /** Get a sort suitable for adding to start of list. */\n function start(items: S[]): number {\n return (\n items.reduce((acc, item) => Math.min(acc, getter(item) || 0), 0) - 1 - getSecureRandomIfPossible()\n )\n }\n\n /** Get a sort suitable for adding to end of list. */\n function end(items: S[]): number {\n return (\n items.reduce((acc, item) => Math.max(acc, getter(item) || 0), 0) + 1 + getSecureRandomIfPossible()\n )\n }\n\n /** Find a suitable value inbetween a lower and upper bound. */\n function between(lower?: number, upper?: number): number {\n if (lower == null)\n lower = (upper ?? 0) - 1\n if (upper == null)\n upper = (lower ?? 0) + 1\n\n const distance = upper - lower\n // if (distance === 0)\n\n const middle = lower + distance / 2\n const fuzzy = distance * 0.01 * (getSecureRandomIfPossible() - 0.5) // 1% fuzziness to avoid conflicts\n return middle + fuzzy\n }\n\n /** Mainly for drag and drop movements, where an item has to be moved to another index. Respects its own move as well. */\n function move(\n newIndex: number,\n oldIndex: number,\n sortableItems: S[],\n ): number {\n const count = sortableItems.length\n\n const moveLower = newIndex < oldIndex\n if (count <= 0 || newIndex >= count - 1)\n return end(sortableItems)\n\n if (newIndex <= 0)\n return start(sortableItems)\n\n // Make sure they are sorted\n sortableItems = items([...sortableItems])\n\n const step = moveLower ? -1 : 0 // use Math.sign(?) for performance?\n const lower = getter(sortableItems[newIndex + step]) || 0\n const upper = getter(sortableItems[newIndex + step + 1]) || 0\n const distance = upper - lower\n if (distance === 0) {\n // Ugly list with no presets, make the best guess\n if (moveLower)\n return start(sortableItems)\n\n return end(sortableItems)\n }\n const middle = lower + distance / 2\n const fuzzy = distance * 0.01 * (getSecureRandomIfPossible() - 0.5) // 1% fuzziness to avoid conflicts\n return middle + fuzzy\n }\n\n return {\n start,\n end,\n between,\n move,\n items,\n }\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkPU67BXVPcjs = require('./chunk-PU67BXVP.cjs');var _chunkWSRQ3X55cjs = require('./chunk-WSRQ3X55.cjs');var _chunkBQ66KUDGcjs = require('./chunk-BQ66KUDG.cjs');var _chunk3P4XRJ23cjs = require('./chunk-3P4XRJ23.cjs');var _chunkXH7UHZOFcjs = require('./chunk-XH7UHZOF.cjs');var _chunkZBG4FI7Ecjs = require('./chunk-ZBG4FI7E.cjs');var _chunkP7XCQ7WVcjs = require('./chunk-P7XCQ7WV.cjs');function P(o,p){_chunkZBG4FI7Ecjs.b.call(void 0, _optionalChain([o, 'optionalAccess', _2 => _2._object]),"schema should be of type object"),_chunkZBG4FI7Ecjs.b.call(void 0, _chunkWSRQ3X55cjs.e.call(void 0, o),"schema should be a flat object");let{env:i=_nullishCoalesce(_optionalChain([process, 'optionalAccess', _3 => _3.env]), () => ({})),prefix:s="",prefixOptional:r=!1}=_nullishCoalesce(p, () => ({})),c=s.length,n=_nullishCoalesce(_optionalChain([p, 'optionalAccess', _4 => _4.existing]), () => ({}));return _chunkBQ66KUDGcjs.a.call(void 0, o._object,(a,t)=>{let T=_nullishCoalesce(n[a], () => (t._default));if(_optionalChain([t, 'access', _5 => _5._meta, 'optionalAccess', _6 => _6.envSkip]))return T;let x=_chunkXH7UHZOFcjs.d.call(void 0, a,"_").toUpperCase(),b=s+_chunkXH7UHZOFcjs.d.call(void 0, a,"_").toUpperCase(),e=i[x];return c>0&&(r===!0?e=_nullishCoalesce(i[b], () => (e)):e=i[b]),e===void 0?T:(t.type==="number"?e=_chunk3P4XRJ23cjs.h.call(void 0, e,t._default):t.type==="boolean"&&(t._default===!0?e=_chunk3P4XRJ23cjs.g.call(void 0, e):e=_chunk3P4XRJ23cjs.f.call(void 0, e,!1)),_chunkPU67BXVPcjs.c.call(void 0, t,e))})}_chunkP7XCQ7WVcjs.a.call(void 0, P,"parseSchemaEnv");function $(o,p="",i=!1,s=!1){_chunkZBG4FI7Ecjs.b.call(void 0, _chunkWSRQ3X55cjs.e.call(void 0, o),"schema should be a flat object");let r=[];return _chunkBQ66KUDGcjs.a.call(void 0, o._object,(c,n)=>{if((_optionalChain([n, 'access', _7 => _7._meta, 'optionalAccess', _8 => _8.envPrivate])||_optionalChain([n, 'access', _9 => _9._meta, 'optionalAccess', _10 => _10.envSkip]))&&!s)return;let a=_nullishCoalesce(_optionalChain([n, 'access', _11 => _11._meta, 'optionalAccess', _12 => _12.envDesc]), () => (_optionalChain([n, 'access', _13 => _13._meta, 'optionalAccess', _14 => _14.desc])));a&&a.trim().split(`
|
|
2
2
|
`).forEach(t=>{r.push(`# ${t.trim()}`)}),r.push(`${i?"# ":""}${p+_chunkXH7UHZOFcjs.d.call(void 0, c,"_").toUpperCase()}=${_nullishCoalesce(n._default, () => (""))}`),r.push("")}),r.join(`
|
|
3
3
|
`)}_chunkP7XCQ7WVcjs.a.call(void 0, $,"stringFromSchemaEnv");exports.a = P; exports.b = $;
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
4
|
+
//# sourceMappingURL=chunk-CLMIDN5Q.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CLMIDN5Q.cjs","../src/common/schema/parse-env.ts"],"names":["parseSchemaEnv","schema","opt","assert","isSchemaObjectFlat","env","prefix","prefixOptional","pl","existing","objectMap","key","defaultValue","envKey","fromCamelCase","envKeyWithPrefix","value","valueToInteger","valueToBooleanNotFalse","valueToBoolean","schemaParseObject","__name","stringFromSchemaEnv","commentOut","showPrivate","lines","desc","line"],"mappings":"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","file":"/Users/dirk/work/github-zeed/dist/chunk-CLMIDN5Q.cjs","sourcesContent":[null,"import type { Type } from './schema'\nimport { assert } from '../assert'\nimport { fromCamelCase } from '../data/camelcase'\nimport { valueToBoolean, valueToBooleanNotFalse, valueToInteger } from '../data/convert'\nimport { objectMap } from '../data/object'\nimport { schemaParseObject } from './parse-object'\nimport { isSchemaObjectFlat } from './utils'\n\ndeclare module './schema' {\n interface TypeMeta {\n envDesc?: string\n envPrivate?: boolean // will not be documented\n envSkip?: boolean // will not be included in env parsing\n }\n}\n\nexport type SchemaEnvType = Record<string, any>\n\nexport interface SchemaEnvOptions<T> {\n existing?: Partial<T> // if true, will only parse existing env variables\n env?: SchemaEnvType\n prefix?: string\n prefixOptional?: boolean // if true, prefix is optional\n}\n\nexport function parseSchemaEnv<T>(schema: Type<T>, opt?: SchemaEnvOptions<T>): T {\n assert(schema?._object, 'schema should be of type object')\n assert(isSchemaObjectFlat(schema), 'schema should be a flat object')\n\n const {\n // eslint-disable-next-line node/prefer-global/process\n env = (process?.env ?? {}) as SchemaEnvType,\n prefix = '',\n prefixOptional = false,\n } = opt ?? {}\n const pl = prefix.length\n const existing: any = opt?.existing ?? {}\n\n return objectMap(schema._object, (key, schema) => {\n const defaultValue = existing[key] ?? schema._default\n if (schema._meta?.envSkip)\n return defaultValue\n\n const envKey = fromCamelCase(key, '_').toUpperCase()\n const envKeyWithPrefix = prefix + fromCamelCase(key, '_').toUpperCase()\n\n let value: any = env[envKey]\n\n if (pl > 0) {\n if (prefixOptional === true) {\n value = env[envKeyWithPrefix] ?? value\n }\n else {\n value = env[envKeyWithPrefix]\n }\n }\n\n if (value === undefined) {\n return defaultValue\n }\n\n if (schema.type === 'number') {\n value = valueToInteger(value, schema._default)\n }\n else if (schema.type === 'boolean') {\n if (schema._default === true)\n value = valueToBooleanNotFalse(value)\n else\n value = valueToBoolean(value, false)\n }\n return schemaParseObject(schema, value)\n }) as T\n}\n\nexport function stringFromSchemaEnv<T>(schema: Type<T>, prefix = '', commentOut = false, showPrivate = false): string {\n assert(isSchemaObjectFlat(schema), 'schema should be a flat object')\n const lines: string[] = []\n objectMap(schema._object!, (key, schema) => {\n if ((schema._meta?.envPrivate || schema._meta?.envSkip) && !showPrivate)\n return\n const desc = schema._meta?.envDesc ?? schema._meta?.desc\n if (desc) {\n desc.trim().split('\\n').forEach((line: string) => {\n lines.push(`# ${line.trim()}`)\n })\n }\n lines.push(`${commentOut ? '# ' : ''}${prefix + fromCamelCase(key, '_').toUpperCase()}=${schema._default ?? ''}`)\n lines.push('')\n }) as T\n return lines.join('\\n')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CM2VW6MR.cjs","../src/node/files-async.ts"],"names":["getStatAsync","path","stat","__name","getFingerprintAsync","mtimeMs","size"],"mappings":"AAAA,iOAAwC,wDAAyC,wDAAyC,uCCA5F,4BACA,oFACV,MAyCpB,SAAsBA,CAAAA,CAAaC,CAAAA,CAA8C,CAC/E,GAAI,CACF,OAAO,MAAMC,4BAAAA,CAAS,CACxB,CAAA,UACY,CAAE,CAChB,CALsBC,iCAAAA,CAAAH,CAAA,cAAA,CAAA,CActB,MAAA,SAAsBI,CAAAA,CAAoBH,CAAAA,CAA2C,CACnF,IAAMC,CAAAA,CAAO,MAAMF,CAAAA,CAAaC,CAAI,CAAA,CACpC,EAAA,CAAIC,CAAAA,EAAQ,IAAA,CACV,MAAA,CACF,GAAM,CAAE,OAAA,CAAAG,CAAAA,CAAS,IAAA,CAAAC,CAAK,CAAA,CAAIJ,CAAAA,CAC1B,MAAO,CAAA,EAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-CM2VW6MR.cjs","sourcesContent":[null,"import { readdir, stat } from 'node:fs/promises'\nimport { join, resolve } from 'node:path'\nimport process from 'node:process'\nimport { isHiddenPath } from './fs'\nimport { globToRegExp } from './glob'\n\n/**\n * Base stats interface for file system objects.\n * @category FileSystem\n */\nexport interface StatsBase {\n isFile: () => boolean\n isDirectory: () => boolean\n isBlockDevice: () => boolean\n isCharacterDevice: () => boolean\n isSymbolicLink: () => boolean\n isFIFO: () => boolean\n isSocket: () => boolean\n dev: number\n ino: number\n mode: number\n nlink: number\n uid: number\n gid: number\n rdev: number\n size: number\n blksize: number\n blocks: number\n atimeMs: number\n mtimeMs: number\n ctimeMs: number\n birthtimeMs: number\n atime: Date\n mtime: Date\n ctime: Date\n birthtime: Date\n}\n\n/**\n * Retrieves the file system stats for the specified path asynchronously.\n * @param path - The path to the file or directory.\n * @returns A Promise that resolves to the file system stats (Stats) or undefined if an error occurs.\n */\nexport async function getStatAsync(path: string): Promise<StatsBase | undefined> {\n try {\n return await stat(path)\n }\n catch (err) { }\n}\n\n/**\n * Retrieves the fingerprint of a file asynchronously.\n * The fingerprint is a string representation of the file's path, modification time, and size.\n *\n * @param path - The path of the file.\n * @returns A promise that resolves to the fingerprint string, or undefined if the file does not exist.\n */\nexport async function getFingerprintAsync(path: string): Promise<string | undefined> {\n const stat = await getStatAsync(path)\n if (stat == null)\n return\n const { mtimeMs, size } = stat\n return `${path}|${mtimeMs}|${size}`\n}\n\nexport async function walkSyncAsync(rootFolder: string, subFolder = '', ignoreHidden = true) {\n let resultPaths: string[] = []\n const paths = await readdir(resolve(rootFolder, subFolder))\n if (paths != null && paths.length > 0) {\n for (let file of paths) {\n file = join(subFolder, file)\n if (ignoreHidden && isHiddenPath(file))\n continue\n const realFile = join(rootFolder, file)\n const stat = await getStatAsync(realFile)\n if (stat && stat.isDirectory())\n resultPaths = resultPaths.concat(await walkSyncAsync(rootFolder, file) || [])\n else\n resultPaths.push(file)\n }\n }\n return resultPaths\n}\n\nexport async function filesAsync(opt: {\n basePath?: string\n pattern?: string | RegExp\n filter?: (name: string) => boolean\n ignoreHidden?: boolean\n} = {}) {\n let {\n pattern,\n filter,\n basePath = process.cwd(),\n ignoreHidden = false,\n } = opt\n\n let paths = await walkSyncAsync(basePath, '', ignoreHidden)\n\n paths = paths.filter(\n path =>\n !(ignoreHidden && (path.startsWith('.') || path.includes('/.'))),\n )\n\n if (pattern) {\n if (typeof pattern === 'string')\n pattern = globToRegExp(pattern)\n if (pattern instanceof RegExp) {\n const rx = pattern\n rx.lastIndex = 0\n paths = paths.filter(path => rx.test(path))\n }\n }\n\n if (filter)\n paths = paths.filter(filter)\n\n return paths\n}\n\n// export function glob(patterns: string[], opt: {\n// cwd?: string,\n// dot?: boolean\n// })\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CWGNDC2T.cjs","../src/common/log/log-console-original.ts"],"names":["getGlobalConsole","gcontext","getGlobalContext","originalConsole","__name"],"mappings":"AAAA,iIAAwC,wDAAyC,SCiBjEA,CAAAA,CAAAA,CAAmD,CACjE,IAAMC,CAAAA,CAAWC,iCAAAA,CAAiB,CAClC,EAAA,CAAID,CAAAA,CAAS,eAAA,EAAmB,IAAA,CAAM,CACpC,IAAME,CAAAA,CAAkB,OAAO,OAAA,CAAY,GAAA,CAAc,OAAA,CAAU,KAAA,CAAA,CACnEF,CAAAA,CAAS,eAAA,CAAkBE,CAAAA,CACvB,CACE,OAAA,CAASA,CAAAA,CACT,GAAA,CAAKA,CAAAA,CAAgB,GAAA,CAAI,IAAA,CAAKA,CAAe,CAAA,CAC7C,IAAA,CAAMA,CAAAA,CAAgB,IAAA,CAAK,IAAA,CAAKA,CAAe,CAAA,CAC/C,IAAA,CAAMA,CAAAA,CAAgB,IAAA,CAAK,IAAA,CAAKA,CAAe,CAAA,CAC/C,KAAA,CAAOA,CAAAA,CAAgB,KAAA,CAAM,IAAA,CAAKA,CAAe,CAAA,CACjD,KAAA,CAAOA,CAAAA,CAAgB,KAAA,CAAM,IAAA,CAAKA,CAAe,CACnD,CAAA,CACA,KAAA,CACN,CACA,OAAOF,CAAAA,CAAS,eAClB,CAhBgBG,iCAAAA,CAAAJ,CAAA,kBAAA,CAAA,CAAA,cAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-CWGNDC2T.cjs","sourcesContent":[null,"import { getGlobalContext } from '../global'\n\n// Global logger to guarantee all submodules use the same logger instance\n\nexport type LogOriginalConsole = Pick<Console, 'log' | 'info' | 'warn' | 'error' | 'debug'> & { console: Console }\n\ndeclare global {\n interface ZeedGlobalContext {\n originalConsole?: LogOriginalConsole\n }\n}\n\n/**\n * Retrieves the global console object, ensuring that it is stored in the global context.\n * If the global context does not have a reference to the original console object, it creates one.\n * The original console object is then bound to the global context, allowing access to its methods.\n */\nexport function getGlobalConsole(): LogOriginalConsole | undefined {\n const gcontext = getGlobalContext()\n if (gcontext.originalConsole == null) {\n const originalConsole = typeof console !== 'undefined' ? console : undefined\n gcontext.originalConsole = originalConsole\n ? {\n console: originalConsole,\n log: originalConsole.log.bind(originalConsole),\n info: originalConsole.info.bind(originalConsole),\n warn: originalConsole.warn.bind(originalConsole),\n error: originalConsole.error.bind(originalConsole),\n debug: originalConsole.debug.bind(originalConsole),\n }\n : undefined\n }\n return gcontext.originalConsole\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/Users/dirk/work/github-zeed/dist/chunk-CYPMLO24.cjs"],"names":[],"mappings":"AAAA","file":"/Users/dirk/work/github-zeed/dist/chunk-CYPMLO24.cjs"}
|