@ayonli/jsext
Version:
A JavaScript extension package for building strong and modern applications.
539 lines (538 loc) • 17.1 kB
JSON
{
"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"
}
}