UNPKG

@ayonli/jsext

Version:

A JavaScript extension package for building strong and modern applications.

539 lines (538 loc) 17.1 kB
{ "name": "@ayonli/jsext", "version": "1.8.0", "description": "A JavaScript extension package for building strong and modern applications.", "type": "module", "exports": { ".": { "types": "./types/index.d.ts", "fastly": "./esm/workerd/index.js", "workerd": "./esm/workerd/index.js", "import": "./esm/index.js", "require": "./cjs/index.js", "default": "./index.ts" }, "./archive": { "types": "./types/archive.d.ts", "bun": "./esm/archive/bun.js", "fastly": "./esm/workerd/archive.js", "workerd": "./esm/workerd/archive.js", "import": "./esm/archive.js", "require": "./cjs/archive.js", "default": "./archive.ts" }, "./array": { "types": "./types/array.d.ts", "import": "./esm/array.js", "require": "./cjs/array.js", "default": "./array.ts" }, "./async": { "types": "./types/async.d.ts", "import": "./esm/async.js", "require": "./cjs/async.js", "default": "./async.ts" }, "./augment": { "types": "./types/augment.d.ts", "import": "./esm/augment.js", "require": "./cjs/augment.js", "default": "./augment.ts" }, "./augment/*": { "types": "./types/augment/*.d.ts", "import": "./esm/augment/*.js", "require": "./cjs/augment/*.js", "default": "./augment/*.ts" }, "./bytes": { "types": "./types/bytes.d.ts", "import": "./esm/bytes.js", "require": "./cjs/bytes.js", "default": "./bytes.ts" }, "./chan": { "types": "./types/chan.d.ts", "import": "./esm/chan.js", "require": "./cjs/chan.js", "default": "./chan.ts" }, "./class": { "types": "./types/class.d.ts", "import": "./esm/class.js", "require": "./cjs/class.js", "default": "./class.ts" }, "./class/decorators": { "types": "./types/class/decorators.d.ts", "import": "./esm/class/decorators.js", "require": "./cjs/class/decorators.js", "default": "./class/decorators.ts" }, "./cli": { "types": "./types/cli.d.ts", "fastly": "./esm/workerd/cli.js", "workerd": "./esm/workerd/cli.js", "import": "./esm/cli.js", "require": "./cjs/cli.js", "default": "./cli.ts" }, "./collections": { "types": "./types/collections.d.ts", "import": "./esm/collections.js", "require": "./cjs/collections.js", "default": "./collections.ts" }, "./debounce": { "types": "./types/debounce.d.ts", "import": "./esm/debounce.js", "require": "./cjs/debounce.js", "default": "./debounce.ts" }, "./deprecate": { "types": "./types/deprecate.d.ts", "import": "./esm/deprecate.js", "require": "./cjs/deprecate.js", "default": "./deprecate.ts" }, "./dialog": { "types": "./types/dialog.d.ts", "fastly": "./esm/workerd/dialog.js", "workerd": "./esm/workerd/dialog.js", "import": "./esm/dialog.js", "require": "./cjs/dialog.js", "default": "./dialog.ts" }, "./dialog/web": { "types": "./types/dialog/web.d.ts", "import": "./esm/dialog/web.js", "require": "./cjs/dialog/web.js", "default": "./dialog/web.ts" }, "./dialog/cli": { "types": "./types/dialog/cli.d.ts", "import": "./esm/dialog/cli.js", "require": "./cjs/dialog/cli.js", "default": "./dialog/cli.ts" }, "./encoding": { "types": "./types/encoding.d.ts", "import": "./esm/encoding.js", "require": "./cjs/encoding.js", "default": "./encoding.ts" }, "./error": { "types": "./types/error.d.ts", "import": "./esm/error.js", "require": "./cjs/error.js", "default": "./error.ts" }, "./event": { "types": "./types/event.d.ts", "import": "./esm/event.js", "require": "./cjs/event.js", "default": "./event.ts" }, "./filetype": { "types": "./types/filetype.d.ts", "import": "./esm/filetype.js", "require": "./cjs/filetype.js", "default": "./filetype.ts" }, "./fs": { "types": "./types/fs.d.ts", "fastly": "./esm/workerd/fs.js", "workerd": "./esm/workerd/fs.js", "import": "./esm/fs.js", "require": "./cjs/fs.js", "default": "./fs.ts" }, "./fs/errors": { "types": "./types/fs/errors.d.ts", "import": "./esm/fs/errors.js", "require": "./cjs/fs/errors.js", "default": "./fs/errors.ts" }, "./fs/web": { "types": "./types/fs/web.d.ts", "import": "./esm/fs/web.js", "require": "./cjs/fs/web.js", "default": "./fs/web.ts" }, "./func": { "types": "./types/func.d.ts", "import": "./esm/func.js", "require": "./cjs/func.js", "default": "./func.ts" }, "./hash": { "types": "./types/hash.d.ts", "fastly": "./esm/workerd/hash.js", "workerd": "./esm/workerd/hash.js", "import": "./esm/hash.js", "require": "./cjs/hash.js", "default": "./hash.ts" }, "./hash/web": { "types": "./types/hash/web.d.ts", "import": "./esm/hash/web.js", "require": "./cjs/hash/web.js", "default": "./hash/web.ts" }, "./http": { "types": "./types/http.d.ts", "fastly": "./esm/workerd/http.js", "workerd": "./esm/workerd/http.js", "import": "./esm/http.js", "require": "./cjs/http.js", "default": "./http.ts" }, "./http/internal": { "types": "./types/http/internal.d.ts", "import": "./esm/http/internal.js", "require": "./cjs/http/internal.js", "default": "./http/internal.ts" }, "./http/util": { "types": "./types/http/util.d.ts", "import": "./esm/http/util.js", "require": "./cjs/http/util.js", "default": "./http/util.ts" }, "./json": { "types": "./types/json.d.ts", "import": "./esm/json.js", "require": "./cjs/json.js", "default": "./json.ts" }, "./lock": { "types": "./types/lock.d.ts", "import": "./esm/lock.js", "require": "./cjs/lock.js", "default": "./lock.ts" }, "./math": { "types": "./types/math.d.ts", "import": "./esm/math.js", "require": "./cjs/math.js", "default": "./math.ts" }, "./mixin": { "types": "./types/mixin.d.ts", "import": "./esm/mixin.js", "require": "./cjs/mixin.js", "default": "./mixin.ts" }, "./module": { "types": "./types/module.d.ts", "fastly": "./esm/module/web.js", "workerd": "./esm/module/web.js", "import": "./esm/module.js", "require": "./cjs/module.js", "default": "./module.ts" }, "./module/web": { "types": "./types/module/web.d.ts", "import": "./esm/module/web.js", "require": "./cjs/module/web.js", "default": "./module/web.ts" }, "./net": { "types": "./types/net.d.ts", "workerd": "./esm/workerd/net.js", "import": "./esm/net.js", "require": "./cjs/net.js", "default": "./net.ts" }, "./number": { "types": "./types/number.d.ts", "import": "./esm/number.js", "require": "./cjs/number.js", "default": "./number.ts" }, "./object": { "types": "./types/object.d.ts", "import": "./esm/object.js", "require": "./cjs/object.js", "default": "./object.ts" }, "./once": { "types": "./types/once.d.ts", "import": "./esm/once.js", "require": "./cjs/once.js", "default": "./once.ts" }, "./parallel": { "types": "./types/parallel.d.ts", "fastly": "./esm/workerd/parallel.js", "workerd": "./esm/workerd/parallel.js", "import": "./esm/parallel.js", "require": "./cjs/parallel.js", "default": "./parallel.ts" }, "./path": { "types": "./types/path.d.ts", "import": "./esm/path.js", "require": "./cjs/path.js", "default": "./path.ts" }, "./pipe": { "types": "./types/pipe.d.ts", "import": "./esm/pipe.js", "require": "./cjs/pipe.js", "default": "./pipe.ts" }, "./queue": { "types": "./types/queue.d.ts", "import": "./esm/queue.js", "require": "./cjs/queue.js", "default": "./queue.ts" }, "./reader": { "types": "./types/reader.d.ts", "import": "./esm/reader.js", "require": "./cjs/reader.js", "default": "./reader.ts" }, "./result": { "types": "./types/result.d.ts", "import": "./esm/result.js", "require": "./cjs/result.js", "default": "./result.ts" }, "./run": { "types": "./types/run.d.ts", "fastly": "./esm/workerd/run.js", "workerd": "./esm/workerd/run.js", "import": "./esm/run.js", "require": "./cjs/run.js", "default": "./run.ts" }, "./runtime": { "types": "./types/runtime.d.ts", "fastly": "./esm/fastly/runtime.js", "import": "./esm/runtime.js", "require": "./cjs/runtime.js", "default": "./runtime.ts" }, "./sse": { "types": "./types/sse.d.ts", "import": "./esm/sse.js", "require": "./cjs/sse.js", "default": "./sse.ts" }, "./string": { "types": "./types/string.d.ts", "import": "./esm/string.js", "require": "./cjs/string.js", "default": "./string.ts" }, "./throttle": { "types": "./types/throttle.d.ts", "import": "./esm/throttle.js", "require": "./cjs/throttle.js", "default": "./throttle.ts" }, "./try": { "types": "./types/try.d.ts", "import": "./esm/try.js", "require": "./cjs/try.js", "default": "./try.ts" }, "./types": { "types": "./types/types.d.ts", "import": "./esm/types.js", "require": "./cjs/types.js", "default": "./types.ts" }, "./wrap": { "types": "./types/wrap.d.ts", "import": "./esm/wrap.js", "require": "./cjs/wrap.js", "default": "./wrap.ts" }, "./ws": { "types": "./types/ws.d.ts", "bun": "./esm/ws.js", "deno": "./esm/ws.js", "fastly": "./esm/workerd/ws.js", "workerd": "./esm/workerd/ws.js", "node": { "import": "./esm/ws/node.js", "require": "./cjs/ws/node.js" }, "import": "./esm/ws.js", "require": "./cjs/ws.js", "default": "./ws.ts" }, "./ws/client": { "types": "./types/ws/client.d.ts", "import": "./esm/ws/client.js", "require": "./cjs/ws/client.js", "default": "./ws/client.ts" } }, "scripts": { "test": "node --no-warnings=ExperimentalWarning --experimental-loader=ts-node/esm ./node_modules/mocha/bin/mocha --config mocha.json --exit", "test:tsx": "tsc --noEmit && tsx ./node_modules/mocha/bin/mocha --config mocha.json --exit", "test:deno": "deno run -A test-deno.ts", "test:bun": "bun run ./node_modules/mocha/bin/mocha --config mocha.json --exit", "test:jsdom": "tsx ./node_modules/mocha/bin/mocha --config mocha.jsdom.json --exit -r global-jsdom/register -r jsdom-setup.js", "test:pty:node": "tsx ./node_modules/mocha/bin/mocha --config mocha.pty.json --exit", "test:pty:deno": "tsx ./node_modules/mocha/bin/mocha --config mocha.pty.json --exit --deno", "test:pty:bun": "tsx ./node_modules/mocha/bin/mocha --config mocha.pty.json --exit --bun", "test:pty": "npm run test:pty:node && npm run test:pty:deno", "build": "rollup -c rollup.config.js && tsc -p tsconfig.types.json && node rollup.config.js", "typing": "tsc --noEmit --watch", "prepublishOnly": "npm run build" }, "author": "A-yon Lee <the@ayon.li>", "license": "MIT", "homepage": "https://github.com/ayonli/jsext#readme", "repository": { "type": "git", "url": "git+https://github.com/ayonli/jsext.git" }, "bugs": { "url": "https://github.com/ayonli/jsext/issues" }, "keywords": [ "wrap", "mixin", "try", "defer", "throttle", "debounce", "queue", "channel", "worker", "parallel", "parallelism", "multithreading", "goroutine", "asyncIterator", "compare", "capitalize", "hyphenate", "chunk", "truncate", "trim", "byteLength", "random", "isFloat", "isNumeric", "range", "count", "equals", "split", "uniq", "shuffle", "orderBy", "groupBy", "patch", "pick", "omit", "hasOwn", "hasOwnMethod", "as", "isValid", "isPlainObject", "sanitize", "sortKeys", "flatKeys", "sum", "avg", "product", "round", "sleep", "until", "promise", "json", "error", "uint8array", "path", "dirname", "basename", "extname", "resolve", "join", "contains", "startsWith", "endsWith", "alert", "confirm", "prompt", "async", "interop", "importScript", "BiMap", "CiMap", "tarball", "tar", "untar", "fs", "readDir", "readFile", "writeFile", "rename", "link", "readLink", "createReadableStream", "createWritableStream", "stream", "sse", "bytes", "ByteArray", "pipe", "cli", "run", "powershell", "which", "sudo", "parseArgs", "stringWidth", "hash", "md5", "sha1", "sha256", "sha512" ], "dependencies": { "iconv-lite": "^0.6.3", "sudo-prompt": "^9.2.1", "ws": "^8.17.0", "zod": "^3.23.8" }, "devDependencies": { "@cloudflare/workers-types": "^4.20241112.0", "@hono/node-server": "^1.11.2", "@rollup/plugin-commonjs": "^25.0.4", "@rollup/plugin-node-resolve": "^15.2.1", "@rollup/plugin-terser": "^0.4.3", "@rollup/plugin-typescript": "^11.1.3", "@testing-library/dom": "^10.4.0", "@types/express": "^4.17.21", "@types/mocha": "^10.0.1", "@types/node": "^20.6.0", "@types/ws": "^8.5.10", "bun-types": "^1.1.36", "express": "^4.19.2", "glob": "^10.3.10", "global-jsdom": "^24.0.0", "hono": "^4.4.4", "isomorphic-ws": "^5.0.0", "jsdom": "^24.0.0", "mocha": "^10.2.0", "node-pty": "^1.0.0", "rollup": "^3.29.2", "string-hash": "^1.1.3", "strip-ansi": "^7.1.0", "ts-node": "^10.9.1", "tslib": "^2.6.2", "tsx": "^4.7.1", "typescript": "^5.4.3" }, "engines": { "node": ">=14.18" } }