@devicelink/dlink 0.4.1 → 0.4.3
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/README.md +30 -15
- package/THIRD-PARTY-NOTICES.txt +645 -0
- package/index.js +6 -6
- package/node_modules/@alcalzone/ansi-tokenize/README.md +248 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/ansiCodes.d.ts +11 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/ansiCodes.js +41 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/ansiCodes.js.map +1 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/diff.d.ts +6 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/diff.js +17 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/diff.js.map +1 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/index.d.ts +6 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/index.js +7 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/index.js.map +1 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/reduce.d.ts +5 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/reduce.js +27 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/reduce.js.map +1 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/styledChars.d.ts +6 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/styledChars.js +38 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/styledChars.js.map +1 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/tokenize.d.ts +12 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/tokenize.js +70 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/tokenize.js.map +1 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/undo.d.ts +3 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/undo.js +11 -0
- package/node_modules/@alcalzone/ansi-tokenize/build/undo.js.map +1 -0
- package/node_modules/@alcalzone/ansi-tokenize/package.json +63 -0
- package/node_modules/ansi-escapes/base.d.ts +307 -0
- package/node_modules/ansi-escapes/base.js +202 -0
- package/node_modules/ansi-escapes/index.d.ts +2 -0
- package/node_modules/ansi-escapes/index.js +2 -0
- package/node_modules/ansi-escapes/license +9 -0
- package/node_modules/ansi-escapes/package.json +70 -0
- package/node_modules/ansi-escapes/readme.md +296 -0
- package/node_modules/ansi-regex/index.d.ts +33 -0
- package/node_modules/ansi-regex/index.js +15 -0
- package/node_modules/ansi-regex/license +9 -0
- package/node_modules/ansi-regex/package.json +61 -0
- package/node_modules/ansi-regex/readme.md +66 -0
- package/node_modules/ansi-styles/index.d.ts +236 -0
- package/node_modules/ansi-styles/index.js +223 -0
- package/node_modules/ansi-styles/license +9 -0
- package/node_modules/ansi-styles/package.json +54 -0
- package/node_modules/ansi-styles/readme.md +173 -0
- package/node_modules/auto-bind/index.d.ts +50 -0
- package/node_modules/auto-bind/index.js +41 -0
- package/node_modules/auto-bind/license +9 -0
- package/node_modules/auto-bind/package.json +51 -0
- package/node_modules/auto-bind/react.d.ts +26 -0
- package/node_modules/auto-bind/react.js +28 -0
- package/node_modules/auto-bind/readme.md +92 -0
- package/node_modules/chalk/license +9 -0
- package/node_modules/chalk/package.json +83 -0
- package/node_modules/chalk/readme.md +297 -0
- package/node_modules/chalk/source/index.d.ts +325 -0
- package/node_modules/chalk/source/index.js +225 -0
- package/node_modules/chalk/source/utilities.js +33 -0
- package/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +236 -0
- package/node_modules/chalk/source/vendor/ansi-styles/index.js +223 -0
- package/node_modules/chalk/source/vendor/supports-color/browser.d.ts +1 -0
- package/node_modules/chalk/source/vendor/supports-color/browser.js +34 -0
- package/node_modules/chalk/source/vendor/supports-color/index.d.ts +55 -0
- package/node_modules/chalk/source/vendor/supports-color/index.js +190 -0
- package/node_modules/cli-boxes/boxes.json +82 -0
- package/node_modules/cli-boxes/index.d.ts +127 -0
- package/node_modules/cli-boxes/index.js +6 -0
- package/node_modules/cli-boxes/license +9 -0
- package/node_modules/cli-boxes/package.json +42 -0
- package/node_modules/cli-boxes/readme.md +115 -0
- package/node_modules/cli-cursor/index.d.ts +47 -0
- package/node_modules/cli-cursor/index.js +39 -0
- package/node_modules/cli-cursor/license +9 -0
- package/node_modules/cli-cursor/package.json +49 -0
- package/node_modules/cli-cursor/readme.md +51 -0
- package/node_modules/cli-truncate/index.d.ts +116 -0
- package/node_modules/cli-truncate/index.js +99 -0
- package/node_modules/cli-truncate/license +9 -0
- package/node_modules/cli-truncate/node_modules/slice-ansi/index.js +105 -0
- package/node_modules/cli-truncate/node_modules/slice-ansi/license +10 -0
- package/node_modules/cli-truncate/node_modules/slice-ansi/package.json +53 -0
- package/node_modules/cli-truncate/node_modules/slice-ansi/readme.md +66 -0
- package/node_modules/cli-truncate/package.json +51 -0
- package/node_modules/cli-truncate/readme.md +150 -0
- package/node_modules/code-excerpt/dist/index.d.ts +9 -0
- package/node_modules/code-excerpt/dist/index.js +27 -0
- package/node_modules/code-excerpt/license +21 -0
- package/node_modules/code-excerpt/package.json +43 -0
- package/node_modules/code-excerpt/readme.md +65 -0
- package/node_modules/convert-to-spaces/dist/index.d.ts +2 -0
- package/node_modules/convert-to-spaces/dist/index.js +4 -0
- package/node_modules/convert-to-spaces/license +21 -0
- package/node_modules/convert-to-spaces/package.json +40 -0
- package/node_modules/convert-to-spaces/readme.md +39 -0
- package/node_modules/dotenv/CHANGELOG.md +643 -0
- package/node_modules/dotenv/LICENSE +23 -0
- package/node_modules/dotenv/README-es.md +757 -0
- package/node_modules/dotenv/README.md +812 -0
- package/node_modules/dotenv/SECURITY.md +1 -0
- package/node_modules/dotenv/config.d.ts +1 -0
- package/node_modules/dotenv/config.js +9 -0
- package/node_modules/dotenv/lib/cli-options.js +17 -0
- package/node_modules/dotenv/lib/env-options.js +28 -0
- package/node_modules/dotenv/lib/main.d.ts +179 -0
- package/node_modules/dotenv/lib/main.js +423 -0
- package/node_modules/dotenv/package.json +62 -0
- package/node_modules/dotenv/skills/dotenv/SKILL.md +200 -0
- package/node_modules/dotenv/skills/dotenvx/SKILL.md +118 -0
- package/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
- package/node_modules/emoji-regex/README.md +107 -0
- package/node_modules/emoji-regex/index.d.ts +3 -0
- package/node_modules/emoji-regex/index.js +4 -0
- package/node_modules/emoji-regex/index.mjs +4 -0
- package/node_modules/emoji-regex/package.json +45 -0
- package/node_modules/env-paths/index.d.ts +90 -0
- package/node_modules/env-paths/index.js +69 -0
- package/node_modules/env-paths/license +9 -0
- package/node_modules/env-paths/package.json +55 -0
- package/node_modules/env-paths/readme.md +100 -0
- package/node_modules/environment/index.d.ts +74 -0
- package/node_modules/environment/index.js +47 -0
- package/node_modules/environment/license +9 -0
- package/node_modules/environment/package.json +74 -0
- package/node_modules/environment/readme.md +94 -0
- package/node_modules/es-toolkit/CHANGELOG.md +1134 -0
- package/node_modules/es-toolkit/LICENSE +21 -0
- package/node_modules/es-toolkit/NOTICE +39 -0
- package/node_modules/es-toolkit/README.md +69 -0
- package/node_modules/es-toolkit/array.d.ts +1 -0
- package/node_modules/es-toolkit/array.js +1 -0
- package/node_modules/es-toolkit/bigint.d.ts +1 -0
- package/node_modules/es-toolkit/bigint.js +1 -0
- package/node_modules/es-toolkit/compat/add.d.mts +1 -0
- package/node_modules/es-toolkit/compat/add.d.ts +1 -0
- package/node_modules/es-toolkit/compat/add.js +1 -0
- package/node_modules/es-toolkit/compat/add.mjs +1 -0
- package/node_modules/es-toolkit/compat/after.d.mts +1 -0
- package/node_modules/es-toolkit/compat/after.d.ts +1 -0
- package/node_modules/es-toolkit/compat/after.js +1 -0
- package/node_modules/es-toolkit/compat/after.mjs +1 -0
- package/node_modules/es-toolkit/compat/ary.d.mts +1 -0
- package/node_modules/es-toolkit/compat/ary.d.ts +1 -0
- package/node_modules/es-toolkit/compat/ary.js +1 -0
- package/node_modules/es-toolkit/compat/ary.mjs +1 -0
- package/node_modules/es-toolkit/compat/assign.d.mts +1 -0
- package/node_modules/es-toolkit/compat/assign.d.ts +1 -0
- package/node_modules/es-toolkit/compat/assign.js +1 -0
- package/node_modules/es-toolkit/compat/assign.mjs +1 -0
- package/node_modules/es-toolkit/compat/assignIn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/assignIn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/assignIn.js +1 -0
- package/node_modules/es-toolkit/compat/assignIn.mjs +1 -0
- package/node_modules/es-toolkit/compat/assignInWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/assignInWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/assignInWith.js +1 -0
- package/node_modules/es-toolkit/compat/assignInWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/assignWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/assignWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/assignWith.js +1 -0
- package/node_modules/es-toolkit/compat/assignWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/at.d.mts +1 -0
- package/node_modules/es-toolkit/compat/at.d.ts +1 -0
- package/node_modules/es-toolkit/compat/at.js +1 -0
- package/node_modules/es-toolkit/compat/at.mjs +1 -0
- package/node_modules/es-toolkit/compat/attempt.d.mts +1 -0
- package/node_modules/es-toolkit/compat/attempt.d.ts +1 -0
- package/node_modules/es-toolkit/compat/attempt.js +1 -0
- package/node_modules/es-toolkit/compat/attempt.mjs +1 -0
- package/node_modules/es-toolkit/compat/before.d.mts +1 -0
- package/node_modules/es-toolkit/compat/before.d.ts +1 -0
- package/node_modules/es-toolkit/compat/before.js +1 -0
- package/node_modules/es-toolkit/compat/before.mjs +1 -0
- package/node_modules/es-toolkit/compat/bind.d.mts +1 -0
- package/node_modules/es-toolkit/compat/bind.d.ts +1 -0
- package/node_modules/es-toolkit/compat/bind.js +1 -0
- package/node_modules/es-toolkit/compat/bind.mjs +1 -0
- package/node_modules/es-toolkit/compat/bindAll.d.mts +1 -0
- package/node_modules/es-toolkit/compat/bindAll.d.ts +1 -0
- package/node_modules/es-toolkit/compat/bindAll.js +1 -0
- package/node_modules/es-toolkit/compat/bindAll.mjs +1 -0
- package/node_modules/es-toolkit/compat/bindKey.d.mts +1 -0
- package/node_modules/es-toolkit/compat/bindKey.d.ts +1 -0
- package/node_modules/es-toolkit/compat/bindKey.js +1 -0
- package/node_modules/es-toolkit/compat/bindKey.mjs +1 -0
- package/node_modules/es-toolkit/compat/camelCase.d.mts +1 -0
- package/node_modules/es-toolkit/compat/camelCase.d.ts +1 -0
- package/node_modules/es-toolkit/compat/camelCase.js +1 -0
- package/node_modules/es-toolkit/compat/camelCase.mjs +1 -0
- package/node_modules/es-toolkit/compat/capitalize.d.mts +1 -0
- package/node_modules/es-toolkit/compat/capitalize.d.ts +1 -0
- package/node_modules/es-toolkit/compat/capitalize.js +1 -0
- package/node_modules/es-toolkit/compat/capitalize.mjs +1 -0
- package/node_modules/es-toolkit/compat/castArray.d.mts +1 -0
- package/node_modules/es-toolkit/compat/castArray.d.ts +1 -0
- package/node_modules/es-toolkit/compat/castArray.js +1 -0
- package/node_modules/es-toolkit/compat/castArray.mjs +1 -0
- package/node_modules/es-toolkit/compat/ceil.d.mts +1 -0
- package/node_modules/es-toolkit/compat/ceil.d.ts +1 -0
- package/node_modules/es-toolkit/compat/ceil.js +1 -0
- package/node_modules/es-toolkit/compat/ceil.mjs +1 -0
- package/node_modules/es-toolkit/compat/chunk.d.mts +1 -0
- package/node_modules/es-toolkit/compat/chunk.d.ts +1 -0
- package/node_modules/es-toolkit/compat/chunk.js +1 -0
- package/node_modules/es-toolkit/compat/chunk.mjs +1 -0
- package/node_modules/es-toolkit/compat/clamp.d.mts +1 -0
- package/node_modules/es-toolkit/compat/clamp.d.ts +1 -0
- package/node_modules/es-toolkit/compat/clamp.js +1 -0
- package/node_modules/es-toolkit/compat/clamp.mjs +1 -0
- package/node_modules/es-toolkit/compat/clone.d.mts +1 -0
- package/node_modules/es-toolkit/compat/clone.d.ts +1 -0
- package/node_modules/es-toolkit/compat/clone.js +1 -0
- package/node_modules/es-toolkit/compat/clone.mjs +1 -0
- package/node_modules/es-toolkit/compat/cloneDeep.d.mts +1 -0
- package/node_modules/es-toolkit/compat/cloneDeep.d.ts +1 -0
- package/node_modules/es-toolkit/compat/cloneDeep.js +1 -0
- package/node_modules/es-toolkit/compat/cloneDeep.mjs +1 -0
- package/node_modules/es-toolkit/compat/cloneDeepWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/cloneDeepWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/cloneDeepWith.js +1 -0
- package/node_modules/es-toolkit/compat/cloneDeepWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/cloneWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/cloneWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/cloneWith.js +1 -0
- package/node_modules/es-toolkit/compat/cloneWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/compact.d.mts +1 -0
- package/node_modules/es-toolkit/compat/compact.d.ts +1 -0
- package/node_modules/es-toolkit/compat/compact.js +1 -0
- package/node_modules/es-toolkit/compat/compact.mjs +1 -0
- package/node_modules/es-toolkit/compat/concat.d.mts +1 -0
- package/node_modules/es-toolkit/compat/concat.d.ts +1 -0
- package/node_modules/es-toolkit/compat/concat.js +1 -0
- package/node_modules/es-toolkit/compat/concat.mjs +1 -0
- package/node_modules/es-toolkit/compat/cond.d.mts +1 -0
- package/node_modules/es-toolkit/compat/cond.d.ts +1 -0
- package/node_modules/es-toolkit/compat/cond.js +1 -0
- package/node_modules/es-toolkit/compat/cond.mjs +1 -0
- package/node_modules/es-toolkit/compat/conforms.d.mts +1 -0
- package/node_modules/es-toolkit/compat/conforms.d.ts +1 -0
- package/node_modules/es-toolkit/compat/conforms.js +1 -0
- package/node_modules/es-toolkit/compat/conforms.mjs +1 -0
- package/node_modules/es-toolkit/compat/conformsTo.d.mts +1 -0
- package/node_modules/es-toolkit/compat/conformsTo.d.ts +1 -0
- package/node_modules/es-toolkit/compat/conformsTo.js +1 -0
- package/node_modules/es-toolkit/compat/conformsTo.mjs +1 -0
- package/node_modules/es-toolkit/compat/constant.d.mts +1 -0
- package/node_modules/es-toolkit/compat/constant.d.ts +1 -0
- package/node_modules/es-toolkit/compat/constant.js +1 -0
- package/node_modules/es-toolkit/compat/constant.mjs +1 -0
- package/node_modules/es-toolkit/compat/countBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/countBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/countBy.js +1 -0
- package/node_modules/es-toolkit/compat/countBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/create.d.mts +1 -0
- package/node_modules/es-toolkit/compat/create.d.ts +1 -0
- package/node_modules/es-toolkit/compat/create.js +1 -0
- package/node_modules/es-toolkit/compat/create.mjs +1 -0
- package/node_modules/es-toolkit/compat/curry.d.mts +1 -0
- package/node_modules/es-toolkit/compat/curry.d.ts +1 -0
- package/node_modules/es-toolkit/compat/curry.js +1 -0
- package/node_modules/es-toolkit/compat/curry.mjs +1 -0
- package/node_modules/es-toolkit/compat/curryRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/curryRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/curryRight.js +1 -0
- package/node_modules/es-toolkit/compat/curryRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/debounce.d.mts +1 -0
- package/node_modules/es-toolkit/compat/debounce.d.ts +1 -0
- package/node_modules/es-toolkit/compat/debounce.js +1 -0
- package/node_modules/es-toolkit/compat/debounce.mjs +1 -0
- package/node_modules/es-toolkit/compat/deburr.d.mts +1 -0
- package/node_modules/es-toolkit/compat/deburr.d.ts +1 -0
- package/node_modules/es-toolkit/compat/deburr.js +1 -0
- package/node_modules/es-toolkit/compat/deburr.mjs +1 -0
- package/node_modules/es-toolkit/compat/defaultTo.d.mts +1 -0
- package/node_modules/es-toolkit/compat/defaultTo.d.ts +1 -0
- package/node_modules/es-toolkit/compat/defaultTo.js +1 -0
- package/node_modules/es-toolkit/compat/defaultTo.mjs +1 -0
- package/node_modules/es-toolkit/compat/defaults.d.mts +1 -0
- package/node_modules/es-toolkit/compat/defaults.d.ts +1 -0
- package/node_modules/es-toolkit/compat/defaults.js +1 -0
- package/node_modules/es-toolkit/compat/defaults.mjs +1 -0
- package/node_modules/es-toolkit/compat/defaultsDeep.d.mts +1 -0
- package/node_modules/es-toolkit/compat/defaultsDeep.d.ts +1 -0
- package/node_modules/es-toolkit/compat/defaultsDeep.js +1 -0
- package/node_modules/es-toolkit/compat/defaultsDeep.mjs +1 -0
- package/node_modules/es-toolkit/compat/defer.d.mts +1 -0
- package/node_modules/es-toolkit/compat/defer.d.ts +1 -0
- package/node_modules/es-toolkit/compat/defer.js +1 -0
- package/node_modules/es-toolkit/compat/defer.mjs +1 -0
- package/node_modules/es-toolkit/compat/delay.d.mts +1 -0
- package/node_modules/es-toolkit/compat/delay.d.ts +1 -0
- package/node_modules/es-toolkit/compat/delay.js +1 -0
- package/node_modules/es-toolkit/compat/delay.mjs +1 -0
- package/node_modules/es-toolkit/compat/difference.d.mts +1 -0
- package/node_modules/es-toolkit/compat/difference.d.ts +1 -0
- package/node_modules/es-toolkit/compat/difference.js +1 -0
- package/node_modules/es-toolkit/compat/difference.mjs +1 -0
- package/node_modules/es-toolkit/compat/differenceBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/differenceBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/differenceBy.js +1 -0
- package/node_modules/es-toolkit/compat/differenceBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/differenceWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/differenceWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/differenceWith.js +1 -0
- package/node_modules/es-toolkit/compat/differenceWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/divide.d.mts +1 -0
- package/node_modules/es-toolkit/compat/divide.d.ts +1 -0
- package/node_modules/es-toolkit/compat/divide.js +1 -0
- package/node_modules/es-toolkit/compat/divide.mjs +1 -0
- package/node_modules/es-toolkit/compat/drop.d.mts +1 -0
- package/node_modules/es-toolkit/compat/drop.d.ts +1 -0
- package/node_modules/es-toolkit/compat/drop.js +1 -0
- package/node_modules/es-toolkit/compat/drop.mjs +1 -0
- package/node_modules/es-toolkit/compat/dropRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/dropRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/dropRight.js +1 -0
- package/node_modules/es-toolkit/compat/dropRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/dropRightWhile.d.mts +1 -0
- package/node_modules/es-toolkit/compat/dropRightWhile.d.ts +1 -0
- package/node_modules/es-toolkit/compat/dropRightWhile.js +1 -0
- package/node_modules/es-toolkit/compat/dropRightWhile.mjs +1 -0
- package/node_modules/es-toolkit/compat/dropWhile.d.mts +1 -0
- package/node_modules/es-toolkit/compat/dropWhile.d.ts +1 -0
- package/node_modules/es-toolkit/compat/dropWhile.js +1 -0
- package/node_modules/es-toolkit/compat/dropWhile.mjs +1 -0
- package/node_modules/es-toolkit/compat/each.d.mts +1 -0
- package/node_modules/es-toolkit/compat/each.d.ts +1 -0
- package/node_modules/es-toolkit/compat/each.js +1 -0
- package/node_modules/es-toolkit/compat/each.mjs +1 -0
- package/node_modules/es-toolkit/compat/eachRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/eachRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/eachRight.js +1 -0
- package/node_modules/es-toolkit/compat/eachRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/endsWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/endsWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/endsWith.js +1 -0
- package/node_modules/es-toolkit/compat/endsWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/eq.d.mts +1 -0
- package/node_modules/es-toolkit/compat/eq.d.ts +1 -0
- package/node_modules/es-toolkit/compat/eq.js +1 -0
- package/node_modules/es-toolkit/compat/eq.mjs +1 -0
- package/node_modules/es-toolkit/compat/escape.d.mts +1 -0
- package/node_modules/es-toolkit/compat/escape.d.ts +1 -0
- package/node_modules/es-toolkit/compat/escape.js +1 -0
- package/node_modules/es-toolkit/compat/escape.mjs +1 -0
- package/node_modules/es-toolkit/compat/escapeRegExp.d.mts +1 -0
- package/node_modules/es-toolkit/compat/escapeRegExp.d.ts +1 -0
- package/node_modules/es-toolkit/compat/escapeRegExp.js +1 -0
- package/node_modules/es-toolkit/compat/escapeRegExp.mjs +1 -0
- package/node_modules/es-toolkit/compat/every.d.mts +1 -0
- package/node_modules/es-toolkit/compat/every.d.ts +1 -0
- package/node_modules/es-toolkit/compat/every.js +1 -0
- package/node_modules/es-toolkit/compat/every.mjs +1 -0
- package/node_modules/es-toolkit/compat/extend.d.mts +1 -0
- package/node_modules/es-toolkit/compat/extend.d.ts +1 -0
- package/node_modules/es-toolkit/compat/extend.js +1 -0
- package/node_modules/es-toolkit/compat/extend.mjs +1 -0
- package/node_modules/es-toolkit/compat/extendWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/extendWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/extendWith.js +1 -0
- package/node_modules/es-toolkit/compat/extendWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/fill.d.mts +1 -0
- package/node_modules/es-toolkit/compat/fill.d.ts +1 -0
- package/node_modules/es-toolkit/compat/fill.js +1 -0
- package/node_modules/es-toolkit/compat/fill.mjs +1 -0
- package/node_modules/es-toolkit/compat/filter.d.mts +1 -0
- package/node_modules/es-toolkit/compat/filter.d.ts +1 -0
- package/node_modules/es-toolkit/compat/filter.js +1 -0
- package/node_modules/es-toolkit/compat/filter.mjs +1 -0
- package/node_modules/es-toolkit/compat/find.d.mts +1 -0
- package/node_modules/es-toolkit/compat/find.d.ts +1 -0
- package/node_modules/es-toolkit/compat/find.js +1 -0
- package/node_modules/es-toolkit/compat/find.mjs +1 -0
- package/node_modules/es-toolkit/compat/findIndex.d.mts +1 -0
- package/node_modules/es-toolkit/compat/findIndex.d.ts +1 -0
- package/node_modules/es-toolkit/compat/findIndex.js +1 -0
- package/node_modules/es-toolkit/compat/findIndex.mjs +1 -0
- package/node_modules/es-toolkit/compat/findKey.d.mts +1 -0
- package/node_modules/es-toolkit/compat/findKey.d.ts +1 -0
- package/node_modules/es-toolkit/compat/findKey.js +1 -0
- package/node_modules/es-toolkit/compat/findKey.mjs +1 -0
- package/node_modules/es-toolkit/compat/findLast.d.mts +1 -0
- package/node_modules/es-toolkit/compat/findLast.d.ts +1 -0
- package/node_modules/es-toolkit/compat/findLast.js +1 -0
- package/node_modules/es-toolkit/compat/findLast.mjs +1 -0
- package/node_modules/es-toolkit/compat/findLastIndex.d.mts +1 -0
- package/node_modules/es-toolkit/compat/findLastIndex.d.ts +1 -0
- package/node_modules/es-toolkit/compat/findLastIndex.js +1 -0
- package/node_modules/es-toolkit/compat/findLastIndex.mjs +1 -0
- package/node_modules/es-toolkit/compat/findLastKey.d.mts +1 -0
- package/node_modules/es-toolkit/compat/findLastKey.d.ts +1 -0
- package/node_modules/es-toolkit/compat/findLastKey.js +1 -0
- package/node_modules/es-toolkit/compat/findLastKey.mjs +1 -0
- package/node_modules/es-toolkit/compat/first.d.mts +1 -0
- package/node_modules/es-toolkit/compat/first.d.ts +1 -0
- package/node_modules/es-toolkit/compat/first.js +1 -0
- package/node_modules/es-toolkit/compat/first.mjs +1 -0
- package/node_modules/es-toolkit/compat/flatMap.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flatMap.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flatMap.js +1 -0
- package/node_modules/es-toolkit/compat/flatMap.mjs +1 -0
- package/node_modules/es-toolkit/compat/flatMapDeep.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flatMapDeep.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flatMapDeep.js +1 -0
- package/node_modules/es-toolkit/compat/flatMapDeep.mjs +1 -0
- package/node_modules/es-toolkit/compat/flatMapDepth.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flatMapDepth.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flatMapDepth.js +1 -0
- package/node_modules/es-toolkit/compat/flatMapDepth.mjs +1 -0
- package/node_modules/es-toolkit/compat/flatten.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flatten.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flatten.js +1 -0
- package/node_modules/es-toolkit/compat/flatten.mjs +1 -0
- package/node_modules/es-toolkit/compat/flattenDeep.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flattenDeep.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flattenDeep.js +1 -0
- package/node_modules/es-toolkit/compat/flattenDeep.mjs +1 -0
- package/node_modules/es-toolkit/compat/flattenDepth.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flattenDepth.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flattenDepth.js +1 -0
- package/node_modules/es-toolkit/compat/flattenDepth.mjs +1 -0
- package/node_modules/es-toolkit/compat/flip.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flip.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flip.js +1 -0
- package/node_modules/es-toolkit/compat/flip.mjs +1 -0
- package/node_modules/es-toolkit/compat/floor.d.mts +1 -0
- package/node_modules/es-toolkit/compat/floor.d.ts +1 -0
- package/node_modules/es-toolkit/compat/floor.js +1 -0
- package/node_modules/es-toolkit/compat/floor.mjs +1 -0
- package/node_modules/es-toolkit/compat/flow.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flow.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flow.js +1 -0
- package/node_modules/es-toolkit/compat/flow.mjs +1 -0
- package/node_modules/es-toolkit/compat/flowRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/flowRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/flowRight.js +1 -0
- package/node_modules/es-toolkit/compat/flowRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/forEach.d.mts +1 -0
- package/node_modules/es-toolkit/compat/forEach.d.ts +1 -0
- package/node_modules/es-toolkit/compat/forEach.js +1 -0
- package/node_modules/es-toolkit/compat/forEach.mjs +1 -0
- package/node_modules/es-toolkit/compat/forEachRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/forEachRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/forEachRight.js +1 -0
- package/node_modules/es-toolkit/compat/forEachRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/forIn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/forIn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/forIn.js +1 -0
- package/node_modules/es-toolkit/compat/forIn.mjs +1 -0
- package/node_modules/es-toolkit/compat/forInRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/forInRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/forInRight.js +1 -0
- package/node_modules/es-toolkit/compat/forInRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/forOwn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/forOwn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/forOwn.js +1 -0
- package/node_modules/es-toolkit/compat/forOwn.mjs +1 -0
- package/node_modules/es-toolkit/compat/forOwnRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/forOwnRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/forOwnRight.js +1 -0
- package/node_modules/es-toolkit/compat/forOwnRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/fromPairs.d.mts +1 -0
- package/node_modules/es-toolkit/compat/fromPairs.d.ts +1 -0
- package/node_modules/es-toolkit/compat/fromPairs.js +1 -0
- package/node_modules/es-toolkit/compat/fromPairs.mjs +1 -0
- package/node_modules/es-toolkit/compat/functions.d.mts +1 -0
- package/node_modules/es-toolkit/compat/functions.d.ts +1 -0
- package/node_modules/es-toolkit/compat/functions.js +1 -0
- package/node_modules/es-toolkit/compat/functions.mjs +1 -0
- package/node_modules/es-toolkit/compat/functionsIn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/functionsIn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/functionsIn.js +1 -0
- package/node_modules/es-toolkit/compat/functionsIn.mjs +1 -0
- package/node_modules/es-toolkit/compat/get.d.mts +1 -0
- package/node_modules/es-toolkit/compat/get.d.ts +1 -0
- package/node_modules/es-toolkit/compat/get.js +1 -0
- package/node_modules/es-toolkit/compat/get.mjs +1 -0
- package/node_modules/es-toolkit/compat/groupBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/groupBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/groupBy.js +1 -0
- package/node_modules/es-toolkit/compat/groupBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/gt.d.mts +1 -0
- package/node_modules/es-toolkit/compat/gt.d.ts +1 -0
- package/node_modules/es-toolkit/compat/gt.js +1 -0
- package/node_modules/es-toolkit/compat/gt.mjs +1 -0
- package/node_modules/es-toolkit/compat/gte.d.mts +1 -0
- package/node_modules/es-toolkit/compat/gte.d.ts +1 -0
- package/node_modules/es-toolkit/compat/gte.js +1 -0
- package/node_modules/es-toolkit/compat/gte.mjs +1 -0
- package/node_modules/es-toolkit/compat/has.d.mts +1 -0
- package/node_modules/es-toolkit/compat/has.d.ts +1 -0
- package/node_modules/es-toolkit/compat/has.js +1 -0
- package/node_modules/es-toolkit/compat/has.mjs +1 -0
- package/node_modules/es-toolkit/compat/hasIn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/hasIn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/hasIn.js +1 -0
- package/node_modules/es-toolkit/compat/hasIn.mjs +1 -0
- package/node_modules/es-toolkit/compat/head.d.mts +1 -0
- package/node_modules/es-toolkit/compat/head.d.ts +1 -0
- package/node_modules/es-toolkit/compat/head.js +1 -0
- package/node_modules/es-toolkit/compat/head.mjs +1 -0
- package/node_modules/es-toolkit/compat/identity.d.mts +1 -0
- package/node_modules/es-toolkit/compat/identity.d.ts +1 -0
- package/node_modules/es-toolkit/compat/identity.js +1 -0
- package/node_modules/es-toolkit/compat/identity.mjs +1 -0
- package/node_modules/es-toolkit/compat/inRange.d.mts +1 -0
- package/node_modules/es-toolkit/compat/inRange.d.ts +1 -0
- package/node_modules/es-toolkit/compat/inRange.js +1 -0
- package/node_modules/es-toolkit/compat/inRange.mjs +1 -0
- package/node_modules/es-toolkit/compat/includes.d.mts +1 -0
- package/node_modules/es-toolkit/compat/includes.d.ts +1 -0
- package/node_modules/es-toolkit/compat/includes.js +1 -0
- package/node_modules/es-toolkit/compat/includes.mjs +1 -0
- package/node_modules/es-toolkit/compat/indexOf.d.mts +1 -0
- package/node_modules/es-toolkit/compat/indexOf.d.ts +1 -0
- package/node_modules/es-toolkit/compat/indexOf.js +1 -0
- package/node_modules/es-toolkit/compat/indexOf.mjs +1 -0
- package/node_modules/es-toolkit/compat/initial.d.mts +1 -0
- package/node_modules/es-toolkit/compat/initial.d.ts +1 -0
- package/node_modules/es-toolkit/compat/initial.js +1 -0
- package/node_modules/es-toolkit/compat/initial.mjs +1 -0
- package/node_modules/es-toolkit/compat/intersection.d.mts +1 -0
- package/node_modules/es-toolkit/compat/intersection.d.ts +1 -0
- package/node_modules/es-toolkit/compat/intersection.js +1 -0
- package/node_modules/es-toolkit/compat/intersection.mjs +1 -0
- package/node_modules/es-toolkit/compat/intersectionBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/intersectionBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/intersectionBy.js +1 -0
- package/node_modules/es-toolkit/compat/intersectionBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/intersectionWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/intersectionWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/intersectionWith.js +1 -0
- package/node_modules/es-toolkit/compat/intersectionWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/invert.d.mts +1 -0
- package/node_modules/es-toolkit/compat/invert.d.ts +1 -0
- package/node_modules/es-toolkit/compat/invert.js +1 -0
- package/node_modules/es-toolkit/compat/invert.mjs +1 -0
- package/node_modules/es-toolkit/compat/invertBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/invertBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/invertBy.js +1 -0
- package/node_modules/es-toolkit/compat/invertBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/invoke.d.mts +1 -0
- package/node_modules/es-toolkit/compat/invoke.d.ts +1 -0
- package/node_modules/es-toolkit/compat/invoke.js +1 -0
- package/node_modules/es-toolkit/compat/invoke.mjs +1 -0
- package/node_modules/es-toolkit/compat/invokeMap.d.mts +1 -0
- package/node_modules/es-toolkit/compat/invokeMap.d.ts +1 -0
- package/node_modules/es-toolkit/compat/invokeMap.js +1 -0
- package/node_modules/es-toolkit/compat/invokeMap.mjs +1 -0
- package/node_modules/es-toolkit/compat/isArguments.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isArguments.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isArguments.js +1 -0
- package/node_modules/es-toolkit/compat/isArguments.mjs +1 -0
- package/node_modules/es-toolkit/compat/isArray.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isArray.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isArray.js +1 -0
- package/node_modules/es-toolkit/compat/isArray.mjs +1 -0
- package/node_modules/es-toolkit/compat/isArrayBuffer.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isArrayBuffer.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isArrayBuffer.js +1 -0
- package/node_modules/es-toolkit/compat/isArrayBuffer.mjs +1 -0
- package/node_modules/es-toolkit/compat/isArrayLike.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isArrayLike.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isArrayLike.js +1 -0
- package/node_modules/es-toolkit/compat/isArrayLike.mjs +1 -0
- package/node_modules/es-toolkit/compat/isArrayLikeObject.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isArrayLikeObject.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isArrayLikeObject.js +1 -0
- package/node_modules/es-toolkit/compat/isArrayLikeObject.mjs +1 -0
- package/node_modules/es-toolkit/compat/isBoolean.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isBoolean.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isBoolean.js +1 -0
- package/node_modules/es-toolkit/compat/isBoolean.mjs +1 -0
- package/node_modules/es-toolkit/compat/isBuffer.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isBuffer.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isBuffer.js +1 -0
- package/node_modules/es-toolkit/compat/isBuffer.mjs +1 -0
- package/node_modules/es-toolkit/compat/isDate.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isDate.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isDate.js +1 -0
- package/node_modules/es-toolkit/compat/isDate.mjs +1 -0
- package/node_modules/es-toolkit/compat/isElement.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isElement.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isElement.js +1 -0
- package/node_modules/es-toolkit/compat/isElement.mjs +1 -0
- package/node_modules/es-toolkit/compat/isEmpty.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isEmpty.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isEmpty.js +1 -0
- package/node_modules/es-toolkit/compat/isEmpty.mjs +1 -0
- package/node_modules/es-toolkit/compat/isEqual.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isEqual.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isEqual.js +1 -0
- package/node_modules/es-toolkit/compat/isEqual.mjs +1 -0
- package/node_modules/es-toolkit/compat/isEqualWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isEqualWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isEqualWith.js +1 -0
- package/node_modules/es-toolkit/compat/isEqualWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/isError.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isError.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isError.js +1 -0
- package/node_modules/es-toolkit/compat/isError.mjs +1 -0
- package/node_modules/es-toolkit/compat/isFinite.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isFinite.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isFinite.js +1 -0
- package/node_modules/es-toolkit/compat/isFinite.mjs +1 -0
- package/node_modules/es-toolkit/compat/isFunction.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isFunction.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isFunction.js +1 -0
- package/node_modules/es-toolkit/compat/isFunction.mjs +1 -0
- package/node_modules/es-toolkit/compat/isInteger.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isInteger.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isInteger.js +1 -0
- package/node_modules/es-toolkit/compat/isInteger.mjs +1 -0
- package/node_modules/es-toolkit/compat/isLength.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isLength.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isLength.js +1 -0
- package/node_modules/es-toolkit/compat/isLength.mjs +1 -0
- package/node_modules/es-toolkit/compat/isMap.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isMap.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isMap.js +1 -0
- package/node_modules/es-toolkit/compat/isMap.mjs +1 -0
- package/node_modules/es-toolkit/compat/isMatch.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isMatch.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isMatch.js +1 -0
- package/node_modules/es-toolkit/compat/isMatch.mjs +1 -0
- package/node_modules/es-toolkit/compat/isMatchWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isMatchWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isMatchWith.js +1 -0
- package/node_modules/es-toolkit/compat/isMatchWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/isNaN.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isNaN.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isNaN.js +1 -0
- package/node_modules/es-toolkit/compat/isNaN.mjs +1 -0
- package/node_modules/es-toolkit/compat/isNative.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isNative.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isNative.js +1 -0
- package/node_modules/es-toolkit/compat/isNative.mjs +1 -0
- package/node_modules/es-toolkit/compat/isNil.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isNil.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isNil.js +1 -0
- package/node_modules/es-toolkit/compat/isNil.mjs +1 -0
- package/node_modules/es-toolkit/compat/isNull.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isNull.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isNull.js +1 -0
- package/node_modules/es-toolkit/compat/isNull.mjs +1 -0
- package/node_modules/es-toolkit/compat/isNumber.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isNumber.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isNumber.js +1 -0
- package/node_modules/es-toolkit/compat/isNumber.mjs +1 -0
- package/node_modules/es-toolkit/compat/isObject.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isObject.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isObject.js +1 -0
- package/node_modules/es-toolkit/compat/isObject.mjs +1 -0
- package/node_modules/es-toolkit/compat/isObjectLike.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isObjectLike.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isObjectLike.js +1 -0
- package/node_modules/es-toolkit/compat/isObjectLike.mjs +1 -0
- package/node_modules/es-toolkit/compat/isPlainObject.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isPlainObject.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isPlainObject.js +1 -0
- package/node_modules/es-toolkit/compat/isPlainObject.mjs +1 -0
- package/node_modules/es-toolkit/compat/isRegExp.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isRegExp.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isRegExp.js +1 -0
- package/node_modules/es-toolkit/compat/isRegExp.mjs +1 -0
- package/node_modules/es-toolkit/compat/isSafeInteger.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isSafeInteger.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isSafeInteger.js +1 -0
- package/node_modules/es-toolkit/compat/isSafeInteger.mjs +1 -0
- package/node_modules/es-toolkit/compat/isSet.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isSet.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isSet.js +1 -0
- package/node_modules/es-toolkit/compat/isSet.mjs +1 -0
- package/node_modules/es-toolkit/compat/isString.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isString.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isString.js +1 -0
- package/node_modules/es-toolkit/compat/isString.mjs +1 -0
- package/node_modules/es-toolkit/compat/isSymbol.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isSymbol.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isSymbol.js +1 -0
- package/node_modules/es-toolkit/compat/isSymbol.mjs +1 -0
- package/node_modules/es-toolkit/compat/isTypedArray.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isTypedArray.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isTypedArray.js +1 -0
- package/node_modules/es-toolkit/compat/isTypedArray.mjs +1 -0
- package/node_modules/es-toolkit/compat/isUndefined.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isUndefined.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isUndefined.js +1 -0
- package/node_modules/es-toolkit/compat/isUndefined.mjs +1 -0
- package/node_modules/es-toolkit/compat/isWeakMap.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isWeakMap.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isWeakMap.js +1 -0
- package/node_modules/es-toolkit/compat/isWeakMap.mjs +1 -0
- package/node_modules/es-toolkit/compat/isWeakSet.d.mts +1 -0
- package/node_modules/es-toolkit/compat/isWeakSet.d.ts +1 -0
- package/node_modules/es-toolkit/compat/isWeakSet.js +1 -0
- package/node_modules/es-toolkit/compat/isWeakSet.mjs +1 -0
- package/node_modules/es-toolkit/compat/iteratee.d.mts +1 -0
- package/node_modules/es-toolkit/compat/iteratee.d.ts +1 -0
- package/node_modules/es-toolkit/compat/iteratee.js +1 -0
- package/node_modules/es-toolkit/compat/iteratee.mjs +1 -0
- package/node_modules/es-toolkit/compat/join.d.mts +1 -0
- package/node_modules/es-toolkit/compat/join.d.ts +1 -0
- package/node_modules/es-toolkit/compat/join.js +1 -0
- package/node_modules/es-toolkit/compat/join.mjs +1 -0
- package/node_modules/es-toolkit/compat/kebabCase.d.mts +1 -0
- package/node_modules/es-toolkit/compat/kebabCase.d.ts +1 -0
- package/node_modules/es-toolkit/compat/kebabCase.js +1 -0
- package/node_modules/es-toolkit/compat/kebabCase.mjs +1 -0
- package/node_modules/es-toolkit/compat/keyBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/keyBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/keyBy.js +1 -0
- package/node_modules/es-toolkit/compat/keyBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/keys.d.mts +1 -0
- package/node_modules/es-toolkit/compat/keys.d.ts +1 -0
- package/node_modules/es-toolkit/compat/keys.js +1 -0
- package/node_modules/es-toolkit/compat/keys.mjs +1 -0
- package/node_modules/es-toolkit/compat/keysIn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/keysIn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/keysIn.js +1 -0
- package/node_modules/es-toolkit/compat/keysIn.mjs +1 -0
- package/node_modules/es-toolkit/compat/last.d.mts +1 -0
- package/node_modules/es-toolkit/compat/last.d.ts +1 -0
- package/node_modules/es-toolkit/compat/last.js +1 -0
- package/node_modules/es-toolkit/compat/last.mjs +1 -0
- package/node_modules/es-toolkit/compat/lastIndexOf.d.mts +1 -0
- package/node_modules/es-toolkit/compat/lastIndexOf.d.ts +1 -0
- package/node_modules/es-toolkit/compat/lastIndexOf.js +1 -0
- package/node_modules/es-toolkit/compat/lastIndexOf.mjs +1 -0
- package/node_modules/es-toolkit/compat/lowerCase.d.mts +1 -0
- package/node_modules/es-toolkit/compat/lowerCase.d.ts +1 -0
- package/node_modules/es-toolkit/compat/lowerCase.js +1 -0
- package/node_modules/es-toolkit/compat/lowerCase.mjs +1 -0
- package/node_modules/es-toolkit/compat/lowerFirst.d.mts +1 -0
- package/node_modules/es-toolkit/compat/lowerFirst.d.ts +1 -0
- package/node_modules/es-toolkit/compat/lowerFirst.js +1 -0
- package/node_modules/es-toolkit/compat/lowerFirst.mjs +1 -0
- package/node_modules/es-toolkit/compat/lt.d.mts +1 -0
- package/node_modules/es-toolkit/compat/lt.d.ts +1 -0
- package/node_modules/es-toolkit/compat/lt.js +1 -0
- package/node_modules/es-toolkit/compat/lt.mjs +1 -0
- package/node_modules/es-toolkit/compat/lte.d.mts +1 -0
- package/node_modules/es-toolkit/compat/lte.d.ts +1 -0
- package/node_modules/es-toolkit/compat/lte.js +1 -0
- package/node_modules/es-toolkit/compat/lte.mjs +1 -0
- package/node_modules/es-toolkit/compat/map.d.mts +1 -0
- package/node_modules/es-toolkit/compat/map.d.ts +1 -0
- package/node_modules/es-toolkit/compat/map.js +1 -0
- package/node_modules/es-toolkit/compat/map.mjs +1 -0
- package/node_modules/es-toolkit/compat/mapKeys.d.mts +1 -0
- package/node_modules/es-toolkit/compat/mapKeys.d.ts +1 -0
- package/node_modules/es-toolkit/compat/mapKeys.js +1 -0
- package/node_modules/es-toolkit/compat/mapKeys.mjs +1 -0
- package/node_modules/es-toolkit/compat/mapValues.d.mts +1 -0
- package/node_modules/es-toolkit/compat/mapValues.d.ts +1 -0
- package/node_modules/es-toolkit/compat/mapValues.js +1 -0
- package/node_modules/es-toolkit/compat/mapValues.mjs +1 -0
- package/node_modules/es-toolkit/compat/matches.d.mts +1 -0
- package/node_modules/es-toolkit/compat/matches.d.ts +1 -0
- package/node_modules/es-toolkit/compat/matches.js +1 -0
- package/node_modules/es-toolkit/compat/matches.mjs +1 -0
- package/node_modules/es-toolkit/compat/matchesProperty.d.mts +1 -0
- package/node_modules/es-toolkit/compat/matchesProperty.d.ts +1 -0
- package/node_modules/es-toolkit/compat/matchesProperty.js +1 -0
- package/node_modules/es-toolkit/compat/matchesProperty.mjs +1 -0
- package/node_modules/es-toolkit/compat/max.d.mts +1 -0
- package/node_modules/es-toolkit/compat/max.d.ts +1 -0
- package/node_modules/es-toolkit/compat/max.js +1 -0
- package/node_modules/es-toolkit/compat/max.mjs +1 -0
- package/node_modules/es-toolkit/compat/maxBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/maxBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/maxBy.js +1 -0
- package/node_modules/es-toolkit/compat/maxBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/mean.d.mts +1 -0
- package/node_modules/es-toolkit/compat/mean.d.ts +1 -0
- package/node_modules/es-toolkit/compat/mean.js +1 -0
- package/node_modules/es-toolkit/compat/mean.mjs +1 -0
- package/node_modules/es-toolkit/compat/meanBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/meanBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/meanBy.js +1 -0
- package/node_modules/es-toolkit/compat/meanBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/memoize.d.mts +1 -0
- package/node_modules/es-toolkit/compat/memoize.d.ts +1 -0
- package/node_modules/es-toolkit/compat/memoize.js +1 -0
- package/node_modules/es-toolkit/compat/memoize.mjs +1 -0
- package/node_modules/es-toolkit/compat/merge.d.mts +1 -0
- package/node_modules/es-toolkit/compat/merge.d.ts +1 -0
- package/node_modules/es-toolkit/compat/merge.js +1 -0
- package/node_modules/es-toolkit/compat/merge.mjs +1 -0
- package/node_modules/es-toolkit/compat/mergeWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/mergeWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/mergeWith.js +1 -0
- package/node_modules/es-toolkit/compat/mergeWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/method.d.mts +1 -0
- package/node_modules/es-toolkit/compat/method.d.ts +1 -0
- package/node_modules/es-toolkit/compat/method.js +1 -0
- package/node_modules/es-toolkit/compat/method.mjs +1 -0
- package/node_modules/es-toolkit/compat/methodOf.d.mts +1 -0
- package/node_modules/es-toolkit/compat/methodOf.d.ts +1 -0
- package/node_modules/es-toolkit/compat/methodOf.js +1 -0
- package/node_modules/es-toolkit/compat/methodOf.mjs +1 -0
- package/node_modules/es-toolkit/compat/min.d.mts +1 -0
- package/node_modules/es-toolkit/compat/min.d.ts +1 -0
- package/node_modules/es-toolkit/compat/min.js +1 -0
- package/node_modules/es-toolkit/compat/min.mjs +1 -0
- package/node_modules/es-toolkit/compat/minBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/minBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/minBy.js +1 -0
- package/node_modules/es-toolkit/compat/minBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/multiply.d.mts +1 -0
- package/node_modules/es-toolkit/compat/multiply.d.ts +1 -0
- package/node_modules/es-toolkit/compat/multiply.js +1 -0
- package/node_modules/es-toolkit/compat/multiply.mjs +1 -0
- package/node_modules/es-toolkit/compat/negate.d.mts +1 -0
- package/node_modules/es-toolkit/compat/negate.d.ts +1 -0
- package/node_modules/es-toolkit/compat/negate.js +1 -0
- package/node_modules/es-toolkit/compat/negate.mjs +1 -0
- package/node_modules/es-toolkit/compat/noop.d.mts +1 -0
- package/node_modules/es-toolkit/compat/noop.d.ts +1 -0
- package/node_modules/es-toolkit/compat/noop.js +1 -0
- package/node_modules/es-toolkit/compat/noop.mjs +1 -0
- package/node_modules/es-toolkit/compat/now.d.mts +1 -0
- package/node_modules/es-toolkit/compat/now.d.ts +1 -0
- package/node_modules/es-toolkit/compat/now.js +1 -0
- package/node_modules/es-toolkit/compat/now.mjs +1 -0
- package/node_modules/es-toolkit/compat/nth.d.mts +1 -0
- package/node_modules/es-toolkit/compat/nth.d.ts +1 -0
- package/node_modules/es-toolkit/compat/nth.js +1 -0
- package/node_modules/es-toolkit/compat/nth.mjs +1 -0
- package/node_modules/es-toolkit/compat/nthArg.d.mts +1 -0
- package/node_modules/es-toolkit/compat/nthArg.d.ts +1 -0
- package/node_modules/es-toolkit/compat/nthArg.js +1 -0
- package/node_modules/es-toolkit/compat/nthArg.mjs +1 -0
- package/node_modules/es-toolkit/compat/omit.d.mts +1 -0
- package/node_modules/es-toolkit/compat/omit.d.ts +1 -0
- package/node_modules/es-toolkit/compat/omit.js +1 -0
- package/node_modules/es-toolkit/compat/omit.mjs +1 -0
- package/node_modules/es-toolkit/compat/omitBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/omitBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/omitBy.js +1 -0
- package/node_modules/es-toolkit/compat/omitBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/once.d.mts +1 -0
- package/node_modules/es-toolkit/compat/once.d.ts +1 -0
- package/node_modules/es-toolkit/compat/once.js +1 -0
- package/node_modules/es-toolkit/compat/once.mjs +1 -0
- package/node_modules/es-toolkit/compat/orderBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/orderBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/orderBy.js +1 -0
- package/node_modules/es-toolkit/compat/orderBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/over.d.mts +1 -0
- package/node_modules/es-toolkit/compat/over.d.ts +1 -0
- package/node_modules/es-toolkit/compat/over.js +1 -0
- package/node_modules/es-toolkit/compat/over.mjs +1 -0
- package/node_modules/es-toolkit/compat/overArgs.d.mts +1 -0
- package/node_modules/es-toolkit/compat/overArgs.d.ts +1 -0
- package/node_modules/es-toolkit/compat/overArgs.js +1 -0
- package/node_modules/es-toolkit/compat/overArgs.mjs +1 -0
- package/node_modules/es-toolkit/compat/overEvery.d.mts +1 -0
- package/node_modules/es-toolkit/compat/overEvery.d.ts +1 -0
- package/node_modules/es-toolkit/compat/overEvery.js +1 -0
- package/node_modules/es-toolkit/compat/overEvery.mjs +1 -0
- package/node_modules/es-toolkit/compat/overSome.d.mts +1 -0
- package/node_modules/es-toolkit/compat/overSome.d.ts +1 -0
- package/node_modules/es-toolkit/compat/overSome.js +1 -0
- package/node_modules/es-toolkit/compat/overSome.mjs +1 -0
- package/node_modules/es-toolkit/compat/pad.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pad.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pad.js +1 -0
- package/node_modules/es-toolkit/compat/pad.mjs +1 -0
- package/node_modules/es-toolkit/compat/padEnd.d.mts +1 -0
- package/node_modules/es-toolkit/compat/padEnd.d.ts +1 -0
- package/node_modules/es-toolkit/compat/padEnd.js +1 -0
- package/node_modules/es-toolkit/compat/padEnd.mjs +1 -0
- package/node_modules/es-toolkit/compat/padStart.d.mts +1 -0
- package/node_modules/es-toolkit/compat/padStart.d.ts +1 -0
- package/node_modules/es-toolkit/compat/padStart.js +1 -0
- package/node_modules/es-toolkit/compat/padStart.mjs +1 -0
- package/node_modules/es-toolkit/compat/parseInt.d.mts +1 -0
- package/node_modules/es-toolkit/compat/parseInt.d.ts +1 -0
- package/node_modules/es-toolkit/compat/parseInt.js +1 -0
- package/node_modules/es-toolkit/compat/parseInt.mjs +1 -0
- package/node_modules/es-toolkit/compat/partial.d.mts +1 -0
- package/node_modules/es-toolkit/compat/partial.d.ts +1 -0
- package/node_modules/es-toolkit/compat/partial.js +1 -0
- package/node_modules/es-toolkit/compat/partial.mjs +1 -0
- package/node_modules/es-toolkit/compat/partialRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/partialRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/partialRight.js +1 -0
- package/node_modules/es-toolkit/compat/partialRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/partition.d.mts +1 -0
- package/node_modules/es-toolkit/compat/partition.d.ts +1 -0
- package/node_modules/es-toolkit/compat/partition.js +1 -0
- package/node_modules/es-toolkit/compat/partition.mjs +1 -0
- package/node_modules/es-toolkit/compat/pick.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pick.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pick.js +1 -0
- package/node_modules/es-toolkit/compat/pick.mjs +1 -0
- package/node_modules/es-toolkit/compat/pickBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pickBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pickBy.js +1 -0
- package/node_modules/es-toolkit/compat/pickBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/property.d.mts +1 -0
- package/node_modules/es-toolkit/compat/property.d.ts +1 -0
- package/node_modules/es-toolkit/compat/property.js +1 -0
- package/node_modules/es-toolkit/compat/property.mjs +1 -0
- package/node_modules/es-toolkit/compat/propertyOf.d.mts +1 -0
- package/node_modules/es-toolkit/compat/propertyOf.d.ts +1 -0
- package/node_modules/es-toolkit/compat/propertyOf.js +1 -0
- package/node_modules/es-toolkit/compat/propertyOf.mjs +1 -0
- package/node_modules/es-toolkit/compat/pull.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pull.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pull.js +1 -0
- package/node_modules/es-toolkit/compat/pull.mjs +1 -0
- package/node_modules/es-toolkit/compat/pullAll.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pullAll.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pullAll.js +1 -0
- package/node_modules/es-toolkit/compat/pullAll.mjs +1 -0
- package/node_modules/es-toolkit/compat/pullAllBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pullAllBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pullAllBy.js +1 -0
- package/node_modules/es-toolkit/compat/pullAllBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/pullAllWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pullAllWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pullAllWith.js +1 -0
- package/node_modules/es-toolkit/compat/pullAllWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/pullAt.d.mts +1 -0
- package/node_modules/es-toolkit/compat/pullAt.d.ts +1 -0
- package/node_modules/es-toolkit/compat/pullAt.js +1 -0
- package/node_modules/es-toolkit/compat/pullAt.mjs +1 -0
- package/node_modules/es-toolkit/compat/random.d.mts +1 -0
- package/node_modules/es-toolkit/compat/random.d.ts +1 -0
- package/node_modules/es-toolkit/compat/random.js +1 -0
- package/node_modules/es-toolkit/compat/random.mjs +1 -0
- package/node_modules/es-toolkit/compat/range.d.mts +1 -0
- package/node_modules/es-toolkit/compat/range.d.ts +1 -0
- package/node_modules/es-toolkit/compat/range.js +1 -0
- package/node_modules/es-toolkit/compat/range.mjs +1 -0
- package/node_modules/es-toolkit/compat/rangeRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/rangeRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/rangeRight.js +1 -0
- package/node_modules/es-toolkit/compat/rangeRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/rearg.d.mts +1 -0
- package/node_modules/es-toolkit/compat/rearg.d.ts +1 -0
- package/node_modules/es-toolkit/compat/rearg.js +1 -0
- package/node_modules/es-toolkit/compat/rearg.mjs +1 -0
- package/node_modules/es-toolkit/compat/reduce.d.mts +1 -0
- package/node_modules/es-toolkit/compat/reduce.d.ts +1 -0
- package/node_modules/es-toolkit/compat/reduce.js +1 -0
- package/node_modules/es-toolkit/compat/reduce.mjs +1 -0
- package/node_modules/es-toolkit/compat/reduceRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/reduceRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/reduceRight.js +1 -0
- package/node_modules/es-toolkit/compat/reduceRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/reject.d.mts +1 -0
- package/node_modules/es-toolkit/compat/reject.d.ts +1 -0
- package/node_modules/es-toolkit/compat/reject.js +1 -0
- package/node_modules/es-toolkit/compat/reject.mjs +1 -0
- package/node_modules/es-toolkit/compat/remove.d.mts +1 -0
- package/node_modules/es-toolkit/compat/remove.d.ts +1 -0
- package/node_modules/es-toolkit/compat/remove.js +1 -0
- package/node_modules/es-toolkit/compat/remove.mjs +1 -0
- package/node_modules/es-toolkit/compat/repeat.d.mts +1 -0
- package/node_modules/es-toolkit/compat/repeat.d.ts +1 -0
- package/node_modules/es-toolkit/compat/repeat.js +1 -0
- package/node_modules/es-toolkit/compat/repeat.mjs +1 -0
- package/node_modules/es-toolkit/compat/replace.d.mts +1 -0
- package/node_modules/es-toolkit/compat/replace.d.ts +1 -0
- package/node_modules/es-toolkit/compat/replace.js +1 -0
- package/node_modules/es-toolkit/compat/replace.mjs +1 -0
- package/node_modules/es-toolkit/compat/rest.d.mts +1 -0
- package/node_modules/es-toolkit/compat/rest.d.ts +1 -0
- package/node_modules/es-toolkit/compat/rest.js +1 -0
- package/node_modules/es-toolkit/compat/rest.mjs +1 -0
- package/node_modules/es-toolkit/compat/result.d.mts +1 -0
- package/node_modules/es-toolkit/compat/result.d.ts +1 -0
- package/node_modules/es-toolkit/compat/result.js +1 -0
- package/node_modules/es-toolkit/compat/result.mjs +1 -0
- package/node_modules/es-toolkit/compat/reverse.d.mts +1 -0
- package/node_modules/es-toolkit/compat/reverse.d.ts +1 -0
- package/node_modules/es-toolkit/compat/reverse.js +1 -0
- package/node_modules/es-toolkit/compat/reverse.mjs +1 -0
- package/node_modules/es-toolkit/compat/round.d.mts +1 -0
- package/node_modules/es-toolkit/compat/round.d.ts +1 -0
- package/node_modules/es-toolkit/compat/round.js +1 -0
- package/node_modules/es-toolkit/compat/round.mjs +1 -0
- package/node_modules/es-toolkit/compat/sample.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sample.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sample.js +1 -0
- package/node_modules/es-toolkit/compat/sample.mjs +1 -0
- package/node_modules/es-toolkit/compat/sampleSize.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sampleSize.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sampleSize.js +1 -0
- package/node_modules/es-toolkit/compat/sampleSize.mjs +1 -0
- package/node_modules/es-toolkit/compat/set.d.mts +1 -0
- package/node_modules/es-toolkit/compat/set.d.ts +1 -0
- package/node_modules/es-toolkit/compat/set.js +1 -0
- package/node_modules/es-toolkit/compat/set.mjs +1 -0
- package/node_modules/es-toolkit/compat/setWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/setWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/setWith.js +1 -0
- package/node_modules/es-toolkit/compat/setWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/shuffle.d.mts +1 -0
- package/node_modules/es-toolkit/compat/shuffle.d.ts +1 -0
- package/node_modules/es-toolkit/compat/shuffle.js +1 -0
- package/node_modules/es-toolkit/compat/shuffle.mjs +1 -0
- package/node_modules/es-toolkit/compat/size.d.mts +1 -0
- package/node_modules/es-toolkit/compat/size.d.ts +1 -0
- package/node_modules/es-toolkit/compat/size.js +1 -0
- package/node_modules/es-toolkit/compat/size.mjs +1 -0
- package/node_modules/es-toolkit/compat/slice.d.mts +1 -0
- package/node_modules/es-toolkit/compat/slice.d.ts +1 -0
- package/node_modules/es-toolkit/compat/slice.js +1 -0
- package/node_modules/es-toolkit/compat/slice.mjs +1 -0
- package/node_modules/es-toolkit/compat/snakeCase.d.mts +1 -0
- package/node_modules/es-toolkit/compat/snakeCase.d.ts +1 -0
- package/node_modules/es-toolkit/compat/snakeCase.js +1 -0
- package/node_modules/es-toolkit/compat/snakeCase.mjs +1 -0
- package/node_modules/es-toolkit/compat/some.d.mts +1 -0
- package/node_modules/es-toolkit/compat/some.d.ts +1 -0
- package/node_modules/es-toolkit/compat/some.js +1 -0
- package/node_modules/es-toolkit/compat/some.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sortBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sortBy.js +1 -0
- package/node_modules/es-toolkit/compat/sortBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedIndex.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sortedIndex.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sortedIndex.js +1 -0
- package/node_modules/es-toolkit/compat/sortedIndex.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexBy.js +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexOf.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexOf.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexOf.js +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexOf.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndex.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndex.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndex.js +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndex.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexBy.js +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexOf.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexOf.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexOf.js +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexOf.mjs +1 -0
- package/node_modules/es-toolkit/compat/split.d.mts +1 -0
- package/node_modules/es-toolkit/compat/split.d.ts +1 -0
- package/node_modules/es-toolkit/compat/split.js +1 -0
- package/node_modules/es-toolkit/compat/split.mjs +1 -0
- package/node_modules/es-toolkit/compat/spread.d.mts +1 -0
- package/node_modules/es-toolkit/compat/spread.d.ts +1 -0
- package/node_modules/es-toolkit/compat/spread.js +1 -0
- package/node_modules/es-toolkit/compat/spread.mjs +1 -0
- package/node_modules/es-toolkit/compat/startCase.d.mts +1 -0
- package/node_modules/es-toolkit/compat/startCase.d.ts +1 -0
- package/node_modules/es-toolkit/compat/startCase.js +1 -0
- package/node_modules/es-toolkit/compat/startCase.mjs +1 -0
- package/node_modules/es-toolkit/compat/startsWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/startsWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/startsWith.js +1 -0
- package/node_modules/es-toolkit/compat/startsWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubArray.d.mts +1 -0
- package/node_modules/es-toolkit/compat/stubArray.d.ts +1 -0
- package/node_modules/es-toolkit/compat/stubArray.js +1 -0
- package/node_modules/es-toolkit/compat/stubArray.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubFalse.d.mts +1 -0
- package/node_modules/es-toolkit/compat/stubFalse.d.ts +1 -0
- package/node_modules/es-toolkit/compat/stubFalse.js +1 -0
- package/node_modules/es-toolkit/compat/stubFalse.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubObject.d.mts +1 -0
- package/node_modules/es-toolkit/compat/stubObject.d.ts +1 -0
- package/node_modules/es-toolkit/compat/stubObject.js +1 -0
- package/node_modules/es-toolkit/compat/stubObject.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubString.d.mts +1 -0
- package/node_modules/es-toolkit/compat/stubString.d.ts +1 -0
- package/node_modules/es-toolkit/compat/stubString.js +1 -0
- package/node_modules/es-toolkit/compat/stubString.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubTrue.d.mts +1 -0
- package/node_modules/es-toolkit/compat/stubTrue.d.ts +1 -0
- package/node_modules/es-toolkit/compat/stubTrue.js +1 -0
- package/node_modules/es-toolkit/compat/stubTrue.mjs +1 -0
- package/node_modules/es-toolkit/compat/subtract.d.mts +1 -0
- package/node_modules/es-toolkit/compat/subtract.d.ts +1 -0
- package/node_modules/es-toolkit/compat/subtract.js +1 -0
- package/node_modules/es-toolkit/compat/subtract.mjs +1 -0
- package/node_modules/es-toolkit/compat/sum.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sum.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sum.js +1 -0
- package/node_modules/es-toolkit/compat/sum.mjs +1 -0
- package/node_modules/es-toolkit/compat/sumBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/sumBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/sumBy.js +1 -0
- package/node_modules/es-toolkit/compat/sumBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/tail.d.mts +1 -0
- package/node_modules/es-toolkit/compat/tail.d.ts +1 -0
- package/node_modules/es-toolkit/compat/tail.js +1 -0
- package/node_modules/es-toolkit/compat/tail.mjs +1 -0
- package/node_modules/es-toolkit/compat/take.d.mts +1 -0
- package/node_modules/es-toolkit/compat/take.d.ts +1 -0
- package/node_modules/es-toolkit/compat/take.js +1 -0
- package/node_modules/es-toolkit/compat/take.mjs +1 -0
- package/node_modules/es-toolkit/compat/takeRight.d.mts +1 -0
- package/node_modules/es-toolkit/compat/takeRight.d.ts +1 -0
- package/node_modules/es-toolkit/compat/takeRight.js +1 -0
- package/node_modules/es-toolkit/compat/takeRight.mjs +1 -0
- package/node_modules/es-toolkit/compat/takeRightWhile.d.mts +1 -0
- package/node_modules/es-toolkit/compat/takeRightWhile.d.ts +1 -0
- package/node_modules/es-toolkit/compat/takeRightWhile.js +1 -0
- package/node_modules/es-toolkit/compat/takeRightWhile.mjs +1 -0
- package/node_modules/es-toolkit/compat/takeWhile.d.mts +1 -0
- package/node_modules/es-toolkit/compat/takeWhile.d.ts +1 -0
- package/node_modules/es-toolkit/compat/takeWhile.js +1 -0
- package/node_modules/es-toolkit/compat/takeWhile.mjs +1 -0
- package/node_modules/es-toolkit/compat/template.d.mts +1 -0
- package/node_modules/es-toolkit/compat/template.d.ts +1 -0
- package/node_modules/es-toolkit/compat/template.js +1 -0
- package/node_modules/es-toolkit/compat/template.mjs +1 -0
- package/node_modules/es-toolkit/compat/templateSettings.d.mts +1 -0
- package/node_modules/es-toolkit/compat/templateSettings.d.ts +1 -0
- package/node_modules/es-toolkit/compat/templateSettings.js +1 -0
- package/node_modules/es-toolkit/compat/templateSettings.mjs +1 -0
- package/node_modules/es-toolkit/compat/throttle.d.mts +1 -0
- package/node_modules/es-toolkit/compat/throttle.d.ts +1 -0
- package/node_modules/es-toolkit/compat/throttle.js +1 -0
- package/node_modules/es-toolkit/compat/throttle.mjs +1 -0
- package/node_modules/es-toolkit/compat/times.d.mts +1 -0
- package/node_modules/es-toolkit/compat/times.d.ts +1 -0
- package/node_modules/es-toolkit/compat/times.js +1 -0
- package/node_modules/es-toolkit/compat/times.mjs +1 -0
- package/node_modules/es-toolkit/compat/toArray.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toArray.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toArray.js +1 -0
- package/node_modules/es-toolkit/compat/toArray.mjs +1 -0
- package/node_modules/es-toolkit/compat/toDefaulted.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toDefaulted.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toDefaulted.js +1 -0
- package/node_modules/es-toolkit/compat/toDefaulted.mjs +1 -0
- package/node_modules/es-toolkit/compat/toFinite.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toFinite.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toFinite.js +1 -0
- package/node_modules/es-toolkit/compat/toFinite.mjs +1 -0
- package/node_modules/es-toolkit/compat/toInteger.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toInteger.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toInteger.js +1 -0
- package/node_modules/es-toolkit/compat/toInteger.mjs +1 -0
- package/node_modules/es-toolkit/compat/toLength.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toLength.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toLength.js +1 -0
- package/node_modules/es-toolkit/compat/toLength.mjs +1 -0
- package/node_modules/es-toolkit/compat/toLower.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toLower.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toLower.js +1 -0
- package/node_modules/es-toolkit/compat/toLower.mjs +1 -0
- package/node_modules/es-toolkit/compat/toNumber.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toNumber.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toNumber.js +1 -0
- package/node_modules/es-toolkit/compat/toNumber.mjs +1 -0
- package/node_modules/es-toolkit/compat/toPairs.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toPairs.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toPairs.js +1 -0
- package/node_modules/es-toolkit/compat/toPairs.mjs +1 -0
- package/node_modules/es-toolkit/compat/toPairsIn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toPairsIn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toPairsIn.js +1 -0
- package/node_modules/es-toolkit/compat/toPairsIn.mjs +1 -0
- package/node_modules/es-toolkit/compat/toPath.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toPath.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toPath.js +1 -0
- package/node_modules/es-toolkit/compat/toPath.mjs +1 -0
- package/node_modules/es-toolkit/compat/toPlainObject.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toPlainObject.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toPlainObject.js +1 -0
- package/node_modules/es-toolkit/compat/toPlainObject.mjs +1 -0
- package/node_modules/es-toolkit/compat/toSafeInteger.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toSafeInteger.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toSafeInteger.js +1 -0
- package/node_modules/es-toolkit/compat/toSafeInteger.mjs +1 -0
- package/node_modules/es-toolkit/compat/toString.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toString.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toString.js +1 -0
- package/node_modules/es-toolkit/compat/toString.mjs +1 -0
- package/node_modules/es-toolkit/compat/toUpper.d.mts +1 -0
- package/node_modules/es-toolkit/compat/toUpper.d.ts +1 -0
- package/node_modules/es-toolkit/compat/toUpper.js +1 -0
- package/node_modules/es-toolkit/compat/toUpper.mjs +1 -0
- package/node_modules/es-toolkit/compat/transform.d.mts +1 -0
- package/node_modules/es-toolkit/compat/transform.d.ts +1 -0
- package/node_modules/es-toolkit/compat/transform.js +1 -0
- package/node_modules/es-toolkit/compat/transform.mjs +1 -0
- package/node_modules/es-toolkit/compat/trim.d.mts +1 -0
- package/node_modules/es-toolkit/compat/trim.d.ts +1 -0
- package/node_modules/es-toolkit/compat/trim.js +1 -0
- package/node_modules/es-toolkit/compat/trim.mjs +1 -0
- package/node_modules/es-toolkit/compat/trimEnd.d.mts +1 -0
- package/node_modules/es-toolkit/compat/trimEnd.d.ts +1 -0
- package/node_modules/es-toolkit/compat/trimEnd.js +1 -0
- package/node_modules/es-toolkit/compat/trimEnd.mjs +1 -0
- package/node_modules/es-toolkit/compat/trimStart.d.mts +1 -0
- package/node_modules/es-toolkit/compat/trimStart.d.ts +1 -0
- package/node_modules/es-toolkit/compat/trimStart.js +1 -0
- package/node_modules/es-toolkit/compat/trimStart.mjs +1 -0
- package/node_modules/es-toolkit/compat/truncate.d.mts +1 -0
- package/node_modules/es-toolkit/compat/truncate.d.ts +1 -0
- package/node_modules/es-toolkit/compat/truncate.js +1 -0
- package/node_modules/es-toolkit/compat/truncate.mjs +1 -0
- package/node_modules/es-toolkit/compat/unary.d.mts +1 -0
- package/node_modules/es-toolkit/compat/unary.d.ts +1 -0
- package/node_modules/es-toolkit/compat/unary.js +1 -0
- package/node_modules/es-toolkit/compat/unary.mjs +1 -0
- package/node_modules/es-toolkit/compat/unescape.d.mts +1 -0
- package/node_modules/es-toolkit/compat/unescape.d.ts +1 -0
- package/node_modules/es-toolkit/compat/unescape.js +1 -0
- package/node_modules/es-toolkit/compat/unescape.mjs +1 -0
- package/node_modules/es-toolkit/compat/union.d.mts +1 -0
- package/node_modules/es-toolkit/compat/union.d.ts +1 -0
- package/node_modules/es-toolkit/compat/union.js +1 -0
- package/node_modules/es-toolkit/compat/union.mjs +1 -0
- package/node_modules/es-toolkit/compat/unionBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/unionBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/unionBy.js +1 -0
- package/node_modules/es-toolkit/compat/unionBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/unionWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/unionWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/unionWith.js +1 -0
- package/node_modules/es-toolkit/compat/unionWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/uniq.d.mts +1 -0
- package/node_modules/es-toolkit/compat/uniq.d.ts +1 -0
- package/node_modules/es-toolkit/compat/uniq.js +1 -0
- package/node_modules/es-toolkit/compat/uniq.mjs +1 -0
- package/node_modules/es-toolkit/compat/uniqBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/uniqBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/uniqBy.js +1 -0
- package/node_modules/es-toolkit/compat/uniqBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/uniqWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/uniqWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/uniqWith.js +1 -0
- package/node_modules/es-toolkit/compat/uniqWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/uniqueId.d.mts +1 -0
- package/node_modules/es-toolkit/compat/uniqueId.d.ts +1 -0
- package/node_modules/es-toolkit/compat/uniqueId.js +1 -0
- package/node_modules/es-toolkit/compat/uniqueId.mjs +1 -0
- package/node_modules/es-toolkit/compat/unset.d.mts +1 -0
- package/node_modules/es-toolkit/compat/unset.d.ts +1 -0
- package/node_modules/es-toolkit/compat/unset.js +1 -0
- package/node_modules/es-toolkit/compat/unset.mjs +1 -0
- package/node_modules/es-toolkit/compat/unzip.d.mts +1 -0
- package/node_modules/es-toolkit/compat/unzip.d.ts +1 -0
- package/node_modules/es-toolkit/compat/unzip.js +1 -0
- package/node_modules/es-toolkit/compat/unzip.mjs +1 -0
- package/node_modules/es-toolkit/compat/unzipWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/unzipWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/unzipWith.js +1 -0
- package/node_modules/es-toolkit/compat/unzipWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/update.d.mts +1 -0
- package/node_modules/es-toolkit/compat/update.d.ts +1 -0
- package/node_modules/es-toolkit/compat/update.js +1 -0
- package/node_modules/es-toolkit/compat/update.mjs +1 -0
- package/node_modules/es-toolkit/compat/updateWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/updateWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/updateWith.js +1 -0
- package/node_modules/es-toolkit/compat/updateWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/upperCase.d.mts +1 -0
- package/node_modules/es-toolkit/compat/upperCase.d.ts +1 -0
- package/node_modules/es-toolkit/compat/upperCase.js +1 -0
- package/node_modules/es-toolkit/compat/upperCase.mjs +1 -0
- package/node_modules/es-toolkit/compat/upperFirst.d.mts +1 -0
- package/node_modules/es-toolkit/compat/upperFirst.d.ts +1 -0
- package/node_modules/es-toolkit/compat/upperFirst.js +1 -0
- package/node_modules/es-toolkit/compat/upperFirst.mjs +1 -0
- package/node_modules/es-toolkit/compat/values.d.mts +1 -0
- package/node_modules/es-toolkit/compat/values.d.ts +1 -0
- package/node_modules/es-toolkit/compat/values.js +1 -0
- package/node_modules/es-toolkit/compat/values.mjs +1 -0
- package/node_modules/es-toolkit/compat/valuesIn.d.mts +1 -0
- package/node_modules/es-toolkit/compat/valuesIn.d.ts +1 -0
- package/node_modules/es-toolkit/compat/valuesIn.js +1 -0
- package/node_modules/es-toolkit/compat/valuesIn.mjs +1 -0
- package/node_modules/es-toolkit/compat/without.d.mts +1 -0
- package/node_modules/es-toolkit/compat/without.d.ts +1 -0
- package/node_modules/es-toolkit/compat/without.js +1 -0
- package/node_modules/es-toolkit/compat/without.mjs +1 -0
- package/node_modules/es-toolkit/compat/words.d.mts +1 -0
- package/node_modules/es-toolkit/compat/words.d.ts +1 -0
- package/node_modules/es-toolkit/compat/words.js +1 -0
- package/node_modules/es-toolkit/compat/words.mjs +1 -0
- package/node_modules/es-toolkit/compat/wrap.d.mts +1 -0
- package/node_modules/es-toolkit/compat/wrap.d.ts +1 -0
- package/node_modules/es-toolkit/compat/wrap.js +1 -0
- package/node_modules/es-toolkit/compat/wrap.mjs +1 -0
- package/node_modules/es-toolkit/compat/xor.d.mts +1 -0
- package/node_modules/es-toolkit/compat/xor.d.ts +1 -0
- package/node_modules/es-toolkit/compat/xor.js +1 -0
- package/node_modules/es-toolkit/compat/xor.mjs +1 -0
- package/node_modules/es-toolkit/compat/xorBy.d.mts +1 -0
- package/node_modules/es-toolkit/compat/xorBy.d.ts +1 -0
- package/node_modules/es-toolkit/compat/xorBy.js +1 -0
- package/node_modules/es-toolkit/compat/xorBy.mjs +1 -0
- package/node_modules/es-toolkit/compat/xorWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/xorWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/xorWith.js +1 -0
- package/node_modules/es-toolkit/compat/xorWith.mjs +1 -0
- package/node_modules/es-toolkit/compat/zip.d.mts +1 -0
- package/node_modules/es-toolkit/compat/zip.d.ts +1 -0
- package/node_modules/es-toolkit/compat/zip.js +1 -0
- package/node_modules/es-toolkit/compat/zip.mjs +1 -0
- package/node_modules/es-toolkit/compat/zipObject.d.mts +1 -0
- package/node_modules/es-toolkit/compat/zipObject.d.ts +1 -0
- package/node_modules/es-toolkit/compat/zipObject.js +1 -0
- package/node_modules/es-toolkit/compat/zipObject.mjs +1 -0
- package/node_modules/es-toolkit/compat/zipObjectDeep.d.mts +1 -0
- package/node_modules/es-toolkit/compat/zipObjectDeep.d.ts +1 -0
- package/node_modules/es-toolkit/compat/zipObjectDeep.js +1 -0
- package/node_modules/es-toolkit/compat/zipObjectDeep.mjs +1 -0
- package/node_modules/es-toolkit/compat/zipWith.d.mts +1 -0
- package/node_modules/es-toolkit/compat/zipWith.d.ts +1 -0
- package/node_modules/es-toolkit/compat/zipWith.js +1 -0
- package/node_modules/es-toolkit/compat/zipWith.mjs +1 -0
- package/node_modules/es-toolkit/compat.d.ts +1 -0
- package/node_modules/es-toolkit/compat.js +1 -0
- package/node_modules/es-toolkit/dist/_internal/DOMException.d.mts +2 -0
- package/node_modules/es-toolkit/dist/_internal/DOMException.d.ts +2 -0
- package/node_modules/es-toolkit/dist/_internal/DOMException.js +4 -0
- package/node_modules/es-toolkit/dist/_internal/DOMException.mjs +4 -0
- package/node_modules/es-toolkit/dist/_internal/NonPlainObject.d.mts +5 -0
- package/node_modules/es-toolkit/dist/_internal/NonPlainObject.d.ts +5 -0
- package/node_modules/es-toolkit/dist/_internal/bigIntRangeLength.js +18 -0
- package/node_modules/es-toolkit/dist/_internal/bigIntRangeLength.mjs +18 -0
- package/node_modules/es-toolkit/dist/_internal/compareValues.js +21 -0
- package/node_modules/es-toolkit/dist/_internal/compareValues.mjs +21 -0
- package/node_modules/es-toolkit/dist/_internal/globalThis.d.mts +2 -0
- package/node_modules/es-toolkit/dist/_internal/globalThis.d.ts +2 -0
- package/node_modules/es-toolkit/dist/_internal/globalThis.js +5 -0
- package/node_modules/es-toolkit/dist/_internal/globalThis.mjs +5 -0
- package/node_modules/es-toolkit/dist/_internal/isMergeableValue.js +16 -0
- package/node_modules/es-toolkit/dist/_internal/isMergeableValue.mjs +16 -0
- package/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.js +18 -0
- package/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.mjs +18 -0
- package/node_modules/es-toolkit/dist/_internal/isUnsafeToWriteProperty.js +21 -0
- package/node_modules/es-toolkit/dist/_internal/isUnsafeToWriteProperty.mjs +21 -0
- package/node_modules/es-toolkit/dist/_virtual/_rolldown/runtime.js +12 -0
- package/node_modules/es-toolkit/dist/_virtual/_rolldown/runtime.mjs +12 -0
- package/node_modules/es-toolkit/dist/array/at.d.mts +16 -0
- package/node_modules/es-toolkit/dist/array/at.d.ts +16 -0
- package/node_modules/es-toolkit/dist/array/at.js +28 -0
- package/node_modules/es-toolkit/dist/array/at.mjs +28 -0
- package/node_modules/es-toolkit/dist/array/cartesianProduct.d.mts +72 -0
- package/node_modules/es-toolkit/dist/array/cartesianProduct.d.ts +72 -0
- package/node_modules/es-toolkit/dist/array/cartesianProduct.js +22 -0
- package/node_modules/es-toolkit/dist/array/cartesianProduct.mjs +22 -0
- package/node_modules/es-toolkit/dist/array/chunk.d.mts +24 -0
- package/node_modules/es-toolkit/dist/array/chunk.d.ts +24 -0
- package/node_modules/es-toolkit/dist/array/chunk.js +36 -0
- package/node_modules/es-toolkit/dist/array/chunk.mjs +36 -0
- package/node_modules/es-toolkit/dist/array/chunkBy.d.mts +29 -0
- package/node_modules/es-toolkit/dist/array/chunkBy.d.ts +29 -0
- package/node_modules/es-toolkit/dist/array/chunkBy.js +41 -0
- package/node_modules/es-toolkit/dist/array/chunkBy.mjs +41 -0
- package/node_modules/es-toolkit/dist/array/combinations.d.mts +32 -0
- package/node_modules/es-toolkit/dist/array/combinations.d.ts +32 -0
- package/node_modules/es-toolkit/dist/array/combinations.js +52 -0
- package/node_modules/es-toolkit/dist/array/combinations.mjs +52 -0
- package/node_modules/es-toolkit/dist/array/compact.d.mts +14 -0
- package/node_modules/es-toolkit/dist/array/compact.d.ts +14 -0
- package/node_modules/es-toolkit/dist/array/compact.js +21 -0
- package/node_modules/es-toolkit/dist/array/compact.mjs +21 -0
- package/node_modules/es-toolkit/dist/array/countBy.d.mts +34 -0
- package/node_modules/es-toolkit/dist/array/countBy.d.ts +34 -0
- package/node_modules/es-toolkit/dist/array/countBy.js +44 -0
- package/node_modules/es-toolkit/dist/array/countBy.mjs +44 -0
- package/node_modules/es-toolkit/dist/array/difference.d.mts +23 -0
- package/node_modules/es-toolkit/dist/array/difference.d.ts +23 -0
- package/node_modules/es-toolkit/dist/array/difference.js +28 -0
- package/node_modules/es-toolkit/dist/array/difference.mjs +28 -0
- package/node_modules/es-toolkit/dist/array/differenceBy.d.mts +33 -0
- package/node_modules/es-toolkit/dist/array/differenceBy.d.ts +33 -0
- package/node_modules/es-toolkit/dist/array/differenceBy.js +40 -0
- package/node_modules/es-toolkit/dist/array/differenceBy.mjs +40 -0
- package/node_modules/es-toolkit/dist/array/differenceWith.d.mts +29 -0
- package/node_modules/es-toolkit/dist/array/differenceWith.d.ts +29 -0
- package/node_modules/es-toolkit/dist/array/differenceWith.js +37 -0
- package/node_modules/es-toolkit/dist/array/differenceWith.mjs +37 -0
- package/node_modules/es-toolkit/dist/array/drop.d.mts +17 -0
- package/node_modules/es-toolkit/dist/array/drop.d.ts +17 -0
- package/node_modules/es-toolkit/dist/array/drop.js +22 -0
- package/node_modules/es-toolkit/dist/array/drop.mjs +22 -0
- package/node_modules/es-toolkit/dist/array/dropRight.d.mts +17 -0
- package/node_modules/es-toolkit/dist/array/dropRight.d.ts +17 -0
- package/node_modules/es-toolkit/dist/array/dropRight.js +23 -0
- package/node_modules/es-toolkit/dist/array/dropRight.mjs +23 -0
- package/node_modules/es-toolkit/dist/array/dropRightWhile.d.mts +19 -0
- package/node_modules/es-toolkit/dist/array/dropRightWhile.d.ts +19 -0
- package/node_modules/es-toolkit/dist/array/dropRightWhile.js +24 -0
- package/node_modules/es-toolkit/dist/array/dropRightWhile.mjs +24 -0
- package/node_modules/es-toolkit/dist/array/dropWhile.d.mts +19 -0
- package/node_modules/es-toolkit/dist/array/dropWhile.d.ts +19 -0
- package/node_modules/es-toolkit/dist/array/dropWhile.js +25 -0
- package/node_modules/es-toolkit/dist/array/dropWhile.mjs +25 -0
- package/node_modules/es-toolkit/dist/array/fill.d.mts +83 -0
- package/node_modules/es-toolkit/dist/array/fill.d.ts +83 -0
- package/node_modules/es-toolkit/dist/array/fill.js +37 -0
- package/node_modules/es-toolkit/dist/array/fill.mjs +37 -0
- package/node_modules/es-toolkit/dist/array/filterAsync.d.mts +34 -0
- package/node_modules/es-toolkit/dist/array/filterAsync.d.ts +34 -0
- package/node_modules/es-toolkit/dist/array/filterAsync.js +37 -0
- package/node_modules/es-toolkit/dist/array/filterAsync.mjs +37 -0
- package/node_modules/es-toolkit/dist/array/flatMap.d.mts +21 -0
- package/node_modules/es-toolkit/dist/array/flatMap.d.ts +21 -0
- package/node_modules/es-toolkit/dist/array/flatMap.js +26 -0
- package/node_modules/es-toolkit/dist/array/flatMap.mjs +26 -0
- package/node_modules/es-toolkit/dist/array/flatMapAsync.d.mts +36 -0
- package/node_modules/es-toolkit/dist/array/flatMapAsync.d.ts +36 -0
- package/node_modules/es-toolkit/dist/array/flatMapAsync.js +40 -0
- package/node_modules/es-toolkit/dist/array/flatMapAsync.mjs +40 -0
- package/node_modules/es-toolkit/dist/array/flatMapDeep.d.mts +15 -0
- package/node_modules/es-toolkit/dist/array/flatMapDeep.d.ts +15 -0
- package/node_modules/es-toolkit/dist/array/flatMapDeep.js +19 -0
- package/node_modules/es-toolkit/dist/array/flatMapDeep.mjs +19 -0
- package/node_modules/es-toolkit/dist/array/flatten.d.mts +17 -0
- package/node_modules/es-toolkit/dist/array/flatten.d.ts +17 -0
- package/node_modules/es-toolkit/dist/array/flatten.js +31 -0
- package/node_modules/es-toolkit/dist/array/flatten.mjs +31 -0
- package/node_modules/es-toolkit/dist/array/flattenDeep.d.mts +23 -0
- package/node_modules/es-toolkit/dist/array/flattenDeep.d.ts +23 -0
- package/node_modules/es-toolkit/dist/array/flattenDeep.js +17 -0
- package/node_modules/es-toolkit/dist/array/flattenDeep.mjs +17 -0
- package/node_modules/es-toolkit/dist/array/forEachAsync.d.mts +34 -0
- package/node_modules/es-toolkit/dist/array/forEachAsync.d.ts +34 -0
- package/node_modules/es-toolkit/dist/array/forEachAsync.js +36 -0
- package/node_modules/es-toolkit/dist/array/forEachAsync.mjs +36 -0
- package/node_modules/es-toolkit/dist/array/forEachRight.d.mts +46 -0
- package/node_modules/es-toolkit/dist/array/forEachRight.d.ts +46 -0
- package/node_modules/es-toolkit/dist/array/forEachRight.js +30 -0
- package/node_modules/es-toolkit/dist/array/forEachRight.mjs +30 -0
- package/node_modules/es-toolkit/dist/array/groupBy.d.mts +39 -0
- package/node_modules/es-toolkit/dist/array/groupBy.d.ts +39 -0
- package/node_modules/es-toolkit/dist/array/groupBy.js +50 -0
- package/node_modules/es-toolkit/dist/array/groupBy.mjs +50 -0
- package/node_modules/es-toolkit/dist/array/head.d.mts +32 -0
- package/node_modules/es-toolkit/dist/array/head.d.ts +32 -0
- package/node_modules/es-toolkit/dist/array/head.js +20 -0
- package/node_modules/es-toolkit/dist/array/head.mjs +20 -0
- package/node_modules/es-toolkit/dist/array/index.d.mts +70 -0
- package/node_modules/es-toolkit/dist/array/index.d.ts +70 -0
- package/node_modules/es-toolkit/dist/array/index.js +139 -0
- package/node_modules/es-toolkit/dist/array/index.mjs +70 -0
- package/node_modules/es-toolkit/dist/array/initial.d.mts +52 -0
- package/node_modules/es-toolkit/dist/array/initial.d.ts +52 -0
- package/node_modules/es-toolkit/dist/array/initial.js +18 -0
- package/node_modules/es-toolkit/dist/array/initial.mjs +18 -0
- package/node_modules/es-toolkit/dist/array/intersection.d.mts +19 -0
- package/node_modules/es-toolkit/dist/array/intersection.d.ts +19 -0
- package/node_modules/es-toolkit/dist/array/intersection.js +24 -0
- package/node_modules/es-toolkit/dist/array/intersection.mjs +24 -0
- package/node_modules/es-toolkit/dist/array/intersectionBy.d.mts +34 -0
- package/node_modules/es-toolkit/dist/array/intersectionBy.d.ts +34 -0
- package/node_modules/es-toolkit/dist/array/intersectionBy.js +48 -0
- package/node_modules/es-toolkit/dist/array/intersectionBy.mjs +48 -0
- package/node_modules/es-toolkit/dist/array/intersectionWith.d.mts +35 -0
- package/node_modules/es-toolkit/dist/array/intersectionWith.d.ts +35 -0
- package/node_modules/es-toolkit/dist/array/intersectionWith.js +43 -0
- package/node_modules/es-toolkit/dist/array/intersectionWith.mjs +43 -0
- package/node_modules/es-toolkit/dist/array/isSubset.d.mts +24 -0
- package/node_modules/es-toolkit/dist/array/isSubset.d.ts +24 -0
- package/node_modules/es-toolkit/dist/array/isSubset.js +29 -0
- package/node_modules/es-toolkit/dist/array/isSubset.mjs +29 -0
- package/node_modules/es-toolkit/dist/array/isSubsetWith.d.mts +31 -0
- package/node_modules/es-toolkit/dist/array/isSubsetWith.d.ts +31 -0
- package/node_modules/es-toolkit/dist/array/isSubsetWith.js +36 -0
- package/node_modules/es-toolkit/dist/array/isSubsetWith.mjs +36 -0
- package/node_modules/es-toolkit/dist/array/keyBy.d.mts +34 -0
- package/node_modules/es-toolkit/dist/array/keyBy.d.ts +34 -0
- package/node_modules/es-toolkit/dist/array/keyBy.js +44 -0
- package/node_modules/es-toolkit/dist/array/keyBy.mjs +44 -0
- package/node_modules/es-toolkit/dist/array/last.d.mts +46 -0
- package/node_modules/es-toolkit/dist/array/last.d.ts +46 -0
- package/node_modules/es-toolkit/dist/array/last.js +27 -0
- package/node_modules/es-toolkit/dist/array/last.mjs +27 -0
- package/node_modules/es-toolkit/dist/array/limitAsync.d.mts +7 -0
- package/node_modules/es-toolkit/dist/array/limitAsync.d.ts +7 -0
- package/node_modules/es-toolkit/dist/array/limitAsync.js +8 -0
- package/node_modules/es-toolkit/dist/array/limitAsync.mjs +9 -0
- package/node_modules/es-toolkit/dist/array/mapAsync.d.mts +33 -0
- package/node_modules/es-toolkit/dist/array/mapAsync.d.ts +33 -0
- package/node_modules/es-toolkit/dist/array/mapAsync.js +35 -0
- package/node_modules/es-toolkit/dist/array/mapAsync.mjs +35 -0
- package/node_modules/es-toolkit/dist/array/maxBy.d.mts +45 -0
- package/node_modules/es-toolkit/dist/array/maxBy.d.ts +45 -0
- package/node_modules/es-toolkit/dist/array/maxBy.js +39 -0
- package/node_modules/es-toolkit/dist/array/maxBy.mjs +39 -0
- package/node_modules/es-toolkit/dist/array/minBy.d.mts +45 -0
- package/node_modules/es-toolkit/dist/array/minBy.d.ts +45 -0
- package/node_modules/es-toolkit/dist/array/minBy.js +39 -0
- package/node_modules/es-toolkit/dist/array/minBy.mjs +39 -0
- package/node_modules/es-toolkit/dist/array/orderBy.d.mts +35 -0
- package/node_modules/es-toolkit/dist/array/orderBy.d.ts +35 -0
- package/node_modules/es-toolkit/dist/array/orderBy.js +52 -0
- package/node_modules/es-toolkit/dist/array/orderBy.mjs +52 -0
- package/node_modules/es-toolkit/dist/array/partition.d.mts +48 -0
- package/node_modules/es-toolkit/dist/array/partition.d.ts +48 -0
- package/node_modules/es-toolkit/dist/array/partition.js +12 -0
- package/node_modules/es-toolkit/dist/array/partition.mjs +12 -0
- package/node_modules/es-toolkit/dist/array/pull.d.mts +17 -0
- package/node_modules/es-toolkit/dist/array/pull.d.ts +17 -0
- package/node_modules/es-toolkit/dist/array/pull.js +32 -0
- package/node_modules/es-toolkit/dist/array/pull.mjs +32 -0
- package/node_modules/es-toolkit/dist/array/pullAt.d.mts +17 -0
- package/node_modules/es-toolkit/dist/array/pullAt.d.ts +17 -0
- package/node_modules/es-toolkit/dist/array/pullAt.js +25 -0
- package/node_modules/es-toolkit/dist/array/pullAt.mjs +25 -0
- package/node_modules/es-toolkit/dist/array/reduceAsync.d.mts +69 -0
- package/node_modules/es-toolkit/dist/array/reduceAsync.d.ts +69 -0
- package/node_modules/es-toolkit/dist/array/reduceAsync.js +12 -0
- package/node_modules/es-toolkit/dist/array/reduceAsync.mjs +12 -0
- package/node_modules/es-toolkit/dist/array/remove.d.mts +17 -0
- package/node_modules/es-toolkit/dist/array/remove.d.ts +17 -0
- package/node_modules/es-toolkit/dist/array/remove.js +36 -0
- package/node_modules/es-toolkit/dist/array/remove.mjs +36 -0
- package/node_modules/es-toolkit/dist/array/sample.d.mts +15 -0
- package/node_modules/es-toolkit/dist/array/sample.d.ts +15 -0
- package/node_modules/es-toolkit/dist/array/sample.js +19 -0
- package/node_modules/es-toolkit/dist/array/sample.mjs +19 -0
- package/node_modules/es-toolkit/dist/array/sampleSize.d.mts +19 -0
- package/node_modules/es-toolkit/dist/array/sampleSize.d.ts +19 -0
- package/node_modules/es-toolkit/dist/array/sampleSize.js +33 -0
- package/node_modules/es-toolkit/dist/array/sampleSize.mjs +33 -0
- package/node_modules/es-toolkit/dist/array/shuffle.d.mts +15 -0
- package/node_modules/es-toolkit/dist/array/shuffle.d.ts +15 -0
- package/node_modules/es-toolkit/dist/array/shuffle.js +27 -0
- package/node_modules/es-toolkit/dist/array/shuffle.mjs +27 -0
- package/node_modules/es-toolkit/dist/array/sortBy.d.mts +33 -0
- package/node_modules/es-toolkit/dist/array/sortBy.d.ts +33 -0
- package/node_modules/es-toolkit/dist/array/sortBy.js +38 -0
- package/node_modules/es-toolkit/dist/array/sortBy.mjs +38 -0
- package/node_modules/es-toolkit/dist/array/tail.d.mts +65 -0
- package/node_modules/es-toolkit/dist/array/tail.d.ts +65 -0
- package/node_modules/es-toolkit/dist/array/tail.js +29 -0
- package/node_modules/es-toolkit/dist/array/tail.mjs +29 -0
- package/node_modules/es-toolkit/dist/array/take.d.mts +23 -0
- package/node_modules/es-toolkit/dist/array/take.d.ts +23 -0
- package/node_modules/es-toolkit/dist/array/take.js +27 -0
- package/node_modules/es-toolkit/dist/array/take.mjs +27 -0
- package/node_modules/es-toolkit/dist/array/takeRight.d.mts +22 -0
- package/node_modules/es-toolkit/dist/array/takeRight.d.ts +22 -0
- package/node_modules/es-toolkit/dist/array/takeRight.js +27 -0
- package/node_modules/es-toolkit/dist/array/takeRight.mjs +27 -0
- package/node_modules/es-toolkit/dist/array/takeRightWhile.d.mts +23 -0
- package/node_modules/es-toolkit/dist/array/takeRightWhile.d.ts +23 -0
- package/node_modules/es-toolkit/dist/array/takeRightWhile.js +28 -0
- package/node_modules/es-toolkit/dist/array/takeRightWhile.mjs +28 -0
- package/node_modules/es-toolkit/dist/array/takeWhile.d.mts +24 -0
- package/node_modules/es-toolkit/dist/array/takeWhile.d.ts +24 -0
- package/node_modules/es-toolkit/dist/array/takeWhile.js +34 -0
- package/node_modules/es-toolkit/dist/array/takeWhile.mjs +34 -0
- package/node_modules/es-toolkit/dist/array/toFilled.d.mts +90 -0
- package/node_modules/es-toolkit/dist/array/toFilled.d.ts +90 -0
- package/node_modules/es-toolkit/dist/array/toFilled.js +22 -0
- package/node_modules/es-toolkit/dist/array/toFilled.mjs +22 -0
- package/node_modules/es-toolkit/dist/array/union.d.mts +18 -0
- package/node_modules/es-toolkit/dist/array/union.d.ts +18 -0
- package/node_modules/es-toolkit/dist/array/union.js +23 -0
- package/node_modules/es-toolkit/dist/array/union.mjs +23 -0
- package/node_modules/es-toolkit/dist/array/unionBy.d.mts +23 -0
- package/node_modules/es-toolkit/dist/array/unionBy.d.ts +23 -0
- package/node_modules/es-toolkit/dist/array/unionBy.js +28 -0
- package/node_modules/es-toolkit/dist/array/unionBy.mjs +28 -0
- package/node_modules/es-toolkit/dist/array/unionWith.d.mts +21 -0
- package/node_modules/es-toolkit/dist/array/unionWith.d.ts +21 -0
- package/node_modules/es-toolkit/dist/array/unionWith.js +26 -0
- package/node_modules/es-toolkit/dist/array/unionWith.mjs +26 -0
- package/node_modules/es-toolkit/dist/array/uniq.d.mts +16 -0
- package/node_modules/es-toolkit/dist/array/uniq.d.ts +16 -0
- package/node_modules/es-toolkit/dist/array/uniq.js +20 -0
- package/node_modules/es-toolkit/dist/array/uniq.mjs +20 -0
- package/node_modules/es-toolkit/dist/array/uniqBy.d.mts +29 -0
- package/node_modules/es-toolkit/dist/array/uniqBy.d.ts +29 -0
- package/node_modules/es-toolkit/dist/array/uniqBy.js +39 -0
- package/node_modules/es-toolkit/dist/array/uniqBy.mjs +39 -0
- package/node_modules/es-toolkit/dist/array/uniqWith.d.mts +16 -0
- package/node_modules/es-toolkit/dist/array/uniqWith.d.ts +16 -0
- package/node_modules/es-toolkit/dist/array/uniqWith.js +25 -0
- package/node_modules/es-toolkit/dist/array/uniqWith.mjs +25 -0
- package/node_modules/es-toolkit/dist/array/unzip.d.mts +19 -0
- package/node_modules/es-toolkit/dist/array/unzip.d.ts +19 -0
- package/node_modules/es-toolkit/dist/array/unzip.js +28 -0
- package/node_modules/es-toolkit/dist/array/unzip.mjs +28 -0
- package/node_modules/es-toolkit/dist/array/unzipWith.d.mts +15 -0
- package/node_modules/es-toolkit/dist/array/unzipWith.d.ts +15 -0
- package/node_modules/es-toolkit/dist/array/unzipWith.js +26 -0
- package/node_modules/es-toolkit/dist/array/unzipWith.mjs +26 -0
- package/node_modules/es-toolkit/dist/array/windowed.d.mts +48 -0
- package/node_modules/es-toolkit/dist/array/windowed.d.ts +48 -0
- package/node_modules/es-toolkit/dist/array/windowed.js +40 -0
- package/node_modules/es-toolkit/dist/array/windowed.mjs +40 -0
- package/node_modules/es-toolkit/dist/array/without.d.mts +21 -0
- package/node_modules/es-toolkit/dist/array/without.d.ts +21 -0
- package/node_modules/es-toolkit/dist/array/without.js +26 -0
- package/node_modules/es-toolkit/dist/array/without.mjs +26 -0
- package/node_modules/es-toolkit/dist/array/xor.d.mts +18 -0
- package/node_modules/es-toolkit/dist/array/xor.d.ts +18 -0
- package/node_modules/es-toolkit/dist/array/xor.js +25 -0
- package/node_modules/es-toolkit/dist/array/xor.mjs +25 -0
- package/node_modules/es-toolkit/dist/array/xorBy.d.mts +20 -0
- package/node_modules/es-toolkit/dist/array/xorBy.d.ts +20 -0
- package/node_modules/es-toolkit/dist/array/xorBy.js +29 -0
- package/node_modules/es-toolkit/dist/array/xorBy.mjs +29 -0
- package/node_modules/es-toolkit/dist/array/xorWith.d.mts +19 -0
- package/node_modules/es-toolkit/dist/array/xorWith.d.ts +19 -0
- package/node_modules/es-toolkit/dist/array/xorWith.js +28 -0
- package/node_modules/es-toolkit/dist/array/xorWith.mjs +28 -0
- package/node_modules/es-toolkit/dist/array/zip.d.mts +104 -0
- package/node_modules/es-toolkit/dist/array/zip.d.ts +104 -0
- package/node_modules/es-toolkit/dist/array/zip.js +33 -0
- package/node_modules/es-toolkit/dist/array/zip.mjs +33 -0
- package/node_modules/es-toolkit/dist/array/zipObject.d.mts +31 -0
- package/node_modules/es-toolkit/dist/array/zipObject.d.ts +31 -0
- package/node_modules/es-toolkit/dist/array/zipObject.js +37 -0
- package/node_modules/es-toolkit/dist/array/zipObject.mjs +37 -0
- package/node_modules/es-toolkit/dist/array/zipWith.d.mts +70 -0
- package/node_modules/es-toolkit/dist/array/zipWith.d.ts +70 -0
- package/node_modules/es-toolkit/dist/array/zipWith.js +34 -0
- package/node_modules/es-toolkit/dist/array/zipWith.mjs +34 -0
- package/node_modules/es-toolkit/dist/bigint/clamp.d.mts +34 -0
- package/node_modules/es-toolkit/dist/bigint/clamp.d.ts +34 -0
- package/node_modules/es-toolkit/dist/bigint/clamp.js +15 -0
- package/node_modules/es-toolkit/dist/bigint/clamp.mjs +15 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.d.mts +34 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.d.ts +34 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.js +19 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.mjs +19 -0
- package/node_modules/es-toolkit/dist/bigint/index.d.mts +14 -0
- package/node_modules/es-toolkit/dist/bigint/index.d.ts +14 -0
- package/node_modules/es-toolkit/dist/bigint/index.js +27 -0
- package/node_modules/es-toolkit/dist/bigint/index.mjs +14 -0
- package/node_modules/es-toolkit/dist/bigint/max.d.mts +18 -0
- package/node_modules/es-toolkit/dist/bigint/max.d.ts +18 -0
- package/node_modules/es-toolkit/dist/bigint/max.js +25 -0
- package/node_modules/es-toolkit/dist/bigint/max.mjs +25 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.js +33 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.mjs +33 -0
- package/node_modules/es-toolkit/dist/bigint/median.d.mts +19 -0
- package/node_modules/es-toolkit/dist/bigint/median.d.ts +19 -0
- package/node_modules/es-toolkit/dist/bigint/median.js +27 -0
- package/node_modules/es-toolkit/dist/bigint/median.mjs +27 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.js +23 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.mjs +23 -0
- package/node_modules/es-toolkit/dist/bigint/min.d.mts +15 -0
- package/node_modules/es-toolkit/dist/bigint/min.d.ts +15 -0
- package/node_modules/es-toolkit/dist/bigint/min.js +22 -0
- package/node_modules/es-toolkit/dist/bigint/min.mjs +22 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.js +33 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.mjs +33 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.d.mts +20 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.d.ts +20 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.js +30 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.mjs +30 -0
- package/node_modules/es-toolkit/dist/bigint/range.d.mts +42 -0
- package/node_modules/es-toolkit/dist/bigint/range.d.ts +42 -0
- package/node_modules/es-toolkit/dist/bigint/range.js +23 -0
- package/node_modules/es-toolkit/dist/bigint/range.mjs +23 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.d.mts +40 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.d.ts +40 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.js +24 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.mjs +24 -0
- package/node_modules/es-toolkit/dist/bigint/sum.d.mts +15 -0
- package/node_modules/es-toolkit/dist/bigint/sum.d.ts +15 -0
- package/node_modules/es-toolkit/dist/bigint/sum.js +21 -0
- package/node_modules/es-toolkit/dist/bigint/sum.mjs +21 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.d.mts +17 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.d.ts +17 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.js +23 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.mjs +23 -0
- package/node_modules/es-toolkit/dist/browser.global.js +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ArrayIterator.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ArrayIterator.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ConformsPredicateObject.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ConformsPredicateObject.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/EmptyObjectOf.d.mts +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/EmptyObjectOf.d.ts +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/Equals.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/Equals.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/GetFieldType.d.mts +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/GetFieldType.d.ts +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IsEqualCustomizer.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IsEqualCustomizer.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IsMatchWithCustomizer.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IsMatchWithCustomizer.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IsWritable.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IsWritable.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IterateeShorthand.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IterateeShorthand.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratee.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratee.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterateeCustom.d.mts +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterateeCustom.d.ts +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterator.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterator.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratorTypeGuard.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratorTypeGuard.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListOfRecursiveArraysOrValues.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ListOfRecursiveArraysOrValues.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.js +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.mjs +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.js +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.mjs +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/Many.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/Many.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MemoListIterator.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MemoListIterator.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MemoObjectIterator.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MemoObjectIterator.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MutableList.d.mts +4 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MutableList.d.ts +4 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIteratee.d.mts +4 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIteratee.d.ts +4 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIterator.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIterator.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/PartialShallow.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/PartialShallow.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/RecursiveArray.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/RecursiveArray.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/RejectReadonly.d.mts +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/RejectReadonly.d.ts +3 -0
- package/node_modules/es-toolkit/dist/compat/_internal/StringIterator.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/StringIterator.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/TupleIterator.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/TupleIterator.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratee.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratee.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIterateeCustom.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIterateeCustom.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratorTypeGuard.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratorTypeGuard.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIteratee.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIteratee.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIterateeTypeGuard.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIterateeTypeGuard.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/_internal/assignValue.js +8 -0
- package/node_modules/es-toolkit/dist/compat/_internal/assignValue.mjs +8 -0
- package/node_modules/es-toolkit/dist/compat/_internal/baseClone.js +44 -0
- package/node_modules/es-toolkit/dist/compat/_internal/baseClone.mjs +44 -0
- package/node_modules/es-toolkit/dist/compat/_internal/baseIsEqualWith.js +129 -0
- package/node_modules/es-toolkit/dist/compat/_internal/baseIsEqualWith.mjs +129 -0
- package/node_modules/es-toolkit/dist/compat/_internal/basePull.js +26 -0
- package/node_modules/es-toolkit/dist/compat/_internal/basePull.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/_internal/baseToString.js +26 -0
- package/node_modules/es-toolkit/dist/compat/_internal/baseToString.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/_internal/compareValues.js +21 -0
- package/node_modules/es-toolkit/dist/compat/_internal/compareValues.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/_internal/copyArray.js +16 -0
- package/node_modules/es-toolkit/dist/compat/_internal/copyArray.mjs +16 -0
- package/node_modules/es-toolkit/dist/compat/_internal/createPadding.js +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/createPadding.mjs +12 -0
- package/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.js +17 -0
- package/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.mjs +17 -0
- package/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.js +12 -0
- package/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.mjs +12 -0
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbols.js +5 -0
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbols.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.js +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.mjs +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/getTag.js +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/getTag.mjs +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/hasOwn.js +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/hasOwn.mjs +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.js +39 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.mjs +39 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isIndex.js +10 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isIndex.mjs +10 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.js +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.mjs +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isKey.js +26 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isKey.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isPrototype.js +6 -0
- package/node_modules/es-toolkit/dist/compat/_internal/isPrototype.mjs +6 -0
- package/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.js +9 -0
- package/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.mjs +9 -0
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.js +7 -0
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.mjs +7 -0
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeZero.js +12 -0
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeZero.mjs +12 -0
- package/node_modules/es-toolkit/dist/compat/_internal/objectValues.js +8 -0
- package/node_modules/es-toolkit/dist/compat/_internal/objectValues.mjs +8 -0
- package/node_modules/es-toolkit/dist/compat/_internal/regexMultiByte.js +10 -0
- package/node_modules/es-toolkit/dist/compat/_internal/regexMultiByte.mjs +10 -0
- package/node_modules/es-toolkit/dist/compat/_internal/setToEntries.js +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/setToEntries.mjs +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/tags.js +53 -0
- package/node_modules/es-toolkit/dist/compat/_internal/tags.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/_internal/toArray.js +5 -0
- package/node_modules/es-toolkit/dist/compat/_internal/toArray.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/_internal/toKey.js +15 -0
- package/node_modules/es-toolkit/dist/compat/_internal/toKey.mjs +15 -0
- package/node_modules/es-toolkit/dist/compat/_internal/unicodeSize.js +44 -0
- package/node_modules/es-toolkit/dist/compat/_internal/unicodeSize.mjs +44 -0
- package/node_modules/es-toolkit/dist/compat/_internal/words.js +93 -0
- package/node_modules/es-toolkit/dist/compat/_internal/words.mjs +93 -0
- package/node_modules/es-toolkit/dist/compat/array/castArray.d.mts +27 -0
- package/node_modules/es-toolkit/dist/compat/array/castArray.d.ts +27 -0
- package/node_modules/es-toolkit/dist/compat/array/castArray.js +32 -0
- package/node_modules/es-toolkit/dist/compat/array/castArray.mjs +32 -0
- package/node_modules/es-toolkit/dist/compat/array/chunk.d.mts +23 -0
- package/node_modules/es-toolkit/dist/compat/array/chunk.d.ts +23 -0
- package/node_modules/es-toolkit/dist/compat/array/chunk.js +35 -0
- package/node_modules/es-toolkit/dist/compat/array/chunk.mjs +35 -0
- package/node_modules/es-toolkit/dist/compat/array/compact.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/compact.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/compact.js +19 -0
- package/node_modules/es-toolkit/dist/compat/array/compact.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/array/concat.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/concat.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/concat.js +33 -0
- package/node_modules/es-toolkit/dist/compat/array/concat.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/array/countBy.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/array/countBy.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/array/countBy.js +18 -0
- package/node_modules/es-toolkit/dist/compat/array/countBy.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/array/difference.d.mts +26 -0
- package/node_modules/es-toolkit/dist/compat/array/difference.d.ts +26 -0
- package/node_modules/es-toolkit/dist/compat/array/difference.js +40 -0
- package/node_modules/es-toolkit/dist/compat/array/difference.mjs +40 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.d.mts +105 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.d.ts +105 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.js +24 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.d.mts +89 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.d.ts +89 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.js +42 -0
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.mjs +42 -0
- package/node_modules/es-toolkit/dist/compat/array/drop.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/drop.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/drop.js +11 -0
- package/node_modules/es-toolkit/dist/compat/array/drop.mjs +11 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRight.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRight.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRight.js +28 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRight.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.d.mts +34 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.d.ts +34 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.js +42 -0
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.mjs +42 -0
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.d.mts +25 -0
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.d.ts +25 -0
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.js +47 -0
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.mjs +47 -0
- package/node_modules/es-toolkit/dist/compat/array/each.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/array/each.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/array/each.js +2 -0
- package/node_modules/es-toolkit/dist/compat/array/each.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.js +2 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/array/every.d.mts +61 -0
- package/node_modules/es-toolkit/dist/compat/array/every.d.ts +61 -0
- package/node_modules/es-toolkit/dist/compat/array/every.js +38 -0
- package/node_modules/es-toolkit/dist/compat/array/every.mjs +38 -0
- package/node_modules/es-toolkit/dist/compat/array/fill.d.mts +50 -0
- package/node_modules/es-toolkit/dist/compat/array/fill.d.ts +50 -0
- package/node_modules/es-toolkit/dist/compat/array/fill.js +47 -0
- package/node_modules/es-toolkit/dist/compat/array/fill.mjs +47 -0
- package/node_modules/es-toolkit/dist/compat/array/filter.d.mts +75 -0
- package/node_modules/es-toolkit/dist/compat/array/filter.d.ts +75 -0
- package/node_modules/es-toolkit/dist/compat/array/filter.js +49 -0
- package/node_modules/es-toolkit/dist/compat/array/filter.mjs +49 -0
- package/node_modules/es-toolkit/dist/compat/array/find.d.mts +66 -0
- package/node_modules/es-toolkit/dist/compat/array/find.d.ts +66 -0
- package/node_modules/es-toolkit/dist/compat/array/find.js +35 -0
- package/node_modules/es-toolkit/dist/compat/array/find.mjs +35 -0
- package/node_modules/es-toolkit/dist/compat/array/findIndex.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/findIndex.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/findIndex.js +29 -0
- package/node_modules/es-toolkit/dist/compat/array/findIndex.mjs +29 -0
- package/node_modules/es-toolkit/dist/compat/array/findLast.d.mts +79 -0
- package/node_modules/es-toolkit/dist/compat/array/findLast.d.ts +79 -0
- package/node_modules/es-toolkit/dist/compat/array/findLast.js +43 -0
- package/node_modules/es-toolkit/dist/compat/array/findLast.mjs +43 -0
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.d.mts +30 -0
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.d.ts +30 -0
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.js +47 -0
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.mjs +47 -0
- package/node_modules/es-toolkit/dist/compat/array/first.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/array/first.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/array/first.js +2 -0
- package/node_modules/es-toolkit/dist/compat/array/first.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMap.d.mts +90 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMap.d.ts +90 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMap.js +18 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMap.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.d.mts +79 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.d.ts +79 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.js +18 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.d.mts +83 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.d.ts +83 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.js +25 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.mjs +25 -0
- package/node_modules/es-toolkit/dist/compat/array/flatten.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/array/flatten.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/array/flatten.js +17 -0
- package/node_modules/es-toolkit/dist/compat/array/flatten.mjs +17 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.js +17 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.mjs +17 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.d.mts +19 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.d.ts +19 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.js +39 -0
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.mjs +39 -0
- package/node_modules/es-toolkit/dist/compat/array/forEach.d.mts +107 -0
- package/node_modules/es-toolkit/dist/compat/array/forEach.d.ts +107 -0
- package/node_modules/es-toolkit/dist/compat/array/forEach.js +34 -0
- package/node_modules/es-toolkit/dist/compat/array/forEach.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.d.mts +107 -0
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.d.ts +107 -0
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.js +34 -0
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/array/groupBy.d.mts +32 -0
- package/node_modules/es-toolkit/dist/compat/array/groupBy.d.ts +32 -0
- package/node_modules/es-toolkit/dist/compat/array/groupBy.js +51 -0
- package/node_modules/es-toolkit/dist/compat/array/groupBy.mjs +51 -0
- package/node_modules/es-toolkit/dist/compat/array/head.d.mts +30 -0
- package/node_modules/es-toolkit/dist/compat/array/head.d.ts +30 -0
- package/node_modules/es-toolkit/dist/compat/array/head.js +24 -0
- package/node_modules/es-toolkit/dist/compat/array/head.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/array/includes.d.mts +20 -0
- package/node_modules/es-toolkit/dist/compat/array/includes.d.ts +20 -0
- package/node_modules/es-toolkit/dist/compat/array/includes.js +45 -0
- package/node_modules/es-toolkit/dist/compat/array/includes.mjs +45 -0
- package/node_modules/es-toolkit/dist/compat/array/indexOf.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/array/indexOf.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/array/indexOf.js +32 -0
- package/node_modules/es-toolkit/dist/compat/array/indexOf.mjs +32 -0
- package/node_modules/es-toolkit/dist/compat/array/initial.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/initial.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/initial.js +21 -0
- package/node_modules/es-toolkit/dist/compat/array/initial.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/array/intersection.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/array/intersection.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/array/intersection.js +34 -0
- package/node_modules/es-toolkit/dist/compat/array/intersection.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.d.mts +70 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.d.ts +70 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.js +54 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.mjs +54 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.d.mts +66 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.d.ts +66 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.js +40 -0
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.mjs +40 -0
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.d.mts +30 -0
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.d.ts +30 -0
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.js +39 -0
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.mjs +39 -0
- package/node_modules/es-toolkit/dist/compat/array/join.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/array/join.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/array/join.js +19 -0
- package/node_modules/es-toolkit/dist/compat/array/join.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/array/keyBy.d.mts +36 -0
- package/node_modules/es-toolkit/dist/compat/array/keyBy.d.ts +36 -0
- package/node_modules/es-toolkit/dist/compat/array/keyBy.js +43 -0
- package/node_modules/es-toolkit/dist/compat/array/keyBy.mjs +43 -0
- package/node_modules/es-toolkit/dist/compat/array/last.d.mts +23 -0
- package/node_modules/es-toolkit/dist/compat/array/last.d.ts +23 -0
- package/node_modules/es-toolkit/dist/compat/array/last.js +31 -0
- package/node_modules/es-toolkit/dist/compat/array/last.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.d.mts +20 -0
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.d.ts +20 -0
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.js +16 -0
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.mjs +16 -0
- package/node_modules/es-toolkit/dist/compat/array/map.d.mts +107 -0
- package/node_modules/es-toolkit/dist/compat/array/map.d.ts +107 -0
- package/node_modules/es-toolkit/dist/compat/array/map.js +18 -0
- package/node_modules/es-toolkit/dist/compat/array/map.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/array/nth.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/array/nth.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/array/nth.js +21 -0
- package/node_modules/es-toolkit/dist/compat/array/nth.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/array/orderBy.d.mts +83 -0
- package/node_modules/es-toolkit/dist/compat/array/orderBy.d.ts +83 -0
- package/node_modules/es-toolkit/dist/compat/array/orderBy.js +83 -0
- package/node_modules/es-toolkit/dist/compat/array/orderBy.mjs +83 -0
- package/node_modules/es-toolkit/dist/compat/array/partition.d.mts +47 -0
- package/node_modules/es-toolkit/dist/compat/array/partition.d.ts +47 -0
- package/node_modules/es-toolkit/dist/compat/array/partition.js +42 -0
- package/node_modules/es-toolkit/dist/compat/array/partition.mjs +42 -0
- package/node_modules/es-toolkit/dist/compat/array/pull.d.mts +36 -0
- package/node_modules/es-toolkit/dist/compat/array/pull.d.ts +36 -0
- package/node_modules/es-toolkit/dist/compat/array/pull.js +23 -0
- package/node_modules/es-toolkit/dist/compat/array/pull.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAll.d.mts +38 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAll.d.ts +38 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAll.js +23 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAll.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.d.mts +83 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.d.ts +83 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.js +44 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.mjs +44 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.d.mts +86 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.d.ts +86 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.js +42 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.mjs +42 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAt.d.mts +47 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAt.d.ts +47 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAt.js +43 -0
- package/node_modules/es-toolkit/dist/compat/array/pullAt.mjs +43 -0
- package/node_modules/es-toolkit/dist/compat/array/reduce.d.mts +77 -0
- package/node_modules/es-toolkit/dist/compat/array/reduce.d.ts +77 -0
- package/node_modules/es-toolkit/dist/compat/array/reduce.js +55 -0
- package/node_modules/es-toolkit/dist/compat/array/reduce.mjs +55 -0
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.d.mts +115 -0
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.d.ts +115 -0
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.js +55 -0
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.mjs +55 -0
- package/node_modules/es-toolkit/dist/compat/array/reject.d.mts +47 -0
- package/node_modules/es-toolkit/dist/compat/array/reject.d.ts +47 -0
- package/node_modules/es-toolkit/dist/compat/array/reject.js +31 -0
- package/node_modules/es-toolkit/dist/compat/array/reject.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/array/remove.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/array/remove.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/array/remove.js +58 -0
- package/node_modules/es-toolkit/dist/compat/array/remove.mjs +58 -0
- package/node_modules/es-toolkit/dist/compat/array/reverse.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/array/reverse.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/array/reverse.js +27 -0
- package/node_modules/es-toolkit/dist/compat/array/reverse.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/array/sample.d.mts +36 -0
- package/node_modules/es-toolkit/dist/compat/array/sample.d.ts +36 -0
- package/node_modules/es-toolkit/dist/compat/array/sample.js +21 -0
- package/node_modules/es-toolkit/dist/compat/array/sample.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.d.mts +26 -0
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.d.ts +26 -0
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.js +31 -0
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/array/shuffle.d.mts +20 -0
- package/node_modules/es-toolkit/dist/compat/array/shuffle.d.ts +20 -0
- package/node_modules/es-toolkit/dist/compat/array/shuffle.js +24 -0
- package/node_modules/es-toolkit/dist/compat/array/shuffle.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/array/size.d.mts +41 -0
- package/node_modules/es-toolkit/dist/compat/array/size.d.ts +41 -0
- package/node_modules/es-toolkit/dist/compat/array/size.js +13 -0
- package/node_modules/es-toolkit/dist/compat/array/size.mjs +13 -0
- package/node_modules/es-toolkit/dist/compat/array/slice.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/array/slice.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/array/slice.js +39 -0
- package/node_modules/es-toolkit/dist/compat/array/slice.mjs +39 -0
- package/node_modules/es-toolkit/dist/compat/array/some.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/some.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/some.js +89 -0
- package/node_modules/es-toolkit/dist/compat/array/some.mjs +89 -0
- package/node_modules/es-toolkit/dist/compat/array/sortBy.d.mts +70 -0
- package/node_modules/es-toolkit/dist/compat/array/sortBy.d.ts +70 -0
- package/node_modules/es-toolkit/dist/compat/array/sortBy.js +11 -0
- package/node_modules/es-toolkit/dist/compat/array/sortBy.mjs +11 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.js +35 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.mjs +35 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.d.mts +22 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.d.ts +22 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.js +53 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.mjs +53 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.d.mts +32 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.d.ts +32 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.js +41 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.mjs +41 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.js +33 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.js +21 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.d.mts +33 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.d.ts +33 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.js +42 -0
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.mjs +42 -0
- package/node_modules/es-toolkit/dist/compat/array/tail.d.mts +24 -0
- package/node_modules/es-toolkit/dist/compat/array/tail.d.ts +24 -0
- package/node_modules/es-toolkit/dist/compat/array/tail.js +33 -0
- package/node_modules/es-toolkit/dist/compat/array/tail.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/array/take.d.mts +25 -0
- package/node_modules/es-toolkit/dist/compat/array/take.d.ts +25 -0
- package/node_modules/es-toolkit/dist/compat/array/take.js +34 -0
- package/node_modules/es-toolkit/dist/compat/array/take.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRight.d.mts +25 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRight.d.ts +25 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRight.js +33 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRight.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.d.mts +33 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.d.ts +33 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.js +59 -0
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.mjs +59 -0
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.d.mts +33 -0
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.d.ts +33 -0
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.js +58 -0
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.mjs +58 -0
- package/node_modules/es-toolkit/dist/compat/array/union.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/union.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/union.js +37 -0
- package/node_modules/es-toolkit/dist/compat/array/union.mjs +37 -0
- package/node_modules/es-toolkit/dist/compat/array/unionBy.d.mts +90 -0
- package/node_modules/es-toolkit/dist/compat/array/unionBy.d.ts +90 -0
- package/node_modules/es-toolkit/dist/compat/array/unionBy.js +37 -0
- package/node_modules/es-toolkit/dist/compat/array/unionBy.mjs +37 -0
- package/node_modules/es-toolkit/dist/compat/array/unionWith.d.mts +50 -0
- package/node_modules/es-toolkit/dist/compat/array/unionWith.d.ts +50 -0
- package/node_modules/es-toolkit/dist/compat/array/unionWith.js +39 -0
- package/node_modules/es-toolkit/dist/compat/array/unionWith.mjs +39 -0
- package/node_modules/es-toolkit/dist/compat/array/uniq.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/array/uniq.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/array/uniq.js +23 -0
- package/node_modules/es-toolkit/dist/compat/array/uniq.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.js +12 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.mjs +12 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.d.mts +26 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.d.ts +26 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.js +33 -0
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/array/unzip.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/unzip.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/array/unzip.js +27 -0
- package/node_modules/es-toolkit/dist/compat/array/unzip.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.js +32 -0
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.mjs +32 -0
- package/node_modules/es-toolkit/dist/compat/array/without.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/array/without.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/array/without.js +34 -0
- package/node_modules/es-toolkit/dist/compat/array/without.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/array/xor.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/array/xor.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/array/xor.js +37 -0
- package/node_modules/es-toolkit/dist/compat/array/xor.mjs +37 -0
- package/node_modules/es-toolkit/dist/compat/array/xorBy.d.mts +53 -0
- package/node_modules/es-toolkit/dist/compat/array/xorBy.d.ts +53 -0
- package/node_modules/es-toolkit/dist/compat/array/xorBy.js +41 -0
- package/node_modules/es-toolkit/dist/compat/array/xorBy.mjs +41 -0
- package/node_modules/es-toolkit/dist/compat/array/xorWith.d.mts +50 -0
- package/node_modules/es-toolkit/dist/compat/array/xorWith.d.ts +50 -0
- package/node_modules/es-toolkit/dist/compat/array/xorWith.js +38 -0
- package/node_modules/es-toolkit/dist/compat/array/xorWith.mjs +38 -0
- package/node_modules/es-toolkit/dist/compat/array/zip.d.mts +184 -0
- package/node_modules/es-toolkit/dist/compat/array/zip.d.ts +184 -0
- package/node_modules/es-toolkit/dist/compat/array/zip.js +29 -0
- package/node_modules/es-toolkit/dist/compat/array/zip.mjs +29 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObject.d.mts +27 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObject.d.ts +27 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObject.js +40 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObject.mjs +40 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.d.mts +35 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.d.ts +35 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.js +49 -0
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.mjs +49 -0
- package/node_modules/es-toolkit/dist/compat/array/zipWith.d.mts +90 -0
- package/node_modules/es-toolkit/dist/compat/array/zipWith.d.ts +90 -0
- package/node_modules/es-toolkit/dist/compat/array/zipWith.js +34 -0
- package/node_modules/es-toolkit/dist/compat/array/zipWith.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/compat.d.mts +304 -0
- package/node_modules/es-toolkit/dist/compat/compat.d.ts +304 -0
- package/node_modules/es-toolkit/dist/compat/compat.js +907 -0
- package/node_modules/es-toolkit/dist/compat/compat.mjs +603 -0
- package/node_modules/es-toolkit/dist/compat/function/after.d.mts +22 -0
- package/node_modules/es-toolkit/dist/compat/function/after.d.ts +22 -0
- package/node_modules/es-toolkit/dist/compat/function/after.js +31 -0
- package/node_modules/es-toolkit/dist/compat/function/after.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/function/ary.d.mts +22 -0
- package/node_modules/es-toolkit/dist/compat/function/ary.d.ts +22 -0
- package/node_modules/es-toolkit/dist/compat/function/ary.js +27 -0
- package/node_modules/es-toolkit/dist/compat/function/ary.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/function/attempt.d.mts +31 -0
- package/node_modules/es-toolkit/dist/compat/function/attempt.d.ts +31 -0
- package/node_modules/es-toolkit/dist/compat/function/attempt.js +39 -0
- package/node_modules/es-toolkit/dist/compat/function/attempt.mjs +39 -0
- package/node_modules/es-toolkit/dist/compat/function/before.d.mts +24 -0
- package/node_modules/es-toolkit/dist/compat/function/before.d.ts +24 -0
- package/node_modules/es-toolkit/dist/compat/function/before.js +36 -0
- package/node_modules/es-toolkit/dist/compat/function/before.mjs +36 -0
- package/node_modules/es-toolkit/dist/compat/function/bind.d.mts +31 -0
- package/node_modules/es-toolkit/dist/compat/function/bind.d.ts +31 -0
- package/node_modules/es-toolkit/dist/compat/function/bind.js +43 -0
- package/node_modules/es-toolkit/dist/compat/function/bind.mjs +43 -0
- package/node_modules/es-toolkit/dist/compat/function/bindKey.d.mts +44 -0
- package/node_modules/es-toolkit/dist/compat/function/bindKey.d.ts +44 -0
- package/node_modules/es-toolkit/dist/compat/function/bindKey.js +56 -0
- package/node_modules/es-toolkit/dist/compat/function/bindKey.mjs +56 -0
- package/node_modules/es-toolkit/dist/compat/function/curry.d.mts +153 -0
- package/node_modules/es-toolkit/dist/compat/function/curry.d.ts +153 -0
- package/node_modules/es-toolkit/dist/compat/function/curry.js +80 -0
- package/node_modules/es-toolkit/dist/compat/function/curry.mjs +80 -0
- package/node_modules/es-toolkit/dist/compat/function/curryRight.d.mts +84 -0
- package/node_modules/es-toolkit/dist/compat/function/curryRight.d.ts +84 -0
- package/node_modules/es-toolkit/dist/compat/function/curryRight.js +86 -0
- package/node_modules/es-toolkit/dist/compat/function/curryRight.mjs +86 -0
- package/node_modules/es-toolkit/dist/compat/function/debounce.d.mts +143 -0
- package/node_modules/es-toolkit/dist/compat/function/debounce.d.ts +143 -0
- package/node_modules/es-toolkit/dist/compat/function/debounce.js +37 -0
- package/node_modules/es-toolkit/dist/compat/function/debounce.mjs +37 -0
- package/node_modules/es-toolkit/dist/compat/function/defer.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/function/defer.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/function/defer.js +19 -0
- package/node_modules/es-toolkit/dist/compat/function/defer.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/function/delay.d.mts +27 -0
- package/node_modules/es-toolkit/dist/compat/function/delay.d.ts +27 -0
- package/node_modules/es-toolkit/dist/compat/function/delay.js +33 -0
- package/node_modules/es-toolkit/dist/compat/function/delay.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/function/flip.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/flip.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/flip.js +23 -0
- package/node_modules/es-toolkit/dist/compat/function/flip.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/function/flow.d.mts +116 -0
- package/node_modules/es-toolkit/dist/compat/function/flow.d.ts +116 -0
- package/node_modules/es-toolkit/dist/compat/function/flow.js +25 -0
- package/node_modules/es-toolkit/dist/compat/function/flow.mjs +25 -0
- package/node_modules/es-toolkit/dist/compat/function/flowRight.d.mts +114 -0
- package/node_modules/es-toolkit/dist/compat/function/flowRight.d.ts +114 -0
- package/node_modules/es-toolkit/dist/compat/function/flowRight.js +27 -0
- package/node_modules/es-toolkit/dist/compat/function/flowRight.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/function/identity.d.mts +40 -0
- package/node_modules/es-toolkit/dist/compat/function/identity.d.ts +40 -0
- package/node_modules/es-toolkit/dist/compat/function/identity.js +5 -0
- package/node_modules/es-toolkit/dist/compat/function/identity.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/function/memoize.d.mts +118 -0
- package/node_modules/es-toolkit/dist/compat/function/memoize.d.ts +118 -0
- package/node_modules/es-toolkit/dist/compat/function/memoize.js +27 -0
- package/node_modules/es-toolkit/dist/compat/function/memoize.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/function/negate.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/negate.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/negate.js +21 -0
- package/node_modules/es-toolkit/dist/compat/function/negate.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/function/noop.d.mts +10 -0
- package/node_modules/es-toolkit/dist/compat/function/noop.d.ts +10 -0
- package/node_modules/es-toolkit/dist/compat/function/noop.js +12 -0
- package/node_modules/es-toolkit/dist/compat/function/noop.mjs +12 -0
- package/node_modules/es-toolkit/dist/compat/function/nthArg.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/nthArg.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/nthArg.js +28 -0
- package/node_modules/es-toolkit/dist/compat/function/nthArg.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/function/once.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/function/once.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/function/once.js +6 -0
- package/node_modules/es-toolkit/dist/compat/function/once.mjs +6 -0
- package/node_modules/es-toolkit/dist/compat/function/overArgs.d.mts +47 -0
- package/node_modules/es-toolkit/dist/compat/function/overArgs.d.ts +47 -0
- package/node_modules/es-toolkit/dist/compat/function/overArgs.js +64 -0
- package/node_modules/es-toolkit/dist/compat/function/overArgs.mjs +64 -0
- package/node_modules/es-toolkit/dist/compat/function/partial.d.mts +202 -0
- package/node_modules/es-toolkit/dist/compat/function/partial.d.ts +202 -0
- package/node_modules/es-toolkit/dist/compat/function/partial.js +33 -0
- package/node_modules/es-toolkit/dist/compat/function/partial.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/function/partialRight.d.mts +620 -0
- package/node_modules/es-toolkit/dist/compat/function/partialRight.d.ts +620 -0
- package/node_modules/es-toolkit/dist/compat/function/partialRight.js +33 -0
- package/node_modules/es-toolkit/dist/compat/function/partialRight.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/function/rearg.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/rearg.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/function/rearg.js +25 -0
- package/node_modules/es-toolkit/dist/compat/function/rearg.mjs +25 -0
- package/node_modules/es-toolkit/dist/compat/function/rest.d.mts +30 -0
- package/node_modules/es-toolkit/dist/compat/function/rest.d.ts +30 -0
- package/node_modules/es-toolkit/dist/compat/function/rest.js +37 -0
- package/node_modules/es-toolkit/dist/compat/function/rest.mjs +37 -0
- package/node_modules/es-toolkit/dist/compat/function/spread.d.mts +45 -0
- package/node_modules/es-toolkit/dist/compat/function/spread.d.ts +45 -0
- package/node_modules/es-toolkit/dist/compat/function/spread.js +56 -0
- package/node_modules/es-toolkit/dist/compat/function/spread.mjs +56 -0
- package/node_modules/es-toolkit/dist/compat/function/throttle.d.mts +79 -0
- package/node_modules/es-toolkit/dist/compat/function/throttle.d.ts +79 -0
- package/node_modules/es-toolkit/dist/compat/function/throttle.js +41 -0
- package/node_modules/es-toolkit/dist/compat/function/throttle.mjs +41 -0
- package/node_modules/es-toolkit/dist/compat/function/unary.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/function/unary.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/function/unary.js +20 -0
- package/node_modules/es-toolkit/dist/compat/function/unary.mjs +20 -0
- package/node_modules/es-toolkit/dist/compat/function/wrap.d.mts +25 -0
- package/node_modules/es-toolkit/dist/compat/function/wrap.d.ts +25 -0
- package/node_modules/es-toolkit/dist/compat/function/wrap.js +33 -0
- package/node_modules/es-toolkit/dist/compat/function/wrap.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/index.d.mts +296 -0
- package/node_modules/es-toolkit/dist/compat/index.d.ts +296 -0
- package/node_modules/es-toolkit/dist/compat/index.js +598 -0
- package/node_modules/es-toolkit/dist/compat/index.mjs +295 -0
- package/node_modules/es-toolkit/dist/compat/math/add.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/math/add.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/math/add.js +31 -0
- package/node_modules/es-toolkit/dist/compat/math/add.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/math/ceil.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/math/ceil.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/math/ceil.js +18 -0
- package/node_modules/es-toolkit/dist/compat/math/ceil.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/math/clamp.d.mts +24 -0
- package/node_modules/es-toolkit/dist/compat/math/clamp.d.ts +24 -0
- package/node_modules/es-toolkit/dist/compat/math/clamp.js +35 -0
- package/node_modules/es-toolkit/dist/compat/math/clamp.mjs +35 -0
- package/node_modules/es-toolkit/dist/compat/math/divide.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/math/divide.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/math/divide.js +31 -0
- package/node_modules/es-toolkit/dist/compat/math/divide.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/math/floor.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/math/floor.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/math/floor.js +18 -0
- package/node_modules/es-toolkit/dist/compat/math/floor.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/math/inRange.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/math/inRange.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/math/inRange.js +30 -0
- package/node_modules/es-toolkit/dist/compat/math/inRange.mjs +30 -0
- package/node_modules/es-toolkit/dist/compat/math/max.d.mts +8 -0
- package/node_modules/es-toolkit/dist/compat/math/max.d.ts +8 -0
- package/node_modules/es-toolkit/dist/compat/math/max.js +19 -0
- package/node_modules/es-toolkit/dist/compat/math/max.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/math/maxBy.d.mts +30 -0
- package/node_modules/es-toolkit/dist/compat/math/maxBy.d.ts +30 -0
- package/node_modules/es-toolkit/dist/compat/math/maxBy.js +51 -0
- package/node_modules/es-toolkit/dist/compat/math/maxBy.mjs +51 -0
- package/node_modules/es-toolkit/dist/compat/math/mean.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/math/mean.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/math/mean.js +20 -0
- package/node_modules/es-toolkit/dist/compat/math/mean.mjs +20 -0
- package/node_modules/es-toolkit/dist/compat/math/meanBy.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/math/meanBy.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/math/meanBy.js +36 -0
- package/node_modules/es-toolkit/dist/compat/math/meanBy.mjs +36 -0
- package/node_modules/es-toolkit/dist/compat/math/min.d.mts +8 -0
- package/node_modules/es-toolkit/dist/compat/math/min.d.ts +8 -0
- package/node_modules/es-toolkit/dist/compat/math/min.js +19 -0
- package/node_modules/es-toolkit/dist/compat/math/min.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/math/minBy.d.mts +30 -0
- package/node_modules/es-toolkit/dist/compat/math/minBy.d.ts +30 -0
- package/node_modules/es-toolkit/dist/compat/math/minBy.js +51 -0
- package/node_modules/es-toolkit/dist/compat/math/minBy.mjs +51 -0
- package/node_modules/es-toolkit/dist/compat/math/multiply.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/math/multiply.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/math/multiply.js +31 -0
- package/node_modules/es-toolkit/dist/compat/math/multiply.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/math/parseInt.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/math/parseInt.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/math/parseInt.js +24 -0
- package/node_modules/es-toolkit/dist/compat/math/parseInt.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/math/random.d.mts +44 -0
- package/node_modules/es-toolkit/dist/compat/math/random.d.ts +44 -0
- package/node_modules/es-toolkit/dist/compat/math/random.js +57 -0
- package/node_modules/es-toolkit/dist/compat/math/random.mjs +57 -0
- package/node_modules/es-toolkit/dist/compat/math/range.d.mts +31 -0
- package/node_modules/es-toolkit/dist/compat/math/range.d.ts +31 -0
- package/node_modules/es-toolkit/dist/compat/math/range.js +36 -0
- package/node_modules/es-toolkit/dist/compat/math/range.mjs +36 -0
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.d.mts +29 -0
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.d.ts +29 -0
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.js +37 -0
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.mjs +37 -0
- package/node_modules/es-toolkit/dist/compat/math/round.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/math/round.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/math/round.js +18 -0
- package/node_modules/es-toolkit/dist/compat/math/round.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/math/subtract.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/math/subtract.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/math/subtract.js +30 -0
- package/node_modules/es-toolkit/dist/compat/math/subtract.mjs +30 -0
- package/node_modules/es-toolkit/dist/compat/math/sum.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/math/sum.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/math/sum.js +22 -0
- package/node_modules/es-toolkit/dist/compat/math/sum.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/math/sumBy.d.mts +19 -0
- package/node_modules/es-toolkit/dist/compat/math/sumBy.d.ts +19 -0
- package/node_modules/es-toolkit/dist/compat/math/sumBy.js +34 -0
- package/node_modules/es-toolkit/dist/compat/math/sumBy.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/object/assign.d.mts +108 -0
- package/node_modules/es-toolkit/dist/compat/object/assign.d.ts +108 -0
- package/node_modules/es-toolkit/dist/compat/object/assign.js +31 -0
- package/node_modules/es-toolkit/dist/compat/object/assign.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/object/assignIn.d.mts +109 -0
- package/node_modules/es-toolkit/dist/compat/object/assignIn.d.ts +109 -0
- package/node_modules/es-toolkit/dist/compat/object/assignIn.js +31 -0
- package/node_modules/es-toolkit/dist/compat/object/assignIn.mjs +31 -0
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.d.mts +125 -0
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.d.ts +125 -0
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.js +47 -0
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.mjs +47 -0
- package/node_modules/es-toolkit/dist/compat/object/assignWith.d.mts +125 -0
- package/node_modules/es-toolkit/dist/compat/object/assignWith.d.ts +125 -0
- package/node_modules/es-toolkit/dist/compat/object/assignWith.js +47 -0
- package/node_modules/es-toolkit/dist/compat/object/assignWith.mjs +47 -0
- package/node_modules/es-toolkit/dist/compat/object/at.d.mts +32 -0
- package/node_modules/es-toolkit/dist/compat/object/at.d.ts +32 -0
- package/node_modules/es-toolkit/dist/compat/object/at.js +36 -0
- package/node_modules/es-toolkit/dist/compat/object/at.mjs +36 -0
- package/node_modules/es-toolkit/dist/compat/object/clone.d.mts +29 -0
- package/node_modules/es-toolkit/dist/compat/object/clone.d.ts +29 -0
- package/node_modules/es-toolkit/dist/compat/object/clone.js +156 -0
- package/node_modules/es-toolkit/dist/compat/object/clone.mjs +156 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.d.mts +47 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.d.ts +47 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.js +52 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.mjs +52 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.d.mts +33 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.d.ts +33 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.js +178 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.mjs +178 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.d.mts +53 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.d.ts +53 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.js +54 -0
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.mjs +54 -0
- package/node_modules/es-toolkit/dist/compat/object/create.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/object/create.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/object/create.js +30 -0
- package/node_modules/es-toolkit/dist/compat/object/create.mjs +30 -0
- package/node_modules/es-toolkit/dist/compat/object/defaults.d.mts +98 -0
- package/node_modules/es-toolkit/dist/compat/object/defaults.d.ts +98 -0
- package/node_modules/es-toolkit/dist/compat/object/defaults.js +46 -0
- package/node_modules/es-toolkit/dist/compat/object/defaults.mjs +46 -0
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.js +70 -0
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.mjs +70 -0
- package/node_modules/es-toolkit/dist/compat/object/entries.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/entries.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/entries.js +2 -0
- package/node_modules/es-toolkit/dist/compat/object/entries.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.js +2 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.js +2 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.js +2 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/findKey.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/object/findKey.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/object/findKey.js +23 -0
- package/node_modules/es-toolkit/dist/compat/object/findKey.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.js +26 -0
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/object/forIn.d.mts +56 -0
- package/node_modules/es-toolkit/dist/compat/object/forIn.d.ts +56 -0
- package/node_modules/es-toolkit/dist/compat/object/forIn.js +36 -0
- package/node_modules/es-toolkit/dist/compat/object/forIn.mjs +36 -0
- package/node_modules/es-toolkit/dist/compat/object/forInRight.d.mts +56 -0
- package/node_modules/es-toolkit/dist/compat/object/forInRight.d.ts +56 -0
- package/node_modules/es-toolkit/dist/compat/object/forInRight.js +41 -0
- package/node_modules/es-toolkit/dist/compat/object/forInRight.mjs +41 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwn.d.mts +52 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwn.d.ts +52 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwn.js +40 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwn.mjs +40 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.d.mts +52 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.d.ts +52 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.js +40 -0
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.mjs +40 -0
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.d.mts +27 -0
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.d.ts +27 -0
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.js +26 -0
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/object/functions.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/object/functions.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/object/functions.js +28 -0
- package/node_modules/es-toolkit/dist/compat/object/functions.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.js +26 -0
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/object/get.d.mts +324 -0
- package/node_modules/es-toolkit/dist/compat/object/get.d.ts +324 -0
- package/node_modules/es-toolkit/dist/compat/object/get.js +67 -0
- package/node_modules/es-toolkit/dist/compat/object/get.mjs +67 -0
- package/node_modules/es-toolkit/dist/compat/object/has.d.mts +47 -0
- package/node_modules/es-toolkit/dist/compat/object/has.d.ts +47 -0
- package/node_modules/es-toolkit/dist/compat/object/has.js +53 -0
- package/node_modules/es-toolkit/dist/compat/object/has.mjs +53 -0
- package/node_modules/es-toolkit/dist/compat/object/hasIn.d.mts +40 -0
- package/node_modules/es-toolkit/dist/compat/object/hasIn.d.ts +40 -0
- package/node_modules/es-toolkit/dist/compat/object/hasIn.js +62 -0
- package/node_modules/es-toolkit/dist/compat/object/hasIn.mjs +62 -0
- package/node_modules/es-toolkit/dist/compat/object/invert.d.mts +11 -0
- package/node_modules/es-toolkit/dist/compat/object/invert.d.ts +11 -0
- package/node_modules/es-toolkit/dist/compat/object/invert.js +24 -0
- package/node_modules/es-toolkit/dist/compat/object/invert.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/object/invertBy.d.mts +31 -0
- package/node_modules/es-toolkit/dist/compat/object/invertBy.d.ts +31 -0
- package/node_modules/es-toolkit/dist/compat/object/invertBy.js +44 -0
- package/node_modules/es-toolkit/dist/compat/object/invertBy.mjs +44 -0
- package/node_modules/es-toolkit/dist/compat/object/keys.d.mts +20 -0
- package/node_modules/es-toolkit/dist/compat/object/keys.d.ts +20 -0
- package/node_modules/es-toolkit/dist/compat/object/keys.js +49 -0
- package/node_modules/es-toolkit/dist/compat/object/keys.mjs +49 -0
- package/node_modules/es-toolkit/dist/compat/object/keysIn.d.mts +24 -0
- package/node_modules/es-toolkit/dist/compat/object/keysIn.d.ts +24 -0
- package/node_modules/es-toolkit/dist/compat/object/keysIn.js +66 -0
- package/node_modules/es-toolkit/dist/compat/object/keysIn.mjs +66 -0
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.js +27 -0
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/object/mapValues.d.mts +121 -0
- package/node_modules/es-toolkit/dist/compat/object/mapValues.d.ts +121 -0
- package/node_modules/es-toolkit/dist/compat/object/mapValues.js +28 -0
- package/node_modules/es-toolkit/dist/compat/object/mapValues.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/object/merge.d.mts +82 -0
- package/node_modules/es-toolkit/dist/compat/object/merge.d.ts +82 -0
- package/node_modules/es-toolkit/dist/compat/object/merge.js +44 -0
- package/node_modules/es-toolkit/dist/compat/object/merge.mjs +44 -0
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.d.mts +124 -0
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.d.ts +124 -0
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.js +112 -0
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.mjs +112 -0
- package/node_modules/es-toolkit/dist/compat/object/omit.d.mts +42 -0
- package/node_modules/es-toolkit/dist/compat/object/omit.d.ts +42 -0
- package/node_modules/es-toolkit/dist/compat/object/omit.js +75 -0
- package/node_modules/es-toolkit/dist/compat/object/omit.mjs +75 -0
- package/node_modules/es-toolkit/dist/compat/object/omitBy.d.mts +40 -0
- package/node_modules/es-toolkit/dist/compat/object/omitBy.d.ts +40 -0
- package/node_modules/es-toolkit/dist/compat/object/omitBy.js +38 -0
- package/node_modules/es-toolkit/dist/compat/object/omitBy.mjs +38 -0
- package/node_modules/es-toolkit/dist/compat/object/pick.d.mts +31 -0
- package/node_modules/es-toolkit/dist/compat/object/pick.d.ts +31 -0
- package/node_modules/es-toolkit/dist/compat/object/pick.js +60 -0
- package/node_modules/es-toolkit/dist/compat/object/pick.mjs +60 -0
- package/node_modules/es-toolkit/dist/compat/object/pickBy.d.mts +77 -0
- package/node_modules/es-toolkit/dist/compat/object/pickBy.d.ts +77 -0
- package/node_modules/es-toolkit/dist/compat/object/pickBy.js +40 -0
- package/node_modules/es-toolkit/dist/compat/object/pickBy.mjs +40 -0
- package/node_modules/es-toolkit/dist/compat/object/property.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/property.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/property.js +26 -0
- package/node_modules/es-toolkit/dist/compat/object/property.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.js +28 -0
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/object/result.d.mts +34 -0
- package/node_modules/es-toolkit/dist/compat/object/result.d.ts +34 -0
- package/node_modules/es-toolkit/dist/compat/object/result.js +49 -0
- package/node_modules/es-toolkit/dist/compat/object/result.mjs +49 -0
- package/node_modules/es-toolkit/dist/compat/object/set.d.mts +57 -0
- package/node_modules/es-toolkit/dist/compat/object/set.d.ts +57 -0
- package/node_modules/es-toolkit/dist/compat/object/set.js +33 -0
- package/node_modules/es-toolkit/dist/compat/object/set.mjs +33 -0
- package/node_modules/es-toolkit/dist/compat/object/setWith.d.mts +48 -0
- package/node_modules/es-toolkit/dist/compat/object/setWith.d.ts +48 -0
- package/node_modules/es-toolkit/dist/compat/object/setWith.js +32 -0
- package/node_modules/es-toolkit/dist/compat/object/setWith.mjs +32 -0
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.d.mts +120 -0
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.d.ts +120 -0
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.js +30 -0
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.mjs +30 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairs.d.mts +23 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairs.d.ts +23 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairs.js +37 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairs.mjs +37 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.d.mts +23 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.d.ts +23 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.js +35 -0
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.mjs +35 -0
- package/node_modules/es-toolkit/dist/compat/object/transform.d.mts +72 -0
- package/node_modules/es-toolkit/dist/compat/object/transform.d.ts +72 -0
- package/node_modules/es-toolkit/dist/compat/object/transform.js +45 -0
- package/node_modules/es-toolkit/dist/compat/object/transform.mjs +45 -0
- package/node_modules/es-toolkit/dist/compat/object/unset.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/object/unset.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/object/unset.js +68 -0
- package/node_modules/es-toolkit/dist/compat/object/unset.mjs +68 -0
- package/node_modules/es-toolkit/dist/compat/object/update.d.mts +11 -0
- package/node_modules/es-toolkit/dist/compat/object/update.d.ts +11 -0
- package/node_modules/es-toolkit/dist/compat/object/update.js +15 -0
- package/node_modules/es-toolkit/dist/compat/object/update.mjs +15 -0
- package/node_modules/es-toolkit/dist/compat/object/updateWith.d.mts +36 -0
- package/node_modules/es-toolkit/dist/compat/object/updateWith.d.ts +36 -0
- package/node_modules/es-toolkit/dist/compat/object/updateWith.js +50 -0
- package/node_modules/es-toolkit/dist/compat/object/updateWith.mjs +50 -0
- package/node_modules/es-toolkit/dist/compat/object/values.d.mts +35 -0
- package/node_modules/es-toolkit/dist/compat/object/values.d.ts +35 -0
- package/node_modules/es-toolkit/dist/compat/object/values.js +19 -0
- package/node_modules/es-toolkit/dist/compat/object/values.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.d.mts +24 -0
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.d.ts +24 -0
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.js +27 -0
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.js +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.mjs +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.d.mts +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.d.ts +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.js +42 -0
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.mjs +42 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.js +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.d.mts +43 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.d.ts +43 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.js +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.mjs +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.js +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.d.mts +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.d.ts +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.js +20 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.mjs +20 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.d.mts +7 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.d.ts +7 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.js +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.d.mts +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.d.ts +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.js +27 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.d.mts +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.d.ts +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.js +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.js +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.d.mts +11 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.d.ts +11 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.js +17 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.mjs +17 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.d.mts +9 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.d.ts +9 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.js +47 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.mjs +47 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqual.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqual.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqual.js +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqual.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.d.mts +37 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.d.ts +37 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.js +48 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.mjs +48 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isError.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isError.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isError.js +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isError.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.d.mts +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.d.ts +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.js +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.mjs +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.js +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.js +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.d.mts +22 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.d.ts +22 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.js +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.js +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.d.mts +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.d.ts +29 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.js +34 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.mjs +34 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.js +165 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.mjs +164 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.js +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.js +27 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.d.mts +20 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.d.ts +20 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.js +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.js +16 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.mjs +16 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.js +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.mjs +25 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.d.mts +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.d.ts +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.js +28 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.d.mts +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.d.ts +24 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.js +28 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.d.mts +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.d.ts +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.js +39 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.mjs +39 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.js +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.d.mts +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.d.ts +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.js +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.js +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isString.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isString.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isString.js +22 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isString.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.js +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.js +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.js +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.js +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.js +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matches.d.mts +27 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matches.d.ts +27 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matches.js +36 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matches.mjs +36 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.d.mts +35 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.d.ts +35 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js +47 -0
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.mjs +47 -0
- package/node_modules/es-toolkit/dist/compat/string/camelCase.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/string/camelCase.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/string/camelCase.js +27 -0
- package/node_modules/es-toolkit/dist/compat/string/camelCase.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/string/capitalize.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/capitalize.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/capitalize.js +18 -0
- package/node_modules/es-toolkit/dist/compat/string/capitalize.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/string/deburr.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/string/deburr.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/string/deburr.js +54 -0
- package/node_modules/es-toolkit/dist/compat/string/deburr.mjs +54 -0
- package/node_modules/es-toolkit/dist/compat/string/endsWith.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/endsWith.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/endsWith.js +24 -0
- package/node_modules/es-toolkit/dist/compat/string/endsWith.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/string/escape.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/escape.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/escape.js +20 -0
- package/node_modules/es-toolkit/dist/compat/string/escape.mjs +20 -0
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.js +18 -0
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.js +22 -0
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.js +22 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.js +18 -0
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/string/pad.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/string/pad.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/string/pad.js +30 -0
- package/node_modules/es-toolkit/dist/compat/string/pad.mjs +30 -0
- package/node_modules/es-toolkit/dist/compat/string/padEnd.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/padEnd.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/padEnd.js +29 -0
- package/node_modules/es-toolkit/dist/compat/string/padEnd.mjs +29 -0
- package/node_modules/es-toolkit/dist/compat/string/padStart.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/padStart.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/padStart.js +29 -0
- package/node_modules/es-toolkit/dist/compat/string/padStart.mjs +29 -0
- package/node_modules/es-toolkit/dist/compat/string/repeat.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/repeat.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/repeat.js +26 -0
- package/node_modules/es-toolkit/dist/compat/string/repeat.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/string/replace.d.mts +4 -0
- package/node_modules/es-toolkit/dist/compat/string/replace.d.ts +4 -0
- package/node_modules/es-toolkit/dist/compat/string/replace.js +21 -0
- package/node_modules/es-toolkit/dist/compat/string/replace.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.js +22 -0
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/string/split.d.mts +34 -0
- package/node_modules/es-toolkit/dist/compat/string/split.d.ts +34 -0
- package/node_modules/es-toolkit/dist/compat/string/split.js +6 -0
- package/node_modules/es-toolkit/dist/compat/string/split.mjs +6 -0
- package/node_modules/es-toolkit/dist/compat/string/startCase.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/startCase.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/startCase.js +30 -0
- package/node_modules/es-toolkit/dist/compat/string/startCase.mjs +30 -0
- package/node_modules/es-toolkit/dist/compat/string/startsWith.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/startsWith.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/startsWith.js +24 -0
- package/node_modules/es-toolkit/dist/compat/string/startsWith.mjs +24 -0
- package/node_modules/es-toolkit/dist/compat/string/template.d.mts +27 -0
- package/node_modules/es-toolkit/dist/compat/string/template.d.ts +27 -0
- package/node_modules/es-toolkit/dist/compat/string/template.js +142 -0
- package/node_modules/es-toolkit/dist/compat/string/template.mjs +141 -0
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.js +3 -0
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.mjs +4 -0
- package/node_modules/es-toolkit/dist/compat/string/toLower.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/toLower.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/toLower.js +23 -0
- package/node_modules/es-toolkit/dist/compat/string/toLower.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/string/toUpper.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/toUpper.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/toUpper.js +23 -0
- package/node_modules/es-toolkit/dist/compat/string/toUpper.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/string/trim.d.mts +26 -0
- package/node_modules/es-toolkit/dist/compat/string/trim.d.ts +26 -0
- package/node_modules/es-toolkit/dist/compat/string/trim.js +15 -0
- package/node_modules/es-toolkit/dist/compat/string/trim.mjs +15 -0
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.js +28 -0
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/string/trimStart.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/string/trimStart.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/string/trimStart.js +28 -0
- package/node_modules/es-toolkit/dist/compat/string/trimStart.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/string/truncate.d.mts +33 -0
- package/node_modules/es-toolkit/dist/compat/string/truncate.d.ts +33 -0
- package/node_modules/es-toolkit/dist/compat/string/truncate.js +65 -0
- package/node_modules/es-toolkit/dist/compat/string/truncate.mjs +65 -0
- package/node_modules/es-toolkit/dist/compat/string/unescape.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/unescape.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/string/unescape.js +20 -0
- package/node_modules/es-toolkit/dist/compat/string/unescape.mjs +20 -0
- package/node_modules/es-toolkit/dist/compat/string/upperCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/upperCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/string/upperCase.js +22 -0
- package/node_modules/es-toolkit/dist/compat/string/upperCase.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.d.mts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.d.ts +12 -0
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.js +18 -0
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/string/words.d.mts +25 -0
- package/node_modules/es-toolkit/dist/compat/string/words.d.ts +25 -0
- package/node_modules/es-toolkit/dist/compat/string/words.js +22 -0
- package/node_modules/es-toolkit/dist/compat/string/words.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/toolkit.d.mts +6 -0
- package/node_modules/es-toolkit/dist/compat/toolkit.d.ts +6 -0
- package/node_modules/es-toolkit/dist/compat/toolkit.js +9 -0
- package/node_modules/es-toolkit/dist/compat/toolkit.mjs +9 -0
- package/node_modules/es-toolkit/dist/compat/types/PropertyPath.d.mts +2 -0
- package/node_modules/es-toolkit/dist/compat/types/PropertyPath.d.ts +2 -0
- package/node_modules/es-toolkit/dist/compat/util/bindAll.d.mts +28 -0
- package/node_modules/es-toolkit/dist/compat/util/bindAll.d.ts +28 -0
- package/node_modules/es-toolkit/dist/compat/util/bindAll.js +52 -0
- package/node_modules/es-toolkit/dist/compat/util/bindAll.mjs +52 -0
- package/node_modules/es-toolkit/dist/compat/util/cond.d.mts +56 -0
- package/node_modules/es-toolkit/dist/compat/util/cond.d.ts +56 -0
- package/node_modules/es-toolkit/dist/compat/util/cond.js +21 -0
- package/node_modules/es-toolkit/dist/compat/util/cond.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/util/constant.d.mts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/constant.d.ts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/constant.js +19 -0
- package/node_modules/es-toolkit/dist/compat/util/constant.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.d.mts +19 -0
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.d.ts +19 -0
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.js +22 -0
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.mjs +22 -0
- package/node_modules/es-toolkit/dist/compat/util/eq.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/util/eq.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/util/eq.js +18 -0
- package/node_modules/es-toolkit/dist/compat/util/eq.mjs +18 -0
- package/node_modules/es-toolkit/dist/compat/util/gt.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/gt.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/gt.js +19 -0
- package/node_modules/es-toolkit/dist/compat/util/gt.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/util/gte.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/gte.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/gte.js +19 -0
- package/node_modules/es-toolkit/dist/compat/util/gte.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/util/invoke.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/util/invoke.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/util/invoke.js +51 -0
- package/node_modules/es-toolkit/dist/compat/util/invoke.mjs +51 -0
- package/node_modules/es-toolkit/dist/compat/util/iteratee.d.mts +31 -0
- package/node_modules/es-toolkit/dist/compat/util/iteratee.d.ts +31 -0
- package/node_modules/es-toolkit/dist/compat/util/iteratee.js +46 -0
- package/node_modules/es-toolkit/dist/compat/util/iteratee.mjs +46 -0
- package/node_modules/es-toolkit/dist/compat/util/lt.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/lt.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/lt.js +19 -0
- package/node_modules/es-toolkit/dist/compat/util/lt.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/util/lte.d.mts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/lte.d.ts +13 -0
- package/node_modules/es-toolkit/dist/compat/util/lte.js +19 -0
- package/node_modules/es-toolkit/dist/compat/util/lte.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/util/method.d.mts +20 -0
- package/node_modules/es-toolkit/dist/compat/util/method.d.ts +20 -0
- package/node_modules/es-toolkit/dist/compat/util/method.js +27 -0
- package/node_modules/es-toolkit/dist/compat/util/method.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/util/methodOf.d.mts +20 -0
- package/node_modules/es-toolkit/dist/compat/util/methodOf.d.ts +20 -0
- package/node_modules/es-toolkit/dist/compat/util/methodOf.js +27 -0
- package/node_modules/es-toolkit/dist/compat/util/methodOf.mjs +27 -0
- package/node_modules/es-toolkit/dist/compat/util/now.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/util/now.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/util/now.js +20 -0
- package/node_modules/es-toolkit/dist/compat/util/now.mjs +20 -0
- package/node_modules/es-toolkit/dist/compat/util/over.d.mts +27 -0
- package/node_modules/es-toolkit/dist/compat/util/over.d.ts +27 -0
- package/node_modules/es-toolkit/dist/compat/util/over.js +36 -0
- package/node_modules/es-toolkit/dist/compat/util/over.mjs +36 -0
- package/node_modules/es-toolkit/dist/compat/util/overEvery.d.mts +65 -0
- package/node_modules/es-toolkit/dist/compat/util/overEvery.d.ts +65 -0
- package/node_modules/es-toolkit/dist/compat/util/overEvery.js +60 -0
- package/node_modules/es-toolkit/dist/compat/util/overEvery.mjs +60 -0
- package/node_modules/es-toolkit/dist/compat/util/overSome.d.mts +67 -0
- package/node_modules/es-toolkit/dist/compat/util/overSome.d.ts +67 -0
- package/node_modules/es-toolkit/dist/compat/util/overSome.js +62 -0
- package/node_modules/es-toolkit/dist/compat/util/overSome.mjs +62 -0
- package/node_modules/es-toolkit/dist/compat/util/stubArray.d.mts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/stubArray.d.ts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/stubArray.js +5 -0
- package/node_modules/es-toolkit/dist/compat/util/stubArray.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.js +5 -0
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/util/stubObject.d.mts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/stubObject.d.ts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/stubObject.js +12 -0
- package/node_modules/es-toolkit/dist/compat/util/stubObject.mjs +12 -0
- package/node_modules/es-toolkit/dist/compat/util/stubString.d.mts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/stubString.d.ts +8 -0
- package/node_modules/es-toolkit/dist/compat/util/stubString.js +5 -0
- package/node_modules/es-toolkit/dist/compat/util/stubString.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.d.mts +16 -0
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.d.ts +16 -0
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.js +5 -0
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/util/times.d.mts +21 -0
- package/node_modules/es-toolkit/dist/compat/util/times.d.ts +21 -0
- package/node_modules/es-toolkit/dist/compat/util/times.js +21 -0
- package/node_modules/es-toolkit/dist/compat/util/times.mjs +21 -0
- package/node_modules/es-toolkit/dist/compat/util/toArray.d.mts +33 -0
- package/node_modules/es-toolkit/dist/compat/util/toArray.d.ts +33 -0
- package/node_modules/es-toolkit/dist/compat/util/toArray.js +28 -0
- package/node_modules/es-toolkit/dist/compat/util/toArray.mjs +28 -0
- package/node_modules/es-toolkit/dist/compat/util/toFinite.d.mts +15 -0
- package/node_modules/es-toolkit/dist/compat/util/toFinite.d.ts +15 -0
- package/node_modules/es-toolkit/dist/compat/util/toFinite.js +23 -0
- package/node_modules/es-toolkit/dist/compat/util/toFinite.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/util/toInteger.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/util/toInteger.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/util/toInteger.js +25 -0
- package/node_modules/es-toolkit/dist/compat/util/toInteger.mjs +25 -0
- package/node_modules/es-toolkit/dist/compat/util/toLength.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/toLength.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/toLength.js +25 -0
- package/node_modules/es-toolkit/dist/compat/util/toLength.mjs +25 -0
- package/node_modules/es-toolkit/dist/compat/util/toNumber.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/toNumber.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/toNumber.js +23 -0
- package/node_modules/es-toolkit/dist/compat/util/toNumber.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/util/toPath.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/util/toPath.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/util/toPath.js +75 -0
- package/node_modules/es-toolkit/dist/compat/util/toPath.mjs +75 -0
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.d.mts +14 -0
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.d.ts +14 -0
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.js +32 -0
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.mjs +32 -0
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.js +26 -0
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.mjs +26 -0
- package/node_modules/es-toolkit/dist/compat/util/toString.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/toString.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/toString.js +23 -0
- package/node_modules/es-toolkit/dist/compat/util/toString.mjs +23 -0
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.d.mts +23 -0
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.d.ts +23 -0
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.js +29 -0
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.mjs +29 -0
- package/node_modules/es-toolkit/dist/error/AbortError.d.mts +8 -0
- package/node_modules/es-toolkit/dist/error/AbortError.d.ts +8 -0
- package/node_modules/es-toolkit/dist/error/AbortError.js +12 -0
- package/node_modules/es-toolkit/dist/error/AbortError.mjs +12 -0
- package/node_modules/es-toolkit/dist/error/TimeoutError.d.mts +8 -0
- package/node_modules/es-toolkit/dist/error/TimeoutError.d.ts +8 -0
- package/node_modules/es-toolkit/dist/error/TimeoutError.js +12 -0
- package/node_modules/es-toolkit/dist/error/TimeoutError.mjs +12 -0
- package/node_modules/es-toolkit/dist/error/index.d.mts +3 -0
- package/node_modules/es-toolkit/dist/error/index.d.ts +3 -0
- package/node_modules/es-toolkit/dist/error/index.js +5 -0
- package/node_modules/es-toolkit/dist/error/index.mjs +3 -0
- package/node_modules/es-toolkit/dist/fp/_internal/lazy.js +57 -0
- package/node_modules/es-toolkit/dist/fp/_internal/lazy.mjs +56 -0
- package/node_modules/es-toolkit/dist/fp/array/at.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/at.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/at.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/at.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.d.mts +58 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.d.ts +58 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.js +8 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.mjs +8 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.js +30 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.mjs +30 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.js +32 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.mjs +32 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.js +30 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.mjs +30 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.js +35 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.mjs +35 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.d.mts +42 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.d.ts +42 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.js +12 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.mjs +12 -0
- package/node_modules/es-toolkit/dist/fp/array/find.d.mts +36 -0
- package/node_modules/es-toolkit/dist/fp/array/find.d.ts +36 -0
- package/node_modules/es-toolkit/dist/fp/array/find.js +7 -0
- package/node_modules/es-toolkit/dist/fp/array/find.mjs +7 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.d.mts +36 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.d.ts +36 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.js +10 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.mjs +10 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.d.mts +25 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.d.ts +25 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.js +38 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.js +37 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.mjs +37 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.js +38 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.js +35 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.mjs +35 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.js +32 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.mjs +32 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/head.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/head.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/head.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/head.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/index.d.mts +70 -0
- package/node_modules/es-toolkit/dist/fp/array/index.d.ts +70 -0
- package/node_modules/es-toolkit/dist/fp/array/index.js +136 -0
- package/node_modules/es-toolkit/dist/fp/array/index.mjs +69 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.js +38 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/join.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/join.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/join.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/join.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/last.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/last.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/last.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/last.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/length.d.mts +15 -0
- package/node_modules/es-toolkit/dist/fp/array/length.d.ts +15 -0
- package/node_modules/es-toolkit/dist/fp/array/length.js +21 -0
- package/node_modules/es-toolkit/dist/fp/array/length.mjs +21 -0
- package/node_modules/es-toolkit/dist/fp/array/map.d.mts +24 -0
- package/node_modules/es-toolkit/dist/fp/array/map.d.ts +24 -0
- package/node_modules/es-toolkit/dist/fp/array/map.js +35 -0
- package/node_modules/es-toolkit/dist/fp/array/map.mjs +35 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.js +27 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.js +27 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.d.mts +36 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.d.ts +36 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.js +8 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.mjs +8 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.js +22 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.mjs +22 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.d.mts +15 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.d.ts +15 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.js +22 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.mjs +22 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.d.mts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.d.ts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.js +30 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.mjs +30 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/take.d.mts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/take.d.ts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/take.js +38 -0
- package/node_modules/es-toolkit/dist/fp/array/take.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.js +29 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.mjs +29 -0
- package/node_modules/es-toolkit/dist/fp/array/union.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/union.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/union.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/union.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.js +35 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.mjs +35 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.js +37 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.mjs +37 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.js +34 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.mjs +34 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.js +49 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.mjs +49 -0
- package/node_modules/es-toolkit/dist/fp/array/without.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/without.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/array/without.js +29 -0
- package/node_modules/es-toolkit/dist/fp/array/without.mjs +29 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.d.mts +58 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.d.ts +58 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.js +8 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.mjs +8 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.d.mts +54 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.d.ts +54 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.js +8 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.mjs +8 -0
- package/node_modules/es-toolkit/dist/fp/flow.d.mts +210 -0
- package/node_modules/es-toolkit/dist/fp/flow.d.ts +210 -0
- package/node_modules/es-toolkit/dist/fp/flow.js +49 -0
- package/node_modules/es-toolkit/dist/fp/flow.mjs +49 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.d.mts +210 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.d.ts +210 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.js +36 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.mjs +36 -0
- package/node_modules/es-toolkit/dist/fp/index.d.mts +80 -0
- package/node_modules/es-toolkit/dist/fp/index.d.ts +80 -0
- package/node_modules/es-toolkit/dist/fp/index.js +154 -0
- package/node_modules/es-toolkit/dist/fp/index.mjs +79 -0
- package/node_modules/es-toolkit/dist/fp/iterator/cartesianProduct.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/cartesianProduct.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/cartesianProduct.js +27 -0
- package/node_modules/es-toolkit/dist/fp/iterator/cartesianProduct.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.d.mts +15 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.d.ts +15 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.js +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.mjs +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.d.mts +34 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.d.ts +34 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.js +7 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.mjs +7 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.js +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/index.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/index.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/index.js +43 -0
- package/node_modules/es-toolkit/dist/fp/iterator/index.mjs +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/map.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/map.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/map.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/map.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.js +26 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.js +27 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.js +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/math/add.d.mts +14 -0
- package/node_modules/es-toolkit/dist/fp/math/add.d.ts +14 -0
- package/node_modules/es-toolkit/dist/fp/math/add.js +20 -0
- package/node_modules/es-toolkit/dist/fp/math/add.mjs +20 -0
- package/node_modules/es-toolkit/dist/fp/math/index.d.mts +3 -0
- package/node_modules/es-toolkit/dist/fp/math/index.d.ts +3 -0
- package/node_modules/es-toolkit/dist/fp/math/index.js +4 -0
- package/node_modules/es-toolkit/dist/fp/math/index.mjs +3 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.d.mts +14 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.d.ts +14 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.js +20 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.mjs +20 -0
- package/node_modules/es-toolkit/dist/fp/object/index.d.mts +3 -0
- package/node_modules/es-toolkit/dist/fp/object/index.d.ts +3 -0
- package/node_modules/es-toolkit/dist/fp/object/index.js +4 -0
- package/node_modules/es-toolkit/dist/fp/object/index.mjs +3 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.d.mts +15 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.d.ts +15 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.js +22 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.mjs +22 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.d.mts +16 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.d.ts +16 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.js +23 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/pipe.d.mts +232 -0
- package/node_modules/es-toolkit/dist/fp/pipe.d.ts +232 -0
- package/node_modules/es-toolkit/dist/fp/pipe.js +111 -0
- package/node_modules/es-toolkit/dist/fp/pipe.mjs +111 -0
- package/node_modules/es-toolkit/dist/function/after.d.mts +29 -0
- package/node_modules/es-toolkit/dist/function/after.d.ts +29 -0
- package/node_modules/es-toolkit/dist/function/after.js +37 -0
- package/node_modules/es-toolkit/dist/function/after.mjs +37 -0
- package/node_modules/es-toolkit/dist/function/ary.d.mts +19 -0
- package/node_modules/es-toolkit/dist/function/ary.d.ts +19 -0
- package/node_modules/es-toolkit/dist/function/ary.js +25 -0
- package/node_modules/es-toolkit/dist/function/ary.mjs +25 -0
- package/node_modules/es-toolkit/dist/function/asyncNoop.d.mts +10 -0
- package/node_modules/es-toolkit/dist/function/asyncNoop.d.ts +10 -0
- package/node_modules/es-toolkit/dist/function/asyncNoop.js +12 -0
- package/node_modules/es-toolkit/dist/function/asyncNoop.mjs +12 -0
- package/node_modules/es-toolkit/dist/function/before.d.mts +29 -0
- package/node_modules/es-toolkit/dist/function/before.d.ts +29 -0
- package/node_modules/es-toolkit/dist/function/before.js +37 -0
- package/node_modules/es-toolkit/dist/function/before.mjs +37 -0
- package/node_modules/es-toolkit/dist/function/curry.d.mts +124 -0
- package/node_modules/es-toolkit/dist/function/curry.d.ts +124 -0
- package/node_modules/es-toolkit/dist/function/curry.js +40 -0
- package/node_modules/es-toolkit/dist/function/curry.mjs +40 -0
- package/node_modules/es-toolkit/dist/function/curryRight.d.mts +138 -0
- package/node_modules/es-toolkit/dist/function/curryRight.d.ts +138 -0
- package/node_modules/es-toolkit/dist/function/curryRight.js +42 -0
- package/node_modules/es-toolkit/dist/function/curryRight.mjs +42 -0
- package/node_modules/es-toolkit/dist/function/debounce.d.mts +71 -0
- package/node_modules/es-toolkit/dist/function/debounce.d.ts +71 -0
- package/node_modules/es-toolkit/dist/function/debounce.js +90 -0
- package/node_modules/es-toolkit/dist/function/debounce.mjs +90 -0
- package/node_modules/es-toolkit/dist/function/flow.d.mts +130 -0
- package/node_modules/es-toolkit/dist/function/flow.d.ts +130 -0
- package/node_modules/es-toolkit/dist/function/flow.js +24 -0
- package/node_modules/es-toolkit/dist/function/flow.mjs +24 -0
- package/node_modules/es-toolkit/dist/function/flowRight.d.mts +142 -0
- package/node_modules/es-toolkit/dist/function/flowRight.d.ts +142 -0
- package/node_modules/es-toolkit/dist/function/flowRight.js +23 -0
- package/node_modules/es-toolkit/dist/function/flowRight.mjs +23 -0
- package/node_modules/es-toolkit/dist/function/identity.d.mts +20 -0
- package/node_modules/es-toolkit/dist/function/identity.d.ts +20 -0
- package/node_modules/es-toolkit/dist/function/identity.js +24 -0
- package/node_modules/es-toolkit/dist/function/identity.mjs +24 -0
- package/node_modules/es-toolkit/dist/function/index.d.mts +22 -0
- package/node_modules/es-toolkit/dist/function/index.d.ts +22 -0
- package/node_modules/es-toolkit/dist/function/index.js +43 -0
- package/node_modules/es-toolkit/dist/function/index.mjs +22 -0
- package/node_modules/es-toolkit/dist/function/memoize.d.mts +123 -0
- package/node_modules/es-toolkit/dist/function/memoize.d.ts +123 -0
- package/node_modules/es-toolkit/dist/function/memoize.js +87 -0
- package/node_modules/es-toolkit/dist/function/memoize.mjs +87 -0
- package/node_modules/es-toolkit/dist/function/negate.d.mts +14 -0
- package/node_modules/es-toolkit/dist/function/negate.d.ts +14 -0
- package/node_modules/es-toolkit/dist/function/negate.js +18 -0
- package/node_modules/es-toolkit/dist/function/negate.mjs +18 -0
- package/node_modules/es-toolkit/dist/function/noop.d.mts +10 -0
- package/node_modules/es-toolkit/dist/function/noop.d.ts +10 -0
- package/node_modules/es-toolkit/dist/function/noop.js +12 -0
- package/node_modules/es-toolkit/dist/function/noop.mjs +12 -0
- package/node_modules/es-toolkit/dist/function/once.d.mts +15 -0
- package/node_modules/es-toolkit/dist/function/once.d.ts +15 -0
- package/node_modules/es-toolkit/dist/function/once.js +30 -0
- package/node_modules/es-toolkit/dist/function/once.mjs +30 -0
- package/node_modules/es-toolkit/dist/function/partial.d.mts +620 -0
- package/node_modules/es-toolkit/dist/function/partial.d.ts +620 -0
- package/node_modules/es-toolkit/dist/function/partial.js +44 -0
- package/node_modules/es-toolkit/dist/function/partial.mjs +43 -0
- package/node_modules/es-toolkit/dist/function/partialRight.d.mts +628 -0
- package/node_modules/es-toolkit/dist/function/partialRight.d.ts +628 -0
- package/node_modules/es-toolkit/dist/function/partialRight.js +46 -0
- package/node_modules/es-toolkit/dist/function/partialRight.mjs +45 -0
- package/node_modules/es-toolkit/dist/function/rest.d.mts +31 -0
- package/node_modules/es-toolkit/dist/function/rest.d.ts +31 -0
- package/node_modules/es-toolkit/dist/function/rest.js +40 -0
- package/node_modules/es-toolkit/dist/function/rest.mjs +40 -0
- package/node_modules/es-toolkit/dist/function/retry.d.mts +92 -0
- package/node_modules/es-toolkit/dist/function/retry.d.ts +92 -0
- package/node_modules/es-toolkit/dist/function/retry.js +46 -0
- package/node_modules/es-toolkit/dist/function/retry.mjs +46 -0
- package/node_modules/es-toolkit/dist/function/spread.d.mts +17 -0
- package/node_modules/es-toolkit/dist/function/spread.d.ts +17 -0
- package/node_modules/es-toolkit/dist/function/spread.js +23 -0
- package/node_modules/es-toolkit/dist/function/spread.mjs +23 -0
- package/node_modules/es-toolkit/dist/function/throttle.d.mts +46 -0
- package/node_modules/es-toolkit/dist/function/throttle.d.ts +46 -0
- package/node_modules/es-toolkit/dist/function/throttle.js +53 -0
- package/node_modules/es-toolkit/dist/function/throttle.mjs +53 -0
- package/node_modules/es-toolkit/dist/function/unary.d.mts +15 -0
- package/node_modules/es-toolkit/dist/function/unary.d.ts +15 -0
- package/node_modules/es-toolkit/dist/function/unary.js +20 -0
- package/node_modules/es-toolkit/dist/function/unary.mjs +20 -0
- package/node_modules/es-toolkit/dist/index.d.mts +211 -0
- package/node_modules/es-toolkit/dist/index.d.ts +211 -0
- package/node_modules/es-toolkit/dist/index.js +415 -0
- package/node_modules/es-toolkit/dist/index.mjs +211 -0
- package/node_modules/es-toolkit/dist/iterator/_internal/iterator.js +73 -0
- package/node_modules/es-toolkit/dist/iterator/_internal/iterator.mjs +73 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.d.mts +31 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.d.ts +31 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.js +94 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.mjs +94 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.d.mts +18 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.d.ts +18 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.js +39 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.mjs +39 -0
- package/node_modules/es-toolkit/dist/iterator/count.d.mts +15 -0
- package/node_modules/es-toolkit/dist/iterator/count.d.ts +15 -0
- package/node_modules/es-toolkit/dist/iterator/count.js +25 -0
- package/node_modules/es-toolkit/dist/iterator/count.mjs +25 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.d.mts +17 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.d.ts +17 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.js +51 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.mjs +51 -0
- package/node_modules/es-toolkit/dist/iterator/head.d.mts +18 -0
- package/node_modules/es-toolkit/dist/iterator/head.d.ts +18 -0
- package/node_modules/es-toolkit/dist/iterator/head.js +25 -0
- package/node_modules/es-toolkit/dist/iterator/head.mjs +25 -0
- package/node_modules/es-toolkit/dist/iterator/index.d.mts +13 -0
- package/node_modules/es-toolkit/dist/iterator/index.d.ts +13 -0
- package/node_modules/es-toolkit/dist/iterator/index.js +25 -0
- package/node_modules/es-toolkit/dist/iterator/index.mjs +13 -0
- package/node_modules/es-toolkit/dist/iterator/iterate.d.mts +17 -0
- package/node_modules/es-toolkit/dist/iterator/iterate.d.ts +17 -0
- package/node_modules/es-toolkit/dist/iterator/iterate.js +31 -0
- package/node_modules/es-toolkit/dist/iterator/iterate.mjs +31 -0
- package/node_modules/es-toolkit/dist/iterator/partition.d.mts +15 -0
- package/node_modules/es-toolkit/dist/iterator/partition.d.ts +15 -0
- package/node_modules/es-toolkit/dist/iterator/partition.js +35 -0
- package/node_modules/es-toolkit/dist/iterator/partition.mjs +35 -0
- package/node_modules/es-toolkit/dist/iterator/range.d.mts +39 -0
- package/node_modules/es-toolkit/dist/iterator/range.d.ts +39 -0
- package/node_modules/es-toolkit/dist/iterator/range.js +24 -0
- package/node_modules/es-toolkit/dist/iterator/range.mjs +24 -0
- package/node_modules/es-toolkit/dist/iterator/scan.d.mts +20 -0
- package/node_modules/es-toolkit/dist/iterator/scan.d.ts +20 -0
- package/node_modules/es-toolkit/dist/iterator/scan.js +46 -0
- package/node_modules/es-toolkit/dist/iterator/scan.mjs +46 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.d.mts +17 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.d.ts +17 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.js +33 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.mjs +33 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.d.mts +19 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.d.ts +19 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.js +42 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.mjs +42 -0
- package/node_modules/es-toolkit/dist/iterator/zip.d.mts +21 -0
- package/node_modules/es-toolkit/dist/iterator/zip.d.ts +21 -0
- package/node_modules/es-toolkit/dist/iterator/zip.js +44 -0
- package/node_modules/es-toolkit/dist/iterator/zip.mjs +44 -0
- package/node_modules/es-toolkit/dist/map/countBy.d.mts +33 -0
- package/node_modules/es-toolkit/dist/map/countBy.d.ts +33 -0
- package/node_modules/es-toolkit/dist/map/countBy.js +42 -0
- package/node_modules/es-toolkit/dist/map/countBy.mjs +42 -0
- package/node_modules/es-toolkit/dist/map/every.d.mts +26 -0
- package/node_modules/es-toolkit/dist/map/every.d.ts +26 -0
- package/node_modules/es-toolkit/dist/map/every.js +31 -0
- package/node_modules/es-toolkit/dist/map/every.mjs +31 -0
- package/node_modules/es-toolkit/dist/map/filter.d.mts +27 -0
- package/node_modules/es-toolkit/dist/map/filter.d.ts +27 -0
- package/node_modules/es-toolkit/dist/map/filter.js +33 -0
- package/node_modules/es-toolkit/dist/map/filter.mjs +33 -0
- package/node_modules/es-toolkit/dist/map/findKey.d.mts +23 -0
- package/node_modules/es-toolkit/dist/map/findKey.d.ts +23 -0
- package/node_modules/es-toolkit/dist/map/findKey.js +32 -0
- package/node_modules/es-toolkit/dist/map/findKey.mjs +32 -0
- package/node_modules/es-toolkit/dist/map/findValue.d.mts +23 -0
- package/node_modules/es-toolkit/dist/map/findValue.d.ts +23 -0
- package/node_modules/es-toolkit/dist/map/findValue.js +32 -0
- package/node_modules/es-toolkit/dist/map/findValue.mjs +32 -0
- package/node_modules/es-toolkit/dist/map/forEach.d.mts +26 -0
- package/node_modules/es-toolkit/dist/map/forEach.d.ts +26 -0
- package/node_modules/es-toolkit/dist/map/forEach.js +30 -0
- package/node_modules/es-toolkit/dist/map/forEach.mjs +30 -0
- package/node_modules/es-toolkit/dist/map/hasValue.d.mts +26 -0
- package/node_modules/es-toolkit/dist/map/hasValue.d.ts +26 -0
- package/node_modules/es-toolkit/dist/map/hasValue.js +32 -0
- package/node_modules/es-toolkit/dist/map/hasValue.mjs +32 -0
- package/node_modules/es-toolkit/dist/map/index.d.mts +13 -0
- package/node_modules/es-toolkit/dist/map/index.d.ts +13 -0
- package/node_modules/es-toolkit/dist/map/index.js +25 -0
- package/node_modules/es-toolkit/dist/map/index.mjs +13 -0
- package/node_modules/es-toolkit/dist/map/keyBy.d.mts +29 -0
- package/node_modules/es-toolkit/dist/map/keyBy.d.ts +29 -0
- package/node_modules/es-toolkit/dist/map/keyBy.js +38 -0
- package/node_modules/es-toolkit/dist/map/keyBy.mjs +38 -0
- package/node_modules/es-toolkit/dist/map/mapKeys.d.mts +28 -0
- package/node_modules/es-toolkit/dist/map/mapKeys.d.ts +28 -0
- package/node_modules/es-toolkit/dist/map/mapKeys.js +37 -0
- package/node_modules/es-toolkit/dist/map/mapKeys.mjs +37 -0
- package/node_modules/es-toolkit/dist/map/mapValues.d.mts +28 -0
- package/node_modules/es-toolkit/dist/map/mapValues.d.ts +28 -0
- package/node_modules/es-toolkit/dist/map/mapValues.js +37 -0
- package/node_modules/es-toolkit/dist/map/mapValues.mjs +37 -0
- package/node_modules/es-toolkit/dist/map/reduce.d.mts +33 -0
- package/node_modules/es-toolkit/dist/map/reduce.d.ts +33 -0
- package/node_modules/es-toolkit/dist/map/reduce.js +41 -0
- package/node_modules/es-toolkit/dist/map/reduce.mjs +41 -0
- package/node_modules/es-toolkit/dist/map/some.d.mts +26 -0
- package/node_modules/es-toolkit/dist/map/some.d.ts +26 -0
- package/node_modules/es-toolkit/dist/map/some.js +31 -0
- package/node_modules/es-toolkit/dist/map/some.mjs +31 -0
- package/node_modules/es-toolkit/dist/math/clamp.d.mts +30 -0
- package/node_modules/es-toolkit/dist/math/clamp.d.ts +30 -0
- package/node_modules/es-toolkit/dist/math/clamp.js +23 -0
- package/node_modules/es-toolkit/dist/math/clamp.mjs +23 -0
- package/node_modules/es-toolkit/dist/math/inRange.d.mts +25 -0
- package/node_modules/es-toolkit/dist/math/inRange.d.ts +25 -0
- package/node_modules/es-toolkit/dist/math/inRange.js +24 -0
- package/node_modules/es-toolkit/dist/math/inRange.mjs +24 -0
- package/node_modules/es-toolkit/dist/math/index.d.mts +17 -0
- package/node_modules/es-toolkit/dist/math/index.d.ts +17 -0
- package/node_modules/es-toolkit/dist/math/index.js +33 -0
- package/node_modules/es-toolkit/dist/math/index.mjs +17 -0
- package/node_modules/es-toolkit/dist/math/inverseLerp.d.mts +25 -0
- package/node_modules/es-toolkit/dist/math/inverseLerp.d.ts +25 -0
- package/node_modules/es-toolkit/dist/math/inverseLerp.js +30 -0
- package/node_modules/es-toolkit/dist/math/inverseLerp.mjs +30 -0
- package/node_modules/es-toolkit/dist/math/lerp.d.mts +23 -0
- package/node_modules/es-toolkit/dist/math/lerp.d.ts +23 -0
- package/node_modules/es-toolkit/dist/math/lerp.js +28 -0
- package/node_modules/es-toolkit/dist/math/lerp.mjs +28 -0
- package/node_modules/es-toolkit/dist/math/mean.d.mts +14 -0
- package/node_modules/es-toolkit/dist/math/mean.d.ts +14 -0
- package/node_modules/es-toolkit/dist/math/mean.js +19 -0
- package/node_modules/es-toolkit/dist/math/mean.mjs +19 -0
- package/node_modules/es-toolkit/dist/math/meanBy.d.mts +16 -0
- package/node_modules/es-toolkit/dist/math/meanBy.d.ts +16 -0
- package/node_modules/es-toolkit/dist/math/meanBy.js +21 -0
- package/node_modules/es-toolkit/dist/math/meanBy.mjs +21 -0
- package/node_modules/es-toolkit/dist/math/median.d.mts +23 -0
- package/node_modules/es-toolkit/dist/math/median.d.ts +23 -0
- package/node_modules/es-toolkit/dist/math/median.js +31 -0
- package/node_modules/es-toolkit/dist/math/median.mjs +31 -0
- package/node_modules/es-toolkit/dist/math/medianBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/math/medianBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/math/medianBy.js +27 -0
- package/node_modules/es-toolkit/dist/math/medianBy.mjs +27 -0
- package/node_modules/es-toolkit/dist/math/percentile.d.mts +26 -0
- package/node_modules/es-toolkit/dist/math/percentile.d.ts +26 -0
- package/node_modules/es-toolkit/dist/math/percentile.js +38 -0
- package/node_modules/es-toolkit/dist/math/percentile.mjs +38 -0
- package/node_modules/es-toolkit/dist/math/random.d.mts +28 -0
- package/node_modules/es-toolkit/dist/math/random.d.ts +28 -0
- package/node_modules/es-toolkit/dist/math/random.js +23 -0
- package/node_modules/es-toolkit/dist/math/random.mjs +23 -0
- package/node_modules/es-toolkit/dist/math/randomInt.d.mts +24 -0
- package/node_modules/es-toolkit/dist/math/randomInt.d.ts +24 -0
- package/node_modules/es-toolkit/dist/math/randomInt.js +20 -0
- package/node_modules/es-toolkit/dist/math/randomInt.mjs +20 -0
- package/node_modules/es-toolkit/dist/math/range.d.mts +36 -0
- package/node_modules/es-toolkit/dist/math/range.d.ts +36 -0
- package/node_modules/es-toolkit/dist/math/range.js +30 -0
- package/node_modules/es-toolkit/dist/math/range.mjs +30 -0
- package/node_modules/es-toolkit/dist/math/rangeRight.d.mts +36 -0
- package/node_modules/es-toolkit/dist/math/rangeRight.d.ts +36 -0
- package/node_modules/es-toolkit/dist/math/rangeRight.js +30 -0
- package/node_modules/es-toolkit/dist/math/rangeRight.mjs +30 -0
- package/node_modules/es-toolkit/dist/math/round.d.mts +18 -0
- package/node_modules/es-toolkit/dist/math/round.d.ts +18 -0
- package/node_modules/es-toolkit/dist/math/round.js +24 -0
- package/node_modules/es-toolkit/dist/math/round.mjs +24 -0
- package/node_modules/es-toolkit/dist/math/sum.d.mts +14 -0
- package/node_modules/es-toolkit/dist/math/sum.d.ts +14 -0
- package/node_modules/es-toolkit/dist/math/sum.js +20 -0
- package/node_modules/es-toolkit/dist/math/sum.mjs +20 -0
- package/node_modules/es-toolkit/dist/math/sumBy.d.mts +17 -0
- package/node_modules/es-toolkit/dist/math/sumBy.d.ts +17 -0
- package/node_modules/es-toolkit/dist/math/sumBy.js +23 -0
- package/node_modules/es-toolkit/dist/math/sumBy.mjs +23 -0
- package/node_modules/es-toolkit/dist/object/clone.d.mts +29 -0
- package/node_modules/es-toolkit/dist/object/clone.d.ts +29 -0
- package/node_modules/es-toolkit/dist/object/clone.js +63 -0
- package/node_modules/es-toolkit/dist/object/clone.mjs +63 -0
- package/node_modules/es-toolkit/dist/object/cloneDeep.d.mts +47 -0
- package/node_modules/es-toolkit/dist/object/cloneDeep.d.ts +47 -0
- package/node_modules/es-toolkit/dist/object/cloneDeep.js +52 -0
- package/node_modules/es-toolkit/dist/object/cloneDeep.mjs +52 -0
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.d.mts +46 -0
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.d.ts +46 -0
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.js +184 -0
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.mjs +182 -0
- package/node_modules/es-toolkit/dist/object/deepFreeze.d.mts +17 -0
- package/node_modules/es-toolkit/dist/object/deepFreeze.d.ts +17 -0
- package/node_modules/es-toolkit/dist/object/deepFreeze.js +28 -0
- package/node_modules/es-toolkit/dist/object/deepFreeze.mjs +28 -0
- package/node_modules/es-toolkit/dist/object/findKey.d.mts +20 -0
- package/node_modules/es-toolkit/dist/object/findKey.d.ts +20 -0
- package/node_modules/es-toolkit/dist/object/findKey.js +23 -0
- package/node_modules/es-toolkit/dist/object/findKey.mjs +23 -0
- package/node_modules/es-toolkit/dist/object/flattenObject.d.mts +49 -0
- package/node_modules/es-toolkit/dist/object/flattenObject.d.ts +49 -0
- package/node_modules/es-toolkit/dist/object/flattenObject.js +60 -0
- package/node_modules/es-toolkit/dist/object/flattenObject.mjs +60 -0
- package/node_modules/es-toolkit/dist/object/index.d.mts +25 -0
- package/node_modules/es-toolkit/dist/object/index.d.ts +25 -0
- package/node_modules/es-toolkit/dist/object/index.js +49 -0
- package/node_modules/es-toolkit/dist/object/index.mjs +25 -0
- package/node_modules/es-toolkit/dist/object/invert.d.mts +19 -0
- package/node_modules/es-toolkit/dist/object/invert.d.ts +19 -0
- package/node_modules/es-toolkit/dist/object/invert.js +30 -0
- package/node_modules/es-toolkit/dist/object/invert.mjs +30 -0
- package/node_modules/es-toolkit/dist/object/mapKeys.d.mts +19 -0
- package/node_modules/es-toolkit/dist/object/mapKeys.d.ts +19 -0
- package/node_modules/es-toolkit/dist/object/mapKeys.js +29 -0
- package/node_modules/es-toolkit/dist/object/mapKeys.mjs +29 -0
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.d.mts +23 -0
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.d.ts +23 -0
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.js +31 -0
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.mjs +31 -0
- package/node_modules/es-toolkit/dist/object/mapValues.d.mts +19 -0
- package/node_modules/es-toolkit/dist/object/mapValues.d.ts +19 -0
- package/node_modules/es-toolkit/dist/object/mapValues.js +30 -0
- package/node_modules/es-toolkit/dist/object/mapValues.mjs +30 -0
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.d.mts +24 -0
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.d.ts +24 -0
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.js +31 -0
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.mjs +31 -0
- package/node_modules/es-toolkit/dist/object/merge.d.mts +42 -0
- package/node_modules/es-toolkit/dist/object/merge.d.ts +42 -0
- package/node_modules/es-toolkit/dist/object/merge.js +19 -0
- package/node_modules/es-toolkit/dist/object/merge.mjs +19 -0
- package/node_modules/es-toolkit/dist/object/mergeWith.d.mts +49 -0
- package/node_modules/es-toolkit/dist/object/mergeWith.d.ts +49 -0
- package/node_modules/es-toolkit/dist/object/mergeWith.js +69 -0
- package/node_modules/es-toolkit/dist/object/mergeWith.mjs +69 -0
- package/node_modules/es-toolkit/dist/object/omit.d.mts +18 -0
- package/node_modules/es-toolkit/dist/object/omit.d.ts +18 -0
- package/node_modules/es-toolkit/dist/object/omit.js +27 -0
- package/node_modules/es-toolkit/dist/object/omit.mjs +27 -0
- package/node_modules/es-toolkit/dist/object/omitBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/object/omitBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/object/omitBy.js +32 -0
- package/node_modules/es-toolkit/dist/object/omitBy.mjs +32 -0
- package/node_modules/es-toolkit/dist/object/pick.d.mts +18 -0
- package/node_modules/es-toolkit/dist/object/pick.d.ts +18 -0
- package/node_modules/es-toolkit/dist/object/pick.js +27 -0
- package/node_modules/es-toolkit/dist/object/pick.mjs +27 -0
- package/node_modules/es-toolkit/dist/object/pickBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/object/pickBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/object/pickBy.js +32 -0
- package/node_modules/es-toolkit/dist/object/pickBy.mjs +32 -0
- package/node_modules/es-toolkit/dist/object/sortKeys.d.mts +19 -0
- package/node_modules/es-toolkit/dist/object/sortKeys.d.ts +19 -0
- package/node_modules/es-toolkit/dist/object/sortKeys.js +29 -0
- package/node_modules/es-toolkit/dist/object/sortKeys.mjs +29 -0
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.d.mts +48 -0
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.d.ts +48 -0
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.js +65 -0
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.mjs +65 -0
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.d.mts +48 -0
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.d.ts +48 -0
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.js +65 -0
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.mjs +65 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.d.mts +48 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.d.ts +48 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.js +65 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.mjs +65 -0
- package/node_modules/es-toolkit/dist/object/toMerged.d.mts +43 -0
- package/node_modules/es-toolkit/dist/object/toMerged.d.ts +43 -0
- package/node_modules/es-toolkit/dist/object/toMerged.js +56 -0
- package/node_modules/es-toolkit/dist/object/toMerged.mjs +56 -0
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.d.mts +48 -0
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.d.ts +48 -0
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.js +65 -0
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.mjs +65 -0
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.d.mts +48 -0
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.d.ts +48 -0
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.js +65 -0
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.mjs +65 -0
- package/node_modules/es-toolkit/dist/predicate/index.d.mts +34 -0
- package/node_modules/es-toolkit/dist/predicate/index.d.ts +34 -0
- package/node_modules/es-toolkit/dist/predicate/index.js +69 -0
- package/node_modules/es-toolkit/dist/predicate/index.mjs +34 -0
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.d.mts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.d.ts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.js +22 -0
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.mjs +22 -0
- package/node_modules/es-toolkit/dist/predicate/isBlob.d.mts +17 -0
- package/node_modules/es-toolkit/dist/predicate/isBlob.d.ts +17 -0
- package/node_modules/es-toolkit/dist/predicate/isBlob.js +22 -0
- package/node_modules/es-toolkit/dist/predicate/isBlob.mjs +22 -0
- package/node_modules/es-toolkit/dist/predicate/isBoolean.d.mts +23 -0
- package/node_modules/es-toolkit/dist/predicate/isBoolean.d.ts +23 -0
- package/node_modules/es-toolkit/dist/predicate/isBoolean.js +27 -0
- package/node_modules/es-toolkit/dist/predicate/isBoolean.mjs +27 -0
- package/node_modules/es-toolkit/dist/predicate/isBrowser.d.mts +15 -0
- package/node_modules/es-toolkit/dist/predicate/isBrowser.d.ts +15 -0
- package/node_modules/es-toolkit/dist/predicate/isBrowser.js +19 -0
- package/node_modules/es-toolkit/dist/predicate/isBrowser.mjs +19 -0
- package/node_modules/es-toolkit/dist/predicate/isBuffer.d.mts +19 -0
- package/node_modules/es-toolkit/dist/predicate/isBuffer.d.ts +19 -0
- package/node_modules/es-toolkit/dist/predicate/isBuffer.js +24 -0
- package/node_modules/es-toolkit/dist/predicate/isBuffer.mjs +24 -0
- package/node_modules/es-toolkit/dist/predicate/isDate.d.mts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isDate.d.ts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isDate.js +18 -0
- package/node_modules/es-toolkit/dist/predicate/isDate.mjs +18 -0
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.d.mts +13 -0
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.d.ts +13 -0
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.js +18 -0
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.mjs +18 -0
- package/node_modules/es-toolkit/dist/predicate/isEqual.d.mts +15 -0
- package/node_modules/es-toolkit/dist/predicate/isEqual.d.ts +15 -0
- package/node_modules/es-toolkit/dist/predicate/isEqual.js +21 -0
- package/node_modules/es-toolkit/dist/predicate/isEqual.mjs +21 -0
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.d.mts +36 -0
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.d.ts +36 -0
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.js +151 -0
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.mjs +151 -0
- package/node_modules/es-toolkit/dist/predicate/isError.d.mts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isError.d.ts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isError.js +18 -0
- package/node_modules/es-toolkit/dist/predicate/isError.mjs +18 -0
- package/node_modules/es-toolkit/dist/predicate/isFile.d.mts +19 -0
- package/node_modules/es-toolkit/dist/predicate/isFile.d.ts +19 -0
- package/node_modules/es-toolkit/dist/predicate/isFile.js +25 -0
- package/node_modules/es-toolkit/dist/predicate/isFile.mjs +25 -0
- package/node_modules/es-toolkit/dist/predicate/isFunction.d.mts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isFunction.d.ts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isFunction.js +18 -0
- package/node_modules/es-toolkit/dist/predicate/isFunction.mjs +18 -0
- package/node_modules/es-toolkit/dist/predicate/isIterable.d.mts +23 -0
- package/node_modules/es-toolkit/dist/predicate/isIterable.d.ts +23 -0
- package/node_modules/es-toolkit/dist/predicate/isIterable.js +27 -0
- package/node_modules/es-toolkit/dist/predicate/isIterable.mjs +27 -0
- package/node_modules/es-toolkit/dist/predicate/isJSON.d.mts +29 -0
- package/node_modules/es-toolkit/dist/predicate/isJSON.d.ts +29 -0
- package/node_modules/es-toolkit/dist/predicate/isJSON.js +39 -0
- package/node_modules/es-toolkit/dist/predicate/isJSON.mjs +39 -0
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.d.mts +54 -0
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.d.ts +54 -0
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.js +84 -0
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.mjs +82 -0
- package/node_modules/es-toolkit/dist/predicate/isLength.d.mts +22 -0
- package/node_modules/es-toolkit/dist/predicate/isLength.d.ts +22 -0
- package/node_modules/es-toolkit/dist/predicate/isLength.js +26 -0
- package/node_modules/es-toolkit/dist/predicate/isLength.mjs +26 -0
- package/node_modules/es-toolkit/dist/predicate/isMap.d.mts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isMap.d.ts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isMap.js +22 -0
- package/node_modules/es-toolkit/dist/predicate/isMap.mjs +22 -0
- package/node_modules/es-toolkit/dist/predicate/isNil.d.mts +20 -0
- package/node_modules/es-toolkit/dist/predicate/isNil.d.ts +20 -0
- package/node_modules/es-toolkit/dist/predicate/isNil.js +24 -0
- package/node_modules/es-toolkit/dist/predicate/isNil.mjs +24 -0
- package/node_modules/es-toolkit/dist/predicate/isNode.d.mts +15 -0
- package/node_modules/es-toolkit/dist/predicate/isNode.d.ts +15 -0
- package/node_modules/es-toolkit/dist/predicate/isNode.js +19 -0
- package/node_modules/es-toolkit/dist/predicate/isNode.mjs +19 -0
- package/node_modules/es-toolkit/dist/predicate/isNotNil.d.mts +17 -0
- package/node_modules/es-toolkit/dist/predicate/isNotNil.d.ts +17 -0
- package/node_modules/es-toolkit/dist/predicate/isNotNil.js +21 -0
- package/node_modules/es-toolkit/dist/predicate/isNotNil.mjs +21 -0
- package/node_modules/es-toolkit/dist/predicate/isNull.d.mts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isNull.d.ts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isNull.js +25 -0
- package/node_modules/es-toolkit/dist/predicate/isNull.mjs +25 -0
- package/node_modules/es-toolkit/dist/predicate/isNumber.d.mts +25 -0
- package/node_modules/es-toolkit/dist/predicate/isNumber.d.ts +25 -0
- package/node_modules/es-toolkit/dist/predicate/isNumber.js +29 -0
- package/node_modules/es-toolkit/dist/predicate/isNumber.mjs +29 -0
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.d.mts +43 -0
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.d.ts +43 -0
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.js +50 -0
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.mjs +50 -0
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.d.mts +22 -0
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.d.ts +22 -0
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.js +26 -0
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.mjs +26 -0
- package/node_modules/es-toolkit/dist/predicate/isPromise.d.mts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isPromise.d.ts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isPromise.js +22 -0
- package/node_modules/es-toolkit/dist/predicate/isPromise.mjs +22 -0
- package/node_modules/es-toolkit/dist/predicate/isRegExp.d.mts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isRegExp.d.ts +14 -0
- package/node_modules/es-toolkit/dist/predicate/isRegExp.js +18 -0
- package/node_modules/es-toolkit/dist/predicate/isRegExp.mjs +18 -0
- package/node_modules/es-toolkit/dist/predicate/isSet.d.mts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isSet.d.ts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isSet.js +22 -0
- package/node_modules/es-toolkit/dist/predicate/isSet.mjs +22 -0
- package/node_modules/es-toolkit/dist/predicate/isString.d.mts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isString.d.ts +18 -0
- package/node_modules/es-toolkit/dist/predicate/isString.js +22 -0
- package/node_modules/es-toolkit/dist/predicate/isString.mjs +22 -0
- package/node_modules/es-toolkit/dist/predicate/isSymbol.d.mts +24 -0
- package/node_modules/es-toolkit/dist/predicate/isSymbol.d.ts +24 -0
- package/node_modules/es-toolkit/dist/predicate/isSymbol.js +28 -0
- package/node_modules/es-toolkit/dist/predicate/isSymbol.mjs +28 -0
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.d.mts +16 -0
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.d.ts +16 -0
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.js +20 -0
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.mjs +20 -0
- package/node_modules/es-toolkit/dist/predicate/isUndefined.d.mts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isUndefined.d.ts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isUndefined.js +25 -0
- package/node_modules/es-toolkit/dist/predicate/isUndefined.mjs +25 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.d.mts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.d.ts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.js +25 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.mjs +25 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.d.mts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.d.ts +21 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.js +25 -0
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.mjs +25 -0
- package/node_modules/es-toolkit/dist/promise/allKeyed.d.mts +28 -0
- package/node_modules/es-toolkit/dist/promise/allKeyed.d.ts +28 -0
- package/node_modules/es-toolkit/dist/promise/allKeyed.js +36 -0
- package/node_modules/es-toolkit/dist/promise/allKeyed.mjs +36 -0
- package/node_modules/es-toolkit/dist/promise/delay.d.mts +37 -0
- package/node_modules/es-toolkit/dist/promise/delay.d.ts +37 -0
- package/node_modules/es-toolkit/dist/promise/delay.js +52 -0
- package/node_modules/es-toolkit/dist/promise/delay.mjs +52 -0
- package/node_modules/es-toolkit/dist/promise/index.d.mts +8 -0
- package/node_modules/es-toolkit/dist/promise/index.d.ts +8 -0
- package/node_modules/es-toolkit/dist/promise/index.js +15 -0
- package/node_modules/es-toolkit/dist/promise/index.mjs +8 -0
- package/node_modules/es-toolkit/dist/promise/limitAsync.d.mts +32 -0
- package/node_modules/es-toolkit/dist/promise/limitAsync.d.ts +32 -0
- package/node_modules/es-toolkit/dist/promise/limitAsync.js +45 -0
- package/node_modules/es-toolkit/dist/promise/limitAsync.mjs +45 -0
- package/node_modules/es-toolkit/dist/promise/mutex.d.mts +62 -0
- package/node_modules/es-toolkit/dist/promise/mutex.d.ts +62 -0
- package/node_modules/es-toolkit/dist/promise/mutex.js +71 -0
- package/node_modules/es-toolkit/dist/promise/mutex.mjs +71 -0
- package/node_modules/es-toolkit/dist/promise/semaphore.d.mts +79 -0
- package/node_modules/es-toolkit/dist/promise/semaphore.d.ts +79 -0
- package/node_modules/es-toolkit/dist/promise/semaphore.js +100 -0
- package/node_modules/es-toolkit/dist/promise/semaphore.mjs +100 -0
- package/node_modules/es-toolkit/dist/promise/timeout.d.mts +37 -0
- package/node_modules/es-toolkit/dist/promise/timeout.d.ts +37 -0
- package/node_modules/es-toolkit/dist/promise/timeout.js +48 -0
- package/node_modules/es-toolkit/dist/promise/timeout.mjs +48 -0
- package/node_modules/es-toolkit/dist/promise/withTimeout.d.mts +43 -0
- package/node_modules/es-toolkit/dist/promise/withTimeout.d.ts +43 -0
- package/node_modules/es-toolkit/dist/promise/withTimeout.js +44 -0
- package/node_modules/es-toolkit/dist/promise/withTimeout.mjs +44 -0
- package/node_modules/es-toolkit/dist/query-string/index.d.mts +2 -0
- package/node_modules/es-toolkit/dist/query-string/index.d.ts +2 -0
- package/node_modules/es-toolkit/dist/query-string/index.js +3 -0
- package/node_modules/es-toolkit/dist/query-string/index.mjs +1 -0
- package/node_modules/es-toolkit/dist/query-string/stringify.d.mts +23 -0
- package/node_modules/es-toolkit/dist/query-string/stringify.d.ts +23 -0
- package/node_modules/es-toolkit/dist/query-string/stringify.js +36 -0
- package/node_modules/es-toolkit/dist/query-string/stringify.mjs +36 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/parseHex.js +31 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/parseHex.mjs +31 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsi.js +20 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsi.mjs +20 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsiBg.js +29 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsiBg.mjs +29 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.d.mts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.d.ts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.d.mts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.d.ts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.d.mts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.d.ts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.js +20 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.mjs +20 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.d.mts +16 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.d.ts +16 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.js +20 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.mjs +20 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/black.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/black.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/black.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/black.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/gray.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/gray.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/green.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/green.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/green.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/green.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.d.mts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.d.ts +14 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.js +20 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.mjs +20 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/index.d.mts +95 -0
- package/node_modules/es-toolkit/dist/server/colors/index.d.ts +95 -0
- package/node_modules/es-toolkit/dist/server/colors/index.js +98 -0
- package/node_modules/es-toolkit/dist/server/colors/index.mjs +98 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/red.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/red.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/red.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/red.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.d.mts +16 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.d.ts +16 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.js +20 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.mjs +20 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/types.d.mts +1 -0
- package/node_modules/es-toolkit/dist/server/colors/types.d.ts +1 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/white.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/white.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/white.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/white.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.d.mts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.d.ts +12 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.js +17 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.mjs +17 -0
- package/node_modules/es-toolkit/dist/server/exec.d.mts +60 -0
- package/node_modules/es-toolkit/dist/server/exec.d.ts +60 -0
- package/node_modules/es-toolkit/dist/server/exec.js +102 -0
- package/node_modules/es-toolkit/dist/server/exec.mjs +101 -0
- package/node_modules/es-toolkit/dist/server/index.d.mts +4 -0
- package/node_modules/es-toolkit/dist/server/index.d.ts +4 -0
- package/node_modules/es-toolkit/dist/server/index.js +6 -0
- package/node_modules/es-toolkit/dist/server/index.mjs +3 -0
- package/node_modules/es-toolkit/dist/set/countBy.d.mts +24 -0
- package/node_modules/es-toolkit/dist/set/countBy.d.ts +24 -0
- package/node_modules/es-toolkit/dist/set/countBy.js +33 -0
- package/node_modules/es-toolkit/dist/set/countBy.mjs +33 -0
- package/node_modules/es-toolkit/dist/set/every.d.mts +21 -0
- package/node_modules/es-toolkit/dist/set/every.d.ts +21 -0
- package/node_modules/es-toolkit/dist/set/every.js +26 -0
- package/node_modules/es-toolkit/dist/set/every.mjs +26 -0
- package/node_modules/es-toolkit/dist/set/filter.d.mts +18 -0
- package/node_modules/es-toolkit/dist/set/filter.d.ts +18 -0
- package/node_modules/es-toolkit/dist/set/filter.js +24 -0
- package/node_modules/es-toolkit/dist/set/filter.mjs +24 -0
- package/node_modules/es-toolkit/dist/set/find.d.mts +22 -0
- package/node_modules/es-toolkit/dist/set/find.d.ts +22 -0
- package/node_modules/es-toolkit/dist/set/find.js +26 -0
- package/node_modules/es-toolkit/dist/set/find.mjs +26 -0
- package/node_modules/es-toolkit/dist/set/forEach.d.mts +22 -0
- package/node_modules/es-toolkit/dist/set/forEach.d.ts +22 -0
- package/node_modules/es-toolkit/dist/set/forEach.js +26 -0
- package/node_modules/es-toolkit/dist/set/forEach.mjs +26 -0
- package/node_modules/es-toolkit/dist/set/index.d.mts +10 -0
- package/node_modules/es-toolkit/dist/set/index.d.ts +10 -0
- package/node_modules/es-toolkit/dist/set/index.js +19 -0
- package/node_modules/es-toolkit/dist/set/index.mjs +10 -0
- package/node_modules/es-toolkit/dist/set/keyBy.d.mts +28 -0
- package/node_modules/es-toolkit/dist/set/keyBy.d.ts +28 -0
- package/node_modules/es-toolkit/dist/set/keyBy.js +37 -0
- package/node_modules/es-toolkit/dist/set/keyBy.mjs +37 -0
- package/node_modules/es-toolkit/dist/set/map.d.mts +19 -0
- package/node_modules/es-toolkit/dist/set/map.d.ts +19 -0
- package/node_modules/es-toolkit/dist/set/map.js +28 -0
- package/node_modules/es-toolkit/dist/set/map.mjs +28 -0
- package/node_modules/es-toolkit/dist/set/reduce.d.mts +26 -0
- package/node_modules/es-toolkit/dist/set/reduce.d.ts +26 -0
- package/node_modules/es-toolkit/dist/set/reduce.js +34 -0
- package/node_modules/es-toolkit/dist/set/reduce.mjs +34 -0
- package/node_modules/es-toolkit/dist/set/some.d.mts +21 -0
- package/node_modules/es-toolkit/dist/set/some.d.ts +21 -0
- package/node_modules/es-toolkit/dist/set/some.js +26 -0
- package/node_modules/es-toolkit/dist/set/some.mjs +26 -0
- package/node_modules/es-toolkit/dist/string/camelCase.d.mts +17 -0
- package/node_modules/es-toolkit/dist/string/camelCase.d.ts +17 -0
- package/node_modules/es-toolkit/dist/string/camelCase.js +26 -0
- package/node_modules/es-toolkit/dist/string/camelCase.mjs +26 -0
- package/node_modules/es-toolkit/dist/string/capitalize.d.mts +14 -0
- package/node_modules/es-toolkit/dist/string/capitalize.d.ts +14 -0
- package/node_modules/es-toolkit/dist/string/capitalize.js +16 -0
- package/node_modules/es-toolkit/dist/string/capitalize.mjs +16 -0
- package/node_modules/es-toolkit/dist/string/constantCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/string/constantCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/string/constantCase.js +20 -0
- package/node_modules/es-toolkit/dist/string/constantCase.mjs +20 -0
- package/node_modules/es-toolkit/dist/string/deburr.d.mts +28 -0
- package/node_modules/es-toolkit/dist/string/deburr.d.ts +28 -0
- package/node_modules/es-toolkit/dist/string/deburr.js +86 -0
- package/node_modules/es-toolkit/dist/string/deburr.mjs +86 -0
- package/node_modules/es-toolkit/dist/string/dedent.d.mts +40 -0
- package/node_modules/es-toolkit/dist/string/dedent.d.ts +40 -0
- package/node_modules/es-toolkit/dist/string/dedent.js +70 -0
- package/node_modules/es-toolkit/dist/string/dedent.mjs +70 -0
- package/node_modules/es-toolkit/dist/string/escape.d.mts +14 -0
- package/node_modules/es-toolkit/dist/string/escape.d.ts +14 -0
- package/node_modules/es-toolkit/dist/string/escape.js +25 -0
- package/node_modules/es-toolkit/dist/string/escape.mjs +25 -0
- package/node_modules/es-toolkit/dist/string/escapeRegExp.d.mts +12 -0
- package/node_modules/es-toolkit/dist/string/escapeRegExp.d.ts +12 -0
- package/node_modules/es-toolkit/dist/string/escapeRegExp.js +16 -0
- package/node_modules/es-toolkit/dist/string/escapeRegExp.mjs +16 -0
- package/node_modules/es-toolkit/dist/string/index.d.mts +24 -0
- package/node_modules/es-toolkit/dist/string/index.d.ts +24 -0
- package/node_modules/es-toolkit/dist/string/index.js +47 -0
- package/node_modules/es-toolkit/dist/string/index.mjs +24 -0
- package/node_modules/es-toolkit/dist/string/kebabCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/string/kebabCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/string/kebabCase.js +20 -0
- package/node_modules/es-toolkit/dist/string/kebabCase.mjs +20 -0
- package/node_modules/es-toolkit/dist/string/lowerCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/string/lowerCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/string/lowerCase.js +20 -0
- package/node_modules/es-toolkit/dist/string/lowerCase.mjs +20 -0
- package/node_modules/es-toolkit/dist/string/lowerFirst.d.mts +12 -0
- package/node_modules/es-toolkit/dist/string/lowerFirst.d.ts +12 -0
- package/node_modules/es-toolkit/dist/string/lowerFirst.js +16 -0
- package/node_modules/es-toolkit/dist/string/lowerFirst.mjs +16 -0
- package/node_modules/es-toolkit/dist/string/pad.d.mts +17 -0
- package/node_modules/es-toolkit/dist/string/pad.d.ts +17 -0
- package/node_modules/es-toolkit/dist/string/pad.js +21 -0
- package/node_modules/es-toolkit/dist/string/pad.mjs +21 -0
- package/node_modules/es-toolkit/dist/string/pascalCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/string/pascalCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/string/pascalCase.js +21 -0
- package/node_modules/es-toolkit/dist/string/pascalCase.mjs +21 -0
- package/node_modules/es-toolkit/dist/string/reverseString.d.mts +14 -0
- package/node_modules/es-toolkit/dist/string/reverseString.d.ts +14 -0
- package/node_modules/es-toolkit/dist/string/reverseString.js +18 -0
- package/node_modules/es-toolkit/dist/string/reverseString.mjs +18 -0
- package/node_modules/es-toolkit/dist/string/sentenceCase.d.mts +16 -0
- package/node_modules/es-toolkit/dist/string/sentenceCase.d.ts +16 -0
- package/node_modules/es-toolkit/dist/string/sentenceCase.js +28 -0
- package/node_modules/es-toolkit/dist/string/sentenceCase.mjs +28 -0
- package/node_modules/es-toolkit/dist/string/snakeCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/string/snakeCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/string/snakeCase.js +20 -0
- package/node_modules/es-toolkit/dist/string/snakeCase.mjs +20 -0
- package/node_modules/es-toolkit/dist/string/startCase.d.mts +14 -0
- package/node_modules/es-toolkit/dist/string/startCase.d.ts +14 -0
- package/node_modules/es-toolkit/dist/string/startCase.js +26 -0
- package/node_modules/es-toolkit/dist/string/startCase.mjs +26 -0
- package/node_modules/es-toolkit/dist/string/trim.d.mts +13 -0
- package/node_modules/es-toolkit/dist/string/trim.d.ts +13 -0
- package/node_modules/es-toolkit/dist/string/trim.js +20 -0
- package/node_modules/es-toolkit/dist/string/trim.mjs +20 -0
- package/node_modules/es-toolkit/dist/string/trimEnd.d.mts +17 -0
- package/node_modules/es-toolkit/dist/string/trimEnd.d.ts +17 -0
- package/node_modules/es-toolkit/dist/string/trimEnd.js +30 -0
- package/node_modules/es-toolkit/dist/string/trimEnd.mjs +30 -0
- package/node_modules/es-toolkit/dist/string/trimStart.d.mts +17 -0
- package/node_modules/es-toolkit/dist/string/trimStart.d.ts +17 -0
- package/node_modules/es-toolkit/dist/string/trimStart.js +30 -0
- package/node_modules/es-toolkit/dist/string/trimStart.mjs +30 -0
- package/node_modules/es-toolkit/dist/string/unescape.d.mts +14 -0
- package/node_modules/es-toolkit/dist/string/unescape.d.ts +14 -0
- package/node_modules/es-toolkit/dist/string/unescape.js +25 -0
- package/node_modules/es-toolkit/dist/string/unescape.mjs +25 -0
- package/node_modules/es-toolkit/dist/string/upperCase.d.mts +15 -0
- package/node_modules/es-toolkit/dist/string/upperCase.d.ts +15 -0
- package/node_modules/es-toolkit/dist/string/upperCase.js +26 -0
- package/node_modules/es-toolkit/dist/string/upperCase.mjs +26 -0
- package/node_modules/es-toolkit/dist/string/upperFirst.d.mts +12 -0
- package/node_modules/es-toolkit/dist/string/upperFirst.d.ts +12 -0
- package/node_modules/es-toolkit/dist/string/upperFirst.js +16 -0
- package/node_modules/es-toolkit/dist/string/upperFirst.mjs +16 -0
- package/node_modules/es-toolkit/dist/string/words.d.mts +37 -0
- package/node_modules/es-toolkit/dist/string/words.d.ts +37 -0
- package/node_modules/es-toolkit/dist/string/words.js +41 -0
- package/node_modules/es-toolkit/dist/string/words.mjs +40 -0
- package/node_modules/es-toolkit/dist/types/DeepPartial.d.mts +19 -0
- package/node_modules/es-toolkit/dist/types/DeepPartial.d.ts +19 -0
- package/node_modules/es-toolkit/dist/types/DeepReadonly.d.mts +20 -0
- package/node_modules/es-toolkit/dist/types/DeepReadonly.d.ts +20 -0
- package/node_modules/es-toolkit/dist/types/DistributiveOmit.d.mts +15 -0
- package/node_modules/es-toolkit/dist/types/DistributiveOmit.d.ts +15 -0
- package/node_modules/es-toolkit/dist/types/EmptyObject.d.mts +18 -0
- package/node_modules/es-toolkit/dist/types/EmptyObject.d.ts +18 -0
- package/node_modules/es-toolkit/dist/types/IsAny.d.mts +15 -0
- package/node_modules/es-toolkit/dist/types/IsAny.d.ts +15 -0
- package/node_modules/es-toolkit/dist/types/IsEqual.d.mts +15 -0
- package/node_modules/es-toolkit/dist/types/IsEqual.d.ts +15 -0
- package/node_modules/es-toolkit/dist/types/IsUnknown.d.mts +16 -0
- package/node_modules/es-toolkit/dist/types/IsUnknown.d.ts +16 -0
- package/node_modules/es-toolkit/dist/types/JSONValue.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/JSONValue.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/Merge.d.mts +64 -0
- package/node_modules/es-toolkit/dist/types/Merge.d.ts +64 -0
- package/node_modules/es-toolkit/dist/types/NonEmptyArray.d.mts +11 -0
- package/node_modules/es-toolkit/dist/types/NonEmptyArray.d.ts +11 -0
- package/node_modules/es-toolkit/dist/types/ObjectKeys.d.mts +17 -0
- package/node_modules/es-toolkit/dist/types/ObjectKeys.d.ts +17 -0
- package/node_modules/es-toolkit/dist/types/Primitive.d.mts +11 -0
- package/node_modules/es-toolkit/dist/types/Primitive.d.ts +11 -0
- package/node_modules/es-toolkit/dist/types/SetOptional.d.mts +16 -0
- package/node_modules/es-toolkit/dist/types/SetOptional.d.ts +16 -0
- package/node_modules/es-toolkit/dist/types/SetRequired.d.mts +16 -0
- package/node_modules/es-toolkit/dist/types/SetRequired.d.ts +16 -0
- package/node_modules/es-toolkit/dist/types/Simplify.d.mts +15 -0
- package/node_modules/es-toolkit/dist/types/Simplify.d.ts +15 -0
- package/node_modules/es-toolkit/dist/types/ToCamelCaseKeys.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/ToCamelCaseKeys.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/ToConstantCaseKeys.d.mts +18 -0
- package/node_modules/es-toolkit/dist/types/ToConstantCaseKeys.d.ts +18 -0
- package/node_modules/es-toolkit/dist/types/ToKebabCaseKeys.d.mts +20 -0
- package/node_modules/es-toolkit/dist/types/ToKebabCaseKeys.d.ts +20 -0
- package/node_modules/es-toolkit/dist/types/ToPascalCaseKeys.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/ToPascalCaseKeys.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/ToSnakeCaseKeys.d.mts +18 -0
- package/node_modules/es-toolkit/dist/types/ToSnakeCaseKeys.d.ts +18 -0
- package/node_modules/es-toolkit/dist/types/UnknownRecord.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/UnknownRecord.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/ValueOf.d.mts +11 -0
- package/node_modules/es-toolkit/dist/types/ValueOf.d.ts +11 -0
- package/node_modules/es-toolkit/dist/types/Writable.d.mts +12 -0
- package/node_modules/es-toolkit/dist/types/Writable.d.ts +12 -0
- package/node_modules/es-toolkit/dist/types/index.d.mts +24 -0
- package/node_modules/es-toolkit/dist/types/index.d.ts +24 -0
- package/node_modules/es-toolkit/dist/util/attempt.d.mts +40 -0
- package/node_modules/es-toolkit/dist/util/attempt.d.ts +40 -0
- package/node_modules/es-toolkit/dist/util/attempt.js +48 -0
- package/node_modules/es-toolkit/dist/util/attempt.mjs +48 -0
- package/node_modules/es-toolkit/dist/util/attemptAsync.d.mts +33 -0
- package/node_modules/es-toolkit/dist/util/attemptAsync.d.ts +33 -0
- package/node_modules/es-toolkit/dist/util/attemptAsync.js +41 -0
- package/node_modules/es-toolkit/dist/util/attemptAsync.mjs +41 -0
- package/node_modules/es-toolkit/dist/util/defer.d.mts +24 -0
- package/node_modules/es-toolkit/dist/util/defer.d.ts +24 -0
- package/node_modules/es-toolkit/dist/util/defer.js +30 -0
- package/node_modules/es-toolkit/dist/util/defer.mjs +30 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.d.mts +27 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.d.ts +27 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.js +33 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.mjs +33 -0
- package/node_modules/es-toolkit/dist/util/hash/browser.d.mts +23 -0
- package/node_modules/es-toolkit/dist/util/hash/browser.d.ts +23 -0
- package/node_modules/es-toolkit/dist/util/hash/browser.js +30 -0
- package/node_modules/es-toolkit/dist/util/hash/browser.mjs +29 -0
- package/node_modules/es-toolkit/dist/util/hash/node.d.mts +23 -0
- package/node_modules/es-toolkit/dist/util/hash/node.d.ts +23 -0
- package/node_modules/es-toolkit/dist/util/hash/node.js +507 -0
- package/node_modules/es-toolkit/dist/util/hash/node.mjs +506 -0
- package/node_modules/es-toolkit/dist/util/hash/sha256.js +157 -0
- package/node_modules/es-toolkit/dist/util/hash/sha256.mjs +157 -0
- package/node_modules/es-toolkit/dist/util/index.d.mts +8 -0
- package/node_modules/es-toolkit/dist/util/index.d.ts +8 -0
- package/node_modules/es-toolkit/dist/util/index.js +16 -0
- package/node_modules/es-toolkit/dist/util/index.mjs +8 -0
- package/node_modules/es-toolkit/dist/util/invariant.d.mts +38 -0
- package/node_modules/es-toolkit/dist/util/invariant.d.ts +38 -0
- package/node_modules/es-toolkit/dist/util/invariant.js +31 -0
- package/node_modules/es-toolkit/dist/util/invariant.mjs +31 -0
- package/node_modules/es-toolkit/dist/util/queue.d.mts +94 -0
- package/node_modules/es-toolkit/dist/util/queue.d.ts +94 -0
- package/node_modules/es-toolkit/dist/util/queue.js +128 -0
- package/node_modules/es-toolkit/dist/util/queue.mjs +128 -0
- package/node_modules/es-toolkit/dist/util/serialize/compareValues.js +52 -0
- package/node_modules/es-toolkit/dist/util/serialize/compareValues.mjs +52 -0
- package/node_modules/es-toolkit/dist/util/serialize/serialize.d.mts +42 -0
- package/node_modules/es-toolkit/dist/util/serialize/serialize.d.ts +42 -0
- package/node_modules/es-toolkit/dist/util/serialize/serialize.js +63 -0
- package/node_modules/es-toolkit/dist/util/serialize/serialize.mjs +62 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeBigInt.js +14 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeBigInt.mjs +14 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeFunction.js +26 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeFunction.mjs +26 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeNumber.js +20 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeNumber.mjs +20 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeObject.js +84 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeObject.mjs +84 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializePlainObject.js +30 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializePlainObject.mjs +30 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeString.js +17 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeString.mjs +17 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeSymbol.js +22 -0
- package/node_modules/es-toolkit/dist/util/serialize/serializeSymbol.mjs +22 -0
- package/node_modules/es-toolkit/error.d.ts +1 -0
- package/node_modules/es-toolkit/error.js +1 -0
- package/node_modules/es-toolkit/fp/iterator.d.ts +1 -0
- package/node_modules/es-toolkit/fp/iterator.js +1 -0
- package/node_modules/es-toolkit/fp.d.ts +1 -0
- package/node_modules/es-toolkit/fp.js +1 -0
- package/node_modules/es-toolkit/function.d.ts +1 -0
- package/node_modules/es-toolkit/function.js +1 -0
- package/node_modules/es-toolkit/iterator.d.ts +1 -0
- package/node_modules/es-toolkit/iterator.js +1 -0
- package/node_modules/es-toolkit/map.d.ts +1 -0
- package/node_modules/es-toolkit/map.js +1 -0
- package/node_modules/es-toolkit/math.d.ts +1 -0
- package/node_modules/es-toolkit/math.js +1 -0
- package/node_modules/es-toolkit/object.d.ts +1 -0
- package/node_modules/es-toolkit/object.js +1 -0
- package/node_modules/es-toolkit/package.json +589 -0
- package/node_modules/es-toolkit/predicate.d.ts +1 -0
- package/node_modules/es-toolkit/predicate.js +1 -0
- package/node_modules/es-toolkit/promise.d.ts +1 -0
- package/node_modules/es-toolkit/promise.js +1 -0
- package/node_modules/es-toolkit/query-string.d.ts +1 -0
- package/node_modules/es-toolkit/query-string.js +1 -0
- package/node_modules/es-toolkit/server.d.ts +1 -0
- package/node_modules/es-toolkit/server.js +1 -0
- package/node_modules/es-toolkit/set.d.ts +1 -0
- package/node_modules/es-toolkit/set.js +1 -0
- package/node_modules/es-toolkit/src/compat/_internal/Equals.d.ts +1 -0
- package/node_modules/es-toolkit/src/compat/_internal/IsWritable.d.ts +3 -0
- package/node_modules/es-toolkit/src/compat/_internal/MutableList.d.ts +4 -0
- package/node_modules/es-toolkit/src/compat/_internal/RejectReadonly.d.ts +4 -0
- package/node_modules/es-toolkit/string.d.ts +1 -0
- package/node_modules/es-toolkit/string.js +1 -0
- package/node_modules/es-toolkit/types.d.ts +1 -0
- package/node_modules/es-toolkit/util/hash.d.ts +1 -0
- package/node_modules/es-toolkit/util/hash.js +1 -0
- package/node_modules/es-toolkit/util.d.ts +1 -0
- package/node_modules/es-toolkit/util.js +1 -0
- package/node_modules/escape-string-regexp/index.d.ts +18 -0
- package/node_modules/escape-string-regexp/index.js +11 -0
- package/node_modules/escape-string-regexp/license +9 -0
- package/node_modules/escape-string-regexp/package.json +43 -0
- package/node_modules/escape-string-regexp/readme.md +29 -0
- package/node_modules/get-east-asian-width/index.d.ts +60 -0
- package/node_modules/get-east-asian-width/index.js +35 -0
- package/node_modules/get-east-asian-width/license +9 -0
- package/node_modules/get-east-asian-width/lookup-data.js +21 -0
- package/node_modules/get-east-asian-width/lookup.js +138 -0
- package/node_modules/get-east-asian-width/package.json +71 -0
- package/node_modules/get-east-asian-width/readme.md +65 -0
- package/node_modules/get-east-asian-width/utilities.js +24 -0
- package/node_modules/indent-string/index.d.ts +38 -0
- package/node_modules/indent-string/index.js +38 -0
- package/node_modules/indent-string/license +9 -0
- package/node_modules/indent-string/package.json +40 -0
- package/node_modules/indent-string/readme.md +73 -0
- package/node_modules/ink/build/apply-styles.js +175 -0
- package/node_modules/ink/build/build-layout.js +77 -0
- package/node_modules/ink/build/calculate-wrapped-text.js +53 -0
- package/node_modules/ink/build/colorize.d.ts +3 -0
- package/node_modules/ink/build/colorize.js +48 -0
- package/node_modules/ink/build/colorize.js.map +1 -0
- package/node_modules/ink/build/components/App.d.ts +59 -0
- package/node_modules/ink/build/components/App.js +286 -0
- package/node_modules/ink/build/components/App.js.map +1 -0
- package/node_modules/ink/build/components/AppContext.d.ts +11 -0
- package/node_modules/ink/build/components/AppContext.js +11 -0
- package/node_modules/ink/build/components/AppContext.js.map +1 -0
- package/node_modules/ink/build/components/Box.d.ts +62 -0
- package/node_modules/ink/build/components/Box.js +20 -0
- package/node_modules/ink/build/components/Box.js.map +1 -0
- package/node_modules/ink/build/components/Color.js +62 -0
- package/node_modules/ink/build/components/ErrorOverview.d.ts +6 -0
- package/node_modules/ink/build/components/ErrorOverview.js +79 -0
- package/node_modules/ink/build/components/ErrorOverview.js.map +1 -0
- package/node_modules/ink/build/components/FocusContext.d.ts +16 -0
- package/node_modules/ink/build/components/FocusContext.js +17 -0
- package/node_modules/ink/build/components/FocusContext.js.map +1 -0
- package/node_modules/ink/build/components/Newline.d.ts +13 -0
- package/node_modules/ink/build/components/Newline.js +8 -0
- package/node_modules/ink/build/components/Newline.js.map +1 -0
- package/node_modules/ink/build/components/Spacer.d.ts +6 -0
- package/node_modules/ink/build/components/Spacer.js +10 -0
- package/node_modules/ink/build/components/Spacer.js.map +1 -0
- package/node_modules/ink/build/components/Static.d.ts +31 -0
- package/node_modules/ink/build/components/Static.js +33 -0
- package/node_modules/ink/build/components/Static.js.map +1 -0
- package/node_modules/ink/build/components/StderrContext.d.ts +17 -0
- package/node_modules/ink/build/components/StderrContext.js +13 -0
- package/node_modules/ink/build/components/StderrContext.js.map +1 -0
- package/node_modules/ink/build/components/StdinContext.d.ts +23 -0
- package/node_modules/ink/build/components/StdinContext.js +19 -0
- package/node_modules/ink/build/components/StdinContext.js.map +1 -0
- package/node_modules/ink/build/components/StdoutContext.d.ts +17 -0
- package/node_modules/ink/build/components/StdoutContext.js +13 -0
- package/node_modules/ink/build/components/StdoutContext.js.map +1 -0
- package/node_modules/ink/build/components/Text.d.ts +49 -0
- package/node_modules/ink/build/components/Text.js +40 -0
- package/node_modules/ink/build/components/Text.js.map +1 -0
- package/node_modules/ink/build/components/Transform.d.ts +15 -0
- package/node_modules/ink/build/components/Transform.js +14 -0
- package/node_modules/ink/build/components/Transform.js.map +1 -0
- package/node_modules/ink/build/devtools-window-polyfill.d.ts +1 -0
- package/node_modules/ink/build/devtools-window-polyfill.js +64 -0
- package/node_modules/ink/build/devtools-window-polyfill.js.map +1 -0
- package/node_modules/ink/build/devtools.d.ts +1 -0
- package/node_modules/ink/build/devtools.js +9 -0
- package/node_modules/ink/build/devtools.js.map +1 -0
- package/node_modules/ink/build/dom.d.ts +42 -0
- package/node_modules/ink/build/dom.js +117 -0
- package/node_modules/ink/build/dom.js.map +1 -0
- package/node_modules/ink/build/experimental/apply-style.js +140 -0
- package/node_modules/ink/build/experimental/dom.js +123 -0
- package/node_modules/ink/build/experimental/output.js +91 -0
- package/node_modules/ink/build/experimental/reconciler.js +141 -0
- package/node_modules/ink/build/experimental/renderer.js +81 -0
- package/node_modules/ink/build/get-max-width.d.ts +3 -0
- package/node_modules/ink/build/get-max-width.js +10 -0
- package/node_modules/ink/build/get-max-width.js.map +1 -0
- package/node_modules/ink/build/hooks/use-app.d.ts +5 -0
- package/node_modules/ink/build/hooks/use-app.js +8 -0
- package/node_modules/ink/build/hooks/use-app.js.map +1 -0
- package/node_modules/ink/build/hooks/use-focus-manager.d.ts +34 -0
- package/node_modules/ink/build/hooks/use-focus-manager.js +18 -0
- package/node_modules/ink/build/hooks/use-focus-manager.js.map +1 -0
- package/node_modules/ink/build/hooks/use-focus.d.ts +34 -0
- package/node_modules/ink/build/hooks/use-focus.js +47 -0
- package/node_modules/ink/build/hooks/use-focus.js.map +1 -0
- package/node_modules/ink/build/hooks/use-input.d.ts +97 -0
- package/node_modules/ink/build/hooks/use-input.js +96 -0
- package/node_modules/ink/build/hooks/use-input.js.map +1 -0
- package/node_modules/ink/build/hooks/use-stderr.d.ts +5 -0
- package/node_modules/ink/build/hooks/use-stderr.js +8 -0
- package/node_modules/ink/build/hooks/use-stderr.js.map +1 -0
- package/node_modules/ink/build/hooks/use-stdin.d.ts +5 -0
- package/node_modules/ink/build/hooks/use-stdin.js +8 -0
- package/node_modules/ink/build/hooks/use-stdin.js.map +1 -0
- package/node_modules/ink/build/hooks/use-stdout.d.ts +5 -0
- package/node_modules/ink/build/hooks/use-stdout.js +8 -0
- package/node_modules/ink/build/hooks/use-stdout.js.map +1 -0
- package/node_modules/ink/build/hooks/useInput.js +38 -0
- package/node_modules/ink/build/index.d.ts +27 -0
- package/node_modules/ink/build/index.js +16 -0
- package/node_modules/ink/build/index.js.map +1 -0
- package/node_modules/ink/build/ink.d.ts +37 -0
- package/node_modules/ink/build/ink.js +235 -0
- package/node_modules/ink/build/ink.js.map +1 -0
- package/node_modules/ink/build/instance.js +205 -0
- package/node_modules/ink/build/instances.d.ts +3 -0
- package/node_modules/ink/build/instances.js +8 -0
- package/node_modules/ink/build/instances.js.map +1 -0
- package/node_modules/ink/build/log-update.d.ts +12 -0
- package/node_modules/ink/build/log-update.js +37 -0
- package/node_modules/ink/build/log-update.js.map +1 -0
- package/node_modules/ink/build/measure-element.d.ts +16 -0
- package/node_modules/ink/build/measure-element.js +9 -0
- package/node_modules/ink/build/measure-element.js.map +1 -0
- package/node_modules/ink/build/measure-text.d.ts +6 -0
- package/node_modules/ink/build/measure-text.js +20 -0
- package/node_modules/ink/build/measure-text.js.map +1 -0
- package/node_modules/ink/build/output.d.ts +35 -0
- package/node_modules/ink/build/output.js +148 -0
- package/node_modules/ink/build/output.js.map +1 -0
- package/node_modules/ink/build/parse-keypress.d.ts +14 -0
- package/node_modules/ink/build/parse-keypress.js +225 -0
- package/node_modules/ink/build/parse-keypress.js.map +1 -0
- package/node_modules/ink/build/reconciler.d.ts +4 -0
- package/node_modules/ink/build/reconciler.js +219 -0
- package/node_modules/ink/build/reconciler.js.map +1 -0
- package/node_modules/ink/build/render-border.d.ts +4 -0
- package/node_modules/ink/build/render-border.js +73 -0
- package/node_modules/ink/build/render-border.js.map +1 -0
- package/node_modules/ink/build/render-node-to-output.d.ts +10 -0
- package/node_modules/ink/build/render-node-to-output.js +99 -0
- package/node_modules/ink/build/render-node-to-output.js.map +1 -0
- package/node_modules/ink/build/render.d.ts +63 -0
- package/node_modules/ink/build/render.js +48 -0
- package/node_modules/ink/build/render.js.map +1 -0
- package/node_modules/ink/build/renderer.d.ts +8 -0
- package/node_modules/ink/build/renderer.js +36 -0
- package/node_modules/ink/build/renderer.js.map +1 -0
- package/node_modules/ink/build/squash-text-nodes.d.ts +3 -0
- package/node_modules/ink/build/squash-text-nodes.js +35 -0
- package/node_modules/ink/build/squash-text-nodes.js.map +1 -0
- package/node_modules/ink/build/styles.d.ts +243 -0
- package/node_modules/ink/build/styles.js +232 -0
- package/node_modules/ink/build/styles.js.map +1 -0
- package/node_modules/ink/build/wrap-text.d.ts +3 -0
- package/node_modules/ink/build/wrap-text.js +31 -0
- package/node_modules/ink/build/wrap-text.js.map +1 -0
- package/node_modules/ink/license +9 -0
- package/node_modules/ink/package.json +196 -0
- package/node_modules/ink/readme.md +2162 -0
- package/node_modules/ink-text-input/build/index.d.ts +46 -0
- package/node_modules/ink-text-input/build/index.js +118 -0
- package/node_modules/ink-text-input/build/index.js.map +1 -0
- package/node_modules/ink-text-input/license +9 -0
- package/node_modules/ink-text-input/package.json +87 -0
- package/node_modules/ink-text-input/readme.md +122 -0
- package/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
- package/node_modules/is-fullwidth-code-point/index.js +40 -0
- package/node_modules/is-fullwidth-code-point/license +9 -0
- package/node_modules/is-fullwidth-code-point/package.json +45 -0
- package/node_modules/is-fullwidth-code-point/readme.md +43 -0
- package/node_modules/is-in-ci/cli.js +5 -0
- package/node_modules/is-in-ci/index.d.ts +15 -0
- package/node_modules/is-in-ci/index.js +11 -0
- package/node_modules/is-in-ci/license +9 -0
- package/node_modules/is-in-ci/package.json +49 -0
- package/node_modules/is-in-ci/readme.md +44 -0
- package/node_modules/is-safe-filename/index.d.ts +59 -0
- package/node_modules/is-safe-filename/index.js +41 -0
- package/node_modules/is-safe-filename/license +9 -0
- package/node_modules/is-safe-filename/package.json +45 -0
- package/node_modules/is-safe-filename/readme.md +62 -0
- package/node_modules/jose/LICENSE.md +21 -0
- package/node_modules/jose/README.md +151 -0
- package/node_modules/jose/dist/browser/index.js +30 -0
- package/node_modules/jose/dist/browser/jwe/compact/decrypt.js +27 -0
- package/node_modules/jose/dist/browser/jwe/compact/encrypt.js +26 -0
- package/node_modules/jose/dist/browser/jwe/flattened/decrypt.js +161 -0
- package/node_modules/jose/dist/browser/jwe/flattened/encrypt.js +153 -0
- package/node_modules/jose/dist/browser/jwe/general/decrypt.js +31 -0
- package/node_modules/jose/dist/browser/jwe/general/encrypt.js +174 -0
- package/node_modules/jose/dist/browser/jwk/embedded.js +17 -0
- package/node_modules/jose/dist/browser/jwk/thumbprint.js +53 -0
- package/node_modules/jose/dist/browser/jwks/local.js +124 -0
- package/node_modules/jose/dist/browser/jwks/remote.js +139 -0
- package/node_modules/jose/dist/browser/jws/compact/sign.js +17 -0
- package/node_modules/jose/dist/browser/jws/compact/verify.js +21 -0
- package/node_modules/jose/dist/browser/jws/flattened/sign.js +81 -0
- package/node_modules/jose/dist/browser/jws/flattened/verify.js +122 -0
- package/node_modules/jose/dist/browser/jws/general/sign.js +67 -0
- package/node_modules/jose/dist/browser/jws/general/verify.js +24 -0
- package/node_modules/jose/dist/browser/jwt/decrypt.js +23 -0
- package/node_modules/jose/dist/browser/jwt/encrypt.js +68 -0
- package/node_modules/jose/dist/browser/jwt/produce.js +75 -0
- package/node_modules/jose/dist/browser/jwt/sign.js +20 -0
- package/node_modules/jose/dist/browser/jwt/unsecured.js +32 -0
- package/node_modules/jose/dist/browser/jwt/verify.js +15 -0
- package/node_modules/jose/dist/browser/key/export.js +12 -0
- package/node_modules/jose/dist/browser/key/generate_key_pair.js +4 -0
- package/node_modules/jose/dist/browser/key/generate_secret.js +4 -0
- package/node_modules/jose/dist/browser/key/import.js +45 -0
- package/node_modules/jose/dist/browser/lib/aesgcmkw.js +16 -0
- package/node_modules/jose/dist/browser/lib/buffer_utils.js +51 -0
- package/node_modules/jose/dist/browser/lib/cek.js +20 -0
- package/node_modules/jose/dist/browser/lib/check_iv_length.js +8 -0
- package/node_modules/jose/dist/browser/lib/check_key_type.js +77 -0
- package/node_modules/jose/dist/browser/lib/check_p2s.js +6 -0
- package/node_modules/jose/dist/browser/lib/crypto_key.js +157 -0
- package/node_modules/jose/dist/browser/lib/decrypt_key_management.js +129 -0
- package/node_modules/jose/dist/browser/lib/encrypt_key_management.js +89 -0
- package/node_modules/jose/dist/browser/lib/epoch.js +1 -0
- package/node_modules/jose/dist/browser/lib/format_pem.js +4 -0
- package/node_modules/jose/dist/browser/lib/invalid_key_input.js +31 -0
- package/node_modules/jose/dist/browser/lib/is_disjoint.js +22 -0
- package/node_modules/jose/dist/browser/lib/is_jwk.js +13 -0
- package/node_modules/jose/dist/browser/lib/is_object.js +16 -0
- package/node_modules/jose/dist/browser/lib/iv.js +20 -0
- package/node_modules/jose/dist/browser/lib/jwt_claims_set.js +104 -0
- package/node_modules/jose/dist/browser/lib/private_symbols.js +1 -0
- package/node_modules/jose/dist/browser/lib/secs.js +55 -0
- package/node_modules/jose/dist/browser/lib/validate_algorithms.js +11 -0
- package/node_modules/jose/dist/browser/lib/validate_crit.js +34 -0
- package/node_modules/jose/dist/browser/package.json +1 -0
- package/node_modules/jose/dist/browser/runtime/aeskw.js +32 -0
- package/node_modules/jose/dist/browser/runtime/asn1.js +205 -0
- package/node_modules/jose/dist/browser/runtime/base64url.js +37 -0
- package/node_modules/jose/dist/browser/runtime/bogus.js +6 -0
- package/node_modules/jose/dist/browser/runtime/check_cek_length.js +8 -0
- package/node_modules/jose/dist/browser/runtime/check_key_length.js +8 -0
- package/node_modules/jose/dist/browser/runtime/decrypt.js +91 -0
- package/node_modules/jose/dist/browser/runtime/digest.js +6 -0
- package/node_modules/jose/dist/browser/runtime/ecdhes.js +47 -0
- package/node_modules/jose/dist/browser/runtime/encrypt.js +76 -0
- package/node_modules/jose/dist/browser/runtime/fetch_jwks.js +34 -0
- package/node_modules/jose/dist/browser/runtime/generate.js +143 -0
- package/node_modules/jose/dist/browser/runtime/get_sign_verify_key.js +24 -0
- package/node_modules/jose/dist/browser/runtime/is_key_like.js +8 -0
- package/node_modules/jose/dist/browser/runtime/jwk_to_key.js +104 -0
- package/node_modules/jose/dist/browser/runtime/key_to_jwk.js +21 -0
- package/node_modules/jose/dist/browser/runtime/normalize_key.js +68 -0
- package/node_modules/jose/dist/browser/runtime/pbes2kw.js +51 -0
- package/node_modules/jose/dist/browser/runtime/random.js +2 -0
- package/node_modules/jose/dist/browser/runtime/rsaes.js +37 -0
- package/node_modules/jose/dist/browser/runtime/runtime.js +1 -0
- package/node_modules/jose/dist/browser/runtime/sign.js +11 -0
- package/node_modules/jose/dist/browser/runtime/subtle_dsa.js +28 -0
- package/node_modules/jose/dist/browser/runtime/subtle_rsaes.js +12 -0
- package/node_modules/jose/dist/browser/runtime/timing_safe_equal.js +19 -0
- package/node_modules/jose/dist/browser/runtime/verify.js +16 -0
- package/node_modules/jose/dist/browser/runtime/webcrypto.js +2 -0
- package/node_modules/jose/dist/browser/util/base64url.js +3 -0
- package/node_modules/jose/dist/browser/util/decode_jwt.js +32 -0
- package/node_modules/jose/dist/browser/util/decode_protected_header.js +34 -0
- package/node_modules/jose/dist/browser/util/errors.js +114 -0
- package/node_modules/jose/dist/browser/util/runtime.js +2 -0
- package/node_modules/jose/dist/node/cjs/index.js +69 -0
- package/node_modules/jose/dist/node/cjs/jwe/compact/decrypt.js +30 -0
- package/node_modules/jose/dist/node/cjs/jwe/compact/encrypt.js +31 -0
- package/node_modules/jose/dist/node/cjs/jwe/flattened/decrypt.js +164 -0
- package/node_modules/jose/dist/node/cjs/jwe/flattened/encrypt.js +165 -0
- package/node_modules/jose/dist/node/cjs/jwe/general/decrypt.js +34 -0
- package/node_modules/jose/dist/node/cjs/jwe/general/encrypt.js +186 -0
- package/node_modules/jose/dist/node/cjs/jwk/embedded.js +20 -0
- package/node_modules/jose/dist/node/cjs/jwk/thumbprint.js +57 -0
- package/node_modules/jose/dist/node/cjs/jwks/local.js +128 -0
- package/node_modules/jose/dist/node/cjs/jwks/remote.js +152 -0
- package/node_modules/jose/dist/node/cjs/jws/compact/sign.js +22 -0
- package/node_modules/jose/dist/node/cjs/jws/compact/verify.js +24 -0
- package/node_modules/jose/dist/node/cjs/jws/flattened/sign.js +88 -0
- package/node_modules/jose/dist/node/cjs/jws/flattened/verify.js +125 -0
- package/node_modules/jose/dist/node/cjs/jws/general/sign.js +77 -0
- package/node_modules/jose/dist/node/cjs/jws/general/verify.js +27 -0
- package/node_modules/jose/dist/node/cjs/jwt/decrypt.js +26 -0
- package/node_modules/jose/dist/node/cjs/jwt/encrypt.js +79 -0
- package/node_modules/jose/dist/node/cjs/jwt/produce.js +80 -0
- package/node_modules/jose/dist/node/cjs/jwt/sign.js +25 -0
- package/node_modules/jose/dist/node/cjs/jwt/unsecured.js +36 -0
- package/node_modules/jose/dist/node/cjs/jwt/verify.js +18 -0
- package/node_modules/jose/dist/node/cjs/key/export.js +17 -0
- package/node_modules/jose/dist/node/cjs/key/generate_key_pair.js +7 -0
- package/node_modules/jose/dist/node/cjs/key/generate_secret.js +7 -0
- package/node_modules/jose/dist/node/cjs/key/import.js +51 -0
- package/node_modules/jose/dist/node/cjs/lib/aesgcmkw.js +20 -0
- package/node_modules/jose/dist/node/cjs/lib/buffer_utils.js +60 -0
- package/node_modules/jose/dist/node/cjs/lib/cek.js +23 -0
- package/node_modules/jose/dist/node/cjs/lib/check_iv_length.js +10 -0
- package/node_modules/jose/dist/node/cjs/lib/check_key_type.js +80 -0
- package/node_modules/jose/dist/node/cjs/lib/check_p2s.js +9 -0
- package/node_modules/jose/dist/node/cjs/lib/crypto_key.js +161 -0
- package/node_modules/jose/dist/node/cjs/lib/decrypt_key_management.js +131 -0
- package/node_modules/jose/dist/node/cjs/lib/encrypt_key_management.js +91 -0
- package/node_modules/jose/dist/node/cjs/lib/epoch.js +3 -0
- package/node_modules/jose/dist/node/cjs/lib/invalid_key_input.js +34 -0
- package/node_modules/jose/dist/node/cjs/lib/is_disjoint.js +24 -0
- package/node_modules/jose/dist/node/cjs/lib/is_jwk.js +19 -0
- package/node_modules/jose/dist/node/cjs/lib/is_object.js +19 -0
- package/node_modules/jose/dist/node/cjs/lib/iv.js +23 -0
- package/node_modules/jose/dist/node/cjs/lib/jwt_claims_set.js +106 -0
- package/node_modules/jose/dist/node/cjs/lib/private_symbols.js +4 -0
- package/node_modules/jose/dist/node/cjs/lib/secs.js +57 -0
- package/node_modules/jose/dist/node/cjs/lib/validate_algorithms.js +13 -0
- package/node_modules/jose/dist/node/cjs/lib/validate_crit.js +36 -0
- package/node_modules/jose/dist/node/cjs/runtime/aeskw.js +55 -0
- package/node_modules/jose/dist/node/cjs/runtime/asn1.js +54 -0
- package/node_modules/jose/dist/node/cjs/runtime/base64url.js +20 -0
- package/node_modules/jose/dist/node/cjs/runtime/cbc_tag.js +11 -0
- package/node_modules/jose/dist/node/cjs/runtime/check_cek_length.js +37 -0
- package/node_modules/jose/dist/node/cjs/runtime/check_key_length.js +18 -0
- package/node_modules/jose/dist/node/cjs/runtime/ciphers.js +8 -0
- package/node_modules/jose/dist/node/cjs/runtime/decrypt.js +103 -0
- package/node_modules/jose/dist/node/cjs/runtime/digest.js +5 -0
- package/node_modules/jose/dist/node/cjs/runtime/dsa_digest.js +26 -0
- package/node_modules/jose/dist/node/cjs/runtime/ecdhes.js +70 -0
- package/node_modules/jose/dist/node/cjs/runtime/encrypt.js +80 -0
- package/node_modules/jose/dist/node/cjs/runtime/fetch_jwks.js +45 -0
- package/node_modules/jose/dist/node/cjs/runtime/generate.js +103 -0
- package/node_modules/jose/dist/node/cjs/runtime/get_named_curve.js +61 -0
- package/node_modules/jose/dist/node/cjs/runtime/get_sign_verify_key.js +31 -0
- package/node_modules/jose/dist/node/cjs/runtime/hmac_digest.js +16 -0
- package/node_modules/jose/dist/node/cjs/runtime/is_key_like.js +11 -0
- package/node_modules/jose/dist/node/cjs/runtime/is_key_object.js +4 -0
- package/node_modules/jose/dist/node/cjs/runtime/jwk_to_key.js +10 -0
- package/node_modules/jose/dist/node/cjs/runtime/key_to_jwk.js +36 -0
- package/node_modules/jose/dist/node/cjs/runtime/node_key.js +111 -0
- package/node_modules/jose/dist/node/cjs/runtime/normalize_key.js +3 -0
- package/node_modules/jose/dist/node/cjs/runtime/pbes2kw.js +48 -0
- package/node_modules/jose/dist/node/cjs/runtime/random.js +5 -0
- package/node_modules/jose/dist/node/cjs/runtime/rsaes.js +71 -0
- package/node_modules/jose/dist/node/cjs/runtime/runtime.js +3 -0
- package/node_modules/jose/dist/node/cjs/runtime/sign.js +19 -0
- package/node_modules/jose/dist/node/cjs/runtime/timing_safe_equal.js +5 -0
- package/node_modules/jose/dist/node/cjs/runtime/verify.js +31 -0
- package/node_modules/jose/dist/node/cjs/runtime/webcrypto.js +9 -0
- package/node_modules/jose/dist/node/cjs/util/base64url.js +6 -0
- package/node_modules/jose/dist/node/cjs/util/decode_jwt.js +35 -0
- package/node_modules/jose/dist/node/cjs/util/decode_protected_header.js +37 -0
- package/node_modules/jose/dist/node/cjs/util/errors.js +117 -0
- package/node_modules/jose/dist/node/cjs/util/runtime.js +4 -0
- package/node_modules/jose/dist/node/esm/index.js +30 -0
- package/node_modules/jose/dist/node/esm/jwe/compact/decrypt.js +27 -0
- package/node_modules/jose/dist/node/esm/jwe/compact/encrypt.js +27 -0
- package/node_modules/jose/dist/node/esm/jwe/flattened/decrypt.js +161 -0
- package/node_modules/jose/dist/node/esm/jwe/flattened/encrypt.js +161 -0
- package/node_modules/jose/dist/node/esm/jwe/general/decrypt.js +31 -0
- package/node_modules/jose/dist/node/esm/jwe/general/encrypt.js +182 -0
- package/node_modules/jose/dist/node/esm/jwk/embedded.js +17 -0
- package/node_modules/jose/dist/node/esm/jwk/thumbprint.js +53 -0
- package/node_modules/jose/dist/node/esm/jwks/local.js +125 -0
- package/node_modules/jose/dist/node/esm/jwks/remote.js +148 -0
- package/node_modules/jose/dist/node/esm/jws/compact/sign.js +18 -0
- package/node_modules/jose/dist/node/esm/jws/compact/verify.js +21 -0
- package/node_modules/jose/dist/node/esm/jws/flattened/sign.js +84 -0
- package/node_modules/jose/dist/node/esm/jws/flattened/verify.js +122 -0
- package/node_modules/jose/dist/node/esm/jws/general/sign.js +73 -0
- package/node_modules/jose/dist/node/esm/jws/general/verify.js +24 -0
- package/node_modules/jose/dist/node/esm/jwt/decrypt.js +23 -0
- package/node_modules/jose/dist/node/esm/jwt/encrypt.js +75 -0
- package/node_modules/jose/dist/node/esm/jwt/produce.js +76 -0
- package/node_modules/jose/dist/node/esm/jwt/sign.js +21 -0
- package/node_modules/jose/dist/node/esm/jwt/unsecured.js +32 -0
- package/node_modules/jose/dist/node/esm/jwt/verify.js +15 -0
- package/node_modules/jose/dist/node/esm/key/export.js +12 -0
- package/node_modules/jose/dist/node/esm/key/generate_key_pair.js +4 -0
- package/node_modules/jose/dist/node/esm/key/generate_secret.js +4 -0
- package/node_modules/jose/dist/node/esm/key/import.js +45 -0
- package/node_modules/jose/dist/node/esm/lib/aesgcmkw.js +16 -0
- package/node_modules/jose/dist/node/esm/lib/buffer_utils.js +51 -0
- package/node_modules/jose/dist/node/esm/lib/cek.js +20 -0
- package/node_modules/jose/dist/node/esm/lib/check_iv_length.js +8 -0
- package/node_modules/jose/dist/node/esm/lib/check_key_type.js +77 -0
- package/node_modules/jose/dist/node/esm/lib/check_p2s.js +6 -0
- package/node_modules/jose/dist/node/esm/lib/crypto_key.js +157 -0
- package/node_modules/jose/dist/node/esm/lib/decrypt_key_management.js +129 -0
- package/node_modules/jose/dist/node/esm/lib/encrypt_key_management.js +89 -0
- package/node_modules/jose/dist/node/esm/lib/epoch.js +1 -0
- package/node_modules/jose/dist/node/esm/lib/invalid_key_input.js +31 -0
- package/node_modules/jose/dist/node/esm/lib/is_disjoint.js +22 -0
- package/node_modules/jose/dist/node/esm/lib/is_jwk.js +13 -0
- package/node_modules/jose/dist/node/esm/lib/is_object.js +16 -0
- package/node_modules/jose/dist/node/esm/lib/iv.js +20 -0
- package/node_modules/jose/dist/node/esm/lib/jwt_claims_set.js +104 -0
- package/node_modules/jose/dist/node/esm/lib/private_symbols.js +1 -0
- package/node_modules/jose/dist/node/esm/lib/secs.js +55 -0
- package/node_modules/jose/dist/node/esm/lib/validate_algorithms.js +11 -0
- package/node_modules/jose/dist/node/esm/lib/validate_crit.js +34 -0
- package/node_modules/jose/dist/node/esm/package.json +1 -0
- package/node_modules/jose/dist/node/esm/runtime/aeskw.js +50 -0
- package/node_modules/jose/dist/node/esm/runtime/asn1.js +46 -0
- package/node_modules/jose/dist/node/esm/runtime/base64url.js +14 -0
- package/node_modules/jose/dist/node/esm/runtime/cbc_tag.js +8 -0
- package/node_modules/jose/dist/node/esm/runtime/check_cek_length.js +35 -0
- package/node_modules/jose/dist/node/esm/runtime/check_key_length.js +16 -0
- package/node_modules/jose/dist/node/esm/runtime/ciphers.js +6 -0
- package/node_modules/jose/dist/node/esm/runtime/decrypt.js +101 -0
- package/node_modules/jose/dist/node/esm/runtime/digest.js +3 -0
- package/node_modules/jose/dist/node/esm/runtime/dsa_digest.js +23 -0
- package/node_modules/jose/dist/node/esm/runtime/ecdhes.js +64 -0
- package/node_modules/jose/dist/node/esm/runtime/encrypt.js +78 -0
- package/node_modules/jose/dist/node/esm/runtime/fetch_jwks.js +43 -0
- package/node_modules/jose/dist/node/esm/runtime/generate.js +99 -0
- package/node_modules/jose/dist/node/esm/runtime/get_named_curve.js +58 -0
- package/node_modules/jose/dist/node/esm/runtime/get_sign_verify_key.js +28 -0
- package/node_modules/jose/dist/node/esm/runtime/hmac_digest.js +13 -0
- package/node_modules/jose/dist/node/esm/runtime/is_key_like.js +8 -0
- package/node_modules/jose/dist/node/esm/runtime/is_key_object.js +2 -0
- package/node_modules/jose/dist/node/esm/runtime/jwk_to_key.js +8 -0
- package/node_modules/jose/dist/node/esm/runtime/key_to_jwk.js +34 -0
- package/node_modules/jose/dist/node/esm/runtime/node_key.js +108 -0
- package/node_modules/jose/dist/node/esm/runtime/normalize_key.js +1 -0
- package/node_modules/jose/dist/node/esm/runtime/pbes2kw.js +43 -0
- package/node_modules/jose/dist/node/esm/runtime/random.js +1 -0
- package/node_modules/jose/dist/node/esm/runtime/rsaes.js +66 -0
- package/node_modules/jose/dist/node/esm/runtime/runtime.js +1 -0
- package/node_modules/jose/dist/node/esm/runtime/sign.js +17 -0
- package/node_modules/jose/dist/node/esm/runtime/timing_safe_equal.js +3 -0
- package/node_modules/jose/dist/node/esm/runtime/verify.js +29 -0
- package/node_modules/jose/dist/node/esm/runtime/webcrypto.js +5 -0
- package/node_modules/jose/dist/node/esm/util/base64url.js +3 -0
- package/node_modules/jose/dist/node/esm/util/decode_jwt.js +32 -0
- package/node_modules/jose/dist/node/esm/util/decode_protected_header.js +34 -0
- package/node_modules/jose/dist/node/esm/util/errors.js +99 -0
- package/node_modules/jose/dist/node/esm/util/runtime.js +2 -0
- package/node_modules/jose/dist/types/index.d.ts +48 -0
- package/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +26 -0
- package/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +55 -0
- package/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +26 -0
- package/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +81 -0
- package/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +26 -0
- package/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +59 -0
- package/node_modules/jose/dist/types/jwk/embedded.d.ts +12 -0
- package/node_modules/jose/dist/types/jwk/thumbprint.d.ts +27 -0
- package/node_modules/jose/dist/types/jwks/local.d.ts +23 -0
- package/node_modules/jose/dist/types/jwks/remote.d.ts +135 -0
- package/node_modules/jose/dist/types/jws/compact/sign.d.ts +27 -0
- package/node_modules/jose/dist/types/jws/compact/verify.d.ts +28 -0
- package/node_modules/jose/dist/types/jws/flattened/sign.d.ts +35 -0
- package/node_modules/jose/dist/types/jws/flattened/verify.d.ts +28 -0
- package/node_modules/jose/dist/types/jws/general/sign.d.ts +44 -0
- package/node_modules/jose/dist/types/jws/general/verify.d.ts +28 -0
- package/node_modules/jose/dist/types/jwt/decrypt.d.ts +30 -0
- package/node_modules/jose/dist/types/jwt/encrypt.d.ts +80 -0
- package/node_modules/jose/dist/types/jwt/produce.d.ts +104 -0
- package/node_modules/jose/dist/types/jwt/sign.d.ts +26 -0
- package/node_modules/jose/dist/types/jwt/unsecured.d.ts +24 -0
- package/node_modules/jose/dist/types/jwt/verify.d.ts +32 -0
- package/node_modules/jose/dist/types/key/export.d.ts +30 -0
- package/node_modules/jose/dist/types/key/generate_key_pair.d.ts +40 -0
- package/node_modules/jose/dist/types/key/generate_secret.d.ts +21 -0
- package/node_modules/jose/dist/types/key/import.d.ts +76 -0
- package/node_modules/jose/dist/types/types.d.ts +696 -0
- package/node_modules/jose/dist/types/util/base64url.d.ts +19 -0
- package/node_modules/jose/dist/types/util/decode_jwt.d.ts +13 -0
- package/node_modules/jose/dist/types/util/decode_protected_header.d.ts +11 -0
- package/node_modules/jose/dist/types/util/errors.d.ts +194 -0
- package/node_modules/jose/dist/types/util/runtime.d.ts +3 -0
- package/node_modules/jose/package.json +381 -0
- package/node_modules/js-tokens/CHANGELOG.md +151 -0
- package/node_modules/js-tokens/LICENSE +21 -0
- package/node_modules/js-tokens/README.md +240 -0
- package/node_modules/js-tokens/index.js +23 -0
- package/node_modules/js-tokens/package.json +30 -0
- package/node_modules/lodash/LICENSE +47 -0
- package/node_modules/lodash/README.md +39 -0
- package/node_modules/lodash/_DataView.js +7 -0
- package/node_modules/lodash/_Hash.js +32 -0
- package/node_modules/lodash/_LazyWrapper.js +28 -0
- package/node_modules/lodash/_ListCache.js +32 -0
- package/node_modules/lodash/_LodashWrapper.js +22 -0
- package/node_modules/lodash/_Map.js +7 -0
- package/node_modules/lodash/_MapCache.js +32 -0
- package/node_modules/lodash/_Promise.js +7 -0
- package/node_modules/lodash/_Set.js +7 -0
- package/node_modules/lodash/_SetCache.js +27 -0
- package/node_modules/lodash/_Stack.js +27 -0
- package/node_modules/lodash/_Symbol.js +6 -0
- package/node_modules/lodash/_Uint8Array.js +6 -0
- package/node_modules/lodash/_WeakMap.js +7 -0
- package/node_modules/lodash/_apply.js +21 -0
- package/node_modules/lodash/_arrayAggregator.js +22 -0
- package/node_modules/lodash/_arrayEach.js +22 -0
- package/node_modules/lodash/_arrayEachRight.js +21 -0
- package/node_modules/lodash/_arrayEvery.js +23 -0
- package/node_modules/lodash/_arrayFilter.js +25 -0
- package/node_modules/lodash/_arrayIncludes.js +17 -0
- package/node_modules/lodash/_arrayIncludesWith.js +22 -0
- package/node_modules/lodash/_arrayLikeKeys.js +49 -0
- package/node_modules/lodash/_arrayMap.js +21 -0
- package/node_modules/lodash/_arrayPush.js +20 -0
- package/node_modules/lodash/_arrayReduce.js +26 -0
- package/node_modules/lodash/_arrayReduceRight.js +24 -0
- package/node_modules/lodash/_arraySample.js +15 -0
- package/node_modules/lodash/_arraySampleSize.js +17 -0
- package/node_modules/lodash/_arrayShuffle.js +15 -0
- package/node_modules/lodash/_arraySome.js +23 -0
- package/node_modules/lodash/_asciiSize.js +12 -0
- package/node_modules/lodash/_asciiToArray.js +12 -0
- package/node_modules/lodash/_asciiWords.js +15 -0
- package/node_modules/lodash/_assignMergeValue.js +20 -0
- package/node_modules/lodash/_assignValue.js +28 -0
- package/node_modules/lodash/_assocIndexOf.js +21 -0
- package/node_modules/lodash/_baseAggregator.js +21 -0
- package/node_modules/lodash/_baseAssign.js +17 -0
- package/node_modules/lodash/_baseAssignIn.js +17 -0
- package/node_modules/lodash/_baseAssignValue.js +25 -0
- package/node_modules/lodash/_baseAt.js +23 -0
- package/node_modules/lodash/_baseClamp.js +22 -0
- package/node_modules/lodash/_baseClone.js +166 -0
- package/node_modules/lodash/_baseConforms.js +18 -0
- package/node_modules/lodash/_baseConformsTo.js +27 -0
- package/node_modules/lodash/_baseCreate.js +30 -0
- package/node_modules/lodash/_baseDelay.js +21 -0
- package/node_modules/lodash/_baseDifference.js +67 -0
- package/node_modules/lodash/_baseEach.js +14 -0
- package/node_modules/lodash/_baseEachRight.js +14 -0
- package/node_modules/lodash/_baseEvery.js +21 -0
- package/node_modules/lodash/_baseExtremum.js +32 -0
- package/node_modules/lodash/_baseFill.js +32 -0
- package/node_modules/lodash/_baseFilter.js +21 -0
- package/node_modules/lodash/_baseFindIndex.js +24 -0
- package/node_modules/lodash/_baseFindKey.js +23 -0
- package/node_modules/lodash/_baseFlatten.js +38 -0
- package/node_modules/lodash/_baseFor.js +16 -0
- package/node_modules/lodash/_baseForOwn.js +16 -0
- package/node_modules/lodash/_baseForOwnRight.js +16 -0
- package/node_modules/lodash/_baseForRight.js +15 -0
- package/node_modules/lodash/_baseFunctions.js +19 -0
- package/node_modules/lodash/_baseGet.js +24 -0
- package/node_modules/lodash/_baseGetAllKeys.js +20 -0
- package/node_modules/lodash/_baseGetTag.js +28 -0
- package/node_modules/lodash/_baseGt.js +14 -0
- package/node_modules/lodash/_baseHas.js +19 -0
- package/node_modules/lodash/_baseHasIn.js +13 -0
- package/node_modules/lodash/_baseInRange.js +18 -0
- package/node_modules/lodash/_baseIndexOf.js +20 -0
- package/node_modules/lodash/_baseIndexOfWith.js +23 -0
- package/node_modules/lodash/_baseIntersection.js +74 -0
- package/node_modules/lodash/_baseInverter.js +21 -0
- package/node_modules/lodash/_baseInvoke.js +24 -0
- package/node_modules/lodash/_baseIsArguments.js +18 -0
- package/node_modules/lodash/_baseIsArrayBuffer.js +17 -0
- package/node_modules/lodash/_baseIsDate.js +18 -0
- package/node_modules/lodash/_baseIsEqual.js +28 -0
- package/node_modules/lodash/_baseIsEqualDeep.js +83 -0
- package/node_modules/lodash/_baseIsMap.js +18 -0
- package/node_modules/lodash/_baseIsMatch.js +62 -0
- package/node_modules/lodash/_baseIsNaN.js +12 -0
- package/node_modules/lodash/_baseIsNative.js +47 -0
- package/node_modules/lodash/_baseIsRegExp.js +18 -0
- package/node_modules/lodash/_baseIsSet.js +18 -0
- package/node_modules/lodash/_baseIsTypedArray.js +60 -0
- package/node_modules/lodash/_baseIteratee.js +31 -0
- package/node_modules/lodash/_baseKeys.js +30 -0
- package/node_modules/lodash/_baseKeysIn.js +33 -0
- package/node_modules/lodash/_baseLodash.js +10 -0
- package/node_modules/lodash/_baseLt.js +14 -0
- package/node_modules/lodash/_baseMap.js +22 -0
- package/node_modules/lodash/_baseMatches.js +22 -0
- package/node_modules/lodash/_baseMatchesProperty.js +33 -0
- package/node_modules/lodash/_baseMean.js +20 -0
- package/node_modules/lodash/_baseMerge.js +42 -0
- package/node_modules/lodash/_baseMergeDeep.js +94 -0
- package/node_modules/lodash/_baseNth.js +20 -0
- package/node_modules/lodash/_baseOrderBy.js +49 -0
- package/node_modules/lodash/_basePick.js +19 -0
- package/node_modules/lodash/_basePickBy.js +30 -0
- package/node_modules/lodash/_baseProperty.js +14 -0
- package/node_modules/lodash/_basePropertyDeep.js +16 -0
- package/node_modules/lodash/_basePropertyOf.js +14 -0
- package/node_modules/lodash/_basePullAll.js +51 -0
- package/node_modules/lodash/_basePullAt.js +37 -0
- package/node_modules/lodash/_baseRandom.js +18 -0
- package/node_modules/lodash/_baseRange.js +28 -0
- package/node_modules/lodash/_baseReduce.js +23 -0
- package/node_modules/lodash/_baseRepeat.js +35 -0
- package/node_modules/lodash/_baseRest.js +17 -0
- package/node_modules/lodash/_baseSample.js +15 -0
- package/node_modules/lodash/_baseSampleSize.js +18 -0
- package/node_modules/lodash/_baseSet.js +51 -0
- package/node_modules/lodash/_baseSetData.js +17 -0
- package/node_modules/lodash/_baseSetToString.js +22 -0
- package/node_modules/lodash/_baseShuffle.js +15 -0
- package/node_modules/lodash/_baseSlice.js +31 -0
- package/node_modules/lodash/_baseSome.js +22 -0
- package/node_modules/lodash/_baseSortBy.js +21 -0
- package/node_modules/lodash/_baseSortedIndex.js +42 -0
- package/node_modules/lodash/_baseSortedIndexBy.js +67 -0
- package/node_modules/lodash/_baseSortedUniq.js +30 -0
- package/node_modules/lodash/_baseSum.js +24 -0
- package/node_modules/lodash/_baseTimes.js +20 -0
- package/node_modules/lodash/_baseToNumber.js +24 -0
- package/node_modules/lodash/_baseToPairs.js +18 -0
- package/node_modules/lodash/_baseToString.js +37 -0
- package/node_modules/lodash/_baseTrim.js +19 -0
- package/node_modules/lodash/_baseUnary.js +14 -0
- package/node_modules/lodash/_baseUniq.js +72 -0
- package/node_modules/lodash/_baseUnset.js +52 -0
- package/node_modules/lodash/_baseUpdate.js +18 -0
- package/node_modules/lodash/_baseValues.js +19 -0
- package/node_modules/lodash/_baseWhile.js +26 -0
- package/node_modules/lodash/_baseWrapperValue.js +25 -0
- package/node_modules/lodash/_baseXor.js +36 -0
- package/node_modules/lodash/_baseZipObject.js +23 -0
- package/node_modules/lodash/_cacheHas.js +13 -0
- package/node_modules/lodash/_castArrayLikeObject.js +14 -0
- package/node_modules/lodash/_castFunction.js +14 -0
- package/node_modules/lodash/_castPath.js +21 -0
- package/node_modules/lodash/_castRest.js +14 -0
- package/node_modules/lodash/_castSlice.js +18 -0
- package/node_modules/lodash/_charsEndIndex.js +19 -0
- package/node_modules/lodash/_charsStartIndex.js +20 -0
- package/node_modules/lodash/_cloneArrayBuffer.js +16 -0
- package/node_modules/lodash/_cloneBuffer.js +35 -0
- package/node_modules/lodash/_cloneDataView.js +16 -0
- package/node_modules/lodash/_cloneRegExp.js +17 -0
- package/node_modules/lodash/_cloneSymbol.js +18 -0
- package/node_modules/lodash/_cloneTypedArray.js +16 -0
- package/node_modules/lodash/_compareAscending.js +41 -0
- package/node_modules/lodash/_compareMultiple.js +44 -0
- package/node_modules/lodash/_composeArgs.js +39 -0
- package/node_modules/lodash/_composeArgsRight.js +41 -0
- package/node_modules/lodash/_copyArray.js +20 -0
- package/node_modules/lodash/_copyObject.js +40 -0
- package/node_modules/lodash/_copySymbols.js +16 -0
- package/node_modules/lodash/_copySymbolsIn.js +16 -0
- package/node_modules/lodash/_coreJsData.js +6 -0
- package/node_modules/lodash/_countHolders.js +21 -0
- package/node_modules/lodash/_createAggregator.js +23 -0
- package/node_modules/lodash/_createAssigner.js +37 -0
- package/node_modules/lodash/_createBaseEach.js +32 -0
- package/node_modules/lodash/_createBaseFor.js +25 -0
- package/node_modules/lodash/_createBind.js +28 -0
- package/node_modules/lodash/_createCaseFirst.js +33 -0
- package/node_modules/lodash/_createCompounder.js +24 -0
- package/node_modules/lodash/_createCtor.js +37 -0
- package/node_modules/lodash/_createCurry.js +46 -0
- package/node_modules/lodash/_createFind.js +25 -0
- package/node_modules/lodash/_createFlow.js +78 -0
- package/node_modules/lodash/_createHybrid.js +92 -0
- package/node_modules/lodash/_createInverter.js +17 -0
- package/node_modules/lodash/_createMathOperation.js +38 -0
- package/node_modules/lodash/_createOver.js +27 -0
- package/node_modules/lodash/_createPadding.js +33 -0
- package/node_modules/lodash/_createPartial.js +43 -0
- package/node_modules/lodash/_createRange.js +30 -0
- package/node_modules/lodash/_createRecurry.js +56 -0
- package/node_modules/lodash/_createRelationalOperation.js +20 -0
- package/node_modules/lodash/_createRound.js +35 -0
- package/node_modules/lodash/_createSet.js +19 -0
- package/node_modules/lodash/_createToPairs.js +30 -0
- package/node_modules/lodash/_createWrap.js +106 -0
- package/node_modules/lodash/_customDefaultsAssignIn.js +29 -0
- package/node_modules/lodash/_customDefaultsMerge.js +28 -0
- package/node_modules/lodash/_customOmitClone.js +16 -0
- package/node_modules/lodash/_deburrLetter.js +71 -0
- package/node_modules/lodash/_defineProperty.js +11 -0
- package/node_modules/lodash/_equalArrays.js +84 -0
- package/node_modules/lodash/_equalByTag.js +112 -0
- package/node_modules/lodash/_equalObjects.js +90 -0
- package/node_modules/lodash/_escapeHtmlChar.js +21 -0
- package/node_modules/lodash/_escapeStringChar.js +22 -0
- package/node_modules/lodash/_flatRest.js +16 -0
- package/node_modules/lodash/_freeGlobal.js +4 -0
- package/node_modules/lodash/_getAllKeys.js +16 -0
- package/node_modules/lodash/_getAllKeysIn.js +17 -0
- package/node_modules/lodash/_getData.js +15 -0
- package/node_modules/lodash/_getFuncName.js +31 -0
- package/node_modules/lodash/_getHolder.js +13 -0
- package/node_modules/lodash/_getMapData.js +18 -0
- package/node_modules/lodash/_getMatchData.js +24 -0
- package/node_modules/lodash/_getNative.js +17 -0
- package/node_modules/lodash/_getPrototype.js +6 -0
- package/node_modules/lodash/_getRawTag.js +46 -0
- package/node_modules/lodash/_getSymbols.js +30 -0
- package/node_modules/lodash/_getSymbolsIn.js +25 -0
- package/node_modules/lodash/_getTag.js +58 -0
- package/node_modules/lodash/_getValue.js +13 -0
- package/node_modules/lodash/_getView.js +33 -0
- package/node_modules/lodash/_getWrapDetails.js +17 -0
- package/node_modules/lodash/_hasPath.js +39 -0
- package/node_modules/lodash/_hasUnicode.js +26 -0
- package/node_modules/lodash/_hasUnicodeWord.js +15 -0
- package/node_modules/lodash/_hashClear.js +15 -0
- package/node_modules/lodash/_hashDelete.js +17 -0
- package/node_modules/lodash/_hashGet.js +30 -0
- package/node_modules/lodash/_hashHas.js +23 -0
- package/node_modules/lodash/_hashSet.js +23 -0
- package/node_modules/lodash/_initCloneArray.js +26 -0
- package/node_modules/lodash/_initCloneByTag.js +77 -0
- package/node_modules/lodash/_initCloneObject.js +18 -0
- package/node_modules/lodash/_insertWrapDetails.js +23 -0
- package/node_modules/lodash/_isFlattenable.js +20 -0
- package/node_modules/lodash/_isIndex.js +25 -0
- package/node_modules/lodash/_isIterateeCall.js +30 -0
- package/node_modules/lodash/_isKey.js +29 -0
- package/node_modules/lodash/_isKeyable.js +15 -0
- package/node_modules/lodash/_isLaziable.js +28 -0
- package/node_modules/lodash/_isMaskable.js +14 -0
- package/node_modules/lodash/_isMasked.js +20 -0
- package/node_modules/lodash/_isPrototype.js +18 -0
- package/node_modules/lodash/_isStrictComparable.js +15 -0
- package/node_modules/lodash/_iteratorToArray.js +18 -0
- package/node_modules/lodash/_lazyClone.js +23 -0
- package/node_modules/lodash/_lazyReverse.js +23 -0
- package/node_modules/lodash/_lazyValue.js +69 -0
- package/node_modules/lodash/_listCacheClear.js +13 -0
- package/node_modules/lodash/_listCacheDelete.js +35 -0
- package/node_modules/lodash/_listCacheGet.js +19 -0
- package/node_modules/lodash/_listCacheHas.js +16 -0
- package/node_modules/lodash/_listCacheSet.js +26 -0
- package/node_modules/lodash/_mapCacheClear.js +21 -0
- package/node_modules/lodash/_mapCacheDelete.js +18 -0
- package/node_modules/lodash/_mapCacheGet.js +16 -0
- package/node_modules/lodash/_mapCacheHas.js +16 -0
- package/node_modules/lodash/_mapCacheSet.js +22 -0
- package/node_modules/lodash/_mapToArray.js +18 -0
- package/node_modules/lodash/_matchesStrictComparable.js +20 -0
- package/node_modules/lodash/_memoizeCapped.js +26 -0
- package/node_modules/lodash/_mergeData.js +90 -0
- package/node_modules/lodash/_metaMap.js +6 -0
- package/node_modules/lodash/_nativeCreate.js +6 -0
- package/node_modules/lodash/_nativeKeys.js +6 -0
- package/node_modules/lodash/_nativeKeysIn.js +20 -0
- package/node_modules/lodash/_nodeUtil.js +30 -0
- package/node_modules/lodash/_objectToString.js +22 -0
- package/node_modules/lodash/_overArg.js +15 -0
- package/node_modules/lodash/_overRest.js +36 -0
- package/node_modules/lodash/_parent.js +16 -0
- package/node_modules/lodash/_reEscape.js +4 -0
- package/node_modules/lodash/_reEvaluate.js +4 -0
- package/node_modules/lodash/_reInterpolate.js +4 -0
- package/node_modules/lodash/_realNames.js +4 -0
- package/node_modules/lodash/_reorder.js +29 -0
- package/node_modules/lodash/_replaceHolders.js +29 -0
- package/node_modules/lodash/_root.js +9 -0
- package/node_modules/lodash/_safeGet.js +21 -0
- package/node_modules/lodash/_setCacheAdd.js +19 -0
- package/node_modules/lodash/_setCacheHas.js +14 -0
- package/node_modules/lodash/_setData.js +20 -0
- package/node_modules/lodash/_setToArray.js +18 -0
- package/node_modules/lodash/_setToPairs.js +18 -0
- package/node_modules/lodash/_setToString.js +14 -0
- package/node_modules/lodash/_setWrapToString.js +21 -0
- package/node_modules/lodash/_shortOut.js +37 -0
- package/node_modules/lodash/_shuffleSelf.js +28 -0
- package/node_modules/lodash/_stackClear.js +15 -0
- package/node_modules/lodash/_stackDelete.js +18 -0
- package/node_modules/lodash/_stackGet.js +14 -0
- package/node_modules/lodash/_stackHas.js +14 -0
- package/node_modules/lodash/_stackSet.js +34 -0
- package/node_modules/lodash/_strictIndexOf.js +23 -0
- package/node_modules/lodash/_strictLastIndexOf.js +21 -0
- package/node_modules/lodash/_stringSize.js +18 -0
- package/node_modules/lodash/_stringToArray.js +18 -0
- package/node_modules/lodash/_stringToPath.js +27 -0
- package/node_modules/lodash/_toKey.js +21 -0
- package/node_modules/lodash/_toSource.js +26 -0
- package/node_modules/lodash/_trimmedEndIndex.js +19 -0
- package/node_modules/lodash/_unescapeHtmlChar.js +21 -0
- package/node_modules/lodash/_unicodeSize.js +44 -0
- package/node_modules/lodash/_unicodeToArray.js +40 -0
- package/node_modules/lodash/_unicodeWords.js +69 -0
- package/node_modules/lodash/_updateWrapDetails.js +46 -0
- package/node_modules/lodash/_wrapperClone.js +23 -0
- package/node_modules/lodash/add.js +22 -0
- package/node_modules/lodash/after.js +42 -0
- package/node_modules/lodash/array.js +67 -0
- package/node_modules/lodash/ary.js +29 -0
- package/node_modules/lodash/assign.js +58 -0
- package/node_modules/lodash/assignIn.js +40 -0
- package/node_modules/lodash/assignInWith.js +38 -0
- package/node_modules/lodash/assignWith.js +37 -0
- package/node_modules/lodash/at.js +23 -0
- package/node_modules/lodash/attempt.js +35 -0
- package/node_modules/lodash/before.js +40 -0
- package/node_modules/lodash/bind.js +57 -0
- package/node_modules/lodash/bindAll.js +41 -0
- package/node_modules/lodash/bindKey.js +68 -0
- package/node_modules/lodash/camelCase.js +29 -0
- package/node_modules/lodash/capitalize.js +23 -0
- package/node_modules/lodash/castArray.js +44 -0
- package/node_modules/lodash/ceil.js +26 -0
- package/node_modules/lodash/chain.js +38 -0
- package/node_modules/lodash/chunk.js +50 -0
- package/node_modules/lodash/clamp.js +39 -0
- package/node_modules/lodash/clone.js +36 -0
- package/node_modules/lodash/cloneDeep.js +29 -0
- package/node_modules/lodash/cloneDeepWith.js +40 -0
- package/node_modules/lodash/cloneWith.js +42 -0
- package/node_modules/lodash/collection.js +30 -0
- package/node_modules/lodash/commit.js +33 -0
- package/node_modules/lodash/compact.js +31 -0
- package/node_modules/lodash/concat.js +43 -0
- package/node_modules/lodash/cond.js +60 -0
- package/node_modules/lodash/conforms.js +35 -0
- package/node_modules/lodash/conformsTo.js +32 -0
- package/node_modules/lodash/constant.js +26 -0
- package/node_modules/lodash/core.js +3877 -0
- package/node_modules/lodash/core.min.js +30 -0
- package/node_modules/lodash/countBy.js +40 -0
- package/node_modules/lodash/create.js +43 -0
- package/node_modules/lodash/curry.js +57 -0
- package/node_modules/lodash/curryRight.js +54 -0
- package/node_modules/lodash/date.js +3 -0
- package/node_modules/lodash/debounce.js +191 -0
- package/node_modules/lodash/deburr.js +45 -0
- package/node_modules/lodash/defaultTo.js +25 -0
- package/node_modules/lodash/defaults.js +64 -0
- package/node_modules/lodash/defaultsDeep.js +30 -0
- package/node_modules/lodash/defer.js +26 -0
- package/node_modules/lodash/delay.js +28 -0
- package/node_modules/lodash/difference.js +33 -0
- package/node_modules/lodash/differenceBy.js +44 -0
- package/node_modules/lodash/differenceWith.js +40 -0
- package/node_modules/lodash/divide.js +22 -0
- package/node_modules/lodash/drop.js +38 -0
- package/node_modules/lodash/dropRight.js +39 -0
- package/node_modules/lodash/dropRightWhile.js +45 -0
- package/node_modules/lodash/dropWhile.js +45 -0
- package/node_modules/lodash/each.js +1 -0
- package/node_modules/lodash/eachRight.js +1 -0
- package/node_modules/lodash/endsWith.js +43 -0
- package/node_modules/lodash/entries.js +1 -0
- package/node_modules/lodash/entriesIn.js +1 -0
- package/node_modules/lodash/eq.js +37 -0
- package/node_modules/lodash/escape.js +43 -0
- package/node_modules/lodash/escapeRegExp.js +32 -0
- package/node_modules/lodash/every.js +56 -0
- package/node_modules/lodash/extend.js +1 -0
- package/node_modules/lodash/extendWith.js +1 -0
- package/node_modules/lodash/fill.js +45 -0
- package/node_modules/lodash/filter.js +52 -0
- package/node_modules/lodash/find.js +42 -0
- package/node_modules/lodash/findIndex.js +55 -0
- package/node_modules/lodash/findKey.js +44 -0
- package/node_modules/lodash/findLast.js +25 -0
- package/node_modules/lodash/findLastIndex.js +59 -0
- package/node_modules/lodash/findLastKey.js +44 -0
- package/node_modules/lodash/first.js +1 -0
- package/node_modules/lodash/flatMap.js +29 -0
- package/node_modules/lodash/flatMapDeep.js +31 -0
- package/node_modules/lodash/flatMapDepth.js +31 -0
- package/node_modules/lodash/flatten.js +22 -0
- package/node_modules/lodash/flattenDeep.js +25 -0
- package/node_modules/lodash/flattenDepth.js +33 -0
- package/node_modules/lodash/flip.js +28 -0
- package/node_modules/lodash/floor.js +26 -0
- package/node_modules/lodash/flow.js +27 -0
- package/node_modules/lodash/flowRight.js +26 -0
- package/node_modules/lodash/forEach.js +41 -0
- package/node_modules/lodash/forEachRight.js +31 -0
- package/node_modules/lodash/forIn.js +39 -0
- package/node_modules/lodash/forInRight.js +37 -0
- package/node_modules/lodash/forOwn.js +36 -0
- package/node_modules/lodash/forOwnRight.js +34 -0
- package/node_modules/lodash/fp/F.js +1 -0
- package/node_modules/lodash/fp/T.js +1 -0
- package/node_modules/lodash/fp/__.js +1 -0
- package/node_modules/lodash/fp/_baseConvert.js +569 -0
- package/node_modules/lodash/fp/_convertBrowser.js +18 -0
- package/node_modules/lodash/fp/_falseOptions.js +7 -0
- package/node_modules/lodash/fp/_mapping.js +358 -0
- package/node_modules/lodash/fp/_util.js +16 -0
- package/node_modules/lodash/fp/add.js +5 -0
- package/node_modules/lodash/fp/after.js +5 -0
- package/node_modules/lodash/fp/all.js +1 -0
- package/node_modules/lodash/fp/allPass.js +1 -0
- package/node_modules/lodash/fp/always.js +1 -0
- package/node_modules/lodash/fp/any.js +1 -0
- package/node_modules/lodash/fp/anyPass.js +1 -0
- package/node_modules/lodash/fp/apply.js +1 -0
- package/node_modules/lodash/fp/array.js +2 -0
- package/node_modules/lodash/fp/ary.js +5 -0
- package/node_modules/lodash/fp/assign.js +5 -0
- package/node_modules/lodash/fp/assignAll.js +5 -0
- package/node_modules/lodash/fp/assignAllWith.js +5 -0
- package/node_modules/lodash/fp/assignIn.js +5 -0
- package/node_modules/lodash/fp/assignInAll.js +5 -0
- package/node_modules/lodash/fp/assignInAllWith.js +5 -0
- package/node_modules/lodash/fp/assignInWith.js +5 -0
- package/node_modules/lodash/fp/assignWith.js +5 -0
- package/node_modules/lodash/fp/assoc.js +1 -0
- package/node_modules/lodash/fp/assocPath.js +1 -0
- package/node_modules/lodash/fp/at.js +5 -0
- package/node_modules/lodash/fp/attempt.js +5 -0
- package/node_modules/lodash/fp/before.js +5 -0
- package/node_modules/lodash/fp/bind.js +5 -0
- package/node_modules/lodash/fp/bindAll.js +5 -0
- package/node_modules/lodash/fp/bindKey.js +5 -0
- package/node_modules/lodash/fp/camelCase.js +5 -0
- package/node_modules/lodash/fp/capitalize.js +5 -0
- package/node_modules/lodash/fp/castArray.js +5 -0
- package/node_modules/lodash/fp/ceil.js +5 -0
- package/node_modules/lodash/fp/chain.js +5 -0
- package/node_modules/lodash/fp/chunk.js +5 -0
- package/node_modules/lodash/fp/clamp.js +5 -0
- package/node_modules/lodash/fp/clone.js +5 -0
- package/node_modules/lodash/fp/cloneDeep.js +5 -0
- package/node_modules/lodash/fp/cloneDeepWith.js +5 -0
- package/node_modules/lodash/fp/cloneWith.js +5 -0
- package/node_modules/lodash/fp/collection.js +2 -0
- package/node_modules/lodash/fp/commit.js +5 -0
- package/node_modules/lodash/fp/compact.js +5 -0
- package/node_modules/lodash/fp/complement.js +1 -0
- package/node_modules/lodash/fp/compose.js +1 -0
- package/node_modules/lodash/fp/concat.js +5 -0
- package/node_modules/lodash/fp/cond.js +5 -0
- package/node_modules/lodash/fp/conforms.js +1 -0
- package/node_modules/lodash/fp/conformsTo.js +5 -0
- package/node_modules/lodash/fp/constant.js +5 -0
- package/node_modules/lodash/fp/contains.js +1 -0
- package/node_modules/lodash/fp/convert.js +18 -0
- package/node_modules/lodash/fp/countBy.js +5 -0
- package/node_modules/lodash/fp/create.js +5 -0
- package/node_modules/lodash/fp/curry.js +5 -0
- package/node_modules/lodash/fp/curryN.js +5 -0
- package/node_modules/lodash/fp/curryRight.js +5 -0
- package/node_modules/lodash/fp/curryRightN.js +5 -0
- package/node_modules/lodash/fp/date.js +2 -0
- package/node_modules/lodash/fp/debounce.js +5 -0
- package/node_modules/lodash/fp/deburr.js +5 -0
- package/node_modules/lodash/fp/defaultTo.js +5 -0
- package/node_modules/lodash/fp/defaults.js +5 -0
- package/node_modules/lodash/fp/defaultsAll.js +5 -0
- package/node_modules/lodash/fp/defaultsDeep.js +5 -0
- package/node_modules/lodash/fp/defaultsDeepAll.js +5 -0
- package/node_modules/lodash/fp/defer.js +5 -0
- package/node_modules/lodash/fp/delay.js +5 -0
- package/node_modules/lodash/fp/difference.js +5 -0
- package/node_modules/lodash/fp/differenceBy.js +5 -0
- package/node_modules/lodash/fp/differenceWith.js +5 -0
- package/node_modules/lodash/fp/dissoc.js +1 -0
- package/node_modules/lodash/fp/dissocPath.js +1 -0
- package/node_modules/lodash/fp/divide.js +5 -0
- package/node_modules/lodash/fp/drop.js +5 -0
- package/node_modules/lodash/fp/dropLast.js +1 -0
- package/node_modules/lodash/fp/dropLastWhile.js +1 -0
- package/node_modules/lodash/fp/dropRight.js +5 -0
- package/node_modules/lodash/fp/dropRightWhile.js +5 -0
- package/node_modules/lodash/fp/dropWhile.js +5 -0
- package/node_modules/lodash/fp/each.js +1 -0
- package/node_modules/lodash/fp/eachRight.js +1 -0
- package/node_modules/lodash/fp/endsWith.js +5 -0
- package/node_modules/lodash/fp/entries.js +1 -0
- package/node_modules/lodash/fp/entriesIn.js +1 -0
- package/node_modules/lodash/fp/eq.js +5 -0
- package/node_modules/lodash/fp/equals.js +1 -0
- package/node_modules/lodash/fp/escape.js +5 -0
- package/node_modules/lodash/fp/escapeRegExp.js +5 -0
- package/node_modules/lodash/fp/every.js +5 -0
- package/node_modules/lodash/fp/extend.js +1 -0
- package/node_modules/lodash/fp/extendAll.js +1 -0
- package/node_modules/lodash/fp/extendAllWith.js +1 -0
- package/node_modules/lodash/fp/extendWith.js +1 -0
- package/node_modules/lodash/fp/fill.js +5 -0
- package/node_modules/lodash/fp/filter.js +5 -0
- package/node_modules/lodash/fp/find.js +5 -0
- package/node_modules/lodash/fp/findFrom.js +5 -0
- package/node_modules/lodash/fp/findIndex.js +5 -0
- package/node_modules/lodash/fp/findIndexFrom.js +5 -0
- package/node_modules/lodash/fp/findKey.js +5 -0
- package/node_modules/lodash/fp/findLast.js +5 -0
- package/node_modules/lodash/fp/findLastFrom.js +5 -0
- package/node_modules/lodash/fp/findLastIndex.js +5 -0
- package/node_modules/lodash/fp/findLastIndexFrom.js +5 -0
- package/node_modules/lodash/fp/findLastKey.js +5 -0
- package/node_modules/lodash/fp/first.js +1 -0
- package/node_modules/lodash/fp/flatMap.js +5 -0
- package/node_modules/lodash/fp/flatMapDeep.js +5 -0
- package/node_modules/lodash/fp/flatMapDepth.js +5 -0
- package/node_modules/lodash/fp/flatten.js +5 -0
- package/node_modules/lodash/fp/flattenDeep.js +5 -0
- package/node_modules/lodash/fp/flattenDepth.js +5 -0
- package/node_modules/lodash/fp/flip.js +5 -0
- package/node_modules/lodash/fp/floor.js +5 -0
- package/node_modules/lodash/fp/flow.js +5 -0
- package/node_modules/lodash/fp/flowRight.js +5 -0
- package/node_modules/lodash/fp/forEach.js +5 -0
- package/node_modules/lodash/fp/forEachRight.js +5 -0
- package/node_modules/lodash/fp/forIn.js +5 -0
- package/node_modules/lodash/fp/forInRight.js +5 -0
- package/node_modules/lodash/fp/forOwn.js +5 -0
- package/node_modules/lodash/fp/forOwnRight.js +5 -0
- package/node_modules/lodash/fp/fromPairs.js +5 -0
- package/node_modules/lodash/fp/function.js +2 -0
- package/node_modules/lodash/fp/functions.js +5 -0
- package/node_modules/lodash/fp/functionsIn.js +5 -0
- package/node_modules/lodash/fp/get.js +5 -0
- package/node_modules/lodash/fp/getOr.js +5 -0
- package/node_modules/lodash/fp/groupBy.js +5 -0
- package/node_modules/lodash/fp/gt.js +5 -0
- package/node_modules/lodash/fp/gte.js +5 -0
- package/node_modules/lodash/fp/has.js +5 -0
- package/node_modules/lodash/fp/hasIn.js +5 -0
- package/node_modules/lodash/fp/head.js +5 -0
- package/node_modules/lodash/fp/identical.js +1 -0
- package/node_modules/lodash/fp/identity.js +5 -0
- package/node_modules/lodash/fp/inRange.js +5 -0
- package/node_modules/lodash/fp/includes.js +5 -0
- package/node_modules/lodash/fp/includesFrom.js +5 -0
- package/node_modules/lodash/fp/indexBy.js +1 -0
- package/node_modules/lodash/fp/indexOf.js +5 -0
- package/node_modules/lodash/fp/indexOfFrom.js +5 -0
- package/node_modules/lodash/fp/init.js +1 -0
- package/node_modules/lodash/fp/initial.js +5 -0
- package/node_modules/lodash/fp/intersection.js +5 -0
- package/node_modules/lodash/fp/intersectionBy.js +5 -0
- package/node_modules/lodash/fp/intersectionWith.js +5 -0
- package/node_modules/lodash/fp/invert.js +5 -0
- package/node_modules/lodash/fp/invertBy.js +5 -0
- package/node_modules/lodash/fp/invertObj.js +1 -0
- package/node_modules/lodash/fp/invoke.js +5 -0
- package/node_modules/lodash/fp/invokeArgs.js +5 -0
- package/node_modules/lodash/fp/invokeArgsMap.js +5 -0
- package/node_modules/lodash/fp/invokeMap.js +5 -0
- package/node_modules/lodash/fp/isArguments.js +5 -0
- package/node_modules/lodash/fp/isArray.js +5 -0
- package/node_modules/lodash/fp/isArrayBuffer.js +5 -0
- package/node_modules/lodash/fp/isArrayLike.js +5 -0
- package/node_modules/lodash/fp/isArrayLikeObject.js +5 -0
- package/node_modules/lodash/fp/isBoolean.js +5 -0
- package/node_modules/lodash/fp/isBuffer.js +5 -0
- package/node_modules/lodash/fp/isDate.js +5 -0
- package/node_modules/lodash/fp/isElement.js +5 -0
- package/node_modules/lodash/fp/isEmpty.js +5 -0
- package/node_modules/lodash/fp/isEqual.js +5 -0
- package/node_modules/lodash/fp/isEqualWith.js +5 -0
- package/node_modules/lodash/fp/isError.js +5 -0
- package/node_modules/lodash/fp/isFinite.js +5 -0
- package/node_modules/lodash/fp/isFunction.js +5 -0
- package/node_modules/lodash/fp/isInteger.js +5 -0
- package/node_modules/lodash/fp/isLength.js +5 -0
- package/node_modules/lodash/fp/isMap.js +5 -0
- package/node_modules/lodash/fp/isMatch.js +5 -0
- package/node_modules/lodash/fp/isMatchWith.js +5 -0
- package/node_modules/lodash/fp/isNaN.js +5 -0
- package/node_modules/lodash/fp/isNative.js +5 -0
- package/node_modules/lodash/fp/isNil.js +5 -0
- package/node_modules/lodash/fp/isNull.js +5 -0
- package/node_modules/lodash/fp/isNumber.js +5 -0
- package/node_modules/lodash/fp/isObject.js +5 -0
- package/node_modules/lodash/fp/isObjectLike.js +5 -0
- package/node_modules/lodash/fp/isPlainObject.js +5 -0
- package/node_modules/lodash/fp/isRegExp.js +5 -0
- package/node_modules/lodash/fp/isSafeInteger.js +5 -0
- package/node_modules/lodash/fp/isSet.js +5 -0
- package/node_modules/lodash/fp/isString.js +5 -0
- package/node_modules/lodash/fp/isSymbol.js +5 -0
- package/node_modules/lodash/fp/isTypedArray.js +5 -0
- package/node_modules/lodash/fp/isUndefined.js +5 -0
- package/node_modules/lodash/fp/isWeakMap.js +5 -0
- package/node_modules/lodash/fp/isWeakSet.js +5 -0
- package/node_modules/lodash/fp/iteratee.js +5 -0
- package/node_modules/lodash/fp/join.js +5 -0
- package/node_modules/lodash/fp/juxt.js +1 -0
- package/node_modules/lodash/fp/kebabCase.js +5 -0
- package/node_modules/lodash/fp/keyBy.js +5 -0
- package/node_modules/lodash/fp/keys.js +5 -0
- package/node_modules/lodash/fp/keysIn.js +5 -0
- package/node_modules/lodash/fp/lang.js +2 -0
- package/node_modules/lodash/fp/last.js +5 -0
- package/node_modules/lodash/fp/lastIndexOf.js +5 -0
- package/node_modules/lodash/fp/lastIndexOfFrom.js +5 -0
- package/node_modules/lodash/fp/lowerCase.js +5 -0
- package/node_modules/lodash/fp/lowerFirst.js +5 -0
- package/node_modules/lodash/fp/lt.js +5 -0
- package/node_modules/lodash/fp/lte.js +5 -0
- package/node_modules/lodash/fp/map.js +5 -0
- package/node_modules/lodash/fp/mapKeys.js +5 -0
- package/node_modules/lodash/fp/mapValues.js +5 -0
- package/node_modules/lodash/fp/matches.js +1 -0
- package/node_modules/lodash/fp/matchesProperty.js +5 -0
- package/node_modules/lodash/fp/math.js +2 -0
- package/node_modules/lodash/fp/max.js +5 -0
- package/node_modules/lodash/fp/maxBy.js +5 -0
- package/node_modules/lodash/fp/mean.js +5 -0
- package/node_modules/lodash/fp/meanBy.js +5 -0
- package/node_modules/lodash/fp/memoize.js +5 -0
- package/node_modules/lodash/fp/merge.js +5 -0
- package/node_modules/lodash/fp/mergeAll.js +5 -0
- package/node_modules/lodash/fp/mergeAllWith.js +5 -0
- package/node_modules/lodash/fp/mergeWith.js +5 -0
- package/node_modules/lodash/fp/method.js +5 -0
- package/node_modules/lodash/fp/methodOf.js +5 -0
- package/node_modules/lodash/fp/min.js +5 -0
- package/node_modules/lodash/fp/minBy.js +5 -0
- package/node_modules/lodash/fp/mixin.js +5 -0
- package/node_modules/lodash/fp/multiply.js +5 -0
- package/node_modules/lodash/fp/nAry.js +1 -0
- package/node_modules/lodash/fp/negate.js +5 -0
- package/node_modules/lodash/fp/next.js +5 -0
- package/node_modules/lodash/fp/noop.js +5 -0
- package/node_modules/lodash/fp/now.js +5 -0
- package/node_modules/lodash/fp/nth.js +5 -0
- package/node_modules/lodash/fp/nthArg.js +5 -0
- package/node_modules/lodash/fp/number.js +2 -0
- package/node_modules/lodash/fp/object.js +2 -0
- package/node_modules/lodash/fp/omit.js +5 -0
- package/node_modules/lodash/fp/omitAll.js +1 -0
- package/node_modules/lodash/fp/omitBy.js +5 -0
- package/node_modules/lodash/fp/once.js +5 -0
- package/node_modules/lodash/fp/orderBy.js +5 -0
- package/node_modules/lodash/fp/over.js +5 -0
- package/node_modules/lodash/fp/overArgs.js +5 -0
- package/node_modules/lodash/fp/overEvery.js +5 -0
- package/node_modules/lodash/fp/overSome.js +5 -0
- package/node_modules/lodash/fp/pad.js +5 -0
- package/node_modules/lodash/fp/padChars.js +5 -0
- package/node_modules/lodash/fp/padCharsEnd.js +5 -0
- package/node_modules/lodash/fp/padCharsStart.js +5 -0
- package/node_modules/lodash/fp/padEnd.js +5 -0
- package/node_modules/lodash/fp/padStart.js +5 -0
- package/node_modules/lodash/fp/parseInt.js +5 -0
- package/node_modules/lodash/fp/partial.js +5 -0
- package/node_modules/lodash/fp/partialRight.js +5 -0
- package/node_modules/lodash/fp/partition.js +5 -0
- package/node_modules/lodash/fp/path.js +1 -0
- package/node_modules/lodash/fp/pathEq.js +1 -0
- package/node_modules/lodash/fp/pathOr.js +1 -0
- package/node_modules/lodash/fp/paths.js +1 -0
- package/node_modules/lodash/fp/pick.js +5 -0
- package/node_modules/lodash/fp/pickAll.js +1 -0
- package/node_modules/lodash/fp/pickBy.js +5 -0
- package/node_modules/lodash/fp/pipe.js +1 -0
- package/node_modules/lodash/fp/placeholder.js +6 -0
- package/node_modules/lodash/fp/plant.js +5 -0
- package/node_modules/lodash/fp/pluck.js +1 -0
- package/node_modules/lodash/fp/prop.js +1 -0
- package/node_modules/lodash/fp/propEq.js +1 -0
- package/node_modules/lodash/fp/propOr.js +1 -0
- package/node_modules/lodash/fp/property.js +1 -0
- package/node_modules/lodash/fp/propertyOf.js +5 -0
- package/node_modules/lodash/fp/props.js +1 -0
- package/node_modules/lodash/fp/pull.js +5 -0
- package/node_modules/lodash/fp/pullAll.js +5 -0
- package/node_modules/lodash/fp/pullAllBy.js +5 -0
- package/node_modules/lodash/fp/pullAllWith.js +5 -0
- package/node_modules/lodash/fp/pullAt.js +5 -0
- package/node_modules/lodash/fp/random.js +5 -0
- package/node_modules/lodash/fp/range.js +5 -0
- package/node_modules/lodash/fp/rangeRight.js +5 -0
- package/node_modules/lodash/fp/rangeStep.js +5 -0
- package/node_modules/lodash/fp/rangeStepRight.js +5 -0
- package/node_modules/lodash/fp/rearg.js +5 -0
- package/node_modules/lodash/fp/reduce.js +5 -0
- package/node_modules/lodash/fp/reduceRight.js +5 -0
- package/node_modules/lodash/fp/reject.js +5 -0
- package/node_modules/lodash/fp/remove.js +5 -0
- package/node_modules/lodash/fp/repeat.js +5 -0
- package/node_modules/lodash/fp/replace.js +5 -0
- package/node_modules/lodash/fp/rest.js +5 -0
- package/node_modules/lodash/fp/restFrom.js +5 -0
- package/node_modules/lodash/fp/result.js +5 -0
- package/node_modules/lodash/fp/reverse.js +5 -0
- package/node_modules/lodash/fp/round.js +5 -0
- package/node_modules/lodash/fp/sample.js +5 -0
- package/node_modules/lodash/fp/sampleSize.js +5 -0
- package/node_modules/lodash/fp/seq.js +2 -0
- package/node_modules/lodash/fp/set.js +5 -0
- package/node_modules/lodash/fp/setWith.js +5 -0
- package/node_modules/lodash/fp/shuffle.js +5 -0
- package/node_modules/lodash/fp/size.js +5 -0
- package/node_modules/lodash/fp/slice.js +5 -0
- package/node_modules/lodash/fp/snakeCase.js +5 -0
- package/node_modules/lodash/fp/some.js +5 -0
- package/node_modules/lodash/fp/sortBy.js +5 -0
- package/node_modules/lodash/fp/sortedIndex.js +5 -0
- package/node_modules/lodash/fp/sortedIndexBy.js +5 -0
- package/node_modules/lodash/fp/sortedIndexOf.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndex.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndexBy.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndexOf.js +5 -0
- package/node_modules/lodash/fp/sortedUniq.js +5 -0
- package/node_modules/lodash/fp/sortedUniqBy.js +5 -0
- package/node_modules/lodash/fp/split.js +5 -0
- package/node_modules/lodash/fp/spread.js +5 -0
- package/node_modules/lodash/fp/spreadFrom.js +5 -0
- package/node_modules/lodash/fp/startCase.js +5 -0
- package/node_modules/lodash/fp/startsWith.js +5 -0
- package/node_modules/lodash/fp/string.js +2 -0
- package/node_modules/lodash/fp/stubArray.js +5 -0
- package/node_modules/lodash/fp/stubFalse.js +5 -0
- package/node_modules/lodash/fp/stubObject.js +5 -0
- package/node_modules/lodash/fp/stubString.js +5 -0
- package/node_modules/lodash/fp/stubTrue.js +5 -0
- package/node_modules/lodash/fp/subtract.js +5 -0
- package/node_modules/lodash/fp/sum.js +5 -0
- package/node_modules/lodash/fp/sumBy.js +5 -0
- package/node_modules/lodash/fp/symmetricDifference.js +1 -0
- package/node_modules/lodash/fp/symmetricDifferenceBy.js +1 -0
- package/node_modules/lodash/fp/symmetricDifferenceWith.js +1 -0
- package/node_modules/lodash/fp/tail.js +5 -0
- package/node_modules/lodash/fp/take.js +5 -0
- package/node_modules/lodash/fp/takeLast.js +1 -0
- package/node_modules/lodash/fp/takeLastWhile.js +1 -0
- package/node_modules/lodash/fp/takeRight.js +5 -0
- package/node_modules/lodash/fp/takeRightWhile.js +5 -0
- package/node_modules/lodash/fp/takeWhile.js +5 -0
- package/node_modules/lodash/fp/tap.js +5 -0
- package/node_modules/lodash/fp/template.js +5 -0
- package/node_modules/lodash/fp/templateSettings.js +5 -0
- package/node_modules/lodash/fp/throttle.js +5 -0
- package/node_modules/lodash/fp/thru.js +5 -0
- package/node_modules/lodash/fp/times.js +5 -0
- package/node_modules/lodash/fp/toArray.js +5 -0
- package/node_modules/lodash/fp/toFinite.js +5 -0
- package/node_modules/lodash/fp/toInteger.js +5 -0
- package/node_modules/lodash/fp/toIterator.js +5 -0
- package/node_modules/lodash/fp/toJSON.js +5 -0
- package/node_modules/lodash/fp/toLength.js +5 -0
- package/node_modules/lodash/fp/toLower.js +5 -0
- package/node_modules/lodash/fp/toNumber.js +5 -0
- package/node_modules/lodash/fp/toPairs.js +5 -0
- package/node_modules/lodash/fp/toPairsIn.js +5 -0
- package/node_modules/lodash/fp/toPath.js +5 -0
- package/node_modules/lodash/fp/toPlainObject.js +5 -0
- package/node_modules/lodash/fp/toSafeInteger.js +5 -0
- package/node_modules/lodash/fp/toString.js +5 -0
- package/node_modules/lodash/fp/toUpper.js +5 -0
- package/node_modules/lodash/fp/transform.js +5 -0
- package/node_modules/lodash/fp/trim.js +5 -0
- package/node_modules/lodash/fp/trimChars.js +5 -0
- package/node_modules/lodash/fp/trimCharsEnd.js +5 -0
- package/node_modules/lodash/fp/trimCharsStart.js +5 -0
- package/node_modules/lodash/fp/trimEnd.js +5 -0
- package/node_modules/lodash/fp/trimStart.js +5 -0
- package/node_modules/lodash/fp/truncate.js +5 -0
- package/node_modules/lodash/fp/unapply.js +1 -0
- package/node_modules/lodash/fp/unary.js +5 -0
- package/node_modules/lodash/fp/unescape.js +5 -0
- package/node_modules/lodash/fp/union.js +5 -0
- package/node_modules/lodash/fp/unionBy.js +5 -0
- package/node_modules/lodash/fp/unionWith.js +5 -0
- package/node_modules/lodash/fp/uniq.js +5 -0
- package/node_modules/lodash/fp/uniqBy.js +5 -0
- package/node_modules/lodash/fp/uniqWith.js +5 -0
- package/node_modules/lodash/fp/uniqueId.js +5 -0
- package/node_modules/lodash/fp/unnest.js +1 -0
- package/node_modules/lodash/fp/unset.js +5 -0
- package/node_modules/lodash/fp/unzip.js +5 -0
- package/node_modules/lodash/fp/unzipWith.js +5 -0
- package/node_modules/lodash/fp/update.js +5 -0
- package/node_modules/lodash/fp/updateWith.js +5 -0
- package/node_modules/lodash/fp/upperCase.js +5 -0
- package/node_modules/lodash/fp/upperFirst.js +5 -0
- package/node_modules/lodash/fp/useWith.js +1 -0
- package/node_modules/lodash/fp/util.js +2 -0
- package/node_modules/lodash/fp/value.js +5 -0
- package/node_modules/lodash/fp/valueOf.js +5 -0
- package/node_modules/lodash/fp/values.js +5 -0
- package/node_modules/lodash/fp/valuesIn.js +5 -0
- package/node_modules/lodash/fp/where.js +1 -0
- package/node_modules/lodash/fp/whereEq.js +1 -0
- package/node_modules/lodash/fp/without.js +5 -0
- package/node_modules/lodash/fp/words.js +5 -0
- package/node_modules/lodash/fp/wrap.js +5 -0
- package/node_modules/lodash/fp/wrapperAt.js +5 -0
- package/node_modules/lodash/fp/wrapperChain.js +5 -0
- package/node_modules/lodash/fp/wrapperLodash.js +5 -0
- package/node_modules/lodash/fp/wrapperReverse.js +5 -0
- package/node_modules/lodash/fp/wrapperValue.js +5 -0
- package/node_modules/lodash/fp/xor.js +5 -0
- package/node_modules/lodash/fp/xorBy.js +5 -0
- package/node_modules/lodash/fp/xorWith.js +5 -0
- package/node_modules/lodash/fp/zip.js +5 -0
- package/node_modules/lodash/fp/zipAll.js +5 -0
- package/node_modules/lodash/fp/zipObj.js +1 -0
- package/node_modules/lodash/fp/zipObject.js +5 -0
- package/node_modules/lodash/fp/zipObjectDeep.js +5 -0
- package/node_modules/lodash/fp/zipWith.js +5 -0
- package/node_modules/lodash/fp.js +2 -0
- package/node_modules/lodash/fromPairs.js +30 -0
- package/node_modules/lodash/function.js +25 -0
- package/node_modules/lodash/functions.js +31 -0
- package/node_modules/lodash/functionsIn.js +31 -0
- package/node_modules/lodash/get.js +33 -0
- package/node_modules/lodash/groupBy.js +41 -0
- package/node_modules/lodash/gt.js +29 -0
- package/node_modules/lodash/gte.js +30 -0
- package/node_modules/lodash/has.js +35 -0
- package/node_modules/lodash/hasIn.js +34 -0
- package/node_modules/lodash/head.js +23 -0
- package/node_modules/lodash/identity.js +21 -0
- package/node_modules/lodash/inRange.js +55 -0
- package/node_modules/lodash/includes.js +53 -0
- package/node_modules/lodash/index.js +1 -0
- package/node_modules/lodash/indexOf.js +42 -0
- package/node_modules/lodash/initial.js +22 -0
- package/node_modules/lodash/intersection.js +30 -0
- package/node_modules/lodash/intersectionBy.js +45 -0
- package/node_modules/lodash/intersectionWith.js +41 -0
- package/node_modules/lodash/invert.js +42 -0
- package/node_modules/lodash/invertBy.js +56 -0
- package/node_modules/lodash/invoke.js +24 -0
- package/node_modules/lodash/invokeMap.js +41 -0
- package/node_modules/lodash/isArguments.js +36 -0
- package/node_modules/lodash/isArray.js +26 -0
- package/node_modules/lodash/isArrayBuffer.js +27 -0
- package/node_modules/lodash/isArrayLike.js +33 -0
- package/node_modules/lodash/isArrayLikeObject.js +33 -0
- package/node_modules/lodash/isBoolean.js +29 -0
- package/node_modules/lodash/isBuffer.js +38 -0
- package/node_modules/lodash/isDate.js +27 -0
- package/node_modules/lodash/isElement.js +25 -0
- package/node_modules/lodash/isEmpty.js +77 -0
- package/node_modules/lodash/isEqual.js +35 -0
- package/node_modules/lodash/isEqualWith.js +41 -0
- package/node_modules/lodash/isError.js +36 -0
- package/node_modules/lodash/isFinite.js +36 -0
- package/node_modules/lodash/isFunction.js +37 -0
- package/node_modules/lodash/isInteger.js +33 -0
- package/node_modules/lodash/isLength.js +35 -0
- package/node_modules/lodash/isMap.js +27 -0
- package/node_modules/lodash/isMatch.js +36 -0
- package/node_modules/lodash/isMatchWith.js +41 -0
- package/node_modules/lodash/isNaN.js +38 -0
- package/node_modules/lodash/isNative.js +40 -0
- package/node_modules/lodash/isNil.js +25 -0
- package/node_modules/lodash/isNull.js +22 -0
- package/node_modules/lodash/isNumber.js +38 -0
- package/node_modules/lodash/isObject.js +31 -0
- package/node_modules/lodash/isObjectLike.js +29 -0
- package/node_modules/lodash/isPlainObject.js +62 -0
- package/node_modules/lodash/isRegExp.js +27 -0
- package/node_modules/lodash/isSafeInteger.js +37 -0
- package/node_modules/lodash/isSet.js +27 -0
- package/node_modules/lodash/isString.js +30 -0
- package/node_modules/lodash/isSymbol.js +29 -0
- package/node_modules/lodash/isTypedArray.js +27 -0
- package/node_modules/lodash/isUndefined.js +22 -0
- package/node_modules/lodash/isWeakMap.js +28 -0
- package/node_modules/lodash/isWeakSet.js +28 -0
- package/node_modules/lodash/iteratee.js +53 -0
- package/node_modules/lodash/join.js +26 -0
- package/node_modules/lodash/kebabCase.js +28 -0
- package/node_modules/lodash/keyBy.js +36 -0
- package/node_modules/lodash/keys.js +37 -0
- package/node_modules/lodash/keysIn.js +32 -0
- package/node_modules/lodash/lang.js +58 -0
- package/node_modules/lodash/last.js +20 -0
- package/node_modules/lodash/lastIndexOf.js +46 -0
- package/node_modules/lodash/lodash.js +17259 -0
- package/node_modules/lodash/lodash.min.js +136 -0
- package/node_modules/lodash/lowerCase.js +27 -0
- package/node_modules/lodash/lowerFirst.js +22 -0
- package/node_modules/lodash/lt.js +29 -0
- package/node_modules/lodash/lte.js +30 -0
- package/node_modules/lodash/map.js +53 -0
- package/node_modules/lodash/mapKeys.js +36 -0
- package/node_modules/lodash/mapValues.js +43 -0
- package/node_modules/lodash/matches.js +46 -0
- package/node_modules/lodash/matchesProperty.js +44 -0
- package/node_modules/lodash/math.js +17 -0
- package/node_modules/lodash/max.js +29 -0
- package/node_modules/lodash/maxBy.js +34 -0
- package/node_modules/lodash/mean.js +22 -0
- package/node_modules/lodash/meanBy.js +31 -0
- package/node_modules/lodash/memoize.js +73 -0
- package/node_modules/lodash/merge.js +39 -0
- package/node_modules/lodash/mergeWith.js +39 -0
- package/node_modules/lodash/method.js +34 -0
- package/node_modules/lodash/methodOf.js +33 -0
- package/node_modules/lodash/min.js +29 -0
- package/node_modules/lodash/minBy.js +34 -0
- package/node_modules/lodash/mixin.js +74 -0
- package/node_modules/lodash/multiply.js +22 -0
- package/node_modules/lodash/negate.js +40 -0
- package/node_modules/lodash/next.js +35 -0
- package/node_modules/lodash/noop.js +17 -0
- package/node_modules/lodash/now.js +23 -0
- package/node_modules/lodash/nth.js +29 -0
- package/node_modules/lodash/nthArg.js +32 -0
- package/node_modules/lodash/number.js +5 -0
- package/node_modules/lodash/object.js +49 -0
- package/node_modules/lodash/omit.js +57 -0
- package/node_modules/lodash/omitBy.js +29 -0
- package/node_modules/lodash/once.js +25 -0
- package/node_modules/lodash/orderBy.js +47 -0
- package/node_modules/lodash/over.js +24 -0
- package/node_modules/lodash/overArgs.js +61 -0
- package/node_modules/lodash/overEvery.js +34 -0
- package/node_modules/lodash/overSome.js +37 -0
- package/node_modules/lodash/package.json +19 -0
- package/node_modules/lodash/pad.js +49 -0
- package/node_modules/lodash/padEnd.js +39 -0
- package/node_modules/lodash/padStart.js +39 -0
- package/node_modules/lodash/parseInt.js +43 -0
- package/node_modules/lodash/partial.js +50 -0
- package/node_modules/lodash/partialRight.js +49 -0
- package/node_modules/lodash/partition.js +43 -0
- package/node_modules/lodash/pick.js +25 -0
- package/node_modules/lodash/pickBy.js +37 -0
- package/node_modules/lodash/plant.js +48 -0
- package/node_modules/lodash/property.js +32 -0
- package/node_modules/lodash/propertyOf.js +30 -0
- package/node_modules/lodash/pull.js +29 -0
- package/node_modules/lodash/pullAll.js +29 -0
- package/node_modules/lodash/pullAllBy.js +33 -0
- package/node_modules/lodash/pullAllWith.js +32 -0
- package/node_modules/lodash/pullAt.js +43 -0
- package/node_modules/lodash/random.js +91 -0
- package/node_modules/lodash/range.js +46 -0
- package/node_modules/lodash/rangeRight.js +41 -0
- package/node_modules/lodash/rearg.js +33 -0
- package/node_modules/lodash/reduce.js +51 -0
- package/node_modules/lodash/reduceRight.js +36 -0
- package/node_modules/lodash/reject.js +46 -0
- package/node_modules/lodash/remove.js +53 -0
- package/node_modules/lodash/repeat.js +37 -0
- package/node_modules/lodash/replace.js +29 -0
- package/node_modules/lodash/rest.js +40 -0
- package/node_modules/lodash/result.js +56 -0
- package/node_modules/lodash/reverse.js +34 -0
- package/node_modules/lodash/round.js +26 -0
- package/node_modules/lodash/sample.js +24 -0
- package/node_modules/lodash/sampleSize.js +37 -0
- package/node_modules/lodash/seq.js +16 -0
- package/node_modules/lodash/set.js +35 -0
- package/node_modules/lodash/setWith.js +32 -0
- package/node_modules/lodash/shuffle.js +25 -0
- package/node_modules/lodash/size.js +46 -0
- package/node_modules/lodash/slice.js +37 -0
- package/node_modules/lodash/snakeCase.js +28 -0
- package/node_modules/lodash/some.js +51 -0
- package/node_modules/lodash/sortBy.js +48 -0
- package/node_modules/lodash/sortedIndex.js +24 -0
- package/node_modules/lodash/sortedIndexBy.js +33 -0
- package/node_modules/lodash/sortedIndexOf.js +31 -0
- package/node_modules/lodash/sortedLastIndex.js +25 -0
- package/node_modules/lodash/sortedLastIndexBy.js +33 -0
- package/node_modules/lodash/sortedLastIndexOf.js +31 -0
- package/node_modules/lodash/sortedUniq.js +24 -0
- package/node_modules/lodash/sortedUniqBy.js +26 -0
- package/node_modules/lodash/split.js +52 -0
- package/node_modules/lodash/spread.js +63 -0
- package/node_modules/lodash/startCase.js +29 -0
- package/node_modules/lodash/startsWith.js +39 -0
- package/node_modules/lodash/string.js +33 -0
- package/node_modules/lodash/stubArray.js +23 -0
- package/node_modules/lodash/stubFalse.js +18 -0
- package/node_modules/lodash/stubObject.js +23 -0
- package/node_modules/lodash/stubString.js +18 -0
- package/node_modules/lodash/stubTrue.js +18 -0
- package/node_modules/lodash/subtract.js +22 -0
- package/node_modules/lodash/sum.js +24 -0
- package/node_modules/lodash/sumBy.js +33 -0
- package/node_modules/lodash/tail.js +22 -0
- package/node_modules/lodash/take.js +37 -0
- package/node_modules/lodash/takeRight.js +39 -0
- package/node_modules/lodash/takeRightWhile.js +45 -0
- package/node_modules/lodash/takeWhile.js +45 -0
- package/node_modules/lodash/tap.js +29 -0
- package/node_modules/lodash/template.js +284 -0
- package/node_modules/lodash/templateSettings.js +71 -0
- package/node_modules/lodash/throttle.js +69 -0
- package/node_modules/lodash/thru.js +28 -0
- package/node_modules/lodash/times.js +51 -0
- package/node_modules/lodash/toArray.js +58 -0
- package/node_modules/lodash/toFinite.js +42 -0
- package/node_modules/lodash/toInteger.js +36 -0
- package/node_modules/lodash/toIterator.js +23 -0
- package/node_modules/lodash/toJSON.js +1 -0
- package/node_modules/lodash/toLength.js +38 -0
- package/node_modules/lodash/toLower.js +28 -0
- package/node_modules/lodash/toNumber.js +64 -0
- package/node_modules/lodash/toPairs.js +30 -0
- package/node_modules/lodash/toPairsIn.js +30 -0
- package/node_modules/lodash/toPath.js +33 -0
- package/node_modules/lodash/toPlainObject.js +32 -0
- package/node_modules/lodash/toSafeInteger.js +37 -0
- package/node_modules/lodash/toString.js +28 -0
- package/node_modules/lodash/toUpper.js +28 -0
- package/node_modules/lodash/transform.js +65 -0
- package/node_modules/lodash/trim.js +47 -0
- package/node_modules/lodash/trimEnd.js +41 -0
- package/node_modules/lodash/trimStart.js +43 -0
- package/node_modules/lodash/truncate.js +111 -0
- package/node_modules/lodash/unary.js +22 -0
- package/node_modules/lodash/unescape.js +34 -0
- package/node_modules/lodash/union.js +26 -0
- package/node_modules/lodash/unionBy.js +39 -0
- package/node_modules/lodash/unionWith.js +34 -0
- package/node_modules/lodash/uniq.js +25 -0
- package/node_modules/lodash/uniqBy.js +31 -0
- package/node_modules/lodash/uniqWith.js +28 -0
- package/node_modules/lodash/uniqueId.js +28 -0
- package/node_modules/lodash/unset.js +34 -0
- package/node_modules/lodash/unzip.js +45 -0
- package/node_modules/lodash/unzipWith.js +39 -0
- package/node_modules/lodash/update.js +35 -0
- package/node_modules/lodash/updateWith.js +33 -0
- package/node_modules/lodash/upperCase.js +27 -0
- package/node_modules/lodash/upperFirst.js +22 -0
- package/node_modules/lodash/util.js +34 -0
- package/node_modules/lodash/value.js +1 -0
- package/node_modules/lodash/valueOf.js +1 -0
- package/node_modules/lodash/values.js +34 -0
- package/node_modules/lodash/valuesIn.js +32 -0
- package/node_modules/lodash/without.js +31 -0
- package/node_modules/lodash/words.js +35 -0
- package/node_modules/lodash/wrap.js +30 -0
- package/node_modules/lodash/wrapperAt.js +48 -0
- package/node_modules/lodash/wrapperChain.js +34 -0
- package/node_modules/lodash/wrapperLodash.js +147 -0
- package/node_modules/lodash/wrapperReverse.js +44 -0
- package/node_modules/lodash/wrapperValue.js +21 -0
- package/node_modules/lodash/xor.js +28 -0
- package/node_modules/lodash/xorBy.js +39 -0
- package/node_modules/lodash/xorWith.js +34 -0
- package/node_modules/lodash/zip.js +22 -0
- package/node_modules/lodash/zipObject.js +24 -0
- package/node_modules/lodash/zipObjectDeep.js +23 -0
- package/node_modules/lodash/zipWith.js +32 -0
- package/node_modules/loose-envify/LICENSE +21 -0
- package/node_modules/loose-envify/README.md +45 -0
- package/node_modules/loose-envify/cli.js +16 -0
- package/node_modules/loose-envify/custom.js +4 -0
- package/node_modules/loose-envify/index.js +3 -0
- package/node_modules/loose-envify/loose-envify.js +36 -0
- package/node_modules/loose-envify/package.json +36 -0
- package/node_modules/loose-envify/replace.js +65 -0
- package/node_modules/mimic-fn/index.d.ts +54 -0
- package/node_modules/mimic-fn/index.js +13 -0
- package/node_modules/mimic-fn/license +9 -0
- package/node_modules/mimic-fn/package.json +42 -0
- package/node_modules/mimic-fn/readme.md +69 -0
- package/node_modules/node-machine-id/.babelrc +26 -0
- package/node_modules/node-machine-id/.eslintignore +2 -0
- package/node_modules/node-machine-id/.eslintrc +140 -0
- package/node_modules/node-machine-id/.flowconfig +9 -0
- package/node_modules/node-machine-id/LICENSE +21 -0
- package/node_modules/node-machine-id/README.md +84 -0
- package/node_modules/node-machine-id/dist/index.js +1 -0
- package/node_modules/node-machine-id/index.js +80 -0
- package/node_modules/node-machine-id/package.json +74 -0
- package/node_modules/node-machine-id/tests/index.js +45 -0
- package/node_modules/node-machine-id/types/index.d.ts +17 -0
- package/node_modules/node-machine-id/webpack.config.babel.js +59 -0
- package/node_modules/onetime/index.d.ts +64 -0
- package/node_modules/onetime/index.js +44 -0
- package/node_modules/onetime/license +9 -0
- package/node_modules/onetime/package.json +43 -0
- package/node_modules/onetime/readme.md +94 -0
- package/node_modules/patch-console/dist/index.d.ts +4 -0
- package/node_modules/patch-console/dist/index.js +45 -0
- package/node_modules/patch-console/dist/index.js.map +1 -0
- package/node_modules/patch-console/license +9 -0
- package/node_modules/patch-console/package.json +53 -0
- package/node_modules/patch-console/readme.md +62 -0
- package/node_modules/react/LICENSE +21 -0
- package/node_modules/react/README.md +37 -0
- package/node_modules/react/cjs/react-jsx-dev-runtime.development.js +1315 -0
- package/node_modules/react/cjs/react-jsx-dev-runtime.production.min.js +10 -0
- package/node_modules/react/cjs/react-jsx-dev-runtime.profiling.min.js +10 -0
- package/node_modules/react/cjs/react-jsx-runtime.development.js +1333 -0
- package/node_modules/react/cjs/react-jsx-runtime.production.min.js +11 -0
- package/node_modules/react/cjs/react-jsx-runtime.profiling.min.js +11 -0
- package/node_modules/react/cjs/react.development.js +2740 -0
- package/node_modules/react/cjs/react.production.min.js +26 -0
- package/node_modules/react/cjs/react.shared-subset.development.js +20 -0
- package/node_modules/react/cjs/react.shared-subset.production.min.js +10 -0
- package/node_modules/react/index.js +7 -0
- package/node_modules/react/jsx-dev-runtime.js +7 -0
- package/node_modules/react/jsx-runtime.js +7 -0
- package/node_modules/react/package.json +47 -0
- package/node_modules/react/react.shared-subset.js +7 -0
- package/node_modules/react/umd/react.development.js +3343 -0
- package/node_modules/react/umd/react.production.min.js +31 -0
- package/node_modules/react/umd/react.profiling.min.js +31 -0
- package/node_modules/react-reconciler/LICENSE +21 -0
- package/node_modules/react-reconciler/README.md +337 -0
- package/node_modules/react-reconciler/cjs/react-reconciler-constants.development.js +45 -0
- package/node_modules/react-reconciler/cjs/react-reconciler-constants.production.min.js +10 -0
- package/node_modules/react-reconciler/cjs/react-reconciler-reflection.development.js +660 -0
- package/node_modules/react-reconciler/cjs/react-reconciler-reflection.production.min.js +15 -0
- package/node_modules/react-reconciler/cjs/react-reconciler.development.js +21531 -0
- package/node_modules/react-reconciler/cjs/react-reconciler.production.min.js +234 -0
- package/node_modules/react-reconciler/cjs/react-reconciler.profiling.min.js +255 -0
- package/node_modules/react-reconciler/constants.js +7 -0
- package/node_modules/react-reconciler/index.js +7 -0
- package/node_modules/react-reconciler/package.json +40 -0
- package/node_modules/react-reconciler/reflection.js +7 -0
- package/node_modules/restore-cursor/index.d.ts +11 -0
- package/node_modules/restore-cursor/index.js +11 -0
- package/node_modules/restore-cursor/license +9 -0
- package/node_modules/restore-cursor/package.json +55 -0
- package/node_modules/restore-cursor/readme.md +31 -0
- package/node_modules/scheduler/LICENSE +21 -0
- package/node_modules/scheduler/README.md +9 -0
- package/node_modules/scheduler/cjs/scheduler-unstable_mock.development.js +700 -0
- package/node_modules/scheduler/cjs/scheduler-unstable_mock.production.min.js +20 -0
- package/node_modules/scheduler/cjs/scheduler-unstable_post_task.development.js +207 -0
- package/node_modules/scheduler/cjs/scheduler-unstable_post_task.production.min.js +14 -0
- package/node_modules/scheduler/cjs/scheduler.development.js +634 -0
- package/node_modules/scheduler/cjs/scheduler.production.min.js +19 -0
- package/node_modules/scheduler/index.js +7 -0
- package/node_modules/scheduler/package.json +36 -0
- package/node_modules/scheduler/umd/scheduler-unstable_mock.development.js +699 -0
- package/node_modules/scheduler/umd/scheduler-unstable_mock.production.min.js +19 -0
- package/node_modules/scheduler/umd/scheduler.development.js +152 -0
- package/node_modules/scheduler/umd/scheduler.production.min.js +146 -0
- package/node_modules/scheduler/umd/scheduler.profiling.min.js +146 -0
- package/node_modules/scheduler/unstable_mock.js +7 -0
- package/node_modules/scheduler/unstable_post_task.js +7 -0
- package/node_modules/signal-exit/LICENSE.txt +16 -0
- package/node_modules/signal-exit/README.md +39 -0
- package/node_modules/signal-exit/index.js +202 -0
- package/node_modules/signal-exit/package.json +38 -0
- package/node_modules/signal-exit/signals.js +53 -0
- package/node_modules/slice-ansi/index.d.ts +19 -0
- package/node_modules/slice-ansi/index.js +169 -0
- package/node_modules/slice-ansi/license +10 -0
- package/node_modules/slice-ansi/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
- package/node_modules/slice-ansi/node_modules/is-fullwidth-code-point/index.js +12 -0
- package/node_modules/slice-ansi/node_modules/is-fullwidth-code-point/license +9 -0
- package/node_modules/slice-ansi/node_modules/is-fullwidth-code-point/package.json +53 -0
- package/node_modules/slice-ansi/node_modules/is-fullwidth-code-point/readme.md +31 -0
- package/node_modules/slice-ansi/package.json +58 -0
- package/node_modules/slice-ansi/readme.md +54 -0
- package/node_modules/stack-utils/LICENSE.md +21 -0
- package/node_modules/stack-utils/index.js +344 -0
- package/node_modules/stack-utils/package.json +39 -0
- package/node_modules/stack-utils/readme.md +143 -0
- package/node_modules/string-width/index.d.ts +39 -0
- package/node_modules/string-width/index.js +82 -0
- package/node_modules/string-width/license +9 -0
- package/node_modules/string-width/package.json +64 -0
- package/node_modules/string-width/readme.md +66 -0
- package/node_modules/strip-ansi/index.d.ts +15 -0
- package/node_modules/strip-ansi/index.js +19 -0
- package/node_modules/strip-ansi/license +9 -0
- package/node_modules/strip-ansi/package.json +59 -0
- package/node_modules/strip-ansi/readme.md +37 -0
- package/node_modules/type-fest/index.d.ts +178 -0
- package/node_modules/type-fest/license-cc0 +121 -0
- package/node_modules/type-fest/license-mit +9 -0
- package/node_modules/type-fest/package.json +91 -0
- package/node_modules/type-fest/readme.md +1060 -0
- package/node_modules/type-fest/source/all-union-fields.d.ts +88 -0
- package/node_modules/type-fest/source/and.d.ts +25 -0
- package/node_modules/type-fest/source/array-indices.d.ts +23 -0
- package/node_modules/type-fest/source/array-slice.d.ts +109 -0
- package/node_modules/type-fest/source/array-splice.d.ts +99 -0
- package/node_modules/type-fest/source/array-tail.d.ts +76 -0
- package/node_modules/type-fest/source/array-values.d.ts +22 -0
- package/node_modules/type-fest/source/arrayable.d.ts +29 -0
- package/node_modules/type-fest/source/async-return-type.d.ts +23 -0
- package/node_modules/type-fest/source/asyncify.d.ts +32 -0
- package/node_modules/type-fest/source/basic.d.ts +68 -0
- package/node_modules/type-fest/source/camel-case.d.ts +89 -0
- package/node_modules/type-fest/source/camel-cased-properties-deep.d.ts +97 -0
- package/node_modules/type-fest/source/camel-cased-properties.d.ts +43 -0
- package/node_modules/type-fest/source/conditional-except.d.ts +45 -0
- package/node_modules/type-fest/source/conditional-keys.d.ts +47 -0
- package/node_modules/type-fest/source/conditional-pick-deep.d.ts +118 -0
- package/node_modules/type-fest/source/conditional-pick.d.ts +44 -0
- package/node_modules/type-fest/source/conditional-simplify.d.ts +32 -0
- package/node_modules/type-fest/source/delimiter-case.d.ts +78 -0
- package/node_modules/type-fest/source/delimiter-cased-properties-deep.d.ts +106 -0
- package/node_modules/type-fest/source/delimiter-cased-properties.d.ts +46 -0
- package/node_modules/type-fest/source/distributed-omit.d.ts +89 -0
- package/node_modules/type-fest/source/distributed-pick.d.ts +85 -0
- package/node_modules/type-fest/source/empty-object.d.ts +46 -0
- package/node_modules/type-fest/source/enforce-optional.d.ts +47 -0
- package/node_modules/type-fest/source/entries.d.ts +62 -0
- package/node_modules/type-fest/source/entry.d.ts +65 -0
- package/node_modules/type-fest/source/exact.d.ts +68 -0
- package/node_modules/type-fest/source/except.d.ts +108 -0
- package/node_modules/type-fest/source/find-global-type.d.ts +64 -0
- package/node_modules/type-fest/source/fixed-length-array.d.ts +43 -0
- package/node_modules/type-fest/source/get.d.ts +219 -0
- package/node_modules/type-fest/source/global-this.d.ts +21 -0
- package/node_modules/type-fest/source/greater-than-or-equal.d.ts +22 -0
- package/node_modules/type-fest/source/greater-than.d.ts +56 -0
- package/node_modules/type-fest/source/has-optional-keys.d.ts +21 -0
- package/node_modules/type-fest/source/has-readonly-keys.d.ts +21 -0
- package/node_modules/type-fest/source/has-required-keys.d.ts +59 -0
- package/node_modules/type-fest/source/has-writable-keys.d.ts +21 -0
- package/node_modules/type-fest/source/if-any.d.ts +24 -0
- package/node_modules/type-fest/source/if-empty-object.d.ts +26 -0
- package/node_modules/type-fest/source/if-never.d.ts +24 -0
- package/node_modules/type-fest/source/if-null.d.ts +24 -0
- package/node_modules/type-fest/source/if-unknown.d.ts +24 -0
- package/node_modules/type-fest/source/includes.d.ts +22 -0
- package/node_modules/type-fest/source/int-closed-range.d.ts +35 -0
- package/node_modules/type-fest/source/int-range.d.ts +55 -0
- package/node_modules/type-fest/source/internal/array.d.ts +126 -0
- package/node_modules/type-fest/source/internal/characters.d.ts +67 -0
- package/node_modules/type-fest/source/internal/index.d.ts +8 -0
- package/node_modules/type-fest/source/internal/keys.d.ts +97 -0
- package/node_modules/type-fest/source/internal/numeric.d.ts +118 -0
- package/node_modules/type-fest/source/internal/object.d.ts +236 -0
- package/node_modules/type-fest/source/internal/string.d.ts +210 -0
- package/node_modules/type-fest/source/internal/tuple.d.ts +90 -0
- package/node_modules/type-fest/source/internal/type.d.ts +139 -0
- package/node_modules/type-fest/source/invariant-of.d.ts +76 -0
- package/node_modules/type-fest/source/is-any.d.ts +33 -0
- package/node_modules/type-fest/source/is-equal.d.ts +31 -0
- package/node_modules/type-fest/source/is-float.d.ts +41 -0
- package/node_modules/type-fest/source/is-integer.d.ts +58 -0
- package/node_modules/type-fest/source/is-literal.d.ts +296 -0
- package/node_modules/type-fest/source/is-never.d.ts +42 -0
- package/node_modules/type-fest/source/is-null.d.ts +20 -0
- package/node_modules/type-fest/source/is-tuple.d.ts +89 -0
- package/node_modules/type-fest/source/is-unknown.d.ts +52 -0
- package/node_modules/type-fest/source/iterable-element.d.ts +64 -0
- package/node_modules/type-fest/source/join.d.ts +68 -0
- package/node_modules/type-fest/source/jsonifiable.d.ts +37 -0
- package/node_modules/type-fest/source/jsonify.d.ts +122 -0
- package/node_modules/type-fest/source/kebab-case.d.ts +44 -0
- package/node_modules/type-fest/source/kebab-cased-properties-deep.d.ts +63 -0
- package/node_modules/type-fest/source/kebab-cased-properties.d.ts +40 -0
- package/node_modules/type-fest/source/keys-of-union.d.ts +42 -0
- package/node_modules/type-fest/source/last-array-element.d.ts +38 -0
- package/node_modules/type-fest/source/less-than-or-equal.d.ts +22 -0
- package/node_modules/type-fest/source/less-than.d.ts +26 -0
- package/node_modules/type-fest/source/literal-to-primitive-deep.d.ts +36 -0
- package/node_modules/type-fest/source/literal-to-primitive.d.ts +36 -0
- package/node_modules/type-fest/source/literal-union.d.ts +37 -0
- package/node_modules/type-fest/source/merge-deep.d.ts +486 -0
- package/node_modules/type-fest/source/merge-exclusive.d.ts +41 -0
- package/node_modules/type-fest/source/merge.d.ts +48 -0
- package/node_modules/type-fest/source/multidimensional-array.d.ts +44 -0
- package/node_modules/type-fest/source/multidimensional-readonly-array.d.ts +48 -0
- package/node_modules/type-fest/source/non-empty-object.d.ts +35 -0
- package/node_modules/type-fest/source/non-empty-string.d.ts +28 -0
- package/node_modules/type-fest/source/non-empty-tuple.d.ts +21 -0
- package/node_modules/type-fest/source/numeric.d.ts +222 -0
- package/node_modules/type-fest/source/observable-like.d.ts +63 -0
- package/node_modules/type-fest/source/omit-deep.d.ts +167 -0
- package/node_modules/type-fest/source/omit-index-signature.d.ts +95 -0
- package/node_modules/type-fest/source/opaque.d.ts +1 -0
- package/node_modules/type-fest/source/optional-keys-of.d.ts +39 -0
- package/node_modules/type-fest/source/or.d.ts +25 -0
- package/node_modules/type-fest/source/override-properties.d.ts +36 -0
- package/node_modules/type-fest/source/package-json.d.ts +676 -0
- package/node_modules/type-fest/source/partial-deep.d.ts +151 -0
- package/node_modules/type-fest/source/partial-on-undefined-deep.d.ts +78 -0
- package/node_modules/type-fest/source/pascal-case.d.ts +42 -0
- package/node_modules/type-fest/source/pascal-cased-properties-deep.d.ts +62 -0
- package/node_modules/type-fest/source/pascal-cased-properties.d.ts +36 -0
- package/node_modules/type-fest/source/paths.d.ts +262 -0
- package/node_modules/type-fest/source/pick-deep.d.ts +149 -0
- package/node_modules/type-fest/source/pick-index-signature.d.ts +50 -0
- package/node_modules/type-fest/source/primitive.d.ts +13 -0
- package/node_modules/type-fest/source/promisable.d.ts +25 -0
- package/node_modules/type-fest/source/readonly-deep.d.ts +81 -0
- package/node_modules/type-fest/source/readonly-keys-of.d.ts +30 -0
- package/node_modules/type-fest/source/readonly-tuple.d.ts +41 -0
- package/node_modules/type-fest/source/replace.d.ts +85 -0
- package/node_modules/type-fest/source/require-all-or-none.d.ts +51 -0
- package/node_modules/type-fest/source/require-at-least-one.d.ts +47 -0
- package/node_modules/type-fest/source/require-exactly-one.d.ts +45 -0
- package/node_modules/type-fest/source/require-one-or-none.d.ts +46 -0
- package/node_modules/type-fest/source/required-deep.d.ts +78 -0
- package/node_modules/type-fest/source/required-keys-of.d.ts +30 -0
- package/node_modules/type-fest/source/schema.d.ts +114 -0
- package/node_modules/type-fest/source/screaming-snake-case.d.ts +28 -0
- package/node_modules/type-fest/source/set-field-type.d.ts +65 -0
- package/node_modules/type-fest/source/set-non-nullable-deep.d.ts +83 -0
- package/node_modules/type-fest/source/set-non-nullable.d.ts +39 -0
- package/node_modules/type-fest/source/set-optional.d.ts +38 -0
- package/node_modules/type-fest/source/set-parameter-type.d.ts +117 -0
- package/node_modules/type-fest/source/set-readonly.d.ts +39 -0
- package/node_modules/type-fest/source/set-required-deep.d.ts +68 -0
- package/node_modules/type-fest/source/set-required.d.ts +70 -0
- package/node_modules/type-fest/source/set-return-type.d.ts +29 -0
- package/node_modules/type-fest/source/shared-union-fields-deep.d.ts +178 -0
- package/node_modules/type-fest/source/shared-union-fields.d.ts +76 -0
- package/node_modules/type-fest/source/simplify-deep.d.ts +115 -0
- package/node_modules/type-fest/source/simplify.d.ts +58 -0
- package/node_modules/type-fest/source/single-key-object.d.ts +29 -0
- package/node_modules/type-fest/source/snake-case.d.ts +45 -0
- package/node_modules/type-fest/source/snake-cased-properties-deep.d.ts +63 -0
- package/node_modules/type-fest/source/snake-cased-properties.d.ts +40 -0
- package/node_modules/type-fest/source/split.d.ts +88 -0
- package/node_modules/type-fest/source/spread.d.ts +84 -0
- package/node_modules/type-fest/source/string-key-of.d.ts +25 -0
- package/node_modules/type-fest/source/string-repeat.d.ts +47 -0
- package/node_modules/type-fest/source/string-slice.d.ts +37 -0
- package/node_modules/type-fest/source/stringified.d.ts +23 -0
- package/node_modules/type-fest/source/structured-cloneable.d.ts +92 -0
- package/node_modules/type-fest/source/subtract.d.ts +83 -0
- package/node_modules/type-fest/source/sum.d.ts +78 -0
- package/node_modules/type-fest/source/tagged-union.d.ts +51 -0
- package/node_modules/type-fest/source/tagged.d.ts +256 -0
- package/node_modules/type-fest/source/trim.d.ts +27 -0
- package/node_modules/type-fest/source/tsconfig-json.d.ts +1294 -0
- package/node_modules/type-fest/source/tuple-to-object.d.ts +42 -0
- package/node_modules/type-fest/source/tuple-to-union.d.ts +51 -0
- package/node_modules/type-fest/source/typed-array.d.ts +17 -0
- package/node_modules/type-fest/source/undefined-on-partial-deep.d.ts +80 -0
- package/node_modules/type-fest/source/union-to-intersection.d.ts +61 -0
- package/node_modules/type-fest/source/union-to-tuple.d.ts +56 -0
- package/node_modules/type-fest/source/unknown-array.d.ts +25 -0
- package/node_modules/type-fest/source/unknown-map.d.ts +24 -0
- package/node_modules/type-fest/source/unknown-record.d.ts +31 -0
- package/node_modules/type-fest/source/unknown-set.d.ts +24 -0
- package/node_modules/type-fest/source/value-of.d.ts +42 -0
- package/node_modules/type-fest/source/words.d.ts +118 -0
- package/node_modules/type-fest/source/writable-deep.d.ts +83 -0
- package/node_modules/type-fest/source/writable-keys-of.d.ts +33 -0
- package/node_modules/type-fest/source/writable.d.ts +68 -0
- package/node_modules/widest-line/index.d.ts +12 -0
- package/node_modules/widest-line/index.js +11 -0
- package/node_modules/widest-line/license +9 -0
- package/node_modules/widest-line/package.json +60 -0
- package/node_modules/widest-line/readme.md +26 -0
- package/node_modules/wrap-ansi/index.d.ts +41 -0
- package/node_modules/wrap-ansi/index.js +222 -0
- package/node_modules/wrap-ansi/license +9 -0
- package/node_modules/wrap-ansi/package.json +69 -0
- package/node_modules/wrap-ansi/readme.md +75 -0
- package/node_modules/ws/LICENSE +20 -0
- package/node_modules/ws/README.md +548 -0
- package/node_modules/ws/browser.js +8 -0
- package/node_modules/ws/index.js +22 -0
- package/node_modules/ws/lib/buffer-util.js +131 -0
- package/node_modules/ws/lib/constants.js +19 -0
- package/node_modules/ws/lib/event-target.js +292 -0
- package/node_modules/ws/lib/extension.js +203 -0
- package/node_modules/ws/lib/limiter.js +55 -0
- package/node_modules/ws/lib/permessage-deflate.js +530 -0
- package/node_modules/ws/lib/receiver.js +743 -0
- package/node_modules/ws/lib/sender.js +607 -0
- package/node_modules/ws/lib/stream.js +161 -0
- package/node_modules/ws/lib/subprotocol.js +62 -0
- package/node_modules/ws/lib/validation.js +152 -0
- package/node_modules/ws/lib/websocket-server.js +562 -0
- package/node_modules/ws/lib/websocket.js +1421 -0
- package/node_modules/ws/package.json +74 -0
- package/node_modules/ws/wrapper.mjs +21 -0
- package/node_modules/yoga-layout/README.md +40 -0
- package/node_modules/yoga-layout/dist/binaries/yoga-wasm-base64-esm.js +75 -0
- package/node_modules/yoga-layout/dist/src/generated/YGEnums.d.ts +189 -0
- package/node_modules/yoga-layout/dist/src/generated/YGEnums.js +211 -0
- package/node_modules/yoga-layout/dist/src/generated/YGEnums.js.map +1 -0
- package/node_modules/yoga-layout/dist/src/index.d.ts +12 -0
- package/node_modules/yoga-layout/dist/src/index.js +16 -0
- package/node_modules/yoga-layout/dist/src/index.js.map +1 -0
- package/node_modules/yoga-layout/dist/src/load.d.ts +11 -0
- package/node_modules/yoga-layout/dist/src/load.js +17 -0
- package/node_modules/yoga-layout/dist/src/load.js.map +1 -0
- package/node_modules/yoga-layout/dist/src/wrapAssembly.d.ts +155 -0
- package/node_modules/yoga-layout/dist/src/wrapAssembly.js +125 -0
- package/node_modules/yoga-layout/dist/src/wrapAssembly.js.map +1 -0
- package/node_modules/yoga-layout/package.json +53 -0
- package/node_modules/yoga-layout/src/Config.cpp +54 -0
- package/node_modules/yoga-layout/src/Config.h +44 -0
- package/node_modules/yoga-layout/src/Layout.h +19 -0
- package/node_modules/yoga-layout/src/Node.cpp +507 -0
- package/node_modules/yoga-layout/src/Node.h +239 -0
- package/node_modules/yoga-layout/src/Size.h +17 -0
- package/node_modules/yoga-layout/src/Value.h +23 -0
- package/node_modules/yoga-layout/src/embind.cpp +207 -0
- package/node_modules/yoga-layout/src/generated/YGEnums.ts +210 -0
- package/node_modules/yoga-layout/src/index.ts +23 -0
- package/node_modules/yoga-layout/src/load.ts +25 -0
- package/node_modules/yoga-layout/src/wrapAssembly.ts +336 -0
- package/node_modules/zod/LICENSE +21 -0
- package/node_modules/zod/README.md +208 -0
- package/node_modules/zod/index.cjs +33 -0
- package/node_modules/zod/index.d.cts +4 -0
- package/node_modules/zod/index.d.ts +4 -0
- package/node_modules/zod/index.js +4 -0
- package/node_modules/zod/package.json +118 -0
- package/node_modules/zod/src/index.ts +4 -0
- package/node_modules/zod/src/v3/ZodError.ts +330 -0
- package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
- package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
- package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
- package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
- package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
- package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
- package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
- package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
- package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
- package/node_modules/zod/src/v3/errors.ts +13 -0
- package/node_modules/zod/src/v3/external.ts +6 -0
- package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
- package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
- package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
- package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
- package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
- package/node_modules/zod/src/v3/helpers/util.ts +224 -0
- package/node_modules/zod/src/v3/index.ts +4 -0
- package/node_modules/zod/src/v3/locales/en.ts +124 -0
- package/node_modules/zod/src/v3/standard-schema.ts +113 -0
- package/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
- package/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
- package/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
- package/node_modules/zod/src/v3/tests/array.test.ts +71 -0
- package/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
- package/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
- package/node_modules/zod/src/v3/tests/base.test.ts +29 -0
- package/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
- package/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
- package/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
- package/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
- package/node_modules/zod/src/v3/tests/complex.test.ts +56 -0
- package/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
- package/node_modules/zod/src/v3/tests/date.test.ts +32 -0
- package/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
- package/node_modules/zod/src/v3/tests/default.test.ts +112 -0
- package/node_modules/zod/src/v3/tests/description.test.ts +33 -0
- package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
- package/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
- package/node_modules/zod/src/v3/tests/error.test.ts +551 -0
- package/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
- package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
- package/node_modules/zod/src/v3/tests/function.test.ts +257 -0
- package/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
- package/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
- package/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
- package/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
- package/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
- package/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
- package/node_modules/zod/src/v3/tests/map.test.ts +110 -0
- package/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
- package/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
- package/node_modules/zod/src/v3/tests/nan.test.ts +21 -0
- package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
- package/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
- package/node_modules/zod/src/v3/tests/number.test.ts +176 -0
- package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
- package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
- package/node_modules/zod/src/v3/tests/object.test.ts +434 -0
- package/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
- package/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
- package/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
- package/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
- package/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
- package/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
- package/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
- package/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
- package/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
- package/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
- package/node_modules/zod/src/v3/tests/record.test.ts +171 -0
- package/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
- package/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
- package/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
- package/node_modules/zod/src/v3/tests/set.test.ts +142 -0
- package/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
- package/node_modules/zod/src/v3/tests/string.test.ts +916 -0
- package/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
- package/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
- package/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
- package/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
- package/node_modules/zod/src/v3/tests/void.test.ts +15 -0
- package/node_modules/zod/src/v3/types.ts +5136 -0
- package/node_modules/zod/src/v4/classic/checks.ts +30 -0
- package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
- package/node_modules/zod/src/v4/classic/compat.ts +66 -0
- package/node_modules/zod/src/v4/classic/errors.ts +75 -0
- package/node_modules/zod/src/v4/classic/external.ts +50 -0
- package/node_modules/zod/src/v4/classic/index.ts +5 -0
- package/node_modules/zod/src/v4/classic/iso.ts +90 -0
- package/node_modules/zod/src/v4/classic/parse.ts +33 -0
- package/node_modules/zod/src/v4/classic/schemas.ts +2054 -0
- package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
- package/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
- package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +210 -0
- package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
- package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
- package/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
- package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
- package/node_modules/zod/src/v4/classic/tests/brand.test.ts +63 -0
- package/node_modules/zod/src/v4/classic/tests/catch.test.ts +252 -0
- package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
- package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
- package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +352 -0
- package/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
- package/node_modules/zod/src/v4/classic/tests/date.test.ts +31 -0
- package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +296 -0
- package/node_modules/zod/src/v4/classic/tests/default.test.ts +313 -0
- package/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
- package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +619 -0
- package/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
- package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +527 -0
- package/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
- package/node_modules/zod/src/v4/classic/tests/file.test.ts +91 -0
- package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +175 -0
- package/node_modules/zod/src/v4/classic/tests/function.test.ts +268 -0
- package/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
- package/node_modules/zod/src/v4/classic/tests/index.test.ts +829 -0
- package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +34 -0
- package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +171 -0
- package/node_modules/zod/src/v4/classic/tests/json.test.ts +108 -0
- package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
- package/node_modules/zod/src/v4/classic/tests/literal.test.ts +92 -0
- package/node_modules/zod/src/v4/classic/tests/map.test.ts +196 -0
- package/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
- package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
- package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +86 -0
- package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
- package/node_modules/zod/src/v4/classic/tests/number.test.ts +247 -0
- package/node_modules/zod/src/v4/classic/tests/object.test.ts +563 -0
- package/node_modules/zod/src/v4/classic/tests/optional.test.ts +123 -0
- package/node_modules/zod/src/v4/classic/tests/partial.test.ts +147 -0
- package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +127 -0
- package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +81 -0
- package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +37 -0
- package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +298 -0
- package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
- package/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
- package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
- package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
- package/node_modules/zod/src/v4/classic/tests/record.test.ts +342 -0
- package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +356 -0
- package/node_modules/zod/src/v4/classic/tests/refine.test.ts +532 -0
- package/node_modules/zod/src/v4/classic/tests/registries.test.ts +204 -0
- package/node_modules/zod/src/v4/classic/tests/set.test.ts +179 -0
- package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +57 -0
- package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +109 -0
- package/node_modules/zod/src/v4/classic/tests/string.test.ts +881 -0
- package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +66 -0
- package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +758 -0
- package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +2314 -0
- package/node_modules/zod/src/v4/classic/tests/transform.test.ts +250 -0
- package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +163 -0
- package/node_modules/zod/src/v4/classic/tests/union.test.ts +94 -0
- package/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
- package/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
- package/node_modules/zod/src/v4/core/api.ts +1594 -0
- package/node_modules/zod/src/v4/core/checks.ts +1283 -0
- package/node_modules/zod/src/v4/core/config.ts +15 -0
- package/node_modules/zod/src/v4/core/core.ts +134 -0
- package/node_modules/zod/src/v4/core/doc.ts +44 -0
- package/node_modules/zod/src/v4/core/errors.ts +424 -0
- package/node_modules/zod/src/v4/core/function.ts +176 -0
- package/node_modules/zod/src/v4/core/index.ts +15 -0
- package/node_modules/zod/src/v4/core/json-schema.ts +143 -0
- package/node_modules/zod/src/v4/core/parse.ts +94 -0
- package/node_modules/zod/src/v4/core/regexes.ts +135 -0
- package/node_modules/zod/src/v4/core/registries.ts +96 -0
- package/node_modules/zod/src/v4/core/schemas.ts +3842 -0
- package/node_modules/zod/src/v4/core/standard-schema.ts +64 -0
- package/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
- package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
- package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
- package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
- package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
- package/node_modules/zod/src/v4/core/to-json-schema.ts +977 -0
- package/node_modules/zod/src/v4/core/util.ts +775 -0
- package/node_modules/zod/src/v4/core/versions.ts +5 -0
- package/node_modules/zod/src/v4/core/zsf.ts +323 -0
- package/node_modules/zod/src/v4/index.ts +4 -0
- package/node_modules/zod/src/v4/locales/ar.ts +125 -0
- package/node_modules/zod/src/v4/locales/az.ts +121 -0
- package/node_modules/zod/src/v4/locales/be.ts +184 -0
- package/node_modules/zod/src/v4/locales/ca.ts +127 -0
- package/node_modules/zod/src/v4/locales/cs.ts +142 -0
- package/node_modules/zod/src/v4/locales/de.ts +124 -0
- package/node_modules/zod/src/v4/locales/en.ts +127 -0
- package/node_modules/zod/src/v4/locales/eo.ts +125 -0
- package/node_modules/zod/src/v4/locales/es.ts +125 -0
- package/node_modules/zod/src/v4/locales/fa.ts +134 -0
- package/node_modules/zod/src/v4/locales/fi.ts +131 -0
- package/node_modules/zod/src/v4/locales/fr-CA.ts +126 -0
- package/node_modules/zod/src/v4/locales/fr.ts +124 -0
- package/node_modules/zod/src/v4/locales/he.ts +125 -0
- package/node_modules/zod/src/v4/locales/hu.ts +126 -0
- package/node_modules/zod/src/v4/locales/id.ts +125 -0
- package/node_modules/zod/src/v4/locales/index.ts +39 -0
- package/node_modules/zod/src/v4/locales/it.ts +125 -0
- package/node_modules/zod/src/v4/locales/ja.ts +122 -0
- package/node_modules/zod/src/v4/locales/kh.ts +126 -0
- package/node_modules/zod/src/v4/locales/ko.ts +131 -0
- package/node_modules/zod/src/v4/locales/mk.ts +127 -0
- package/node_modules/zod/src/v4/locales/ms.ts +124 -0
- package/node_modules/zod/src/v4/locales/nl.ts +126 -0
- package/node_modules/zod/src/v4/locales/no.ts +124 -0
- package/node_modules/zod/src/v4/locales/ota.ts +125 -0
- package/node_modules/zod/src/v4/locales/pl.ts +126 -0
- package/node_modules/zod/src/v4/locales/ps.ts +133 -0
- package/node_modules/zod/src/v4/locales/pt.ts +123 -0
- package/node_modules/zod/src/v4/locales/ru.ts +184 -0
- package/node_modules/zod/src/v4/locales/sl.ts +126 -0
- package/node_modules/zod/src/v4/locales/sv.ts +127 -0
- package/node_modules/zod/src/v4/locales/ta.ts +125 -0
- package/node_modules/zod/src/v4/locales/th.ts +126 -0
- package/node_modules/zod/src/v4/locales/tr.ts +121 -0
- package/node_modules/zod/src/v4/locales/ua.ts +126 -0
- package/node_modules/zod/src/v4/locales/ur.ts +126 -0
- package/node_modules/zod/src/v4/locales/vi.ts +125 -0
- package/node_modules/zod/src/v4/locales/zh-CN.ts +123 -0
- package/node_modules/zod/src/v4/locales/zh-TW.ts +125 -0
- package/node_modules/zod/src/v4/mini/checks.ts +32 -0
- package/node_modules/zod/src/v4/mini/coerce.ts +22 -0
- package/node_modules/zod/src/v4/mini/external.ts +40 -0
- package/node_modules/zod/src/v4/mini/index.ts +3 -0
- package/node_modules/zod/src/v4/mini/iso.ts +62 -0
- package/node_modules/zod/src/v4/mini/parse.ts +1 -0
- package/node_modules/zod/src/v4/mini/schemas.ts +1579 -0
- package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
- package/node_modules/zod/src/v4/mini/tests/brand.test.ts +51 -0
- package/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
- package/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
- package/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
- package/node_modules/zod/src/v4/mini/tests/functions.test.ts +43 -0
- package/node_modules/zod/src/v4/mini/tests/index.test.ts +871 -0
- package/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
- package/node_modules/zod/src/v4/mini/tests/object.test.ts +185 -0
- package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
- package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +275 -0
- package/node_modules/zod/src/v4/mini/tests/string.test.ts +299 -0
- package/node_modules/zod/src/v4-mini/index.ts +1 -0
- package/node_modules/zod/v3/ZodError.cjs +138 -0
- package/node_modules/zod/v3/ZodError.d.cts +164 -0
- package/node_modules/zod/v3/ZodError.d.ts +164 -0
- package/node_modules/zod/v3/ZodError.js +133 -0
- package/node_modules/zod/v3/errors.cjs +17 -0
- package/node_modules/zod/v3/errors.d.cts +5 -0
- package/node_modules/zod/v3/errors.d.ts +5 -0
- package/node_modules/zod/v3/errors.js +9 -0
- package/node_modules/zod/v3/external.cjs +22 -0
- package/node_modules/zod/v3/external.d.cts +6 -0
- package/node_modules/zod/v3/external.d.ts +6 -0
- package/node_modules/zod/v3/external.js +6 -0
- package/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
- package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
- package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
- package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
- package/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
- package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
- package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
- package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
- package/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
- package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
- package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
- package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
- package/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
- package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
- package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
- package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
- package/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
- package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
- package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
- package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
- package/node_modules/zod/v3/helpers/util.cjs +137 -0
- package/node_modules/zod/v3/helpers/util.d.cts +85 -0
- package/node_modules/zod/v3/helpers/util.d.ts +85 -0
- package/node_modules/zod/v3/helpers/util.js +133 -0
- package/node_modules/zod/v3/index.cjs +33 -0
- package/node_modules/zod/v3/index.d.cts +4 -0
- package/node_modules/zod/v3/index.d.ts +4 -0
- package/node_modules/zod/v3/index.js +4 -0
- package/node_modules/zod/v3/locales/en.cjs +111 -0
- package/node_modules/zod/v3/locales/en.d.cts +3 -0
- package/node_modules/zod/v3/locales/en.d.ts +3 -0
- package/node_modules/zod/v3/locales/en.js +109 -0
- package/node_modules/zod/v3/standard-schema.cjs +2 -0
- package/node_modules/zod/v3/standard-schema.d.cts +102 -0
- package/node_modules/zod/v3/standard-schema.d.ts +102 -0
- package/node_modules/zod/v3/standard-schema.js +1 -0
- package/node_modules/zod/v3/types.cjs +3775 -0
- package/node_modules/zod/v3/types.d.cts +1031 -0
- package/node_modules/zod/v3/types.d.ts +1031 -0
- package/node_modules/zod/v3/types.js +3693 -0
- package/node_modules/zod/v4/classic/checks.cjs +32 -0
- package/node_modules/zod/v4/classic/checks.d.cts +1 -0
- package/node_modules/zod/v4/classic/checks.d.ts +1 -0
- package/node_modules/zod/v4/classic/checks.js +1 -0
- package/node_modules/zod/v4/classic/coerce.cjs +47 -0
- package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
- package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
- package/node_modules/zod/v4/classic/coerce.js +17 -0
- package/node_modules/zod/v4/classic/compat.cjs +57 -0
- package/node_modules/zod/v4/classic/compat.d.cts +46 -0
- package/node_modules/zod/v4/classic/compat.d.ts +46 -0
- package/node_modules/zod/v4/classic/compat.js +27 -0
- package/node_modules/zod/v4/classic/errors.cjs +67 -0
- package/node_modules/zod/v4/classic/errors.d.cts +30 -0
- package/node_modules/zod/v4/classic/errors.d.ts +30 -0
- package/node_modules/zod/v4/classic/errors.js +41 -0
- package/node_modules/zod/v4/classic/external.cjs +70 -0
- package/node_modules/zod/v4/classic/external.d.cts +13 -0
- package/node_modules/zod/v4/classic/external.d.ts +13 -0
- package/node_modules/zod/v4/classic/external.js +18 -0
- package/node_modules/zod/v4/classic/index.cjs +33 -0
- package/node_modules/zod/v4/classic/index.d.cts +4 -0
- package/node_modules/zod/v4/classic/index.d.ts +4 -0
- package/node_modules/zod/v4/classic/index.js +4 -0
- package/node_modules/zod/v4/classic/iso.cjs +60 -0
- package/node_modules/zod/v4/classic/iso.d.cts +22 -0
- package/node_modules/zod/v4/classic/iso.d.ts +22 -0
- package/node_modules/zod/v4/classic/iso.js +30 -0
- package/node_modules/zod/v4/classic/parse.cjs +32 -0
- package/node_modules/zod/v4/classic/parse.d.cts +23 -0
- package/node_modules/zod/v4/classic/parse.d.ts +23 -0
- package/node_modules/zod/v4/classic/parse.js +6 -0
- package/node_modules/zod/v4/classic/schemas.cjs +1109 -0
- package/node_modules/zod/v4/classic/schemas.d.cts +630 -0
- package/node_modules/zod/v4/classic/schemas.d.ts +630 -0
- package/node_modules/zod/v4/classic/schemas.js +1006 -0
- package/node_modules/zod/v4/core/api.cjs +1039 -0
- package/node_modules/zod/v4/core/api.d.cts +284 -0
- package/node_modules/zod/v4/core/api.d.ts +284 -0
- package/node_modules/zod/v4/core/api.js +906 -0
- package/node_modules/zod/v4/core/checks.cjs +591 -0
- package/node_modules/zod/v4/core/checks.d.cts +278 -0
- package/node_modules/zod/v4/core/checks.d.ts +278 -0
- package/node_modules/zod/v4/core/checks.js +565 -0
- package/node_modules/zod/v4/core/core.cjs +67 -0
- package/node_modules/zod/v4/core/core.d.cts +49 -0
- package/node_modules/zod/v4/core/core.d.ts +49 -0
- package/node_modules/zod/v4/core/core.js +61 -0
- package/node_modules/zod/v4/core/doc.cjs +39 -0
- package/node_modules/zod/v4/core/doc.d.cts +14 -0
- package/node_modules/zod/v4/core/doc.d.ts +14 -0
- package/node_modules/zod/v4/core/doc.js +35 -0
- package/node_modules/zod/v4/core/errors.cjs +226 -0
- package/node_modules/zod/v4/core/errors.d.cts +208 -0
- package/node_modules/zod/v4/core/errors.d.ts +208 -0
- package/node_modules/zod/v4/core/errors.js +195 -0
- package/node_modules/zod/v4/core/function.cjs +102 -0
- package/node_modules/zod/v4/core/function.d.cts +52 -0
- package/node_modules/zod/v4/core/function.d.ts +52 -0
- package/node_modules/zod/v4/core/function.js +75 -0
- package/node_modules/zod/v4/core/index.cjs +44 -0
- package/node_modules/zod/v4/core/index.d.cts +15 -0
- package/node_modules/zod/v4/core/index.d.ts +15 -0
- package/node_modules/zod/v4/core/index.js +15 -0
- package/node_modules/zod/v4/core/json-schema.cjs +2 -0
- package/node_modules/zod/v4/core/json-schema.d.cts +87 -0
- package/node_modules/zod/v4/core/json-schema.d.ts +87 -0
- package/node_modules/zod/v4/core/json-schema.js +1 -0
- package/node_modules/zod/v4/core/parse.cjs +87 -0
- package/node_modules/zod/v4/core/parse.d.cts +25 -0
- package/node_modules/zod/v4/core/parse.d.ts +25 -0
- package/node_modules/zod/v4/core/parse.js +57 -0
- package/node_modules/zod/v4/core/regexes.cjs +103 -0
- package/node_modules/zod/v4/core/regexes.d.cts +62 -0
- package/node_modules/zod/v4/core/regexes.d.ts +62 -0
- package/node_modules/zod/v4/core/regexes.js +95 -0
- package/node_modules/zod/v4/core/registries.cjs +56 -0
- package/node_modules/zod/v4/core/registries.d.cts +35 -0
- package/node_modules/zod/v4/core/registries.d.ts +35 -0
- package/node_modules/zod/v4/core/registries.js +51 -0
- package/node_modules/zod/v4/core/schemas.cjs +1748 -0
- package/node_modules/zod/v4/core/schemas.d.cts +1041 -0
- package/node_modules/zod/v4/core/schemas.d.ts +1041 -0
- package/node_modules/zod/v4/core/schemas.js +1717 -0
- package/node_modules/zod/v4/core/standard-schema.cjs +2 -0
- package/node_modules/zod/v4/core/standard-schema.d.cts +55 -0
- package/node_modules/zod/v4/core/standard-schema.d.ts +55 -0
- package/node_modules/zod/v4/core/standard-schema.js +1 -0
- package/node_modules/zod/v4/core/to-json-schema.cjs +854 -0
- package/node_modules/zod/v4/core/to-json-schema.d.cts +88 -0
- package/node_modules/zod/v4/core/to-json-schema.d.ts +88 -0
- package/node_modules/zod/v4/core/to-json-schema.js +849 -0
- package/node_modules/zod/v4/core/util.cjs +539 -0
- package/node_modules/zod/v4/core/util.d.cts +183 -0
- package/node_modules/zod/v4/core/util.d.ts +183 -0
- package/node_modules/zod/v4/core/util.js +493 -0
- package/node_modules/zod/v4/core/versions.cjs +8 -0
- package/node_modules/zod/v4/core/versions.d.cts +5 -0
- package/node_modules/zod/v4/core/versions.d.ts +5 -0
- package/node_modules/zod/v4/core/versions.js +5 -0
- package/node_modules/zod/v4/index.cjs +22 -0
- package/node_modules/zod/v4/index.d.cts +3 -0
- package/node_modules/zod/v4/index.d.ts +3 -0
- package/node_modules/zod/v4/index.js +3 -0
- package/node_modules/zod/v4/locales/ar.cjs +142 -0
- package/node_modules/zod/v4/locales/ar.d.cts +4 -0
- package/node_modules/zod/v4/locales/ar.d.ts +4 -0
- package/node_modules/zod/v4/locales/ar.js +116 -0
- package/node_modules/zod/v4/locales/az.cjs +141 -0
- package/node_modules/zod/v4/locales/az.d.cts +4 -0
- package/node_modules/zod/v4/locales/az.d.ts +4 -0
- package/node_modules/zod/v4/locales/az.js +115 -0
- package/node_modules/zod/v4/locales/be.cjs +190 -0
- package/node_modules/zod/v4/locales/be.d.cts +4 -0
- package/node_modules/zod/v4/locales/be.d.ts +4 -0
- package/node_modules/zod/v4/locales/be.js +164 -0
- package/node_modules/zod/v4/locales/ca.cjs +144 -0
- package/node_modules/zod/v4/locales/ca.d.cts +4 -0
- package/node_modules/zod/v4/locales/ca.d.ts +4 -0
- package/node_modules/zod/v4/locales/ca.js +118 -0
- package/node_modules/zod/v4/locales/cs.cjs +161 -0
- package/node_modules/zod/v4/locales/cs.d.cts +4 -0
- package/node_modules/zod/v4/locales/cs.d.ts +4 -0
- package/node_modules/zod/v4/locales/cs.js +135 -0
- package/node_modules/zod/v4/locales/de.cjs +142 -0
- package/node_modules/zod/v4/locales/de.d.cts +4 -0
- package/node_modules/zod/v4/locales/de.d.ts +4 -0
- package/node_modules/zod/v4/locales/de.js +116 -0
- package/node_modules/zod/v4/locales/en.cjs +145 -0
- package/node_modules/zod/v4/locales/en.d.cts +5 -0
- package/node_modules/zod/v4/locales/en.d.ts +5 -0
- package/node_modules/zod/v4/locales/en.js +117 -0
- package/node_modules/zod/v4/locales/eo.cjs +144 -0
- package/node_modules/zod/v4/locales/eo.d.cts +5 -0
- package/node_modules/zod/v4/locales/eo.d.ts +5 -0
- package/node_modules/zod/v4/locales/eo.js +116 -0
- package/node_modules/zod/v4/locales/es.cjs +143 -0
- package/node_modules/zod/v4/locales/es.d.cts +4 -0
- package/node_modules/zod/v4/locales/es.d.ts +4 -0
- package/node_modules/zod/v4/locales/es.js +117 -0
- package/node_modules/zod/v4/locales/fa.cjs +148 -0
- package/node_modules/zod/v4/locales/fa.d.cts +4 -0
- package/node_modules/zod/v4/locales/fa.d.ts +4 -0
- package/node_modules/zod/v4/locales/fa.js +122 -0
- package/node_modules/zod/v4/locales/fi.cjs +148 -0
- package/node_modules/zod/v4/locales/fi.d.cts +4 -0
- package/node_modules/zod/v4/locales/fi.d.ts +4 -0
- package/node_modules/zod/v4/locales/fi.js +122 -0
- package/node_modules/zod/v4/locales/fr-CA.cjs +143 -0
- package/node_modules/zod/v4/locales/fr-CA.d.cts +4 -0
- package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
- package/node_modules/zod/v4/locales/fr-CA.js +117 -0
- package/node_modules/zod/v4/locales/fr.cjs +142 -0
- package/node_modules/zod/v4/locales/fr.d.cts +4 -0
- package/node_modules/zod/v4/locales/fr.d.ts +4 -0
- package/node_modules/zod/v4/locales/fr.js +116 -0
- package/node_modules/zod/v4/locales/he.cjs +143 -0
- package/node_modules/zod/v4/locales/he.d.cts +4 -0
- package/node_modules/zod/v4/locales/he.d.ts +4 -0
- package/node_modules/zod/v4/locales/he.js +117 -0
- package/node_modules/zod/v4/locales/hu.cjs +143 -0
- package/node_modules/zod/v4/locales/hu.d.cts +4 -0
- package/node_modules/zod/v4/locales/hu.d.ts +4 -0
- package/node_modules/zod/v4/locales/hu.js +117 -0
- package/node_modules/zod/v4/locales/id.cjs +142 -0
- package/node_modules/zod/v4/locales/id.d.cts +4 -0
- package/node_modules/zod/v4/locales/id.d.ts +4 -0
- package/node_modules/zod/v4/locales/id.js +116 -0
- package/node_modules/zod/v4/locales/index.cjs +84 -0
- package/node_modules/zod/v4/locales/index.d.cts +39 -0
- package/node_modules/zod/v4/locales/index.d.ts +39 -0
- package/node_modules/zod/v4/locales/index.js +39 -0
- package/node_modules/zod/v4/locales/it.cjs +143 -0
- package/node_modules/zod/v4/locales/it.d.cts +4 -0
- package/node_modules/zod/v4/locales/it.d.ts +4 -0
- package/node_modules/zod/v4/locales/it.js +117 -0
- package/node_modules/zod/v4/locales/ja.cjs +141 -0
- package/node_modules/zod/v4/locales/ja.d.cts +4 -0
- package/node_modules/zod/v4/locales/ja.d.ts +4 -0
- package/node_modules/zod/v4/locales/ja.js +115 -0
- package/node_modules/zod/v4/locales/kh.cjs +143 -0
- package/node_modules/zod/v4/locales/kh.d.cts +4 -0
- package/node_modules/zod/v4/locales/kh.d.ts +4 -0
- package/node_modules/zod/v4/locales/kh.js +117 -0
- package/node_modules/zod/v4/locales/ko.cjs +147 -0
- package/node_modules/zod/v4/locales/ko.d.cts +4 -0
- package/node_modules/zod/v4/locales/ko.d.ts +4 -0
- package/node_modules/zod/v4/locales/ko.js +121 -0
- package/node_modules/zod/v4/locales/mk.cjs +144 -0
- package/node_modules/zod/v4/locales/mk.d.cts +4 -0
- package/node_modules/zod/v4/locales/mk.d.ts +4 -0
- package/node_modules/zod/v4/locales/mk.js +118 -0
- package/node_modules/zod/v4/locales/ms.cjs +142 -0
- package/node_modules/zod/v4/locales/ms.d.cts +4 -0
- package/node_modules/zod/v4/locales/ms.d.ts +4 -0
- package/node_modules/zod/v4/locales/ms.js +116 -0
- package/node_modules/zod/v4/locales/nl.cjs +143 -0
- package/node_modules/zod/v4/locales/nl.d.cts +4 -0
- package/node_modules/zod/v4/locales/nl.d.ts +4 -0
- package/node_modules/zod/v4/locales/nl.js +117 -0
- package/node_modules/zod/v4/locales/no.cjs +142 -0
- package/node_modules/zod/v4/locales/no.d.cts +4 -0
- package/node_modules/zod/v4/locales/no.d.ts +4 -0
- package/node_modules/zod/v4/locales/no.js +116 -0
- package/node_modules/zod/v4/locales/ota.cjs +143 -0
- package/node_modules/zod/v4/locales/ota.d.cts +4 -0
- package/node_modules/zod/v4/locales/ota.d.ts +4 -0
- package/node_modules/zod/v4/locales/ota.js +117 -0
- package/node_modules/zod/v4/locales/pl.cjs +143 -0
- package/node_modules/zod/v4/locales/pl.d.cts +4 -0
- package/node_modules/zod/v4/locales/pl.d.ts +4 -0
- package/node_modules/zod/v4/locales/pl.js +117 -0
- package/node_modules/zod/v4/locales/ps.cjs +148 -0
- package/node_modules/zod/v4/locales/ps.d.cts +4 -0
- package/node_modules/zod/v4/locales/ps.d.ts +4 -0
- package/node_modules/zod/v4/locales/ps.js +122 -0
- package/node_modules/zod/v4/locales/pt.cjs +142 -0
- package/node_modules/zod/v4/locales/pt.d.cts +4 -0
- package/node_modules/zod/v4/locales/pt.d.ts +4 -0
- package/node_modules/zod/v4/locales/pt.js +116 -0
- package/node_modules/zod/v4/locales/ru.cjs +190 -0
- package/node_modules/zod/v4/locales/ru.d.cts +4 -0
- package/node_modules/zod/v4/locales/ru.d.ts +4 -0
- package/node_modules/zod/v4/locales/ru.js +164 -0
- package/node_modules/zod/v4/locales/sl.cjs +143 -0
- package/node_modules/zod/v4/locales/sl.d.cts +4 -0
- package/node_modules/zod/v4/locales/sl.d.ts +4 -0
- package/node_modules/zod/v4/locales/sl.js +117 -0
- package/node_modules/zod/v4/locales/sv.cjs +144 -0
- package/node_modules/zod/v4/locales/sv.d.cts +4 -0
- package/node_modules/zod/v4/locales/sv.d.ts +4 -0
- package/node_modules/zod/v4/locales/sv.js +118 -0
- package/node_modules/zod/v4/locales/ta.cjs +143 -0
- package/node_modules/zod/v4/locales/ta.d.cts +4 -0
- package/node_modules/zod/v4/locales/ta.d.ts +4 -0
- package/node_modules/zod/v4/locales/ta.js +117 -0
- package/node_modules/zod/v4/locales/th.cjs +143 -0
- package/node_modules/zod/v4/locales/th.d.cts +4 -0
- package/node_modules/zod/v4/locales/th.d.ts +4 -0
- package/node_modules/zod/v4/locales/th.js +117 -0
- package/node_modules/zod/v4/locales/tr.cjs +143 -0
- package/node_modules/zod/v4/locales/tr.d.cts +5 -0
- package/node_modules/zod/v4/locales/tr.d.ts +5 -0
- package/node_modules/zod/v4/locales/tr.js +115 -0
- package/node_modules/zod/v4/locales/ua.cjs +143 -0
- package/node_modules/zod/v4/locales/ua.d.cts +4 -0
- package/node_modules/zod/v4/locales/ua.d.ts +4 -0
- package/node_modules/zod/v4/locales/ua.js +117 -0
- package/node_modules/zod/v4/locales/ur.cjs +143 -0
- package/node_modules/zod/v4/locales/ur.d.cts +4 -0
- package/node_modules/zod/v4/locales/ur.d.ts +4 -0
- package/node_modules/zod/v4/locales/ur.js +117 -0
- package/node_modules/zod/v4/locales/vi.cjs +142 -0
- package/node_modules/zod/v4/locales/vi.d.cts +4 -0
- package/node_modules/zod/v4/locales/vi.d.ts +4 -0
- package/node_modules/zod/v4/locales/vi.js +116 -0
- package/node_modules/zod/v4/locales/zh-CN.cjs +142 -0
- package/node_modules/zod/v4/locales/zh-CN.d.cts +4 -0
- package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
- package/node_modules/zod/v4/locales/zh-CN.js +116 -0
- package/node_modules/zod/v4/locales/zh-TW.cjs +143 -0
- package/node_modules/zod/v4/locales/zh-TW.d.cts +4 -0
- package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
- package/node_modules/zod/v4/locales/zh-TW.js +117 -0
- package/node_modules/zod/v4/mini/checks.cjs +34 -0
- package/node_modules/zod/v4/mini/checks.d.cts +1 -0
- package/node_modules/zod/v4/mini/checks.d.ts +1 -0
- package/node_modules/zod/v4/mini/checks.js +1 -0
- package/node_modules/zod/v4/mini/coerce.cjs +47 -0
- package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
- package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
- package/node_modules/zod/v4/mini/coerce.js +17 -0
- package/node_modules/zod/v4/mini/external.cjs +62 -0
- package/node_modules/zod/v4/mini/external.d.cts +11 -0
- package/node_modules/zod/v4/mini/external.d.ts +11 -0
- package/node_modules/zod/v4/mini/external.js +13 -0
- package/node_modules/zod/v4/mini/index.cjs +32 -0
- package/node_modules/zod/v4/mini/index.d.cts +3 -0
- package/node_modules/zod/v4/mini/index.d.ts +3 -0
- package/node_modules/zod/v4/mini/index.js +3 -0
- package/node_modules/zod/v4/mini/iso.cjs +60 -0
- package/node_modules/zod/v4/mini/iso.d.cts +22 -0
- package/node_modules/zod/v4/mini/iso.d.ts +22 -0
- package/node_modules/zod/v4/mini/iso.js +30 -0
- package/node_modules/zod/v4/mini/parse.cjs +8 -0
- package/node_modules/zod/v4/mini/parse.d.cts +1 -0
- package/node_modules/zod/v4/mini/parse.d.ts +1 -0
- package/node_modules/zod/v4/mini/parse.js +1 -0
- package/node_modules/zod/v4/mini/schemas.cjs +839 -0
- package/node_modules/zod/v4/mini/schemas.d.cts +356 -0
- package/node_modules/zod/v4/mini/schemas.d.ts +356 -0
- package/node_modules/zod/v4/mini/schemas.js +732 -0
- package/node_modules/zod/v4-mini/index.cjs +17 -0
- package/node_modules/zod/v4-mini/index.d.cts +1 -0
- package/node_modules/zod/v4-mini/index.d.ts +1 -0
- package/node_modules/zod/v4-mini/index.js +1 -0
- package/package.json +16 -3
package/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import dc from"node:crypto";var Ae=class{debug;headless;headlessReason;constructor(e,t=!1,r=""){this.debug=e,this.headless=t,this.headlessReason=r}};var we=class{name;concurrency;constructor(e,t){this.name=e,this.concurrency=t}};var De=class n{status;output;error;constructor(e,t,r){this.status=e,this.output=t,this.error=r}static success(e){return new n("success",e,null)}static failure(e){return new n("failure",null,e)}static cancelled(e){return new n("cancelled",null,e)}},Bt=class{promise;resolveFn;rejectFn;constructor(){this.promise=new Promise((e,t)=>{this.resolveFn=e,this.rejectFn=t})}resolve(e){this.resolveFn(e)}reject(e){this.rejectFn(e)}};var z=class{name;lane;priority;locks;maxAttempts;cancellable;constructor(e){this.name=e.name,this.lane=e.lane,this.priority=e.priority,this.locks=e.locks,this.maxAttempts=e.maxAttempts,this.cancellable=e.cancellable}},Y=class{options;constructor(e){this.options=e}},pe=class{type;input;constructor(e,t){this.type=e,this.input=t}},Kt=class{bus;logger;notifier;flags;signal;engine;get headless(){return this.flags.headless}dispatchFn;constructor(e){this.bus=e.bus,this.engine=e.engine,this.logger=e.logger,this.notifier=e.notifier,this.flags=e.flags,this.signal=e.signal,this.dispatchFn=e.dispatch}dispatch(e,t){let r=t||new pt(null,null,null,null);return this.dispatchFn(e,r)}};var jt=class{ts;message;constructor(e,t){this.ts=t?.ts??Date.now(),this.message=e}},ye=class{id;ts;groupKey;kind;scope;message;category;constructor(e,t){this.id=crypto.randomUUID(),this.ts=t?.ts??Date.now(),this.kind=t?.kind??"info",this.scope=t?.scope??"default",this.message=e,this.groupKey=t?.groupKey,this.category=t?.category??[]}},Vt=class{ts;jobId;jobType;state;attempt;maxAttempts;lane;priority;error;nextRunAt;constructor(e){this.ts=e.ts,this.jobId=e.jobId,this.jobType=e.jobType,this.state=e.state,this.attempt=e.attempt,this.maxAttempts=e.maxAttempts,this.lane=e.lane,this.priority=e.priority,this.error=e.error,this.nextRunAt=e.nextRunAt}};var Le=class{jobs;constructor(e){this.jobs=e}},mt=class{id;jobType;inputJson;state;lane;priority;locks;attempts;maxAttempts;nextRunAt;cancellable;parentId;dedupeKey;lastError;createdAt;updatedAt;constructor(e){this.id=e.id,this.jobType=e.jobType,this.inputJson=e.inputJson,this.state=e.state,this.lane=e.lane,this.priority=e.priority,this.locks=e.locks,this.attempts=e.attempts,this.maxAttempts=e.maxAttempts,this.nextRunAt=e.nextRunAt,this.cancellable=e.cancellable,this.parentId=e.parentId,this.dedupeKey=e.dedupeKey,this.lastError=e.lastError,this.createdAt=e.createdAt,this.updatedAt=e.updatedAt}};var qt=class{state;constructor(e){this.state=e??new Le({})}async load(){return new Le(structuredClone(this.state.jobs))}async save(e){this.state=new Le(structuredClone(e.jobs))}};var Ge=class{engine;bus;logger;notifier;flags;signal;get headless(){return this.flags.headless}constructor(e){this.engine=e.engine,this.bus=e.bus,this.logger=e.logger,this.notifier=e.notifier,this.flags=e.flags,this.signal=e.signal}on(e,t){return this.bus.on(e,t)}};var Wt=class{version=1;controlBaseUrl;bridgeWsUrl;directories;device;tokens;discovery;constructor(){this.directories=[]}},Gt=class{_configuration;loader;get configuration(){return this._configuration}constructor(e,t){this._configuration=e,this.loader=t}apply(e){this._configuration=e}};import Ue from"node:path";import ci from"node:os";import or from"node:fs";import Qs from"node:path";import Xs from"env-paths";var Zs="DeviceLink",ea=Xs(Zs,{suffix:""});function ta(){if(process.env.DEVICELINK_DATA_DIR)return process.env.DEVICELINK_DATA_DIR;let n=process.env.DEVICELINK_ENV,e=ea.config;return!n||n==="production"?e:Qs.join(e,n)}function Z(){return ta()}import Dn from"dotenv";import Re from"lodash/get.js";import ir from"lodash/isArray.js";import In from"lodash/isObject.js";import li from"lodash/isString.js";import Ce from"lodash/isEmpty.js";import uc from"lodash/defaultTo.js";import{createRequire as ra}from"node:module";var na=ra(import.meta.url),oa=na("node-machine-id");function Ht(n=!0){try{let e=oa.machineIdSync(n);if(e&&typeof e=="string"&&e.trim().length>0)return e.trim()}catch{}}import Oo from"node:path";import on from"node:fs";import sn from"node:crypto";import an from"lodash/get.js";import Ie from"lodash/isEmpty.js";var Jt=class{_notifier;argv;envFile;processEnv;configFileContent;getPrivateKey;_lastGeneratedPrivateKey;constructor(e){this._notifier=e.notifier,this.argv=e.argv,this.envFile=e.envFile,this.processEnv=e.processEnv,this.configFileContent=e.configFileContent,this.getPrivateKey=e.getPrivateKey}getLastGeneratedPrivateKey(){let e=this._lastGeneratedPrivateKey;return this._lastGeneratedPrivateKey=void 0,e}ensureDeviceKeys(){let e=this.getDevicePrivateKey(),t=this.getDevicePublicKey();if(e&&t)return{publicKey:t,privateKey:e};if(e&&!t)try{let a=sn.createPrivateKey(e);return t=sn.createPublicKey(a).export({format:"pem",type:"spki"}).toString("utf8"),this._notifier.info("Derived public key from private key",{scope:"system"}),{publicKey:t,privateKey:e}}catch{this._notifier.warn("Failed to derive public key from private key, generating new keypair",{scope:"system"})}t&&!e&&this._notifier.warn("Public key found but no private key, generating new keypair",{scope:"system"}),this._notifier.info("Generating new Ed25519 keypair...",{scope:"system"});let{publicKey:r,privateKey:o}=sn.generateKeyPairSync("ed25519"),i=r.export({format:"pem",type:"spki"}).toString("utf8"),s=o.export({format:"pem",type:"pkcs8"}).toString("utf8");return this._lastGeneratedPrivateKey=s,this._notifier.info("Generated new Ed25519 keypair",{scope:"system"}),{publicKey:i,privateKey:s}}getDevicePrivateKey(){if(this.getPrivateKey){let r=this.getPrivateKey();if(r&&!Ie(r))return this._notifier.info("Using private key from secret storage cache",{scope:"system"}),r}if(this.argv?.privateKeyFile){let r=this.loadKeyFromFile(this.argv.privateKeyFile);if(r)return this._notifier.info(`Found private key from --private-key-file: ${this.argv.privateKeyFile}`,{scope:"system"}),r;this._notifier.warn(`Failed to load private key from file: ${this.argv.privateKeyFile}`,{scope:"system"})}let e=this.safeGetEnvValue("DLINK_DEVICE_PRIVATE_KEY");if(e&&!Ie(e))return this._notifier.info("Found private key in env file",{scope:"system"}),e;let t=this.processEnv.DLINK_DEVICE_PRIVATE_KEY;if(t&&!Ie(t))return this._notifier.info("Found private key in process env",{scope:"system"}),t}getDevicePublicKey(){if(this.argv?.publicKeyFile){let o=this.loadKeyFromFile(this.argv.publicKeyFile);if(o)return this._notifier.info(`Found public key from --public-key-file: ${this.argv.publicKeyFile}`,{scope:"system"}),o;this._notifier.warn(`Failed to load public key from file: ${this.argv.publicKeyFile}`,{scope:"system"})}let e=an(this.safeGetConfigValue("device"),"keys.public");if(e&&!Ie(String(e)))return this._notifier.info("Found public key in config file",{scope:"system"}),String(e);let t=this.safeGetEnvValue("DLINK_DEVICE_PUBLIC_KEY");if(t&&!Ie(t))return this._notifier.info("Found public key in env file",{scope:"system"}),t;let r=this.processEnv.DLINK_DEVICE_PUBLIC_KEY;if(r&&!Ie(r))return this._notifier.info("Found public key in process env",{scope:"system"}),r}loadKeyFromFile(e){if(!e||Ie(e))return;let t=this.getApplicationConfigFolder(),r=[e,Oo.join(t,e)];for(let o of r)try{let i=Oo.resolve(o);if(on.existsSync(i))if(on.statSync(i).isFile()){let a=on.readFileSync(i,"utf8").trim();if(Ie(a))this._notifier.warn(`Key file is empty: ${i}`,{scope:"system"});else return this._notifier.info(`Loaded key from file: ${i}`,{scope:"system"}),a}else this._notifier.warn(`Path is not a file: ${i}`,{scope:"system"})}catch(i){let s=i instanceof Error?i.message:String(i);this._notifier.warn(`Failed to read key file ${o}: ${s}`,{scope:"system"})}this._notifier.warn(`Key file not found: ${e} (tried: ${r.join(", ")})`,{scope:"system"})}safeGetEnvValue(e){try{return an(this.envFile,`parsed.${e}`)}catch{return}}safeGetConfigValue(e){try{return an(this.configFileContent,e)}catch{return}}getApplicationConfigFolder(){return Z()}};import No from"node:crypto";function Po(n){let e=n.trim();e=e.replace(/\\/g,"/"),e=e.replace(/(^\/\/+)|\/{2,}/g,(l,d)=>d?"//":"/"),e.length>1&&e.endsWith("/")&&(e=e.replace(/\/+$/g,"")),e===""&&(e="/"),e=e.replace(/^([a-zA-Z]):(?=\/|$)/,(l,d)=>`${String(d).toUpperCase()}:`);let t=e.startsWith("/")||e.startsWith("//")||/^[A-Z]:\//.test(e),r=e.startsWith("//")?"//":e.startsWith("/")?"/":"",o="",i=e.match(/^([A-Z]:)(\/|$)/);i?(o=i[1],e=e.slice(o.length),e.startsWith("/")&&(e=e.slice(1))):e=e.replace(/^\/+/,"");let s=e.split("/").filter(Boolean),a=[];for(let l of s)if(l!=="."){if(l===".."){a.length>0&&a[a.length-1]!==".."?a.pop():t||a.push("..");continue}a.push(l)}let c=a.join("/");return o?c=`${o}/${c}`.replace(/\/+$/g,""):t&&(c=`${r}${c}`.replace(/\/+$/g,"")),c=c.toLowerCase(),c}function ht(n,e=[3,3,3,3]){let t=Po(n),o=No.createHash("sha256").update(t,"utf8").digest("base64url").replace(/[^a-zA-Z0-9]/g,"").toLowerCase(),i=e.reduce((c,l)=>c+l,0),s=o.length>=i?o:o.padEnd(i,o),a=0;return e.map(c=>s.slice(a,a+=c)).join("-")}function gt(n){let e=Po(n),r=No.createHash("sha256").update(e,"utf8").digest("hex").slice(0,32),o=r.slice(0,8),i=r.slice(8,12),s=r.slice(12,16),a=r.slice(16,20),c=r.slice(20,32);return`${o}-${i}-${s}-${a}-${c}`}import*as ae from"node:crypto";function cn(n){let e=ae.createPublicKey(n);if(e.asymmetricKeyType!=="ed25519")throw new Error(`Unexpected key type: ${e.asymmetricKeyType}`);let t=e.export({format:"der",type:"spki"});return ae.createHash("sha256").update(t).digest("base64url").slice(0,16).toUpperCase()}function ln(n){let e=Buffer.from(`${n.deviceId}|${n.ts}|${n.nonce}`,"utf8"),t=ae.createPrivateKey(n.privateKeyPem);return ae.sign(null,e,t).toString("base64")}function un(n){let e=ae.createHash("sha256").update(n.refreshToken,"utf8").digest("hex"),t=Buffer.from(`${n.deviceId}|${n.ts}|${n.nonce}|${e}`,"utf8"),r=ae.createPrivateKey(n.privateKeyPem);return ae.sign(null,t,r).toString("base64")}function yt(n){return new Promise(e=>setTimeout(e,n))}import*as Fo from"node:path";var Lo=process.platform==="win32";function dn(n){let e=Fo.resolve(n);return Lo?e.toLowerCase():e}import*as be from"node:path";import*as Mo from"node:os";function Me(n){return n.replace(/\\/g,"/")}function $o(n){return/^[A-Za-z]:[\\/]/.test(n)||/^[A-Za-z]:$/.test(n.trim())}function aa(n){return $o(n)?n.replace(/\//g,"\\"):n}function pn(n){if(n==null)return;let e=String(n).trim();if(e==="")return;if(e.startsWith("~"))return Me(e);if(!$o(e))try{let l=be.resolve(e),d=be.resolve(Mo.homedir()),f=be.relative(d,l);if(!f.startsWith("..")&&!be.isAbsolute(f))return f===""?"~":"~/"+Me(f)}catch{}let r=aa(e).match(/^([A-Za-z]:)\\(?:[Uu][Ss][Ee][Rr][Ss])\\([^\\]+)(\\.*)?$/);if(r){let l=(r[3]??"").replace(/\\/g,"/");return l?"~"+l:"~"}let o=e.match(/^\/mnt\/[a-z]\/(?:[Uu][Ss][Ee][Rr][Ss])\/[^/]+(\/.*)?$/i);if(o){let l=o[1]??"";return l?"~"+Me(l):"~"}let i=e.match(/^\/Users\/[^/]+(\/.*)?$/);if(i){let l=i[1]??"";return l?"~"+Me(l):"~"}let s=e.match(/^\/home\/[^/]+(\/.*)?$/);if(s){let l=s[1]??"";return l?"~"+Me(l):"~"}let a=e.match(/^\/usr\/home\/[^/]+(\/.*)?$/);if(a){let l=a[1]??"";return l?"~"+Me(l):"~"}let c=e.match(/^\/export\/home\/[^/]+(\/.*)?$/);if(c){let l=c[1]??"";return l?"~"+Me(l):"~"}try{return be.basename(be.resolve(e))}catch{return e.split(/[/\\]/).pop()??e}}import ca from"lodash/isString.js";var Uo="<path>",la=/(['"`])((?:[A-Za-z]:[\\/]|\\\\|~?\/)[^'"`\n]*)\1/g,ua=/(^|[\s'"`([{=,;])(?:\\\\[^\s'"`<>|?*\n]+|[A-Za-z]:[\\/][^\s'"`<>|?*\n]*|~?\/[^\s'"`<>|?*\n:]*\/[^\s'"`<>|?*\n:]*)/g;function fn(n){return!ca(n)||n.length===0?n:n.replace(la,(e,t)=>`${t}${Uo}${t}`).replace(ua,(e,t)=>`${t}${Uo}`)}var da=/^v?(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/;function ve(n){if(typeof n!="string")return null;let e=n.trim().match(da);return e?{major:Number(e[1]),minor:Number(e[2]),patch:Number(e[3]),prerelease:e[4]??null}:null}function pa(n,e){if(n===e)return 0;if(n===null)return 1;if(e===null)return-1;let t=n.split("."),r=e.split("."),o=Math.max(t.length,r.length);for(let i=0;i<o;i+=1){let s=t[i],a=r[i];if(s===void 0)return-1;if(a===void 0)return 1;let c=/^\d+$/.test(s),l=/^\d+$/.test(a);if(c&&l){let d=Number(s)-Number(a);if(d!==0)return d<0?-1:1;continue}if(c!==l)return c?-1:1;if(s!==a)return s<a?-1:1}return 0}function zt(n,e){let t=ve(n),r=ve(e);if(!t)throw new Error(`not a version: ${n}`);if(!r)throw new Error(`not a version: ${e}`);for(let i of["major","minor","patch"]){let s=t[i]-r[i];if(s!==0)return s<0?-1:1}let o=pa(t.prerelease,r.prerelease);return o===0?0:o<0?-1:1}function mn(n,e){let t=ve(n),r=ve(e);return!t||!r?!1:zt(n,e)<0}function hn(n,e){let t=ve(n),r=ve(e);return!t||!r?!1:t.major===r.major}import gn from"lodash/get.js";import fa from"lodash/isObject.js";import Yt from"lodash/isString.js";function B(n){if(n instanceof Error)return n.message;let e=gn(n,"message");return Yt(e)?e:String(n)}function fe(n){if(!fa(n))return;let e=gn(n,"code");return Yt(e)?e:void 0}function ne(n){return Yt(fe(n))&&Yt(gn(n,"message"))}function K(n,e={}){return{code:fe(n)??e.code??"INTERNAL",message:B(n)||e.message||"An unexpected error occurred."}}import ma from"lodash/isBoolean.js";import Bo from"lodash/isFinite.js";import ha from"lodash/isInteger.js";import Vo from"lodash/isPlainObject.js";import Ko from"lodash/isString.js";import yn from"lodash/isUndefined.js";import ga from"lodash/omit.js";import ya from"lodash/omitBy.js";import ba from"lodash/toNumber.js";var va=/^[+-]?(\d+\.?\d*|\.\d+)([eE][+-]?\d+)?$/;function jo(n){return Vo(n)?n:{}}var Qt=class{_found;constructor(e){this._found=e}exists(){return!yn(this._found)}unknown(){return this._found}string(){return Ko(this._found)?this._found:null}number(){if(Bo(this._found))return this._found;if(!Ko(this._found)||!va.test(this._found.trim()))return null;let e=ba(this._found);return Bo(e)?e:null}integer(){let e=this.number();return e!==null&&ha(e)?e:null}boolean(){return ma(this._found)?this._found:this._found==="true"?!0:this._found==="false"?!1:null}object(){return Vo(this._found)?this._found:null}list(){return Array.isArray(this._found)?this._found:null}},Xt=class n{_value;constructor(e){this._value=jo(e)}set(e,t){return yn(t)?this:new n({...this._value,[e]:t})}merge(e){return new n({...this._value,...ya(jo(e),yn)})}drop(e){return new n(ga(this._value,e))}has(e){return e in this._value}property(e){return new Qt(this._value[e])}string(e){return this.property(e).string()}value(){return this._value}toJSON(){return this._value}};function bn(n){return new Xt(n)}import Sa from"lodash/isUndefined.js";import Ea from"lodash/omitBy.js";function vn(n){return Ea(n,Sa)}import ac from"lodash/isPlainObject.js";import ze from"lodash/isString.js";import le from"lodash/trim.js";var Lp=Math.ceil(300);var G={FILE_POLICIES:"file_policies",CONTEXT_V2:"context_v2",QUIESCE_V2:"quiesce.v2",TELEMETRY_RELAY_V1:"telemetry.relay.v1",ENDPOINT_DISCOVERY_V1:"endpoint.discovery.v1",RESULT_REDELIVERY_V1:"result.redelivery.v1"},qo=[G.FILE_POLICIES,G.CONTEXT_V2,G.QUIESCE_V2,G.TELEMETRY_RELAY_V1,G.ENDPOINT_DISCOVERY_V1,G.RESULT_REDELIVERY_V1],$p=[G.FILE_POLICIES,G.CONTEXT_V2,G.QUIESCE_V2,G.TELEMETRY_RELAY_V1,G.ENDPOINT_DISCOVERY_V1,G.RESULT_REDELIVERY_V1];function He(n,e){return!!n&&n.includes(e)}import{z as u}from"zod";var _a=u.object({name:u.string().min(1),description:u.string().optional(),inputSchema:u.any().optional(),outputSchema:u.any().optional(),defaults:u.record(u.string(),u.unknown()).optional(),version:u.string().optional(),errorCodes:u.array(u.string()).optional()}),ka=u.object({id:u.string().min(1),name:u.string().min(1),path:u.string().optional(),path_hint:u.string().optional(),policy:u.any().optional()});var Ta=["USE_NEW","KEEP_OLD"];var Wo=["SESSION_REPLACED","SERVER_DRAINING","REBALANCE","ENDPOINT_MOVED"],Je=u.object({code:u.string().min(1),message:u.string().min(1)}).passthrough(),wa=u.object({type:u.literal("connect"),device_id:u.string().min(1),agent_version:u.string().min(1),protocol_version:u.number().int().min(1).default(2),capabilities:u.array(u.string()).default([]),platform:u.string().optional(),hostname:u.string().optional(),device_tag:u.string().optional(),ts:u.number(),nonce:u.string().min(8),sig:u.string().min(16),access_token:u.string().optional(),refresh_token:u.string().min(20).optional(),public_key_pem:u.string().optional()}).passthrough(),Ra=u.object({type:u.literal("connect_ack"),ok:u.literal(!0),session_id:u.string().min(1),device_id:u.string().min(1),server_time:u.number(),auth:u.object({device_proof:u.string().min(1),access_token:u.string().min(1)}).passthrough(),next:u.array(u.string().min(1)).min(1),workspace_id:u.string().optional()}).passthrough(),Ca=u.object({type:u.literal("connect_ack"),ok:u.literal(!1),session_id:u.string().optional(),server_time:u.number(),error:Je}).passthrough(),xa=u.union([Ra,Ca]),Aa=u.object({type:u.literal("refresh_access_token"),device_id:u.string().min(1),ts:u.number(),nonce:u.string().min(8),refresh_token:u.string().min(20),sig:u.string().min(16),session_id:u.string().min(1).optional()}).strict(),Da=u.object({type:u.literal("refresh_access_token_ack"),ok:u.literal(!0),access_token:u.string().min(1),refresh_token:u.string().min(20),expires_in_sec:u.number().int().positive().optional(),next:u.array(u.string().min(1)).default(["session_init"])}).passthrough(),Ia=u.object({type:u.literal("refresh_access_token_ack"),ok:u.literal(!1),error:Je}).passthrough(),Oa=u.union([Da,Ia]),Na=u.object({type:u.literal("session_init"),device_id:u.string().min(1),session_id:u.string().min(1)}).strict(),Pa=u.object({type:u.literal("session_init_ack"),ok:u.literal(!0),device_id:u.string().min(1),session_id:u.string().min(1),mode:u.string().min(1),reason:u.string().optional(),server_time:u.number(),next:u.array(u.string().min(1)).optional(),analytics_session_id:u.string().uuid().optional(),capabilities:u.array(u.string()).optional(),server_protocol_version:u.number().default(2),min_agent_version:u.string().optional(),target_agent_version:u.string().optional(),update_policy:u.string().min(1).optional(),upgrade_message:u.string().optional(),upgrade_url:u.string().optional()}).passthrough(),Fa=u.object({type:u.literal("session_init_ack"),ok:u.literal(!1),device_id:u.string().min(1),server_time:u.number(),error:Je,min_agent_version:u.string().optional(),target_agent_version:u.string().optional(),update_policy:u.string().min(1).optional(),upgrade_message:u.string().optional(),upgrade_url:u.string().optional()}).passthrough(),La=u.union([Pa,Fa]),Ma=u.object({type:u.literal("session_conflict"),device_id:u.string().min(1),new_session_id:u.string().min(1),max_sessions:u.number().int().positive(),active_count:u.number().int().nonnegative(),deadline_ms:u.number().int().positive(),message:u.string().min(1),choices:u.array(u.object({id:u.string().min(1),default:u.boolean().optional(),prompt:u.string().optional()}).passthrough()).min(1)}).passthrough(),$a=u.object({type:u.literal("session_conflict_resolve"),device_id:u.string().min(1),new_session_id:u.string().min(1),choice:u.enum(Ta)}).strict(),Ua=u.object({type:u.literal("session_conflict_resolve_ack"),ok:u.literal(!0),device_id:u.string().min(1),choice:u.string().min(1),next:u.array(u.string().min(1)).optional()}).passthrough(),Ba=u.object({type:u.literal("session_conflict_resolve_ack"),ok:u.literal(!1),device_id:u.string().min(1),error:Je}).passthrough(),Ka=u.union([Ua,Ba]),ja=u.object({after_ms:u.number().optional(),url:u.string().optional(),discover:u.boolean().optional()}).passthrough(),Va=u.object({type:u.literal("quiesce"),session_id:u.string().min(1),reason:u.string().min(1),deadline_ms:u.number().int().positive(),reconnect:ja.optional()}).passthrough(),qa=u.object({type:u.literal("quiesce_ack"),session_id:u.string().min(1),status:u.enum(["IDLE","BUSY"])}).strict(),Sn=1,En=20;var Wa=u.object({kind:u.string().min(1),severity:u.string().min(1).optional(),at:u.number().optional(),props:u.record(u.string(),u.unknown()).optional()}).strict(),Ga=u.object({type:u.literal("agent_event"),schema_version:u.number().int().optional(),events:u.array(Wa)}).strict(),Ha=u.object({type:u.literal("tools_publish"),device_id:u.string().min(1),workspace_id:u.string().optional(),tools:u.array(_a).default([]),tools_version:u.string().optional()}).strict(),Ja=u.object({type:u.literal("tools_publish_ack"),ok:u.boolean(),device_id:u.string().min(1),tools_version:u.string().optional(),error:Je.optional()}).passthrough(),za=u.object({type:u.literal("directories_publish"),device_id:u.string().min(1),workspace_id:u.string().optional(),directories:u.array(ka).default([])}).strict(),Ya=u.object({type:u.literal("directories_publish_ack"),ok:u.boolean(),device_id:u.string().min(1),error:Je.optional()}).passthrough(),Qa=u.object({blocked_extensions:u.array(u.string()).default([]),allowed_extensions:u.array(u.string()).default([]),blocked_patterns:u.array(u.string()).default([]),max_file_size_bytes:u.number().default(10485760)}).passthrough(),_n=u.object({workspace_id:u.string(),organization_id:u.string(),workspace_name:u.string().optional(),user_id:u.string(),user_email:u.string().optional(),connector:u.string().optional(),connector_policies:u.object({max_response_chars:u.number(),timeout_ms:u.number()}).passthrough().optional(),file_policies:Qa.optional()}).passthrough(),Zt=u.object({type:u.literal("tool_call"),job_id:u.string().min(1),device_id:u.string().min(1).optional(),workspace_id:u.string().optional(),tool:u.string().min(1),args:u.record(u.string(),u.unknown()).default({}),context:_n.optional()}).passthrough(),Xa=u.object({type:u.enum(["error","warning","info"]),description:u.string().min(1)}),er=u.object({type:u.literal("tool_result"),job_id:u.string().min(1),tool:u.string().min(1),ok:u.boolean(),result:u.unknown().optional(),error:u.unknown().optional(),messages:u.array(Xa).optional(),timing:u.object({execution_ms:u.number(),execution_sec:u.number()}).optional()}).strict().superRefine((n,e)=>{n.ok&&n.result===void 0&&e.addIssue({code:u.ZodIssueCode.custom,message:"tool_result ok=true should include result",path:["result"]}),!n.ok&&n.error===void 0&&e.addIssue({code:u.ZodIssueCode.custom,message:"tool_result ok=false should include error",path:["error"]})}),Go=u.object({type:u.literal("disconnect_notice"),code:u.number().int(),reason:u.string(),at:u.number()}).passthrough(),Ho=u.object({type:u.literal("promoted_active"),workspaceId:u.string().min(1)}).passthrough(),Jo=u.object({type:u.literal("demoted_standby"),workspaceId:u.string().min(1)}).passthrough(),Kp=u.union([wa,Aa,Na,$a,Ha,za,Zt,er,qa,Ga,Go,Ho,Jo]),zo=u.union([xa,Oa,La,Ma,Ka,Ja,Ya,Zt,Va,Go,Ho,Jo]),Za=["connect_ack","refresh_access_token_ack","session_init_ack","session_conflict","session_conflict_resolve_ack","tools_publish_ack","directories_publish_ack","tool_call","quiesce","disconnect_notice","promoted_active","demoted_standby"];function tr(n){if(typeof n!="object"||n===null)return;let e=n.type;return typeof e=="string"?e:void 0}function Yo(n){return n===void 0?!1:Za.includes(n)}import{z as v}from"zod";import{z as ce}from"zod";var ec=ce.object({url:ce.string().optional()}).passthrough(),tc=ce.object({urls:ce.array(ce.string()).optional()}).passthrough(),rr=ce.object({schema:ce.number().int().optional(),issued_at:ce.number().int().optional(),control:ec.optional(),bridge:tc.optional(),ttl_seconds:ce.number().optional(),capabilities:ce.array(ce.string()).optional(),notice:ce.string().nullable().optional()}).passthrough(),Zo="/.well-known/devicelink-endpoints",Qo=300,Xo=86400;function ei(n){if(typeof n!="number"||!Number.isFinite(n))return 3600;let t=Math.floor(n);return t<Qo?Qo:t>Xo?Xo:t}var rc=v.object({device_id:v.string().optional(),device_name:v.string().optional(),platform:v.string().optional(),agent_version:v.string().optional(),public_key_pem:v.string().min(1)}),Hp=v.object({device_code:v.string(),user_code:v.string(),verification_uri:v.string(),verification_uri_complete:v.string(),expires_in:v.number(),interval:v.number(),challenge_id:v.string(),challenge:v.string()}),Jp=rc.extend({enrollment_jws:v.string().min(1)}),zp=v.union([v.object({status:v.literal("pending"),needs_proof:v.boolean()}),v.object({status:v.literal("approved"),needs_proof:v.boolean()}),v.object({error:v.literal("access_denied")}),v.object({error:v.literal("expired_token")})]),Yp=v.object({device_code:v.string(),challenge_id:v.string(),challenge:v.string(),signature_b64:v.string()}),Qp=v.object({ok:v.literal(!0)}),Xp=v.object({device_code:v.string(),install_id:v.string().min(8).max(64).optional()}),Zp=v.object({access_token:v.string(),refresh_token:v.string(),token_type:v.literal("Bearer"),expires_in:v.number(),device_id:v.string(),endpoints:rr.optional()}),ef=v.object({device_id:v.string().min(1),refresh_token:v.string().min(1),ts:v.number().int(),nonce:v.string().min(8),sig:v.string().min(16)}),nc=v.object({ok:v.literal(!0),access_token:v.string().min(10),refresh_token:v.string().min(10),expires_in_sec:v.number().int().positive(),device_id:v.string().min(1)}),oc=v.object({ok:v.literal(!1),error:v.object({code:v.string(),message:v.string(),drift_ms:v.number().optional()})}),tf=v.union([nc,oc]);import{z as R}from"zod";var ic=R.object({code:R.string().min(1),message:R.string(),hint:R.string().optional()}),sc=R.object({execution_ms:R.number().optional(),execution_sec:R.number().optional()}),cf=R.object({v:R.literal(1),dispatch_id:R.string().min(1),request_id:R.string().min(1),device_id:R.string().min(1),workspace_id:R.string().min(1),user_id:R.string().min(1),tool:R.string().min(1),args:R.record(R.string(),R.unknown()).default({}),context:_n.optional()}).passthrough(),lf=R.object({v:R.literal(1),dispatch_id:R.string().min(1),request_id:R.string().min(1),device_id:R.string().min(1),workspace_id:R.string().min(1),instance_id:R.string().optional(),ok:R.boolean(),result:R.unknown().optional(),error:ic.optional(),timing:sc.optional()}).passthrough().superRefine((n,e)=>{n.ok===!1&&!n.error&&e.addIssue({code:R.ZodIssueCode.custom,path:["error"],message:"A failed dispatch reply must name an error"})});var uf=R.object({v:R.literal(1),session_id:R.string().min(1),user_id:R.string().min(1),workspace_id:R.string().min(1),reason:R.literal("SESSION_REPLACED"),deadline_ms:R.number().int().positive(),replaced_by_session_id:R.string().min(1).optional(),requested_by_instance:R.string().min(1).optional()}).passthrough();function ti(n){return{ok:!0,data:n}}function $e(n){return{ok:!1,error:n}}var Tn={PENDING:"PENDING",APPLIED:"APPLIED",FAILED:"FAILED",VOID:"VOID"};var Af=[Tn.APPLIED,Tn.FAILED,Tn.VOID];var cc=2e3,wn=2;function Rn(){return Math.floor(Date.now()/1e3)}function ri(n=process.env){let e=le(n.DEVICELINK_ENV??"");return e!=="production"&&e!=="staging"}function nr(n,e=process.env){if(!ze(n))return!1;let t=le(n);return t===""?!1:/^wss:\/\/.+/.test(t)?!0:ri(e)&&/^ws:\/\/.+/.test(t)}function ni(n){if(!ze(n))return!1;let e=le(n);return/^https:\/\/.+/.test(e)?!0:ri()&&/^http:\/\/.+/.test(e)}function Cn(n){let e=rr.safeParse(n);return e.success?e.data:null}function xn(n,e,t=Rn(),r=process.env){if(!n)return null;let o=(n.bridge?.urls??[]).filter(c=>nr(c,r)).map(c=>le(c)),i=ni(n.control?.url)?le(String(n.control?.url)):void 0,s=ei(n.ttl_seconds),a={expiresAt:t+s,source:e};return typeof n.schema=="number"&&(a.schema=n.schema),typeof n.issued_at=="number"&&(a.issuedAt=n.issued_at),o.length>0&&(a.bridgeUrls=o),i&&(a.controlUrl=i),n.capabilities&&n.capabilities.length>0&&(a.capabilities=n.capabilities.filter(ze)),ze(n.notice)&&le(n.notice)!==""&&(a.notice=le(n.notice)),!a.bridgeUrls&&!a.controlUrl&&!a.notice?null:a}function oi(n){if(!ac(n))return null;let e=n,t=e.expiresAt;if(typeof t!="number"||!Number.isFinite(t))return null;let r={expiresAt:t};typeof e.schema=="number"&&(r.schema=e.schema),typeof e.issuedAt=="number"&&(r.issuedAt=e.issuedAt);let o=e.bridgeUrls;if(Array.isArray(o)){let a=o.filter(c=>nr(c)).map(c=>le(String(c)));a.length>0&&(r.bridgeUrls=a)}ni(e.controlUrl)&&(r.controlUrl=le(String(e.controlUrl)));let i=e.capabilities;Array.isArray(i)&&(r.capabilities=i.filter(ze)),ze(e.notice)&&le(e.notice)!==""&&(r.notice=le(e.notice));let s=e.source;return(s==="well_known"||s==="token")&&(r.source=s),!r.bridgeUrls&&!r.controlUrl&&!r.notice?null:r}function An(n,e=Rn()){return!!n&&n.expiresAt>e}function ii(n,e){if(!n)return e??null;if(!e)return n;let t=n.issuedAt??-1;return(e.issuedAt??-1)>t?e:n}function si(n,e=Rn()){if(An(n,e))return n?.bridgeUrls?.[0]}function lc(n){return`${n.replace(/\/+$/,"")}${Zo}`}async function ai(n,e=cc){if(!n||le(n)==="")return null;let t=new AbortController,r=setTimeout(()=>t.abort(),e);r.unref?.();try{let o=await fetch(lc(n),{method:"GET",headers:{accept:"application/json"},signal:t.signal});return o.ok?Cn(await o.json()):null}catch{return null}finally{clearTimeout(r)}}var Ye={version:1,controlBaseUrl:"",bridgeWsUrl:"",directories:[],device:void 0},sr=class{_notifier;argv;config=Ye;envFile=Dn.config({quiet:!0});processEnv={};productionEnv={};configFileContent={};_privateKeyCache=void 0;_privateKeyToStore=void 0;_discovery=null;_bridgeEndpointSource=void 0;constructor(e){this._notifier=e,this.loadProductionEnv()}loadProductionEnv(){let e=[Ue.resolve(Ue.dirname(process.argv[1]??"."),".env.production"),Ue.resolve(process.cwd(),".env.production")];for(let t of e)try{if(or.existsSync(t)){this.productionEnv=Dn.parse(or.readFileSync(t));return}}catch{}}setPrivateKeyCache(e){this._privateKeyCache=e}getPrivateKeyToStore(){return this._privateKeyToStore}withDiscoveryCache(e){return this._discovery=e??oi(this.safeGetConfigValue("discovery")),this}getDiscoveryCache(){return this._discovery}getBridgeEndpointSource(){return this._bridgeEndpointSource}getBundledBridgeWsUrl(){return this.firstSet(this.productionEnv.DLINK_BRIDGE_URL)}withDefaultConfig(){return this.config.version=Ye.version,this.config.controlBaseUrl=Ye.controlBaseUrl,this.config.bridgeWsUrl=Ye.bridgeWsUrl,this.config.directories=Ye.directories,this.config.device=Ye.device,this}withProcessEnv(){return this.processEnv={NODE_ENV:process.env.NODE_ENV,APPDATA:process.env.APPDATA,npm_package_version:process.env.npm_package_version,DLINK_DEVICE_ID:process.env.DLINK_DEVICE_ID,DLINK_DEVICE_NAME:process.env.DLINK_DEVICE_NAME,DLINK_DEVICE_TAG:process.env.DLINK_DEVICE_TAG,DLINK_CONTROL_URL:process.env.DLINK_CONTROL_URL,DLINK_BRIDGE_URL:process.env.DLINK_BRIDGE_URL,DLINK_DIRECTORIES:process.env.DLINK_DIRECTORIES},this}withArgv(e){return this.argv=e,this}withEnviromentFile(e){return this.envFile=Dn.config({path:e,quiet:!0}),this}withConfigFile(e){try{let t=this.getApplicationConfigFolder(),r=Ue.join(t,e);if(or.existsSync(r)){let o=or.readFileSync(r,"utf8"),i=JSON.parse(o);In(i)&&!ir(i)?this.configFileContent=i:this._notifier.warn(`Config file ${e} does not contain a valid object`,{scope:"system"})}}catch(t){let r=t instanceof Error?t.message:String(t);this._notifier.warn(`Failed to load config file ${e}: ${r}`,{scope:"system"})}return this}build(){return this.config.controlBaseUrl=this.getControlBaseUrl(),this.config.bridgeWsUrl=this.getBridgeWsUrl(),this.config.discovery=this._discovery??void 0,this.config.directories=this.getDirectories(),this.config.device=this.getDevice(),this.config.tokens=this.getTokens(),this.config}getConfigValue(e,t){let r=this.safeGetConfigValue(e);return r===void 0?t?.defaultValue:r}firstSet(...e){return e.find(t=>t!=null&&String(t).trim()!=="")}getControlBaseUrl(){return this.firstSet(this.argv?.controlUrl,this.safeGetEnvValue("DLINK_CONTROL_URL"),this.safeGetConfigValue("controlBaseUrl"),this.processEnv.DLINK_CONTROL_URL,this.productionEnv.DLINK_CONTROL_URL)}resolveBridgeWsUrl(e=this._discovery){let t=[["argv",this.argv?.bridgeWsUrl],["env-file",this.safeGetEnvValue("DLINK_BRIDGE_URL")],["process-env",this.processEnv.DLINK_BRIDGE_URL],["discovered",si(e)],["config-file",this.safeGetConfigValue("bridgeWsUrl")],["bundled",this.productionEnv.DLINK_BRIDGE_URL]];for(let[r,o]of t){let i=this.firstSet(o);if(i)return{url:i,source:r}}return{url:void 0,source:void 0}}getBridgeWsUrl(){let{url:e,source:t}=this.resolveBridgeWsUrl(this._discovery);return this._bridgeEndpointSource=t,e}getDirectories(){let e=[];if(e.push(this.createDirectoryFromPath(process.cwd())),this.argv?.rootPath)try{e.push(...this.parseDirectoriesFromString(this.argv.rootPath))}catch{e.push(this.createDirectoryFromPath(this.argv.rootPath))}let t=this.safeGetEnvValue("DLINK_DIRECTORIES")??this.safeGetEnvValue("DLINK_ROOTS");if(t)try{e.push(...this.parseDirectoriesFromString(t))}catch{}let r=this.safeGetConfigValue("directories")??this.safeGetConfigValue("roots");if(r)try{e.push(...this.parseDirectoriesFromValue(r))}catch{}let o=this.processEnv.DLINK_DIRECTORIES??this.processEnv.DLINK_ROOTS;if(o)try{e.push(...this.parseDirectoriesFromString(o))}catch{}return this.deduplicateDirectories(e)}deduplicateDirectories(e){let t=new Set,r=[];for(let o of e){let i=dn(o.path);t.has(i)||(t.add(i),r.push(o))}return r}getDevice(){let e=this.getDeviceId();if(!e){this._notifier.warn("No device ID found from any source (argv, env, config, process env, or machine ID)",{scope:"system"});return}let t=this.getDeviceName();t||(t=ci.hostname()||"Unknown Device");let r=this.getDeviceTag(),o=new Jt({notifier:this._notifier,argv:this.argv,envFile:this.envFile,processEnv:this.processEnv,configFileContent:this.configFileContent,getPrivateKey:()=>this._privateKeyCache}),{publicKey:i}=o.ensureDeviceKeys();this._privateKeyToStore=o.getLastGeneratedPrivateKey();let s={id:e,name:t,tag:r||"",keys:{public:i}};return this._notifier.info(`Created device: id=${s.id?.substring(0,8)}..., name=${s.name}, tag=${s.tag||"(empty)"}`,{scope:"system"}),s}getDeviceId(){this._notifier.info("Checking env file for DLINK_DEVICE_ID...",{scope:"system"});let e=this.safeGetEnvValue("DLINK_DEVICE_ID");if(e&&!Ce(e))return this._notifier.info(`Found device ID in env file: ${e.substring(0,8)}...`,{scope:"system"}),e;this._notifier.info("Checking config file for deviceId...",{scope:"system"});let t=this.safeGetConfigValue("deviceId")??Re(this.safeGetConfigValue("device"),"id");if(t&&!Ce(String(t)))return this._notifier.info(`Found device ID in config file: ${String(t).substring(0,8)}...`,{scope:"system"}),String(t);this._notifier.info("Checking process env for DLINK_DEVICE_ID...",{scope:"system"});let r=this.processEnv.DLINK_DEVICE_ID;if(r&&!Ce(r))return this._notifier.info(`Found device ID in process env: ${r.substring(0,8)}...`,{scope:"system"}),r;this._notifier.info("Trying machine ID as fallback...",{scope:"system"});let o=Ht(!0);if(o)return this._notifier.info(`Using machine ID: ${o.substring(0,8)}...`,{scope:"system"}),o;this._notifier.error("Failed to get machine ID in getDeviceId()",{scope:"system"}),this._notifier.warn("No device ID found in any source",{scope:"system"})}getDeviceName(){let e=this.safeGetEnvValue("DLINK_DEVICE_NAME");if(e&&!Ce(e))return e;let t=Re(this.safeGetConfigValue("device"),"name");if(t&&!Ce(String(t)))return String(t);let r=this.processEnv.DLINK_DEVICE_NAME;if(r&&!Ce(r))return r;let o=ci.hostname();if(o&&!Ce(o))return o}getDeviceTag(){let e=this.safeGetEnvValue("DLINK_DEVICE_TAG");if(e)return e;let t=Re(this.safeGetConfigValue("device"),"tag");if(t)return String(t);let r=this.processEnv.DLINK_DEVICE_TAG;if(r)return r}getTokens(){let e=this.safeGetConfigValue("tokens");if(!e||!In(e)||ir(e))return;let t=e,r={},o=Re(t,"accessTokenExpSec");if(typeof o=="number"&&(r.accessTokenExpSec=o),r.accessTokenExpSec!==void 0)return r}safeGetEnvValue(e){try{return Re(this.envFile,`parsed.${e}`)}catch{return}}safeGetConfigValue(e){try{return Re(this.configFileContent,e)}catch{return}}parseDirectoriesFromString(e){try{let t=JSON.parse(e);return this.parseDirectoriesFromValue(t)}catch{return[this.createDirectoryFromPath(e)]}}parseDirectoriesFromValue(e){if(ir(e))return e.map(r=>this.parseDirectoryFromValue(r)).filter(r=>r!==null);if(li(e))return[this.createDirectoryFromPath(e)];let t=this.parseDirectoryFromValue(e);return t?[t]:[]}parseDirectoryFromValue(e){if(li(e))return this.createDirectoryFromPath(e);if(In(e)&&!ir(e)){let t=e,r=gt(Re(t,"path")),o=Re(t,"path"),i=uc(Re(t,"name"),o?Ue.basename(o):"");if(!Ce(r)&&!Ce(o)){let s=ht(o);return{id:String(r),name:String(i),path:String(o),tag:s}}}return null}createDirectoryFromPath(e){let t=Ue.resolve(e),r=gt(t),o=Ue.basename(t),i=ht(t);return{id:r,name:o,path:t,tag:i}}getApplicationConfigFolder(){return Z()}};var pt=class{dedupeKey;parentId;overridePriority;overrideLane;constructor(e,t,r,o){this.dedupeKey=e,this.parentId=t,this.overridePriority=r,this.overrideLane=o}},On=class{phase;flags;constructor(e){this.phase="idle",this.flags=e??new Ae(!1)}},ar=class{argv;configurationContext;bus;notifier;logger;storage;secrets;secretsReport;runtime;lanes;laneActive;registry;orchestrators;orchestratorSubscriptions=new Map;orchestratorAbort;jobs;queue;locksHeldBy;completions;dedupeIndex;engineAbort;jobAbort;stopping;running;wakeFn;wakePromise;constructor(e){this.argv=e.argv,this.bus=e.bus,this.logger=e.logger,this.notifier=e.notifier,this.storage=e.storage,this.secrets=e.secrets,this.secretsReport=e.secretsReport,this.runtime=new On(e.flags),this.lanes=new Map;for(let o of e.lanes)this.lanes.set(o.name,o);this.laneActive=new Map;for(let o of e.lanes)this.laneActive.set(o.name,0);this.registry=new Map,this.orchestrators=[],this.orchestratorAbort=new AbortController,this.jobs=new Map,this.queue=[],this.locksHeldBy=new Map,this.completions=new Map,this.dedupeIndex=new Map,this.engineAbort=new AbortController,this.jobAbort=new Map,this.stopping=!1,this.running=!1,this.wakeFn=null,this.wakePromise=this.resetWake();let t=new Wt,r=new sr(this.notifier);this.configurationContext=new Gt(t,r)}applyConfiguration(e){this.configurationContext.apply(e)}setPhase(e){this.runtime.phase=e}getBus(){return this.bus}hasRunningJobs(){for(let[,e]of this.laneActive)if(e>0)return!0;return!1}register(e){let t=e.options.name;if(this.registry.has(t))throw new Error(`JobType already registered: ${t}`);this.registry.set(t,e)}registerOrchestrator(e){if(this.orchestrators.some(o=>o.name===e.name))throw new Error(`Orchestrator already registered: ${e.name}`);let r=new Ge({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:this.orchestratorAbort.signal});e.onRegister?.(r),this.setupOrchestratorSubscriptions(e,r),this.orchestrators.push(e)}setupOrchestratorSubscriptions(e,t){let r=e.handlers?.();if(r){let o=[];Object.keys(r).forEach(i=>{let s=r[i];s&&o.push(this.bus.on(i,a=>{Promise.resolve(s(a,t)).catch(c=>{let l=c instanceof Error?c.message:String(c);this.logger.error(`handler error (${e.name}/${String(i)}): ${l}`),this.notifier.error(`handler error (${e.name}/${String(i)}): ${l}`,{scope:"system"})})}))}),this.orchestratorSubscriptions.set(e.name,o)}}async init(){let e=await this.storage.load();for(let[t,r]of Object.entries(e.jobs))this.jobs.set(t,new mt(r));for(let t of this.jobs.values())t.state==="running"&&(t.state="queued",t.nextRunAt=Date.now(),t.updatedAt=Date.now()),t.dedupeKey&&this.dedupeIndex.set(t.dedupeKey,t.id),t.state==="queued"&&this.queue.push(t.id)}async start(){if(!this.running){this.running=!0,this.runtime.phase="running",process.on("uncaughtException",e=>{this.notifier.error(`uncaughtException: ${e.stack?e.stack:String(e)}`,{scope:"system"}),this.bus.emit("engine:crashed",{reason:"uncaughtException",detail:e instanceof Error?`${e.name}: ${e.message}`:String(e)}),this.requestStop("uncaughtException")}),process.on("unhandledRejection",e=>{this.notifier.error(`unhandledRejection: ${String(e)}`,{scope:"system"}),this.bus.emit("engine:crashed",{reason:"unhandledRejection",detail:String(e)})}),this.bus.emit("engine:started",Date.now());try{await this.startOrchestratorsSafe(),await this.loopGuarded()}finally{await this.stopOrchestratorsSafe(),await this.persist(),this.bus.emit("engine:stopped",Date.now())}}}requestStop(e){if(!this.stopping){this.stopping=!0,this.runtime.phase="stopping",this.bus.emit("engine:stopping",e),this.engineAbort.abort(new Error(`Stopping: ${e}`)),this.orchestratorAbort.abort(new Error(`Stopping: ${e}`));for(let[t,r]of this.jobAbort.entries())this.jobs.get(t)?.cancellable&&r.abort(new Error("Cancelled by user"));this.wake()}}async dispatch(e,t){let r=t||new pt(null,null,null,null),o=e.type.options.name;if(!this.registry.has(o)){let f=new Error(`JobType not registered: ${o}`);return De.failure(f)}if(r.dedupeKey){let f=this.dedupeIndex.get(r.dedupeKey);if(f){let p=this.jobs.get(f);if(p&&(p.state==="queued"||p.state==="running")){let m=this.completions.get(f);if(m)return await m.promise}}}let i=this.newId(),s=new Bt;this.completions.set(i,s);let a=r.overrideLane?r.overrideLane:e.type.options.lane,c=r.overridePriority!==null?r.overridePriority:e.type.options.priority,l=new mt({id:i,jobType:o,inputJson:e.input===void 0?"null":JSON.stringify(e.input),state:"queued",lane:a,priority:c,locks:e.type.options.locks,attempts:0,maxAttempts:e.type.options.maxAttempts,nextRunAt:Date.now(),cancellable:e.type.options.cancellable,parentId:r.parentId,dedupeKey:r.dedupeKey,lastError:null,createdAt:Date.now(),updatedAt:Date.now()});return this.jobs.set(i,l),this.queue.push(i),r.dedupeKey&&this.dedupeIndex.set(r.dedupeKey,i),this.emitJobEvent(l,"queued",null,null),await this.persist(),this.wake(),await s.promise}async loopGuarded(){for(;!this.stopping;)try{await this.loopOnce()}catch(e){this.notifier.error(`Engine loop error: ${String(e)}`,{scope:"system"}),await new Promise(t=>setTimeout(t,250))}}async loopOnce(){let e=0;for(;;){let t=this.pickNextRunnable();if(!t)break;e+=1,this.runJobSafe(t)}e===0&&(await this.wakePromise,this.wakePromise=this.resetWake())}async runJobSafe(e){try{await this.runJobInternal(e)}catch(t){this.notifier.error(`runJobInternal crashed: ${String(t)}`,{scope:"system"});let r=this.completions.get(e);r&&r.resolve(De.failure(new Error(String(t))))}finally{this.wake()}}pickNextRunnable(){let e=Date.now(),t=null,r=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;for(let s of this.queue){let a=this.jobs.get(s);a&&a.state==="queued"&&(this.stopping&&a.lane!=="console"||a.nextRunAt>e||this.canRunInLane(a.lane)&&this.canAcquireLocks(a)&&(a.priority>r||a.priority===r&&a.nextRunAt<o)&&(r=a.priority,o=a.nextRunAt,t=s))}if(!t)return null;let i=this.queue.indexOf(t);return i>=0&&this.queue.splice(i,1),t}canRunInLane(e){let t=this.lanes.get(e);if(!t)return!1;let r=this.laneActive.get(e);return r===void 0?!1:r<t.concurrency}canAcquireLocks(e){for(let t of e.locks){let r=this.locksHeldBy.get(t);if(r&&r!==e.id&&!(e.parentId&&r===e.parentId))return!1}return!0}acquireLocks(e){for(let t of e.locks)this.locksHeldBy.get(t)||this.locksHeldBy.set(t,e.id)}releaseLocks(e){for(let t of e.locks)this.locksHeldBy.get(t)===e.id&&this.locksHeldBy.delete(t)}async runJobInternal(e){let t=this.jobs.get(e);if(!t)return;let r=this.registry.get(t.jobType);if(!r){this.completeFailure(e,new Error(`No registered JobType: ${t.jobType}`));return}let o=this.laneActive.get(t.lane);if(o===void 0){this.completeFailure(e,new Error(`Unknown lane: ${t.lane}`));return}let i=new AbortController;if(this.jobAbort.set(e,i),t.cancellable){let a=this.engineAbort.signal;a.aborted?i.abort(a.reason instanceof Error?a.reason:new Error("Stopped")):a.addEventListener("abort",()=>i.abort(a.reason instanceof Error?a.reason:new Error("Stopped")),{once:!0})}this.laneActive.set(t.lane,o+1),this.acquireLocks(t),t.state="running",t.updatedAt=Date.now(),await this.persist(),this.emitJobEvent(t,"running",null,null);let s=new Kt({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:i.signal,dispatch:async(a,c)=>this.dispatch(a,c)});try{let a=JSON.parse(t.inputJson),c=a===null?void 0:a,l=await r.run(c,s);t.state="succeeded",t.updatedAt=Date.now(),t.lastError=null,await this.persist(),this.emitJobEvent(t,"succeeded",null,null),this.completeSuccess(e,l)}catch(a){let c=a instanceof Error?a:new Error("Unknown error");if(t.attempts+=1,t.updatedAt=Date.now(),t.lastError=c.message,i.signal.aborted)t.state="failed",await this.persist(),this.emitJobEvent(t,"failed",c.message,null),this.notifier.error(`Job ${t.jobType} (${e.substring(0,8)}) cancelled: ${c.message}`),this.completeCancelled(e,c);else if(t.attempts<t.maxAttempts&&!this.stopping){let f=pc(t.attempts);t.state="queued",t.nextRunAt=Date.now()+f,await this.persist(),this.queue.push(t.id),this.emitJobEvent(t,"queued",c.message,t.nextRunAt),this.notifier.warn(`Job ${t.jobType} (${e.substring(0,8)}) failed, retrying in ${f}ms (attempt ${t.attempts}/${t.maxAttempts}): ${c.message}`)}else t.state="failed",await this.persist(),this.emitJobEvent(t,"failed",c.message,null),this.notifier.error(`Job ${t.jobType} (${e.substring(0,8)}) failed after ${t.attempts} attempt(s): ${c.message}`),this.completeFailure(e,c)}finally{this.releaseLocks(t);let a=this.laneActive.get(t.lane);a!==void 0&&this.laneActive.set(t.lane,Math.max(0,a-1)),this.jobAbort.delete(e),this.wake()}}async startOrchestratorsSafe(){let e=new Ge({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:this.orchestratorAbort.signal});for(let t of this.orchestrators)Promise.resolve().then(()=>t.onStart?.(e)).then(()=>t.onStarted?.(e)).catch(r=>this.notifier.error(`Orchestrator start failed (${t.name}): ${String(r)}`,{scope:"system"}))}async stopOrchestratorsSafe(){let e=new Ge({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:this.orchestratorAbort.signal});for(let t=this.orchestrators.length-1;t>=0;t--){let r=this.orchestrators[t];try{await r.onStop?.(e),r.onStopped?.(e)}catch(i){this.notifier.error(`Orchestrator stop failed (${r.name}): ${String(i)}`,{scope:"system"})}let o=this.orchestratorSubscriptions.get(r.name);if(o){for(let i of o)i.unsubscribe();this.orchestratorSubscriptions.delete(r.name)}}}emitJobEvent(e,t,r,o){this.bus.emit("job:event",new Vt({ts:Date.now(),jobId:e.id,jobType:e.jobType,state:t,attempt:e.attempts,maxAttempts:e.maxAttempts,lane:e.lane,priority:e.priority,error:r,nextRunAt:o}))}completeSuccess(e,t){let r=this.completions.get(e);r&&r.resolve(De.success(t))}completeFailure(e,t){let r=this.completions.get(e);r&&r.resolve(De.failure(t))}completeCancelled(e,t){let r=this.completions.get(e);r&&r.resolve(De.cancelled(t))}async persist(){let e={};for(let[t,r]of this.jobs.entries())e[t]=r;await this.storage.save(new Le(e))}wake(){this.wakeFn&&this.wakeFn()}resetWake(){return new Promise(e=>{this.wakeFn=e})}newId(){return dc.randomBytes(8).toString("hex")}};function pc(n){let r=Math.min(3e4,300*2**(n-1)),o=Math.floor(Math.random()*200);return r+o}var cr=class{handlers;constructor(){this.handlers=new Map}on(e,t){let r=this.handlers.get(e),o=r||[];return o.push(t),this.handlers.set(e,o),{unsubscribe:()=>{let i=this.handlers.get(e);if(!i)return;let s=i.filter(a=>a!==t);this.handlers.set(e,s)}}}emit(e,t){let r=this.handlers.get(e);if(r)for(let o of r)o(t)}};import*as Si from"node:path";import*as Oe from"node:fs/promises";import*as ur from"node:path";var ui={DevicePrivateKey:"devicePrivateKey",RefreshToken:"refreshToken"},di=[ui.DevicePrivateKey,ui.RefreshToken],N={MacosKeychain:"macos-keychain",LinuxSecretService:"linux-secret-service",WindowsDpapi:"windows-dpapi",Passphrase:"passphrase",MachineId:"machine-id-file"},F={WrongPlatform:"wrong_platform",ToolMissing:"tool_missing",NoSessionBus:"no_session_bus",Locked:"locked",Timeout:"timeout",NotConfigured:"not_configured",RoundTripFailed:"round_trip_failed"},P=class extends Error{backend;constructor(e,t){super(t),this.name="SecretsUnreadableError",this.backend=e}};var fc="secrets.backend",mc=Object.values(N),lr=class{filePath;platform;constructor(e,t=process.platform){this.filePath=ur.join(e,fc),this.platform=t}async read(){try{let e=(await Oe.readFile(this.filePath,"utf8")).trim();return mc.includes(e)?e:void 0}catch{return}}async write(e){try{await Oe.mkdir(ur.dirname(this.filePath),{recursive:!0,mode:448}),await Oe.writeFile(this.filePath,`${e}
|
|
3
|
-
`,{encoding:"utf8",mode:384}),this.platform!=="win32"&&await Oe.chmod(this.filePath,384).catch(()=>{})}catch{return}}};import{spawn as hc}from"node:child_process";var bt=5e3,dr=class{run(e,t={}){let r=t.timeoutMs??bt;return new Promise(o=>{let i="",s="",a=!1,c=!1,l=hc(e.command,[...e.args],{stdio:["pipe","pipe","pipe"],windowsHide:!0,env:t.env?{...process.env,...t.env}:void 0}),d=setTimeout(()=>{a=!0,l.kill("SIGKILL")},r);d.unref();let f=p=>{c||(c=!0,clearTimeout(d),o(p))};l.stdout?.setEncoding("utf8"),l.stdout?.on("data",p=>{i+=p}),l.stderr?.setEncoding("utf8"),l.stderr?.on("data",p=>{s+=p}),l.on("error",()=>{f({code:null,stdout:i,stderr:s,timedOut:a,spawnFailed:!0})}),l.on("close",p=>{f({code:p,stdout:i,stderr:s,timedOut:a,spawnFailed:!1})}),l.stdin?.on("error",()=>{}),l.stdin?.end(t.stdin??"","utf8")})}};var pr=class{async migrate(e,t,r=di){if(e.id===t.id)return{migrated:!1,reason:"same_backend"};if(await this.hasAny(t,r))return{migrated:!1,reason:"target_populated"};let o;try{o=await this.read(e,r)}catch{return{migrated:!1,reason:"source_unreadable"}}if(o.length===0)return{migrated:!1,reason:"source_empty"};try{for(let i of o)await t.set(i.key,i.value)}catch{return{migrated:!1,reason:"target_write_failed"}}if(!await this.verify(t,o))return{migrated:!1,reason:"verify_failed"};for(let i of o)await e.delete(i.key).catch(()=>{});return{migrated:!0,from:e.id,keys:o.map(i=>i.key)}}async hasAny(e,t){for(let r of t)if((await e.get(r).catch(()=>({ok:!1}))).ok)return!0;return!1}async read(e,t){let r=[];for(let o of t){let i=await e.get(o);i.ok&&r.push({key:o,value:i.value})}return r}async verify(e,t){for(let r of t){let o=await e.get(r.key).catch(()=>({ok:!1}));if(!o.ok||o.value!==r.value)return!1}return!0}};var pi="DeviceLink",fr=class{service;constructor(e){let t=(e??"").trim().toLowerCase();this.service=t===""||t==="production"?pi:`${pi}-${t}`}account(e){return e}label(e){return`${this.service} ${e}`}attributes(e){return["service",this.service,"key",this.account(e)]}};import*as Se from"node:fs/promises";import*as hi from"node:path";var fi=448,mi=384,Ne=class{filePath;platform;cache=null;constructor(e){this.filePath=e.filePath,this.platform=e.platform??process.platform}async get(e){let r=(await this.load())[e];return r===void 0?{ok:!1}:{ok:!0,value:r}}async set(e,t){let r=await this.load();r[e]=t,await this.save(r)}async delete(e){let t=await this.load();t[e]!==void 0&&(delete t[e],await this.save(t))}async load(){if(this.cache!==null)return this.cache;let e;try{e=await Se.readFile(this.filePath,"utf8")}catch(t){if(gc(t))return this.cache={},this.cache;throw new P(this.id,`${this.label} could not read its secret store`)}try{this.cache=JSON.parse(await this.unprotect(e))}catch(t){throw t instanceof P?t:new P(this.id,`${this.label} could not decrypt its secret store. The store exists but is unreadable with the current key, so it has been left untouched.`)}return this.cache}async save(e){let t=hi.dirname(this.filePath);await Se.mkdir(t,{recursive:!0,mode:fi}),await this.hardenPath(t,fi);let r=await this.protect(JSON.stringify(e)),o=`${this.filePath}.tmp`;await Se.writeFile(o,r,{encoding:"utf8",mode:mi}),await Se.rename(o,this.filePath),await this.hardenPath(this.filePath,mi)}async hardenPath(e,t){this.platform!=="win32"&&await Se.chmod(e,t).catch(()=>{})}};function gc(n){return typeof n=="object"&&n!==null&&n.code==="ENOENT"}var yc=["powershell.exe","pwsh"],gi=['$ErrorActionPreference = "Stop"',"Add-Type -AssemblyName System.Security","$in = [Console]::In.ReadToEnd()","$bytes = [Text.Encoding]::UTF8.GetBytes($in)",'$out = [Security.Cryptography.ProtectedData]::Protect($bytes, $null, "CurrentUser")',"[Console]::Out.Write([Convert]::ToBase64String($out))"].join("; "),yi=['$ErrorActionPreference = "Stop"',"Add-Type -AssemblyName System.Security","$in = [Console]::In.ReadToEnd()","$bytes = [Convert]::FromBase64String($in.Trim())",'$out = [Security.Cryptography.ProtectedData]::Unprotect($bytes, $null, "CurrentUser")',"[Console]::Out.Write([Text.Encoding]::UTF8.GetString($out))"].join("; "),mr=class extends Ne{id=N.WindowsDpapi;label="Windows DPAPI";runner;shell;timeoutMs;constructor(e){super(e),this.runner=e.runner,this.shell=e.shell??yc[0],this.timeoutMs=e.timeoutMs??bt}async probe(){if(this.platform!=="win32")return{available:!1,reason:F.WrongPlatform};let e="dlink-dpapi-probe",t=await this.invoke(gi,e);if(t.timedOut)return{available:!1,reason:F.Timeout};if(t.spawnFailed)return{available:!1,reason:F.ToolMissing,detail:`${this.shell} is not available`};if(t.code!==0)return{available:!1,reason:F.RoundTripFailed,detail:"DPAPI could not protect a value"};let r=await this.invoke(yi,t.stdout);return r.code!==0||r.stdout!==e?{available:!1,reason:F.RoundTripFailed,detail:"DPAPI could not read back a value"}:{available:!0}}async protect(e){let t=await this.invoke(gi,e);if(t.code!==0||t.timedOut||t.spawnFailed)throw new P(this.id,"DPAPI could not protect the secret store.");return t.stdout.trim()}async unprotect(e){let t=await this.invoke(yi,e);if(t.timedOut||t.spawnFailed)throw new P(this.id,"DPAPI did not respond while reading the secret store.");if(t.code!==0)throw new P(this.id,"DPAPI could not decrypt the secret store. A DPAPI store is bound to one user on one machine, so a copied or roamed profile cannot be read; nothing has been changed.");return t.stdout}invoke(e,t){let r={command:this.shell,args:["-NoProfile","-NonInteractive","-Command",e],secretVia:"stdin"};return this.runner.run(r,{stdin:t,timeoutMs:this.timeoutMs})}};var Pn="__DLINK_SECRET__",Qe=class{runner;namespace;timeoutMs;constructor(e){this.runner=e.runner,this.namespace=e.namespace,this.timeoutMs=e.timeoutMs??bt}normaliseValue(e){return e.replace(/\r?\n$/,"")}encodeValue(e){return Buffer.from(e,"utf8").toString("base64url")}decodeValue(e){let t=Buffer.from(e,"base64url").toString("utf8");if(Buffer.from(t,"utf8").toString("base64url")!==e)throw new P(this.id,`${this.label} holds an item this agent did not write, so it cannot be read safely.`);return t}runEnv(){}runOptions(e={}){return{...e,timeoutMs:this.timeoutMs,env:this.runEnv()}}async probe(){let e=await this.runner.run(this.probeCommand(),this.runOptions());return this.interpretProbe(e)}async get(e){let t=await this.runner.run(this.readCommand(e),this.runOptions());return this.isMissing(t)?{ok:!1}:(this.assertUsable(t,`read ${e}`),{ok:!0,value:this.decodeValue(this.normaliseValue(t.stdout))})}async set(e,t){let r=this.writeCommand(e),o=r.secretVia!=="argv",i=this.encodeValue(t),s=await this.runner.run(o?r:{...r,args:bc(r.args,i)},o?this.runOptions({stdin:i}):this.runOptions());this.assertUsable(s,`write ${e}`);let a=await this.get(e);if(!a.ok||a.value!==t)throw new P(this.id,`${this.label} accepted ${e} but did not store it correctly, so it has not been trusted.`)}async delete(e){let t=await this.runner.run(this.deleteCommand(e),this.runOptions());this.isMissing(t)||this.assertUsable(t,`delete ${e}`)}assertUsable(e,t){if(e.timedOut)throw new P(this.id,`${this.label} timed out trying to ${t}`);if(e.spawnFailed)throw new P(this.id,`${this.label} is no longer available (could not ${t})`);if(e.code!==0)throw new P(this.id,`${this.label} failed to ${t} (exit ${String(e.code)})`)}};function bc(n,e){return n.map(t=>t===Pn?e:t)}var hr="secret-tool",vc="__dlink_probe__",Sc="DBUS_SESSION_BUS_ADDRESS",Ec=1,_c=/could not connect|cannot autolaunch|not provided by any \.service/i,gr=class extends Qe{id=N.LinuxSecretService;label="Linux Secret Service";env;constructor(e){super(e),this.env=e.env??process.env}async probe(){let e=this.env[Sc];return e===void 0||e.trim()===""?{available:!1,reason:F.NoSessionBus}:super.probe()}runEnv(){return this.env}readCommand(e){return{command:hr,args:["lookup",...this.namespace.attributes(e)]}}writeCommand(e){return{command:hr,args:["store",`--label=${this.namespace.label(e)}`,...this.namespace.attributes(e)],secretVia:"stdin"}}deleteCommand(e){return{command:hr,args:["clear",...this.namespace.attributes(e)]}}probeCommand(){return{command:hr,args:["lookup","service",this.namespace.service,"key",vc]}}isMissing(e){return e.timedOut||e.spawnFailed?!1:e.code===Ec&&e.stdout.trim()===""&&e.stderr.trim()===""}interpretProbe(e){return e.timedOut?{available:!1,reason:F.Timeout,detail:"the keyring did not respond"}:e.spawnFailed?{available:!1,reason:F.ToolMissing,detail:"secret-tool is not installed"}:_c.test(e.stderr)?{available:!1,reason:F.NoSessionBus,detail:"the Secret Service could not be reached"}:e.code===0||this.isMissing(e)?{available:!0}:{available:!1,reason:F.Locked,detail:`secret-tool exited ${String(e.code)}`}}};import*as bi from"node:crypto";import*as Ze from"node:crypto";var vt=12,yr=16,br=32,Xe=class{key;constructor(e){this.key=e}encrypt(e){let t=Ze.randomBytes(vt),r=Ze.createCipheriv("aes-256-gcm",this.key,t,{authTagLength:yr}),o=Buffer.concat([r.update(e,"utf8"),r.final()]),i=r.getAuthTag();return Buffer.concat([t,i,o]).toString("base64url")}decrypt(e){let t=Buffer.from(e,"base64url"),r=t.subarray(0,vt),o=t.subarray(vt,vt+yr),i=t.subarray(vt+yr),s=Ze.createDecipheriv("aes-256-gcm",this.key,r,{authTagLength:yr});return s.setAuthTag(o),Buffer.concat([s.update(i),s.final()]).toString("utf8")}};var kc="DeviceLink-SecretStorage-v1",Tc=1e5;function wc(n){return bi.pbkdf2Sync(n,kc,Tc,br,"sha256")}var vr=class extends Ne{id=N.MachineId;label="encrypted file (machine-derived key)";codec;constructor(e){super(e);let t=e.machineId?.trim();this.codec=t?new Xe(wc(t)):null}probe(){return this.codec===null?Promise.resolve({available:!1,reason:F.NotConfigured}):Promise.resolve({available:!0})}protect(e){return Promise.resolve(this.requireCodec().encrypt(e))}unprotect(e){return Promise.resolve(this.requireCodec().decrypt(e))}requireCodec(){if(this.codec===null)throw new P(this.id,"Secret storage requires a machine ID");return this.codec}};var Sr="/usr/bin/security",Rc=44,Cc="__dlink_probe__",xc=/could not be found/i,Ac=/interaction is not allowed/i,Er=class extends Qe{id=N.MacosKeychain;label="macOS Keychain";readCommand(e){return{command:Sr,args:["find-generic-password","-s",this.namespace.service,"-a",this.namespace.account(e),"-w"]}}writeCommand(e){return{command:Sr,args:["add-generic-password","-s",this.namespace.service,"-a",this.namespace.account(e),"-U","-w",Pn],secretVia:"argv"}}deleteCommand(e){return{command:Sr,args:["delete-generic-password","-s",this.namespace.service,"-a",this.namespace.account(e)]}}probeCommand(){return{command:Sr,args:["find-generic-password","-s",this.namespace.service,"-a",Cc,"-w"]}}isMissing(e){return e.timedOut||e.spawnFailed?!1:e.code===Rc||xc.test(e.stderr)}interpretProbe(e){return e.timedOut?{available:!1,reason:F.Timeout}:e.spawnFailed?{available:!1,reason:F.ToolMissing}:Ac.test(e.stderr)?{available:!1,reason:F.Locked,detail:"the login keychain is locked"}:e.code===0||this.isMissing(e)?{available:!0}:{available:!1,reason:F.Locked,detail:`security exited ${String(e.code)}`}}};import*as kr from"node:crypto";var St={N:32768,r:8,p:1,maxmem:64*1024*1024},Dc=16,Ic=1,vi="scrypt";function Oc(n,e,t){return new Promise((r,o)=>{kr.scrypt(n,e,br,{N:t.N,r:t.r,p:t.p,maxmem:St.maxmem},(i,s)=>{if(i){o(i);return}r(s)})})}var _r=class extends Ne{id=N.Passphrase;label="encrypted file (operator passphrase)";passphrase;salt=null;codec=null;codecSalt=null;codecParams=null;constructor(e){super(e);let t=e.passphrase??"";this.passphrase=t.trim().length>0?t:null}probe(){return this.passphrase===null?Promise.resolve({available:!1,reason:F.NotConfigured}):Promise.resolve({available:!0})}async protect(e){let t=this.requirePassphrase();this.salt===null&&(this.salt=kr.randomBytes(Dc));let r=await this.codecFor(t,this.salt,St),o={v:Ic,kdf:vi,salt:this.salt.toString("base64url"),N:St.N,r:St.r,p:St.p,blob:r.encrypt(e)};return JSON.stringify(o)}async unprotect(e){let t=this.requirePassphrase(),r=this.parseEnvelope(e),o=Buffer.from(r.salt,"base64url"),i=await this.codecFor(t,o,r);this.salt=o;try{return i.decrypt(r.blob)}catch{throw new P(this.id,"The stored secrets could not be decrypted with DLINK_PASSPHRASE. The passphrase is wrong or the store belongs to another passphrase; nothing has been changed.")}}parseEnvelope(e){let t;try{t=JSON.parse(e)}catch{throw new P(this.id,"The secret store is not a passphrase-protected store.")}let r=t;if(r.kdf!==vi||typeof r.salt!="string"||typeof r.blob!="string")throw new P(this.id,"The secret store is not a passphrase-protected store.");if(typeof r.N!="number"||typeof r.r!="number"||typeof r.p!="number")throw new P(this.id,"The passphrase store does not record its key derivation parameters.");return r}async codecFor(e,t,r){return this.codec!==null&&this.codecSalt!==null&&this.codecSalt.equals(t)&&this.codecParams!==null&&this.codecParams.N===r.N&&this.codecParams.r===r.r&&this.codecParams.p===r.p?this.codec:(this.codec=new Xe(await Oc(e,t,r)),this.codecSalt=t,this.codecParams={N:r.N,r:r.r,p:r.p},this.codec)}requirePassphrase(){if(this.passphrase===null)throw new P(this.id,"DLINK_PASSPHRASE is not set, so the secret store cannot be opened.");return this.passphrase}};var Tr=class extends Error{attempts;constructor(e){super("No secret backend is available, so the agent cannot store its device key."),this.name="NoSecretBackendError",this.attempts=e}},wr=class{async resolve(e){let t=[];for(let r of e){let o=await this.safeProbe(r);if(t.push(Nc(r,o)),o.available)return{provider:r,attempts:t}}throw new Tr(t)}async safeProbe(e){try{return await e.probe()}catch{return{available:!1,reason:F.RoundTripFailed}}}};function Nc(n,e){return e.available?{id:n.id,available:!0}:{id:n.id,available:!1,reason:e.reason}}var Pc="secrets.enc.json",Fc="secrets.pass.json",Lc="secrets.dpapi.json",Mc="DLINK_SECRETS_BACKEND",$c="DLINK_PASSPHRASE";function Uc(n={}){let e=n.platform??process.platform,t=n.env??process.env,r=n.configDir??Z(),o=n.runner??new dr,i=n.machineId,s=new fr(t.DEVICELINK_ENV),a=m=>Si.join(r,m),c=new Map([[N.MacosKeychain,new Er({runner:o,namespace:s})],[N.LinuxSecretService,new gr({runner:o,namespace:s,env:t})],[N.WindowsDpapi,new mr({filePath:a(Lc),runner:o,platform:e})],[N.Passphrase,new _r({filePath:a(Fc),platform:e,passphrase:t[$c]})],[N.MachineId,new vr({filePath:a(Pc),platform:e,machineId:i})]]),l=t[Mc]?.trim(),d=l?c.get(l):void 0;if(d)return[d];let f=[],p=m=>{let g=c.get(m);g&&f.push(g)};return p(N.Passphrase),p(e==="darwin"?N.MacosKeychain:e==="win32"?N.WindowsDpapi:N.LinuxSecretService),p(N.MachineId),f}async function Ei(n={}){let e=n.platform??process.platform,t=n.configDir??Z(),r=n.candidates??Uc(n),o=await new wr().resolve(r),i=new lr(t,e),s=await i.read(),a={backend:o.provider.id,label:o.provider.label,weak:o.provider.id===N.MachineId,attempts:o.attempts,expectedBackend:s,degraded:s!==void 0&&s!==o.provider.id},c=r.find(l=>l.id===N.MachineId);if(c&&c.id!==o.provider.id){let l=await new pr().migrate(c,o.provider);l.migrated&&(a.migratedFrom=l.from)}return await i.write(o.provider.id),{store:o.provider,report:a}}var Rr=class{},Fn=class{ok;config;constructor(e,t){this.ok=e,this.config=t}},Ln=class extends Y{constructor(){super(new z({name:"load-config",lane:"main",priority:1e3,locks:["GLOBAL"],maxAttempts:3,cancellable:!0}))}async run(e,t){t.notifier.info("Loading configuration...",{scope:"system"});let r=t.engine.configurationContext.loader,o=await t.engine.secrets.get("devicePrivateKey");r.setPrivateKeyCache(o.ok&&o.value?o.value:void 0),r.withDefaultConfig(),r.withArgv(t.engine.argv),t.engine.argv.enviromentFile&&r.withEnviromentFile(t.engine.argv.enviromentFile),r.withConfigFile("config.json"),r.withProcessEnv(),r.withDiscoveryCache();let i=r.build(),s=r.getPrivateKeyToStore();return s&&await t.engine.secrets.set("devicePrivateKey",s),this.updateUi(i,t),t.notifier.success("Configuration loaded"),t.engine.applyConfiguration(i),t.bus.emit("config:loaded",i),new Fn(!0,i)}updateUi(e,t){let r={scope:"system"};t.notifier.info(`Control base URL: ${e.controlBaseUrl}`,r),t.notifier.info(`Bridge WebSocket URL: ${e.bridgeWsUrl}`,r),t.notifier.info(`Bridge endpoint source: ${t.engine.configurationContext.loader.getBridgeEndpointSource()??"none"}`,r);let o=e.discovery;o&&t.notifier.info(`Discovery cache: issued_at=${o.issuedAt??"-"} expires_at=${o.expiresAt} control=${o.controlUrl??"-"} bridge=${(o.bridgeUrls??[]).join(",")||"-"}`,r),t.notifier.info(`Directories: ${e.directories.map(i=>i.path).join(", ")}`,r),t.notifier.info(`Device: ${e.device?.id}`,r),t.notifier.info(`Device name: ${e.device?.name}`,r),t.notifier.info(`Device tag: ${e.device?.tag}`,r),t.notifier.info(`Device keys public: ${e.device?.keys?.public?"***":"(none)"}`,r)}},Mn=new Ln;function _i(n){return new pe(Mn,n)}var $n=class{ok;constructor(e){this.ok=e}},Un=class extends Y{constructor(){super(new z({name:"console-command",lane:"console",priority:1e3,locks:[],maxAttempts:1,cancellable:!1}))}async run(e,t){return t.notifier.info(`Executing console command: ${e.kind}`),await new Promise(r=>setTimeout(r,2e3)),t.notifier.info(`Console command executed: ${e.kind}`),t.notifier.success(`Console command executed: ${e.kind}`),new $n(!0)}},ki=new Un;var Bn=class{ok;constructor(e){this.ok=e}},Kn=class extends Y{constructor(){super(new z({name:"contact-server",lane:"main",priority:900,locks:["GLOBAL"],maxAttempts:8,cancellable:!0}))}async run(e,t){return t.notifier.info(`contact server mode=${e.mode}`,{scope:"system"}),await new Promise(r=>setTimeout(r,200)),new Bn(!0)}},Ti=new Kn;var jn=class{ok;constructor(e){this.ok=e}},Vn=class extends Y{constructor(){super(new z({name:"send-server-result",lane:"io",priority:200,locks:[],maxAttempts:10,cancellable:!0}))}async run(e,t){return t.notifier.info(`send result requestId=${e.requestId}`,{scope:"system"}),await new Promise(r=>setTimeout(r,10)),new jn(!0)}},wi=new Vn;import Kc from"node:crypto";import te from"lodash/get.js";import Et from"lodash/isPlainObject.js";import tt from"lodash/isString.js";var ee=class{constructor(e,t){this.context=e;this.handler=t}execute(e){return this.handler(this.context,e)}};async function Ee(n,e,t){let r=`${n.configuration.controlBaseUrl}${e}`,o=await fetch(r,t);if(!o.ok){let i=await o.text().catch(a=>{let c=a instanceof Error?a.message:String(a);return n.notifier.error(`Failed to read HTTP error response body: ${c}`),""}),s=new Error(`HTTP ${o.status}: ${i}`);s.status=o.status;try{s.body=i?JSON.parse(i):void 0}catch{s.body=void 0}if(o.status===429){let a=o.headers.get("Retry-After");if(a!==null){let c=parseInt(a,10);Number.isFinite(c)&&c>=0&&(s.retryAfterSec=c)}}throw s}return o.json()}function Ri(n){return new ee(n,async(e,t)=>Ee(e,"/api/device/authorize/start",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}function Ci(n){return new ee(n,async(e,t)=>Ee(e,"/api/device/authorize/prove",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}import{z as me}from"zod";var Bc=me.union([me.object({status:me.literal("pending"),needs_proof:me.boolean()}),me.object({status:me.literal("approved"),needs_proof:me.boolean()}),me.object({error:me.literal("access_denied")}),me.object({error:me.literal("expired_token")})]);function xi(n){return new ee(n,async(e,t)=>{let r=new URL("/api/device/authorize/stream",e.configuration.controlBaseUrl);r.searchParams.set("device_code",t.deviceCode);let o=e.notifier,i=new AbortController,s=setTimeout(()=>{o.error("[deviceAuthStream] Timeout reached, aborting"),i.abort()},Math.max(1e3,t.timeoutMs));if(t.signal){let a=t.signal;a.addEventListener("abort",()=>{let c="reason"in a&&a.reason!=null?String(a.reason):"";o.warn(`[deviceAuthStream] External signal aborted: ${c}`),i.abort()})}try{let a=await fetch(r.toString(),{method:"GET",headers:{Accept:"text/event-stream"},signal:i.signal});if(!a.ok||!a.body){let f=await a.text().catch(p=>{let m=p instanceof Error?p.message:String(p);return o.error(`[deviceAuthStream] Failed to read response body (${a.status}): ${m}`),""});throw o.error(`[deviceAuthStream] Response error: ${a.status} - ${f}`),new Error(`device/authorize/stream failed (${a.status}): ${f}`)}let c=a.body.getReader(),l=new TextDecoder("utf-8"),d="";for(;;){let{value:f,done:p}=await c.read();if(p){o.error("[deviceAuthStream] Stream ended unexpectedly");break}for(d+=l.decode(f,{stream:!0});;){let m=d.indexOf(`
|
|
2
|
+
import*as ae from"node:crypto";function vn(n){return`${n.deviceId}|${n.ts}|${n.nonce}`}function Sn(n){return`${n.deviceId}|${n.ts}|${n.nonce}|${n.refreshTokenSha256Hex}`}function ti(n){return ae.createHash("sha256").update(n).digest("hex")}function ri(n){return ae.createHash("sha256").update(n).digest("base64url").slice(0,16).toUpperCase()}function _n(n){let e=ae.createPublicKey(n);if(e.asymmetricKeyType!=="ed25519")throw new Error(`Unexpected key type: ${e.asymmetricKeyType}`);let t=e.export({format:"der",type:"spki"});return ri(t)}function En(n){let e=Buffer.from(vn(n),"utf8"),t=ae.createPrivateKey(n.privateKeyPem);return ae.sign(null,e,t).toString("base64")}function kn(n){let e=ti(n.refreshToken),t=Buffer.from(Sn({...n,refreshTokenSha256Hex:e}),"utf8"),r=ae.createPrivateKey(n.privateKeyPem);return ae.sign(null,t,r).toString("base64")}import ni from"lodash/includes.js";import oi from"lodash/isBoolean.js";import ii from"lodash/isNil.js";import si from"lodash/toLower.js";import ai from"lodash/trim.js";var ci=["true","1","yes","on"],li=["false","0","no","off"];function wn(n){if(ii(n))return!1;if(oi(n))return n;let e=si(ai(String(n)));return e===""?!1:ni(ci,e)}function bt(n){if(ii(n))return!1;if(oi(n))return!n;let e=si(ai(String(n)));return e===""?!1:ni(li,e)}function ee(n){return new Promise(e=>setTimeout(e,n))}function fe(){return Math.floor(Date.now()/1e3)}import*as Se from"node:path";import*as ui from"node:os";function Be(n){return n.replace(/\\/g,"/")}function di(n){return/^[A-Za-z]:[\\/]/.test(n)||/^[A-Za-z]:$/.test(n.trim())}function La(n){return di(n)?n.replace(/\//g,"\\"):n}function Tn(n){if(n==null)return;let e=String(n).trim();if(e==="")return;if(e.startsWith("~"))return Be(e);if(!di(e))try{let u=Se.resolve(e),d=Se.resolve(ui.homedir()),f=Se.relative(d,u);if(!f.startsWith("..")&&!Se.isAbsolute(f))return f===""?"~":"~/"+Be(f)}catch{}let r=La(e).match(/^([A-Za-z]:)\\(?:[Uu][Ss][Ee][Rr][Ss])\\([^\\]+)(\\.*)?$/);if(r){let u=(r[3]??"").replace(/\\/g,"/");return u?"~"+u:"~"}let o=e.match(/^\/mnt\/[a-z]\/(?:[Uu][Ss][Ee][Rr][Ss])\/[^/]+(\/.*)?$/i);if(o){let u=o[1]??"";return u?"~"+Be(u):"~"}let i=e.match(/^\/Users\/[^/]+(\/.*)?$/);if(i){let u=i[1]??"";return u?"~"+Be(u):"~"}let s=e.match(/^\/home\/[^/]+(\/.*)?$/);if(s){let u=s[1]??"";return u?"~"+Be(u):"~"}let a=e.match(/^\/usr\/home\/[^/]+(\/.*)?$/);if(a){let u=a[1]??"";return u?"~"+Be(u):"~"}let c=e.match(/^\/export\/home\/[^/]+(\/.*)?$/);if(c){let u=c[1]??"";return u?"~"+Be(u):"~"}try{return Se.basename(Se.resolve(e))}catch{return e.split(/[/\\]/).pop()??e}}import $p from"lodash/uniqBy.js";import*as pi from"node:path";var fi=process.platform==="win32";function Rn(n){let e=pi.resolve(n);return fi?e.toLowerCase():e}import Ma from"lodash/isString.js";var mi="<path>",$a=/(['"`])((?:[A-Za-z]:[\\/]|\\\\|~?\/)[^'"`\n]*)\1/g,Ua=/(^|[\s'"`([{=,;])(?:\\\\[^\s'"`<>|?*\n]+|[A-Za-z]:[\\/][^\s'"`<>|?*\n]*|~?\/[^\s'"`<>|?*\n:]*\/[^\s'"`<>|?*\n:]*)/g;function Cn(n){return!Ma(n)||n.length===0?n:n.replace($a,(e,t)=>`${t}${mi}${t}`).replace(Ua,(e,t)=>`${t}${mi}`)}import Ba from"lodash/get.js";function ce(n){return Ba(n,["context","file_policies"])}var Jt=[{pattern:"node_modules",type:"exact"},{pattern:".git",type:"exact"},{pattern:"dist",type:"exact"},{pattern:"build",type:"exact"},{pattern:".next",type:"exact"},{pattern:".cache",type:"exact"},{pattern:".DS_Store",type:"exact"},{pattern:"Thumbs.db",type:"exact"},{pattern:"*.tmp",type:"glob"},{pattern:"*.log",type:"glob"},{pattern:".env*",type:"glob"}];function hi(n){let e=n.lastIndexOf("."),t=Math.max(n.lastIndexOf("/"),n.lastIndexOf("\\"));return e>t+1?n.slice(e).toLowerCase():""}function Gt(n,e){let t="^",r=0;for(;r<e.length;){let o=e[r];o==="*"?r+1<e.length&&e[r+1]==="*"?(t+=".*",r+=2):(t+="[^/]*",r+=1):o==="?"?(t+="[^/]",r+=1):"\\^$|.+(){}[]".includes(o)?(t+=`\\${o}`,r+=1):(t+=o,r+=1)}t+="$";try{return new RegExp(t,"i").test(n)}catch{return n.toLowerCase().includes(e.toLowerCase())}}function gi(n){let e=n.replace(/\\/g,"/").toLowerCase();return e.includes("/secrets/")||e.startsWith("secrets/")?{shouldIgnore:!0,reason:"denylist:secrets",matchedRule:"secrets/"}:e.includes("/.env")||e.startsWith(".env")?{shouldIgnore:!0,reason:"denylist:env",matchedRule:".env"}:e.includes("/id_rsa")||e.startsWith("id_rsa")?{shouldIgnore:!0,reason:"denylist:ssh",matchedRule:"id_rsa"}:e.includes("/id_ed25519")||e.startsWith("id_ed25519")?{shouldIgnore:!0,reason:"denylist:ssh",matchedRule:"id_ed25519"}:e.endsWith(".pem")?{shouldIgnore:!0,reason:"denylist:pem",matchedRule:"*.pem"}:e.endsWith(".key")?{shouldIgnore:!0,reason:"denylist:key",matchedRule:"*.key"}:e.endsWith(".p12")?{shouldIgnore:!0,reason:"denylist:p12",matchedRule:"*.p12"}:e.endsWith(".pfx")?{shouldIgnore:!0,reason:"denylist:pfx",matchedRule:"*.pfx"}:null}function Ka(n,e){let t=hi(n);if(t&&e.blocked_extensions?.includes(t))return{shouldIgnore:!0,reason:"policy:blocked_extension",matchedRule:t};if(e.allowed_extensions&&e.allowed_extensions.length>0&&t&&!e.allowed_extensions.includes(t))return{shouldIgnore:!0,reason:"policy:not_in_allowlist",matchedRule:t};for(let r of e.blocked_patterns??[])if(Gt(n,r))return{shouldIgnore:!0,reason:"policy:blocked_pattern",matchedRule:r};return null}function ja(n,e){let t=n.replace(/\\/g,"/"),r=t.split("/").filter(Boolean);for(let o of e){let i=!1;if(o.type==="exact"?i=r.some(s=>s===o.pattern):o.type==="prefix"?i=t.startsWith(o.pattern):o.type==="glob"&&(!o.pattern.includes("/")&&!o.pattern.includes("*")&&!o.pattern.includes("?")?i=r.some(s=>s.toLowerCase()===o.pattern.toLowerCase()):o.pattern.includes("/")?i=Gt(t,o.pattern):i=r.some(s=>Gt(s,o.pattern))),i)return{shouldIgnore:!0,matchedRule:o.pattern}}return null}function xn(n,e,t,r){let o=gi(n);if(o)return o;if(r&&!e){let i=Ka(n,r);if(i)return i}return ja(n,t)??{shouldIgnore:!1}}function An(n){return n.split(`
|
|
3
|
+
`).map(e=>e.trim()).filter(e=>e&&!e.startsWith("#")).map(e=>e.includes("*")||e.includes("?")?{pattern:e,type:"glob"}:e.startsWith("/")?{pattern:e.slice(1),type:"prefix"}:{pattern:e,type:"exact"})}var Va='Use relative paths like "src/file.ts" or "." for the root directory. Paths must be relative to the configured root.',qa='Use relative paths like "src/file.ts" or "." for the root directory. Do not use drive letters (C:) or UNC paths (\\\\server).',Wa='Paths cannot use URL schemes (like "http://" or "file://"). Use simple relative paths like "src/file.ts".',Ha='Paths cannot use ".." to escape the configured root directory. Use paths relative to the root, like "src/file.ts" or "subdir/file.ts".',Ga='Paths cannot contain ":" in a segment. Drive-relative paths (C:file), Windows alternate data streams (file.txt::$DATA) and extended-length prefixes are not allowed.';function vt(n,e){let t=(n??"").trim();if(!t)return".";t.includes("\0")&&e("INVALID_INPUT","Path contains null byte."),t.startsWith("/")&&e("PATH_ESCAPE","Absolute paths are not allowed. Use a path relative to the root.",Va),(/^[a-zA-Z]:[\\/]/.test(t)||t.startsWith("\\\\")||t.startsWith("//"))&&e("PATH_ESCAPE","Absolute/drive/UNC paths are not allowed. Use a path relative to the root.",qa);let r=t.replace(/\\/g,"/");/^[a-zA-Z]+:\/\//.test(r)&&e("INVALID_INPUT","URL-style paths are not allowed.",Wa);let o=[];for(let i of r.split("/"))if(!(!i||i===".")){if(i===".."){o.length===0&&e("PATH_ESCAPE","Path escapes the root.",Ha),o.pop();continue}i.includes(":")&&e("INVALID_INPUT",'Path segments cannot contain ":".',Ga),o.push(i)}return o.length===0?".":o.join("/")}function Dn(n,e){return{workspace_id:n.workspace_id,device_id:n.device_id,directory_id:n.directory_id,path:vt(n.path,e)}}var Ja=["","utf-8","utf8"],za=["utf-16le","utf16le","ucs-2","ucs2"];function Ya(n){return n&128?(n&224)===192?2:(n&240)===224?3:(n&248)===240?4:0:1}function Qa(n){let e=n.length,t=e-1,r=0;for(;t>=0&&(n[t]&192)===128&&r<3;)r+=1,t-=1;if(t<0)return e;let o=Ya(n[t]);return o===0||e-t>=o?e:t}function Xa(n){let e=n.length-n.length%2;if(e<2)return e;let t=n[e-2]|n[e-1]<<8;return t>=55296&&t<=56319?e-2:e}function In(n,e){let t=e.trim().toLowerCase();if(Ja.includes(t)){let r=Qa(n);return r===0?n.length:r}if(za.includes(t)){let r=Xa(n);return r===0?n.length:r}return n.length}function Ke(n){let e=Date.now()-n;return{execution_ms:e,execution_sec:parseFloat((e/1e3).toFixed(2))}}import Za from"lodash/isNumber.js";function On(n){let{retryAfterSec:e}=n;if(Za(e)&&Number.isFinite(e)&&e>=0)return{delayMs:Math.min(n.retryAfterMaxSec*1e3,Math.max(n.retryAfterMinSec*1e3,e*1e3)),honoredRetryAfter:!0};let r=Math.max(1,n.attempt),o=Math.min(r-1,n.maxDoublings),i=n.baseSec*Math.pow(2,o);return{delayMs:Math.min(n.ceilingSec*1e3,(i+n.jitterSec)*1e3),honoredRetryAfter:!1}}import ec from"lodash/isString.js";var tc=/^v?(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/;function _e(n){if(!ec(n))return null;let e=n.trim().match(tc);return e?{major:Number(e[1]),minor:Number(e[2]),patch:Number(e[3]),prerelease:e[4]??null}:null}function rc(n,e){if(n===e)return 0;if(n===null)return 1;if(e===null)return-1;let t=n.split("."),r=e.split("."),o=Math.max(t.length,r.length);for(let i=0;i<o;i+=1){let s=t[i],a=r[i];if(s===void 0)return-1;if(a===void 0)return 1;let c=/^\d+$/.test(s),u=/^\d+$/.test(a);if(c&&u){let d=Number(s)-Number(a);if(d!==0)return d<0?-1:1;continue}if(c!==u)return c?-1:1;if(s!==a)return s<a?-1:1}return 0}function zt(n,e){let t=_e(n),r=_e(e);if(!t)throw new Error(`not a version: ${n}`);if(!r)throw new Error(`not a version: ${e}`);for(let i of["major","minor","patch"]){let s=t[i]-r[i];if(s!==0)return s<0?-1:1}let o=rc(t.prerelease,r.prerelease);return o===0?0:o<0?-1:1}function Nn(n,e){let t=_e(n),r=_e(e);return!t||!r?!1:zt(n,e)<0}function Pn(n,e){let t=_e(n),r=_e(e);return!t||!r?!1:t.major===r.major}import Fn from"lodash/get.js";import nc from"lodash/isObject.js";import Yt from"lodash/isString.js";function K(n){if(n instanceof Error)return n.message;let e=Fn(n,"message");return Yt(e)?e:String(n)}function te(n){if(!nc(n))return;let e=Fn(n,"code");return Yt(e)?e:void 0}function le(n){return Yt(te(n))&&Yt(Fn(n,"message"))}function j(n,e={}){return{code:te(n)??e.code??"INTERNAL",message:K(n)||e.message||"An unexpected error occurred."}}import af from"lodash/every.js";import lf from"lodash/get.js";import df from"lodash/isArray.js";import ff from"lodash/isFunction.js";import hf from"lodash/isObjectLike.js";import yf from"lodash/isString.js";import Sf from"lodash/includes.js";import Ef from"lodash/isString.js";import wf from"lodash/startsWith.js";import oc from"lodash/isBoolean.js";import yi from"lodash/isFinite.js";import ic from"lodash/isInteger.js";import Si from"lodash/isPlainObject.js";import bi from"lodash/isString.js";import Ln from"lodash/isUndefined.js";import sc from"lodash/omit.js";import ac from"lodash/omitBy.js";import cc from"lodash/toNumber.js";var lc=/^[+-]?(\d+\.?\d*|\.\d+)([eE][+-]?\d+)?$/;function vi(n){return Si(n)?n:{}}var Qt=class{_found;constructor(e){this._found=e}exists(){return!Ln(this._found)}unknown(){return this._found}string(){return bi(this._found)?this._found:null}number(){if(yi(this._found))return this._found;if(!bi(this._found)||!lc.test(this._found.trim()))return null;let e=cc(this._found);return yi(e)?e:null}integer(){let e=this.number();return e!==null&&ic(e)?e:null}boolean(){return oc(this._found)?this._found:this._found==="true"?!0:this._found==="false"?!1:null}object(){return Si(this._found)?this._found:null}list(){return Array.isArray(this._found)?this._found:null}},Xt=class n{_value;constructor(e){this._value=vi(e)}set(e,t){return Ln(t)?this:new n({...this._value,[e]:t})}merge(e){return new n({...this._value,...ac(vi(e),Ln)})}drop(e){return new n(sc(this._value,e))}has(e){return e in this._value}property(e){return new Qt(this._value[e])}string(e){return this.property(e).string()}value(){return this._value}toJSON(){return this._value}};function Mn(n){return new Xt(n)}import uc from"lodash/isUndefined.js";import $f from"lodash/isNil.js";import dc from"lodash/omitBy.js";function $n(n){return dc(n,uc)}import vl from"node:crypto";var Oe=class{debug;headless;headlessReason;constructor(e,t=!1,r=""){this.debug=e,this.headless=t,this.headlessReason=r}};var xe=class{name;concurrency;constructor(e,t){this.name=e,this.concurrency=t}};var Ne=class n{status;output;error;constructor(e,t,r){this.status=e,this.output=t,this.error=r}static success(e){return new n("success",e,null)}static failure(e){return new n("failure",null,e)}static cancelled(e){return new n("cancelled",null,e)}},Zt=class{promise;resolveFn;rejectFn;constructor(){this.promise=new Promise((e,t)=>{this.resolveFn=e,this.rejectFn=t})}resolve(e){this.resolveFn(e)}reject(e){this.rejectFn(e)}};var Y=class{name;lane;priority;locks;maxAttempts;cancellable;constructor(e){this.name=e.name,this.lane=e.lane,this.priority=e.priority,this.locks=e.locks,this.maxAttempts=e.maxAttempts,this.cancellable=e.cancellable}},Q=class{options;constructor(e){this.options=e}},ye=class{type;input;constructor(e,t){this.type=e,this.input=t}},er=class{bus;logger;notifier;flags;signal;engine;get headless(){return this.flags.headless}dispatchFn;constructor(e){this.bus=e.bus,this.engine=e.engine,this.logger=e.logger,this.notifier=e.notifier,this.flags=e.flags,this.signal=e.signal,this.dispatchFn=e.dispatch}dispatch(e,t){let r=t||new St(null,null,null,null);return this.dispatchFn(e,r)}};var tr=class{ts;message;constructor(e,t){this.ts=t?.ts??Date.now(),this.message=e}},Ee=class{id;ts;groupKey;kind;scope;message;category;constructor(e,t){this.id=crypto.randomUUID(),this.ts=t?.ts??Date.now(),this.kind=t?.kind??"info",this.scope=t?.scope??"default",this.message=e,this.groupKey=t?.groupKey,this.category=t?.category??[]}},rr=class{ts;jobId;jobType;state;attempt;maxAttempts;lane;priority;error;nextRunAt;constructor(e){this.ts=e.ts,this.jobId=e.jobId,this.jobType=e.jobType,this.state=e.state,this.attempt=e.attempt,this.maxAttempts=e.maxAttempts,this.lane=e.lane,this.priority=e.priority,this.error=e.error,this.nextRunAt=e.nextRunAt}};var je=class{jobs;constructor(e){this.jobs=e}},Et=class{id;jobType;inputJson;state;lane;priority;locks;attempts;maxAttempts;nextRunAt;cancellable;parentId;dedupeKey;lastError;createdAt;updatedAt;constructor(e){this.id=e.id,this.jobType=e.jobType,this.inputJson=e.inputJson,this.state=e.state,this.lane=e.lane,this.priority=e.priority,this.locks=e.locks,this.attempts=e.attempts,this.maxAttempts=e.maxAttempts,this.nextRunAt=e.nextRunAt,this.cancellable=e.cancellable,this.parentId=e.parentId,this.dedupeKey=e.dedupeKey,this.lastError=e.lastError,this.createdAt=e.createdAt,this.updatedAt=e.updatedAt}},nr=class{state;constructor(e){this.state=e??new je({})}async load(){return new je(structuredClone(this.state.jobs))}async save(e){this.state=new je(structuredClone(e.jobs))}};var Xe=class{engine;bus;logger;notifier;flags;signal;get headless(){return this.flags.headless}constructor(e){this.engine=e.engine,this.bus=e.bus,this.logger=e.logger,this.notifier=e.notifier,this.flags=e.flags,this.signal=e.signal}on(e,t){return this.bus.on(e,t)}};var or=class{version=1;controlBaseUrl;bridgeWsUrl;directories;device;tokens;discovery;constructor(){this.directories=[]}},ir=class{_configuration;loader;get configuration(){return this._configuration}constructor(e,t){this._configuration=e,this.loader=t}apply(e){this._configuration=e}};import gl from"lodash/uniqBy.js";import yl from"lodash/isNumber.js";import qe from"node:path";import Hi from"node:os";import hr from"node:fs";import fc from"node:path";import mc from"env-paths";var hc="DeviceLink",gc=mc(hc,{suffix:""});function yc(){if(process.env.DEVICELINK_DATA_DIR)return process.env.DEVICELINK_DATA_DIR;let n=process.env.DEVICELINK_ENV,e=gc.config;return!n||n==="production"?e:fc.join(e,n)}function re(){return yc()}import Xn from"dotenv";import Ae from"lodash/get.js";import gr from"lodash/isArray.js";import Zn from"lodash/isObject.js";import Gi from"lodash/isString.js";import De from"lodash/isEmpty.js";import bl from"lodash/defaultTo.js";import bc from"lodash/isString.js";import vc from"node-machine-id";function sr(n=!0){try{let e=vc.machineIdSync(n);if(e&&bc(e)&&e.trim().length>0)return e.trim()}catch{}}import _i from"node:path";import Un from"node:fs";import Bn from"node:crypto";import Kn from"lodash/get.js";import Pe from"lodash/isEmpty.js";var ar=class{_notifier;argv;envFile;processEnv;configFileContent;getPrivateKey;_lastGeneratedPrivateKey;constructor(e){this._notifier=e.notifier,this.argv=e.argv,this.envFile=e.envFile,this.processEnv=e.processEnv,this.configFileContent=e.configFileContent,this.getPrivateKey=e.getPrivateKey}getLastGeneratedPrivateKey(){let e=this._lastGeneratedPrivateKey;return this._lastGeneratedPrivateKey=void 0,e}ensureDeviceKeys(){let e=this.getDevicePrivateKey(),t=this.getDevicePublicKey();if(e&&t)return{publicKey:t,privateKey:e};if(e&&!t)try{let a=Bn.createPrivateKey(e);return t=Bn.createPublicKey(a).export({format:"pem",type:"spki"}).toString("utf8"),this._notifier.info("Derived public key from private key",{scope:"system"}),{publicKey:t,privateKey:e}}catch{this._notifier.warn("Failed to derive public key from private key, generating new keypair",{scope:"system"})}t&&!e&&this._notifier.warn("Public key found but no private key, generating new keypair",{scope:"system"}),this._notifier.info("Generating new Ed25519 keypair...",{scope:"system"});let{publicKey:r,privateKey:o}=Bn.generateKeyPairSync("ed25519"),i=r.export({format:"pem",type:"spki"}).toString("utf8"),s=o.export({format:"pem",type:"pkcs8"}).toString("utf8");return this._lastGeneratedPrivateKey=s,this._notifier.info("Generated new Ed25519 keypair",{scope:"system"}),{publicKey:i,privateKey:s}}getDevicePrivateKey(){if(this.getPrivateKey){let r=this.getPrivateKey();if(r&&!Pe(r))return this._notifier.info("Using private key from secret storage cache",{scope:"system"}),r}if(this.argv?.privateKeyFile){let r=this.loadKeyFromFile(this.argv.privateKeyFile);if(r)return this._notifier.info(`Found private key from --private-key-file: ${this.argv.privateKeyFile}`,{scope:"system"}),r;this._notifier.warn(`Failed to load private key from file: ${this.argv.privateKeyFile}`,{scope:"system"})}let e=this.safeGetEnvValue("DLINK_DEVICE_PRIVATE_KEY");if(e&&!Pe(e))return this._notifier.info("Found private key in env file",{scope:"system"}),e;let t=this.processEnv.DLINK_DEVICE_PRIVATE_KEY;if(t&&!Pe(t))return this._notifier.info("Found private key in process env",{scope:"system"}),t}getDevicePublicKey(){if(this.argv?.publicKeyFile){let o=this.loadKeyFromFile(this.argv.publicKeyFile);if(o)return this._notifier.info(`Found public key from --public-key-file: ${this.argv.publicKeyFile}`,{scope:"system"}),o;this._notifier.warn(`Failed to load public key from file: ${this.argv.publicKeyFile}`,{scope:"system"})}let e=Kn(this.safeGetConfigValue("device"),"keys.public");if(e&&!Pe(String(e)))return this._notifier.info("Found public key in config file",{scope:"system"}),String(e);let t=this.safeGetEnvValue("DLINK_DEVICE_PUBLIC_KEY");if(t&&!Pe(t))return this._notifier.info("Found public key in env file",{scope:"system"}),t;let r=this.processEnv.DLINK_DEVICE_PUBLIC_KEY;if(r&&!Pe(r))return this._notifier.info("Found public key in process env",{scope:"system"}),r}loadKeyFromFile(e){if(!e||Pe(e))return;let t=this.getApplicationConfigFolder(),r=[e,_i.join(t,e)];for(let o of r)try{let i=_i.resolve(o);if(Un.existsSync(i))if(Un.statSync(i).isFile()){let a=Un.readFileSync(i,"utf8").trim();if(Pe(a))this._notifier.warn(`Key file is empty: ${i}`,{scope:"system"});else return this._notifier.info(`Loaded key from file: ${i}`,{scope:"system"}),a}else this._notifier.warn(`Path is not a file: ${i}`,{scope:"system"})}catch(i){let s=i instanceof Error?i.message:String(i);this._notifier.warn(`Failed to read key file ${o}: ${s}`,{scope:"system"})}this._notifier.warn(`Key file not found: ${e} (tried: ${r.join(", ")})`,{scope:"system"})}safeGetEnvValue(e){try{return Kn(this.envFile,`parsed.${e}`)}catch{return}}safeGetConfigValue(e){try{return Kn(this.configFileContent,e)}catch{return}}getApplicationConfigFolder(){return re()}};import Ei from"node:crypto";function ki(n){let e=n.trim();e=e.replace(/\\/g,"/"),e=e.replace(/(^\/\/+)|\/{2,}/g,(u,d)=>d?"//":"/"),e.length>1&&e.endsWith("/")&&(e=e.replace(/\/+$/g,"")),e===""&&(e="/"),e=e.replace(/^([a-zA-Z]):(?=\/|$)/,(u,d)=>`${String(d).toUpperCase()}:`);let t=e.startsWith("/")||e.startsWith("//")||/^[A-Z]:\//.test(e),r=e.startsWith("//")?"//":e.startsWith("/")?"/":"",o="",i=e.match(/^([A-Z]:)(\/|$)/);i?(o=i[1],e=e.slice(o.length),e.startsWith("/")&&(e=e.slice(1))):e=e.replace(/^\/+/,"");let s=e.split("/").filter(Boolean),a=[];for(let u of s)if(u!=="."){if(u===".."){a.length>0&&a[a.length-1]!==".."?a.pop():t||a.push("..");continue}a.push(u)}let c=a.join("/");return o?c=`${o}/${c}`.replace(/\/+$/g,""):t&&(c=`${r}${c}`.replace(/\/+$/g,"")),c=c.toLowerCase(),c}function kt(n,e=[3,3,3,3]){let t=ki(n),o=Ei.createHash("sha256").update(t,"utf8").digest("base64url").replace(/[^a-zA-Z0-9]/g,"").toLowerCase(),i=e.reduce((c,u)=>c+u,0),s=o.length>=i?o:o.padEnd(i,o),a=0;return e.map(c=>s.slice(a,a+=c)).join("-")}function wt(n){let e=ki(n),r=Ei.createHash("sha256").update(e,"utf8").digest("hex").slice(0,32),o=r.slice(0,8),i=r.slice(8,12),s=r.slice(12,16),a=r.slice(16,20),c=r.slice(20,32);return`${o}-${i}-${s}-${a}-${c}`}import Rt from"lodash/isNumber.js";import fl from"lodash/isPlainObject.js";import rt from"lodash/isString.js";import me from"lodash/trim.js";var rh=Math.ceil(300),wi=[4011,4013,4014,4016,4017,4018];var U={FILE_POLICIES:"file_policies",CONTEXT_V2:"context_v2",QUIESCE_V2:"quiesce.v2",TELEMETRY_RELAY_V1:"telemetry.relay.v1",ENDPOINT_DISCOVERY_V1:"endpoint.discovery.v1",RESULT_REDELIVERY_V1:"result.redelivery.v1"},Ti=[U.FILE_POLICIES,U.CONTEXT_V2,U.QUIESCE_V2,U.TELEMETRY_RELAY_V1,U.ENDPOINT_DISCOVERY_V1,U.RESULT_REDELIVERY_V1],oh=[U.FILE_POLICIES,U.CONTEXT_V2,U.QUIESCE_V2],ih=[U.FILE_POLICIES,U.CONTEXT_V2,U.QUIESCE_V2,U.TELEMETRY_RELAY_V1,U.ENDPOINT_DISCOVERY_V1,U.RESULT_REDELIVERY_V1];function Ze(n,e){return!!n&&n.includes(e)}var Sc=["Chrome","Edge","Brave","Opera"],ah=Sc.join(", ");import uh from"lodash/isBoolean.js";import ph from"lodash/isInteger.js";import mh from"lodash/isNumber.js";import gh from"lodash/isString.js";import bh from"lodash/uniq.js";var Tt=999999,Ri=["chatgpt","claude","perplexity","cursor","copilot","windsurf","cline","unknown"],ne=["global","organization"],et=["global","organization","workspace"],Ci=["global"],_c=[{key:"limits.max_workspaces",store:"policy",kind:"number",group:"limits",label:"Workspaces",description:"Refused at creation once the organization holds this many.",fallback:1,scopes:ne,keywords:["workspace","quota","cap"],min:0,max:Tt},{key:"limits.max_teams",store:"policy",kind:"number",group:"limits",label:"Teams",description:"Refused at creation once the organization holds this many. Zero disables the check rather than forbidding teams.",fallback:0,scopes:ne,keywords:["team","quota","cap"],min:0,max:Tt},{key:"limits.max_members",store:"policy",kind:"number",group:"limits",label:"Members",description:"Counts the owner, so a value of 1 leaves no room to invite anyone.",fallback:1,scopes:ne,keywords:["member","seat","invite","quota"],min:1,max:Tt},{key:"limits.max_devices",store:"policy",kind:"number",group:"limits",label:"Devices",description:"Not enforced yet: no code path reads this key, so devices are currently unlimited whatever it says.",fallback:1,scopes:ne,keywords:["device","agent","quota"],min:0,max:Tt},{key:"limits.max_api_keys",store:"policy",kind:"number",group:"limits",label:"API keys",description:"Zero refuses every key, so it must be raised alongside the API keys feature.",fallback:0,scopes:ne,keywords:["api key","token","quota"],min:0,max:Tt},{key:"rate_limit.requests_per_minute",store:"policy",kind:"number",group:"rate-limits",label:"Requests per minute",description:"Not enforced yet: no code path reads this key.",fallback:60,scopes:ne,keywords:["throttle","rpm"],min:1,max:1e6,unit:"per minute"},{key:"rate_limit.requests_per_hour",store:"policy",kind:"number",group:"rate-limits",label:"Requests per hour",description:"Not enforced yet: no code path reads this key.",fallback:1e3,scopes:ne,keywords:["throttle","rph"],min:1,max:1e7,unit:"per hour"},{key:"rate_limit.concurrent_tool_calls",store:"policy",kind:"number",group:"rate-limits",label:"Concurrent tool calls",description:"Not enforced yet: no code path reads this key.",fallback:1,scopes:ne,keywords:["throttle","parallel","tool"],min:1,max:1e3},{key:"features.api_keys",store:"policy",kind:"switch",group:"features",label:"API keys",description:"When off, key creation is refused regardless of the API key limit.",fallback:!1,scopes:ne,keywords:["api key","token"]},{key:"features.delegation",store:"policy",kind:"switch",group:"features",label:"Delegation",description:"Not enforced yet: no code path reads this key.",fallback:!1,scopes:ne,keywords:["delegate","behalf"]},{key:"features.custom_roles",store:"policy",kind:"switch",group:"features",label:"Custom roles",description:"Not enforced yet: no code path reads this key.",fallback:!1,scopes:ne,keywords:["role","rbac","template"]},{key:"audit.retention_days",store:"policy",kind:"number",group:"audit",label:"Retention",description:"Not enforced yet: nothing prunes audit entries on this schedule.",fallback:7,scopes:ne,keywords:["retention","prune","log"],min:1,max:3650,unit:"days"},{key:"audit.export_enabled",store:"policy",kind:"switch",group:"audit",label:"Export",description:"Not enforced yet: no code path reads this key.",fallback:!1,scopes:ne,keywords:["export","csv","download"]},{key:"files.blocked_extensions",store:"policy",kind:"string-list",group:"files",label:"Blocked extensions",description:"Checked by the controller before dispatch and again by the agent. Include the dot.",fallback:[],scopes:et,keywords:["file","extension","deny","block"],placeholder:".exe"},{key:"files.allowed_extensions",store:"policy",kind:"string-list",group:"files",label:"Allowed extensions",description:"When set, every other extension is refused. An empty list allows all.",fallback:[],scopes:et,keywords:["file","extension","allow","whitelist"],placeholder:".ts"},{key:"files.blocked_patterns",store:"policy",kind:"string-list",group:"files",label:"Blocked patterns",description:"Glob patterns matched against the path relative to the shared folder.",fallback:[],scopes:et,keywords:["file","glob","pattern","deny"],placeholder:"vendor/**"},{key:"files.max_file_size_bytes",store:"policy",kind:"number",group:"files",label:"Maximum file size",description:"A file larger than this is refused before it is read.",fallback:10485760,scopes:et,keywords:["file","size","bytes","limit"],min:1024,max:1073741824,unit:"bytes"},{key:"connectors.allowed",store:"policy",kind:"multi-select",group:"connectors",label:"Allowed connectors",description:'An MCP client not listed here is refused. Removing "unknown" refuses every client the detector cannot identify.',fallback:[...Ri],scopes:et,keywords:["mcp","claude","chatgpt","cursor","client"],options:Ri},{key:"billing.charge_model",store:"policy",kind:"enum",group:"billing",label:"Charge model",description:"Which organization a tool call is charged to: the one that owns the workspace, or the one the caller belongs to.",fallback:"workspace_pays",scopes:et,keywords:["billing","credits","charge","cross-org"],options:["workspace_pays","caller_pays"]},{key:"invite.allowed_domains",store:"policy",kind:"string-list",group:"invites",label:"Auto-join domains",description:"Anyone signing in with an email at one of these domains joins the organization without an invitation. Never set a public mail domain here.",fallback:[],scopes:ne,keywords:["domain","auto-join","invite","sso"],placeholder:"example.com"},{key:"session.max_per_scope",store:"system",kind:"number",group:"sessions",label:"Sessions per scope",description:"How many agent sessions one scope may hold at once. The reader clamps to 25, so a higher value has no effect.",fallback:1,scopes:Ci,keywords:["session","concurrent","agent"],min:1,max:25},{key:"analytics.feature_flags_enabled",store:"system",kind:"switch",group:"analytics",label:"Feature flags",description:"When off, the browser never requests flags and every flag reads as disabled. Served publicly and cached for 30 seconds, so a change takes up to a minute to reach every instance.",fallback:!1,scopes:Ci,keywords:["posthog","flag","experiment","analytics"]}],vh=_c.map(n=>n.key);import Ec from"lodash/get.js";import kc from"lodash/isString.js";import{z as l}from"zod";var wc=l.object({name:l.string().min(1),description:l.string().optional(),inputSchema:l.any().optional(),outputSchema:l.any().optional(),defaults:l.record(l.string(),l.unknown()).optional(),version:l.string().optional(),errorCodes:l.array(l.string()).optional()}),Tc=l.object({id:l.string().min(1),name:l.string().min(1),path:l.string().optional(),path_hint:l.string().optional(),policy:l.any().optional()});var Rc=["USE_NEW","KEEP_OLD"],xi=["SESSION_REPLACED","SERVER_DRAINING","REBALANCE","ENDPOINT_MOVED"],tt=l.object({code:l.string().min(1),message:l.string().min(1)}).passthrough(),Cc=l.object({type:l.literal("connect"),device_id:l.string().min(1),agent_version:l.string().min(1),protocol_version:l.number().int().min(1).default(2),capabilities:l.array(l.string()).default([]),platform:l.string().optional(),hostname:l.string().optional(),device_tag:l.string().optional(),ts:l.number(),nonce:l.string().min(8),sig:l.string().min(16),access_token:l.string().optional(),refresh_token:l.string().min(20).optional(),public_key_pem:l.string().optional()}).passthrough(),xc=l.object({type:l.literal("connect_ack"),ok:l.literal(!0),session_id:l.string().min(1),device_id:l.string().min(1),server_time:l.number(),auth:l.object({device_proof:l.string().min(1),access_token:l.string().min(1)}).passthrough(),next:l.array(l.string().min(1)).min(1),workspace_id:l.string().optional()}).passthrough(),Ac=l.object({type:l.literal("connect_ack"),ok:l.literal(!1),session_id:l.string().optional(),server_time:l.number(),error:tt}).passthrough(),Dc=l.union([xc,Ac]),Ic=l.object({type:l.literal("refresh_access_token"),device_id:l.string().min(1),ts:l.number(),nonce:l.string().min(8),refresh_token:l.string().min(20),sig:l.string().min(16),session_id:l.string().min(1).optional()}).strict(),Oc=l.object({type:l.literal("refresh_access_token_ack"),ok:l.literal(!0),access_token:l.string().min(1),refresh_token:l.string().min(20),expires_in_sec:l.number().int().positive().optional(),next:l.array(l.string().min(1)).default(["session_init"])}).passthrough(),Nc=l.object({type:l.literal("refresh_access_token_ack"),ok:l.literal(!1),error:tt}).passthrough(),Pc=l.union([Oc,Nc]),Fc=l.object({type:l.literal("session_init"),device_id:l.string().min(1),session_id:l.string().min(1)}).strict(),Lc=l.object({type:l.literal("session_init_ack"),ok:l.literal(!0),device_id:l.string().min(1),session_id:l.string().min(1),mode:l.string().min(1),reason:l.string().optional(),server_time:l.number(),next:l.array(l.string().min(1)).optional(),analytics_session_id:l.string().uuid().optional(),capabilities:l.array(l.string()).optional(),server_protocol_version:l.number().default(2),min_agent_version:l.string().optional(),target_agent_version:l.string().optional(),update_policy:l.string().min(1).optional(),upgrade_message:l.string().optional(),upgrade_url:l.string().optional()}).passthrough(),Mc=l.object({type:l.literal("session_init_ack"),ok:l.literal(!1),device_id:l.string().min(1),server_time:l.number(),error:tt,min_agent_version:l.string().optional(),target_agent_version:l.string().optional(),update_policy:l.string().min(1).optional(),upgrade_message:l.string().optional(),upgrade_url:l.string().optional()}).passthrough(),$c=l.union([Lc,Mc]),Uc=l.object({type:l.literal("session_conflict"),device_id:l.string().min(1),new_session_id:l.string().min(1),max_sessions:l.number().int().positive(),active_count:l.number().int().nonnegative(),deadline_ms:l.number().int().positive(),message:l.string().min(1),choices:l.array(l.object({id:l.string().min(1),default:l.boolean().optional(),prompt:l.string().optional()}).passthrough()).min(1)}).passthrough(),Bc=l.object({type:l.literal("session_conflict_resolve"),device_id:l.string().min(1),new_session_id:l.string().min(1),choice:l.enum(Rc)}).strict(),Kc=l.object({type:l.literal("session_conflict_resolve_ack"),ok:l.literal(!0),device_id:l.string().min(1),choice:l.string().min(1),next:l.array(l.string().min(1)).optional()}).passthrough(),jc=l.object({type:l.literal("session_conflict_resolve_ack"),ok:l.literal(!1),device_id:l.string().min(1),error:tt}).passthrough(),Vc=l.union([Kc,jc]),qc=l.object({after_ms:l.number().optional(),url:l.string().optional(),discover:l.boolean().optional()}).passthrough(),Wc=l.object({type:l.literal("quiesce"),session_id:l.string().min(1),reason:l.string().min(1),deadline_ms:l.number().int().positive(),reconnect:qc.optional()}).passthrough(),Hc=l.object({type:l.literal("quiesce_ack"),session_id:l.string().min(1),status:l.enum(["IDLE","BUSY"])}).strict(),jn=1,Vn=20;var Gc=l.object({kind:l.string().min(1),severity:l.string().min(1).optional(),at:l.number().optional(),props:l.record(l.string(),l.unknown()).optional()}).strict(),Jc=l.object({type:l.literal("agent_event"),schema_version:l.number().int().optional(),events:l.array(Gc)}).strict(),zc=l.object({type:l.literal("tools_publish"),device_id:l.string().min(1),workspace_id:l.string().optional(),tools:l.array(wc).default([]),tools_version:l.string().optional()}).strict(),Yc=l.object({type:l.literal("tools_publish_ack"),ok:l.boolean(),device_id:l.string().min(1),tools_version:l.string().optional(),error:tt.optional()}).passthrough(),Qc=l.object({type:l.literal("directories_publish"),device_id:l.string().min(1),workspace_id:l.string().optional(),directories:l.array(Tc).default([])}).strict(),Xc=l.object({type:l.literal("directories_publish_ack"),ok:l.boolean(),device_id:l.string().min(1),error:tt.optional()}).passthrough(),Zc=l.object({blocked_extensions:l.array(l.string()).default([]),allowed_extensions:l.array(l.string()).default([]),blocked_patterns:l.array(l.string()).default([]),max_file_size_bytes:l.number().default(10485760)}).passthrough(),qn=l.object({workspace_id:l.string(),organization_id:l.string(),workspace_name:l.string().optional(),user_id:l.string(),user_email:l.string().optional(),connector:l.string().optional(),connector_policies:l.object({max_response_chars:l.number(),timeout_ms:l.number()}).passthrough().optional(),file_policies:Zc.optional()}).passthrough(),cr=l.object({type:l.literal("tool_call"),job_id:l.string().min(1),device_id:l.string().min(1).optional(),workspace_id:l.string().optional(),tool:l.string().min(1),args:l.record(l.string(),l.unknown()).default({}),context:qn.optional()}).passthrough(),el=l.object({type:l.enum(["error","warning","info"]),description:l.string().min(1)}),lr=l.object({type:l.literal("tool_result"),job_id:l.string().min(1),tool:l.string().min(1),ok:l.boolean(),result:l.unknown().optional(),error:l.unknown().optional(),messages:l.array(el).optional(),timing:l.object({execution_ms:l.number(),execution_sec:l.number()}).optional()}).strict().superRefine((n,e)=>{n.ok&&n.result===void 0&&e.addIssue({code:l.ZodIssueCode.custom,message:"tool_result ok=true should include result",path:["result"]}),!n.ok&&n.error===void 0&&e.addIssue({code:l.ZodIssueCode.custom,message:"tool_result ok=false should include error",path:["error"]})}),Ai=l.object({type:l.literal("disconnect_notice"),code:l.number().int(),reason:l.string(),at:l.number()}).passthrough(),Di=l.object({type:l.literal("promoted_active"),workspaceId:l.string().min(1)}).passthrough(),Ii=l.object({type:l.literal("demoted_standby"),workspaceId:l.string().min(1)}).passthrough(),wh=l.union([Cc,Ic,Fc,Bc,zc,Qc,cr,lr,Hc,Jc,Ai,Di,Ii]),Oi=l.union([Dc,Pc,$c,Uc,Vc,Yc,Xc,cr,Wc,Ai,Di,Ii]),tl=["connect_ack","refresh_access_token_ack","session_init_ack","session_conflict","session_conflict_resolve_ack","tools_publish_ack","directories_publish_ack","tool_call","quiesce","disconnect_notice","promoted_active","demoted_standby"];function ur(n){let e=Ec(n,"type");return kc(e)?e:void 0}function Ni(n){return n===void 0?!1:tl.includes(n)}import{z as y}from"zod";import rl from"lodash/isNumber.js";import{z as oe}from"zod";var nl=oe.object({url:oe.string().optional()}).passthrough(),ol=oe.object({urls:oe.array(oe.string()).optional()}).passthrough(),il=oe.object({url:oe.string().optional()}).passthrough(),dr=oe.object({schema:oe.number().int().optional(),issued_at:oe.number().int().optional(),control:nl.optional(),bridge:ol.optional(),mcp:il.optional(),ttl_seconds:oe.number().optional(),capabilities:oe.array(oe.string()).optional(),notice:oe.string().nullable().optional()}).passthrough(),Li="/.well-known/devicelink-endpoints",Pi=300,Fi=86400;function Mi(n){if(!rl(n)||!Number.isFinite(n))return 3600;let t=Math.floor(n);return t<Pi?Pi:t>Fi?Fi:t}import Dh from"lodash/uniq.js";import Oh from"lodash/isObject.js";import Ph from"lodash/isString.js";var pr=["agent","browser"];var sl=y.object({device_id:y.string().optional(),device_name:y.string().optional(),kind:y.enum(pr).default("agent"),platform:y.string().optional(),agent_version:y.string().optional(),public_key_pem:y.string().min(1)}),Uh=y.object({device_code:y.string(),user_code:y.string(),verification_uri:y.string(),verification_uri_complete:y.string(),expires_in:y.number(),interval:y.number(),challenge_id:y.string(),challenge:y.string()}),Bh=sl.extend({enrollment_jws:y.string().min(1)}),Kh=y.union([y.object({status:y.literal("pending"),needs_proof:y.boolean()}),y.object({status:y.literal("approved"),needs_proof:y.boolean()}),y.object({error:y.literal("access_denied")}),y.object({error:y.literal("expired_token")})]),jh=y.object({device_code:y.string(),challenge_id:y.string(),challenge:y.string(),signature_b64:y.string()}),Vh=y.object({ok:y.literal(!0)}),qh=y.object({device_code:y.string(),install_id:y.string().min(8).max(64).optional()}),Wh=y.object({access_token:y.string(),refresh_token:y.string(),token_type:y.literal("Bearer"),expires_in:y.number(),device_id:y.string(),endpoints:dr.optional()}),Hh=y.object({device_id:y.string().min(1),refresh_token:y.string().min(1),ts:y.number().int(),nonce:y.string().min(8),sig:y.string().min(16)}),al=y.object({ok:y.literal(!0),access_token:y.string().min(10),refresh_token:y.string().min(10),expires_in_sec:y.number().int().positive(),device_id:y.string().min(1)}),cl=y.object({ok:y.literal(!1),error:y.object({code:y.string(),message:y.string(),drift_ms:y.number().optional()})}),Gh=y.union([al,cl]),Jh=y.object({device_id:y.string().min(1),refresh_token:y.string().min(1),ts:y.number().int(),nonce:y.string().min(8),sig:y.string().min(16)}),zh=y.union([y.object({ok:y.literal(!0),device_id:y.string().min(1),state:y.string()}),y.object({ok:y.literal(!1),error:y.object({code:y.string(),message:y.string(),drift_ms:y.number().optional()})})]);import rg from"lodash/isNil.js";import og from"lodash/isString.js";import{z as R}from"zod";import Xh from"lodash/isString.js";var fr=1;var ll=R.object({code:R.string().min(1),message:R.string(),hint:R.string().optional()}),ul=R.object({execution_ms:R.number().optional(),execution_sec:R.number().optional()}),cg=R.object({v:R.literal(fr),dispatch_id:R.string().min(1),request_id:R.string().min(1),device_id:R.string().min(1),workspace_id:R.string().min(1),user_id:R.string().min(1),tool:R.string().min(1),args:R.record(R.string(),R.unknown()).default({}),context:qn.optional()}).passthrough(),lg=R.object({v:R.literal(fr),dispatch_id:R.string().min(1),request_id:R.string().min(1),device_id:R.string().min(1),workspace_id:R.string().min(1),instance_id:R.string().optional(),ok:R.boolean(),result:R.unknown().optional(),error:ll.optional(),timing:ul.optional()}).passthrough().superRefine((n,e)=>{n.ok===!1&&!n.error&&e.addIssue({code:R.ZodIssueCode.custom,path:["error"],message:"A failed dispatch reply must name an error"})});var ug=R.object({v:R.literal(fr),session_id:R.string().min(1),user_id:R.string().min(1),workspace_id:R.string().min(1),reason:R.string().min(1),deadline_ms:R.number().int().positive(),replaced_by_session_id:R.string().min(1).optional(),requested_by_instance:R.string().min(1).optional()}).passthrough();import{z as Wn}from"zod";var mg=Wn.object({enabledKinds:Wn.array(Wn.enum(pr))});import dl from"lodash/includes.js";var pl=["stat","digest"];function Fe(n){return dl(pl,n)}function $i(n){return{ok:!0,data:n}}function Ve(n){return{ok:!1,error:n}}var Hn={PENDING:"PENDING",APPLIED:"APPLIED",FAILED:"FAILED",VOID:"VOID"};var Fg=[Hn.APPLIED,Hn.FAILED,Hn.VOID];var Gn=[{name:"dl_ping",version:"1.0",description:"Liveness probe. Answers with the agent version, platform and a timestamp without reading any file. Needs no shared folder.",inputSchema:{type:"object",properties:{echo:{type:"string",maxLength:64}},required:[]},errorCodes:["INTERNAL"]},{name:"fs_list",version:"1.0",description:"List files and folders at a relative path inside a shared folder.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},limit:{type:"integer",minimum:1,maximum:1e3,default:200},offset:{type:"integer",minimum:0,default:0},include_hidden:{type:"boolean",default:!1},only:{type:"string",enum:["all","files","dirs"],default:"all"},sort:{type:"string",enum:["name","mtime","size"],default:"name"},order:{type:"string",enum:["asc","desc"],default:"asc"},detail:{type:"string",enum:["basic","stat","digest"],default:"stat"}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_DIRECTORY","INVALID_INPUT","INTERNAL","UNKNOWN_DIRECTORY"]},{name:"fs_read",version:"1.0",description:"Read the contents of a SINGLE text file inside a shared folder. For reading many files at once, prefer fs_read_many instead of multiple fs_read calls.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",minLength:1},offset:{type:"integer",minimum:0,default:0},limit:{type:"integer",minimum:1,maximum:2e5,default:4e4},encoding:{type:"string",default:"utf-8"}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_FILE","PERMISSION_DENIED","INVALID_INPUT","INTERNAL","UNKNOWN_DIRECTORY"]},{name:"fs_info",version:"1.0",description:"Get metadata about a file or directory (type, size, timestamps, symlink).",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",minLength:1}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","PERMISSION_DENIED","INVALID_INPUT","INTERNAL","UNKNOWN_DIRECTORY"]},{name:"fs_tree",version:"1.0",description:"Return a directory tree from a relative path up to max_depth.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},max_depth:{type:"integer",minimum:1,maximum:20,default:3},max_entries:{type:"integer",minimum:1,maximum:2e4,default:5e3},include_hidden:{type:"boolean",default:!1},only:{type:"string",enum:["all","files","dirs"],default:"all"},detail:{type:"string",enum:["basic","stat","digest"],default:"stat"},include_display:{type:"boolean",default:!1},max_display_rows:{type:"integer",minimum:1,maximum:2e4,default:2e3}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_DIRECTORY","INVALID_INPUT","INTERNAL","UNKNOWN_DIRECTORY"]},{name:"fs_search",version:"1.0",description:"Search for files/folders by name inside a root, optionally recursively.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},query:{type:"string",minLength:1},mode:{type:"string",enum:["substring","glob"],default:"substring"},recursive:{type:"boolean",default:!0},include_hidden:{type:"boolean",default:!1},only:{type:"string",enum:["all","files","dirs"],default:"all"},max_results:{type:"integer",minimum:1,maximum:2e4,default:200}},required:["query"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","INVALID_INPUT","INTERNAL","UNKNOWN_DIRECTORY"]},{name:"fs_grep",version:"1.0",description:"Search for text content inside files (like grep/ripgrep).",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},query:{type:"string",minLength:1},mode:{type:"string",enum:["substring","regex"],default:"substring"},file_glob:{type:"string"},max_files:{type:"integer",minimum:1,maximum:1e4,default:2e3},max_matches:{type:"integer",minimum:1,maximum:1e3,default:200},context_lines:{type:"integer",minimum:0,maximum:10,default:2},case_sensitive:{type:"boolean",default:!1}},required:["query"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_DIRECTORY","INVALID_INPUT","INTERNAL"]},{name:"fs_read_many",version:"1.0",description:"Read multiple files in a single call (batch read). Prefer this over multiple fs_read calls when you need to read several files\u2014fewer round-trips and better performance (up to 50 items per call).",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},items:{type:"array",minItems:1,maxItems:50,items:{type:"object",properties:{path:{type:"string",minLength:1},offset:{type:"integer",minimum:0,default:0},limit:{type:"integer",minimum:1,maximum:2e5},encoding:{type:"string"}},required:["path"]}},default_limit:{type:"integer",minimum:1,maximum:2e5,default:12e3},default_encoding:{type:"string",default:"utf-8"}},required:["items"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_FILE","INVALID_INPUT","INTERNAL"]}];function Ui(){return Gn.map(n=>({name:n.name,version:n.version,description:n.description,inputSchema:n.inputSchema,errorCodes:[...n.errorCodes]}))}var ml=2e3,Jn=2;function Bi(n=process.env){let e=me(n.DEVICELINK_ENV??"");return e!=="production"&&e!=="staging"}function mr(n,e=process.env){if(!rt(n))return!1;let t=me(n);return t===""?!1:/^wss:\/\/.+/.test(t)?!0:Bi(e)&&/^ws:\/\/.+/.test(t)}function Ki(n){if(!rt(n))return!1;let e=me(n);return/^https:\/\/.+/.test(e)?!0:Bi()&&/^http:\/\/.+/.test(e)}function zn(n){let e=dr.safeParse(n);return e.success?e.data:null}function Yn(n,e,t=fe(),r=process.env){if(!n)return null;let o=(n.bridge?.urls??[]).filter(c=>mr(c,r)).map(c=>me(c)),i=Ki(n.control?.url)?me(String(n.control?.url)):void 0,s=Mi(n.ttl_seconds),a={expiresAt:t+s,source:e};return Rt(n.schema)&&(a.schema=n.schema),Rt(n.issued_at)&&(a.issuedAt=n.issued_at),o.length>0&&(a.bridgeUrls=o),i&&(a.controlUrl=i),n.capabilities&&n.capabilities.length>0&&(a.capabilities=n.capabilities.filter(rt)),rt(n.notice)&&me(n.notice)!==""&&(a.notice=me(n.notice)),!a.bridgeUrls&&!a.controlUrl&&!a.notice?null:a}function ji(n){if(!fl(n))return null;let e=n,t=e.expiresAt;if(!Rt(t)||!Number.isFinite(t))return null;let r={expiresAt:t};Rt(e.schema)&&(r.schema=e.schema),Rt(e.issuedAt)&&(r.issuedAt=e.issuedAt);let o=e.bridgeUrls;if(Array.isArray(o)){let a=o.filter(c=>mr(c)).map(c=>me(String(c)));a.length>0&&(r.bridgeUrls=a)}Ki(e.controlUrl)&&(r.controlUrl=me(String(e.controlUrl)));let i=e.capabilities;Array.isArray(i)&&(r.capabilities=i.filter(rt)),rt(e.notice)&&me(e.notice)!==""&&(r.notice=me(e.notice));let s=e.source;return(s==="well_known"||s==="token")&&(r.source=s),!r.bridgeUrls&&!r.controlUrl&&!r.notice?null:r}function Qn(n,e=fe()){return!!n&&n.expiresAt>e}function Vi(n,e){if(!n)return e??null;if(!e)return n;let t=n.issuedAt??-1;return(e.issuedAt??-1)>t?e:n}function qi(n,e=fe()){if(Qn(n,e))return n?.bridgeUrls?.[0]}function hl(n){return`${n.replace(/\/+$/,"")}${Li}`}async function Wi(n,e=ml){if(!n||me(n)==="")return null;let t=new AbortController,r=setTimeout(()=>t.abort(),e);r.unref?.();try{let o=await fetch(hl(n),{method:"GET",headers:{accept:"application/json"},signal:t.signal});return o.ok?zn(await o.json()):null}catch{return null}finally{clearTimeout(r)}}var nt={version:1,controlBaseUrl:"",bridgeWsUrl:"",directories:[],device:void 0},yr=class{_notifier;argv;config=nt;envFile=Xn.config({quiet:!0});processEnv={};productionEnv={};configFileContent={};_privateKeyCache=void 0;_privateKeyToStore=void 0;_discovery=null;_bridgeEndpointSource=void 0;constructor(e){this._notifier=e,this.loadProductionEnv()}loadProductionEnv(){let e=[qe.resolve(qe.dirname(process.argv[1]??"."),".env.production"),qe.resolve(process.cwd(),".env.production")];for(let t of e)try{if(hr.existsSync(t)){this.productionEnv=Xn.parse(hr.readFileSync(t));return}}catch{}}setPrivateKeyCache(e){this._privateKeyCache=e}getPrivateKeyToStore(){return this._privateKeyToStore}withDiscoveryCache(e){return this._discovery=e??ji(this.safeGetConfigValue("discovery")),this}getDiscoveryCache(){return this._discovery}getBridgeEndpointSource(){return this._bridgeEndpointSource}getBundledBridgeWsUrl(){return this.firstSet(this.productionEnv.DLINK_BRIDGE_URL)}withDefaultConfig(){return this.config.version=nt.version,this.config.controlBaseUrl=nt.controlBaseUrl,this.config.bridgeWsUrl=nt.bridgeWsUrl,this.config.directories=nt.directories,this.config.device=nt.device,this}withProcessEnv(){return this.processEnv={NODE_ENV:process.env.NODE_ENV,APPDATA:process.env.APPDATA,npm_package_version:process.env.npm_package_version,DLINK_DEVICE_ID:process.env.DLINK_DEVICE_ID,DLINK_DEVICE_NAME:process.env.DLINK_DEVICE_NAME,DLINK_DEVICE_TAG:process.env.DLINK_DEVICE_TAG,DLINK_CONTROL_URL:process.env.DLINK_CONTROL_URL,DLINK_BRIDGE_URL:process.env.DLINK_BRIDGE_URL,DLINK_DIRECTORIES:process.env.DLINK_DIRECTORIES},this}withArgv(e){return this.argv=e,this}withEnviromentFile(e){return this.envFile=Xn.config({path:e,quiet:!0}),this}withConfigFile(e){try{let t=this.getApplicationConfigFolder(),r=qe.join(t,e);if(hr.existsSync(r)){let o=hr.readFileSync(r,"utf8"),i=JSON.parse(o);Zn(i)&&!gr(i)?this.configFileContent=i:this._notifier.warn(`Config file ${e} does not contain a valid object`,{scope:"system"})}}catch(t){let r=t instanceof Error?t.message:String(t);this._notifier.warn(`Failed to load config file ${e}: ${r}`,{scope:"system"})}return this}build(){return this.config.controlBaseUrl=this.getControlBaseUrl(),this.config.bridgeWsUrl=this.getBridgeWsUrl(),this.config.discovery=this._discovery??void 0,this.config.directories=this.getDirectories(),this.config.device=this.getDevice(),this.config.tokens=this.getTokens(),this.config}getConfigValue(e,t){let r=this.safeGetConfigValue(e);return r===void 0?t?.defaultValue:r}firstSet(...e){return e.find(t=>t!=null&&String(t).trim()!=="")}getControlBaseUrl(){return this.firstSet(this.argv?.controlUrl,this.safeGetEnvValue("DLINK_CONTROL_URL"),this.safeGetConfigValue("controlBaseUrl"),this.processEnv.DLINK_CONTROL_URL,this.productionEnv.DLINK_CONTROL_URL)}resolveBridgeWsUrl(e=this._discovery){let t=[["argv",this.argv?.bridgeWsUrl],["env-file",this.safeGetEnvValue("DLINK_BRIDGE_URL")],["process-env",this.processEnv.DLINK_BRIDGE_URL],["discovered",qi(e)],["config-file",this.safeGetConfigValue("bridgeWsUrl")],["bundled",this.productionEnv.DLINK_BRIDGE_URL]];for(let[r,o]of t){let i=this.firstSet(o);if(i)return{url:i,source:r}}return{url:void 0,source:void 0}}getBridgeWsUrl(){let{url:e,source:t}=this.resolveBridgeWsUrl(this._discovery);return this._bridgeEndpointSource=t,e}getDirectories(){let e=[];if(e.push(this.createDirectoryFromPath(process.cwd())),this.argv?.rootPath)try{e.push(...this.parseDirectoriesFromString(this.argv.rootPath))}catch{e.push(this.createDirectoryFromPath(this.argv.rootPath))}let t=this.safeGetEnvValue("DLINK_DIRECTORIES")??this.safeGetEnvValue("DLINK_ROOTS");if(t)try{e.push(...this.parseDirectoriesFromString(t))}catch{}let r=this.safeGetConfigValue("directories")??this.safeGetConfigValue("roots");if(r)try{e.push(...this.parseDirectoriesFromValue(r))}catch{}let o=this.processEnv.DLINK_DIRECTORIES??this.processEnv.DLINK_ROOTS;if(o)try{e.push(...this.parseDirectoriesFromString(o))}catch{}return this.deduplicateDirectories(e)}deduplicateDirectories(e){return gl(e,t=>Rn(t.path))}getDevice(){let e=this.getDeviceId();if(!e){this._notifier.warn("No device ID found from any source (argv, env, config, process env, or machine ID)",{scope:"system"});return}let t=this.getDeviceName();t||(t=Hi.hostname()||"Unknown Device");let r=this.getDeviceTag(),o=new ar({notifier:this._notifier,argv:this.argv,envFile:this.envFile,processEnv:this.processEnv,configFileContent:this.configFileContent,getPrivateKey:()=>this._privateKeyCache}),{publicKey:i}=o.ensureDeviceKeys();this._privateKeyToStore=o.getLastGeneratedPrivateKey();let s={id:e,name:t,tag:r||"",keys:{public:i}};return this._notifier.info(`Created device: id=${s.id?.substring(0,8)}..., name=${s.name}, tag=${s.tag||"(empty)"}`,{scope:"system"}),s}getDeviceId(){this._notifier.info("Checking env file for DLINK_DEVICE_ID...",{scope:"system"});let e=this.safeGetEnvValue("DLINK_DEVICE_ID");if(e&&!De(e))return this._notifier.info(`Found device ID in env file: ${e.substring(0,8)}...`,{scope:"system"}),e;this._notifier.info("Checking config file for deviceId...",{scope:"system"});let t=this.safeGetConfigValue("deviceId")??Ae(this.safeGetConfigValue("device"),"id");if(t&&!De(String(t)))return this._notifier.info(`Found device ID in config file: ${String(t).substring(0,8)}...`,{scope:"system"}),String(t);this._notifier.info("Checking process env for DLINK_DEVICE_ID...",{scope:"system"});let r=this.processEnv.DLINK_DEVICE_ID;if(r&&!De(r))return this._notifier.info(`Found device ID in process env: ${r.substring(0,8)}...`,{scope:"system"}),r;this._notifier.info("Trying machine ID as fallback...",{scope:"system"});let o=sr(!0);if(o)return this._notifier.info(`Using machine ID: ${o.substring(0,8)}...`,{scope:"system"}),o;this._notifier.error("Failed to get machine ID in getDeviceId()",{scope:"system"}),this._notifier.warn("No device ID found in any source",{scope:"system"})}getDeviceName(){let e=this.safeGetEnvValue("DLINK_DEVICE_NAME");if(e&&!De(e))return e;let t=Ae(this.safeGetConfigValue("device"),"name");if(t&&!De(String(t)))return String(t);let r=this.processEnv.DLINK_DEVICE_NAME;if(r&&!De(r))return r;let o=Hi.hostname();if(o&&!De(o))return o}getDeviceTag(){let e=this.safeGetEnvValue("DLINK_DEVICE_TAG");if(e)return e;let t=Ae(this.safeGetConfigValue("device"),"tag");if(t)return String(t);let r=this.processEnv.DLINK_DEVICE_TAG;if(r)return r}getTokens(){let e=this.safeGetConfigValue("tokens");if(!e||!Zn(e)||gr(e))return;let t=e,r={},o=Ae(t,"accessTokenExpSec");if(yl(o)&&(r.accessTokenExpSec=o),r.accessTokenExpSec!==void 0)return r}safeGetEnvValue(e){try{return Ae(this.envFile,`parsed.${e}`)}catch{return}}safeGetConfigValue(e){try{return Ae(this.configFileContent,e)}catch{return}}parseDirectoriesFromString(e){try{let t=JSON.parse(e);return this.parseDirectoriesFromValue(t)}catch{return[this.createDirectoryFromPath(e)]}}parseDirectoriesFromValue(e){if(gr(e))return e.map(r=>this.parseDirectoryFromValue(r)).filter(r=>r!==null);if(Gi(e))return[this.createDirectoryFromPath(e)];let t=this.parseDirectoryFromValue(e);return t?[t]:[]}parseDirectoryFromValue(e){if(Gi(e))return this.createDirectoryFromPath(e);if(Zn(e)&&!gr(e)){let t=e,r=wt(Ae(t,"path")),o=Ae(t,"path"),i=bl(Ae(t,"name"),o?qe.basename(o):"");if(!De(r)&&!De(o)){let s=kt(o);return{id:String(r),name:String(i),path:String(o),tag:s}}}return null}createDirectoryFromPath(e){let t=qe.resolve(e),r=wt(t),o=qe.basename(t),i=kt(t);return{id:r,name:o,path:t,tag:i}}getApplicationConfigFolder(){return re()}};var St=class{dedupeKey;parentId;overridePriority;overrideLane;constructor(e,t,r,o){this.dedupeKey=e,this.parentId=t,this.overridePriority=r,this.overrideLane=o}},eo=class{phase;flags;constructor(e){this.phase="idle",this.flags=e??new Oe(!1)}},br=class{argv;configurationContext;bus;notifier;logger;storage;secrets;secretsReport;runtime;lanes;laneActive;registry;orchestrators;orchestratorSubscriptions=new Map;orchestratorAbort;jobs;queue;locksHeldBy;completions;dedupeIndex;engineAbort;jobAbort;stopping;running;wakeFn;wakePromise;constructor(e){this.argv=e.argv,this.bus=e.bus,this.logger=e.logger,this.notifier=e.notifier,this.storage=e.storage,this.secrets=e.secrets,this.secretsReport=e.secretsReport,this.runtime=new eo(e.flags),this.lanes=new Map;for(let o of e.lanes)this.lanes.set(o.name,o);this.laneActive=new Map;for(let o of e.lanes)this.laneActive.set(o.name,0);this.registry=new Map,this.orchestrators=[],this.orchestratorAbort=new AbortController,this.jobs=new Map,this.queue=[],this.locksHeldBy=new Map,this.completions=new Map,this.dedupeIndex=new Map,this.engineAbort=new AbortController,this.jobAbort=new Map,this.stopping=!1,this.running=!1,this.wakeFn=null,this.wakePromise=this.resetWake();let t=new or,r=new yr(this.notifier);this.configurationContext=new ir(t,r)}applyConfiguration(e){this.configurationContext.apply(e)}setPhase(e){this.runtime.phase=e}getBus(){return this.bus}hasRunningJobs(){for(let[,e]of this.laneActive)if(e>0)return!0;return!1}register(e){let t=e.options.name;if(this.registry.has(t))throw new Error(`JobType already registered: ${t}`);this.registry.set(t,e)}registerOrchestrator(e){if(this.orchestrators.some(o=>o.name===e.name))throw new Error(`Orchestrator already registered: ${e.name}`);let r=new Xe({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:this.orchestratorAbort.signal});e.onRegister?.(r),this.setupOrchestratorSubscriptions(e,r),this.orchestrators.push(e)}setupOrchestratorSubscriptions(e,t){let r=e.handlers?.();if(r){let o=[];Object.keys(r).forEach(i=>{let s=r[i];s&&o.push(this.bus.on(i,a=>{Promise.resolve(s(a,t)).catch(c=>{let u=c instanceof Error?c.message:String(c);this.logger.error(`handler error (${e.name}/${String(i)}): ${u}`),this.notifier.error(`handler error (${e.name}/${String(i)}): ${u}`,{scope:"system"})})}))}),this.orchestratorSubscriptions.set(e.name,o)}}async init(){let e=await this.storage.load();for(let[t,r]of Object.entries(e.jobs))this.jobs.set(t,new Et(r));for(let t of this.jobs.values())t.state==="running"&&(t.state="queued",t.nextRunAt=Date.now(),t.updatedAt=Date.now()),t.dedupeKey&&this.dedupeIndex.set(t.dedupeKey,t.id),t.state==="queued"&&this.queue.push(t.id)}async start(){if(!this.running){this.running=!0,this.runtime.phase="running",process.on("uncaughtException",e=>{this.notifier.error(`uncaughtException: ${e.stack?e.stack:String(e)}`,{scope:"system"}),this.bus.emit("engine:crashed",{reason:"uncaughtException",detail:e instanceof Error?`${e.name}: ${e.message}`:String(e)}),this.requestStop("uncaughtException")}),process.on("unhandledRejection",e=>{this.notifier.error(`unhandledRejection: ${String(e)}`,{scope:"system"}),this.bus.emit("engine:crashed",{reason:"unhandledRejection",detail:String(e)})}),this.bus.emit("engine:started",Date.now());try{await this.startOrchestratorsSafe(),await this.loopGuarded()}finally{await this.stopOrchestratorsSafe(),await this.persist(),this.bus.emit("engine:stopped",Date.now())}}}requestStop(e){if(!this.stopping){this.stopping=!0,this.runtime.phase="stopping",this.bus.emit("engine:stopping",e),this.engineAbort.abort(new Error(`Stopping: ${e}`)),this.orchestratorAbort.abort(new Error(`Stopping: ${e}`));for(let[t,r]of this.jobAbort.entries())this.jobs.get(t)?.cancellable&&r.abort(new Error("Cancelled by user"));this.wake()}}async dispatch(e,t){let r=t||new St(null,null,null,null),o=e.type.options.name;if(!this.registry.has(o)){let f=new Error(`JobType not registered: ${o}`);return Ne.failure(f)}if(r.dedupeKey){let f=this.dedupeIndex.get(r.dedupeKey);if(f){let p=this.jobs.get(f);if(p&&(p.state==="queued"||p.state==="running")){let h=this.completions.get(f);if(h)return await h.promise}}}let i=this.newId(),s=new Zt;this.completions.set(i,s);let a=r.overrideLane?r.overrideLane:e.type.options.lane,c=r.overridePriority!==null?r.overridePriority:e.type.options.priority,u=new Et({id:i,jobType:o,inputJson:e.input===void 0?"null":JSON.stringify(e.input),state:"queued",lane:a,priority:c,locks:e.type.options.locks,attempts:0,maxAttempts:e.type.options.maxAttempts,nextRunAt:Date.now(),cancellable:e.type.options.cancellable,parentId:r.parentId,dedupeKey:r.dedupeKey,lastError:null,createdAt:Date.now(),updatedAt:Date.now()});return this.jobs.set(i,u),this.queue.push(i),r.dedupeKey&&this.dedupeIndex.set(r.dedupeKey,i),this.emitJobEvent(u,"queued",null,null),await this.persist(),this.wake(),await s.promise}async loopGuarded(){for(;!this.stopping;)try{await this.loopOnce()}catch(e){this.notifier.error(`Engine loop error: ${String(e)}`,{scope:"system"}),await ee(250)}}async loopOnce(){let e=0;for(;;){let t=this.pickNextRunnable();if(!t)break;e+=1,this.runJobSafe(t)}e===0&&(await this.wakePromise,this.wakePromise=this.resetWake())}async runJobSafe(e){try{await this.runJobInternal(e)}catch(t){this.notifier.error(`runJobInternal crashed: ${String(t)}`,{scope:"system"});let r=this.completions.get(e);r&&r.resolve(Ne.failure(new Error(String(t))))}finally{this.wake()}}pickNextRunnable(){let e=Date.now(),t=null,r=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;for(let s of this.queue){let a=this.jobs.get(s);a&&a.state==="queued"&&(this.stopping&&a.lane!=="console"||a.nextRunAt>e||this.canRunInLane(a.lane)&&this.canAcquireLocks(a)&&(a.priority>r||a.priority===r&&a.nextRunAt<o)&&(r=a.priority,o=a.nextRunAt,t=s))}if(!t)return null;let i=this.queue.indexOf(t);return i>=0&&this.queue.splice(i,1),t}canRunInLane(e){let t=this.lanes.get(e);if(!t)return!1;let r=this.laneActive.get(e);return r===void 0?!1:r<t.concurrency}canAcquireLocks(e){for(let t of e.locks){let r=this.locksHeldBy.get(t);if(r&&r!==e.id&&!(e.parentId&&r===e.parentId))return!1}return!0}acquireLocks(e){for(let t of e.locks)this.locksHeldBy.get(t)||this.locksHeldBy.set(t,e.id)}releaseLocks(e){for(let t of e.locks)this.locksHeldBy.get(t)===e.id&&this.locksHeldBy.delete(t)}async runJobInternal(e){let t=this.jobs.get(e);if(!t)return;let r=this.registry.get(t.jobType);if(!r){this.completeFailure(e,new Error(`No registered JobType: ${t.jobType}`));return}let o=this.laneActive.get(t.lane);if(o===void 0){this.completeFailure(e,new Error(`Unknown lane: ${t.lane}`));return}let i=new AbortController;if(this.jobAbort.set(e,i),t.cancellable){let a=this.engineAbort.signal;a.aborted?i.abort(a.reason instanceof Error?a.reason:new Error("Stopped")):a.addEventListener("abort",()=>i.abort(a.reason instanceof Error?a.reason:new Error("Stopped")),{once:!0})}this.laneActive.set(t.lane,o+1),this.acquireLocks(t),t.state="running",t.updatedAt=Date.now(),await this.persist(),this.emitJobEvent(t,"running",null,null);let s=new er({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:i.signal,dispatch:async(a,c)=>this.dispatch(a,c)});try{let a=JSON.parse(t.inputJson),c=a===null?void 0:a,u=await r.run(c,s);t.state="succeeded",t.updatedAt=Date.now(),t.lastError=null,await this.persist(),this.emitJobEvent(t,"succeeded",null,null),this.completeSuccess(e,u)}catch(a){let c=a instanceof Error?a:new Error("Unknown error");if(t.attempts+=1,t.updatedAt=Date.now(),t.lastError=c.message,i.signal.aborted)t.state="failed",await this.persist(),this.emitJobEvent(t,"failed",c.message,null),this.notifier.error(`Job ${t.jobType} (${e.substring(0,8)}) cancelled: ${c.message}`),this.completeCancelled(e,c);else if(t.attempts<t.maxAttempts&&!this.stopping){let f=Sl(t.attempts);t.state="queued",t.nextRunAt=Date.now()+f,await this.persist(),this.queue.push(t.id),this.emitJobEvent(t,"queued",c.message,t.nextRunAt),this.notifier.warn(`Job ${t.jobType} (${e.substring(0,8)}) failed, retrying in ${f}ms (attempt ${t.attempts}/${t.maxAttempts}): ${c.message}`)}else t.state="failed",await this.persist(),this.emitJobEvent(t,"failed",c.message,null),this.notifier.error(`Job ${t.jobType} (${e.substring(0,8)}) failed after ${t.attempts} attempt(s): ${c.message}`),this.completeFailure(e,c)}finally{this.releaseLocks(t);let a=this.laneActive.get(t.lane);a!==void 0&&this.laneActive.set(t.lane,Math.max(0,a-1)),this.jobAbort.delete(e),this.wake()}}async startOrchestratorsSafe(){let e=new Xe({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:this.orchestratorAbort.signal});for(let t of this.orchestrators)Promise.resolve().then(()=>t.onStart?.(e)).then(()=>t.onStarted?.(e)).catch(r=>this.notifier.error(`Orchestrator start failed (${t.name}): ${String(r)}`,{scope:"system"}))}async stopOrchestratorsSafe(){let e=new Xe({engine:this,bus:this.bus,logger:this.logger,notifier:this.notifier,flags:this.runtime.flags,signal:this.orchestratorAbort.signal});for(let t=this.orchestrators.length-1;t>=0;t--){let r=this.orchestrators[t];try{await r.onStop?.(e),r.onStopped?.(e)}catch(i){this.notifier.error(`Orchestrator stop failed (${r.name}): ${String(i)}`,{scope:"system"})}let o=this.orchestratorSubscriptions.get(r.name);if(o){for(let i of o)i.unsubscribe();this.orchestratorSubscriptions.delete(r.name)}}}emitJobEvent(e,t,r,o){this.bus.emit("job:event",new rr({ts:Date.now(),jobId:e.id,jobType:e.jobType,state:t,attempt:e.attempts,maxAttempts:e.maxAttempts,lane:e.lane,priority:e.priority,error:r,nextRunAt:o}))}completeSuccess(e,t){let r=this.completions.get(e);r&&r.resolve(Ne.success(t))}completeFailure(e,t){let r=this.completions.get(e);r&&r.resolve(Ne.failure(t))}completeCancelled(e,t){let r=this.completions.get(e);r&&r.resolve(Ne.cancelled(t))}async persist(){let e={};for(let[t,r]of this.jobs.entries())e[t]=r;await this.storage.save(new je(e))}wake(){this.wakeFn&&this.wakeFn()}resetWake(){return new Promise(e=>{this.wakeFn=e})}newId(){return vl.randomBytes(8).toString("hex")}};function Sl(n){let r=Math.min(3e4,300*2**(n-1)),o=Math.floor(Math.random()*200);return r+o}var vr=class{handlers;constructor(){this.handlers=new Map}on(e,t){let r=this.handlers.get(e),o=r||[];return o.push(t),this.handlers.set(e,o),{unsubscribe:()=>{let i=this.handlers.get(e);if(!i)return;let s=i.filter(a=>a!==t);this.handlers.set(e,s)}}}emit(e,t){let r=this.handlers.get(e);if(r)for(let o of r)o(t)}};import*as is from"node:path";import*as Le from"node:fs/promises";import*as _r from"node:path";var Ji={DevicePrivateKey:"devicePrivateKey",RefreshToken:"refreshToken"},zi=[Ji.DevicePrivateKey,Ji.RefreshToken],N={MacosKeychain:"macos-keychain",LinuxSecretService:"linux-secret-service",WindowsDpapi:"windows-dpapi",Passphrase:"passphrase",MachineId:"machine-id-file"},F={WrongPlatform:"wrong_platform",ToolMissing:"tool_missing",NoSessionBus:"no_session_bus",Locked:"locked",Timeout:"timeout",NotConfigured:"not_configured",RoundTripFailed:"round_trip_failed"},P=class extends Error{backend;constructor(e,t){super(t),this.name="SecretsUnreadableError",this.backend=e}};var _l="secrets.backend",El=Object.values(N),Sr=class{filePath;platform;constructor(e,t=process.platform){this.filePath=_r.join(e,_l),this.platform=t}async read(){try{let e=(await Le.readFile(this.filePath,"utf8")).trim();return El.includes(e)?e:void 0}catch{return}}async write(e){try{await Le.mkdir(_r.dirname(this.filePath),{recursive:!0,mode:448}),await Le.writeFile(this.filePath,`${e}
|
|
4
|
+
`,{encoding:"utf8",mode:384}),this.platform!=="win32"&&await Le.chmod(this.filePath,384).catch(()=>{})}catch{return}}};import{spawn as kl}from"node:child_process";var Ct=5e3,Er=class{run(e,t={}){let r=t.timeoutMs??Ct;return new Promise(o=>{let i="",s="",a=!1,c=!1,u=kl(e.command,[...e.args],{stdio:["pipe","pipe","pipe"],windowsHide:!0,env:t.env?{...process.env,...t.env}:void 0}),d=setTimeout(()=>{a=!0,u.kill("SIGKILL")},r);d.unref();let f=p=>{c||(c=!0,clearTimeout(d),o(p))};u.stdout?.setEncoding("utf8"),u.stdout?.on("data",p=>{i+=p}),u.stderr?.setEncoding("utf8"),u.stderr?.on("data",p=>{s+=p}),u.on("error",()=>{f({code:null,stdout:i,stderr:s,timedOut:a,spawnFailed:!0})}),u.on("close",p=>{f({code:p,stdout:i,stderr:s,timedOut:a,spawnFailed:!1})}),u.stdin?.on("error",()=>{}),u.stdin?.end(t.stdin??"","utf8")})}};var kr=class{async migrate(e,t,r=zi){if(e.id===t.id)return{migrated:!1,reason:"same_backend"};if(await this.hasAny(t,r))return{migrated:!1,reason:"target_populated"};let o;try{o=await this.read(e,r)}catch{return{migrated:!1,reason:"source_unreadable"}}if(o.length===0)return{migrated:!1,reason:"source_empty"};try{for(let i of o)await t.set(i.key,i.value)}catch{return{migrated:!1,reason:"target_write_failed"}}if(!await this.verify(t,o))return{migrated:!1,reason:"verify_failed"};for(let i of o)await e.delete(i.key).catch(()=>{});return{migrated:!0,from:e.id,keys:o.map(i=>i.key)}}async hasAny(e,t){for(let r of t)if((await e.get(r).catch(()=>({ok:!1}))).ok)return!0;return!1}async read(e,t){let r=[];for(let o of t){let i=await e.get(o);i.ok&&r.push({key:o,value:i.value})}return r}async verify(e,t){for(let r of t){let o=await e.get(r.key).catch(()=>({ok:!1}));if(!o.ok||o.value!==r.value)return!1}return!0}};var Yi="DeviceLink",wr=class{service;constructor(e){let t=(e??"").trim().toLowerCase();this.service=t===""||t==="production"?Yi:`${Yi}-${t}`}account(e){return e}label(e){return`${this.service} ${e}`}attributes(e){return["service",this.service,"key",this.account(e)]}};import*as ke from"node:fs/promises";import*as Zi from"node:path";var Qi=448,Xi=384,Me=class{filePath;platform;cache=null;constructor(e){this.filePath=e.filePath,this.platform=e.platform??process.platform}async get(e){let r=(await this.load())[e];return r===void 0?{ok:!1}:{ok:!0,value:r}}async set(e,t){let r=await this.load();r[e]=t,await this.save(r)}async delete(e){let t=await this.load();t[e]!==void 0&&(delete t[e],await this.save(t))}async load(){if(this.cache!==null)return this.cache;let e;try{e=await ke.readFile(this.filePath,"utf8")}catch(t){if(te(t)==="ENOENT")return this.cache={},this.cache;throw new P(this.id,`${this.label} could not read its secret store`)}try{this.cache=JSON.parse(await this.unprotect(e))}catch(t){throw t instanceof P?t:new P(this.id,`${this.label} could not decrypt its secret store. The store exists but is unreadable with the current key, so it has been left untouched.`)}return this.cache}async save(e){let t=Zi.dirname(this.filePath);await ke.mkdir(t,{recursive:!0,mode:Qi}),await this.hardenPath(t,Qi);let r=await this.protect(JSON.stringify(e)),o=`${this.filePath}.tmp`;await ke.writeFile(o,r,{encoding:"utf8",mode:Xi}),await ke.rename(o,this.filePath),await this.hardenPath(this.filePath,Xi)}async hardenPath(e,t){this.platform!=="win32"&&await ke.chmod(e,t).catch(()=>{})}};var wl=["powershell.exe","pwsh"],es=['$ErrorActionPreference = "Stop"',"Add-Type -AssemblyName System.Security","$in = [Console]::In.ReadToEnd()","$bytes = [Text.Encoding]::UTF8.GetBytes($in)",'$out = [Security.Cryptography.ProtectedData]::Protect($bytes, $null, "CurrentUser")',"[Console]::Out.Write([Convert]::ToBase64String($out))"].join("; "),ts=['$ErrorActionPreference = "Stop"',"Add-Type -AssemblyName System.Security","$in = [Console]::In.ReadToEnd()","$bytes = [Convert]::FromBase64String($in.Trim())",'$out = [Security.Cryptography.ProtectedData]::Unprotect($bytes, $null, "CurrentUser")',"[Console]::Out.Write([Text.Encoding]::UTF8.GetString($out))"].join("; "),Tr=class extends Me{id=N.WindowsDpapi;label="Windows DPAPI";runner;shell;timeoutMs;constructor(e){super(e),this.runner=e.runner,this.shell=e.shell??wl[0],this.timeoutMs=e.timeoutMs??Ct}async probe(){if(this.platform!=="win32")return{available:!1,reason:F.WrongPlatform};let e="dlink-dpapi-probe",t=await this.invoke(es,e);if(t.timedOut)return{available:!1,reason:F.Timeout};if(t.spawnFailed)return{available:!1,reason:F.ToolMissing,detail:`${this.shell} is not available`};if(t.code!==0)return{available:!1,reason:F.RoundTripFailed,detail:"DPAPI could not protect a value"};let r=await this.invoke(ts,t.stdout);return r.code!==0||r.stdout!==e?{available:!1,reason:F.RoundTripFailed,detail:"DPAPI could not read back a value"}:{available:!0}}async protect(e){let t=await this.invoke(es,e);if(t.code!==0||t.timedOut||t.spawnFailed)throw new P(this.id,"DPAPI could not protect the secret store.");return t.stdout.trim()}async unprotect(e){let t=await this.invoke(ts,e);if(t.timedOut||t.spawnFailed)throw new P(this.id,"DPAPI did not respond while reading the secret store.");if(t.code!==0)throw new P(this.id,"DPAPI could not decrypt the secret store. A DPAPI store is bound to one user on one machine, so a copied or roamed profile cannot be read; nothing has been changed.");return t.stdout}invoke(e,t){let r={command:this.shell,args:["-NoProfile","-NonInteractive","-Command",e],secretVia:"stdin"};return this.runner.run(r,{stdin:t,timeoutMs:this.timeoutMs})}};var ro="__DLINK_SECRET__",ot=class{runner;namespace;timeoutMs;constructor(e){this.runner=e.runner,this.namespace=e.namespace,this.timeoutMs=e.timeoutMs??Ct}normaliseValue(e){return e.replace(/\r?\n$/,"")}encodeValue(e){return Buffer.from(e,"utf8").toString("base64url")}decodeValue(e){let t=Buffer.from(e,"base64url").toString("utf8");if(Buffer.from(t,"utf8").toString("base64url")!==e)throw new P(this.id,`${this.label} holds an item this agent did not write, so it cannot be read safely.`);return t}runEnv(){}runOptions(e={}){return{...e,timeoutMs:this.timeoutMs,env:this.runEnv()}}async probe(){let e=await this.runner.run(this.probeCommand(),this.runOptions());return this.interpretProbe(e)}async get(e){let t=await this.runner.run(this.readCommand(e),this.runOptions());return this.isMissing(t)?{ok:!1}:(this.assertUsable(t,`read ${e}`),{ok:!0,value:this.decodeValue(this.normaliseValue(t.stdout))})}async set(e,t){let r=this.writeCommand(e),o=r.secretVia!=="argv",i=this.encodeValue(t),s=await this.runner.run(o?r:{...r,args:Tl(r.args,i)},o?this.runOptions({stdin:i}):this.runOptions());this.assertUsable(s,`write ${e}`);let a=await this.get(e);if(!a.ok||a.value!==t)throw new P(this.id,`${this.label} accepted ${e} but did not store it correctly, so it has not been trusted.`)}async delete(e){let t=await this.runner.run(this.deleteCommand(e),this.runOptions());this.isMissing(t)||this.assertUsable(t,`delete ${e}`)}assertUsable(e,t){if(e.timedOut)throw new P(this.id,`${this.label} timed out trying to ${t}`);if(e.spawnFailed)throw new P(this.id,`${this.label} is no longer available (could not ${t})`);if(e.code!==0)throw new P(this.id,`${this.label} failed to ${t} (exit ${String(e.code)})`)}};function Tl(n,e){return n.map(t=>t===ro?e:t)}var Rr="secret-tool",Rl="__dlink_probe__",Cl="DBUS_SESSION_BUS_ADDRESS",xl=1,Al=/could not connect|cannot autolaunch|not provided by any \.service/i,Cr=class extends ot{id=N.LinuxSecretService;label="Linux Secret Service";env;constructor(e){super(e),this.env=e.env??process.env}async probe(){let e=this.env[Cl];return e===void 0||e.trim()===""?{available:!1,reason:F.NoSessionBus}:super.probe()}runEnv(){return this.env}readCommand(e){return{command:Rr,args:["lookup",...this.namespace.attributes(e)]}}writeCommand(e){return{command:Rr,args:["store",`--label=${this.namespace.label(e)}`,...this.namespace.attributes(e)],secretVia:"stdin"}}deleteCommand(e){return{command:Rr,args:["clear",...this.namespace.attributes(e)]}}probeCommand(){return{command:Rr,args:["lookup","service",this.namespace.service,"key",Rl]}}isMissing(e){return e.timedOut||e.spawnFailed?!1:e.code===xl&&e.stdout.trim()===""&&e.stderr.trim()===""}interpretProbe(e){return e.timedOut?{available:!1,reason:F.Timeout,detail:"the keyring did not respond"}:e.spawnFailed?{available:!1,reason:F.ToolMissing,detail:"secret-tool is not installed"}:Al.test(e.stderr)?{available:!1,reason:F.NoSessionBus,detail:"the Secret Service could not be reached"}:e.code===0||this.isMissing(e)?{available:!0}:{available:!1,reason:F.Locked,detail:`secret-tool exited ${String(e.code)}`}}};import*as rs from"node:crypto";import*as st from"node:crypto";var xt=12,xr=16,Ar=32,it=class{key;constructor(e){this.key=e}encrypt(e){let t=st.randomBytes(xt),r=st.createCipheriv("aes-256-gcm",this.key,t,{authTagLength:xr}),o=Buffer.concat([r.update(e,"utf8"),r.final()]),i=r.getAuthTag();return Buffer.concat([t,i,o]).toString("base64url")}decrypt(e){let t=Buffer.from(e,"base64url"),r=t.subarray(0,xt),o=t.subarray(xt,xt+xr),i=t.subarray(xt+xr),s=st.createDecipheriv("aes-256-gcm",this.key,r,{authTagLength:xr});return s.setAuthTag(o),Buffer.concat([s.update(i),s.final()]).toString("utf8")}};var Dl="DeviceLink-SecretStorage-v1",Il=1e5;function Ol(n){return rs.pbkdf2Sync(n,Dl,Il,Ar,"sha256")}var Dr=class extends Me{id=N.MachineId;label="encrypted file (machine-derived key)";codec;constructor(e){super(e);let t=e.machineId?.trim();this.codec=t?new it(Ol(t)):null}probe(){return this.codec===null?Promise.resolve({available:!1,reason:F.NotConfigured}):Promise.resolve({available:!0})}protect(e){return Promise.resolve(this.requireCodec().encrypt(e))}unprotect(e){return Promise.resolve(this.requireCodec().decrypt(e))}requireCodec(){if(this.codec===null)throw new P(this.id,"Secret storage requires a machine ID");return this.codec}};var Ir="/usr/bin/security",Nl=44,Pl="__dlink_probe__",Fl=/could not be found/i,Ll=/interaction is not allowed/i,Or=class extends ot{id=N.MacosKeychain;label="macOS Keychain";readCommand(e){return{command:Ir,args:["find-generic-password","-s",this.namespace.service,"-a",this.namespace.account(e),"-w"]}}writeCommand(e){return{command:Ir,args:["add-generic-password","-s",this.namespace.service,"-a",this.namespace.account(e),"-U","-w",ro],secretVia:"argv"}}deleteCommand(e){return{command:Ir,args:["delete-generic-password","-s",this.namespace.service,"-a",this.namespace.account(e)]}}probeCommand(){return{command:Ir,args:["find-generic-password","-s",this.namespace.service,"-a",Pl,"-w"]}}isMissing(e){return e.timedOut||e.spawnFailed?!1:e.code===Nl||Fl.test(e.stderr)}interpretProbe(e){return e.timedOut?{available:!1,reason:F.Timeout}:e.spawnFailed?{available:!1,reason:F.ToolMissing}:Ll.test(e.stderr)?{available:!1,reason:F.Locked,detail:"the login keychain is locked"}:e.code===0||this.isMissing(e)?{available:!0}:{available:!1,reason:F.Locked,detail:`security exited ${String(e.code)}`}}};import no from"lodash/isNumber.js";import ns from"lodash/isString.js";import*as Pr from"node:crypto";var At={N:32768,r:8,p:1,maxmem:64*1024*1024},Ml=16,$l=1,os="scrypt";function Ul(n,e,t){return new Promise((r,o)=>{Pr.scrypt(n,e,Ar,{N:t.N,r:t.r,p:t.p,maxmem:At.maxmem},(i,s)=>{if(i){o(i);return}r(s)})})}var Nr=class extends Me{id=N.Passphrase;label="encrypted file (operator passphrase)";passphrase;salt=null;codec=null;codecSalt=null;codecParams=null;constructor(e){super(e);let t=e.passphrase??"";this.passphrase=t.trim().length>0?t:null}probe(){return this.passphrase===null?Promise.resolve({available:!1,reason:F.NotConfigured}):Promise.resolve({available:!0})}async protect(e){let t=this.requirePassphrase();this.salt===null&&(this.salt=Pr.randomBytes(Ml));let r=await this.codecFor(t,this.salt,At),o={v:$l,kdf:os,salt:this.salt.toString("base64url"),N:At.N,r:At.r,p:At.p,blob:r.encrypt(e)};return JSON.stringify(o)}async unprotect(e){let t=this.requirePassphrase(),r=this.parseEnvelope(e),o=Buffer.from(r.salt,"base64url"),i=await this.codecFor(t,o,r);this.salt=o;try{return i.decrypt(r.blob)}catch{throw new P(this.id,"The stored secrets could not be decrypted with DLINK_PASSPHRASE. The passphrase is wrong or the store belongs to another passphrase; nothing has been changed.")}}parseEnvelope(e){let t;try{t=JSON.parse(e)}catch{throw new P(this.id,"The secret store is not a passphrase-protected store.")}let r=t;if(r.kdf!==os||!ns(r.salt)||!ns(r.blob))throw new P(this.id,"The secret store is not a passphrase-protected store.");if(!no(r.N)||!no(r.r)||!no(r.p))throw new P(this.id,"The passphrase store does not record its key derivation parameters.");return r}async codecFor(e,t,r){return this.codec!==null&&this.codecSalt!==null&&this.codecSalt.equals(t)&&this.codecParams!==null&&this.codecParams.N===r.N&&this.codecParams.r===r.r&&this.codecParams.p===r.p?this.codec:(this.codec=new it(await Ul(e,t,r)),this.codecSalt=t,this.codecParams={N:r.N,r:r.r,p:r.p},this.codec)}requirePassphrase(){if(this.passphrase===null)throw new P(this.id,"DLINK_PASSPHRASE is not set, so the secret store cannot be opened.");return this.passphrase}};var Fr=class extends Error{attempts;constructor(e){super("No secret backend is available, so the agent cannot store its device key."),this.name="NoSecretBackendError",this.attempts=e}},Lr=class{async resolve(e){let t=[];for(let r of e){let o=await this.safeProbe(r);if(t.push(Bl(r,o)),o.available)return{provider:r,attempts:t}}throw new Fr(t)}async safeProbe(e){try{return await e.probe()}catch{return{available:!1,reason:F.RoundTripFailed}}}};function Bl(n,e){return e.available?{id:n.id,available:!0}:{id:n.id,available:!1,reason:e.reason}}var Kl="secrets.enc.json",jl="secrets.pass.json",Vl="secrets.dpapi.json",ql="DLINK_SECRETS_BACKEND",Wl="DLINK_PASSPHRASE";function Hl(n={}){let e=n.platform??process.platform,t=n.env??process.env,r=n.configDir??re(),o=n.runner??new Er,i=n.machineId,s=new wr(t.DEVICELINK_ENV),a=h=>is.join(r,h),c=new Map([[N.MacosKeychain,new Or({runner:o,namespace:s})],[N.LinuxSecretService,new Cr({runner:o,namespace:s,env:t})],[N.WindowsDpapi,new Tr({filePath:a(Vl),runner:o,platform:e})],[N.Passphrase,new Nr({filePath:a(jl),platform:e,passphrase:t[Wl]})],[N.MachineId,new Dr({filePath:a(Kl),platform:e,machineId:i})]]),u=t[ql]?.trim(),d=u?c.get(u):void 0;if(d)return[d];let f=[],p=h=>{let g=c.get(h);g&&f.push(g)};return p(N.Passphrase),p(e==="darwin"?N.MacosKeychain:e==="win32"?N.WindowsDpapi:N.LinuxSecretService),p(N.MachineId),f}async function ss(n={}){let e=n.platform??process.platform,t=n.configDir??re(),r=n.candidates??Hl(n),o=await new Lr().resolve(r),i=new Sr(t,e),s=await i.read(),a={backend:o.provider.id,label:o.provider.label,weak:o.provider.id===N.MachineId,attempts:o.attempts,expectedBackend:s,degraded:s!==void 0&&s!==o.provider.id},c=r.find(u=>u.id===N.MachineId);if(c&&c.id!==o.provider.id){let u=await new kr().migrate(c,o.provider);u.migrated&&(a.migratedFrom=u.from)}return await i.write(o.provider.id),{store:o.provider,report:a}}var Mr=class{},oo=class{ok;config;constructor(e,t){this.ok=e,this.config=t}},io=class extends Q{constructor(){super(new Y({name:"load-config",lane:"main",priority:1e3,locks:["GLOBAL"],maxAttempts:3,cancellable:!0}))}async run(e,t){t.notifier.info("Loading configuration...",{scope:"system"});let r=t.engine.configurationContext.loader,o=await t.engine.secrets.get("devicePrivateKey");r.setPrivateKeyCache(o.ok&&o.value?o.value:void 0),r.withDefaultConfig(),r.withArgv(t.engine.argv),t.engine.argv.enviromentFile&&r.withEnviromentFile(t.engine.argv.enviromentFile),r.withConfigFile("config.json"),r.withProcessEnv(),r.withDiscoveryCache();let i=r.build(),s=r.getPrivateKeyToStore();return s&&await t.engine.secrets.set("devicePrivateKey",s),this.updateUi(i,t),t.notifier.success("Configuration loaded"),t.engine.applyConfiguration(i),t.bus.emit("config:loaded",i),new oo(!0,i)}updateUi(e,t){let r={scope:"system"};t.notifier.info(`Control base URL: ${e.controlBaseUrl}`,r),t.notifier.info(`Bridge WebSocket URL: ${e.bridgeWsUrl}`,r),t.notifier.info(`Bridge endpoint source: ${t.engine.configurationContext.loader.getBridgeEndpointSource()??"none"}`,r);let o=e.discovery;o&&t.notifier.info(`Discovery cache: issued_at=${o.issuedAt??"-"} expires_at=${o.expiresAt} control=${o.controlUrl??"-"} bridge=${(o.bridgeUrls??[]).join(",")||"-"}`,r),t.notifier.info(`Directories: ${e.directories.map(i=>i.path).join(", ")}`,r),t.notifier.info(`Device: ${e.device?.id}`,r),t.notifier.info(`Device name: ${e.device?.name}`,r),t.notifier.info(`Device tag: ${e.device?.tag}`,r),t.notifier.info(`Device keys public: ${e.device?.keys?.public?"***":"(none)"}`,r)}},so=new io;function as(n){return new ye(so,n)}var ao=class{ok;constructor(e){this.ok=e}},co=class extends Q{constructor(){super(new Y({name:"console-command",lane:"console",priority:1e3,locks:[],maxAttempts:1,cancellable:!1}))}async run(e,t){return t.notifier.info(`Executing console command: ${e.kind}`),await ee(2e3),t.notifier.info(`Console command executed: ${e.kind}`),t.notifier.success(`Console command executed: ${e.kind}`),new ao(!0)}},cs=new co;var lo=class{ok;constructor(e){this.ok=e}},uo=class extends Q{constructor(){super(new Y({name:"contact-server",lane:"main",priority:900,locks:["GLOBAL"],maxAttempts:8,cancellable:!0}))}async run(e,t){return t.notifier.info(`contact server mode=${e.mode}`,{scope:"system"}),await ee(200),new lo(!0)}},ls=new uo;var po=class{ok;constructor(e){this.ok=e}},fo=class extends Q{constructor(){super(new Y({name:"send-server-result",lane:"io",priority:200,locks:[],maxAttempts:10,cancellable:!0}))}async run(e,t){return t.notifier.info(`send result requestId=${e.requestId}`,{scope:"system"}),await ee(10),new po(!0)}},us=new fo;import Jl from"lodash/isBoolean.js";import ys from"lodash/isNumber.js";import zl from"node:crypto";import J from"lodash/get.js";import Dt from"lodash/isPlainObject.js";import ct from"lodash/isString.js";var ie=class{constructor(e,t){this.context=e;this.handler=t}execute(e){return this.handler(this.context,e)}};async function we(n,e,t){let r=`${n.configuration.controlBaseUrl}${e}`,o=await fetch(r,t);if(!o.ok){let i=await o.text().catch(a=>{let c=a instanceof Error?a.message:String(a);return n.notifier.error(`Failed to read HTTP error response body: ${c}`),""}),s=new Error(`HTTP ${o.status}: ${i}`);s.status=o.status;try{s.body=i?JSON.parse(i):void 0}catch{s.body=void 0}if(o.status===429){let a=o.headers.get("Retry-After");if(a!==null){let c=parseInt(a,10);Number.isFinite(c)&&c>=0&&(s.retryAfterSec=c)}}throw s}return o.json()}function ds(n){return new ie(n,async(e,t)=>we(e,"/api/device/authorize/start",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}function ps(n){return new ie(n,async(e,t)=>we(e,"/api/device/authorize/prove",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}import{z as be}from"zod";var Gl=be.union([be.object({status:be.literal("pending"),needs_proof:be.boolean()}),be.object({status:be.literal("approved"),needs_proof:be.boolean()}),be.object({error:be.literal("access_denied")}),be.object({error:be.literal("expired_token")})]);function fs(n){return new ie(n,async(e,t)=>{let r=new URL("/api/device/authorize/stream",e.configuration.controlBaseUrl);r.searchParams.set("device_code",t.deviceCode);let o=e.notifier,i=new AbortController,s=setTimeout(()=>{o.error("[deviceAuthStream] Timeout reached, aborting"),i.abort()},Math.max(1e3,t.timeoutMs));if(t.signal){let a=t.signal;a.addEventListener("abort",()=>{let c="reason"in a&&a.reason!=null?String(a.reason):"";o.warn(`[deviceAuthStream] External signal aborted: ${c}`),i.abort()})}try{let a=await fetch(r.toString(),{method:"GET",headers:{Accept:"text/event-stream"},signal:i.signal});if(!a.ok||!a.body){let f=await a.text().catch(p=>{let h=p instanceof Error?p.message:String(p);return o.error(`[deviceAuthStream] Failed to read response body (${a.status}): ${h}`),""});throw o.error(`[deviceAuthStream] Response error: ${a.status} - ${f}`),new Error(`device/authorize/stream failed (${a.status}): ${f}`)}let c=a.body.getReader(),u=new TextDecoder("utf-8"),d="";for(;;){let{value:f,done:p}=await c.read();if(p){o.error("[deviceAuthStream] Stream ended unexpectedly");break}for(d+=u.decode(f,{stream:!0});;){let h=d.indexOf(`
|
|
4
5
|
|
|
5
|
-
`);if(
|
|
6
|
-
`))k.startsWith("event:")&&(h=k.slice(6).trim()),k.startsWith("data:")&&(y=k.slice(5).trim());if(!h||!y)continue;let _;try{_=JSON.parse(y)}catch(k){o.error(`[deviceAuthStream] Failed to parse event data as JSON: ${String(k)}`);continue}let b=Bc.safeParse(_);if(!b.success){o.error(`[deviceAuthStream] Event validation failed (${h}): ${String(b.error)}`);continue}let E=b.data;if(h==="approved"||h==="denied"||h==="expired")return E;if(h==="pending"){"status"in E&&E.status==="pending"&&E.needs_proof===!0&&o.warn("[deviceAuthStream] pending: needs_proof=true (unexpected before approval)");continue}o.warn(`[deviceAuthStream] Unknown event type: ${h}`)}}throw o.error("[deviceAuthStream] Stream ended unexpectedly without completion"),new Error("Device authorization stream ended without completion")}catch(a){if(a instanceof Error&&a.name==="AbortError")o.warn(`[deviceAuthStream] Aborted: ${a.message??""}`);else{let c=a instanceof Error?a.message:String(a);o.error(`[deviceAuthStream] Error: ${c}`)}throw a}finally{clearTimeout(s)}})}function Ai(n){return new ee(n,async(e,t)=>Ee(e,"/api/device/authorize/token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}function Di(n){return new ee(n,async(e,t)=>{let r=new AbortController,o=3e4,i=setTimeout(()=>{r.abort()},o);try{let s=await Ee(e,"/api/device/authorize/refresh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),signal:r.signal});return clearTimeout(i),s}catch(s){throw clearTimeout(i),s instanceof Error&&s.name==="AbortError"?new Error(`Refresh token request timed out after ${o}ms`):s}})}function Ii(n){return new ee(n,async(e,t)=>Ee(e,"/api/device/enrollment/start",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}var et=class{deviceAuthStartCall;deviceAuthProveCall;deviceAuthStreamCall;deviceAuthTokenCall;deviceAuthRefreshCall;deviceEnrollmentStartCall;constructor(e,t){let r={configuration:e,notifier:t};this.deviceAuthStartCall=Ri(r),this.deviceAuthProveCall=Ci(r),this.deviceAuthStreamCall=xi(r),this.deviceAuthTokenCall=Ai(r),this.deviceAuthRefreshCall=Di(r),this.deviceEnrollmentStartCall=Ii(r)}deviceAuthStart(e){return this.deviceAuthStartCall.execute(e)}deviceEnrollmentStart(e){return this.deviceEnrollmentStartCall.execute(e)}deviceAuthProve(e){return this.deviceAuthProveCall.execute(e)}deviceAuthStream(e){return this.deviceAuthStreamCall.execute(e)}deviceAuthToken(e){return this.deviceAuthTokenCall.execute(e)}deviceAuthRefresh(e){return this.deviceAuthRefreshCall.execute(e)}};function jc(n){if(!Et(n)||te(n,"ok")!==!0)return!1;let e=te(n,"data");return Et(e)?te(e,"ok")===!0&&tt(te(e,"access_token"))&&tt(te(e,"refresh_token"))&&typeof te(e,"expires_in_sec")=="number"&&tt(te(e,"device_id")):!1}function Vc(n){return n.ok===!0&&typeof n.access_token=="string"}var Cr=class{constructor(e){this.reason=e}},Wn=["REFRESH_EXPIRED","REFRESH_REVOKED","REFRESH_NOT_FOUND","DEVICE_NOT_FOUND"],_e=class{constructor(e,t,r,o,i,s,a,c){this.ok=e;this.accessToken=t;this.refreshToken=r;this.expiresInSec=o;this.error=i;this.retryAfterSec=s;this.errorCode=a;this.driftMs=c}},qn=class extends Y{constructor(){super(new z({name:"refresh-tokens",lane:"io",priority:900,locks:["AUTH_REFRESH"],maxAttempts:5,cancellable:!0}))}async run(e,t){let r=t.engine.configurationContext.configuration;if(!r.controlBaseUrl)return new _e(!1,void 0,void 0,void 0,"controlBaseUrl missing");if(!r.device?.id)return new _e(!1,void 0,void 0,void 0,"device.id missing");let o=await t.engine.secrets.get("devicePrivateKey");if(!o.ok||!o.value)return new _e(!1,void 0,void 0,void 0,"device private key missing");let i=o.value,s=await t.engine.secrets.get("refreshToken");if(!s.ok||!s.value)return new _e(!1,void 0,void 0,void 0,"refresh token missing");let a=s.value;t.notifier.info(`Refreshing tokens (job) reason=${e.reason}`,{scope:"system",category:["token-refresh"]});let c=Date.now(),l=Kc.randomBytes(16).toString("base64url"),d=un({deviceId:r.device.id,ts:c,nonce:l,refreshToken:a,privateKeyPem:i}),f=new et(r,t.notifier),p;try{p=await f.deviceAuthRefresh({device_id:r.device.id,refresh_token:a,ts:c,nonce:l,sig:d})}catch(g){let h=g instanceof Error?g.message:String(g),y=g,_=y.retryAfterSec,b=y.body,E=b?.error,k=E!=null&&typeof E=="object"?E.code:void 0,D=tt(k)?k:void 0,S=E!=null&&typeof E=="object"?E.drift_ms:void 0,T=typeof S=="number"?S:void 0;return D==="REFRESH_NOT_FOUND"?(t.notifier.warn("Refresh token not found; clearing stored refresh token and stopping automatic refresh. Please run signin.",{category:["token-refresh"]}),await t.engine.secrets.delete("refreshToken").catch(x=>{let A=x instanceof Error?x.message:String(x);t.logger.warn(`Could not clear stored refresh token: ${A}`,{category:["token-refresh"]}),t.notifier.warn(`Could not clear stored refresh token: ${A}`,{category:["token-refresh"]})}),new _e(!1,void 0,void 0,void 0,"Refresh token not found",void 0,"REFRESH_NOT_FOUND")):(t.notifier.error(`Refresh tokens failed: ${h}`,{category:["token-refresh"]}),new _e(!1,void 0,void 0,void 0,h,_,D,T))}let m=this.normalizeRefreshResponse(p);if(!m){let g=this.extractErrorMessage(p),h=this.extractErrorCode(p),y=this.extractErrorDrift(p);return t.notifier.error(`Refresh tokens failed: ${g}`,{category:["token-refresh"]}),new _e(!1,void 0,void 0,void 0,g,void 0,h,y)}return m.refresh_token&&await t.engine.secrets.set("refreshToken",m.refresh_token),new _e(!0,m.access_token,m.refresh_token,m.expires_in_sec)}normalizeRefreshResponse(e){if(jc(e))return e.data;if(this.looksLikeDomainRefresh(e)){let t=e;return Vc(t)?t:null}return null}looksLikeDomainRefresh(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.ok===!0||t.ok===!1}extractErrorMessage(e){if(!Et(e))return"Unknown error";if(te(e,"ok")===!1){let t=te(e,"error.message");if(tt(t)&&t.length>0)return t}return te(e,"ok")===!0&&"data"in e?"Bad refresh response: missing token fields":"Unknown error"}extractErrorDrift(e){if(!Et(e)||te(e,"ok")!==!1)return;let t=te(e,"error.drift_ms");return typeof t=="number"?t:void 0}extractErrorCode(e){if(!Et(e)||te(e,"ok")!==!1)return;let t=te(e,"error.code");return tt(t)?t:void 0}},Gn=new qn;function Oi(n){return new pe(Gn,n)}function Ni(n,e){return e.headless?n.on("notify:event",t=>{qc(t,e.debug)}):null}function qc(n,e){if(!e&&!Wc(n))return;let t=`[agent] ${n.message}`;switch(n.kind){case"error":console.error(t);break;case"warning":console.warn(t);break;default:console.log(t);break}}function Wc(n){return n.kind==="error"||n.kind==="warning"||n.kind==="success"||n.scope==="system"}var xr=class{constructor(e){this.argv=e;let t=e.map(f=>f.trim()?.toLowerCase()),r=e.map(f=>f.trim()),o=this.parseKeyValue(t,r,["--env"]);o.match&&(this.enviromentFile=o.value);let i=this.parseKeyValue(t,r,["--root"]);i.match&&(this.rootPath=i.value);let s=this.parseKeyValue(t,r,["--control-url"]);s.match&&(this.controlUrl=s.value);let a=this.parseKeyValue(t,r,["--bridge-ws-url"]);a.match&&(this.bridgeWsUrl=a.value);let c=this.parseKeyValue(t,r,["--private-key-file"]);c.match&&c.value&&(this.privateKeyFile=c.value);let l=this.parseKeyValue(t,r,["--public-key-file"]);l.match&&l.value&&(this.publicKeyFile=l.value);let d=this.parseKeyValue(t,r,["--enrollment-file"]);d.match&&d.value&&(this.enrollmentFile=d.value)}enviromentFile;rootPath;controlUrl;bridgeWsUrl;privateKeyFile;publicKeyFile;enrollmentFile;parseKeyValue(e,t,r){let o=r.map(i=>i.toLowerCase()?.trim()).filter(i=>i!==void 0);if(o.length===0)return{match:!1,value:void 0};for(let i of o){let s=e.findIndex(a=>{let c=a.toLowerCase();return c===i||c.startsWith(i+"=")});if(s!==-1){let a=t[s],c=a.toLowerCase().indexOf("=");if(c!==-1)return{match:!0,value:a.substring(c+1)||void 0};let l=t[s+1];return l===void 0||l.startsWith("--")?{match:!0,value:void 0}:{match:!0,value:l}}}return{match:!1,value:void 0}}};var Ar=class{bus;flags;constructor(e,t){this.bus=e,this.flags=t??new Ae(!1)}info(e,t){return this.push(e,t)}warn(e,t){let r=Object.assign({},t,{kind:"warning"});return this.push(e,r)}error(e,t){let r=Object.assign({},t,{kind:"error"});return this.push(e,r)}success(e,t){let r=Object.assign({},t,{kind:"success"});return this.push(e,r)}push(e,t){if((t?.scope??"default")==="system"&&!this.flags.debug&&!this.flags.headless)return null;let o=new ye(e,t);return this.bus.emit("notify:event",o),o}};var Dr=class{bus;constructor(e){this.bus=e}info(e,t){this.push(e,Object.assign({},t,{level:"info"}))}warn(e,t){this.push(e,Object.assign({},t,{level:"warn"}))}error(e,t){this.push(e,Object.assign({},t,{level:"error"}))}debug(e,t){this.push(e,Object.assign({},t,{level:"debug"}))}success(e,t){this.push(e,Object.assign({},t,{level:"success"}))}push(e,t){let r=new jt(e,t);this.bus.emit("log",r)}};import Jn from"node:fs";import zc from"node:os";import zn from"node:tty";import Gc from"lodash/toLower.js";import Hc from"lodash/trim.js";var Jc=new Set(["1","true","yes","on"]),Hn=new Set(["0","false","no","off"]);function Ir(n){let e=Gc(Hc(n));if(Jc.has(e))return!0;if(Hn.has(e))return!1}function _t(n,e,t=process.env){return Ir(t[n]??"")??e}function Yc(n){let e=n.setRawMode;return typeof e!="function"||(n.setRawMode=t=>{try{return e.call(n,t)}catch(r){let o=typeof r=="object"&&r!==null&&"code"in r?r.code:void 0;if(o==="EPERM"||o==="EINVAL")return n;throw r}}),n}var kt;function Yn(){if(kt!==void 0)return kt;let n;if(process.stdin.isTTY)n=process.stdin;else try{if(zc.platform()==="win32")try{let e=Jn.openSync("CONIN$","rs");n=new zn.ReadStream(e)}catch{let e=Jn.openSync("\\\\.\\CONIN$","rs");n=new zn.ReadStream(e)}else{let e=Jn.openSync("/dev/tty","rs");n=new zn.ReadStream(e)}}catch{return kt=null,null}return kt=Yc(n),kt}function Qc(){return Yn()===null}function Xc(n){for(let e of n){let t=e.trim(),r=t.toLowerCase();if(r==="--headless")return"on";if(r.startsWith("--headless=")){let o=t.slice(t.indexOf("=")+1).trim().toLowerCase();return Hn.has(o)?"off":"on"}}return"unset"}function Pi(n){let e=Xc(n);if(e==="on")return{headless:!0,reason:"CLI: --headless"};if(e==="off")return{headless:!1,reason:"CLI: --headless=false"};let t=process.env.HEADLESS;if(t!==void 0&&t.trim()!==""){let i=Ir(t);if(i!==void 0)return{headless:i,reason:i?"env: HEADLESS":"env: HEADLESS=false"}}let r=process.env.DLINK_HEADLESS;if(r!==void 0&&r.trim()!==""){let i=Ir(r);if(i!==void 0)return{headless:i,reason:i?"env: DLINK_HEADLESS":"env: DLINK_HEADLESS=false"}}return Qc()?{headless:!0,reason:"no TTY stdin (Docker/CI/background)"}:{headless:!1,reason:"TTY available (interactive)"}}import Qn from"dotenv";import{existsSync as Fi}from"node:fs";import{join as Zc,resolve as el,dirname as tl}from"node:path";function Li(n){let e=el(tl(process.argv[1]??"."),".env.production"),t=Fi(e);if(Qn.config({quiet:!0}),!t){let r=Zc(process.cwd(),"apps","agent",".env");Fi(r)&&Qn.config({path:r,override:!0,quiet:!0})}n.enviromentFile&&Qn.config({path:n.enviromentFile,override:!0,quiet:!0})}import{access as Mi,readFile as rl}from"node:fs/promises";import{constants as $i}from"node:fs";function nl(n){return(n.trim().split(".")[0]??"").startsWith("eyJ")}function Xn(){let n=process.env.ENROLMENT_KEY?.trim()??process.env.DLINK_ENROLMENT_KEY?.trim();return n?nl(n)?{kind:"inline",jws:n}:{kind:"path",path:n}:{kind:"none"}}function Bi(n){let e=n?.trim();if(e)return`file:${e}`;let t=Xn();return t.kind==="none"?"none":t.kind==="inline"?"ENROLMENT_KEY(inline JWS)":`file:${t.path}`}async function Ui(n){try{let t=(await rl(n,"utf8")).trim();return t?{ok:!0,jws:t}:{ok:!1,error:"empty_file"}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}async function Ki(n){let e=n?.trim();if(e)try{return await Mi(e,$i.R_OK),!0}catch{return!1}let t=Xn();if(t.kind==="inline")return t.jws.trim().length>0;if(t.kind==="path")try{return await Mi(t.path,$i.R_OK),!0}catch{return!1}return!1}async function ji(n){let e=n?.trim();if(e)return Ui(e);let t=Xn();if(t.kind==="none")return{ok:!1,error:"not_configured"};if(t.kind==="inline"){let r=t.jws.trim();return r?{ok:!0,jws:r}:{ok:!1,error:"empty_file"}}return Ui(t.path)}import Zn from"lodash/trim.js";var Vi=[{name:"help",aliases:["?"],summary:"Show this command list"},{name:"start",aliases:["run"],summary:"Connect the bridge"},{name:"stop",summary:"Disconnect the bridge"},{name:"status",summary:"Show device, bridge and session state"},{name:"doctor",summary:"Run local environment checks"},{name:"signin",summary:"Sign in to DeviceLink"},{name:"signout",summary:"Sign out and disconnect the bridge"},{name:"roots list",summary:"List the directories shared with the bridge"},{name:"roots add",args:"<path>",summary:"Share an additional directory"},{name:"debug on",summary:"Show internal system messages",hidden:!0},{name:"debug off",summary:"Hide internal system messages",hidden:!0},{name:"replace",aliases:["yes","y"],summary:"Take over an existing session on conflict"}],qi=[{flag:"-h, --help",summary:"Show this help and exit"},{flag:"-v, --version",summary:"Print the agent version and exit"},{flag:"--headless",args:"[=true|false]",summary:"Run without the interactive UI"},{flag:"--env",args:"<file>",summary:"Load environment from a specific file"},{flag:"--root",args:"<path>",summary:"Share this directory with the bridge"},{flag:"--control-url",args:"<url>",summary:"Override the control plane base URL"},{flag:"--bridge-ws-url",args:"<url>",summary:"Override the bridge WebSocket URL"},{flag:"--enrollment-file",args:"<file>",summary:"Path to a .devicelink enrollment key"},{flag:"--private-key-file",args:"<file>",summary:"Path to the device private key"},{flag:"--public-key-file",args:"<file>",summary:"Path to the device public key"}];function Wi(){let n=new Set;for(let e of Vi){let t=e.name.split(" ")[0];t&&n.add(t);for(let r of e.aliases??[])n.add(r)}return Array.from(n)}function Gi(n){let e=new Set,t=new Set;for(let i of qi){let s=!!i.args&&!i.args?.startsWith("[");for(let a of i.flag.split(",")){let c=Zn(a).toLowerCase();c.startsWith("-")&&(e.add(c),s&&t.add(c))}}let r=[],o=n.slice(2);for(let i=0;i<o.length;i++){let s=Zn(o[i]??"");if(s==="--"||!s.startsWith("-"))continue;let a=s.split("=")[0]??s;if(!e.has(a.toLowerCase())){r.push(a);continue}t.has(a.toLowerCase())&&!s.includes("=")&&i++}return r}function Hi(n){for(let e of n.slice(2)){let t=Zn(e).toLowerCase();if(t==="--version"||t==="-v")return"version";if(t==="--help"||t==="-h")return"help"}return null}function Ji(n){let e=n.args?`${n.name} ${n.args}`:n.name;return!n.aliases||n.aliases.length===0?e:`${e} (${n.aliases.join(", ")})`}function eo(n){let e=n.reduce((t,r)=>Math.max(t,r.left.length),0);return n.map(t=>` ${t.left.padEnd(e)} ${t.right}`)}function zi(){return Vi.filter(n=>!n.hidden)}function Yi(){let n=zi().map(e=>({left:Ji(e),right:e.summary}));return["Commands:",...eo(n)]}function Qi(n){let e=zi().map(r=>({left:Ji(r),right:r.summary})),t=qi.map(r=>({left:r.args?`${r.flag} ${r.args}`:r.flag,right:r.summary}));return[`DeviceLink Agent ${n}`,"","Usage: dlink [options]","","Options:",...eo(t),"","Interactive commands (type these once the agent is running):",...eo(e),""].join(`
|
|
7
|
-
`)}import ol from"lodash/compact.js";import il from"lodash/isString.js";import sl from"lodash/trim.js";import{existsSync as al,readFileSync as cl}from"node:fs";import Xi from"node:path";import{fileURLToPath as ll}from"node:url";var to;function ul(){try{let n=Xi.dirname(ll(import.meta.url)),e=Xi.join(n,"package.json");if(!al(e))return;let t=JSON.parse(cl(e,"utf8"));if(t.name==="@devicelink/dlink"&&il(t.version))return t.version}catch{return}}function ue(){if(to===void 0){let n=[process.env.DLINK_AGENT_VERSION,process.env.npm_package_version,ul()].map(e=>sl(e));to=ol(n)[0]??"unknown"}return to}async function Zi(n){let e=Hi(process.argv);if(e==="version"){console.log(ue());return}if(e==="help"){console.log(Qi(ue()));return}let t=Gi(process.argv);t.length>0&&(console.warn(`[agent] Ignoring unrecognised ${t.length===1?"option":"options"}: ${t.join(", ")}`),console.warn('[agent] Run "dlink --help" to see the supported options.'));let r=new cr,o=new qt,{store:i,report:s}=await Ei({machineId:Ht(!0)}),a=new xr(process.argv);Li(a);let c=Pi(process.argv);if(c.headless){let g=Bi(a.enrollmentFile);console.log(`[agent] Headless boot (${c.reason})`),console.log(`[agent] Enrollment: ${g}`),g==="none"&&console.log("[agent] No enrollment key (set ENROLMENT_KEY or DLINK_ENROLMENT_KEY, or use --enrollment-file)")}let l=new Ae(!1,c.headless,c.reason),d=new Dr(r),f=new Ar(r,l);Ni(r,l);let p=new ar({bus:r,argv:a,logger:d,notifier:f,storage:o,secrets:i,secretsReport:s,flags:l,lanes:[new we("console",1),new we("supervisor",1),new we("main",1),new we("ws",1),new we("worker",8),new we("io",4)]});p.register(Mn),p.register(Gn),p.register(ki),p.register(Ti),p.register(wi);let m=n({headless:c.headless,headlessReason:c.reason});for(let g of m)p.registerOrchestrator(g);await p.init(),await p.start()}import Vl from"react";import{render as ql}from"ink";import{useEffect as $l,useCallback as no}from"react";import{Box as oo,useApp as Ul,useInput as Bl}from"ink";import{useEffect as dl,useState as pl}from"react";function es(){let[n,e]=pl(()=>{let t=process.stdout.columns||80,r=process.stdout.rows||24;return[t,r]});return dl(()=>{let t=()=>{let r=process.stdout.columns||80,o=process.stdout.rows||24;e([r,o])};return process.stdout.on("resize",t),t(),()=>{process.stdout.off("resize",t)}},[]),n}import is,{useEffect as Or,useState as ss}from"react";import{Box as nt,Text as L}from"ink";import{createContext as fl,useContext as ml,useReducer as hl,useMemo as rt,useEffect as ts,useState as gl}from"react";import{jsx as Sl}from"react/jsx-runtime";var rs=fl(null);function yl(n,e){let t=n.messages,r=t.findIndex(o=>o.id===e.id);if(r!==-1){let o=t[r],i=[...t];return i[r]={...e,id:o.id,ts:o.ts},{...n,messages:i}}if(e.groupKey)for(let o=t.length-1;o>=0;o--){let i=t[o];if(i.groupKey===e.groupKey){let s=[...t];return s[o]={...e,id:i.id,ts:i.ts,groupKey:i.groupKey},{...n,messages:s}}}return{...n,messages:[...t.slice(-380),e]}}function bl(n,e){switch(e.type){case"SET_INPUT":return{...n,input:e.payload};case"ADD_MESSAGE":return yl(n,e.payload);case"SET_MESSAGES":return{...n,messages:e.payload};case"SET_ENGINE_STATE":return{...n,engineState:e.payload};case"ADD_COMMAND_TO_HISTORY":{if(!e.payload)return n;let t=n.commandHistory.length===0||n.commandHistory[n.commandHistory.length-1]!==e.payload?[...n.commandHistory,e.payload]:n.commandHistory;return{...n,commandHistory:t}}case"SET_HISTORY_INDEX":return{...n,historyIndex:e.payload};case"SET_IS_PROCESSING":return{...n,isProcessing:e.payload};case"SET_DEBUG_ENABLED":return{...n,debugEnabled:e.payload};case"SET_CONNECTION_STATUS":return{...n,connectionStatus:e.payload};case"SET_CONNECTION_RETRY":return{...n,connectionRetryInSec:e.payload};case"SET_REFRESH_COUNTDOWN":return{...n,refreshCountdownSec:e.payload};case"SET_DEVICE_ID":return{...n,deviceId:e.payload};case"RESET_INPUT":return{...n,input:""};case"RESET_HISTORY_INDEX":return{...n,historyIndex:-1};case"RESET_HISTORY_INDEX_IF_TYPING":if(n.historyIndex!==-1){let t=n.commandHistory[n.historyIndex];if(t!==void 0&&n.input!==t)return{...n,historyIndex:-1}}return n;default:return n}}var vl={input:"",messages:[],engineState:"IDLE",commandHistory:[],historyIndex:-1,isProcessing:!1,debugEnabled:!1,connectionStatus:"disconnected",connectionRetryInSec:null,refreshCountdownSec:null,deviceId:null};function ns({engine:n,bus:e,children:t}){let[r,o]=hl(bl,vl),[i,s]=gl(()=>Object.freeze({phase:n.runtime.phase,flags:Object.freeze({debug:n.runtime.flags.debug})}));ts(()=>{e.emit("ui:initialized",Date.now())},[e]),ts(()=>{let c=S=>S==="running"?"RUNNING":S==="stopping"?"STOPPING":S==="booting"?"IDLE":"STOPPED",l=e.on("notify:event",S=>{if(o({type:"ADD_MESSAGE",payload:S}),S.groupKey?.startsWith("auth:refresh"))if(S.kind==="info"){let T=S.message.match(/refresh scheduled in (\d+)s/);if(T){let x=parseInt(T[1],10);isNaN(x)||o({type:"SET_REFRESH_COUNTDOWN",payload:x})}}else S.kind==="success"&&S.message.includes("refresh completed")&&o({type:"SET_REFRESH_COUNTDOWN",payload:null})}),d=()=>{let S=n.runtime;o({type:"SET_ENGINE_STATE",payload:c(S.phase)}),o({type:"SET_DEBUG_ENABLED",payload:S.flags.debug});let T=n.configurationContext.configuration.device?.id??null;o({type:"SET_DEVICE_ID",payload:T}),s(Object.freeze({phase:S.phase,flags:Object.freeze({debug:S.flags.debug})}))};d();let f=e.on("engine:started",()=>{o({type:"SET_ENGINE_STATE",payload:"RUNNING"}),d()}),p=e.on("engine:stopping",()=>{o({type:"SET_ENGINE_STATE",payload:"STOPPING"}),d()}),m=e.on("engine:stopped",()=>{o({type:"SET_ENGINE_STATE",payload:"STOPPED"}),d()}),g=e.on("ws:connecting",()=>{o({type:"SET_CONNECTION_STATUS",payload:"connecting"}),o({type:"SET_CONNECTION_RETRY",payload:null})}),h=e.on("ws:connected",()=>{o({type:"SET_CONNECTION_STATUS",payload:"connected"}),o({type:"SET_CONNECTION_RETRY",payload:null})}),y=e.on("ws:disconnected",()=>{o({type:"SET_CONNECTION_STATUS",payload:"disconnected"}),o({type:"SET_CONNECTION_RETRY",payload:null})}),_=e.on("ws:retrying",S=>{o({type:"SET_CONNECTION_STATUS",payload:"connecting"}),o({type:"SET_CONNECTION_RETRY",payload:S.retryInSec})}),b=e.on("runtime:debug:changed",({enabled:S})=>{o({type:"SET_DEBUG_ENABLED",payload:S});let T=n.runtime;s(Object.freeze({phase:T.phase,flags:Object.freeze({debug:S})}))}),E=e.on("config:loaded",S=>{let T=S.device?.id??null;o({type:"SET_DEVICE_ID",payload:T})}),k=new ye("Welcome to DeviceLink Agent UI",{ts:Date.now(),kind:"status"}),D=new ye('Type "help" for commands. Start bridge with: start or run',{ts:Date.now(),kind:"status"});return o({type:"SET_MESSAGES",payload:[k,D]}),()=>{l.unsubscribe(),f.unsubscribe(),p.unsubscribe(),m.unsubscribe(),g.unsubscribe(),h.unsubscribe(),y.unsubscribe(),_.unsubscribe(),b.unsubscribe(),E.unsubscribe()}},[e,n,o]);let a=rt(()=>({state:r,dispatch:o,engine:n,bus:e,runtime:i}),[r,n,e,i]);return Sl(rs.Provider,{value:a,children:t})}function Be(){let n=ml(rs);if(!n)throw new Error("useAppContext must be used within AppContextProvider");return n}function os(n){let{state:e}=Be(),t=c=>!(c.category?.includes("token-refresh")||c.groupKey?.startsWith("auth:refresh")&&c.kind==="info"&&c.message.includes("refresh scheduled in")),r=n?.displayFilter??t,o=rt(()=>e.messages.filter(r),[e.messages,r]),i=rt(()=>c=>e.messages.filter(c),[e.messages]),s=rt(()=>c=>e.messages.filter(l=>l.kind===c),[e.messages]),a=rt(()=>c=>e.messages.filter(l=>l.scope===c),[e.messages]);return rt(()=>({rawMessages:e.messages,messagesToDisplay:o,getFilteredMessages:i,getMessagesByKind:s,getMessagesByScope:a}),[e.messages,o,i,s,a])}import{Fragment as ot,jsx as U,jsxs as Q}from"react/jsx-runtime";function El(n){return n==="RUNNING"?"green":n==="STOPPING"?"yellow":n==="STOPPED"?"red":"gray"}function _l(n){return n==="connected"?"green":n==="connecting"?"yellow":"red"}function kl(n){return n==="connected"?"connected":n==="connecting"?"trying":"disconnected"}function as(n,e){return n.length<=e?n:n.slice(0,Math.max(0,e-3))+"..."}function Tl(n){let{state:e}=Be(),t="DeviceLink Agent",r=e.debugEnabled,o=e.deviceId??"not signed in",i=e.engineState,s=El(i),a=e.isProcessing,c=e.connectionStatus,l=e.connectionRetryInSec,d=e.refreshCountdownSec,[f,p]=ss(d),[m,g]=ss(l);Or(()=>{p(d)},[d]),Or(()=>{g(l)},[l]),Or(()=>{if(d===null||d<=0){p(null);return}p(d);let S=setInterval(()=>{p(T=>T===null||T<=1?null:T-1)},1e3);return()=>clearInterval(S)},[d]),Or(()=>{if(l===null||l<=0){g(null);return}g(l);let S=setInterval(()=>{g(T=>T===null||T<=1?null:T-1)},1e3);return()=>clearInterval(S)},[l]);let h=kl(c),y=_l(c),_=t.length,b=30,E=n.width-_-2,k=[];if(k.push(U(L,{color:y,children:h},"conn")),m!==null&&m>0&&k.push(Q(L,{color:y,children:["retry in ",m,"s"]},"retry")),f!==null&&f>0&&f<=5&&k.push(Q(L,{color:"cyan",children:["refresh in ",f,"s"]},"refresh")),E>=b){let S=as(o,Math.max(5,E-50));return Q(nt,{justifyContent:"space-between",width:n.width,children:[Q(nt,{children:[U(L,{bold:!0,children:t}),r&&Q(ot,{children:[U(L,{children:" "}),U(L,{color:"yellow",bold:!0,children:"[DEBUG]"})]})]}),Q(nt,{children:[a&&U(ot,{children:U(L,{dimColor:!0,children:"\u23F3 "})}),U(L,{dimColor:!0,children:"device "}),Q(L,{children:[S," "]}),U(L,{children:"\xB7 "}),U(L,{color:s,children:i}),k.length>0&&Q(ot,{children:[U(L,{children:" \xB7 "}),k.map((T,x)=>Q(is.Fragment,{children:[x>0&&U(L,{children:" \xB7 "}),T]},x))]})]})]})}let D=as(o,n.width-8);return Q(nt,{flexDirection:"column",width:n.width,children:[Q(nt,{children:[U(L,{bold:!0,children:t}),r&&Q(ot,{children:[U(L,{children:" "}),U(L,{color:"yellow",bold:!0,children:"[DEBUG]"})]})]}),Q(nt,{children:[a&&U(ot,{children:U(L,{dimColor:!0,children:"\u23F3 "})}),U(L,{dimColor:!0,children:"device "}),Q(L,{children:[D," "]}),U(L,{children:"\xB7 "}),U(L,{color:s,children:i}),k.length>0&&Q(ot,{children:[U(L,{children:" \xB7 "}),k.map((S,T)=>Q(is.Fragment,{children:[T>0&&U(L,{children:" \xB7 "}),S]},T))]})]})]})}var cs=Tl;import ds,{useMemo as ls}from"react";import{Box as wl,Text as Ke}from"ink";import{jsx as je,jsxs as us}from"react/jsx-runtime";function Rl(n){return n==="error"?"red":n==="warning"?"yellow":n==="success"?"green":n==="info"?"cyan":"white"}function Cl(n){return n==="error"?"ERROR":n==="warning"?"WARN":n==="success"?"SUCCESS":n==="info"?"INFO":n==="status"?"STATUS":"INFO"}function xl(n){let e=new Date(n),t=String(e.getHours()).padStart(2,"0"),r=String(e.getMinutes()).padStart(2,"0"),o=String(e.getSeconds()).padStart(2,"0");return`${t}:${r}:${o}`}function Al(n,e){if(typeof n!="string"&&(n=String(n??"")),n.length<=e)return[n];let t=[],r="",o=n.split(/(\s+)/);for(let i of o)if((r+i).length<=e)r+=i;else{r&&t.push(r),r="";let s=i;for(;s.length>e;)t.push(s.slice(0,e)),s=s.slice(e);r=s}return r&&t.push(r),t.length>0?t:[n]}var Dl=ds.memo(function(e){let{messagesToDisplay:t}=os(),r=e.height??14,c=Math.max(20,e.width-9-8-2-2),l=ls(()=>t.slice(-r),[t,r]),f=ls(()=>l.flatMap(p=>{let m=xl(p.ts),g=Cl(p.kind);return Al(p.message,c).map((y,_)=>({msg:p,lineIndex:_,time:_===0?m:"",kind:_===0?g:"",message:y,isContinuation:_>0}))}),[l,c]).slice(-r);return je(wl,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,height:r+2,width:e.width,children:f.length===0?je(Ke,{dimColor:!0,children:"(no messages)"}):f.map(p=>je(Il,{item:p},`${p.msg.id}:${p.lineIndex}`))})},(n,e)=>n.height===e.height&&n.width===e.width),Il=ds.memo(function({item:e}){return us(Ke,{children:[e.time&&us(Ke,{dimColor:!0,children:[e.time," "]}),e.kind&&je(Ke,{color:Rl(e.msg.kind),children:e.kind}),e.kind&&je(Ke,{children:" "}),e.isContinuation&&je(Ke,{dimColor:!0,children:" "}),je(Ke,{dimColor:e.msg.scope==="system",children:e.message})]})}),ps=Dl;import Ol from"react";import{Box as Nr,Text as ro,useFocus as Nl}from"ink";import Pl from"ink-text-input";import{jsx as it,jsxs as fs}from"react/jsx-runtime";var Fl=Ol.memo(function(e){let{state:t,dispatch:r}=Be(),{isFocused:o}=Nl({autoFocus:!0,isActive:!t.isProcessing}),i=e.isPassphraseMode?"passphrase> ":"dlink> ",s=Math.max(10,e.width-i.length-2);return fs(Nr,{flexDirection:"column",width:e.width,children:[fs(Nr,{width:e.width,children:[it(ro,{color:e.isPassphraseMode?"cyan":"green",children:i}),it(Nr,{width:s,children:t.isProcessing?it(ro,{dimColor:!0,italic:!0,children:"Processing..."}):it(Pl,{value:t.input,onChange:a=>r({type:"SET_INPUT",payload:a}),onSubmit:e.onSubmit,placeholder:o?void 0:e.isPassphraseMode?"Enter passphrase...":'Type a command or "help"',mask:e.isPassphraseMode?"*":void 0},`input-${t.historyIndex}-${e.isPassphraseMode?"passphrase":"normal"}`)})]}),e.passphraseError&&it(Nr,{marginTop:1,children:it(ro,{color:"red",children:e.passphraseError})})]})}),ms=Fl;import{Component as Ll}from"react";import{Box as st,Text as Pr}from"ink";import{Fragment as Ml,jsx as xe,jsxs as hs}from"react/jsx-runtime";var Tt=class extends Ll{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){this.props.onError&&this.props.onError(e,t)}render(){return this.state.hasError&&this.state.error?xe(st,{flexDirection:"column",padding:1,children:xe(st,{borderStyle:"round",borderColor:"red",paddingX:1,children:hs(st,{flexDirection:"column",children:[xe(Pr,{color:"red",bold:!0,children:"\u26A0\uFE0F Application Error"}),xe(st,{height:1}),xe(Pr,{color:"red",children:this.state.error.message}),this.state.error.stack&&hs(Ml,{children:[xe(st,{height:1}),xe(Pr,{dimColor:!0,children:this.state.error.stack})]}),xe(st,{height:1}),xe(Pr,{dimColor:!0,children:"Press Ctrl+C to exit"})]})})}):this.props.children}};import{jsx as Pe,jsxs as jl}from"react/jsx-runtime";function Kl(){let{exit:n}=Ul(),{state:e,dispatch:t,engine:r,bus:o}=Be(),[i,s]=es(),a=i,c=s,l=no(g=>o.emit("console:command",g),[o]),d=Math.max(5,c-5),f=Math.min(d-3,Math.max(5,Math.floor(d*.7)));Bl((g,h)=>{if(h.ctrl&&g==="c"){r.requestStop("user exit");return}if(!e.isProcessing&&(h.upArrow||h.downArrow)){if(e.commandHistory.length===0)return;if(h.upArrow){let y=e.historyIndex===-1?e.commandHistory.length-1:Math.max(0,e.historyIndex-1);t({type:"SET_HISTORY_INDEX",payload:y}),t({type:"SET_INPUT",payload:e.commandHistory[y]})}else if(h.downArrow){if(e.historyIndex===-1)return;let y=e.historyIndex+1;y>=e.commandHistory.length?(t({type:"SET_HISTORY_INDEX",payload:-1}),t({type:"SET_INPUT",payload:""})):(t({type:"SET_HISTORY_INDEX",payload:y}),t({type:"SET_INPUT",payload:e.commandHistory[y]}))}}}),$l(()=>{t({type:"RESET_HISTORY_INDEX_IF_TYPING"})},[e.input,t]);let p=no(async g=>{let h=g.trim();t({type:"RESET_INPUT"}),t({type:"RESET_HISTORY_INDEX"}),h&&t({type:"ADD_COMMAND_TO_HISTORY",payload:h}),t({type:"SET_IS_PROCESSING",payload:!0});try{await l(h)}catch(y){let _=B(y),b=new ye(`Command failed: ${_}`,{ts:Date.now(),kind:"error"});t({type:"ADD_MESSAGE",payload:b})}finally{t({type:"SET_IS_PROCESSING",payload:!1})}},[t,n,l,r]),m=no((g,h)=>{let y=new ye(`UI Error: ${g.message}`,{ts:Date.now(),kind:"error"});t({type:"ADD_MESSAGE",payload:y})},[t]);return Pe(Tt,{onError:m,children:jl(oo,{flexDirection:"column",padding:1,width:a,children:[Pe(cs,{width:a-2}),Pe(oo,{height:1}),Pe(ps,{height:f,width:a-2}),Pe(oo,{height:1}),Pe(ms,{width:a-2,onSubmit:p})]})})}function io({engine:n,bus:e}){return Pe(ns,{engine:n,bus:e,children:Pe(Kl,{})})}function gs(n,e){let t=n.runtime.flags;t.headless?console.log(`[agent] Headless UI (${t.headlessReason})`):console.warn(`[agent] No TTY stdin; non-interactive boot (${t.headlessReason})`),e.emit("ui:initialized",Date.now());let r=setInterval(()=>{},6e4);return new Promise(o=>{process.on("SIGTERM",()=>{clearInterval(r),o()}),process.on("SIGINT",()=>{clearInterval(r),o()})})}function ys(n,e){let t=n.runtime.flags.headless?null:Yn();if(!t)return gs(n,e);let{waitUntilExit:r}=ql(Vl.createElement(io,{engine:n,bus:e}),{stdin:t});return r()}var Fr=class{name="ui-orchestrator";async onStarted(e){ys(e.engine,e.bus)}async onStop(e){e.notifier.info("UI exited, stopping engine",{scope:"system"}),e.engine&&e.engine.requestStop("UI exited")}};import cu from"lodash/truncate.js";import so from"lodash/isEmpty.js";import eu from"lodash/isString.js";import at from"lodash/trim.js";import tu from"lodash/trimEnd.js";import Wl from"lodash/isEmpty.js";import Gl from"lodash/isString.js";import{randomUUID as Hl}from"node:crypto";import{existsSync as Jl,mkdirSync as zl,readFileSync as Yl,writeFileSync as Ql}from"node:fs";import bs from"node:path";var Xl="telemetry.json";function Zl(){return bs.join(Z(),Xl)}function Lr(){let n=Zl();try{if(Jl(n)){let t=JSON.parse(Yl(n,"utf8"));if(Gl(t.anonymous_id)&&!Wl(t.anonymous_id))return t.anonymous_id}}catch{}let e=Hl().replace(/-/g,"");try{zl(bs.dirname(n),{recursive:!0});let t={anonymous_id:e,created_at:new Date().toISOString()};Ql(n,JSON.stringify(t,null,2),"utf8")}catch{}return e}var ru=1e4,nu=En,ou=200,iu=4e3,su="/api/telemetry/agent";function ao(n=process.env){return!(!_t("DLINK_TELEMETRY",!0,n)||_t("DO_NOT_TRACK",!1,n))}var Mr=class{enabled;transport;queue;timer;inFlight;constructor(e,t=ao()){this.transport=e,this.enabled=t,this.queue=[],this.timer=null,this.inFlight=new Set}get isEnabled(){return this.enabled}get anonymousId(){return this.enabled?Lr():"disabled"}capture(e,t,r){if(this.enabled&&!(!eu(e)||so(at(e)))&&!(this.queue.length>=ou)){if(this.queue.push({kind:at(e),severity:r,at:Date.now(),props:t&&Object.keys(t).length>0?t:void 0}),this.queue.length>=nu){this.flush();return}this.timer||(this.timer=setTimeout(()=>void this.flush(),ru),this.timer.unref?.())}}async flush(){if(this.timer&&(clearTimeout(this.timer),this.timer=null),!this.enabled||this.queue.length===0)return;let e=this.queue.splice(0,En);if(this.transport.socketReady()){this.sendOverSocket(e),this.queue.length>0&&this.flush();return}let t=this.post(e).finally(()=>this.inFlight.delete(t));this.inFlight.add(t),await t,this.queue.length>0&&await this.flush()}async shutdown(){await this.flush(),await Promise.allSettled([...this.inFlight])}sendOverSocket(e){try{this.transport.socketSend(JSON.stringify({type:"agent_event",schema_version:Sn,events:e.map(t=>this.wire(t))}))}catch{return}}async post(e){let t=this.transport.controlBaseUrl();if(!t||so(at(t)))return;let r=new AbortController,o=setTimeout(()=>r.abort(),iu);o.unref?.();let i=this.transport.accessToken(),s={"content-type":"application/json"};i&&!so(at(i))&&(s.authorization=`Bearer ${at(i)}`);try{await fetch(`${tu(at(t),"/")}${su}`,{method:"POST",headers:s,body:JSON.stringify({schema_version:Sn,fingerprint:this.anonymousId,events:e.map(a=>this.wire(a))}),signal:r.signal})}catch{return}finally{clearTimeout(o)}}wire(e){let t={kind:e.kind};return e.severity&&(t.severity=e.severity),typeof e.at=="number"&&(t.at=e.at),e.props&&(t.props=e.props),t}};var X={SESSION_STARTED:"agent.session.started",SESSION_EXITED:"agent.session.exited",SESSION_CRASHED:"agent.session.crashed",CONFIG_LOADED:"agent.config.loaded",SECRETS_BACKEND_RESOLVED:"agent.secrets.backend_resolved",AUTH_SIGNIN_REQUESTED:"agent.auth.signin_requested",AUTH_SIGNIN_COMPLETED:"agent.auth.signin_completed",AUTH_SIGNOUT:"agent.auth.signout",AUTH_TOKENS_REFRESHED:"agent.auth.tokens_refreshed",SOCKET_CONNECTED:"agent.socket.connected",SOCKET_DISCONNECTED:"agent.socket.disconnected",SOCKET_RETRYING:"agent.socket.retrying",SOCKET_SESSION_READY:"agent.socket.session_ready",SOCKET_SESSION_CONFLICT:"agent.socket.session_conflict",TOOL_CALL_RECEIVED:"agent.tool.call_received"};var au="protects the store only if it leaves this machine; set DLINK_PASSPHRASE or unlock a keychain for local protection";function vs(n){let e=[n.label];n.migratedFrom!==void 0&&e.push(`migrated from ${n.migratedFrom}`),n.degraded&&n.expectedBackend!==void 0&&e.push(`secrets were stored by ${n.expectedBackend}, which is unavailable now`),n.weak&&e.push(au);let t=Es(n);return t.length>0&&e.push(`skipped ${t.join(", ")}`),{ok:!n.weak&&!n.degraded,detail:e.join("; ")}}function Ss(n){let e={backend:n.backend,weak:n.weak,degraded:n.degraded,skipped:Es(n)};return n.migratedFrom!==void 0&&(e.migrated_from=n.migratedFrom),e}function Es(n){return n.attempts.filter(e=>!e.available).map(e=>`${e.id}:${e.reason??"unknown"}`)}var $r=class{name="telemetry-orchestrator";relay;startedAt;reachedReady;toolCalls;context=null;accessToken;relayNegotiated=!1;socketConnected=!1;constructor(){this.startedAt=Date.now(),this.reachedReady=!1,this.toolCalls=0;let e={controlBaseUrl:()=>this.context?.engine.configurationContext.configuration.controlBaseUrl,accessToken:()=>this.accessToken,socketSend:t=>this.context?.bus.emit("ws:tx",{text:t}),socketReady:()=>this.socketConnected&&this.relayNegotiated};this.relay=new Mr(e)}handlers(){return{"config:loaded":()=>{this.relay.capture(X.CONFIG_LOADED)},"auth:signin:requested":()=>{this.relay.capture(X.AUTH_SIGNIN_REQUESTED)},"auth:signin:completed":()=>{this.relay.capture(X.AUTH_SIGNIN_COMPLETED,{seconds_since_start:this.elapsedSec()})},"auth:signout:requested":()=>{this.relay.capture(X.AUTH_SIGNOUT)},"auth:tokens:updated":e=>{this.accessToken=e.accessToken||void 0,this.relay.capture(X.AUTH_TOKENS_REFRESHED)},"ws:connected":()=>{this.socketConnected=!0,this.relay.capture(X.SOCKET_CONNECTED)},"ws:disconnected":e=>{this.socketConnected=!1,this.relayNegotiated=!1,this.relay.capture(X.SOCKET_DISCONNECTED,{code:e.code})},"ws:retrying":e=>{this.relay.capture(X.SOCKET_RETRYING,{attempt:e.attempt,retry_in_sec:e.retryInSec})},"auth:session_init_ack":e=>{this.reachedReady=!0,this.relayNegotiated=e.ok===!0&&He(e.capabilities,G.TELEMETRY_RELAY_V1),this.relay.capture(X.SOCKET_SESSION_READY,{mode:e.ok?e.mode??null:null,reason:e.ok?e.reason??null:null,seconds_since_start:this.elapsedSec()})},"auth:session_conflict":()=>{this.relay.capture(X.SOCKET_SESSION_CONFLICT)},"tool:call":e=>{this.toolCalls+=1,this.relay.capture(X.TOOL_CALL_RECEIVED,{tool:e.tool,call_index:this.toolCalls})},"engine:crashed":e=>{this.relay.capture(X.SESSION_CRASHED,{reason:e.reason,detail:cu(fn(e.detail),{length:200,omission:""})||null,uptime_sec:this.elapsedSec(),reached_session_ready:this.reachedReady,tool_calls:this.toolCalls},"error")}}}async onStart(e){this.context=e,this.relay.capture(X.SESSION_STARTED,{headless:e.headless}),this.relay.capture(X.SECRETS_BACKEND_RESOLVED,{...Ss(e.engine.secretsReport),platform:process.platform})}async onStop(e){this.relay.capture(X.SESSION_EXITED,{uptime_sec:this.elapsedSec(),reached_session_ready:this.reachedReady,tool_calls:this.toolCalls}),await this.relay.shutdown()}elapsedSec(){return Math.round((Date.now()-this.startedAt)/1e3)}};var Ur=class{name="os-signals-orchestrator";sigint;sigterm;async onStart(e){let t=r=>{e.notifier.warn(`received ${r}`,{scope:"system"}),e.engine.requestStop(r)};this.sigint=()=>t("SIGINT"),this.sigterm=()=>t("SIGTERM"),process.on("SIGINT",this.sigint),process.on("SIGTERM",this.sigterm)}async onStarted(e){return Promise.resolve()}async onStop(e){this.sigint&&process.off("SIGINT",this.sigint),this.sigterm&&process.off("SIGTERM",this.sigterm),this.sigint=void 0,this.sigterm=void 0,e.notifier.info("OS signal handlers removed",{scope:"system"})}async onStopped(e){return Promise.resolve()}};import Ve from"node:fs";import lo from"node:path";var Br=class{handlers=new Map;subcommandHandlers=new Map;command(e,t){if(this.handlers.has(e))throw new Error(`Command '${e}' is already registered`);return this.handlers.set(e,t),this}subcommand(e,t,r){this.subcommandHandlers.has(e)||this.subcommandHandlers.set(e,new Map);let o=this.subcommandHandlers.get(e);if(o.has(t))throw new Error(`Subcommand '${e} ${t}' is already registered`);return o.set(t,r),this}commandStringToArgv(e){let t=[],r="",o=!1,i="";for(let s=0;s<e.length;s++){let a=e[s];a==='"'||a==="'"?o&&a===i?(t.push(r),r="",o=!1,i=""):o?r+=a:(r&&(t.push(r),r=""),o=!0,i=a):a===" "&&!o?r&&(t.push(r),r=""):r+=a}return(o||r)&&t.push(r),["node","script",...t]}parseString(e){let t=this.commandStringToArgv(e);return this.parse(t)}parse(e){let t=e.slice(2);if(t.length===0)return null;let r={command:"",args:[],options:{}},o=0;for(;o<t.length&&t[o]?.startsWith("--");)o++;if(o>=t.length||!t[o])return null;for(r.command=t[o],o++;o<t.length&&t[o]?.startsWith("--");)o++;for(o<t.length&&t[o]&&!t[o].startsWith("--")&&(r.subcommand=t[o],o++);o<t.length;){let i=t[o];if(i.startsWith("--")){let s=i.slice(2);if(s.includes("=")){let[a,c]=s.split("=",2);r.options[a]=c||!0}else{let a=t[o+1];a&&!a.startsWith("--")?(r.options[s]=a,o++):r.options[s]=!0}}else r.args.push(i);o++}return r}async execute(e){let t=this.parse(e);if(!t)return!1;if(t.subcommand){let o=this.subcommandHandlers.get(t.command);if(o){let i=o.get(t.subcommand);if(i)return await i(t),!0}}let r=this.handlers.get(t.command);return r?(await r(t),!0):!1}hasCommand(e,t){return t?this.subcommandHandlers.get(e)?.has(t)??!1:this.handlers.has(e)}getCommands(){return Array.from(this.handlers.keys())}};var co=class{kind;payloadJson;constructor(e,t){this.kind=e,this.payloadJson=t}},Kr=class{matchers=[];register(e){return this.matchers.push(e),this}build(e){let t=[e.command.toLowerCase()];e.subcommand&&t.push(e.subcommand.toLowerCase());for(let r of this.matchers){let o=r(t,e);if(o.handled){let i;if(o.job)i=o.job;else if(o.kind)i=this.createCommandInput(o.kind,e);else return null;return i}}return null}createCommandInput(e,t){let r={command:t.command,subcommand:t.subcommand,args:t.args,options:t.options};return new co(e,JSON.stringify(r))}};var jr=class{name="console-orchestrator";commandParser;commandJobBuilder;bridgeConnected=!1;constructor(){this.commandParser=new Br,this.commandJobBuilder=new Kr,this.setupCommandMappings()}onRegister(e){}async onStart(e){e.notifier.info("Starting console orchestrator (UI)",{scope:"system"}),e.on("ws:connected",()=>{this.bridgeConnected=!0}),e.on("ws:disconnected",()=>{this.bridgeConnected=!1}),e.on("console:command",async t=>{try{let r=this.commandParser.parseString(t);if(!r){e.notifier.warn("Invalid command format");return}let o=this.commandJobBuilder.build(r);if(!o){this.reportUnknownCommand(r,e);return}switch(o.kind){case"help":for(let i of Yi())e.notifier.info(i);break;case"start":this.handleStart(e);break;case"stop":this.handleStop(e);break;case"status":this.handleStatus(e);break;case"doctor":this.handleDoctor(e);break;case"roots-list":this.handleRootsList(e);break;case"roots-add":this.handleRootsAdd(r,e);break;case"signin":e.bus.emit("auth:signin:requested",void 0),e.notifier.info("Sign-in requested");break;case"signout":e.bus.emit("auth:signout:requested",void 0),e.notifier.info("Sign-out requested");break;case"debug-on":e.flags.debug=!0,e.bus.emit("runtime:debug:changed",{enabled:!0}),e.notifier.success("Debug mode enabled");break;case"debug-off":e.flags.debug=!1,e.bus.emit("runtime:debug:changed",{enabled:!1}),e.notifier.success("Debug mode disabled");break;case"replace":e.bus.emit("auth:session_conflict:resolve",{choice:"USE_NEW"}),e.notifier.info("Taking over the existing session");break;default:e.notifier.warn(`Command not implemented: ${o.kind}`);break}}catch(r){let o=B(r);e.notifier.error(`Command failed: ${o}`)}})}async onStarted(e){e.notifier.info("Console orchestrator started",{scope:"system"})}async onStopped(e){}reportUnknownCommand(e,t){let r=`${e.command}${e.subcommand?" "+e.subcommand:""}`,o=this.suggestCommand(e.command),i=o?` Did you mean "${o}"?`:' Type "help" for commands.';t.notifier.warn(`Unknown command: ${r}.${i}`)}suggestCommand(e){let t=e.toLowerCase();if(!t)return null;let r=null;for(let i of Wi()){let s=this.editDistance(t,i);(r===null||s<r.distance)&&(r={name:i,distance:s})}if(!r)return null;let o=t.length<=4?1:2;return r.distance<=o?r.name:null}editDistance(e,t){let r=t.length+1,o=Array.from({length:r},(i,s)=>s);for(let i=1;i<=e.length;i++){let s=[i];for(let a=1;a<r;a++){let c=o[a-1]+(e[i-1]===t[a-1]?0:1),l=s[a-1]+1,d=o[a]+1;s[a]=Math.min(c,l,d)}o=s}return o[r-1]}isSignedIn(e){let t=e.tokens?.accessTokenExpSec;return typeof t!="number"?!1:t>Math.floor(Date.now()/1e3)}handleStart(e){let t=e.engine.configurationContext.configuration;if(!t.device?.id){e.notifier.warn("Bridge: no device identity yet. Wait for configuration to load.");return}if(!this.isSignedIn(t)){e.notifier.warn("Bridge: not signed in. Run signin first.");return}if(this.bridgeConnected){e.notifier.info("Bridge is already connected");return}e.bus.emit("auth:ws:reconnect",void 0),e.notifier.info("Bridge start requested")}handleStop(e){if(!this.bridgeConnected){e.notifier.info("Bridge is already disconnected");return}e.bus.emit("ws:disconnect",{reason:"console: stop"}),e.notifier.info("Bridge stop requested")}handleStatus(e){let t=e.engine.configurationContext.configuration,r=[["Agent",ue()],["Engine",String(e.engine.runtime.phase)],["Device",t.device?.id??"(none)"],["Device name",t.device?.name??"(none)"],["Signed in",this.isSignedIn(t)?"yes":"no"],["Bridge",this.bridgeConnected?"connected":"disconnected"],["Control URL",t.controlBaseUrl??"(unset)"],["Bridge URL",t.bridgeWsUrl??"(unset)"],["Directories",String(t.directories.length)],["Config dir",Z()]],o=r.reduce((i,[s])=>Math.max(i,s.length),0);e.notifier.info("Status:");for(let[i,s]of r)e.notifier.info(` ${i.padEnd(o)} ${s}`)}handleDoctor(e){let t=e.engine.configurationContext.configuration,r=[],o=Number.parseInt(process.versions.node.split(".")[0],10);r.push({label:"Node runtime",ok:Number.isFinite(o)&&o>=20,detail:`v${process.versions.node} (requires >= 20)`});let i=Z(),s=!1,a=i;try{Ve.mkdirSync(i,{recursive:!0}),Ve.accessSync(i,Ve.constants.W_OK),s=!0}catch(m){a=`${i} (${B(m)})`}r.push({label:"Config directory",ok:s,detail:a}),r.push({label:"Device identity",ok:!!t.device?.id&&!!t.device?.keys?.public,detail:t.device?.id?`id ${t.device.id}`:"no device id"});let c=this.isSignedIn(t);r.push({label:"Authentication",ok:c,detail:c?"access token valid":"not signed in (run signin)"}),r.push({label:"Control URL",ok:!!t.controlBaseUrl,detail:t.controlBaseUrl??"unset"}),r.push({label:"Bridge URL",ok:!!t.bridgeWsUrl,detail:t.bridgeWsUrl??"unset"});let l=vs(e.engine.secretsReport);r.push({label:"Secret storage",ok:l.ok,detail:l.detail}),r.push({label:"Bridge connection",ok:this.bridgeConnected,detail:this.bridgeConnected?"connected":"disconnected"});let d=t.directories.filter(m=>!Ve.existsSync(m.path));r.push({label:"Shared directories",ok:t.directories.length>0&&d.length===0,detail:t.directories.length===0?"none configured":d.length===0?`${t.directories.length} present`:`missing: ${d.map(m=>m.path).join(", ")}`});let f=r.reduce((m,g)=>Math.max(m,g.label.length),0);e.notifier.info("Doctor:");for(let m of r){let g=` ${m.ok?"PASS":"WARN"} ${m.label.padEnd(f)} ${m.detail}`;m.ok?e.notifier.success(g):e.notifier.warn(g)}let p=r.filter(m=>!m.ok).length;p===0?e.notifier.success("Doctor: all checks passed"):e.notifier.warn(`Doctor: ${p} check(s) need attention`)}handleRootsList(e){let t=e.engine.configurationContext.configuration.directories;if(t.length===0){e.notifier.info("No directories shared. Add one with: roots add <path>");return}e.notifier.info(`Shared directories (${t.length}):`);for(let r of t){let o=Ve.existsSync(r.path)?"":" (missing)";e.notifier.info(` ${r.name} ${r.path}${o}`)}}handleRootsAdd(e,t){let r=e.args[0];if(!r){t.notifier.warn("Usage: roots add <path>");return}let o=lo.resolve(r);if(!Ve.existsSync(o)){t.notifier.warn(`Directory does not exist: ${o}`);return}let i;try{i=Ve.statSync(o)}catch(l){t.notifier.warn(`Cannot read ${o}: ${B(l)}`);return}if(!i.isDirectory()){t.notifier.warn(`Not a directory: ${o}`);return}let s=t.engine.configurationContext.configuration;if(s.directories.some(l=>lo.resolve(l.path).toLowerCase()===o.toLowerCase())){t.notifier.info(`Already shared: ${o}`);return}let c={id:gt(o),name:lo.basename(o),path:o,tag:ht(o)};s.directories.push(c),t.bus.emit("config:save:requested",s),t.bus.emit("meta:data:requested:directories",void 0),t.notifier.success(`Added directory: ${o}`)}setupCommandMappings(){let e=this.commandJobBuilder;e.register(t=>{if(t.length===1){let r=t[0];if(r==="help"||r==="?")return{handled:!0,kind:"help"};if(r==="roots")return{handled:!0,kind:"roots-list"};if(r==="start"||r==="run")return{handled:!0,kind:"start"};if(r==="stop")return{handled:!0,kind:"stop"};if(r==="signin")return{handled:!0,kind:"signin"};if(r==="signout")return{handled:!0,kind:"signout"};if(r==="status")return{handled:!0,kind:"status"};if(r==="doctor")return{handled:!0,kind:"doctor"};if(r==="replace"||r==="yes"||r==="y")return{handled:!0,kind:"replace"}}return{handled:!1}}),e.register(t=>{if(t.length===2){let[r,o]=t;if(r==="roots"){if(o==="add")return{handled:!0,kind:"roots-add"};if(o==="list")return{handled:!0,kind:"roots-list"}}if(r==="debug"){if(o==="on")return{handled:!0,kind:"debug-on"};if(o==="off")return{handled:!0,kind:"debug-off"}}}return{handled:!1}}),e.register((t,r)=>{if(t.length===1&&t[0]==="debug"&&r.args.length>0){let o=r.args[0];if(o==="on")return{handled:!0,kind:"debug-on"};if(o==="off")return{handled:!0,kind:"debug-off"}}return{handled:!1}})}};import qe from"ws";var Vr=class{ws=null;state={kind:"DISCONNECTED"};stopped=!1;connecting=!1;connId=0;connectionTimeout=null;heartbeatInterval=null;heartbeatTimeout=null;awaitingPong=!1;sendQueue=[];url;abortSignal;connectionTimeoutMs;heartbeatIntervalMs;pongTimeoutMs;maxSendQueueSize;sendQueueItemTtlMs;onStateChangeCallback;onErrorCallback;onConnectedCallback;onDisconnectedCallback;onMessageCallback;constructor(e,t={}){this.url=e,this.abortSignal=t.abortSignal,this.connectionTimeoutMs=t.connectionTimeoutMs??1e4,this.heartbeatIntervalMs=t.heartbeatIntervalMs??2e4,this.pongTimeoutMs=t.pongTimeoutMs??1e4,this.maxSendQueueSize=t.maxSendQueueSize??1e3,this.sendQueueItemTtlMs=t.sendQueueItemTtlMs??6e4,this.abortSignal&&this.abortSignal.addEventListener("abort",()=>{this.stop()},{once:!0})}registerOnStateChangeCallback(e){this.onStateChangeCallback=e}registerOnErrorCallback(e){this.onErrorCallback=e}registerOnConnectedCallback(e){this.onConnectedCallback=e}registerOnDisconnectedCallback(e){this.onDisconnectedCallback=e}registerOnMessageCallback(e){this.onMessageCallback=e}getState(){return this.state}getSocket(){return this.ws}isConnected(){return this.ws?.readyState===qe.OPEN}async connect(){if(this.stopped)throw new Error("Socket is stopped");if(!(this.connecting||this.isConnected())){this.connecting=!0,this.updateState({kind:"CONNECTING"});try{await this.connectWebSocketOnce()}catch(e){let t=e instanceof Error?e:new Error(String(e));throw this.onErrorCallback?.(t),this.updateState({kind:"DISCONNECTED"}),t}finally{this.connecting=!1}}}stop(){this.stopped=!0,this.disconnect(!0)}reset(){this.stopped=!1}disconnect(e=!1){e&&(this.stopped=!0),this.connectionTimeout&&(clearTimeout(this.connectionTimeout),this.connectionTimeout=null),this.stopHeartbeat();let t=this.ws;this.ws=null,this.connecting=!1,t&&this.closeGracefullyThenTerminate(t,1e3,"client disconnect",2e3),this.updateState({kind:"DISCONNECTED"})}send(e,t){if(this.stopped){t?.(new Error("Socket is stopped"));return}let r=this.ws;if(r&&r.readyState===qe.OPEN){r.send(e,i=>t?.(i??void 0));return}let o=Date.now();if(this.pruneSendQueue(o),this.sendQueue.length>=this.maxSendQueueSize){t?.(new Error(`Send queue full (max ${this.maxSendQueueSize})`));return}this.sendQueue.push({data:e,cb:t,expiresAt:o+this.sendQueueItemTtlMs})}closeGracefullyThenTerminate(e,t,r,o){try{(e.readyState===qe.OPEN||e.readyState===qe.CONNECTING)&&e.close(t,r)}catch{}let i=setTimeout(()=>{try{e.terminate()}catch{}},o);e.once("close",()=>clearTimeout(i))}async connectWebSocketOnce(){let e=++this.connId;return new Promise((t,r)=>{if(this.stopped){r(new Error("Socket is stopped"));return}let o=!1,i=!1,s=()=>{this.connectionTimeout&&(clearTimeout(this.connectionTimeout),this.connectionTimeout=null)},a=()=>{i||(i=!0,s(),t())},c=(d,f)=>{i||(i=!0,s(),f&&this.closeGracefullyThenTerminate(f,1e3,"connect failed",1500),r(d))},l;try{l=new qe(this.url),this.connectionTimeout=setTimeout(()=>{c(new Error(`Connection timeout: unable to connect to ${this.url} within ${this.connectionTimeoutMs}ms`),l)},this.connectionTimeoutMs),l.on("open",()=>{if(o=!0,e!==this.connId){this.closeGracefullyThenTerminate(l,1e3,"stale connection",500);return}this.ws=l,this.retryResetOnConnect(),this.updateState({kind:"CONNECTED"}),this.onConnectedCallback?.(l),this.startHeartbeat(e),this.flushSendQueue(),a()}),l.on("error",d=>{if(e!==this.connId)return;let f=d instanceof Error?d:new Error(String(d));if(!o&&!i){c(f,l);return}this.onErrorCallback?.(f)}),l.on("close",(d,f)=>{if(e!==this.connId)return;let p=f?.toString?.()||"";if(!o&&!i){this.ws=null,this.stopHeartbeat(),this.updateState({kind:"DISCONNECTED"}),c(new Error(`WebSocket closed before connection established: ${d} ${p}`),l);return}this.ws===l&&(this.ws=null),this.stopHeartbeat(),this.updateState({kind:"DISCONNECTED"}),this.onDisconnectedCallback?.(d,p||`code ${d}`)}),l.on("message",d=>{if(e!==this.connId){this.onErrorCallback?.(new Error("Message ignored - connection ID mismatch"));return}if(this.ws!==l){this.onErrorCallback?.(new Error("Message ignored - socket mismatch"));return}this.onMessageCallback?.(d)}),l.on("pong",()=>{e===this.connId&&(this.awaitingPong=!1,this.heartbeatTimeout&&(clearTimeout(this.heartbeatTimeout),this.heartbeatTimeout=null))}),this.abortSignal&&this.abortSignal.addEventListener("abort",()=>{e===this.connId&&(this.closeGracefullyThenTerminate(l,1e3,"aborted",1e3),i||c(new Error("Connection aborted"),l))},{once:!0})}catch(d){let f=d instanceof Error?d:new Error(String(d));r(f)}})}retryResetOnConnect(){}startHeartbeat(e){this.stopHeartbeat(),this.ws&&(this.awaitingPong=!1,this.heartbeatInterval=setInterval(()=>{if(this.stopped||e!==this.connId)return;let r=this.ws;if(!(!r||r.readyState!==qe.OPEN)){if(this.awaitingPong){this.closeGracefullyThenTerminate(r,4e3,"pong timeout",1e3);return}this.awaitingPong=!0;try{r.ping()}catch{this.closeGracefullyThenTerminate(r,1011,"ping failed",1e3);return}this.heartbeatTimeout&&clearTimeout(this.heartbeatTimeout),this.heartbeatTimeout=setTimeout(()=>{if(e!==this.connId)return;let o=this.ws;o&&this.closeGracefullyThenTerminate(o,4e3,"pong timeout",1e3)},this.pongTimeoutMs)}},this.heartbeatIntervalMs))}stopHeartbeat(){this.awaitingPong=!1,this.heartbeatInterval&&(clearInterval(this.heartbeatInterval),this.heartbeatInterval=null),this.heartbeatTimeout&&(clearTimeout(this.heartbeatTimeout),this.heartbeatTimeout=null)}flushSendQueue(){let e=this.ws;if(!e||e.readyState!==qe.OPEN)return;let t=Date.now();this.pruneSendQueue(t);let r=this.sendQueue;this.sendQueue=[];for(let o of r)e.send(o.data,i=>o.cb?.(i??void 0))}pruneSendQueue(e){if(this.sendQueue.length===0)return;let t=[];for(let r of this.sendQueue)r.expiresAt>=e?t.push(r):r.cb?.(new Error("Send dropped: queued item expired"));this.sendQueue=t}updateState(e){this.state=e,this.onStateChangeCallback?.(e)}};var qr=class{name="websocket-orchestrator";socket=null;stopped=!1;connectLoopInFlight=null;retryAttempt=0;countdownTimer=null;lastUrl=null;endpointSource=void 0;discoveredFailures=0;reconnectPolicy=null;endpointOverride=null;async onStart(e){e.notifier.info("WS: orchestrator started",{scope:"system"})}async onStarted(e){let t=e.engine.configurationContext.configuration;await this.isConnectableToBridge(t,e)&&this.ensureStarted(e,"onStarted")}async onStop(e){this.stopped=!0,this.clearCountdown(),this.socket&&(e.notifier.info("WS: stopping socket (onStop)",{scope:"system"}),this.socket.stop(),this.socket=null),e.notifier.info("WS: orchestrator stopped",{scope:"system"})}handlers(){let e=async(t,r)=>{if(this.stopped)return;let o=r.engine.configurationContext.configuration;await this.isConnectableToBridge(o,r)&&this.ensureStarted(r,t)};return{"config:cache:validated":async(t,r)=>e("config:cache:validated",r),"auth:signout:requested":async(t,r)=>{r.notifier.info("WS: sign-out requested -> disconnecting"),this.stopped=!0,this.clearCountdown(),this.socket?.stop(),this.socket=null},"ws:disconnect":async(t,r)=>{r.notifier.info("WS: disconnect requested",{scope:"system"}),this.stopped=!0,this.clearCountdown(),this.socket?.stop(),this.socket=null},"auth:ws:reconnect":async(t,r)=>{r.notifier.info("WS: reconnect requested by auth",{scope:"system"}),this.retryAttempt=0,this.clearCountdown(),this.stopped=!0,this.socket?.stop(),this.connectLoopInFlight&&await this.connectLoopInFlight.catch(()=>{}),this.socket=null,this.stopped=!1,this.ensureStarted(r,"auth:ws:reconnect")},"ws:reconnect:policy":async(t,r)=>{this.reconnectPolicy=t,r.notifier.info(`WS: reconnect policy reconnect=${t.reconnect} delay_ms=${t.delayMs??"-"} url=${t.url??"-"} rediscover=${t.rediscover===!0}`,{scope:"system"})},"ws:tx":async(t,r)=>{let o=this.socket?.getSocket();if(!o||o.readyState!==1){r.notifier.info("WS: TX dropped (not connected)",{scope:"system"});return}o.send(t.text)}}}ensureStarted(e,t){if(this.connectLoopInFlight){e.notifier.info(`WS: connect loop already running (reason=${t})`,{scope:"system"});return}let r=this.socket?.getSocket();if(r&&r.readyState<=1){e.notifier.info(`WS: already connected/connecting, skipping (reason=${t})`,{scope:"system"});return}this.connectLoopInFlight=this.startOrJoinConnectLoop(e,t).finally(()=>{this.connectLoopInFlight=null})}resolveEndpoint(e){let t=e.engine.configurationContext.loader,r=e.engine.configurationContext.configuration,o=t.resolveBridgeWsUrl(r.discovery);return this.endpointOverride&&(o.source==="discovered"||o.source==="bundled"||o.source===void 0)?{url:this.endpointOverride,source:"discovered"}:o}applyEndpointOverride(e,t){e&&(this.endpointOverride=e,t.notifier.info(`WS: server directed the next connection to ${e}`,{scope:"system"}))}async reconnectAfter(e,t){this.retryAttempt=0,this.clearCountdown(),e>0&&await yt(e),!this.stopped&&this.ensureStarted(t,"socket:disconnected")}noteConnectFailure(e){return this.endpointSource!=="discovered"?(this.discoveredFailures=0,!1):(this.discoveredFailures+=1,this.discoveredFailures<wn?!1:(this.discoveredFailures=0,this.endpointOverride=null,e.notifier.info(`WS: discovered endpoint failed ${wn}x -> falling back to the bundled endpoint`,{scope:"system"}),e.bus.emit("discovery:cache:discarded",{reason:"connect-failed-twice"}),!0))}async startOrJoinConnectLoop(e,t){this.stopped=!1;let r=e.engine.configurationContext.configuration;if(!await this.isConnectableToBridge(r,e))return;let i=this.resolveEndpoint(e),s=String(i.url??r.bridgeWsUrl),a=this.lastUrl;if(this.endpointSource=i.source,this.lastUrl=s,e.notifier.info(`WS: ensure connection (reason=${t}) url=${s} source=${this.endpointSource??"config"}`,{scope:"system"}),this.socket&&a!==null&&a!==s&&(e.notifier.info(`WS: endpoint changed ${a} -> ${s}; rebuilding the socket`,{scope:"system"}),this.socket.stop(),this.socket=null),!this.socket){let c=new Vr(s,{abortSignal:e.signal,connectionTimeoutMs:1e4,heartbeatIntervalMs:2e4,pongTimeoutMs:1e4});this.socket=c,c.registerOnStateChangeCallback(l=>this.handleStateChange(l,e)),c.registerOnErrorCallback(l=>{e.notifier.error(`WS: transport error: ${l.message}`)}),c.registerOnConnectedCallback(l=>{this.socket===c&&(this.retryAttempt=0,this.clearCountdown(),e.notifier.success(e.flags.debug?`WS: connected (${s})`:"WS: connected"),e.bus.emit("ws:connected",{url:s,attempt:0}))}),c.registerOnDisconnectedCallback((l,d)=>{if(this.socket!==c){e.notifier.info(`WS: ignoring stale disconnect (code=${l})`,{scope:"system"});return}if(e.notifier.warn(`WS: disconnected code=${l} reason=${d||"-"}`),e.bus.emit("ws:disconnected",{code:l,reason:d}),this.stopped){e.notifier.info(`WS: stopped flag set, skipping auto-reconnect (code=${l})`,{scope:"system"});return}if(l===4001){e.notifier.info("WS: auth disconnect (4001) -> waiting for auth",{scope:"system"});return}if(l===4011){this.stopped=!0,this.socket?.stop(),this.socket=null;return}if(l===4013||l===4014){e.notifier.error(`This agent is not accepted by the server (code=${l} ${d||"-"}). Upgrade with: npm i -g @devicelink/dlink`),this.stopped=!0,this.socket?.stop(),this.socket=null;return}let f=this.reconnectPolicy;if(this.reconnectPolicy=null,f&&!f.reconnect){e.notifier.info("WS: server asked us not to reconnect",{scope:"system"}),this.stopped=!0,this.socket?.stop(),this.socket=null;return}if(f){this.applyEndpointOverride(f.url,e),this.reconnectAfter(f.delayMs??0,e);return}this.ensureStarted(e,"socket:disconnected")}),c.registerOnMessageCallback(l=>{if(this.socket!==c)return;let d=typeof l=="string"?l:l.toString("utf8");e.bus.emit("ws:rx",{text:d})})}for(;!this.stopped;)try{let c=this.retryAttempt+1;e.notifier.info(`WS: connecting attempt #${c} to ${s}`,{scope:"system",groupKey:"ws:connecting"}),e.bus.emit("ws:connecting",{url:s,attempt:c}),await this.socket.connect();return}catch(c){if(this.stopped)return;if(this.retryAttempt+=1,this.noteConnectFailure(e)){this.socket?.stop(),this.socket=null,this.retryAttempt=0,this.clearCountdown(),e.bus.emit("ws:retrying",{retryInSec:1,attempt:0}),this.ensureStartedSoon(e);return}let l=this.computeBackoffMs(this.retryAttempt),d=Math.max(1,Math.ceil(l/1e3)),f=B(c);e.notifier.warn(`WS: connect failed (attempt=${this.retryAttempt}) -> retry in ${d}s (${f})`,{scope:"system",category:["websocket-connect"],groupKey:"ws:connect-retry"});let p={retryInSec:d,attempt:this.retryAttempt};e.bus.emit("ws:retrying",p),this.startCountdown(d,e),await this.interruptibleSleep(l)}}async isConnectableToBridge(e,t){if(!e.device?.id)return t.notifier.error("WS: cannot connect: device.id missing"),!1;if(!e.bridgeWsUrl)return t.notifier.error("WS: cannot connect: bridgeWsUrl missing"),!1;if(!e.device?.keys?.public)return t.notifier.error("WS: cannot connect: device public key missing"),!1;let r=await t.engine.secrets.get("refreshToken");return!!r.ok&&!!r.value?!0:(t.notifier.warn("WS: not connecting (no tokens). Run signin."),!1)}handleStateChange(e,t){e.kind==="CONNECTING"&&t.notifier.info(`WS: state CONNECTING (url=${this.lastUrl})`,{scope:"system"}),e.kind==="CONNECTED"&&t.notifier.info(`WS: state CONNECTED (url=${this.lastUrl})`,{scope:"system"}),e.kind==="DISCONNECTED"&&t.notifier.info(`WS: state DISCONNECTED (url=${this.lastUrl})`,{scope:"system"})}computeBackoffMs(e){let t=Math.min(3e4,1e3*Math.pow(2,Math.min(e-1,5))),r=t*(.2*(Math.random()*2-1));return Math.max(250,Math.floor(t+r))}startCountdown(e,t){this.clearCountdown();let r=e;this.countdownTimer=setInterval(()=>{if(r-=1,r<=0){this.clearCountdown();return}let o={retryInSec:r,attempt:this.retryAttempt};t.bus.emit("ws:retrying",o)},1e3)}clearCountdown(){this.countdownTimer&&(clearInterval(this.countdownTimer),this.countdownTimer=null)}async ensureStartedSoon(e){await yt(250),!this.stopped&&this.ensureStarted(e,"socket:disconnected")}async interruptibleSleep(e){let r=Date.now();for(;Date.now()-r<e;){if(this.stopped)return;await yt(100)}}};import _s from"node:fs";import du from"node:path";var Wr=class{static save(e){let t=this.getApplicationConfigFolder(),r=du.join(t,"config.json"),o=this.stripSecrets(e);return _s.mkdirSync(t,{recursive:!0}),_s.writeFileSync(r,JSON.stringify(o,null,2),"utf8"),r}static stripSecrets(e){let t=e.device?{id:e.device.id,name:e.device.name,tag:e.device.tag,keys:{public:e.device.keys.public}}:void 0,r=e.tokens?{accessTokenExpSec:e.tokens.accessTokenExpSec}:void 0;return{...e,device:t,tokens:r}}static getApplicationConfigFolder(){return Z()}};var Gr=class{name="main-orchestrator";bootStarted=!1;saveTimer=null;saveInFlight=null;latestConfigToSave=null;saveDebounceMs=500;async onStop(e){await this.flushSaveOnStop()}handlers(){return{"ui:initialized":async(e,t)=>{this.bootStarted||(this.bootStarted=!0,t.engine.setPhase("booting"),t.notifier.info("Booting..."),t.engine.dispatch(_i(new Rr)))},"config:save:requested":async(e,t)=>{this.latestConfigToSave=e,this.saveTimer&&clearTimeout(this.saveTimer),this.saveTimer=setTimeout(()=>{this.performSave(t)},this.saveDebounceMs)}}}async performSave(e){this.saveInFlight||(this.saveInFlight=(async()=>{for(;this.latestConfigToSave;){let t=this.latestConfigToSave;this.latestConfigToSave=null;try{let r=Wr.save(t);e.notifier.info(`Config saved to: ${r}`,{scope:"system"}),e.bus.emit("config:saved",void 0)}catch(r){let o=B(r);e.notifier.error(`Failed to save configuration: ${o}`)}}})().finally(()=>{this.saveInFlight=null}),await this.saveInFlight)}async flushSaveOnStop(){this.saveTimer&&(clearTimeout(this.saveTimer),this.saveTimer=null)}};import{decodeJwt as Cu}from"jose";import uo from"node:crypto";var ks={invalid_enrollment_token:"Enrollment key is invalid or could not be verified (wrong controller URL, bad signature, or server signing keys do not match the key issuer).",invalid_enrollment_scope:"Enrollment key does not match this device account or organization membership.",enrollment_jwt_expired:"This enrollment key file has expired (JWT). Issue a new key under Organization \u2192 Devices and update ENROLMENT_KEY / your .devicelink file.",enrollment_ticket_invalid:"Enrollment key could not be accepted (already used, expired, or out of sync). Issue a new key under Organization \u2192 Devices.",enrollment_ticket_already_used:"This enrollment key was already used (single-use). Issue a new key under Organization \u2192 Devices.",enrollment_ticket_expired:"This enrollment key has expired. Issue a new key under Organization \u2192 Devices.",server_misconfigured:"Server cannot verify enrollment keys (OAuth keys missing on controller).",enrollment_start_failed:"Device enrollment failed. See controller logs."};function pu(n){if(typeof n!="object"||n===null)return;let e=n;if(e.body&&typeof e.body=="object"&&e.body!==null&&"error"in e.body){let t=e.body.error;if(typeof t=="string")return t}if(n instanceof Error){let t=n.message.match(/"error"\s*:\s*"([^"]+)"/);if(t?.[1])return t[1]}}function Ts(n){let e=pu(n);return e&&ks[e]?ks[e]:e?`Enrollment failed (${e}). ${B(n)}`:B(n)}var wt=class{timeout=null;interval=null;totalSec=0;remainingSec=0;stepSec=1;task=null;stepCb=null;setStep(e){return this.stepSec=Math.max(1,e),this}schedule(e,t){return this.task=e,this.totalSec=t,this.remainingSec=t,this}onStep(e){return this.stepCb=e,this}start(){return this.clear(),this.remainingSec<=0?(this.runTask(),this):(this.stepCb?.(this.stepSec,this.remainingSec),this.interval=setInterval(()=>{this.remainingSec-=this.stepSec,this.remainingSec<=0?this.runTask():this.stepCb?.(this.stepSec,this.remainingSec)},this.stepSec*1e3),this)}stop(){return this.clear(),this}restart(){return this.remainingSec=this.totalSec,this.start()}runTask(){if(this.clear(),this.task)try{this.task()}catch(e){throw new Error(`Scheduler task failed: ${e}`)}}clear(){this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.interval&&(clearInterval(this.interval),this.interval=null)}};function ws(n){let{retryAfterSec:e}=n;if(typeof e=="number"&&Number.isFinite(e)&&e>=0)return{delayMs:Math.min(n.retryAfterMaxSec*1e3,Math.max(n.retryAfterMinSec*1e3,e*1e3)),honoredRetryAfter:!0};let r=Math.max(1,n.attempt),o=Math.min(r-1,n.maxDoublings),i=n.baseSec*Math.pow(2,o);return{delayMs:Math.min(n.ceilingSec*1e3,(i+n.jitterSec)*1e3),honoredRetryAfter:!1}}var fu=["off","notify","stage","apply_when_idle","required"];function mu(n){return n===void 0?"off":fu.find(t=>t===n)??"notify"}var hu={action:"none",target:null,belowFloor:!1,message:null,url:null};function Rt(n){return{...hu,reason:n}}function gu(n){let{currentVersion:e,guidance:t,autoUpdateEnabled:r}=n;if(!t)return Rt("no guidance from server");let o=mu(t.update_policy);if(o==="off")return Rt("policy off");if(!ve(e))return Rt("current version unreadable");let s=t.min_agent_version??null,a=t.target_agent_version??null,c=t.upgrade_message??null,l=t.upgrade_url??null,d=s!==null&&mn(e,s),f=a??s;if(!f||!ve(f))return Rt("no usable target version");if(zt(e,f)>=0)return Rt("already at or above the target");let p={target:f,belowFloor:d,message:c,url:l};return d?{...p,action:"required",reason:"below the minimum version"}:r?hn(e,f)?o==="notify"?{...p,action:"notify",reason:"policy notify"}:o==="stage"?{...p,action:"stage",reason:"policy stage"}:o==="apply_when_idle"?{...p,action:"apply_when_idle",reason:"policy apply_when_idle"}:{...p,action:"required",reason:"policy required"}:{...p,action:"notify",reason:"major version change is not applied automatically"}:{...p,action:"notify",reason:"automatic updates disabled locally"}}function Rs(n,e){let t=gu(e);if(t.action==="none")return t;let r=yu(t,String(e.currentVersion));return t.belowFloor?n.error(r):n.warn(r),t}function yu(n,e){if(n.action==="none")return"";let t=n.target??"a newer version",r=n.belowFloor?`This agent (${e}) is below the minimum version the server accepts (${t}).`:`A newer agent is available (${e} -> ${t}).`,o=n.message?` ${n.message}`:"",i=n.url?` See ${n.url}`:"";return`${r}${o}${i}`}var bu=15e3,vu=2e3,Su=12e3,Eu=0,Cs=6e4,_u=250,xs="This device is being replaced by another connection. Finishing in-flight operations...",As="Device replaced by new connection. Disconnecting.",ku="Reconnecting to DeviceLink\u2026";function Tu(n){return typeof n!="string"?"SERVER_DRAINING":Wo.find(t=>t===n)??"SERVER_DRAINING"}function wu(n){let e=typeof n=="number"&&Number.isFinite(n)?n:0,t=Math.min(e,bu);return Math.max(0,Math.min(t-vu,Su))}function Ru(n,e=Math.random){let t=typeof n=="number"&&Number.isFinite(n)?n:0,r=Math.min(Cs,Math.max(Eu,Math.floor(t))),o=Math.max(_u,Math.floor(r*.25)),i=r+Math.floor(e()*o);return Math.min(Cs,i)}function Ds(n,e){let t=Tu(n.reason),r=typeof n.reason=="string"?n.reason:"",o=wu(n.deadline_ms);if(!e.quiesceV2)return{reason:t,reasonAsSent:r,drainWindowMs:o,reconnect:!0,rediscover:!1,startMessage:xs,endMessage:As};let i=n.reconnect,a=typeof i?.after_ms=="number"?Ru(i?.after_ms,e.random):void 0,c=i?.url,l=nr(c,e.env)?String(c):void 0,d={reason:t,reasonAsSent:r,drainWindowMs:o,reconnect:!0,rediscover:i?.discover===!0,reconnectDelayMs:a,reconnectUrl:l};return t==="SESSION_REPLACED"?{...d,reconnect:!1,reconnectDelayMs:void 0,reconnectUrl:void 0,rediscover:!1,startMessage:xs,endMessage:As}:t==="SERVER_DRAINING"?{...d,startMessage:r==="SERVER_DRAINING"?ku:void 0}:t==="ENDPOINT_MOVED"?{...d,rediscover:!0}:d}var Is="BAD_TS",xu=10,Hr=class{name="auth-orchestrator";phase="IDLE";connectionId=null;sessionId=null;accessToken;rejectedByConflict=!1;negotiatedCapabilities=[];refreshGroupKey="auth:refresh";refreshCycle=0;refreshScheduler=null;refreshRetryScheduler=null;refreshRetryAttempt=0;lastRefreshPlan;refreshInFlight;conflictTimer=null;pendingConflictRequest=null;signinStarted=!1;async onStart(e){e.notifier.info("Auth orchestrator started",{scope:"system"})}async onStop(e){this.clearTimers(),this.resetConnectionState(),e.notifier.info("Auth orchestrator stopped",{scope:"system"})}handlers(){return{"config:loaded":this.onEventConfigLoaded.bind(this),"config:cache:validated":this.onEventConfigCacheValidated.bind(this),"auth:signin:requested":this.onEventAuthSigninRequested.bind(this),"auth:signin:completed":async(e,t)=>{t.notifier.info("Auth: signin completed; requesting ws reconnect",{scope:"system"}),this.rejectedByConflict=!1,this.refreshRetryScheduler&&(this.refreshRetryScheduler.stop(),this.refreshRetryScheduler=null),this.ensureAccessExpPersisted(t,"signin"),await this.ensureRefreshScheduling(t,"signin"),t.bus.emit("auth:ws:reconnect",void 0)},"auth:signout:requested":async(e,t)=>{t.notifier.info("Signing out\u2026"),this.clearTimers(),this.accessToken=void 0;try{await t.engine.secrets.delete("refreshToken")}catch{}let o={...t.engine.configurationContext.configuration,tokens:void 0};t.engine.applyConfiguration(o),t.bus.emit("config:save:requested",o),this.resetConnectionState(),t.engine.setPhase("idle"),t.bus.emit("auth:tokens:updated",{accessToken:"",refreshToken:"",expSec:void 0}),t.bus.emit("ws:disconnect",{reason:"signout"}),t.notifier.success("Signed out successfully")},"auth:session_conflict:resolve":async(e,t)=>{this.sendSessionConflictResolve(t,e.choice)},"ws:connected":async(e,t)=>{this.resetConnectionState();let r=await t.engine.secrets.get("refreshToken"),o=!!r.ok&&!!r.value,i=!!this.accessToken;if(t.notifier.info(`Auth: ws connected; tokens access=${i} refresh=${o}`,{scope:"system"}),!i&&!o){t.notifier.warn("Auth: no tokens; run signin");return}await this.sendConnect(t)},"ws:rx":async(e,t)=>{this.onInbound(e.text,t)},"ws:disconnected":async(e,t)=>{if(t.notifier.warn(`Auth: ws disconnected code=${e.code} reason=${e.reason??"-"}`,{scope:"system"}),this.resetConnectionState(),e.code===4011){t.notifier.warn('Connection rejected - another device is active on this workspace. Run "signin" to try again.'),this.rejectedByConflict=!0,t.bus.emit("ws:disconnect",{reason:"REPLACEMENT_REJECTED"});return}if(e.code===4001){let r=await t.engine.secrets.get("refreshToken");if(!r.ok||!r.value){t.notifier.warn("Auth: token invalid and no refresh; please sign in"),await this.teardownTokens(t,"AUTH_REQUIRED");return}await this.requestRefresh(t,{force:!0,reason:"ws_4001"})&&t.bus.emit("auth:ws:reconnect",void 0)}}}}async onEventConfigLoaded(e,t){if(t.notifier.info("Initializing with cached configuration",{scope:"system"}),!e.device?.id){t.notifier.error("Device ID is not available");return}if(!e.device.keys?.public){t.notifier.error("Device public key is not available");return}t.bus.emit("config:cache:validated",void 0)}async onEventConfigCacheValidated(e,t){this.ensureAccessExpPersisted(t,"boot"),await this.ensureRefreshScheduling(t,"boot");let r=await t.engine.secrets.get("refreshToken"),o=!!r.ok&&!!r.value,i=!!this.accessToken,s=this.isAccessLikelyUsable(t);if(t.notifier.info(`Auth: cache validated; access=${i} refresh=${o} accessOk=${s}`,{scope:"system"}),!i&&!o){if(t.headless&&await Ki(t.engine.argv.enrollmentFile)){t.notifier.info("Headless: enrollment certificate present; starting device authorization (approve the pending request under Organization \u2192 Devices).",{scope:"system"}),t.bus.emit("auth:signin:requested",void 0);return}t.notifier.warn("Auth: not signed in; run signin");return}}isAccessLikelyUsable(e){let t=this.accessToken;if(!t)return!1;let o=e.engine.configurationContext.configuration?.tokens?.accessTokenExpSec??this.tryDecodeExp(t);if(!o)return!0;let i=Math.floor(Date.now()/1e3);return o>i}async waitForApproval(e,t,r){let o=Date.now()+t.expires_in*1e3;r.notifier.info("Waiting for approval... (streaming)",{scope:"system"});try{return await e.deviceAuthStream({deviceCode:t.device_code,timeoutMs:Math.max(1e3,o-Date.now()),signal:r.signal})}catch(i){let s=i instanceof Error?i.message:String(i);return r.notifier.error(`Failed to wait for approval: ${s}`),null}}async onEventAuthSigninRequested(e,t){if(this.signinStarted){t.notifier.warn("Sign-in already in progress",{scope:"system"});return}this.signinStarted=!0;try{let r=t.engine.configurationContext.configuration;if(!r.controlBaseUrl){t.notifier.error("Control base URL is not set");return}if(!r.device?.id){t.notifier.error("Device ID is not available");return}if(!r.device.keys?.public){t.notifier.error("Device public key is not available");return}let o=await t.engine.secrets.get("devicePrivateKey");if(!o.ok||!o.value){t.notifier.error("Device private key is not available (secret storage)");return}let i=o.value,s=r.device.name,a=process.platform,c=r.device.keys.public,l=cn(c),d=new et(r,t.notifier);t.notifier.info("Starting device authentication...");let f=await ji(t.engine.argv.enrollmentFile),p;if(f.ok){t.notifier.info(t.engine.argv.enrollmentFile?"Using enrollment key from --enrollment-file":"Using ENROLMENT_KEY / DLINK_ENROLMENT_KEY from environment",{scope:"system"});try{p=await d.deviceEnrollmentStart({device_id:r.device.id,device_name:s,platform:a,agent_version:ue(),public_key_pem:c,enrollment_jws:f.jws})}catch(E){t.notifier.error(Ts(E),{scope:"system"});return}t.notifier.info("Approve this device in the dashboard: Organization \u2192 Devices (pending), or use the verification link below.",{scope:"system"})}else{if(f.error!=="not_configured"){t.notifier.error(f.error==="empty_file"?"Enrollment key is empty":`Could not load enrollment key: ${f.error}`);return}p=await d.deviceAuthStart({device_id:r.device.id,device_name:s,platform:a,agent_version:ue(),public_key_pem:c})}t.notifier.info("DeviceLink sign-in"),t.notifier.info(`User code: ${p.user_code}`),t.notifier.info(`Device fingerprint: ${l}`),t.notifier.info(`Verification URL: ${p.verification_uri_complete}`);let m=await this.waitForApproval(d,p,t);if(!m)return;if("error"in m){if(m.error==="access_denied"){t.notifier.error("Sign-in denied in browser.");return}if(m.error==="expired_token"){t.notifier.error("Sign-in expired. Run `signin` again.");return}t.notifier.error(`Unexpected error: ${m.error}`);return}if(m.status!=="approved"){t.notifier.error(`Unexpected status: ${m.status}`);return}if(m.needs_proof){t.notifier.info("Sending proof-of-possession signature...",{scope:"system"});let E=uo.createPrivateKey(i),k=Buffer.from(p.challenge,"base64url"),S=uo.sign(null,k,E).toString("base64");await d.deviceAuthProve({device_code:p.device_code,challenge_id:p.challenge_id,challenge:p.challenge,signature_b64:S}),t.notifier.info("Proof-of-possession verified",{scope:"system"})}t.notifier.info("Fetching tokens...",{scope:"system"});let g=await d.deviceAuthToken({device_code:p.device_code,install_id:ao()?Lr():void 0}),h=Cn(g.endpoints);h&&t.bus.emit("discovery:document:received",{document:h,source:"token"});let y="tag";await t.engine.secrets.set("refreshToken",g.refresh_token),this.accessToken=g.access_token;let _=this.tryDecodeExp(g.access_token),b={...r,controlBaseUrl:r.controlBaseUrl,device:{...r.device,id:g.device_id,name:s,tag:y,keys:{public:c}},tokens:{...r.tokens??{},accessTokenExpSec:_??void 0}};t.engine.applyConfiguration(b),t.bus.emit("config:save:requested",b),t.bus.emit("auth:signin:completed",void 0),t.notifier.success("Signed in successfully \u2705")}catch(r){let o=fe(r);if(o&&["ECONNREFUSED","ENOTFOUND","ETIMEDOUT"].includes(o)){t.notifier.error(`Network error: ${B(r)}`);return}t.notifier.error(`Sign-in failed: ${B(r)}`)}finally{this.signinStarted=!1}}async sendConnect(e){let r=e.engine.configurationContext.configuration.device,o=await e.engine.secrets.get("devicePrivateKey");if(!r?.id||!o.ok||!o.value){e.notifier.warn("Cannot connect: device not configured");return}let i=o.value,s=await e.engine.secrets.get("refreshToken"),a=s.ok?s.value:void 0,c=Date.now(),l=uo.randomBytes(16).toString("base64url"),d=ln({deviceId:r.id,ts:c,nonce:l,privateKeyPem:i}),f={type:"connect",device_id:r.id,agent_version:ue(),protocol_version:2,capabilities:[...qo],ts:c,nonce:l,sig:d,platform:process.platform,hostname:r.name,device_tag:r.tag,access_token:this.accessToken,refresh_token:a,public_key_pem:r.keys.public};this.phase="CONNECT_SENT",e.notifier.info("Auth: sending connect",{scope:"system"}),this.send(e,f)}async sendSessionInit(e,t){let o=e.engine.configurationContext.configuration.device;if(!o?.id||!this.sessionId){e.notifier.error("Cannot send session_init: device ID or session ID not available");return}let i={type:"session_init",device_id:o.id,session_id:this.sessionId};this.phase="WAIT_SESSION_INIT_ACK",e.notifier.info("Auth: sending session_init",{scope:"system"}),this.send(e,i)}onInbound(e,t){let r;try{r=JSON.parse(e)}catch{t.notifier.error("Unexpected message format");return}let o=tr(r);if(!Yo(o)){t.notifier.info(`Auth: ignoring unknown message type ${o??"(none)"}`,{scope:"system"});return}let i=zo.safeParse(r);if(!i.success){let a=i.error.message;t.notifier.error(`Unexpected message format: ${a}`);return}let s=i.data;switch(s.type){case"connect_ack":t.bus.emit("auth:connect_ack",s),this.onConnectAck(t,s);return;case"session_init_ack":t.bus.emit("auth:session_init_ack",s),this.onSessionInitAck(t,s);return;case"disconnect_notice":this.onDisconnectNotice(t,s);return;case"session_conflict":t.bus.emit("auth:session_conflict",s),this.handleSessionConflict(t,s);return;case"quiesce":this.handleQuiesce(t,s);return;default:return}}async handleSessionConflict(e,t){this.conflictTimer&&(clearTimeout(this.conflictTimer),this.conflictTimer=null),this.pendingConflictRequest=t,e.notifier.warn(`Another device is already connected to this workspace. Type "replace" to disconnect it, or this connection will be rejected in ${Math.round(t.deadline_ms/1e3)}s.`);let r=Math.min(t.deadline_ms,15e3);this.conflictTimer=setTimeout(()=>{this.conflictTimer=null,this.pendingConflictRequest?.new_session_id===t.new_session_id&&(e.notifier.info("No response - keeping existing device connected."),this.sendSessionConflictResolve(e,"KEEP_OLD"))},r)}async handleQuiesce(e,t){let r=Ds(t,{quiesceV2:this.sessionHas(G.QUIESCE_V2)});if(e.notifier.info(`Auth: quiesce reason=${r.reasonAsSent||"(none)"} handled_as=${r.reason} reconnect=${r.reconnect} drain_ms=${r.drainWindowMs}`,{scope:"system"}),r.startMessage&&e.notifier.warn(r.startMessage),e.engine.hasRunningJobs?.()??!1){let i=Date.now();for(;Date.now()-i<r.drainWindowMs&&(e.engine.hasRunningJobs?.()??!1);)await new Promise(s=>setTimeout(s,500))}e.bus.emit("ws:reconnect:policy",{reconnect:r.reconnect,delayMs:r.reconnectDelayMs,url:r.reconnectUrl,rediscover:r.rediscover}),r.rediscover&&e.bus.emit("discovery:refresh:requested",{reason:`quiesce:${r.reason}`});let o=e.engine.hasRunningJobs?.()??!1?"BUSY":"IDLE";this.send(e,{type:"quiesce_ack",session_id:t.session_id,status:o}),r.endMessage&&e.notifier.info(r.endMessage)}sendSessionConflictResolve(e,t){let r=this.pendingConflictRequest;r&&(this.conflictTimer&&(clearTimeout(this.conflictTimer),this.conflictTimer=null),this.pendingConflictRequest=null,this.send(e,{type:"session_conflict_resolve",device_id:r.device_id,new_session_id:r.new_session_id,choice:t}))}async onConnectAck(e,t){if(!t.ok){e.notifier.error(`Connect rejected: ${t.error.code} ${t.error.message}`),this.phase="IDLE";return}this.sessionId=t.session_id;let r=t.auth.access_token;if(e.notifier.info(`Auth: connect_ack ok auth.access=${r} next=[${t.next.join(",")}]`,{scope:"system"}),t.next.includes("refresh_access_token")){let o=await e.engine.secrets.get("refreshToken");if(!o.ok||!o.value){e.notifier.warn("Auth: server requested refresh but no refresh token; please sign in"),await this.teardownTokens(e,"NO_REFRESH_TOKEN");return}await this.requestRefresh(e,{force:!0,reason:"connect_ack_next"})?e.bus.emit("auth:ws:reconnect",void 0):e.notifier.warn("Auth: refresh failed; please sign in");return}if(t.next.includes("session_init")){await this.sendSessionInit(e,t);return}if(r==="invalid"||r==="missing"){e.notifier.warn("Auth: access token invalid; please sign in again"),await this.teardownTokens(e,"INVALID_ACCESS");return}e.notifier.warn("Auth: connect_ack had no next; staying idle",{scope:"system"})}onSessionInitAck(e,t){if(!t.ok){e.notifier.error(`Session init failed: ${t.error.code} ${t.error.message}`),t.error.code==="AGENT_BELOW_MINIMUM"&&this.surfaceUpdateGuidance(e,t),this.phase="IDLE";return}this.sessionId=t.session_id,this.phase="READY",this.negotiatedCapabilities=Array.isArray(t.capabilities)?[...t.capabilities]:[],e.notifier.success(`Session ready (${t.mode})`),e.notifier.info(`Auth: session capabilities=[${this.negotiatedCapabilities.join(",")}]`,{scope:"system"}),this.surfaceUpdateGuidance(e,t),this.ensureRefreshScheduling(e,"manual").catch(r=>{e.notifier.error(`Auth: refresh scheduling failed after session_init_ack: ${r instanceof Error?r.message:String(r)}`,{scope:"system",category:["token-refresh"]})}),t.next&&(t.next.includes("tools_publish")&&e.bus.emit("meta:data:requested:tools",void 0),t.next.includes("directories_publish")&&e.bus.emit("meta:data:requested:directories",void 0))}surfaceUpdateGuidance(e,t){return Rs({warn:o=>e.notifier.warn(o),error:o=>e.notifier.error(o)},{currentVersion:ue(),guidance:t,autoUpdateEnabled:_t("DLINK_AUTO_UPDATE",!0)})}onDisconnectNotice(e,t){e.notifier.warn(`Server disconnect_notice: ${t.reason} (code=${t.code})`)}async requestRefresh(e,t){return this.refreshInFlight?this.refreshInFlight:(this.refreshInFlight=(async()=>{try{return await this.withTimeout(this.dispatchRefreshJob(e,t),6e4,"Refresh operation")}catch(r){throw r instanceof Error&&r.message.includes("timed out")&&e.notifier.error(`Auth: refresh timed out: ${r.message}`,{category:["token-refresh"],groupKey:"auth:refresh-failure"}),r}finally{this.refreshInFlight=void 0}})(),this.refreshInFlight)}async withTimeout(e,t,r){return Promise.race([e,new Promise((o,i)=>{setTimeout(()=>{i(new Error(`${r} timed out after ${t}ms`))},t)})])}async dispatchRefreshJob(e,t){let r=await e.engine.secrets.get("refreshToken");if(!r.ok||!r.value)return!1;if(!t.force){let a=await this.shouldRefreshNow(e);if(!a.ok)return e.notifier.info(`Auth: skip refresh (${a.reason})`,{scope:"system",category:["token-refresh"]}),!1}e.notifier.info(`Auth: dispatch refresh job (${t.reason})`,{scope:"system",category:["token-refresh"]});let o=Oi(new Cr(t.reason)),i=await e.engine.dispatch(o);if(e.notifier.info(`Auth: refresh job dispatch completed (status=${i.status})`,{scope:"system",category:["token-refresh"]}),i.status!=="success"){let a=i.error?.message??"Unknown error";e.notifier.error(`Auth: refresh job failed: ${a}`,{category:["token-refresh"],groupKey:"auth:refresh-failure"});let c=i.output;return c?.errorCode&&Wn.includes(c.errorCode)?(await this.teardownTokens(e,c.errorCode),!1):(this.scheduleRefreshRetry(e,t.reason,c?.retryAfterSec,c?.errorCode,c?.driftMs),!1)}let s=i.output;if(!s.ok||!s.accessToken){let a=s.error??"Unknown refresh failure";return e.notifier.error(`Auth: refresh failed: ${a}`,{category:["token-refresh"],groupKey:"auth:refresh-failure"}),s.errorCode&&Wn.includes(s.errorCode)?(await this.teardownTokens(e,s.errorCode),!1):(this.scheduleRefreshRetry(e,t.reason,s.retryAfterSec,s.errorCode,s.driftMs),!1)}return this.refreshRetryAttempt=0,this.accessToken=s.accessToken,this.persistTokens(e,s.accessToken,s.expiresInSec),await this.ensureRefreshScheduling(e,"manual"),e.bus.emit("auth:tokens:updated",{accessToken:s.accessToken,refreshToken:s.refreshToken??"",expSec:e.engine.configurationContext.configuration.tokens?.accessTokenExpSec}),!0}scheduleRefreshRetry(e,t,r,o,i){this.refreshRetryScheduler&&this.refreshRetryScheduler.stop(),this.refreshRetryAttempt+=1,o===Is&&this.warnAboutClockSkew(e,i);let s=this.computeRefreshRetryMs(e,t,r,o),a=Math.max(1,Math.ceil(s/1e3));this.refreshRetryScheduler=new wt().schedule(()=>{this.requestRefresh(e,{force:!0,reason:"retry"}).then(c=>{c&&e.bus.emit("auth:ws:reconnect",void 0)})},a).start()}warnAboutClockSkew(e,t){let r=typeof t=="number"&&Number.isFinite(t)?`about ${Math.round(Math.abs(t)/1e3)}s`:"more than a minute";e.notifier.error(`Auth: this device\u2019s clock is ${r} away from the server, so sign-in cannot be renewed. Correct the system time, then run signin.`,{category:["token-refresh"],groupKey:"auth:clock-skew"})}computeRefreshRetryMs(e,t,r,o){let i=e.engine.configurationContext.loader,s=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_AFTER_MIN_SEC",{defaultValue:1}),a=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_AFTER_MAX_SEC",{defaultValue:300}),c=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_BASE_SEC",{defaultValue:2}),l=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_JITTER_SEC",{defaultValue:1}),d=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_MAX_SEC",{defaultValue:30}),f=i.getConfigValue("DL_ACCESS_REFRESH_CLOCK_SKEW_MIN_SEC",{defaultValue:300}),p=Math.max(1,this.refreshRetryAttempt),m=o===Is?Math.max(d,f):d,{delayMs:g,honoredRetryAfter:h}=ws({attempt:p,baseSec:c,jitterSec:Math.floor(Math.random()*(l+1)),ceilingSec:m,maxDoublings:xu,retryAfterSec:r,retryAfterMinSec:s,retryAfterMaxSec:a}),y=Math.max(1,Math.ceil(g/1e3));return e.notifier.warn(h?`Auth: refresh retry scheduled in ${y}s (honoring Retry-After, ${t})`:`Auth: refresh retry scheduled in ${y}s (${t}, attempt ${p})`,{scope:"system",category:["token-refresh"],groupKey:"auth:refresh-retry"}),g}async ensureRefreshScheduling(e,t){let r=await e.engine.secrets.get("refreshToken");!r.ok||!r.value||(this.accessToken&&!e.engine.configurationContext.configuration.tokens?.accessTokenExpSec&&this.ensureAccessExpPersisted(e,t),this.refreshRetryScheduler&&(this.refreshRetryScheduler.stop(),this.refreshRetryScheduler=null),this.scheduleSilentRefresh(e,t))}async scheduleSilentRefresh(e,t){let r=await e.engine.secrets.get("refreshToken");if(!r.ok||!r.value)return;this.refreshScheduler&&this.refreshScheduler.stop();let o=e.engine.configurationContext.loader,i=o.getConfigValue("DL_ACCESS_REFRESH_MIN_DELAY_SEC",{defaultValue:2}),s=e.engine.configurationContext.configuration,a=this.accessToken,c=s.tokens?.accessTokenExpSec??(a?this.tryDecodeExp(a):null),l=c??null,d=this.getRefreshGroupKey(e);if(this.lastRefreshPlan&&this.lastRefreshPlan.exp===l&&this.lastRefreshPlan.groupKey===d)return;this.lastRefreshPlan={exp:l,groupKey:d};let f=b=>{let E=new wt().schedule(()=>{this.requestRefresh(e,{force:b.force,reason:"timer"}).then(k=>{k&&e.notifier.success("Auth: refresh completed",{scope:"system",groupKey:d,category:["token-refresh"]})})},b.delaySec);b.log&&(E=E.onStep((k,D)=>b.log(D))),this.refreshScheduler=E.start()};if(!c){e.headless||e.notifier.info(`Auth: no exp; scheduling refresh in ${i}s [${t}]`,{scope:"system",groupKey:d,category:["token-refresh"]}),f({delaySec:i,force:!0});return}let p=Math.floor(Date.now()/1e3),m=o.getConfigValue("DL_ACCESS_REFRESH_MARGIN_SEC",{defaultValue:5}),g=o.getConfigValue("DL_ACCESS_REFRESH_JITTER_SEC",{defaultValue:2}),h=g>0?Math.floor(Math.random()*(g+1)):0,y=c-m-h,_=Math.max(i,y-p);e.headless||e.notifier.info(`Auth: refresh scheduled in ${_}s (exp=${c} now=${p} margin=${m} jitter=${h}) [${t}]`,{scope:"system",groupKey:d,category:["token-refresh"]}),f({delaySec:_,force:!1,log:b=>{e.headless||e.notifier.info(`Auth: refresh scheduled in ${b}s (exp=${c} now=${p} margin=${m} jitter=${h}) [${t}]`,{scope:"system",groupKey:d,category:["token-refresh"]})}})}getRefreshGroupKey(e){return this.refreshCycle++,`${this.refreshGroupKey}:${this.refreshCycle}`}async shouldRefreshNow(e){let t=await e.engine.secrets.get("refreshToken");if(!t.ok||!t.value)return{ok:!1,reason:"no_refresh_token"};let r=e.engine.configurationContext.configuration,o=this.accessToken,i=r.tokens?.accessTokenExpSec??(o?this.tryDecodeExp(o):null);if(!i)return{ok:!0,reason:"no_exp_assume_refresh"};let s=Math.floor(Date.now()/1e3),c=e.engine.configurationContext.loader.getConfigValue("DL_ACCESS_REFRESH_MARGIN_SEC",{defaultValue:300}),l=i-s;return l<=c?{ok:!0,reason:`within_margin remaining=${l}s margin=${c}s`}:{ok:!1,reason:`too_early remaining=${l}s margin=${c}s`}}ensureAccessExpPersisted(e,t){let r=e.engine.configurationContext.configuration,o=this.accessToken,i=r.tokens?.accessTokenExpSec;if(!o||typeof i=="number"&&Number.isFinite(i))return;let s=this.tryDecodeExp(o);if(!s)return;let a={...r,tokens:{...r.tokens??{},accessTokenExpSec:s}};e.engine.applyConfiguration(a),e.bus.emit("config:save:requested",a),e.notifier.info(`Auth: derived accessTokenExpSec=${s} (${t})`,{scope:"system"})}persistTokens(e,t,r){let o=e.engine.configurationContext.configuration,i=this.tryDecodeExp(t),s=typeof r=="number"&&Number.isFinite(r)?Math.floor(Date.now()/1e3)+r:void 0,a={...o,tokens:{...o.tokens??{},accessTokenExpSec:i??s}};e.engine.applyConfiguration(a),e.bus.emit("config:save:requested",a),e.notifier.info(`Auth: tokens updated exp=${a.tokens?.accessTokenExpSec??"-"}`,{scope:"system"})}async teardownTokens(e,t){this.accessToken=void 0;let o={...e.engine.configurationContext.configuration,tokens:void 0};e.engine.applyConfiguration(o),e.bus.emit("config:save:requested",o),this.clearTimers(),this.resetConnectionState(),e.bus.emit("auth:signout:requested",void 0),e.notifier.warn(`Auth: signed out (${t}). Please run signin.`)}tryDecodeExp(e){try{let t=Cu(e);return typeof t.exp=="number"?t.exp:null}catch{return null}}send(e,t){e.bus.emit("ws:tx",{text:JSON.stringify(t)})}resetConnectionState(){this.connectionId=null,this.sessionId=null,this.phase="IDLE",this.negotiatedCapabilities=[]}sessionHas(e){return He(this.negotiatedCapabilities,e)}clearTimers(){this.refreshScheduler&&(this.refreshScheduler.stop(),this.refreshScheduler=null),this.refreshRetryScheduler&&(this.refreshRetryScheduler.stop(),this.refreshRetryScheduler=null),this.conflictTimer&&clearTimeout(this.conflictTimer),this.conflictTimer=null,this.pendingConflictRequest=null}};import mo from"node:fs/promises";import ho from"node:path";var H=class{config;constructor(e){this.config=e}async execute(e){try{let t=await this.executeTool(e);return ti(t)}catch(t){return ne(t)?$e(t):$e(K(t,{message:"An unexpected error occurred"}))}}};import Ps from"node:path";import Os from"node:fs";import Au from"lodash/get.js";function ke(n){return Au(n,["context","file_policies"])}function Du(n){let e=n.replace(/\\/g,"/").toLowerCase();return e.includes("/secrets/")||e.startsWith("secrets/")?{shouldIgnore:!0,reason:"denylist:secrets",matchedRule:"secrets/"}:e.includes("/.env")||e.startsWith(".env")?{shouldIgnore:!0,reason:"denylist:env",matchedRule:".env"}:e.includes("/id_rsa")||e.startsWith("id_rsa")?{shouldIgnore:!0,reason:"denylist:ssh",matchedRule:"id_rsa"}:e.includes("/id_ed25519")||e.startsWith("id_ed25519")?{shouldIgnore:!0,reason:"denylist:ssh",matchedRule:"id_ed25519"}:e.endsWith(".pem")?{shouldIgnore:!0,reason:"denylist:pem",matchedRule:"*.pem"}:e.endsWith(".key")?{shouldIgnore:!0,reason:"denylist:key",matchedRule:"*.key"}:e.endsWith(".p12")?{shouldIgnore:!0,reason:"denylist:p12",matchedRule:"*.p12"}:e.endsWith(".pfx")?{shouldIgnore:!0,reason:"denylist:pfx",matchedRule:"*.pfx"}:null}var Ns=[{pattern:"node_modules",type:"exact"},{pattern:".git",type:"exact"},{pattern:"dist",type:"exact"},{pattern:"build",type:"exact"},{pattern:".next",type:"exact"},{pattern:".cache",type:"exact"},{pattern:".DS_Store",type:"exact"},{pattern:"Thumbs.db",type:"exact"},{pattern:"*.tmp",type:"glob"},{pattern:"*.log",type:"glob"},{pattern:".env*",type:"glob"}];function Iu(n,e,t){let r=n.directories.find(s=>s.id===e);if(!r)return Ns;let o=[],i=Ps.join(r.path,".devicelinkignore");if(Os.existsSync(i))try{let a=Os.readFileSync(i,"utf-8").split(`
|
|
8
|
-
`).map(c=>c.trim()).filter(c=>c&&!c.startsWith("#"));for(let c of a)c.includes("*")||c.includes("?")?o.push({pattern:c,type:"glob"}):c.startsWith("/")?o.push({pattern:c.slice(1),type:"prefix"}):o.push({pattern:c,type:"exact"})}catch(s){console.warn(`[ignore] Failed to read .devicelinkignore: ${s}`)}return o.push(...Ns),o}function oe(n,e,t,r,o){let i=Du(n);if(i)return i;if(o&&!e){let l=Ps.extname(n).toLowerCase();if(l&&o.blocked_extensions?.includes(l))return{shouldIgnore:!0,reason:"policy:blocked_extension",matchedRule:l};if(o.allowed_extensions&&o.allowed_extensions.length>0&&l&&!o.allowed_extensions.includes(l))return{shouldIgnore:!0,reason:"policy:not_in_allowlist",matchedRule:l};if(o.blocked_patterns){for(let d of o.blocked_patterns)if(po(n,d,!1))return{shouldIgnore:!0,reason:"policy:blocked_pattern",matchedRule:d}}}let s=Iu(r,t.directory_id,t.workspace_id),a=n.replace(/\\/g,"/"),c=a.split("/").filter(Boolean);for(let l of s){let d=!1;if(l.type==="exact"?d=c.some(f=>f===l.pattern):l.type==="prefix"?d=a.startsWith(l.pattern):l.type==="glob"&&(!l.pattern.includes("/")&&!l.pattern.includes("*")&&!l.pattern.includes("?")?d=c.some(f=>f.toLowerCase()===l.pattern.toLowerCase()):l.pattern.includes("/")?d=po(a,l.pattern,e):d=c.some(f=>po(f,l.pattern,e))),d)return{shouldIgnore:!0,matchedRule:l.pattern}}return{shouldIgnore:!1}}function po(n,e,t){let r="^",o=0;for(;o<e.length;){let i=e[o];i==="*"?o+1<e.length&&e[o+1]==="*"?(r+=".*",o+=2):(r+="[^/]*",o++):i==="?"?(r+="[^/]",o++):"\\^$|.+(){}[]".includes(i)?(r+="\\"+i,o++):(r+=i,o++)}r+="$";try{return new RegExp(r,"i").test(n)}catch{return n.toLowerCase().includes(e.toLowerCase())}}import fo from"node:fs/promises";import he from"node:path";function Fs(n){let e=(n??"").trim();if(!e)return".";if(e.includes("\0"))throw O("INVALID_INPUT","Path contains null byte.");if(e.startsWith("/"))throw O("PATH_ESCAPE","Absolute paths are not allowed. Use a path relative to the root.",{hint:'Use relative paths like "src/file.ts" or "." for the root directory. Paths must be relative to the configured root.'});if(/^[a-zA-Z]:[\\/]/.test(e)||e.startsWith("\\\\")||e.startsWith("//"))throw O("PATH_ESCAPE","Absolute/drive/UNC paths are not allowed. Use a path relative to the root.",{hint:'Use relative paths like "src/file.ts" or "." for the root directory. Do not use drive letters (C:) or UNC paths (\\\\server).'});let t=e.replace(/\\/g,"/");if(/^[a-zA-Z]+:\/\//.test(t))throw O("INVALID_INPUT","URL-style paths are not allowed.",{hint:'Paths cannot use URL schemes (like "http://" or "file://"). Use simple relative paths like "src/file.ts".'});let r=he.posix.normalize(t);if(r===".."||r.startsWith("../"))throw O("PATH_ESCAPE","Path escapes the root.",{hint:'Paths cannot use ".." to escape the configured root directory. Use paths relative to the root, like "src/file.ts" or "subdir/file.ts".'});return r===""?".":r}async function de(n,e){let t=Fs(e),r=he.resolve(n),o=await fo.realpath(r),i=he.resolve(o,t==="."?"":t),s=he.relative(o,i);if(s.startsWith("..")||he.isAbsolute(s))throw O("PATH_ESCAPE","Path escapes the root.",{hint:"The resolved path escapes the configured root directory. Ensure the path stays within the root boundaries."});try{let a=await fo.realpath(i),c=he.relative(o,a);if(c.startsWith("..")||he.isAbsolute(c))throw O("PATH_ESCAPE","Symlink/junction escape detected.",{hint:"A symlink or junction in the path resolves outside the configured root directory. Ensure all symlinks stay within the root boundaries."});return{absTarget:a,rel:t}}catch(a){if(fe(a)!=="ENOENT")throw a;let c=t.split("/").filter(Boolean);for(let l=c.length;l>0;l--){let d=c.slice(0,l).join("/"),f=c.slice(l).join("/"),p=he.resolve(o,d);try{let m=await fo.realpath(p),g=he.relative(o,m);if(g.startsWith("..")||he.isAbsolute(g))throw O("PATH_ESCAPE","Symlink/junction escape detected.",{hint:"A symlink or junction in the path resolves outside the configured root directory. Ensure all symlinks stay within the root boundaries."});return{absTarget:f?he.join(m,f):m,rel:t}}catch(m){if(fe(m)==="ENOENT")continue;throw m}}throw O("NOT_FOUND","Path not found.",{hint:"The specified path does not exist. Verify the path is correct and that the file or directory exists within the configured root."})}}function M(n){return{workspace_id:n.workspace_id,device_id:n.device_id,directory_id:n.directory_id,path:Fs(n.path)}}function J(n,e){let t=String(fe(n)??"");return t==="ENOENT"?ct("NOT_FOUND","Path not found.",{fs_code:t}):t==="ENOTDIR"?ct("NOT_A_DIRECTORY","Path is not a directory.",{fs_code:t}):t==="EISDIR"?ct("NOT_A_FILE","Path is a directory, not a file.",{fs_code:t}):t==="EACCES"||t==="EPERM"?ct("PERMISSION_DENIED","Permission denied.",{fs_code:t}):ct("INTERNAL",e,{fs_code:t})}function O(n,e,t){return ct(n,e,t)}function ct(n,e,t){return{code:n,message:e,details:t}}function re(n,e){if(Array.isArray(n.directories)&&n.directories.length===0)throw O("UNKNOWN_DIRECTORY","No directories configured.",{hint:"No directories configured. This may happen if the agent was restarted with different directory configuration. If you have only one directory configured, it will be used automatically.",requested_directory_id:e,available_directory_ids:n.directories.map(r=>r.id),available_paths:n.directories.map(r=>r.path),directory_count:n.directories.length});let t=n.directories.find(r=>r.id===e);if(!t&&n.directories.length===1&&(t=n.directories[0]),!t){let r=n.directories.map(s=>s.id).join(", ")||"none",o=n.directories.map(s=>s.path).join(", ")||"none",i=e===void 0?"undefined (missing)":String(e);throw O("UNKNOWN_DIRECTORY",`Unknown directory_id: ${i}`,{hint:`The directory_id "${i}" does not match any configured directory. Available directory IDs: ${r}. Available paths: ${o}. This may happen if the agent was restarted with different directory configuration. If you have only one directory configured, it will be used automatically.`,requested_directory_id:e,available_directory_ids:n.directories.map(s=>s.id),available_paths:n.directories.map(s=>s.path),directory_count:n.directories.length})}return t}function $(n,e,t,r,o){let i={operation:n,path:e.path||".",directory_id:e.directory_id,workspace_id:e.workspace_id,device_id:e.device_id,success:t,error:r?r.substring(0,200):void 0,metadata:o,timestamp:Date.now()},s=`[FS_AUDIT] ${n} ${t?"SUCCESS":"FAILED"} directory=${i.directory_id} path=${i.path}${i.workspace_id?` workspace=${i.workspace_id}`:""}${i.device_id?` device=${i.device_id}`:""}${i.error?` error=${i.error}`:""}${o?` ${JSON.stringify(o)}`:""}`}import Ls from"lodash/orderBy.js";import Ou from"lodash/clamp.js";import Nu from"lodash/take.js";import Pu from"lodash/map.js";function Fu(n,e,t){return Ls(n,[e==="name"?"name":e==="mtime"?o=>o.mtime??0:o=>o.size??0],[t])}function Lu(n,e){return e==="all"?n:e==="files"?n.filter(t=>t.type==="file"||t.type==="symlink"):e==="dirs"?n.filter(t=>t.type==="dir"):n}var Jr=class extends H{async executeTool(e){let t=e.directory_id,r=re(this.config,t),{absTarget:o,rel:i}=await de(r.path,e.path),s=Ou(e.limit??200,1,1e3),a=Math.max(e.offset??0,0),c=e.include_hidden??!1,l=e.only??"all",d=e.sort??"name",f=e.order??"asc",p=e.detail??"stat";try{if(!(await mo.stat(o)).isDirectory()){let I=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("list",I,!1,"Path is not a directory."),O("NOT_A_DIRECTORY","Path is not a directory.",{path:i,hint:"The path must point to a directory, not a file. Use fs_read to read files, or provide a directory path for listing."})}}catch(w){if(ne(w)){let I=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("list",I,!1,K(w).message),w}throw J(w,"Failed to list directory.")}let m;try{m=await mo.readdir(o,{withFileTypes:!0})}catch(w){throw J(w,"Failed to read directory.")}let g=c?m:m.filter(w=>!w.name.startsWith(".")),h=[],y=0,_={total_entries:0,files:0,dirs:0,symlinks:0,hidden:0,ignored:0,total_file_bytes:0},b=new Map,E=ke(e),k={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path};for(let w of g){let I=ho.join(o,w.name),Fe=(i==="."?w.name:ho.posix.join(i,w.name)).replace(/\\/g,"/"),ge="other";w.isDirectory()?ge="dir":w.isFile()?ge="file":w.isSymbolicLink()&&(ge="symlink");let Mt=w.name.startsWith(".");if(oe(Fe,w.isDirectory(),k,this.config,E).shouldIgnore){y++,_.ignored++;continue}_.total_entries++,ge==="file"?_.files++:ge==="dir"?_.dirs++:ge==="symlink"&&_.symlinks++,Mt&&_.hidden++;let Do,Io;if(p==="stat"||p==="digest")try{let Ut=await mo.stat(I);Ut.isFile()&&(Do=Ut.size,_.total_file_bytes=(_.total_file_bytes??0)+Ut.size),Io=Math.floor(Ut.mtimeMs/1e3)}catch{}let $t=ge==="file"?ho.extname(w.name).slice(1):void 0;$t&&(p==="stat"||p==="digest")&&b.set($t,(b.get($t)??0)+1),h.push({name:w.name,path:Fe,type:ge,size:Do,mtime:Io,ext:$t,hidden:Mt,ignored:!1})}p==="digest"&&b.size>0&&(_.by_ext=Nu(Ls(Pu([...b.entries()],([w,I])=>({ext:w,count:I})),["count"],["desc"]),10));let D=Lu(h,l),S=Fu(D,d,f),T=S.slice(a,a+s),x=a+T.length,A=x<S.length,ie={count:T.length,limit:s,offset:a,has_more:A,next_offset:A?x:void 0},V=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i}),q={items:T,meta:ie,context:V,filtered:{ignored_count:y}};return p==="digest"&&(q.summary=_),$("list",V,!0,void 0,{file_count:T.length}),q}};import Ms from"node:fs/promises";var lt=class extends H{async executeTool(e){let t=e.directory_id,r=re(this.config,t),{absTarget:o,rel:i}=await de(r.path,e.path),s=ke(e),a={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},c=oe(i,!1,a,this.config,s);if(c.shouldIgnore){let h=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",h,!1,`Access denied: ${c.reason||c.matchedRule||"blocked"}`),O("PERMISSION_DENIED",`Access denied: ${c.reason||c.matchedRule||"blocked"}`,{path:i,reason:c.reason})}let l=Math.max(e.offset??0,0),d=Math.min(Math.max(e.limit??4e4,1),2e5),f=e.encoding??"utf-8",p;try{p=await Ms.stat(o)}catch(h){let y=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",y,!1,J(h,"Failed to stat file.").message),J(h,"Failed to stat file.")}if(!p.isFile()){let h=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",h,!1,"Path is not a file."),O("NOT_A_FILE","Path is not a file.",{path:i,hint:"The path must point to a file, not a directory. Use fs_list or fs_tree to explore directories, or provide a file path to read."})}let m=s?.max_file_size_bytes;if(typeof m=="number"&&m>0&&p.size>m){let h=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",h,!1,`File exceeds the policy size limit (${p.size} > ${m}).`),O("PERMISSION_DENIED",`File exceeds the maximum size allowed by policy (${p.size} > ${m} bytes).`,{path:i,reason:"policy:max_file_size_bytes"})}let g;try{g=await Ms.open(o,"r")}catch(h){let y=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",y,!1,J(h,"Failed to open file.").message),J(h,"Failed to open file.")}try{let h=Buffer.alloc(d),{bytesRead:y}=await g.read(h,0,d,l),b=h.subarray(0,y).toString(f),E=l+y,k=y<d,D=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});return $("read",D,!0,void 0,{bytes_read:y}),{content:b,bytes_read:y,next_offset:E,eof:k,context:D}}catch(h){let y=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",y,!1,K(h).message),h}finally{await g.close()}}};import go from"node:fs/promises";var zr=class extends H{async executeTool(e){let t=e.directory_id,r=re(this.config,t),{absTarget:o,rel:i}=await de(r.path,e.path),s=!1,a;try{a=await go.readlink(o),s=!0}catch(f){if(fe(f)==="ENOENT")throw J(f,"Path not found.")}let c;try{c=s?await go.stat(o):await go.lstat(o)}catch(f){throw J(f,"Failed to stat path.")}let l="other";c.isDirectory()?l="dir":c.isFile()?l="file":s&&(l="symlink");let d=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});return $("info",d,!0),{type:l,size:c.isFile()?c.size:void 0,mtime:Math.floor(c.mtimeMs/1e3),ctime:Math.floor(c.ctimeMs/1e3),atime:Math.floor(c.atimeMs/1e3),is_symlink:s,target:s?a:void 0,context:d}}};import vo from"node:fs/promises";import Te from"node:path";import bo from"node:fs/promises";import $s from"node:path";import yo from"lodash/clamp.js";function Mu(n,e){let t="^",r=0;for(;r<e.length;){let o=e[r];if(o==="*")r+1<e.length&&e[r+1]==="*"?(t+=".*",r+=2):(t+="[^/]*",r++);else if(o==="?")t+="[^/]",r++;else if(o==="{"){let i=e.indexOf("}",r);if(i===-1)t+="\\{",r++;else{let s=e.substring(r+1,i).split(",");t+="("+s.map(a=>a.trim().replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|")+")",r=i+1}}else"\\^$|.+()[]".includes(o)?(t+="\\"+o,r++):(t+=o,r++)}t+="$";try{return new RegExp(t,"i").test(n)}catch{return!1}}async function $u(n,e,t,r,o,i,s,a){let c;try{c=await bo.readFile(n,"utf-8")}catch{return 0}let l=c.split(/\r?\n/),d=0,f;if(r==="regex")try{f=new RegExp(t,o?"g":"gi")}catch{let p=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");f=new RegExp(p,o?"g":"gi")}else{let p=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");f=new RegExp(p,o?"g":"gi")}for(let p=0;p<l.length&&d<s;p++){let m=l[p];if(f.test(m)){f.lastIndex=0;let g=Math.max(0,p-i),h=Math.min(l.length-1,p+i),y=l.slice(g,h+1);a.push({path:e,line:p+1,preview:m.trim(),snippet:y}),d++}}return d}async function Us(n,e,t,r,o,i,s,a,c,l,d,f,p,m,g){if(d.value>=c||f.length>=l)return;let h;try{h=await bo.readdir(n,{withFileTypes:!0})}catch{return}for(let y of h){if(d.value>=c||f.length>=l)break;let _=$s.join(n,y.name),b=e==="."?y.name:$s.posix.join(e,y.name);if(oe(b,y.isDirectory(),m,g).shouldIgnore){p.value++;continue}if(y.isFile()){if(i&&!Mu(b,i))continue;d.value++,await $u(_,b,r,o,s,a,l-f.length,f)}else y.isDirectory()&&await Us(_,b,t,r,o,i,s,a,c,l,d,f,p,m,g)}}var ut=class extends H{async executeTool(e){let t=e.directory_id,r=re(this.config,t),o=e.query;if(!o||o.length===0)throw O("INVALID_INPUT","Query is required.",{hint:'Query should be a search pattern to find in file contents. Use a substring (default) or regex pattern (with mode="regex"). Examples: "function", "import.*from", "TODO"'});let i=e.mode??"substring",s=e.file_glob,a=yo(e.max_files??2e3,1,1e4),c=yo(e.max_matches??200,1,1e3),l=yo(e.context_lines??2,0,10),d=e.case_sensitive??!1,{absTarget:f,rel:p}=await de(r.path,e.path??".");if(p!==".")try{if(!(await bo.stat(f)).isDirectory())throw O("NOT_A_DIRECTORY","Grep path is not a directory.",{path:p,hint:'The grep path must be a directory. Grep searches within directories recursively. Use "." to search from the root, or provide a directory path.'})}catch(b){throw ne(b)?b:J(b,"Failed to stat grep path.")}let m={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},g=[],h={value:0},y={value:0};await Us(f,p,r.path,o,i,s,d,l,a,c,h,g,y,m,this.config);let _=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:p});return $("grep",_,!0,void 0,{file_count:h.value,match_count:g.length}),{matches:g,meta:{files_scanned:h.value,matches:g.length,truncated:h.value>=a||g.length>=c},context:_,filtered:{ignored_count:y.value}}}};import Uu from"lodash/isEmpty.js";var dt=class extends H{async executeTool(e){let t=e.directory_id,r=re(this.config,t),o=e.default_limit??12e3,i=e.default_encoding??"utf-8",s=[];if(e.items&&Array.isArray(e.items)&&(s=e.items),Uu(s))throw O("INVALID_INPUT","fs_read_many expects { items: [{path,...}] }",{receivedKeys:Object.keys(e),hint:'Provide an "items" array with at least one object containing a "path" property. Each item can optionally include "offset", "limit", and "encoding". Example: { items: [{ path: "file1.ts" }, { path: "file2.ts", limit: 5000 }] }'});let a=ke(e),c=[],l={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},d=new lt(this.config);for(let p of s)try{let m=oe(p.path,!1,l,this.config,a);if(m.shouldIgnore){c.push({path:p.path,content:"",bytes_read:0,truncated:!1,error:{code:"PERMISSION_DENIED",message:`Access denied: ${m.reason||m.matchedRule||"blocked"}`}});continue}let g={directory_id:t,path:p.path,workspace_id:e.workspace_id,device_id:e.device_id,offset:p.offset??0,limit:p.limit??o,encoding:p.encoding??i},h=await d.execute(g);if(!h.ok){c.push({path:p.path,content:"",bytes_read:0,truncated:!1,error:{code:h.error.code,message:h.error.message}});continue}c.push({path:p.path,content:h.data.content,bytes_read:h.data.bytes_read,truncated:!h.data.eof})}catch(m){let{code:g,message:h}=K(m);c.push({path:p.path,content:"",bytes_read:0,truncated:!1,error:{code:g,message:h}})}let f=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:"."});return $("read_many",f,!0,void 0,{file_count:c.length}),{files:c,context:f}}};import Ct from"lodash/clamp.js";import Bu from"lodash/compact.js";import Ks from"lodash/orderBy.js";import Ku from"lodash/uniq.js";import Bs from"lodash/take.js";function js(n,e,t){if(!(e.length>=t)){if(n.type==="file"){e.push(n.path);return}if(n.children)for(let r of n.children){if(e.length>=t)break;js(r,e,t)}}}function ju(n){let e=t=>{let r=t.toLowerCase(),o=r.split("/");return r==="readme.md"||r.endsWith("/readme.md")||r.includes("/readme.md")?0:r.endsWith(".md")?1:r.endsWith("package.json")||r.endsWith("pyproject.toml")||r.endsWith("go.mod")||r.endsWith("cargo.toml")||r.endsWith("pom.xml")||r.endsWith("build.gradle")?2:r.includes("dockerfile")||r.includes("compose")||r.endsWith(".env.example")?3:o.includes("config")||o.includes("conf")||o.includes("settings")?4:o.includes("ci")||o.includes(".github")||o.includes(".gitlab")||o.includes("jenkins")||r.includes("workflow")?5:r.endsWith(".ts")||r.endsWith(".tsx")||r.endsWith(".js")||r.endsWith(".jsx")||r.endsWith(".py")||r.endsWith(".go")||r.endsWith(".rs")||r.endsWith(".java")?6:7};return[...n].sort((t,r)=>{let o=e(t),i=e(r);return o!==i?o-i:t.localeCompare(r)})}function Vs(n,e,t,r){let o={path:n.path,name:n.name,type:n.type,depth:e,size:n.size,mtime:n.mtime,ext:n.ext,hidden:n.hidden,ignored:n.ignored};if(r?.has(n.path)?o.error=r.get(n.path):n.type==="other"&&n.name==="<readdir_error>"&&(o.error={code:"INTERNAL",message:"Failed to read directory"}),t.push(o),n.children)for(let i of n.children)Vs(i,e+1,t,r)}async function qs(n,e,t,r,o,i,s,a,c,l,d,f,p,m,g,h,y){if(a.value>=s)return g.reason="MAX_ENTRIES",null;if(t>r)return g.reason="MAX_DEPTH",null;let _=e==="."?".":e.replace(/\\/g,"/"),b;try{b=await vo.lstat(n)}catch(x){let{code:A,message:ie}=K(x);l.total_entries++;let V={name:Te.basename(e)||e,type:"other",path:_,hidden:Te.basename(e)?.startsWith("."),ignored:!1};return h&&h.set(_,{code:A,message:`Failed to stat: ${ie}`}),o==="files"||o==="dirs"?null:(a.value++,V)}let E="other";if(b.isDirectory()?E="dir":b.isFile()?E="file":b.isSymbolicLink()&&(E="symlink"),oe(_,b.isDirectory(),p,m,y).shouldIgnore)return c.value++,l.ignored++,null;l.total_entries++,E==="file"?l.files++:E==="dir"?l.dirs++:E==="symlink"&&l.symlinks++;let D=Te.basename(e)?.startsWith(".");D&&l.hidden++;let S=E==="file"?Te.extname(Te.basename(e)||e).slice(1):void 0;S&&(f==="stat"||f==="digest")&&d.set(S,(d.get(S)??0)+1),E==="file"&&(f==="stat"||f==="digest")&&(l.total_file_bytes=(l.total_file_bytes??0)+(b.size??0));let T={name:Te.basename(e)||e,type:E,path:_,size:(f==="stat"||f==="digest")&&b.isFile()?b.size:void 0,mtime:f==="stat"||f==="digest"?Math.floor(b.mtimeMs/1e3):void 0,ext:S,hidden:D,ignored:!1};if(o==="files"&&E!=="file"&&E!=="symlink"||o==="dirs"&&E!=="dir")return null;if(a.value++,E==="dir"&&t<r){let x,A;try{x=await vo.readdir(n,{withFileTypes:!0})}catch(C){A=K(C),x=[]}let ie=Ks(i?x:x.filter(C=>!C.name.startsWith(".")),[C=>C.isDirectory()?0:1,"name"],["asc","asc"]),V=[];A&&h&&h.set(_,{code:A.code,message:`Failed to read directory: ${A.message}`});for(let C of ie){if(a.value>=s)break;let q=Te.join(n,C.name),w=e==="."?C.name:Te.posix.join(e,C.name),I=w.replace(/\\/g,"/");if(oe(I,C.isDirectory(),p,m,y).shouldIgnore){c.value++,l.ignored++;continue}try{let Fe=await qs(q,w,t+1,r,o,i,s,a,c,l,d,f,p,m,g,h,y);Fe&&V.push(Fe)}catch(Fe){let{code:ge,message:Mt}=K(Fe);h&&h.set(I,{code:ge,message:`Failed to build subtree: ${Mt}`}),l.total_entries++;let Ao={name:Te.basename(w)||w,type:"other",path:I,hidden:Te.basename(w)?.startsWith("."),ignored:!1};if(o==="files"||o==="dirs")continue;a.value++,V.push(Ao)}}V.length>0&&(T.children=V)}return T}var Yr=class extends H{async executeTool(e){let t=e.directory_id,r=re(this.config,t),{absTarget:o,rel:i}=await de(r.path,e.path),s=Ct(e.max_depth??3,1,20),a=e.only??"all",c=e.include_hidden??!1,l=Ct(e.max_entries??5e3,1,2e4),d=e.detail??"stat",f=e.include_display??!1,p=Ct(e.max_display_rows??2e3,1,2e4);try{if(!(await vo.stat(o)).isDirectory())throw O("NOT_A_DIRECTORY","Path is not a directory.",{path:i,hint:"The path must point to a directory to build a tree. Provide a directory path, not a file."})}catch(C){throw ne(C)?C:J(C,"Failed to build tree.")}let m=ke(e),g={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},h={reason:void 0},y={value:0},_={value:0},b={total_entries:0,files:0,dirs:0,symlinks:0,hidden:0,ignored:0,total_file_bytes:0},E=new Map,k=new Map,D=await qs(o,i,0,s,a,c,l,y,_,b,E,d,g,this.config,h,k,m);if(!D)throw O("INTERNAL","Failed to build tree (empty result).");let S=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});d==="digest"&&E.size>0&&(b.by_ext=Bs(Ks([...E.entries()].map(([C,q])=>({ext:C,count:q})),["count"],["desc"]),10));let T={tree:D,context:S,filtered:{ignored_count:_.value}};if(f){let C=[];Vs(D,0,C,k),C.length>p&&(C.length=p,T.truncated=T.truncated??{reason:"MAX_ENTRIES",continuation:"Display rows truncated; reduce max_entries/max_depth or lower max_display_rows"}),T.display={rows:C}}h.reason&&(T.truncated={reason:h.reason,continuation:h.reason==="MAX_ENTRIES"?"Reduce max_entries or list this folder with fs_list instead":"Reduce max_depth or list this folder with fs_list instead"}),(d==="digest"||e.include_summary)&&(T.summary=b);let x={};if(e.grep?.query)try{let C=new ut(this.config),q={directory_id:t,workspace_id:e.workspace_id,device_id:e.device_id,path:e.path??".",query:e.grep.query,mode:e.grep.mode??"substring",file_glob:e.grep.file_glob,max_files:e.grep.max_files??2e3,max_matches:e.grep.max_matches??200,context_lines:e.grep.context_lines??2,case_sensitive:e.grep.case_sensitive??!1},w=await C.execute(q);w.ok&&(x.grep={matches:w.data.matches,meta:w.data.meta,context:w.data.context})}catch{}let A=Bu(e.read?.paths),ie=[];if(e.read?.auto){let C=Ct(e.read.auto.max_files??10,1,50),q=[];js(D,q,3e3),ie=ju(q).slice(0,C)}let V=Bs(Ku([...A,...ie]),50);if(V.length>0)try{let C=Ct(e.read?.auto?.max_bytes_each??2e4,1,2e5),q=new dt(this.config),w={directory_id:t,workspace_id:e.workspace_id,device_id:e.device_id,default_limit:C,default_encoding:"utf-8",items:V.map(se=>({path:se}))},I=await q.execute(w);I.ok&&(x.read_many={files:I.data.files.map(se=>({path:se.path,content:se.content,bytes_read:se.bytes_read,truncated:se.truncated,error:se.error})),context:I.data.context})}catch{}return Object.keys(x).length>0&&(T.extras=x),$("tree",S,!0,void 0,{file_count:y.value}),T}};import So from"node:fs/promises";import xt from"node:path";import Vu from"lodash/clamp.js";import qu from"lodash/orderBy.js";function Wu(n,e){let t="^",r=0;for(;r<e.length;){let o=e[r];if(o==="*")r+1<e.length&&e[r+1]==="*"?(t+=".*",r+=2):(t+="[^/\\\\]*",r++);else if(o==="?")t+="[^/\\\\]",r++;else if(o==="["){let i=e.indexOf("]",r);if(i===-1)t+="\\[",r++;else{let s=e.substring(r+1,i);s.startsWith("!")?t+="[^"+s.substring(1)+"]":t+="["+s+"]",r=i+1}}else"\\^$|.+(){}[]".includes(o)?(t+="\\"+o,r++):(t+=o,r++)}t+="$";try{return new RegExp(t,"i").test(n)}catch{return n.toLowerCase().includes(e.toLowerCase())}}function Gu(n,e,t){return t==="glob"?Wu(n,e):n.toLowerCase().includes(e.toLowerCase())}function Hu(n,e,t){let r=100;if(e){for(let o of e)if(n.path.startsWith(o)){r+=50;break}}if(t){for(let o of t)if(n.path.startsWith(o)){r-=30;break}}return n.name===n.path.split("/").pop()&&(r+=20),r}function Ju(n,e){let t="^",r=0;for(;r<e.length;){let o=e[r];o==="*"?r+1<e.length&&e[r+1]==="*"?(t+=".*",r+=2):(t+="[^/]*",r++):o==="?"?(t+="[^/]",r++):"\\^$|.+(){}[]".includes(o)?(t+="\\"+o,r++):(t+=o,r++)}t+="$";try{return new RegExp(t,"i").test(n)}catch{return!1}}async function Eo(n,e,t,r,o,i,s,a,c,l,d,f,p,m,g,h,y,_){if(l.length>=c)return;let b;try{b=await So.readdir(n,{withFileTypes:!0})}catch{return}let E=a?b:b.filter(k=>!k.name.startsWith("."));for(let k of E){if(l.length>=c)break;let D=xt.join(n,k.name),S=e==="."?k.name:xt.posix.join(e,k.name);if(oe(S,k.isDirectory(),f,p,_).shouldIgnore){d.value++;continue}if(m&&!Ju(S,m)){i&&k.isDirectory()&&await Eo(D,S,t,r,o,i,s,a,c,l,d,f,p,m,g,h,y,_);continue}let x=Gu(k.name,r,o),A="other";if(k.isDirectory()?A="dir":k.isFile()?A="file":k.isSymbolicLink()&&(A="symlink"),x&&(s==="all"||s==="files"&&(A==="file"||A==="symlink")||s==="dirs"&&A==="dir")){let V,C;if(y!==!1)try{let I=await So.stat(D);V=I.isFile()?I.size:void 0,C=Math.floor(I.mtimeMs/1e3)}catch{}let q=A==="file"?xt.extname(k.name).slice(1):void 0,w=Hu({name:k.name,path:S},g,h);l.push({name:k.name,path:S,type:A,size:V,mtime:C,ext:q,hidden:k.name.startsWith("."),ignored:!1,score:w,matched:"name"})}i&&A==="dir"&&await Eo(D,S,t,r,o,i,s,a,c,l,d,f,p,m,g,h,y)}}var Qr=class extends H{async executeTool(e){let t=e.directory_id,r=re(this.config,t),o=e.query;if(!o||o.length===0)throw O("INVALID_INPUT","Query is required.",{hint:'Query should be a pattern to match file or directory names. Use a substring (default) or glob pattern (with mode="glob"). Examples: "config", "*.ts", "test/**"'});let i=e.mode??"substring",s=e.recursive??!0,a=e.only??"all",c=e.include_hidden??!1,l=Vu(e.max_results??200,1,2e4),d=Math.max(e.offset??0,0),f=e.file_glob,p=e.prefer_paths,m=e.avoid_paths,g=e.include_stats!==!1,{absTarget:h,rel:y}=await de(r.path,e.path??"."),_=h,b=y,E=[];if(y!==".")try{let I=await So.stat(h);if(!I.isDirectory())if(I.isFile()){_=xt.dirname(h);let se=xt.posix.dirname(y);b=se==="."?".":se,E.push({type:"warning",description:`Search path "${y}" is not a directory (it's a file). Searching the directory containing it instead: "${b}"`})}else throw O("NOT_A_DIRECTORY","Search path is not a directory.",{path:y,hint:'The search path must be a directory. Search looks for files/directories matching the query within directories. Use "." to search from the root, or provide a directory path.'})}catch(I){throw ne(I)?I:J(I,"Failed to stat search path.")}let k=ke(e),D={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},S=[],T={value:0};await Eo(_,b,r.path,o,i,s,a,c,l+d,S,T,D,this.config,f,p,m,g,k);let x=qu(S,[I=>I.score??0,"name"],["desc","asc"]),A=x.slice(d,d+l),ie=d+A.length,V=ie<x.length,C={count:A.length,limit:l,offset:d,has_more:V,next_offset:V?ie:void 0},q=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:b});$("search",q,!0,void 0,{file_count:A.length});let w={results:A,meta:C,context:q,filtered:{ignored_count:T.value}};return E.length>0&&(w.messages=E),w}};var Xr=class extends H{async executeTool(e){let t={agent_version:ue(),platform:process.platform,answered_at:Date.now()};return e.echo!==void 0&&(t.echo=e.echo),t}};var Zr=class{config;executers=new Map;constructor(e){this.config=e,this.initializeExecuters()}initializeExecuters(){this.executers.set("fs_list",new Jr(this.config)),this.executers.set("fs_read",new lt(this.config)),this.executers.set("fs_info",new zr(this.config)),this.executers.set("fs_tree",new Yr(this.config)),this.executers.set("fs_search",new Qr(this.config)),this.executers.set("fs_grep",new ut(this.config)),this.executers.set("fs_read_many",new dt(this.config)),this.executers.set("dl_ping",new Xr(this.config))}async executeTool(e,t){let r=this.executers.get(e);if(!r)return $e({code:"UNKNOWN_TOOL",message:`Unknown tool: ${e}`,details:{toolName:e}});try{return await r.execute(t)}catch(o){return ne(o)?$e(o):$e({...K(o),details:{raw:String(o)}})}}getExecuter(e){return this.executers.get(e)}hasTool(e){return this.executers.has(e)}getRegisteredTools(){return Array.from(this.executers.keys())}};import Ws from"lodash/isObject.js";import We from"lodash/get.js";function At(n){let e=Date.now()-n,t=parseFloat((e/1e3).toFixed(2));return{execution_ms:e,execution_sec:t}}function zu(n){return Ws(n)&&typeof We(n,"ok")=="boolean"}function Yu(n){let e=zu(n),t=e?!!We(n,"ok"):!0,r,o,i;if(t){if(e?r=We(n,"data")??We(n,"result")??n:r=n,Ws(r)&&Array.isArray(We(r,"messages"))){i=We(r,"messages");let s={...r};delete s.messages,r=s}}else e?o=We(n,"error")??n:o=n;return{ok:t,result:r,error:o,messages:i}}function Gs(n,e,t,r){let o=At(r),{ok:i,result:s,error:a,messages:c}=Yu(t);return vn({type:"tool_result",job_id:n,tool:e,ok:i,timing:o,...i?{result:s??null}:{error:a??{code:"UNKNOWN",message:"Unknown error"}},messages:c})}function Hs(n,e,t,r){let o=At(r);return{type:"tool_result",job_id:n,tool:e,ok:!1,error:K(t),timing:o}}var j=class{toolName;jobId;ok;elapsedSec;raw;constructor(e,t,r,o){this.toolName=e,this.jobId=t,this.ok=r.ok,this.elapsedSec=o,this.raw=r}getErrorDescription(){return`error: ${B(this.raw.error)}`}getStatusIcon(){return this.ok?"\u2713":"\u2717"}getStatusText(){return this.ok?"SUCCESS":"FAILED"}toString(){let e=this.getStatusIcon(),t=this.getDescription();return`${e} ${this.toolName} (${t}, elapsed=${this.elapsedSec}s)`}};var Dt=class extends j{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{items:e,meta:t,filtered:r,context:o}=this.output,i=e?.length??0,s=r?.ignored_count??0,a=o?.path??"unknown",c=[];i>0&&c.push(`${i} item${i!==1?"s":""}`),s>0&&c.push(`${s} ignored`),t?.has_more&&c.push("has_more");let l=c.length>0?c.join(", "):"empty";return`path=${a}, ${l}`}};var It=class extends j{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{bytes_read:e,eof:t,context:r}=this.output,o=r?.path??"unknown",i=e??0,s=!t,a=[`path=${o}`,`${i} bytes`];return s&&a.push("truncated"),a.join(", ")}};var Ot=class extends j{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{type:e,size:t,context:r}=this.output,o=r?.path??"unknown",i=t!==void 0?`${t} bytes`:"no size";return`path=${o}, type=${e}, ${i}`}};var Nt=class extends j{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{tree:e,filtered:t,summary:r,context:o}=this.output,i=o?.path??"unknown",s=t?.ignored_count??0,a=[`path=${i}`];if(r){let{total_entries:c,files:l,dirs:d}=r;c!==void 0&&a.push(`${c} entries`),l!==void 0&&a.push(`${l} files`),d!==void 0&&a.push(`${d} dirs`)}else if(e){let c=d=>{let f=1;if(d.children)for(let p of d.children)f+=c(p);return f},l=c(e);a.push(`${l} nodes`)}return s>0&&a.push(`${s} ignored`),this.output.truncated&&a.push("truncated"),a.join(", ")}};var Pt=class extends j{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{results:e,meta:t,filtered:r,context:o}=this.output,i=o?.path??"unknown",s=e?.length??0,a=r?.ignored_count??0,c=[`path=${i}`,`${s} result${s!==1?"s":""}`];return a>0&&c.push(`${a} ignored`),t?.has_more&&c.push("has_more"),c.join(", ")}};var Ft=class extends j{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{matches:e,meta:t,filtered:r,context:o}=this.output,i=o?.path??"unknown",s=e?.length??0,a=t?.files_scanned??0,c=r?.ignored_count??0,l=[`path=${i}`,`${s} match${s!==1?"es":""}`,`${a} file${a!==1?"s":""} scanned`];return c>0&&l.push(`${c} ignored`),t?.truncated&&l.push("truncated"),l.join(", ")}};var Lt=class extends j{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{files:e}=this.output,t=e?.length??0,r=e?.filter(a=>!a.error).length??0,o=t-r,i=e?.reduce((a,c)=>a+(c.bytes_read??0),0)??0,s=[`${t} file${t!==1?"s":""}`,`${r} success`];return o>0&&s.push(`${o} error${o!==1?"s":""}`),i>0&&s.push(`${i} bytes`),s.join(", ")}};function _o(n,e,t,r){switch(n){case"fs_list":return new Dt(n,e,t,r);case"fs_read":return new It(n,e,t,r);case"fs_info":return new Ot(n,e,t,r);case"fs_tree":return new Nt(n,e,t,r);case"fs_search":return new Pt(n,e,t,r);case"fs_grep":return new Ft(n,e,t,r);case"fs_read_many":return new Lt(n,e,t,r);default:{class o extends j{getDescription(){return this.ok?"completed":"failed"}}return new o(n,e,t,r)}}}var Qu=64,Xu=5*6e4,ko=class{entries=new Map;max;ttlMs;now;constructor(e={}){this.max=Math.max(1,e.max??Qu),this.ttlMs=Math.max(1,e.ttlMs??Xu),this.now=e.now??(()=>Date.now())}get size(){return this.prune(),this.entries.size}get(e){return this.prune(),this.entries.get(e)}has(e){return this.get(e)!==void 0}remember(e,t,r){this.prune(),this.entries.delete(e),this.entries.set(e,{jobId:e,text:t,at:this.now(),delivered:r}),this.evictOverflow()}markDelivered(e){let t=this.entries.get(e);t&&(t.delivered=!0)}undelivered(){return this.prune(),[...this.entries.values()].filter(e=>!e.delivered)}prune(){let e=this.now()-this.ttlMs;for(let[t,r]of this.entries)r.at<=e&&this.entries.delete(t)}evictOverflow(){for(;this.entries.size>this.max;){let e=this.entries.keys().next();if(e.done)return;this.entries.delete(e.value)}}},en=class{cache;inFlight=new Set;connected=!1;negotiated=!1;constructor(e={}){this.cache=new ko(e)}get isConnected(){return this.connected}get redeliveryNegotiated(){return this.negotiated}onConnected(){this.connected=!0}onDisconnected(){this.connected=!1,this.negotiated=!1}onSessionAck(e){this.negotiated=e.ok===!0&&He(e.capabilities,G.RESULT_REDELIVERY_V1)}decide(e){if(this.inFlight.has(e))return{action:"ignore",reason:"in_flight"};let t=this.cache.get(e);return t?{action:"resend",text:t.text}:{action:"execute"}}beginExecution(e){this.inFlight.add(e)}endExecution(e){this.inFlight.delete(e)}recordResult(e,t){return this.cache.remember(e,t,this.connected),{heldForRedelivery:!this.connected}}pendingRedeliveries(){return this.negotiated?this.cache.undelivered():[]}markDelivered(e){this.cache.markDelivered(e)}get cachedCount(){return this.cache.size}};var tn=class{name="tools-orchestrator";delivery=new en;handlers(){return{"ws:connected":async(e,t)=>{this.delivery.onConnected(),t.notifier.info(`WS connected: ${e.url}`,{scope:"system"})},"ws:disconnected":async()=>{this.delivery.onDisconnected()},"auth:session_init_ack":async(e,t)=>{this.delivery.onSessionAck(e),this.redeliverPendingResults(t)},"ws:rx":async(e,t)=>{let r;try{r=JSON.parse(e.text)}catch{return}if(tr(r)!=="tool_call")return;let o=Zt.safeParse(r);if(!o.success){t.notifier.error("Unexpected message format",{scope:"system"});return}let i=o.data,s=this.delivery.decide(i.job_id);if(s.action==="ignore"){t.notifier.info(`Tool call ${i.job_id} is already running; ignoring the repeat`,{scope:"system"});return}if(s.action==="resend"){t.notifier.info(`Tool call ${i.job_id} already ran; re-sending the stored result`,{scope:"system"}),this.sendResult(t,i.job_id,s.text);return}t.bus.emit("tool:call",i),await this.handleToolCall(i,t)}}}sendResult(e,t,r){let{heldForRedelivery:o}=this.delivery.recordResult(t,r);e.bus.emit("ws:tx",{text:r}),o&&e.notifier.info(`Tool result for ${t} produced while disconnected; holding it for redelivery`,{scope:"system"})}redeliverPendingResults(e){let t=this.delivery.pendingRedeliveries();if(t.length!==0){e.notifier.info(`Re-sending ${t.length} tool result${t.length===1?"":"s"} produced while disconnected`,{scope:"system"});for(let r of t)e.bus.emit("ws:tx",{text:r.text}),this.delivery.markDelivered(r.jobId)}}async handleToolCall(e,t){let r=e.tool,o=e.job_id,i=bn(e.args).set("workspace_id",e.workspace_id).set("device_id",e.device_id).set("context",e.context).value(),s=i.directory_id,a=t.engine.configurationContext.configuration,c=a.directories.map(f=>f.id).join(", ")||"none",l=a.directories.map(f=>f.path).join(", ")||"none";t.notifier.info(`Tool call: ${r} (job=${o}, directory_id=${s||"MISSING"}, available_ids=[${c}], available_paths=[${l}], directory_count=${a.directories.length})`,{scope:"system"}),t.notifier.info(`Executing: ${r}`);let d=Date.now();this.delivery.beginExecution(o);try{let p=await new Zr(a).executeTool(r,i),m=Gs(o,r,p,d);er.parse(m),this.sendResult(t,o,JSON.stringify(m));let g=At(d),h=_o(r,o,p,g.execution_sec);h.ok?t.notifier.success(h.toString()):t.notifier.error(h.toString())}catch(f){let p=Hs(o,r,f,d);er.parse(p),this.sendResult(t,o,JSON.stringify(p));let m=At(d),g={ok:!1,error:K(f)},h=_o(r,o,g,m.execution_sec);t.notifier.error(h.toString())}finally{this.delivery.endExecution(o)}}};var To=[{name:"dl_ping",version:"1.0",description:"Liveness probe. Answers with the agent version, platform and a timestamp without reading any file. Needs no shared folder and charges no credit.",inputSchema:{type:"object",properties:{echo:{type:"string",maxLength:64}},required:[]},errorCodes:["INTERNAL"]},{name:"fs_list",version:"1.0",description:"List files and folders at a relative path inside a shared folder.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},limit:{type:"integer",minimum:1,maximum:1e3,default:200},offset:{type:"integer",minimum:0,default:0},include_hidden:{type:"boolean",default:!1},only:{type:"string",enum:["all","files","dirs"],default:"all"},sort:{type:"string",enum:["name","mtime","size"],default:"name"},order:{type:"string",enum:["asc","desc"],default:"asc"},detail:{type:"string",enum:["basic","stat","digest"],default:"stat"}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_DIRECTORY","INVALID_INPUT","INTERNAL","UNKNOWN_ROOT"]},{name:"fs_read",version:"1.0",description:"Read the contents of a SINGLE text file inside a shared folder. For reading many files at once, prefer fs_read_many instead of multiple fs_read calls.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",minLength:1},offset:{type:"integer",minimum:0,default:0},limit:{type:"integer",minimum:1,maximum:2e5,default:4e4},encoding:{type:"string",default:"utf-8"}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_FILE","PERMISSION_DENIED","INVALID_INPUT","INTERNAL","UNKNOWN_ROOT"]},{name:"fs_info",version:"1.0",description:"Get metadata about a file or directory (type, size, timestamps, symlink).",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",minLength:1}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","PERMISSION_DENIED","INVALID_INPUT","INTERNAL","UNKNOWN_ROOT"]},{name:"fs_tree",version:"1.0",description:"Return a directory tree from a relative path up to max_depth.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},max_depth:{type:"integer",minimum:1,maximum:20,default:3},max_entries:{type:"integer",minimum:1,maximum:2e4,default:5e3},include_hidden:{type:"boolean",default:!1},only:{type:"string",enum:["all","files","dirs"],default:"all"},detail:{type:"string",enum:["basic","stat","digest"],default:"stat"},include_display:{type:"boolean",default:!1},max_display_rows:{type:"integer",minimum:1,maximum:2e4,default:2e3}},required:["path"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_DIRECTORY","INVALID_INPUT","INTERNAL","UNKNOWN_ROOT"]},{name:"fs_search",version:"1.0",description:"Search for files/folders by name inside a root, optionally recursively.",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},query:{type:"string",minLength:1},mode:{type:"string",enum:["substring","glob"],default:"substring"},recursive:{type:"boolean",default:!0},include_hidden:{type:"boolean",default:!1},only:{type:"string",enum:["all","files","dirs"],default:"all"},max_results:{type:"integer",minimum:1,maximum:2e4,default:200}},required:["query"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","INVALID_INPUT","INTERNAL","UNKNOWN_ROOT"]},{name:"fs_grep",version:"1.0",description:"Search for text content inside files (like grep/ripgrep).",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},path:{type:"string",default:"."},query:{type:"string",minLength:1},mode:{type:"string",enum:["substring","regex"],default:"substring"},file_glob:{type:"string"},max_files:{type:"integer",minimum:1,maximum:1e4,default:2e3},max_matches:{type:"integer",minimum:1,maximum:1e3,default:200},context_lines:{type:"integer",minimum:0,maximum:10,default:2},case_sensitive:{type:"boolean",default:!1}},required:["query"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_DIRECTORY","INVALID_INPUT","INTERNAL"]},{name:"fs_read_many",version:"1.0",description:"Read multiple files in a single call (batch read). Prefer this over multiple fs_read calls when you need to read several files\u2014fewer round-trips and better performance (up to 50 items per call).",inputSchema:{type:"object",properties:{directory_id:{type:"string",minLength:1},items:{type:"array",minItems:1,maxItems:50,items:{type:"object",properties:{path:{type:"string",minLength:1},offset:{type:"integer",minimum:0,default:0},limit:{type:"integer",minimum:1,maximum:2e5},encoding:{type:"string"}},required:["path"]}},default_limit:{type:"integer",minimum:1,maximum:2e5,default:12e3},default_encoding:{type:"string",default:"utf-8"}},required:["items"]},errorCodes:["PATH_ESCAPE","NOT_FOUND","NOT_A_FILE","INVALID_INPUT","INTERNAL"]}];var wo=class extends Y{constructor(){super(new z({name:"tools-job",lane:"worker",priority:1e3,locks:[],maxAttempts:1,cancellable:!1}))}async run(e,t){t.notifier.info("Executing supported tools job");let o=t.engine.configurationContext.configuration.device?.id;if(!o){t.notifier.error("Cannot publish tools: device ID not available");return}let i={type:"tools_publish",device_id:o,tools:To};t.bus.emit("ws:tx",{text:JSON.stringify(i)}),t.notifier.success(`\u2192 tools_publish (count=${To.length})`)}},Ro=new wo;function Js(){return new pe(Ro,void 0)}var Co=class extends Y{constructor(){super(new z({name:"directories-job",lane:"worker",priority:1e3,locks:[],maxAttempts:1,cancellable:!1}))}async run(e,t){t.notifier.info("Executing directories job");let r=t.engine.configurationContext.configuration,o=r.device?.id;if(!o){t.notifier.error("Cannot publish directories: device ID not available");return}let i=r.directories.map(a=>({id:a.id,name:a.name,path:pn(a.path)??a.name,path_hint:a.tag||void 0})),s={type:"directories_publish",device_id:o,directories:i};t.bus.emit("ws:tx",{text:JSON.stringify(s)}),t.notifier.success(`\u2192 directories_publish (dirs=${s.directories.length})`)}},xo=new Co;function zs(){return new pe(xo,void 0)}var rn=class{name="meta-data-orchestrator";onRegister(e){e.engine.register(Ro),e.engine.register(xo)}handlers(){return{"meta:data:requested:tools":async(e,t)=>{t.notifier.info("MetaData: tools requested -> dispatching supported tools job"),t.engine.dispatch(Js())},"meta:data:requested:directories":async(e,t)=>{t.notifier.info("MetaData: directories requested -> dispatching directories job"),t.engine.dispatch(zs())}}}};var nn=class{name="discovery-orchestrator";refreshInFlight=!1;noticeShown=null;handlers(){return{"config:loaded":async(e,t)=>{this.surfaceNotice(e.discovery,t),!An(e.discovery)&&this.refresh(t,"cache-missing-or-expired")},"discovery:refresh:requested":async(e,t)=>{await this.refresh(t,e.reason)},"discovery:document:received":async(e,t)=>{this.adopt(xn(e.document,e.source),t,e.source)},"discovery:cache:discarded":async(e,t)=>{let r=t.engine.configurationContext.configuration;if(!r.discovery)return;t.notifier.info(`Discovery: dropping cached endpoint (${e.reason})`,{scope:"system"});let o={...r,discovery:void 0};t.engine.configurationContext.loader.withDiscoveryCache(null),t.engine.applyConfiguration(o),t.bus.emit("config:save:requested",o)}}}async refresh(e,t){if(!this.refreshInFlight){this.refreshInFlight=!0;try{let r=e.engine.configurationContext.configuration,o=await ai(r.controlBaseUrl);if(!o){e.notifier.info(`Discovery: no document available (${t})`,{scope:"system"});return}this.adopt(xn(o,"well_known"),e,"well_known")}catch{return}finally{this.refreshInFlight=!1}}}adopt(e,t,r){if(!e)return;let o=t.engine.configurationContext.configuration,i=ii(o.discovery,e);if(!i||i===o.discovery){t.notifier.info(`Discovery: keeping the cached document (${r} was not newer)`,{scope:"system"});return}let s={...o,discovery:i};t.engine.configurationContext.loader.withDiscoveryCache(i),t.engine.applyConfiguration(s),t.bus.emit("config:save:requested",s),t.notifier.info(`Discovery: cached ${r} document issued_at=${i.issuedAt??"-"} bridge=${(i.bridgeUrls??[]).join(",")||"-"}`,{scope:"system"}),this.surfaceNotice(i,t)}surfaceNotice(e,t){let r=e?.notice;!r||this.noticeShown===r||(this.noticeShown=r,t.notifier.warn(r))}};Zi(()=>[new Fr,new jr,new $r,new Ur,new Gr,new Hr,new nn,new qr,new tn,new rn]);
|
|
6
|
+
`);if(h===-1)break;let g=d.slice(0,h);d=d.slice(h+2);let m=null,b=null;for(let k of g.split(`
|
|
7
|
+
`))k.startsWith("event:")&&(m=k.slice(6).trim()),k.startsWith("data:")&&(b=k.slice(5).trim());if(!m||!b)continue;let E;try{E=JSON.parse(b)}catch(k){o.error(`[deviceAuthStream] Failed to parse event data as JSON: ${String(k)}`);continue}let v=Gl.safeParse(E);if(!v.success){o.error(`[deviceAuthStream] Event validation failed (${m}): ${String(v.error)}`);continue}let S=v.data;if(m==="approved"||m==="denied"||m==="expired")return S;if(m==="pending"){"status"in S&&S.status==="pending"&&S.needs_proof===!0&&o.warn("[deviceAuthStream] pending: needs_proof=true (unexpected before approval)");continue}o.warn(`[deviceAuthStream] Unknown event type: ${m}`)}}throw o.error("[deviceAuthStream] Stream ended unexpectedly without completion"),new Error("Device authorization stream ended without completion")}catch(a){if(a instanceof Error&&a.name==="AbortError")o.warn(`[deviceAuthStream] Aborted: ${a.message??""}`);else{let c=a instanceof Error?a.message:String(a);o.error(`[deviceAuthStream] Error: ${c}`)}throw a}finally{clearTimeout(s)}})}function ms(n){return new ie(n,async(e,t)=>we(e,"/api/device/authorize/token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}function hs(n){return new ie(n,async(e,t)=>{let r=new AbortController,o=3e4,i=setTimeout(()=>{r.abort()},o);try{let s=await we(e,"/api/device/authorize/refresh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),signal:r.signal});return clearTimeout(i),s}catch(s){throw clearTimeout(i),s instanceof Error&&s.name==="AbortError"?new Error(`Refresh token request timed out after ${o}ms`):s}})}function gs(n){return new ie(n,async(e,t)=>we(e,"/api/device/enrollment/start",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}))}var at=class{deviceAuthStartCall;deviceAuthProveCall;deviceAuthStreamCall;deviceAuthTokenCall;deviceAuthRefreshCall;deviceEnrollmentStartCall;constructor(e,t){let r={configuration:e,notifier:t};this.deviceAuthStartCall=ds(r),this.deviceAuthProveCall=ps(r),this.deviceAuthStreamCall=fs(r),this.deviceAuthTokenCall=ms(r),this.deviceAuthRefreshCall=hs(r),this.deviceEnrollmentStartCall=gs(r)}deviceAuthStart(e){return this.deviceAuthStartCall.execute(e)}deviceEnrollmentStart(e){return this.deviceEnrollmentStartCall.execute(e)}deviceAuthProve(e){return this.deviceAuthProveCall.execute(e)}deviceAuthStream(e){return this.deviceAuthStreamCall.execute(e)}deviceAuthToken(e){return this.deviceAuthTokenCall.execute(e)}deviceAuthRefresh(e){return this.deviceAuthRefreshCall.execute(e)}};function Yl(n){if(!Dt(n)||J(n,"ok")!==!0)return!1;let e=J(n,"data");return Dt(e)?J(e,"ok")===!0&&ct(J(e,"access_token"))&&ct(J(e,"refresh_token"))&&typeof J(e,"expires_in_sec")=="number"&&ct(J(e,"device_id")):!1}function Ql(n){return n.ok===!0&&typeof n.access_token=="string"}var $r=class{constructor(e){this.reason=e}},ho=["REFRESH_EXPIRED","REFRESH_REVOKED","REFRESH_NOT_FOUND","DEVICE_NOT_FOUND"],Te=class{constructor(e,t,r,o,i,s,a,c){this.ok=e;this.accessToken=t;this.refreshToken=r;this.expiresInSec=o;this.error=i;this.retryAfterSec=s;this.errorCode=a;this.driftMs=c}},mo=class extends Q{constructor(){super(new Y({name:"refresh-tokens",lane:"io",priority:900,locks:["AUTH_REFRESH"],maxAttempts:5,cancellable:!0}))}async run(e,t){let r=t.engine.configurationContext.configuration;if(!r.controlBaseUrl)return new Te(!1,void 0,void 0,void 0,"controlBaseUrl missing");if(!r.device?.id)return new Te(!1,void 0,void 0,void 0,"device.id missing");let o=await t.engine.secrets.get("devicePrivateKey");if(!o.ok||!o.value)return new Te(!1,void 0,void 0,void 0,"device private key missing");let i=o.value,s=await t.engine.secrets.get("refreshToken");if(!s.ok||!s.value)return new Te(!1,void 0,void 0,void 0,"refresh token missing");let a=s.value;t.notifier.info(`Refreshing tokens (job) reason=${e.reason}`,{scope:"system",category:["token-refresh"]});let c=Date.now(),u=zl.randomBytes(16).toString("base64url"),d=kn({deviceId:r.device.id,ts:c,nonce:u,refreshToken:a,privateKeyPem:i}),f=new at(r,t.notifier),p;try{p=await f.deviceAuthRefresh({device_id:r.device.id,refresh_token:a,ts:c,nonce:u,sig:d})}catch(g){let m=g instanceof Error?g.message:String(g),b=g,E=b.retryAfterSec,v=J(b,"body.error.code"),S=ct(v)?v:void 0,k=J(b,"body.error.drift_ms"),x=ys(k)?k:void 0;return S==="REFRESH_NOT_FOUND"?(t.notifier.warn("Refresh token not found; clearing stored refresh token and stopping automatic refresh. Please run signin.",{category:["token-refresh"]}),await t.engine.secrets.delete("refreshToken").catch(_=>{let w=_ instanceof Error?_.message:String(_);t.logger.warn(`Could not clear stored refresh token: ${w}`,{category:["token-refresh"]}),t.notifier.warn(`Could not clear stored refresh token: ${w}`,{category:["token-refresh"]})}),new Te(!1,void 0,void 0,void 0,"Refresh token not found",void 0,"REFRESH_NOT_FOUND")):(t.notifier.error(`Refresh tokens failed: ${m}`,{category:["token-refresh"]}),new Te(!1,void 0,void 0,void 0,m,E,S,x))}let h=this.normalizeRefreshResponse(p);if(!h){let g=this.extractErrorMessage(p),m=this.extractErrorCode(p),b=this.extractErrorDrift(p);return t.notifier.error(`Refresh tokens failed: ${g}`,{category:["token-refresh"]}),new Te(!1,void 0,void 0,void 0,g,void 0,m,b)}return h.refresh_token&&await t.engine.secrets.set("refreshToken",h.refresh_token),new Te(!0,h.access_token,h.refresh_token,h.expires_in_sec)}normalizeRefreshResponse(e){if(Yl(e))return e.data;if(this.looksLikeDomainRefresh(e)){let t=e;return Ql(t)?t:null}return null}looksLikeDomainRefresh(e){return Jl(J(e,"ok"))}extractErrorMessage(e){if(!Dt(e))return"Unknown error";if(J(e,"ok")===!1){let t=J(e,"error.message");if(ct(t)&&t.length>0)return t}return J(e,"ok")===!0&&"data"in e?"Bad refresh response: missing token fields":"Unknown error"}extractErrorDrift(e){if(!Dt(e)||J(e,"ok")!==!1)return;let t=J(e,"error.drift_ms");return ys(t)?t:void 0}extractErrorCode(e){if(!Dt(e)||J(e,"ok")!==!1)return;let t=J(e,"error.code");return ct(t)?t:void 0}},go=new mo;function bs(n){return new ye(go,n)}function vs(n,e){return e.headless?n.on("notify:event",t=>{Xl(t,e.debug)}):null}function Xl(n,e){if(!e&&!Zl(n))return;let t=`[agent] ${n.message}`;switch(n.kind){case"error":console.error(t);break;case"warning":console.warn(t);break;default:console.log(t);break}}function Zl(n){return n.kind==="error"||n.kind==="warning"||n.kind==="success"||n.scope==="system"}var Ur=class{constructor(e){this.argv=e;let t=e.map(p=>p.trim()?.toLowerCase()),r=e.map(p=>p.trim()),o=this.parseKeyValue(t,r,["--env"]);o.match&&(this.enviromentFile=o.value);let i=this.parseKeyValue(t,r,["--root"]);i.match&&(this.rootPath=i.value);let s=this.parseKeyValue(t,r,["--control-url"]);s.match&&(this.controlUrl=s.value);let a=this.parseKeyValue(t,r,["--bridge-ws-url"]);a.match&&(this.bridgeWsUrl=a.value);let c=this.parseKeyValue(t,r,["--private-key-file"]);c.match&&c.value&&(this.privateKeyFile=c.value);let u=this.parseKeyValue(t,r,["--public-key-file"]);u.match&&u.value&&(this.publicKeyFile=u.value);let d=this.parseKeyValue(t,r,["--enrollment-file"]);d.match&&d.value&&(this.enrollmentFile=d.value);let f=this.parseKeyValue(t,r,["--enrollment-key"]);f.match&&f.value&&(this.enrollmentKey=f.value)}enviromentFile;rootPath;controlUrl;bridgeWsUrl;privateKeyFile;publicKeyFile;enrollmentFile;enrollmentKey;parseKeyValue(e,t,r){let o=r.map(i=>i.toLowerCase()?.trim()).filter(i=>i!==void 0);if(o.length===0)return{match:!1,value:void 0};for(let i of o){let s=e.findIndex(a=>{let c=a.toLowerCase();return c===i||c.startsWith(i+"=")});if(s!==-1){let a=t[s],c=a.toLowerCase().indexOf("=");if(c!==-1)return{match:!0,value:a.substring(c+1)||void 0};let u=t[s+1];return u===void 0||u.startsWith("--")?{match:!0,value:void 0}:{match:!0,value:u}}}return{match:!1,value:void 0}}};var Br=class{bus;flags;constructor(e,t){this.bus=e,this.flags=t??new Oe(!1)}info(e,t){return this.push(e,t)}warn(e,t){let r=Object.assign({},t,{kind:"warning"});return this.push(e,r)}error(e,t){let r=Object.assign({},t,{kind:"error"});return this.push(e,r)}success(e,t){let r=Object.assign({},t,{kind:"success"});return this.push(e,r)}push(e,t){if((t?.scope??"default")==="system"&&!this.flags.debug&&!this.flags.headless)return null;let o=new Ee(e,t);return this.bus.emit("notify:event",o),o}};var Kr=class{bus;constructor(e){this.bus=e}info(e,t){this.push(e,Object.assign({},t,{level:"info"}))}warn(e,t){this.push(e,Object.assign({},t,{level:"warn"}))}error(e,t){this.push(e,Object.assign({},t,{level:"error"}))}debug(e,t){this.push(e,Object.assign({},t,{level:"debug"}))}success(e,t){this.push(e,Object.assign({},t,{level:"success"}))}push(e,t){let r=new tr(e,t);this.bus.emit("log",r)}};import eu from"lodash/isFunction.js";import yo from"node:fs";import tu from"node:os";import bo from"node:tty";function jr(n){if(wn(n))return!0;if(bt(n))return!1}function We(n,e,t=process.env){return jr(t[n]??"")??e}function ru(n){let e=n.setRawMode;return eu(e)&&(n.setRawMode=t=>{try{return e.call(n,t)}catch(r){let o=te(r);if(o==="EPERM"||o==="EINVAL")return n;throw r}}),n}var It;function vo(){if(It!==void 0)return It;let n;if(process.stdin.isTTY)n=process.stdin;else try{if(tu.platform()==="win32")try{let e=yo.openSync("CONIN$","rs");n=new bo.ReadStream(e)}catch{let e=yo.openSync("\\\\.\\CONIN$","rs");n=new bo.ReadStream(e)}else{let e=yo.openSync("/dev/tty","rs");n=new bo.ReadStream(e)}}catch{return It=null,null}return It=ru(n),It}function nu(){return vo()===null}function ou(n){for(let e of n){let t=e.trim(),r=t.toLowerCase();if(r==="--headless")return"on";if(r.startsWith("--headless=")){let o=t.slice(t.indexOf("=")+1).trim().toLowerCase();return bt(o)?"off":"on"}}return"unset"}function Ss(n){let e=ou(n);if(e==="on")return{headless:!0,reason:"CLI: --headless"};if(e==="off")return{headless:!1,reason:"CLI: --headless=false"};let t=process.env.HEADLESS;if(t!==void 0&&t.trim()!==""){let i=jr(t);if(i!==void 0)return{headless:i,reason:i?"env: HEADLESS":"env: HEADLESS=false"}}let r=process.env.DLINK_HEADLESS;if(r!==void 0&&r.trim()!==""){let i=jr(r);if(i!==void 0)return{headless:i,reason:i?"env: DLINK_HEADLESS":"env: DLINK_HEADLESS=false"}}return nu()?{headless:!0,reason:"no TTY stdin (Docker/CI/background)"}:{headless:!1,reason:"TTY available (interactive)"}}import So from"dotenv";import{existsSync as _s}from"node:fs";import{join as iu,resolve as su,dirname as au}from"node:path";function Es(n){let e=su(au(process.argv[1]??"."),".env.production"),t=_s(e);if(So.config({quiet:!0}),!t){let r=iu(process.cwd(),"apps","agent",".env");_s(r)&&So.config({path:r,override:!0,quiet:!0})}n.enviromentFile&&So.config({path:n.enviromentFile,override:!0,quiet:!0})}import{access as cu,readFile as lu}from"node:fs/promises";import{constants as uu}from"node:fs";function ks(n){return(n.trim().split(".")[0]??"").startsWith("eyJ")}function _o(n){let e=n.enrollmentFile?.trim();if(e)return{kind:"path",path:e,origin:"--enrollment-file"};let t=n.enrollmentKey?.trim();if(t)return ks(t)?{kind:"inline",jws:t,origin:"--enrollment-key"}:{kind:"path",path:t,origin:"--enrollment-key"};let r=process.env.ENROLMENT_KEY?.trim()??process.env.DLINK_ENROLMENT_KEY?.trim();return r?ks(r)?{kind:"inline",jws:r,origin:"ENROLMENT_KEY"}:{kind:"path",path:r,origin:"ENROLMENT_KEY"}:{kind:"none"}}function Vr(n={}){let e=_o(n);return e.kind==="none"?"none":e.kind==="inline"?`${e.origin}(inline JWS)`:`file:${e.path} (${e.origin})`}async function du(n){try{let t=(await lu(n,"utf8")).trim();return t?{ok:!0,jws:t}:{ok:!1,error:"empty_file"}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}async function ws(n={}){let e=_o(n);if(e.kind==="none")return!1;if(e.kind==="inline")return!0;try{return await cu(e.path,uu.R_OK),!0}catch{return!1}}async function Ts(n={}){let e=_o(n);return e.kind==="none"?{ok:!1,error:"not_configured"}:e.kind==="inline"?{ok:!0,jws:e.jws}:du(e.path)}import Eo from"lodash/trim.js";var Rs=[{name:"help",aliases:["?"],summary:"Show this command list"},{name:"start",aliases:["run"],summary:"Connect the bridge"},{name:"stop",summary:"Disconnect the bridge"},{name:"status",summary:"Show device, bridge and session state"},{name:"doctor",summary:"Run local environment checks"},{name:"signin",summary:"Sign in again after signout"},{name:"signout",summary:"Sign out and disconnect the bridge"},{name:"roots list",summary:"List the directories shared with the bridge"},{name:"roots add",args:"<path>",summary:"Share an additional directory"},{name:"debug on",summary:"Show internal system messages",hidden:!0},{name:"debug off",summary:"Hide internal system messages",hidden:!0},{name:"replace",aliases:["yes","y"],summary:"Take over an existing session on conflict"}],Cs=[{flag:"-h, --help",summary:"Show this help and exit"},{flag:"-v, --version",summary:"Print the agent version and exit"},{flag:"--headless",args:"[=true|false]",summary:"Run without the interactive UI"},{flag:"--env",args:"<file>",summary:"Load environment from a specific file"},{flag:"--root",args:"<path>",summary:"Share this directory with the bridge"},{flag:"--control-url",args:"<url>",summary:"Override the control plane base URL"},{flag:"--bridge-ws-url",args:"<url>",summary:"Override the bridge WebSocket URL"},{flag:"--enrollment-key",args:"<key>",summary:"Enrollment key to sign in with on first run"},{flag:"--enrollment-file",args:"<file>",summary:"Path to a .devicelink enrollment key"},{flag:"--private-key-file",args:"<file>",summary:"Path to the device private key"},{flag:"--public-key-file",args:"<file>",summary:"Path to the device public key"}];function xs(){let n=new Set;for(let e of Rs){let t=e.name.split(" ")[0];t&&n.add(t);for(let r of e.aliases??[])n.add(r)}return Array.from(n)}function As(n){let e=new Set,t=new Set;for(let i of Cs){let s=!!i.args&&!i.args?.startsWith("[");for(let a of i.flag.split(",")){let c=Eo(a).toLowerCase();c.startsWith("-")&&(e.add(c),s&&t.add(c))}}let r=[],o=n.slice(2);for(let i=0;i<o.length;i++){let s=Eo(o[i]??"");if(s==="--"||!s.startsWith("-"))continue;let a=s.split("=")[0]??s;if(!e.has(a.toLowerCase())){r.push(a);continue}t.has(a.toLowerCase())&&!s.includes("=")&&i++}return r}function Ds(n){for(let e of n.slice(2)){let t=Eo(e).toLowerCase();if(t==="--version"||t==="-v")return"version";if(t==="--help"||t==="-h")return"help"}return null}function Is(n){let e=n.args?`${n.name} ${n.args}`:n.name;return!n.aliases||n.aliases.length===0?e:`${e} (${n.aliases.join(", ")})`}function ko(n){let e=n.reduce((t,r)=>Math.max(t,r.left.length),0);return n.map(t=>` ${t.left.padEnd(e)} ${t.right}`)}function Os(){return Rs.filter(n=>!n.hidden)}function Ns(){let n=Os().map(e=>({left:Is(e),right:e.summary}));return["Commands:",...ko(n)]}function Ps(n){let e=Os().map(r=>({left:Is(r),right:r.summary})),t=Cs.map(r=>({left:r.args?`${r.flag} ${r.args}`:r.flag,right:r.summary}));return[`DeviceLink Agent ${n}`,"","Usage: dlink [options]","","Options:",...ko(t),"","Interactive commands (type these once the agent is running):",...ko(e),""].join(`
|
|
8
|
+
`)}import pu from"lodash/compact.js";import fu from"lodash/isString.js";import mu from"lodash/trim.js";import{existsSync as hu,readFileSync as gu}from"node:fs";import Fs from"node:path";import{fileURLToPath as yu}from"node:url";var wo;function bu(){try{let n=Fs.dirname(yu(import.meta.url)),e=Fs.join(n,"package.json");if(!hu(e))return;let t=JSON.parse(gu(e,"utf8"));if(t.name==="@devicelink/dlink"&&fu(t.version))return t.version}catch{return}}function he(){if(wo===void 0){let n=[process.env.DLINK_AGENT_VERSION,process.env.npm_package_version,bu()].map(e=>mu(e));wo=pu(n)[0]??"unknown"}return wo}async function Ls(n){let e=Ds(process.argv);if(e==="version"){console.log(he());return}if(e==="help"){console.log(Ps(he()));return}let t=As(process.argv);t.length>0&&(console.warn(`[agent] Ignoring unrecognised ${t.length===1?"option":"options"}: ${t.join(", ")}`),console.warn('[agent] Run "dlink --help" to see the supported options.'));let r=new vr,o=new nr,{store:i,report:s}=await ss({machineId:sr(!0)}),a=new Ur(process.argv);Es(a);let c=Ss(process.argv);if(c.headless){let g=Vr(a);console.log(`[agent] Headless boot (${c.reason})`),console.log(`[agent] Enrollment: ${g}`),g==="none"&&console.log("[agent] No enrollment key (pass --enrollment-key, --enrollment-file, or set ENROLMENT_KEY)")}let u=new Oe(!1,c.headless,c.reason),d=new Kr(r),f=new Br(r,u);vs(r,u);let p=new br({bus:r,argv:a,logger:d,notifier:f,storage:o,secrets:i,secretsReport:s,flags:u,lanes:[new xe("console",1),new xe("supervisor",1),new xe("main",1),new xe("ws",1),new xe("worker",8),new xe("io",4)]});p.register(so),p.register(go),p.register(cs),p.register(ls),p.register(us);let h=n({headless:c.headless,headlessReason:c.reason});for(let g of h)p.registerOrchestrator(g);await p.init(),await p.start()}import Xu from"react";import{render as Zu}from"ink";import{useEffect as Gu,useCallback as Ro}from"react";import{Box as Co,useApp as Ju,useInput as zu}from"ink";import{useEffect as vu,useState as Su}from"react";function Ms(){let[n,e]=Su(()=>{let t=process.stdout.columns||80,r=process.stdout.rows||24;return[t,r]});return vu(()=>{let t=()=>{let r=process.stdout.columns||80,o=process.stdout.rows||24;e([r,o])};return process.stdout.on("resize",t),t(),()=>{process.stdout.off("resize",t)}},[]),n}import js from"lodash/truncate.js";import Vs,{useEffect as qr,useState as qs}from"react";import{Box as ut,Text as L}from"ink";import{createContext as _u,useContext as Eu,useReducer as ku,useMemo as lt,useEffect as $s,useState as wu}from"react";import{jsx as xu}from"react/jsx-runtime";var Us=_u(null);function Tu(n,e){let t=n.messages,r=t.findIndex(o=>o.id===e.id);if(r!==-1){let o=t[r],i=[...t];return i[r]={...e,id:o.id,ts:o.ts},{...n,messages:i}}if(e.groupKey)for(let o=t.length-1;o>=0;o--){let i=t[o];if(i.groupKey===e.groupKey){let s=[...t];return s[o]={...e,id:i.id,ts:i.ts,groupKey:i.groupKey},{...n,messages:s}}}return{...n,messages:[...t.slice(-380),e]}}function Ru(n,e){switch(e.type){case"SET_INPUT":return{...n,input:e.payload};case"ADD_MESSAGE":return Tu(n,e.payload);case"SET_MESSAGES":return{...n,messages:e.payload};case"SET_ENGINE_STATE":return{...n,engineState:e.payload};case"ADD_COMMAND_TO_HISTORY":{if(!e.payload)return n;let t=n.commandHistory.length===0||n.commandHistory[n.commandHistory.length-1]!==e.payload?[...n.commandHistory,e.payload]:n.commandHistory;return{...n,commandHistory:t}}case"SET_HISTORY_INDEX":return{...n,historyIndex:e.payload};case"SET_IS_PROCESSING":return{...n,isProcessing:e.payload};case"SET_DEBUG_ENABLED":return{...n,debugEnabled:e.payload};case"SET_CONNECTION_STATUS":return{...n,connectionStatus:e.payload};case"SET_CONNECTION_RETRY":return{...n,connectionRetryInSec:e.payload};case"SET_REFRESH_COUNTDOWN":return{...n,refreshCountdownSec:e.payload};case"SET_DEVICE_ID":return{...n,deviceId:e.payload};case"RESET_INPUT":return{...n,input:""};case"RESET_HISTORY_INDEX":return{...n,historyIndex:-1};case"RESET_HISTORY_INDEX_IF_TYPING":if(n.historyIndex!==-1){let t=n.commandHistory[n.historyIndex];if(t!==void 0&&n.input!==t)return{...n,historyIndex:-1}}return n;default:return n}}var Cu={input:"",messages:[],engineState:"IDLE",commandHistory:[],historyIndex:-1,isProcessing:!1,debugEnabled:!1,connectionStatus:"disconnected",connectionRetryInSec:null,refreshCountdownSec:null,deviceId:null};function Bs({engine:n,bus:e,children:t}){let[r,o]=ku(Ru,Cu),[i,s]=wu(()=>Object.freeze({phase:n.runtime.phase,flags:Object.freeze({debug:n.runtime.flags.debug})}));$s(()=>{e.emit("ui:initialized",Date.now())},[e]),$s(()=>{let c=_=>_==="running"?"RUNNING":_==="stopping"?"STOPPING":_==="booting"?"IDLE":"STOPPED",u=e.on("notify:event",_=>{if(o({type:"ADD_MESSAGE",payload:_}),_.groupKey?.startsWith("auth:refresh"))if(_.kind==="info"){let w=_.message.match(/refresh scheduled in (\d+)s/);if(w){let I=parseInt(w[1],10);isNaN(I)||o({type:"SET_REFRESH_COUNTDOWN",payload:I})}}else _.kind==="success"&&_.message.includes("refresh completed")&&o({type:"SET_REFRESH_COUNTDOWN",payload:null})}),d=()=>{let _=n.runtime;o({type:"SET_ENGINE_STATE",payload:c(_.phase)}),o({type:"SET_DEBUG_ENABLED",payload:_.flags.debug});let w=n.configurationContext.configuration.device?.id??null;o({type:"SET_DEVICE_ID",payload:w}),s(Object.freeze({phase:_.phase,flags:Object.freeze({debug:_.flags.debug})}))};d();let f=e.on("engine:started",()=>{o({type:"SET_ENGINE_STATE",payload:"RUNNING"}),d()}),p=e.on("engine:stopping",()=>{o({type:"SET_ENGINE_STATE",payload:"STOPPING"}),d()}),h=e.on("engine:stopped",()=>{o({type:"SET_ENGINE_STATE",payload:"STOPPED"}),d()}),g=e.on("ws:connecting",()=>{o({type:"SET_CONNECTION_STATUS",payload:"connecting"}),o({type:"SET_CONNECTION_RETRY",payload:null})}),m=e.on("ws:connected",()=>{o({type:"SET_CONNECTION_STATUS",payload:"connected"}),o({type:"SET_CONNECTION_RETRY",payload:null})}),b=e.on("ws:disconnected",()=>{o({type:"SET_CONNECTION_STATUS",payload:"disconnected"}),o({type:"SET_CONNECTION_RETRY",payload:null})}),E=e.on("ws:retrying",_=>{o({type:"SET_CONNECTION_STATUS",payload:"connecting"}),o({type:"SET_CONNECTION_RETRY",payload:_.retryInSec})}),v=e.on("runtime:debug:changed",({enabled:_})=>{o({type:"SET_DEBUG_ENABLED",payload:_});let w=n.runtime;s(Object.freeze({phase:w.phase,flags:Object.freeze({debug:_})}))}),S=e.on("config:loaded",_=>{let w=_.device?.id??null;o({type:"SET_DEVICE_ID",payload:w})}),k=new Ee("Welcome to DeviceLink Agent UI",{ts:Date.now(),kind:"status"}),x=new Ee('Type "help" for commands. Start bridge with: start or run',{ts:Date.now(),kind:"status"});return o({type:"SET_MESSAGES",payload:[k,x]}),()=>{u.unsubscribe(),f.unsubscribe(),p.unsubscribe(),h.unsubscribe(),g.unsubscribe(),m.unsubscribe(),b.unsubscribe(),E.unsubscribe(),v.unsubscribe(),S.unsubscribe()}},[e,n,o]);let a=lt(()=>({state:r,dispatch:o,engine:n,bus:e,runtime:i}),[r,n,e,i]);return xu(Us.Provider,{value:a,children:t})}function He(){let n=Eu(Us);if(!n)throw new Error("useAppContext must be used within AppContextProvider");return n}function Ks(n){let{state:e}=He(),t=c=>!(c.category?.includes("token-refresh")||c.groupKey?.startsWith("auth:refresh")&&c.kind==="info"&&c.message.includes("refresh scheduled in")),r=n?.displayFilter??t,o=lt(()=>e.messages.filter(r),[e.messages,r]),i=lt(()=>c=>e.messages.filter(c),[e.messages]),s=lt(()=>c=>e.messages.filter(u=>u.kind===c),[e.messages]),a=lt(()=>c=>e.messages.filter(u=>u.scope===c),[e.messages]);return lt(()=>({rawMessages:e.messages,messagesToDisplay:o,getFilteredMessages:i,getMessagesByKind:s,getMessagesByScope:a}),[e.messages,o,i,s,a])}import{Fragment as dt,jsx as B,jsxs as X}from"react/jsx-runtime";function Au(n){return n==="RUNNING"?"green":n==="STOPPING"?"yellow":n==="STOPPED"?"red":"gray"}function Du(n){return n==="connected"?"green":n==="connecting"?"yellow":"red"}function Iu(n){return n==="connected"?"connected":n==="connecting"?"trying":"disconnected"}function Ou(n){let{state:e}=He(),t="DeviceLink Agent",r=e.debugEnabled,o=e.deviceId??"not signed in",i=e.engineState,s=Au(i),a=e.isProcessing,c=e.connectionStatus,u=e.connectionRetryInSec,d=e.refreshCountdownSec,[f,p]=qs(d),[h,g]=qs(u);qr(()=>{p(d)},[d]),qr(()=>{g(u)},[u]),qr(()=>{if(d===null||d<=0){p(null);return}p(d);let _=setInterval(()=>{p(w=>w===null||w<=1?null:w-1)},1e3);return()=>clearInterval(_)},[d]),qr(()=>{if(u===null||u<=0){g(null);return}g(u);let _=setInterval(()=>{g(w=>w===null||w<=1?null:w-1)},1e3);return()=>clearInterval(_)},[u]);let m=Iu(c),b=Du(c),E=t.length,v=30,S=n.width-E-2,k=[];if(k.push(B(L,{color:b,children:m},"conn")),h!==null&&h>0&&k.push(X(L,{color:b,children:["retry in ",h,"s"]},"retry")),f!==null&&f>0&&f<=5&&k.push(X(L,{color:"cyan",children:["refresh in ",f,"s"]},"refresh")),S>=v){let _=js(o,{length:Math.max(5,S-50)});return X(ut,{justifyContent:"space-between",width:n.width,children:[X(ut,{children:[B(L,{bold:!0,children:t}),r&&X(dt,{children:[B(L,{children:" "}),B(L,{color:"yellow",bold:!0,children:"[DEBUG]"})]})]}),X(ut,{children:[a&&B(dt,{children:B(L,{dimColor:!0,children:"\u23F3 "})}),B(L,{dimColor:!0,children:"device "}),X(L,{children:[_," "]}),B(L,{children:"\xB7 "}),B(L,{color:s,children:i}),k.length>0&&X(dt,{children:[B(L,{children:" \xB7 "}),k.map((w,I)=>X(Vs.Fragment,{children:[I>0&&B(L,{children:" \xB7 "}),w]},I))]})]})]})}let x=js(o,{length:n.width-8});return X(ut,{flexDirection:"column",width:n.width,children:[X(ut,{children:[B(L,{bold:!0,children:t}),r&&X(dt,{children:[B(L,{children:" "}),B(L,{color:"yellow",bold:!0,children:"[DEBUG]"})]})]}),X(ut,{children:[a&&B(dt,{children:B(L,{dimColor:!0,children:"\u23F3 "})}),B(L,{dimColor:!0,children:"device "}),X(L,{children:[x," "]}),B(L,{children:"\xB7 "}),B(L,{color:s,children:i}),k.length>0&&X(dt,{children:[B(L,{children:" \xB7 "}),k.map((_,w)=>X(Vs.Fragment,{children:[w>0&&B(L,{children:" \xB7 "}),_]},w))]})]})]})}var Ws=Ou;import Nu from"lodash/isString.js";import Js,{useMemo as Hs}from"react";import{Box as Pu,Text as Ge}from"ink";import{jsx as Je,jsxs as Gs}from"react/jsx-runtime";function Fu(n){return n==="error"?"red":n==="warning"?"yellow":n==="success"?"green":n==="info"?"cyan":"white"}function Lu(n){return n==="error"?"ERROR":n==="warning"?"WARN":n==="success"?"SUCCESS":n==="info"?"INFO":n==="status"?"STATUS":"INFO"}function Mu(n){let e=new Date(n),t=String(e.getHours()).padStart(2,"0"),r=String(e.getMinutes()).padStart(2,"0"),o=String(e.getSeconds()).padStart(2,"0");return`${t}:${r}:${o}`}function $u(n,e){if(Nu(n)||(n=String(n??"")),n.length<=e)return[n];let t=[],r="",o=n.split(/(\s+)/);for(let i of o)if((r+i).length<=e)r+=i;else{r&&t.push(r),r="";let s=i;for(;s.length>e;)t.push(s.slice(0,e)),s=s.slice(e);r=s}return r&&t.push(r),t.length>0?t:[n]}var Uu=Js.memo(function(e){let{messagesToDisplay:t}=Ks(),r=e.height??14,c=Math.max(20,e.width-9-8-2-2),u=Hs(()=>t.slice(-r),[t,r]),f=Hs(()=>u.flatMap(p=>{let h=Mu(p.ts),g=Lu(p.kind);return $u(p.message,c).map((b,E)=>({msg:p,lineIndex:E,time:E===0?h:"",kind:E===0?g:"",message:b,isContinuation:E>0}))}),[u,c]).slice(-r);return Je(Pu,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,height:r+2,width:e.width,children:f.length===0?Je(Ge,{dimColor:!0,children:"(no messages)"}):f.map(p=>Je(Bu,{item:p},`${p.msg.id}:${p.lineIndex}`))})},(n,e)=>n.height===e.height&&n.width===e.width),Bu=Js.memo(function({item:e}){return Gs(Ge,{children:[e.time&&Gs(Ge,{dimColor:!0,children:[e.time," "]}),e.kind&&Je(Ge,{color:Fu(e.msg.kind),children:e.kind}),e.kind&&Je(Ge,{children:" "}),e.isContinuation&&Je(Ge,{dimColor:!0,children:" "}),Je(Ge,{dimColor:e.msg.scope==="system",children:e.message})]})}),zs=Uu;import Ku from"react";import{Box as Wr,Text as To,useFocus as ju}from"ink";import Vu from"ink-text-input";import{jsx as pt,jsxs as Ys}from"react/jsx-runtime";var qu=Ku.memo(function(e){let{state:t,dispatch:r}=He(),{isFocused:o}=ju({autoFocus:!0,isActive:!t.isProcessing}),i=e.isPassphraseMode?"passphrase> ":"dlink> ",s=Math.max(10,e.width-i.length-2);return Ys(Wr,{flexDirection:"column",width:e.width,children:[Ys(Wr,{width:e.width,children:[pt(To,{color:e.isPassphraseMode?"cyan":"green",children:i}),pt(Wr,{width:s,children:t.isProcessing?pt(To,{dimColor:!0,italic:!0,children:"Processing..."}):pt(Vu,{value:t.input,onChange:a=>r({type:"SET_INPUT",payload:a}),onSubmit:e.onSubmit,placeholder:o?void 0:e.isPassphraseMode?"Enter passphrase...":'Type a command or "help"',mask:e.isPassphraseMode?"*":void 0},`input-${t.historyIndex}-${e.isPassphraseMode?"passphrase":"normal"}`)})]}),e.passphraseError&&pt(Wr,{marginTop:1,children:pt(To,{color:"red",children:e.passphraseError})})]})}),Qs=qu;import{Component as Wu}from"react";import{Box as ft,Text as Hr}from"ink";import{Fragment as Hu,jsx as Ie,jsxs as Xs}from"react/jsx-runtime";var Ot=class extends Wu{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){this.props.onError&&this.props.onError(e,t)}render(){return this.state.hasError&&this.state.error?Ie(ft,{flexDirection:"column",padding:1,children:Ie(ft,{borderStyle:"round",borderColor:"red",paddingX:1,children:Xs(ft,{flexDirection:"column",children:[Ie(Hr,{color:"red",bold:!0,children:"\u26A0\uFE0F Application Error"}),Ie(ft,{height:1}),Ie(Hr,{color:"red",children:this.state.error.message}),this.state.error.stack&&Xs(Hu,{children:[Ie(ft,{height:1}),Ie(Hr,{dimColor:!0,children:this.state.error.stack})]}),Ie(ft,{height:1}),Ie(Hr,{dimColor:!0,children:"Press Ctrl+C to exit"})]})})}):this.props.children}};import{jsx as $e,jsxs as Qu}from"react/jsx-runtime";function Yu(){let{exit:n}=Ju(),{state:e,dispatch:t,engine:r,bus:o}=He(),[i,s]=Ms(),a=i,c=s,u=Ro(g=>o.emit("console:command",g),[o]),d=Math.max(5,c-5),f=Math.min(d-3,Math.max(5,Math.floor(d*.7)));zu((g,m)=>{if(m.ctrl&&g==="c"){r.requestStop("user exit");return}if(!e.isProcessing&&(m.upArrow||m.downArrow)){if(e.commandHistory.length===0)return;if(m.upArrow){let b=e.historyIndex===-1?e.commandHistory.length-1:Math.max(0,e.historyIndex-1);t({type:"SET_HISTORY_INDEX",payload:b}),t({type:"SET_INPUT",payload:e.commandHistory[b]})}else if(m.downArrow){if(e.historyIndex===-1)return;let b=e.historyIndex+1;b>=e.commandHistory.length?(t({type:"SET_HISTORY_INDEX",payload:-1}),t({type:"SET_INPUT",payload:""})):(t({type:"SET_HISTORY_INDEX",payload:b}),t({type:"SET_INPUT",payload:e.commandHistory[b]}))}}}),Gu(()=>{t({type:"RESET_HISTORY_INDEX_IF_TYPING"})},[e.input,t]);let p=Ro(async g=>{let m=g.trim();t({type:"RESET_INPUT"}),t({type:"RESET_HISTORY_INDEX"}),m&&t({type:"ADD_COMMAND_TO_HISTORY",payload:m}),t({type:"SET_IS_PROCESSING",payload:!0});try{await u(m)}catch(b){let E=K(b),v=new Ee(`Command failed: ${E}`,{ts:Date.now(),kind:"error"});t({type:"ADD_MESSAGE",payload:v})}finally{t({type:"SET_IS_PROCESSING",payload:!1})}},[t,n,u,r]),h=Ro((g,m)=>{let b=new Ee(`UI Error: ${g.message}`,{ts:Date.now(),kind:"error"});t({type:"ADD_MESSAGE",payload:b})},[t]);return $e(Ot,{onError:h,children:Qu(Co,{flexDirection:"column",padding:1,width:a,children:[$e(Ws,{width:a-2}),$e(Co,{height:1}),$e(zs,{height:f,width:a-2}),$e(Co,{height:1}),$e(Qs,{width:a-2,onSubmit:p})]})})}function xo({engine:n,bus:e}){return $e(Bs,{engine:n,bus:e,children:$e(Yu,{})})}function Zs(n,e){let t=n.runtime.flags;t.headless?console.log(`[agent] Headless UI (${t.headlessReason})`):console.warn(`[agent] No TTY stdin; non-interactive boot (${t.headlessReason})`),e.emit("ui:initialized",Date.now());let r=setInterval(()=>{},6e4);return new Promise(o=>{process.on("SIGTERM",()=>{clearInterval(r),o()}),process.on("SIGINT",()=>{clearInterval(r),o()})})}function ea(n,e){let t=n.runtime.flags.headless?null:vo();if(!t)return Zs(n,e);let{waitUntilExit:r}=Zu(Xu.createElement(xo,{engine:n,bus:e}),{stdin:t});return r()}var Gr=class{name="ui-orchestrator";async onStarted(e){ea(e.engine,e.bus)}async onStop(e){e.notifier.info("UI exited, stopping engine",{scope:"system"}),e.engine&&e.engine.requestStop("UI exited")}};import vd from"lodash/truncate.js";import ud from"lodash/isNumber.js";import Do from"lodash/isEmpty.js";import dd from"lodash/isString.js";import mt from"lodash/trim.js";import pd from"lodash/trimEnd.js";import ra from"lodash/isEmpty.js";import Ao from"lodash/isString.js";import{randomUUID as ed}from"node:crypto";import{existsSync as td,mkdirSync as rd,readFileSync as na,writeFileSync as nd}from"node:fs";import{homedir as od}from"node:os";import Jr from"node:path";var id="telemetry.json",sd="install-id",ta=/^[0-9a-f]{32}$/;function ad(){return Jr.join(re(),id)}function cd(){let n=process.env.DLINK_HOME;return Ao(n)&&!ra(n)?n:Jr.join(od(),".devicelink")}function ld(){let n=process.env.DLINK_INSTALL_ID;if(Ao(n)&&ta.test(n.trim()))return n.trim();try{let e=na(Jr.join(cd(),sd),"utf8").trim();return ta.test(e)?e:void 0}catch{return}}function zr(){let n=ad();try{if(td(n)){let t=JSON.parse(na(n,"utf8"));if(Ao(t.anonymous_id)&&!ra(t.anonymous_id))return t.anonymous_id}}catch{}let e=ld()??ed().replace(/-/g,"");try{rd(Jr.dirname(n),{recursive:!0});let t={anonymous_id:e,created_at:new Date().toISOString()};nd(n,JSON.stringify(t,null,2),"utf8")}catch{}return e}var fd=1e4,md=Vn,hd=200,gd=4e3,yd="/api/telemetry/agent";function Io(n=process.env){return!(!We("DLINK_TELEMETRY",!0,n)||We("DO_NOT_TRACK",!1,n))}var Yr=class{enabled;transport;queue;timer;inFlight;constructor(e,t=Io()){this.transport=e,this.enabled=t,this.queue=[],this.timer=null,this.inFlight=new Set}get isEnabled(){return this.enabled}get anonymousId(){return this.enabled?zr():"disabled"}capture(e,t,r){if(this.enabled&&!(!dd(e)||Do(mt(e)))&&!(this.queue.length>=hd)){if(this.queue.push({kind:mt(e),severity:r,at:Date.now(),props:t&&Object.keys(t).length>0?t:void 0}),this.queue.length>=md){this.flush();return}this.timer||(this.timer=setTimeout(()=>void this.flush(),fd),this.timer.unref?.())}}async flush(){if(this.timer&&(clearTimeout(this.timer),this.timer=null),!this.enabled||this.queue.length===0)return;let e=this.queue.splice(0,Vn);if(this.transport.socketReady()){this.sendOverSocket(e),this.queue.length>0&&this.flush();return}let t=this.post(e).finally(()=>this.inFlight.delete(t));this.inFlight.add(t),await t,this.queue.length>0&&await this.flush()}async shutdown(){await this.flush(),await Promise.allSettled([...this.inFlight])}sendOverSocket(e){try{this.transport.socketSend(JSON.stringify({type:"agent_event",schema_version:jn,events:e.map(t=>this.wire(t))}))}catch{return}}async post(e){let t=this.transport.controlBaseUrl();if(!t||Do(mt(t)))return;let r=new AbortController,o=setTimeout(()=>r.abort(),gd);o.unref?.();let i=this.transport.accessToken(),s={"content-type":"application/json"};i&&!Do(mt(i))&&(s.authorization=`Bearer ${mt(i)}`);try{await fetch(`${pd(mt(t),"/")}${yd}`,{method:"POST",headers:s,body:JSON.stringify({schema_version:jn,fingerprint:this.anonymousId,events:e.map(a=>this.wire(a))}),signal:r.signal})}catch{return}finally{clearTimeout(o)}}wire(e){let t={kind:e.kind};return e.severity&&(t.severity=e.severity),ud(e.at)&&(t.at=e.at),e.props&&(t.props=e.props),t}};var Z={SESSION_STARTED:"agent.session.started",SESSION_EXITED:"agent.session.exited",SESSION_CRASHED:"agent.session.crashed",CONFIG_LOADED:"agent.config.loaded",SECRETS_BACKEND_RESOLVED:"agent.secrets.backend_resolved",AUTH_SIGNIN_REQUESTED:"agent.auth.signin_requested",AUTH_SIGNIN_COMPLETED:"agent.auth.signin_completed",AUTH_SIGNOUT:"agent.auth.signout",AUTH_TOKENS_REFRESHED:"agent.auth.tokens_refreshed",SOCKET_CONNECTED:"agent.socket.connected",SOCKET_DISCONNECTED:"agent.socket.disconnected",SOCKET_RETRYING:"agent.socket.retrying",SOCKET_SESSION_READY:"agent.socket.session_ready",SOCKET_SESSION_CONFLICT:"agent.socket.session_conflict",TOOL_CALL_RECEIVED:"agent.tool.call_received"};var bd="protects the store only if it leaves this machine; set DLINK_PASSPHRASE or unlock a keychain for local protection";function oa(n){let e=[n.label];n.migratedFrom!==void 0&&e.push(`migrated from ${n.migratedFrom}`),n.degraded&&n.expectedBackend!==void 0&&e.push(`secrets were stored by ${n.expectedBackend}, which is unavailable now`),n.weak&&e.push(bd);let t=sa(n);return t.length>0&&e.push(`skipped ${t.join(", ")}`),{ok:!n.weak&&!n.degraded,detail:e.join("; ")}}function ia(n){let e={backend:n.backend,weak:n.weak,degraded:n.degraded,skipped:sa(n)};return n.migratedFrom!==void 0&&(e.migrated_from=n.migratedFrom),e}function sa(n){return n.attempts.filter(e=>!e.available).map(e=>`${e.id}:${e.reason??"unknown"}`)}var Qr=class{name="telemetry-orchestrator";relay;startedAt;reachedReady;toolCalls;context=null;accessToken;relayNegotiated=!1;socketConnected=!1;constructor(){this.startedAt=Date.now(),this.reachedReady=!1,this.toolCalls=0;let e={controlBaseUrl:()=>this.context?.engine.configurationContext.configuration.controlBaseUrl,accessToken:()=>this.accessToken,socketSend:t=>this.context?.bus.emit("ws:tx",{text:t}),socketReady:()=>this.socketConnected&&this.relayNegotiated};this.relay=new Yr(e)}handlers(){return{"config:loaded":()=>{this.relay.capture(Z.CONFIG_LOADED)},"auth:signin:requested":()=>{this.relay.capture(Z.AUTH_SIGNIN_REQUESTED)},"auth:signin:completed":()=>{this.relay.capture(Z.AUTH_SIGNIN_COMPLETED,{seconds_since_start:this.elapsedSec()})},"auth:signout:requested":()=>{this.relay.capture(Z.AUTH_SIGNOUT)},"auth:tokens:updated":e=>{this.accessToken=e.accessToken||void 0,this.relay.capture(Z.AUTH_TOKENS_REFRESHED)},"ws:connected":()=>{this.socketConnected=!0,this.relay.capture(Z.SOCKET_CONNECTED)},"ws:disconnected":e=>{this.socketConnected=!1,this.relayNegotiated=!1,this.relay.capture(Z.SOCKET_DISCONNECTED,{code:e.code})},"ws:retrying":e=>{this.relay.capture(Z.SOCKET_RETRYING,{attempt:e.attempt,retry_in_sec:e.retryInSec})},"auth:session_init_ack":e=>{this.reachedReady=!0,this.relayNegotiated=e.ok===!0&&Ze(e.capabilities,U.TELEMETRY_RELAY_V1),this.relay.capture(Z.SOCKET_SESSION_READY,{mode:e.ok?e.mode??null:null,reason:e.ok?e.reason??null:null,seconds_since_start:this.elapsedSec()})},"auth:session_conflict":()=>{this.relay.capture(Z.SOCKET_SESSION_CONFLICT)},"tool:call":e=>{this.toolCalls+=1,this.relay.capture(Z.TOOL_CALL_RECEIVED,{tool:e.tool,call_index:this.toolCalls})},"engine:crashed":e=>{this.relay.capture(Z.SESSION_CRASHED,{reason:e.reason,detail:vd(Cn(e.detail),{length:200,omission:""})||null,uptime_sec:this.elapsedSec(),reached_session_ready:this.reachedReady,tool_calls:this.toolCalls},"error")}}}async onStart(e){this.context=e,this.relay.capture(Z.SESSION_STARTED,{headless:e.headless}),this.relay.capture(Z.SECRETS_BACKEND_RESOLVED,{...ia(e.engine.secretsReport),platform:process.platform})}async onStop(e){this.relay.capture(Z.SESSION_EXITED,{uptime_sec:this.elapsedSec(),reached_session_ready:this.reachedReady,tool_calls:this.toolCalls}),await this.relay.shutdown()}elapsedSec(){return Math.round((Date.now()-this.startedAt)/1e3)}};var Xr=class{name="os-signals-orchestrator";sigint;sigterm;async onStart(e){let t=r=>{e.notifier.warn(`received ${r}`,{scope:"system"}),e.engine.requestStop(r)};this.sigint=()=>t("SIGINT"),this.sigterm=()=>t("SIGTERM"),process.on("SIGINT",this.sigint),process.on("SIGTERM",this.sigterm)}async onStarted(e){return Promise.resolve()}async onStop(e){this.sigint&&process.off("SIGINT",this.sigint),this.sigterm&&process.off("SIGTERM",this.sigterm),this.sigint=void 0,this.sigterm=void 0,e.notifier.info("OS signal handlers removed",{scope:"system"})}async onStopped(e){return Promise.resolve()}};import Sd from"lodash/isNumber.js";import ze from"node:fs";import No from"node:path";var Zr=class{handlers=new Map;subcommandHandlers=new Map;command(e,t){if(this.handlers.has(e))throw new Error(`Command '${e}' is already registered`);return this.handlers.set(e,t),this}subcommand(e,t,r){this.subcommandHandlers.has(e)||this.subcommandHandlers.set(e,new Map);let o=this.subcommandHandlers.get(e);if(o.has(t))throw new Error(`Subcommand '${e} ${t}' is already registered`);return o.set(t,r),this}commandStringToArgv(e){let t=[],r="",o=!1,i="";for(let s=0;s<e.length;s++){let a=e[s];a==='"'||a==="'"?o&&a===i?(t.push(r),r="",o=!1,i=""):o?r+=a:(r&&(t.push(r),r=""),o=!0,i=a):a===" "&&!o?r&&(t.push(r),r=""):r+=a}return(o||r)&&t.push(r),["node","script",...t]}parseString(e){let t=this.commandStringToArgv(e);return this.parse(t)}parse(e){let t=e.slice(2);if(t.length===0)return null;let r={command:"",args:[],options:{}},o=0;for(;o<t.length&&t[o]?.startsWith("--");)o++;if(o>=t.length||!t[o])return null;for(r.command=t[o],o++;o<t.length&&t[o]?.startsWith("--");)o++;for(o<t.length&&t[o]&&!t[o].startsWith("--")&&(r.subcommand=t[o],o++);o<t.length;){let i=t[o];if(i.startsWith("--")){let s=i.slice(2);if(s.includes("=")){let[a,c]=s.split("=",2);r.options[a]=c||!0}else{let a=t[o+1];a&&!a.startsWith("--")?(r.options[s]=a,o++):r.options[s]=!0}}else r.args.push(i);o++}return r}async execute(e){let t=this.parse(e);if(!t)return!1;if(t.subcommand){let o=this.subcommandHandlers.get(t.command);if(o){let i=o.get(t.subcommand);if(i)return await i(t),!0}}let r=this.handlers.get(t.command);return r?(await r(t),!0):!1}hasCommand(e,t){return t?this.subcommandHandlers.get(e)?.has(t)??!1:this.handlers.has(e)}getCommands(){return Array.from(this.handlers.keys())}};var Oo=class{kind;payloadJson;constructor(e,t){this.kind=e,this.payloadJson=t}},en=class{matchers=[];register(e){return this.matchers.push(e),this}build(e){let t=[e.command.toLowerCase()];e.subcommand&&t.push(e.subcommand.toLowerCase());for(let r of this.matchers){let o=r(t,e);if(o.handled){let i;if(o.job)i=o.job;else if(o.kind)i=this.createCommandInput(o.kind,e);else return null;return i}}return null}createCommandInput(e,t){let r={command:t.command,subcommand:t.subcommand,args:t.args,options:t.options};return new Oo(e,JSON.stringify(r))}};var tn=class{name="console-orchestrator";commandParser;commandJobBuilder;bridgeConnected=!1;constructor(){this.commandParser=new Zr,this.commandJobBuilder=new en,this.setupCommandMappings()}onRegister(e){}async onStart(e){e.notifier.info("Starting console orchestrator (UI)",{scope:"system"}),e.on("ws:connected",()=>{this.bridgeConnected=!0}),e.on("ws:disconnected",()=>{this.bridgeConnected=!1}),e.on("console:command",async t=>{try{let r=this.commandParser.parseString(t);if(!r){e.notifier.warn("Invalid command format");return}let o=this.commandJobBuilder.build(r);if(!o){this.reportUnknownCommand(r,e);return}switch(o.kind){case"help":for(let i of Ns())e.notifier.info(i);break;case"start":this.handleStart(e);break;case"stop":this.handleStop(e);break;case"status":this.handleStatus(e);break;case"doctor":this.handleDoctor(e);break;case"roots-list":this.handleRootsList(e);break;case"roots-add":this.handleRootsAdd(r,e);break;case"signin":e.bus.emit("auth:signin:requested",void 0),e.notifier.info("Sign-in requested");break;case"signout":e.bus.emit("auth:signout:requested",void 0),e.notifier.info("Sign-out requested");break;case"debug-on":e.flags.debug=!0,e.bus.emit("runtime:debug:changed",{enabled:!0}),e.notifier.success("Debug mode enabled");break;case"debug-off":e.flags.debug=!1,e.bus.emit("runtime:debug:changed",{enabled:!1}),e.notifier.success("Debug mode disabled");break;case"replace":e.bus.emit("auth:session_conflict:resolve",{choice:"USE_NEW"}),e.notifier.info("Taking over the existing session");break;default:e.notifier.warn(`Command not implemented: ${o.kind}`);break}}catch(r){let o=K(r);e.notifier.error(`Command failed: ${o}`)}})}async onStarted(e){e.notifier.info("Console orchestrator started",{scope:"system"})}async onStopped(e){}reportUnknownCommand(e,t){let r=`${e.command}${e.subcommand?" "+e.subcommand:""}`,o=this.suggestCommand(e.command),i=o?` Did you mean "${o}"?`:' Type "help" for commands.';t.notifier.warn(`Unknown command: ${r}.${i}`)}suggestCommand(e){let t=e.toLowerCase();if(!t)return null;let r=null;for(let i of xs()){let s=this.editDistance(t,i);(r===null||s<r.distance)&&(r={name:i,distance:s})}if(!r)return null;let o=t.length<=4?1:2;return r.distance<=o?r.name:null}editDistance(e,t){let r=t.length+1,o=Array.from({length:r},(i,s)=>s);for(let i=1;i<=e.length;i++){let s=[i];for(let a=1;a<r;a++){let c=o[a-1]+(e[i-1]===t[a-1]?0:1),u=s[a-1]+1,d=o[a]+1;s[a]=Math.min(c,u,d)}o=s}return o[r-1]}isSignedIn(e){let t=e.tokens?.accessTokenExpSec;return Sd(t)?t>fe():!1}handleStart(e){let t=e.engine.configurationContext.configuration;if(!t.device?.id){e.notifier.warn("Bridge: no device identity yet. Wait for configuration to load.");return}if(!this.isSignedIn(t)){e.notifier.warn("Bridge: not signed in. Run signin first.");return}if(this.bridgeConnected){e.notifier.info("Bridge is already connected");return}e.bus.emit("auth:ws:reconnect",void 0),e.notifier.info("Bridge start requested")}handleStop(e){if(!this.bridgeConnected){e.notifier.info("Bridge is already disconnected");return}e.bus.emit("ws:disconnect",{reason:"console: stop"}),e.notifier.info("Bridge stop requested")}handleStatus(e){let t=e.engine.configurationContext.configuration,r=[["Agent",he()],["Engine",String(e.engine.runtime.phase)],["Device",t.device?.id??"(none)"],["Device name",t.device?.name??"(none)"],["Signed in",this.isSignedIn(t)?"yes":"no"],["Bridge",this.bridgeConnected?"connected":"disconnected"],["Control URL",t.controlBaseUrl??"(unset)"],["Bridge URL",t.bridgeWsUrl??"(unset)"],["Directories",String(t.directories.length)],["Config dir",re()]],o=r.reduce((i,[s])=>Math.max(i,s.length),0);e.notifier.info("Status:");for(let[i,s]of r)e.notifier.info(` ${i.padEnd(o)} ${s}`)}handleDoctor(e){let t=e.engine.configurationContext.configuration,r=[],o=Number.parseInt(process.versions.node.split(".")[0],10);r.push({label:"Node runtime",ok:Number.isFinite(o)&&o>=20,detail:`v${process.versions.node} (requires >= 20)`});let i=re(),s=!1,a=i;try{ze.mkdirSync(i,{recursive:!0}),ze.accessSync(i,ze.constants.W_OK),s=!0}catch(h){a=`${i} (${K(h)})`}r.push({label:"Config directory",ok:s,detail:a}),r.push({label:"Device identity",ok:!!t.device?.id&&!!t.device?.keys?.public,detail:t.device?.id?`id ${t.device.id}`:"no device id"});let c=this.isSignedIn(t);r.push({label:"Authentication",ok:c,detail:c?"access token valid":"not signed in (run signin)"}),r.push({label:"Control URL",ok:!!t.controlBaseUrl,detail:t.controlBaseUrl??"unset"}),r.push({label:"Bridge URL",ok:!!t.bridgeWsUrl,detail:t.bridgeWsUrl??"unset"});let u=oa(e.engine.secretsReport);r.push({label:"Secret storage",ok:u.ok,detail:u.detail}),r.push({label:"Bridge connection",ok:this.bridgeConnected,detail:this.bridgeConnected?"connected":"disconnected"});let d=t.directories.filter(h=>!ze.existsSync(h.path));r.push({label:"Shared directories",ok:t.directories.length>0&&d.length===0,detail:t.directories.length===0?"none configured":d.length===0?`${t.directories.length} present`:`missing: ${d.map(h=>h.path).join(", ")}`});let f=r.reduce((h,g)=>Math.max(h,g.label.length),0);e.notifier.info("Doctor:");for(let h of r){let g=` ${h.ok?"PASS":"WARN"} ${h.label.padEnd(f)} ${h.detail}`;h.ok?e.notifier.success(g):e.notifier.warn(g)}let p=r.filter(h=>!h.ok).length;p===0?e.notifier.success("Doctor: all checks passed"):e.notifier.warn(`Doctor: ${p} check(s) need attention`)}handleRootsList(e){let t=e.engine.configurationContext.configuration.directories;if(t.length===0){e.notifier.info("No directories shared. Add one with: roots add <path>");return}e.notifier.info(`Shared directories (${t.length}):`);for(let r of t){let o=ze.existsSync(r.path)?"":" (missing)";e.notifier.info(` ${r.name} ${r.path}${o}`)}}handleRootsAdd(e,t){let r=e.args[0];if(!r){t.notifier.warn("Usage: roots add <path>");return}let o=No.resolve(r);if(!ze.existsSync(o)){t.notifier.warn(`Directory does not exist: ${o}`);return}let i;try{i=ze.statSync(o)}catch(u){t.notifier.warn(`Cannot read ${o}: ${K(u)}`);return}if(!i.isDirectory()){t.notifier.warn(`Not a directory: ${o}`);return}let s=t.engine.configurationContext.configuration;if(s.directories.some(u=>No.resolve(u.path).toLowerCase()===o.toLowerCase())){t.notifier.info(`Already shared: ${o}`);return}let c={id:wt(o),name:No.basename(o),path:o,tag:kt(o)};s.directories.push(c),t.bus.emit("config:save:requested",s),t.bus.emit("meta:data:requested:directories",void 0),t.notifier.success(`Added directory: ${o}`)}setupCommandMappings(){let e=this.commandJobBuilder;e.register(t=>{if(t.length===1){let r=t[0];if(r==="help"||r==="?")return{handled:!0,kind:"help"};if(r==="roots")return{handled:!0,kind:"roots-list"};if(r==="start"||r==="run")return{handled:!0,kind:"start"};if(r==="stop")return{handled:!0,kind:"stop"};if(r==="signin")return{handled:!0,kind:"signin"};if(r==="signout")return{handled:!0,kind:"signout"};if(r==="status")return{handled:!0,kind:"status"};if(r==="doctor")return{handled:!0,kind:"doctor"};if(r==="replace"||r==="yes"||r==="y")return{handled:!0,kind:"replace"}}return{handled:!1}}),e.register(t=>{if(t.length===2){let[r,o]=t;if(r==="roots"){if(o==="add")return{handled:!0,kind:"roots-add"};if(o==="list")return{handled:!0,kind:"roots-list"}}if(r==="debug"){if(o==="on")return{handled:!0,kind:"debug-on"};if(o==="off")return{handled:!0,kind:"debug-off"}}}return{handled:!1}}),e.register((t,r)=>{if(t.length===1&&t[0]==="debug"&&r.args.length>0){let o=r.args[0];if(o==="on")return{handled:!0,kind:"debug-on"};if(o==="off")return{handled:!0,kind:"debug-off"}}return{handled:!1}})}};import kd from"lodash/isString.js";import Ye from"ws";var rn=class{ws=null;state={kind:"DISCONNECTED"};stopped=!1;connecting=!1;connId=0;connectionTimeout=null;heartbeatInterval=null;heartbeatTimeout=null;awaitingPong=!1;sendQueue=[];url;abortSignal;connectionTimeoutMs;heartbeatIntervalMs;pongTimeoutMs;maxSendQueueSize;sendQueueItemTtlMs;onStateChangeCallback;onErrorCallback;onConnectedCallback;onDisconnectedCallback;onMessageCallback;constructor(e,t={}){this.url=e,this.abortSignal=t.abortSignal,this.connectionTimeoutMs=t.connectionTimeoutMs??1e4,this.heartbeatIntervalMs=t.heartbeatIntervalMs??2e4,this.pongTimeoutMs=t.pongTimeoutMs??1e4,this.maxSendQueueSize=t.maxSendQueueSize??1e3,this.sendQueueItemTtlMs=t.sendQueueItemTtlMs??6e4,this.abortSignal&&this.abortSignal.addEventListener("abort",()=>{this.stop()},{once:!0})}registerOnStateChangeCallback(e){this.onStateChangeCallback=e}registerOnErrorCallback(e){this.onErrorCallback=e}registerOnConnectedCallback(e){this.onConnectedCallback=e}registerOnDisconnectedCallback(e){this.onDisconnectedCallback=e}registerOnMessageCallback(e){this.onMessageCallback=e}getState(){return this.state}getSocket(){return this.ws}isConnected(){return this.ws?.readyState===Ye.OPEN}async connect(){if(this.stopped)throw new Error("Socket is stopped");if(!(this.connecting||this.isConnected())){this.connecting=!0,this.updateState({kind:"CONNECTING"});try{await this.connectWebSocketOnce()}catch(e){let t=e instanceof Error?e:new Error(String(e));throw this.onErrorCallback?.(t),this.updateState({kind:"DISCONNECTED"}),t}finally{this.connecting=!1}}}stop(){this.stopped=!0,this.disconnect(!0)}reset(){this.stopped=!1}disconnect(e=!1){e&&(this.stopped=!0),this.connectionTimeout&&(clearTimeout(this.connectionTimeout),this.connectionTimeout=null),this.stopHeartbeat();let t=this.ws;this.ws=null,this.connecting=!1,t&&this.closeGracefullyThenTerminate(t,1e3,"client disconnect",2e3),this.updateState({kind:"DISCONNECTED"})}send(e,t){if(this.stopped){t?.(new Error("Socket is stopped"));return}let r=this.ws;if(r&&r.readyState===Ye.OPEN){r.send(e,i=>t?.(i??void 0));return}let o=Date.now();if(this.pruneSendQueue(o),this.sendQueue.length>=this.maxSendQueueSize){t?.(new Error(`Send queue full (max ${this.maxSendQueueSize})`));return}this.sendQueue.push({data:e,cb:t,expiresAt:o+this.sendQueueItemTtlMs})}closeGracefullyThenTerminate(e,t,r,o){try{(e.readyState===Ye.OPEN||e.readyState===Ye.CONNECTING)&&e.close(t,r)}catch{}let i=setTimeout(()=>{try{e.terminate()}catch{}},o);e.once("close",()=>clearTimeout(i))}async connectWebSocketOnce(){let e=++this.connId;return new Promise((t,r)=>{if(this.stopped){r(new Error("Socket is stopped"));return}let o=!1,i=!1,s=()=>{this.connectionTimeout&&(clearTimeout(this.connectionTimeout),this.connectionTimeout=null)},a=()=>{i||(i=!0,s(),t())},c=(d,f)=>{i||(i=!0,s(),f&&this.closeGracefullyThenTerminate(f,1e3,"connect failed",1500),r(d))},u;try{u=new Ye(this.url),this.connectionTimeout=setTimeout(()=>{c(new Error(`Connection timeout: unable to connect to ${this.url} within ${this.connectionTimeoutMs}ms`),u)},this.connectionTimeoutMs),u.on("open",()=>{if(o=!0,e!==this.connId){this.closeGracefullyThenTerminate(u,1e3,"stale connection",500);return}this.ws=u,this.retryResetOnConnect(),this.updateState({kind:"CONNECTED"}),this.onConnectedCallback?.(u),this.startHeartbeat(e),this.flushSendQueue(),a()}),u.on("error",d=>{if(e!==this.connId)return;let f=d instanceof Error?d:new Error(String(d));if(!o&&!i){c(f,u);return}this.onErrorCallback?.(f)}),u.on("close",(d,f)=>{if(e!==this.connId)return;let p=f?.toString?.()||"";if(!o&&!i){this.ws=null,this.stopHeartbeat(),this.updateState({kind:"DISCONNECTED"}),c(new Error(`WebSocket closed before connection established: ${d} ${p}`),u);return}this.ws===u&&(this.ws=null),this.stopHeartbeat(),this.updateState({kind:"DISCONNECTED"}),this.onDisconnectedCallback?.(d,p||`code ${d}`)}),u.on("message",d=>{if(e!==this.connId){this.onErrorCallback?.(new Error("Message ignored - connection ID mismatch"));return}if(this.ws!==u){this.onErrorCallback?.(new Error("Message ignored - socket mismatch"));return}this.onMessageCallback?.(d)}),u.on("pong",()=>{e===this.connId&&(this.awaitingPong=!1,this.heartbeatTimeout&&(clearTimeout(this.heartbeatTimeout),this.heartbeatTimeout=null))}),this.abortSignal&&this.abortSignal.addEventListener("abort",()=>{e===this.connId&&(this.closeGracefullyThenTerminate(u,1e3,"aborted",1e3),i||c(new Error("Connection aborted"),u))},{once:!0})}catch(d){let f=d instanceof Error?d:new Error(String(d));r(f)}})}retryResetOnConnect(){}startHeartbeat(e){this.stopHeartbeat(),this.ws&&(this.awaitingPong=!1,this.heartbeatInterval=setInterval(()=>{if(this.stopped||e!==this.connId)return;let r=this.ws;if(!(!r||r.readyState!==Ye.OPEN)){if(this.awaitingPong){this.closeGracefullyThenTerminate(r,4e3,"pong timeout",1e3);return}this.awaitingPong=!0;try{r.ping()}catch{this.closeGracefullyThenTerminate(r,1011,"ping failed",1e3);return}this.heartbeatTimeout&&clearTimeout(this.heartbeatTimeout),this.heartbeatTimeout=setTimeout(()=>{if(e!==this.connId)return;let o=this.ws;o&&this.closeGracefullyThenTerminate(o,4e3,"pong timeout",1e3)},this.pongTimeoutMs)}},this.heartbeatIntervalMs))}stopHeartbeat(){this.awaitingPong=!1,this.heartbeatInterval&&(clearInterval(this.heartbeatInterval),this.heartbeatInterval=null),this.heartbeatTimeout&&(clearTimeout(this.heartbeatTimeout),this.heartbeatTimeout=null)}flushSendQueue(){let e=this.ws;if(!e||e.readyState!==Ye.OPEN)return;let t=Date.now();this.pruneSendQueue(t);let r=this.sendQueue;this.sendQueue=[];for(let o of r)e.send(o.data,i=>o.cb?.(i??void 0))}pruneSendQueue(e){if(this.sendQueue.length===0)return;let t=[];for(let r of this.sendQueue)r.expiresAt>=e?t.push(r):r.cb?.(new Error("Send dropped: queued item expired"));this.sendQueue=t}updateState(e){this.state=e,this.onStateChangeCallback?.(e)}};var nn=class{name="websocket-orchestrator";socket=null;stopped=!1;connectLoopInFlight=null;retryAttempt=0;countdownTimer=null;lastUrl=null;endpointSource=void 0;discoveredFailures=0;reconnectPolicy=null;endpointOverride=null;async onStart(e){e.notifier.info("WS: orchestrator started",{scope:"system"})}async onStarted(e){let t=e.engine.configurationContext.configuration;await this.isConnectableToBridge(t,e)&&this.ensureStarted(e,"onStarted")}async onStop(e){this.stopped=!0,this.clearCountdown(),this.socket&&(e.notifier.info("WS: stopping socket (onStop)",{scope:"system"}),this.socket.stop(),this.socket=null),e.notifier.info("WS: orchestrator stopped",{scope:"system"})}handlers(){let e=async(t,r)=>{if(this.stopped)return;let o=r.engine.configurationContext.configuration;await this.isConnectableToBridge(o,r)&&this.ensureStarted(r,t)};return{"config:cache:validated":async(t,r)=>e("config:cache:validated",r),"auth:signout:requested":async(t,r)=>{r.notifier.info("WS: sign-out requested -> disconnecting"),this.stopped=!0,this.clearCountdown(),this.socket?.stop(),this.socket=null},"ws:disconnect":async(t,r)=>{r.notifier.info("WS: disconnect requested",{scope:"system"}),this.stopped=!0,this.clearCountdown(),this.socket?.stop(),this.socket=null},"discovery:endpoint:changed":async(t,r)=>{r.notifier.info(`WS: bridge endpoint discovered (${t.bridgeUrl})`,{scope:"system"}),await e("discovery:endpoint:changed",r)},"auth:ws:reconnect":async(t,r)=>{r.notifier.info("WS: reconnect requested by auth",{scope:"system"}),this.retryAttempt=0,this.clearCountdown(),this.stopped=!0,this.socket?.stop(),this.connectLoopInFlight&&await this.connectLoopInFlight.catch(()=>{}),this.socket=null,this.stopped=!1,this.ensureStarted(r,"auth:ws:reconnect")},"ws:reconnect:policy":async(t,r)=>{this.reconnectPolicy=t,r.notifier.info(`WS: reconnect policy reconnect=${t.reconnect} delay_ms=${t.delayMs??"-"} url=${t.url??"-"} rediscover=${t.rediscover===!0}`,{scope:"system"})},"ws:tx":async(t,r)=>{let o=this.socket?.getSocket();if(!o||o.readyState!==1){r.notifier.info("WS: TX dropped (not connected)",{scope:"system"});return}o.send(t.text)}}}ensureStarted(e,t){if(this.connectLoopInFlight){e.notifier.info(`WS: connect loop already running (reason=${t})`,{scope:"system"});return}let r=this.socket?.getSocket();if(r&&r.readyState<=1){e.notifier.info(`WS: already connected/connecting, skipping (reason=${t})`,{scope:"system"});return}this.connectLoopInFlight=this.startOrJoinConnectLoop(e,t).finally(()=>{this.connectLoopInFlight=null})}resolveEndpoint(e){let t=e.engine.configurationContext.loader,r=e.engine.configurationContext.configuration,o=t.resolveBridgeWsUrl(r.discovery);return this.endpointOverride&&(o.source==="discovered"||o.source==="bundled"||o.source===void 0)?{url:this.endpointOverride,source:"discovered"}:o}applyEndpointOverride(e,t){e&&(this.endpointOverride=e,t.notifier.info(`WS: server directed the next connection to ${e}`,{scope:"system"}))}async reconnectAfter(e,t){this.retryAttempt=0,this.clearCountdown(),e>0&&await ee(e),!this.stopped&&this.ensureStarted(t,"socket:disconnected")}noteConnectFailure(e){return this.endpointSource!=="discovered"?(this.discoveredFailures=0,!1):(this.discoveredFailures+=1,this.discoveredFailures<Jn?!1:(this.discoveredFailures=0,this.endpointOverride=null,e.notifier.info(`WS: discovered endpoint failed ${Jn}x -> falling back to the bundled endpoint`,{scope:"system"}),e.bus.emit("discovery:cache:discarded",{reason:"connect-failed-twice"}),!0))}async startOrJoinConnectLoop(e,t){this.stopped=!1;let r=e.engine.configurationContext.configuration;if(!await this.isConnectableToBridge(r,e))return;let i=this.resolveEndpoint(e),s=String(i.url??r.bridgeWsUrl),a=this.lastUrl;if(this.endpointSource=i.source,this.lastUrl=s,e.notifier.info(`WS: ensure connection (reason=${t}) url=${s} source=${this.endpointSource??"config"}`,{scope:"system"}),this.socket&&a!==null&&a!==s&&(e.notifier.info(`WS: endpoint changed ${a} -> ${s}; rebuilding the socket`,{scope:"system"}),this.socket.stop(),this.socket=null),!this.socket){let c=new rn(s,{abortSignal:e.signal,connectionTimeoutMs:1e4,heartbeatIntervalMs:2e4,pongTimeoutMs:1e4});this.socket=c,c.registerOnStateChangeCallback(u=>this.handleStateChange(u,e)),c.registerOnErrorCallback(u=>{e.notifier.error(`WS: transport error: ${u.message}`)}),c.registerOnConnectedCallback(u=>{this.socket===c&&(this.retryAttempt=0,this.clearCountdown(),e.notifier.success(e.flags.debug?`WS: connected (${s})`:"WS: connected"),e.bus.emit("ws:connected",{url:s,attempt:0}))}),c.registerOnDisconnectedCallback((u,d)=>{if(this.socket!==c){e.notifier.info(`WS: ignoring stale disconnect (code=${u})`,{scope:"system"});return}if(e.notifier.warn(`WS: disconnected code=${u} reason=${d||"-"}`),e.bus.emit("ws:disconnected",{code:u,reason:d}),this.stopped){e.notifier.info(`WS: stopped flag set, skipping auto-reconnect (code=${u})`,{scope:"system"});return}if(u===4001){e.notifier.info("WS: auth disconnect (4001) -> waiting for auth",{scope:"system"});return}if(wi.includes(u)){u===4013||u===4014?e.notifier.error(`This agent is not accepted by the server (code=${u} ${d||"-"}). Upgrade with: npm i -g @devicelink/dlink`):e.notifier.error(`The server refused this device permanently (code=${u} ${d||"-"}). Run dlink signin to connect it again.`),this.stopped=!0,this.socket?.stop(),this.socket=null;return}let f=this.reconnectPolicy;if(this.reconnectPolicy=null,f&&!f.reconnect){e.notifier.info("WS: server asked us not to reconnect",{scope:"system"}),this.stopped=!0,this.socket?.stop(),this.socket=null;return}if(f){this.applyEndpointOverride(f.url,e),this.reconnectAfter(f.delayMs??0,e);return}this.ensureStarted(e,"socket:disconnected")}),c.registerOnMessageCallback(u=>{if(this.socket!==c)return;let d=kd(u)?u:u.toString("utf8");e.bus.emit("ws:rx",{text:d})})}for(;!this.stopped;)try{let c=this.retryAttempt+1;e.notifier.info(`WS: connecting attempt #${c} to ${s}`,{scope:"system",groupKey:"ws:connecting"}),e.bus.emit("ws:connecting",{url:s,attempt:c}),await this.socket.connect();return}catch(c){if(this.stopped)return;if(this.retryAttempt+=1,this.noteConnectFailure(e)){this.socket?.stop(),this.socket=null,this.retryAttempt=0,this.clearCountdown(),e.bus.emit("ws:retrying",{retryInSec:1,attempt:0}),this.ensureStartedSoon(e);return}let u=this.computeBackoffMs(this.retryAttempt),d=Math.max(1,Math.ceil(u/1e3)),f=K(c);e.notifier.warn(`WS: connect failed (attempt=${this.retryAttempt}) -> retry in ${d}s (${f})`,{scope:"system",category:["websocket-connect"],groupKey:"ws:connect-retry"});let p={retryInSec:d,attempt:this.retryAttempt};e.bus.emit("ws:retrying",p),this.startCountdown(d,e),await this.interruptibleSleep(u)}}async isConnectableToBridge(e,t){let r=s=>(t.notifier.info(`WS: not connecting yet (${s})`,{scope:"system"}),!1);if(!e.device?.id)return r("device id not assigned yet");if(!this.resolveEndpoint(t).url)return r("no bridge endpoint yet, awaiting discovery");if(!e.device?.keys?.public)return r("device public key not generated yet");let o=await t.engine.secrets.get("refreshToken");return!!o.ok&&!!o.value?!0:r("not signed in yet")}handleStateChange(e,t){e.kind==="CONNECTING"&&t.notifier.info(`WS: state CONNECTING (url=${this.lastUrl})`,{scope:"system"}),e.kind==="CONNECTED"&&t.notifier.info(`WS: state CONNECTED (url=${this.lastUrl})`,{scope:"system"}),e.kind==="DISCONNECTED"&&t.notifier.info(`WS: state DISCONNECTED (url=${this.lastUrl})`,{scope:"system"})}computeBackoffMs(e){let t=Math.min(3e4,1e3*Math.pow(2,Math.min(e-1,5))),r=t*(.2*(Math.random()*2-1));return Math.max(250,Math.floor(t+r))}startCountdown(e,t){this.clearCountdown();let r=e;this.countdownTimer=setInterval(()=>{if(r-=1,r<=0){this.clearCountdown();return}let o={retryInSec:r,attempt:this.retryAttempt};t.bus.emit("ws:retrying",o)},1e3)}clearCountdown(){this.countdownTimer&&(clearInterval(this.countdownTimer),this.countdownTimer=null)}async ensureStartedSoon(e){await ee(250),!this.stopped&&this.ensureStarted(e,"socket:disconnected")}async interruptibleSleep(e){let r=Date.now();for(;Date.now()-r<e;){if(this.stopped)return;await ee(100)}}};import aa from"node:fs";import wd from"node:path";var on=class{static save(e){let t=this.getApplicationConfigFolder(),r=wd.join(t,"config.json"),o=this.stripSecrets(e);return aa.mkdirSync(t,{recursive:!0}),aa.writeFileSync(r,JSON.stringify(o,null,2),"utf8"),r}static stripSecrets(e){let t=e.device?{id:e.device.id,name:e.device.name,tag:e.device.tag,keys:{public:e.device.keys.public}}:void 0,r=e.tokens?{accessTokenExpSec:e.tokens.accessTokenExpSec}:void 0;return{...e,device:t,tokens:r}}static getApplicationConfigFolder(){return re()}};var sn=class{name="main-orchestrator";bootStarted=!1;saveTimer=null;saveInFlight=null;latestConfigToSave=null;saveDebounceMs=500;async onStop(e){await this.flushSaveOnStop()}handlers(){return{"ui:initialized":async(e,t)=>{this.bootStarted||(this.bootStarted=!0,t.engine.setPhase("booting"),t.notifier.info("Booting..."),t.engine.dispatch(as(new Mr)))},"config:save:requested":async(e,t)=>{this.latestConfigToSave=e,this.saveTimer&&clearTimeout(this.saveTimer),this.saveTimer=setTimeout(()=>{this.performSave(t)},this.saveDebounceMs)}}}async performSave(e){this.saveInFlight||(this.saveInFlight=(async()=>{for(;this.latestConfigToSave;){let t=this.latestConfigToSave;this.latestConfigToSave=null;try{let r=on.save(t);e.notifier.info(`Config saved to: ${r}`,{scope:"system"}),e.bus.emit("config:saved",void 0)}catch(r){let o=K(r);e.notifier.error(`Failed to save configuration: ${o}`)}}})().finally(()=>{this.saveInFlight=null}),await this.saveInFlight)}async flushSaveOnStop(){this.saveTimer&&(clearTimeout(this.saveTimer),this.saveTimer=null)}};import an from"lodash/isNumber.js";import{decodeJwt as Gd}from"jose";import Lo from"node:crypto";import Td from"lodash/get.js";import Rd from"lodash/isString.js";var ca={invalid_enrollment_token:"Enrollment key is invalid or could not be verified (wrong controller URL, bad signature, or server signing keys do not match the key issuer).",invalid_enrollment_scope:"Enrollment key does not match this device account or organization membership.",enrollment_jwt_expired:"This enrollment key file has expired (JWT). Issue a new key under Organization \u2192 Devices and update ENROLMENT_KEY / your .devicelink file.",enrollment_ticket_invalid:"Enrollment key could not be accepted (already used, expired, or out of sync). Issue a new key under Organization \u2192 Devices.",enrollment_ticket_already_used:"This enrollment key was already used (single-use). Issue a new key under Organization \u2192 Devices.",enrollment_ticket_expired:"This enrollment key has expired. Issue a new key under Organization \u2192 Devices.",server_misconfigured:"Server cannot verify enrollment keys (OAuth keys missing on controller).",enrollment_start_failed:"Device enrollment failed. See controller logs."};function Cd(n){let e=Td(n,"body.error");if(Rd(e))return e;if(n instanceof Error){let t=n.message.match(/"error"\s*:\s*"([^"]+)"/);if(t?.[1])return t[1]}}function la(n){let e=Cd(n);return e&&ca[e]?ca[e]:e?`Enrollment failed (${e}). ${K(n)}`:K(n)}var Nt=class{timeout=null;interval=null;totalSec=0;remainingSec=0;stepSec=1;task=null;stepCb=null;setStep(e){return this.stepSec=Math.max(1,e),this}schedule(e,t){return this.task=e,this.totalSec=t,this.remainingSec=t,this}onStep(e){return this.stepCb=e,this}start(){return this.clear(),this.remainingSec<=0?(this.runTask(),this):(this.stepCb?.(this.stepSec,this.remainingSec),this.interval=setInterval(()=>{this.remainingSec-=this.stepSec,this.remainingSec<=0?this.runTask():this.stepCb?.(this.stepSec,this.remainingSec)},this.stepSec*1e3),this)}stop(){return this.clear(),this}restart(){return this.remainingSec=this.totalSec,this.start()}runTask(){if(this.clear(),this.task)try{this.task()}catch(e){throw new Error(`Scheduler task failed: ${e}`)}}clear(){this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.interval&&(clearInterval(this.interval),this.interval=null)}};var xd=["off","notify","stage","apply_when_idle","required"];function Ad(n){return n===void 0?"off":xd.find(t=>t===n)??"notify"}var Dd={action:"none",target:null,belowFloor:!1,message:null,url:null};function Pt(n){return{...Dd,reason:n}}function Id(n){let{currentVersion:e,guidance:t,autoUpdateEnabled:r}=n;if(!t)return Pt("no guidance from server");let o=Ad(t.update_policy);if(o==="off")return Pt("policy off");if(!_e(e))return Pt("current version unreadable");let s=t.min_agent_version??null,a=t.target_agent_version??null,c=t.upgrade_message??null,u=t.upgrade_url??null,d=s!==null&&Nn(e,s),f=a??s;if(!f||!_e(f))return Pt("no usable target version");if(zt(e,f)>=0)return Pt("already at or above the target");let p={target:f,belowFloor:d,message:c,url:u};return d?{...p,action:"required",reason:"below the minimum version"}:r?Pn(e,f)?o==="notify"?{...p,action:"notify",reason:"policy notify"}:o==="stage"?{...p,action:"stage",reason:"policy stage"}:o==="apply_when_idle"?{...p,action:"apply_when_idle",reason:"policy apply_when_idle"}:{...p,action:"required",reason:"policy required"}:{...p,action:"notify",reason:"major version change is not applied automatically"}:{...p,action:"notify",reason:"automatic updates disabled locally"}}function ua(n,e){let t=Id(e);if(t.action==="none")return t;let r=Od(t,String(e.currentVersion));return t.belowFloor?n.error(r):n.warn(r),t}function Od(n,e){if(n.action==="none")return"";let t=n.target??"a newer version",r=n.belowFloor?`This agent (${e}) is below the minimum version the server accepts (${t}).`:`A newer agent is available (${e} -> ${t}).`,o=n.message?` ${n.message}`:"",i=n.url?` See ${n.url}`:"";return`${r}${o}${i}`}import{spawn as Nd}from"node:child_process";function Pd({headless:n,isTty:e,env:t=process.env}){return n||!e||t.SSH_CONNECTION||t.SSH_TTY||t.SSH_CLIENT?!1:We("DLINK_OPEN_BROWSER",!0,t)}function Fd(n,e){return n==="win32"?{command:"cmd",args:["/c","start","",e]}:n==="darwin"?{command:"open",args:[e]}:{command:"xdg-open",args:[e]}}function da(n,e){if(!Pd(e))return!1;let{command:t,args:r}=Fd(e.platform??process.platform,n);try{let o=Nd(t,r,{detached:!0,stdio:"ignore"});return o.on("error",()=>{}),o.unref(),!0}catch{return!1}}import Fo from"lodash/isNumber.js";import ha from"lodash/isString.js";var Ld=15e3,Md=2e3,$d=12e3,Ud=0,pa=6e4,Bd=250,fa="This device is being replaced by another connection. Finishing in-flight operations...",ma="Device replaced by new connection. Disconnecting.",Kd="Reconnecting to DeviceLink\u2026";function jd(n){return ha(n)?xi.find(t=>t===n)??"SERVER_DRAINING":"SERVER_DRAINING"}function Vd(n){let e=Fo(n)&&Number.isFinite(n)?n:0,t=Math.min(e,Ld);return Math.max(0,Math.min(t-Md,$d))}function qd(n,e=Math.random){let t=Fo(n)&&Number.isFinite(n)?n:0,r=Math.min(pa,Math.max(Ud,Math.floor(t))),o=Math.max(Bd,Math.floor(r*.25)),i=r+Math.floor(e()*o);return Math.min(pa,i)}function ga(n,e){let t=jd(n.reason),r=ha(n.reason)?n.reason:"",o=Vd(n.deadline_ms);if(!e.quiesceV2)return{reason:t,reasonAsSent:r,drainWindowMs:o,reconnect:!0,rediscover:!1,startMessage:fa,endMessage:ma};let i=n.reconnect,a=Fo(i?.after_ms)?qd(i?.after_ms,e.random):void 0,c=i?.url,u=mr(c,e.env)?String(c):void 0,d={reason:t,reasonAsSent:r,drainWindowMs:o,reconnect:!0,rediscover:i?.discover===!0,reconnectDelayMs:a,reconnectUrl:u};return t==="SESSION_REPLACED"?{...d,reconnect:!1,reconnectDelayMs:void 0,reconnectUrl:void 0,rediscover:!1,startMessage:fa,endMessage:ma}:t==="SERVER_DRAINING"?{...d,startMessage:r==="SERVER_DRAINING"?Kd:void 0}:t==="ENDPOINT_MOVED"?{...d,rediscover:!0}:d}var ya="BAD_TS",Jd=10,cn=class{name="auth-orchestrator";phase="IDLE";connectionId=null;sessionId=null;accessToken;rejectedByConflict=!1;negotiatedCapabilities=[];refreshGroupKey="auth:refresh";refreshCycle=0;refreshScheduler=null;refreshRetryScheduler=null;refreshRetryAttempt=0;lastRefreshPlan;refreshInFlight;conflictTimer=null;pendingConflictRequest=null;signinStarted=!1;async onStart(e){e.notifier.info("Auth orchestrator started",{scope:"system"})}async onStop(e){this.clearTimers(),this.resetConnectionState(),e.notifier.info("Auth orchestrator stopped",{scope:"system"})}handlers(){return{"config:loaded":this.onEventConfigLoaded.bind(this),"config:cache:validated":this.onEventConfigCacheValidated.bind(this),"auth:signin:requested":this.onEventAuthSigninRequested.bind(this),"auth:signin:completed":async(e,t)=>{t.notifier.info("Auth: signin completed; requesting ws reconnect",{scope:"system"}),this.rejectedByConflict=!1,this.refreshRetryScheduler&&(this.refreshRetryScheduler.stop(),this.refreshRetryScheduler=null),this.ensureAccessExpPersisted(t,"signin"),await this.ensureRefreshScheduling(t,"signin"),t.bus.emit("auth:ws:reconnect",void 0)},"auth:signout:requested":async(e,t)=>{t.notifier.info("Signing out\u2026"),this.clearTimers(),this.accessToken=void 0;try{await t.engine.secrets.delete("refreshToken")}catch{}let o={...t.engine.configurationContext.configuration,tokens:void 0};t.engine.applyConfiguration(o),t.bus.emit("config:save:requested",o),this.resetConnectionState(),t.engine.setPhase("idle"),t.bus.emit("auth:tokens:updated",{accessToken:"",refreshToken:"",expSec:void 0}),t.bus.emit("ws:disconnect",{reason:"signout"}),t.notifier.success("Signed out successfully")},"auth:session_conflict:resolve":async(e,t)=>{this.sendSessionConflictResolve(t,e.choice)},"ws:connected":async(e,t)=>{this.resetConnectionState();let r=await t.engine.secrets.get("refreshToken"),o=!!r.ok&&!!r.value,i=!!this.accessToken;if(t.notifier.info(`Auth: ws connected; tokens access=${i} refresh=${o}`,{scope:"system"}),!i&&!o){t.notifier.warn("Auth: no tokens; run signin");return}await this.sendConnect(t)},"ws:rx":async(e,t)=>{this.onInbound(e.text,t)},"ws:disconnected":async(e,t)=>{if(t.notifier.warn(`Auth: ws disconnected code=${e.code} reason=${e.reason??"-"}`,{scope:"system"}),this.resetConnectionState(),e.code===4011){t.notifier.warn('Connection rejected - another device is active on this workspace. Run "signin" to try again.'),this.rejectedByConflict=!0,t.bus.emit("ws:disconnect",{reason:"REPLACEMENT_REJECTED"});return}if(e.code===4001){let r=await t.engine.secrets.get("refreshToken");if(!r.ok||!r.value){t.notifier.warn("Auth: token invalid and no refresh; please sign in"),await this.teardownTokens(t,"AUTH_REQUIRED");return}await this.requestRefresh(t,{force:!0,reason:"ws_4001"})&&t.bus.emit("auth:ws:reconnect",void 0)}}}}async onEventConfigLoaded(e,t){if(t.notifier.info("Initializing with cached configuration",{scope:"system"}),!e.device?.id){t.notifier.error("Device ID is not available");return}if(!e.device.keys?.public){t.notifier.error("Device public key is not available");return}t.bus.emit("config:cache:validated",void 0)}async onEventConfigCacheValidated(e,t){this.ensureAccessExpPersisted(t,"boot"),await this.ensureRefreshScheduling(t,"boot");let r=await t.engine.secrets.get("refreshToken"),o=!!r.ok&&!!r.value,i=!!this.accessToken,s=this.isAccessLikelyUsable(t);if(t.notifier.info(`Auth: cache validated; access=${i} refresh=${o} accessOk=${s}`,{scope:"system"}),!i&&!o){if(await ws(t.engine.argv)){t.notifier.info("Enrollment key present; starting device authorization",{scope:"system"}),t.bus.emit("auth:signin:requested",void 0);return}if(!t.headless){t.bus.emit("auth:signin:requested",void 0);return}t.notifier.warn("Auth: not signed in; run signin");return}}isAccessLikelyUsable(e){let t=this.accessToken;if(!t)return!1;let o=e.engine.configurationContext.configuration?.tokens?.accessTokenExpSec??this.tryDecodeExp(t);if(!o)return!0;let i=fe();return o>i}async waitForApproval(e,t,r){let o=Date.now()+t.expires_in*1e3;r.notifier.info("Waiting for approval... (streaming)",{scope:"system"});try{return await e.deviceAuthStream({deviceCode:t.device_code,timeoutMs:Math.max(1e3,o-Date.now()),signal:r.signal})}catch(i){let s=i instanceof Error?i.message:String(i);return r.notifier.error(`Failed to wait for approval: ${s}`),null}}async onEventAuthSigninRequested(e,t){if(this.signinStarted){t.notifier.warn("Sign-in already in progress",{scope:"system"});return}this.signinStarted=!0;try{let r=t.engine.configurationContext.configuration;if(!r.controlBaseUrl){t.notifier.error("Control base URL is not set");return}if(!r.device?.id){t.notifier.error("Device ID is not available");return}if(!r.device.keys?.public){t.notifier.error("Device public key is not available");return}let o=await t.engine.secrets.get("devicePrivateKey");if(!o.ok||!o.value){t.notifier.error("Device private key is not available (secret storage)");return}let i=o.value,s=r.device.name,a=process.platform,c=r.device.keys.public,u=_n(c),d=new at(r,t.notifier);t.notifier.info("Starting device authentication...");let f=await Ts(t.engine.argv),p;if(f.ok){t.notifier.info(`Using enrollment key (${Vr(t.engine.argv)})`,{scope:"system"});try{p=await d.deviceEnrollmentStart({device_id:r.device.id,device_name:s,kind:"agent",platform:a,agent_version:he(),public_key_pem:c,enrollment_jws:f.jws})}catch(x){t.notifier.error(la(x),{scope:"system"});return}t.notifier.info("Enrolling with the supplied key; if it needs approval, approve it under Organization \u2192 Devices or use the verification link below.",{scope:"system"})}else{if(f.error!=="not_configured"){t.notifier.error(f.error==="empty_file"?"Enrollment key is empty":`Could not load enrollment key: ${f.error}`);return}p=await d.deviceAuthStart({device_id:r.device.id,device_name:s,kind:"agent",platform:a,agent_version:he(),public_key_pem:c})}t.notifier.info("DeviceLink sign-in"),t.notifier.info(`User code: ${p.user_code}`),t.notifier.info(`Device fingerprint: ${u}`),t.notifier.info(`Verification URL: ${p.verification_uri_complete}`),da(p.verification_uri_complete,{headless:t.headless,isTty:!!process.stdout.isTTY})&&t.notifier.info("Opened your browser to approve this device.");let g=await this.waitForApproval(d,p,t);if(!g)return;if("error"in g){if(g.error==="access_denied"){t.notifier.error("Sign-in denied in browser.");return}if(g.error==="expired_token"){t.notifier.error("Sign-in expired. Run `signin` again.");return}t.notifier.error(`Unexpected error: ${g.error}`);return}if(g.status!=="approved"){t.notifier.error(`Unexpected status: ${g.status}`);return}if(g.needs_proof){t.notifier.info("Sending proof-of-possession signature...",{scope:"system"});let x=Lo.createPrivateKey(i),_=Buffer.from(p.challenge,"base64url"),I=Lo.sign(null,_,x).toString("base64");await d.deviceAuthProve({device_code:p.device_code,challenge_id:p.challenge_id,challenge:p.challenge,signature_b64:I}),t.notifier.info("Proof-of-possession verified",{scope:"system"})}t.notifier.info("Fetching tokens...",{scope:"system"});let m=await d.deviceAuthToken({device_code:p.device_code,install_id:Io()?zr():void 0}),b=zn(m.endpoints);b&&t.bus.emit("discovery:document:received",{document:b,source:"token"});let E="tag";await t.engine.secrets.set("refreshToken",m.refresh_token),this.accessToken=m.access_token;let v=this.tryDecodeExp(m.access_token),S=t.engine.configurationContext.configuration,k={...S,controlBaseUrl:S.controlBaseUrl,device:{...S.device,id:m.device_id,name:s,tag:E,keys:{public:c}},tokens:{...S.tokens??{},accessTokenExpSec:v??void 0}};t.engine.applyConfiguration(k),t.bus.emit("config:save:requested",k),t.bus.emit("auth:signin:completed",void 0),t.notifier.success("Signed in successfully \u2705")}catch(r){let o=te(r);if(o&&["ECONNREFUSED","ENOTFOUND","ETIMEDOUT"].includes(o)){t.notifier.error(`Network error: ${K(r)}`);return}t.notifier.error(`Sign-in failed: ${K(r)}`)}finally{this.signinStarted=!1}}async sendConnect(e){let r=e.engine.configurationContext.configuration.device,o=await e.engine.secrets.get("devicePrivateKey");if(!r?.id||!o.ok||!o.value){e.notifier.warn("Cannot connect: device not configured");return}let i=o.value,s=await e.engine.secrets.get("refreshToken"),a=s.ok?s.value:void 0,c=Date.now(),u=Lo.randomBytes(16).toString("base64url"),d=En({deviceId:r.id,ts:c,nonce:u,privateKeyPem:i}),f={type:"connect",device_id:r.id,agent_version:he(),protocol_version:2,capabilities:[...Ti],ts:c,nonce:u,sig:d,platform:process.platform,hostname:r.name,device_tag:r.tag,access_token:this.accessToken,refresh_token:a,public_key_pem:r.keys.public};this.phase="CONNECT_SENT",e.notifier.info("Auth: sending connect",{scope:"system"}),this.send(e,f)}async sendSessionInit(e,t){let o=e.engine.configurationContext.configuration.device;if(!o?.id||!this.sessionId){e.notifier.error("Cannot send session_init: device ID or session ID not available");return}let i={type:"session_init",device_id:o.id,session_id:this.sessionId};this.phase="WAIT_SESSION_INIT_ACK",e.notifier.info("Auth: sending session_init",{scope:"system"}),this.send(e,i)}onInbound(e,t){let r;try{r=JSON.parse(e)}catch{t.notifier.error("Unexpected message format");return}let o=ur(r);if(!Ni(o)){t.notifier.info(`Auth: ignoring unknown message type ${o??"(none)"}`,{scope:"system"});return}let i=Oi.safeParse(r);if(!i.success){let a=i.error.message;t.notifier.error(`Unexpected message format: ${a}`);return}let s=i.data;switch(s.type){case"connect_ack":t.bus.emit("auth:connect_ack",s),this.onConnectAck(t,s);return;case"session_init_ack":t.bus.emit("auth:session_init_ack",s),this.onSessionInitAck(t,s);return;case"disconnect_notice":this.onDisconnectNotice(t,s);return;case"session_conflict":t.bus.emit("auth:session_conflict",s),this.handleSessionConflict(t,s);return;case"quiesce":this.handleQuiesce(t,s);return;default:return}}async handleSessionConflict(e,t){this.conflictTimer&&(clearTimeout(this.conflictTimer),this.conflictTimer=null),this.pendingConflictRequest=t,e.notifier.warn(`Another device is already connected to this workspace. Type "replace" to disconnect it, or this connection will be rejected in ${Math.round(t.deadline_ms/1e3)}s.`);let r=Math.min(t.deadline_ms,15e3);this.conflictTimer=setTimeout(()=>{this.conflictTimer=null,this.pendingConflictRequest?.new_session_id===t.new_session_id&&(e.notifier.info("No response - keeping existing device connected."),this.sendSessionConflictResolve(e,"KEEP_OLD"))},r)}async handleQuiesce(e,t){let r=ga(t,{quiesceV2:this.sessionHas(U.QUIESCE_V2)});if(e.notifier.info(`Auth: quiesce reason=${r.reasonAsSent||"(none)"} handled_as=${r.reason} reconnect=${r.reconnect} drain_ms=${r.drainWindowMs}`,{scope:"system"}),r.startMessage&&e.notifier.warn(r.startMessage),e.engine.hasRunningJobs?.()??!1){let i=Date.now();for(;Date.now()-i<r.drainWindowMs&&(e.engine.hasRunningJobs?.()??!1);)await ee(500)}e.bus.emit("ws:reconnect:policy",{reconnect:r.reconnect,delayMs:r.reconnectDelayMs,url:r.reconnectUrl,rediscover:r.rediscover}),r.rediscover&&e.bus.emit("discovery:refresh:requested",{reason:`quiesce:${r.reason}`});let o=e.engine.hasRunningJobs?.()??!1?"BUSY":"IDLE";this.send(e,{type:"quiesce_ack",session_id:t.session_id,status:o}),r.endMessage&&e.notifier.info(r.endMessage)}sendSessionConflictResolve(e,t){let r=this.pendingConflictRequest;r&&(this.conflictTimer&&(clearTimeout(this.conflictTimer),this.conflictTimer=null),this.pendingConflictRequest=null,this.send(e,{type:"session_conflict_resolve",device_id:r.device_id,new_session_id:r.new_session_id,choice:t}))}async onConnectAck(e,t){if(!t.ok){e.notifier.error(`Connect rejected: ${t.error.code} ${t.error.message}`),this.phase="IDLE";return}this.sessionId=t.session_id;let r=t.auth.access_token;if(e.notifier.info(`Auth: connect_ack ok auth.access=${r} next=[${t.next.join(",")}]`,{scope:"system"}),t.next.includes("refresh_access_token")){let o=await e.engine.secrets.get("refreshToken");if(!o.ok||!o.value){e.notifier.warn("Auth: server requested refresh but no refresh token; please sign in"),await this.teardownTokens(e,"NO_REFRESH_TOKEN");return}await this.requestRefresh(e,{force:!0,reason:"connect_ack_next"})?e.bus.emit("auth:ws:reconnect",void 0):e.notifier.warn("Auth: refresh failed; please sign in");return}if(t.next.includes("session_init")){await this.sendSessionInit(e,t);return}if(r==="invalid"||r==="missing"){e.notifier.warn("Auth: access token invalid; please sign in again"),await this.teardownTokens(e,"INVALID_ACCESS");return}e.notifier.warn("Auth: connect_ack had no next; staying idle",{scope:"system"})}onSessionInitAck(e,t){if(!t.ok){e.notifier.error(`Session init failed: ${t.error.code} ${t.error.message}`),t.error.code==="AGENT_BELOW_MINIMUM"&&this.surfaceUpdateGuidance(e,t),this.phase="IDLE";return}this.sessionId=t.session_id,this.phase="READY",this.negotiatedCapabilities=Array.isArray(t.capabilities)?[...t.capabilities]:[],e.notifier.success(`Session ready (${t.mode})`),e.notifier.info(`Auth: session capabilities=[${this.negotiatedCapabilities.join(",")}]`,{scope:"system"}),this.surfaceUpdateGuidance(e,t),this.ensureRefreshScheduling(e,"manual").catch(r=>{e.notifier.error(`Auth: refresh scheduling failed after session_init_ack: ${r instanceof Error?r.message:String(r)}`,{scope:"system",category:["token-refresh"]})}),t.next&&(t.next.includes("tools_publish")&&e.bus.emit("meta:data:requested:tools",void 0),t.next.includes("directories_publish")&&e.bus.emit("meta:data:requested:directories",void 0))}surfaceUpdateGuidance(e,t){return ua({warn:o=>e.notifier.warn(o),error:o=>e.notifier.error(o)},{currentVersion:he(),guidance:t,autoUpdateEnabled:We("DLINK_AUTO_UPDATE",!0)})}onDisconnectNotice(e,t){e.notifier.warn(`Server disconnect_notice: ${t.reason} (code=${t.code})`)}async requestRefresh(e,t){return this.refreshInFlight?this.refreshInFlight:(this.refreshInFlight=(async()=>{try{return await this.withTimeout(this.dispatchRefreshJob(e,t),6e4,"Refresh operation")}catch(r){throw r instanceof Error&&r.message.includes("timed out")&&e.notifier.error(`Auth: refresh timed out: ${r.message}`,{category:["token-refresh"],groupKey:"auth:refresh-failure"}),r}finally{this.refreshInFlight=void 0}})(),this.refreshInFlight)}async withTimeout(e,t,r){return Promise.race([e,new Promise((o,i)=>{setTimeout(()=>{i(new Error(`${r} timed out after ${t}ms`))},t)})])}async dispatchRefreshJob(e,t){let r=await e.engine.secrets.get("refreshToken");if(!r.ok||!r.value)return!1;if(!t.force){let a=await this.shouldRefreshNow(e);if(!a.ok)return e.notifier.info(`Auth: skip refresh (${a.reason})`,{scope:"system",category:["token-refresh"]}),!1}e.notifier.info(`Auth: dispatch refresh job (${t.reason})`,{scope:"system",category:["token-refresh"]});let o=bs(new $r(t.reason)),i=await e.engine.dispatch(o);if(e.notifier.info(`Auth: refresh job dispatch completed (status=${i.status})`,{scope:"system",category:["token-refresh"]}),i.status!=="success"){let a=i.error?.message??"Unknown error";e.notifier.error(`Auth: refresh job failed: ${a}`,{category:["token-refresh"],groupKey:"auth:refresh-failure"});let c=i.output;return c?.errorCode&&ho.includes(c.errorCode)?(await this.teardownTokens(e,c.errorCode),!1):(this.scheduleRefreshRetry(e,t.reason,c?.retryAfterSec,c?.errorCode,c?.driftMs),!1)}let s=i.output;if(!s.ok||!s.accessToken){let a=s.error??"Unknown refresh failure";return e.notifier.error(`Auth: refresh failed: ${a}`,{category:["token-refresh"],groupKey:"auth:refresh-failure"}),s.errorCode&&ho.includes(s.errorCode)?(await this.teardownTokens(e,s.errorCode),!1):(this.scheduleRefreshRetry(e,t.reason,s.retryAfterSec,s.errorCode,s.driftMs),!1)}return this.refreshRetryAttempt=0,this.accessToken=s.accessToken,this.persistTokens(e,s.accessToken,s.expiresInSec),await this.ensureRefreshScheduling(e,"manual"),e.bus.emit("auth:tokens:updated",{accessToken:s.accessToken,refreshToken:s.refreshToken??"",expSec:e.engine.configurationContext.configuration.tokens?.accessTokenExpSec}),!0}scheduleRefreshRetry(e,t,r,o,i){this.refreshRetryScheduler&&this.refreshRetryScheduler.stop(),this.refreshRetryAttempt+=1,o===ya&&this.warnAboutClockSkew(e,i);let s=this.computeRefreshRetryMs(e,t,r,o),a=Math.max(1,Math.ceil(s/1e3));this.refreshRetryScheduler=new Nt().schedule(()=>{this.requestRefresh(e,{force:!0,reason:"retry"}).then(c=>{c&&e.bus.emit("auth:ws:reconnect",void 0)})},a).start()}warnAboutClockSkew(e,t){let r=an(t)&&Number.isFinite(t)?`about ${Math.round(Math.abs(t)/1e3)}s`:"more than a minute";e.notifier.error(`Auth: this device\u2019s clock is ${r} away from the server, so sign-in cannot be renewed. Correct the system time, then run signin.`,{category:["token-refresh"],groupKey:"auth:clock-skew"})}computeRefreshRetryMs(e,t,r,o){let i=e.engine.configurationContext.loader,s=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_AFTER_MIN_SEC",{defaultValue:1}),a=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_AFTER_MAX_SEC",{defaultValue:300}),c=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_BASE_SEC",{defaultValue:2}),u=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_JITTER_SEC",{defaultValue:1}),d=i.getConfigValue("DL_ACCESS_REFRESH_RETRY_MAX_SEC",{defaultValue:30}),f=i.getConfigValue("DL_ACCESS_REFRESH_CLOCK_SKEW_MIN_SEC",{defaultValue:300}),p=Math.max(1,this.refreshRetryAttempt),h=o===ya?Math.max(d,f):d,{delayMs:g,honoredRetryAfter:m}=On({attempt:p,baseSec:c,jitterSec:Math.floor(Math.random()*(u+1)),ceilingSec:h,maxDoublings:Jd,retryAfterSec:r,retryAfterMinSec:s,retryAfterMaxSec:a}),b=Math.max(1,Math.ceil(g/1e3));return e.notifier.warn(m?`Auth: refresh retry scheduled in ${b}s (honoring Retry-After, ${t})`:`Auth: refresh retry scheduled in ${b}s (${t}, attempt ${p})`,{scope:"system",category:["token-refresh"],groupKey:"auth:refresh-retry"}),g}async ensureRefreshScheduling(e,t){let r=await e.engine.secrets.get("refreshToken");!r.ok||!r.value||(this.accessToken&&!e.engine.configurationContext.configuration.tokens?.accessTokenExpSec&&this.ensureAccessExpPersisted(e,t),this.refreshRetryScheduler&&(this.refreshRetryScheduler.stop(),this.refreshRetryScheduler=null),this.scheduleSilentRefresh(e,t))}async scheduleSilentRefresh(e,t){let r=await e.engine.secrets.get("refreshToken");if(!r.ok||!r.value)return;this.refreshScheduler&&this.refreshScheduler.stop();let o=e.engine.configurationContext.loader,i=o.getConfigValue("DL_ACCESS_REFRESH_MIN_DELAY_SEC",{defaultValue:2}),s=e.engine.configurationContext.configuration,a=this.accessToken,c=s.tokens?.accessTokenExpSec??(a?this.tryDecodeExp(a):null),u=c??null,d=this.getRefreshGroupKey(e);if(this.lastRefreshPlan&&this.lastRefreshPlan.exp===u&&this.lastRefreshPlan.groupKey===d)return;this.lastRefreshPlan={exp:u,groupKey:d};let f=v=>{let S=new Nt().schedule(()=>{this.requestRefresh(e,{force:v.force,reason:"timer"}).then(k=>{k&&e.notifier.success("Auth: refresh completed",{scope:"system",groupKey:d,category:["token-refresh"]})})},v.delaySec);v.log&&(S=S.onStep((k,x)=>v.log(x))),this.refreshScheduler=S.start()};if(!c){e.headless||e.notifier.info(`Auth: no exp; scheduling refresh in ${i}s [${t}]`,{scope:"system",groupKey:d,category:["token-refresh"]}),f({delaySec:i,force:!0});return}let p=fe(),h=o.getConfigValue("DL_ACCESS_REFRESH_MARGIN_SEC",{defaultValue:5}),g=o.getConfigValue("DL_ACCESS_REFRESH_JITTER_SEC",{defaultValue:2}),m=g>0?Math.floor(Math.random()*(g+1)):0,b=c-h-m,E=Math.max(i,b-p);e.headless||e.notifier.info(`Auth: refresh scheduled in ${E}s (exp=${c} now=${p} margin=${h} jitter=${m}) [${t}]`,{scope:"system",groupKey:d,category:["token-refresh"]}),f({delaySec:E,force:!1,log:v=>{e.headless||e.notifier.info(`Auth: refresh scheduled in ${v}s (exp=${c} now=${p} margin=${h} jitter=${m}) [${t}]`,{scope:"system",groupKey:d,category:["token-refresh"]})}})}getRefreshGroupKey(e){return this.refreshCycle++,`${this.refreshGroupKey}:${this.refreshCycle}`}async shouldRefreshNow(e){let t=await e.engine.secrets.get("refreshToken");if(!t.ok||!t.value)return{ok:!1,reason:"no_refresh_token"};let r=e.engine.configurationContext.configuration,o=this.accessToken,i=r.tokens?.accessTokenExpSec??(o?this.tryDecodeExp(o):null);if(!i)return{ok:!0,reason:"no_exp_assume_refresh"};let s=fe(),c=e.engine.configurationContext.loader.getConfigValue("DL_ACCESS_REFRESH_MARGIN_SEC",{defaultValue:300}),u=i-s;return u<=c?{ok:!0,reason:`within_margin remaining=${u}s margin=${c}s`}:{ok:!1,reason:`too_early remaining=${u}s margin=${c}s`}}ensureAccessExpPersisted(e,t){let r=e.engine.configurationContext.configuration,o=this.accessToken,i=r.tokens?.accessTokenExpSec;if(!o||an(i)&&Number.isFinite(i))return;let s=this.tryDecodeExp(o);if(!s)return;let a={...r,tokens:{...r.tokens??{},accessTokenExpSec:s}};e.engine.applyConfiguration(a),e.bus.emit("config:save:requested",a),e.notifier.info(`Auth: derived accessTokenExpSec=${s} (${t})`,{scope:"system"})}persistTokens(e,t,r){let o=e.engine.configurationContext.configuration,i=this.tryDecodeExp(t),s=an(r)&&Number.isFinite(r)?fe()+r:void 0,a={...o,tokens:{...o.tokens??{},accessTokenExpSec:i??s}};e.engine.applyConfiguration(a),e.bus.emit("config:save:requested",a),e.notifier.info(`Auth: tokens updated exp=${a.tokens?.accessTokenExpSec??"-"}`,{scope:"system"})}async teardownTokens(e,t){this.accessToken=void 0;let o={...e.engine.configurationContext.configuration,tokens:void 0};e.engine.applyConfiguration(o),e.bus.emit("config:save:requested",o),this.clearTimers(),this.resetConnectionState(),e.bus.emit("auth:signout:requested",void 0),e.notifier.warn(`Auth: signed out (${t}). Please run signin.`)}tryDecodeExp(e){try{let t=Gd(e);return an(t.exp)?t.exp:null}catch{return null}}send(e,t){e.bus.emit("ws:tx",{text:JSON.stringify(t)})}resetConnectionState(){this.connectionId=null,this.sessionId=null,this.phase="IDLE",this.negotiatedCapabilities=[]}sessionHas(e){return Ze(this.negotiatedCapabilities,e)}clearTimers(){this.refreshScheduler&&(this.refreshScheduler.stop(),this.refreshScheduler=null),this.refreshRetryScheduler&&(this.refreshRetryScheduler.stop(),this.refreshRetryScheduler=null),this.conflictTimer&&clearTimeout(this.conflictTimer),this.conflictTimer=null,this.pendingConflictRequest=null}};import $o from"node:fs/promises";import Uo from"node:path";var G=class{config;constructor(e){this.config=e}async execute(e){try{let t=await this.executeTool(e);return $i(t)}catch(t){return le(t)?Ve(t):Ve(j(t,{message:"An unexpected error occurred"}))}}};import zd from"node:path";import ba from"node:fs";function Yd(n,e,t){let r=n.directories.find(s=>s.id===e);if(!r)return Jt;let o=[],i=zd.join(r.path,".devicelinkignore");if(ba.existsSync(i))try{o.push(...An(ba.readFileSync(i,"utf-8")))}catch(s){console.warn(`[ignore] Failed to read .devicelinkignore: ${s}`)}return o.push(...Jt),o}function ue(n,e,t,r,o){return xn(n,e,Yd(r,t.directory_id,t.workspace_id),o)}import Mo from"node:fs/promises";import Re from"node:path";var va=(n,e,t)=>{throw A(n,e,t?{hint:t}:void 0)};function Qd(n){return vt(n,va)}async function ge(n,e){let t=Qd(e),r=Re.resolve(n),o=await Mo.realpath(r),i=Re.resolve(o,t==="."?"":t),s=Re.relative(o,i);if(s.startsWith("..")||Re.isAbsolute(s))throw A("PATH_ESCAPE","Path escapes the root.",{hint:"The resolved path escapes the configured root directory. Ensure the path stays within the root boundaries."});try{let a=await Mo.realpath(i),c=Re.relative(o,a);if(c.startsWith("..")||Re.isAbsolute(c))throw A("PATH_ESCAPE","Symlink/junction escape detected.",{hint:"A symlink or junction in the path resolves outside the configured root directory. Ensure all symlinks stay within the root boundaries."});return{absTarget:a,rel:t}}catch(a){if(te(a)!=="ENOENT")throw a;let c=t.split("/").filter(Boolean);for(let u=c.length;u>0;u--){let d=c.slice(0,u).join("/"),f=c.slice(u).join("/"),p=Re.resolve(o,d);try{let h=await Mo.realpath(p),g=Re.relative(o,h);if(g.startsWith("..")||Re.isAbsolute(g))throw A("PATH_ESCAPE","Symlink/junction escape detected.",{hint:"A symlink or junction in the path resolves outside the configured root directory. Ensure all symlinks stay within the root boundaries."});return{absTarget:f?Re.join(h,f):h,rel:t}}catch(h){if(te(h)==="ENOENT")continue;throw h}}throw A("NOT_FOUND","Path not found.",{hint:"The specified path does not exist. Verify the path is correct and that the file or directory exists within the configured root."})}}function M(n){return Dn(n,va)}function z(n,e){let t=String(te(n)??"");return t==="ENOENT"?A("NOT_FOUND","Path not found.",{fs_code:t}):t==="ENOTDIR"?A("NOT_A_DIRECTORY","Path is not a directory.",{fs_code:t}):t==="EISDIR"?A("NOT_A_FILE","Path is a directory, not a file.",{fs_code:t}):t==="EACCES"||t==="EPERM"?A("PERMISSION_DENIED","Permission denied.",{fs_code:t}):A("INTERNAL",e,{fs_code:t})}function A(n,e,t){return{code:n,message:e,details:t}}function se(n,e){if(Array.isArray(n.directories)&&n.directories.length===0)throw A("UNKNOWN_DIRECTORY","No directories configured.",{hint:"No directories configured. This may happen if the agent was restarted with different directory configuration. If you have only one directory configured, it will be used automatically.",requested_directory_id:e,available_directory_ids:n.directories.map(r=>r.id),available_paths:n.directories.map(r=>r.path),directory_count:n.directories.length});let t=n.directories.find(r=>r.id===e);if(!t&&n.directories.length===1&&(t=n.directories[0]),!t){let r=n.directories.map(s=>s.id).join(", ")||"none",o=n.directories.map(s=>s.path).join(", ")||"none",i=e===void 0?"undefined (missing)":String(e);throw A("UNKNOWN_DIRECTORY",`Unknown directory_id: ${i}`,{hint:`The directory_id "${i}" does not match any configured directory. Available directory IDs: ${r}. Available paths: ${o}. This may happen if the agent was restarted with different directory configuration. If you have only one directory configured, it will be used automatically.`,requested_directory_id:e,available_directory_ids:n.directories.map(s=>s.id),available_paths:n.directories.map(s=>s.path),directory_count:n.directories.length})}return t}function $(n,e,t,r,o){let i={operation:n,path:e.path||".",directory_id:e.directory_id,workspace_id:e.workspace_id,device_id:e.device_id,success:t,error:r?r.substring(0,200):void 0,metadata:o,timestamp:Date.now()},s=`[FS_AUDIT] ${n} ${t?"SUCCESS":"FAILED"} directory=${i.directory_id} path=${i.path}${i.workspace_id?` workspace=${i.workspace_id}`:""}${i.device_id?` device=${i.device_id}`:""}${i.error?` error=${i.error}`:""}${o?` ${JSON.stringify(o)}`:""}`}import Sa from"lodash/orderBy.js";import Xd from"lodash/clamp.js";import Zd from"lodash/take.js";import ep from"lodash/map.js";function tp(n,e,t){return Sa(n,[e==="name"?"name":e==="mtime"?o=>o.mtime??0:o=>o.size??0],[t])}function rp(n,e){return e==="all"?n:e==="files"?n.filter(t=>t.type==="file"||t.type==="symlink"):e==="dirs"?n.filter(t=>t.type==="dir"):n}var ln=class extends G{async executeTool(e){let t=e.directory_id,r=se(this.config,t),{absTarget:o,rel:i}=await ge(r.path,e.path),s=Xd(e.limit??200,1,1e3),a=Math.max(e.offset??0,0),c=e.include_hidden??!1,u=e.only??"all",d=e.sort??"name",f=e.order??"asc",p=e.detail??"stat";try{if(!(await $o.stat(o)).isDirectory()){let D=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("list",D,!1,"Path is not a directory."),A("NOT_A_DIRECTORY","Path is not a directory.",{path:i,hint:"The path must point to a directory, not a file. Use fs_read to read files, or provide a directory path for listing."})}}catch(T){if(le(T)){let D=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("list",D,!1,j(T).message),T}throw z(T,"Failed to list directory.")}let h;try{h=await $o.readdir(o,{withFileTypes:!0})}catch(T){throw z(T,"Failed to read directory.")}let g=c?h:h.filter(T=>!T.name.startsWith(".")),m=[],b=0,E={total_entries:0,files:0,dirs:0,symlinks:0,hidden:0,ignored:0,total_file_bytes:0},v=new Map,S=ce(e),k={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path};for(let T of g){let D=Uo.join(o,T.name),Ue=(i==="."?T.name:Uo.posix.join(i,T.name)).replace(/\\/g,"/"),ve="other";T.isDirectory()?ve="dir":T.isFile()?ve="file":T.isSymbolicLink()&&(ve="symlink");let qt=T.name.startsWith(".");if(ue(Ue,T.isDirectory(),k,this.config,S).shouldIgnore){b++,E.ignored++;continue}E.total_entries++,ve==="file"?E.files++:ve==="dir"?E.dirs++:ve==="symlink"&&E.symlinks++,qt&&E.hidden++;let Zo,ei;if(Fe(p))try{let Ht=await $o.stat(D);Ht.isFile()&&(Zo=Ht.size,E.total_file_bytes=(E.total_file_bytes??0)+Ht.size),ei=Math.floor(Ht.mtimeMs/1e3)}catch{}let Wt=ve==="file"?Uo.extname(T.name).slice(1):void 0;Wt&&Fe(p)&&v.set(Wt,(v.get(Wt)??0)+1),m.push({name:T.name,path:Ue,type:ve,size:Zo,mtime:ei,ext:Wt,hidden:qt,ignored:!1})}p==="digest"&&v.size>0&&(E.by_ext=Zd(Sa(ep([...v.entries()],([T,D])=>({ext:T,count:D})),["count"],["desc"]),10));let x=rp(m,u),_=tp(x,d,f),w=_.slice(a,a+s),I=a+w.length,O=I<_.length,de={count:w.length,limit:s,offset:a,has_more:O,next_offset:O?I:void 0},q=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i}),W={items:w,meta:de,context:q,filtered:{ignored_count:b}};return p==="digest"&&(W.summary=E),$("list",q,!0,void 0,{file_count:w.length}),W}};import np from"lodash/clamp.js";import op from"lodash/isNumber.js";import _a from"node:fs/promises";var ht=class extends G{async executeTool(e){let t=e.directory_id,r=se(this.config,t),{absTarget:o,rel:i}=await ge(r.path,e.path),s=ce(e),a={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},c=ue(i,!1,a,this.config,s);if(c.shouldIgnore){let m=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",m,!1,`Access denied: ${c.reason||c.matchedRule||"blocked"}`),A("PERMISSION_DENIED",`Access denied: ${c.reason||c.matchedRule||"blocked"}`,{path:i,reason:c.reason})}let u=Math.max(e.offset??0,0),d=np(e.limit??4e4,1,2e5),f=e.encoding??"utf-8",p;try{p=await _a.stat(o)}catch(m){let b=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",b,!1,z(m,"Failed to stat file.").message),z(m,"Failed to stat file.")}if(!p.isFile()){let m=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",m,!1,"Path is not a file."),A("NOT_A_FILE","Path is not a file.",{path:i,hint:"The path must point to a file, not a directory. Use fs_list or fs_tree to explore directories, or provide a file path to read."})}let h=s?.max_file_size_bytes;if(op(h)&&h>0&&p.size>h){let m=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",m,!1,`File exceeds the policy size limit (${p.size} > ${h}).`),A("PERMISSION_DENIED",`File exceeds the maximum size allowed by policy (${p.size} > ${h} bytes).`,{path:i,reason:"policy:max_file_size_bytes"})}let g;try{g=await _a.open(o,"r")}catch(m){let b=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",b,!1,z(m,"Failed to open file.").message),z(m,"Failed to open file.")}try{let m=Buffer.alloc(d),{bytesRead:b}=await g.read(m,0,d,u),E=b<d,v=E?b:In(m.subarray(0,b),f),k=m.subarray(0,v).toString(f),x=u+v,_=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});return $("read",_,!0,void 0,{bytes_read:v}),{content:k,bytes_read:v,next_offset:x,eof:E,context:_}}catch(m){let b=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});throw $("read",b,!1,j(m).message),m}finally{await g.close()}}};import Bo from"node:fs/promises";var un=class extends G{async executeTool(e){let t=e.directory_id,r=se(this.config,t),{absTarget:o,rel:i}=await ge(r.path,e.path),s=!1,a;try{a=await Bo.readlink(o),s=!0}catch(f){if(te(f)==="ENOENT")throw z(f,"Path not found.")}let c;try{c=s?await Bo.stat(o):await Bo.lstat(o)}catch(f){throw z(f,"Failed to stat path.")}let u="other";c.isDirectory()?u="dir":c.isFile()?u="file":s&&(u="symlink");let d=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});return $("info",d,!0),{type:u,size:c.isFile()?c.size:void 0,mtime:Math.floor(c.mtimeMs/1e3),ctime:Math.floor(c.ctimeMs/1e3),atime:Math.floor(c.atimeMs/1e3),is_symlink:s,target:s?a:void 0,context:d}}};import Vo from"node:fs/promises";import Ce from"node:path";import jo from"node:fs/promises";import Ea from"node:path";import Ko from"lodash/clamp.js";function ip(n,e){let t="^",r=0;for(;r<e.length;){let o=e[r];if(o==="*")r+1<e.length&&e[r+1]==="*"?(t+=".*",r+=2):(t+="[^/]*",r++);else if(o==="?")t+="[^/]",r++;else if(o==="{"){let i=e.indexOf("}",r);if(i===-1)t+="\\{",r++;else{let s=e.substring(r+1,i).split(",");t+="("+s.map(a=>a.trim().replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|")+")",r=i+1}}else"\\^$|.+()[]".includes(o)?(t+="\\"+o,r++):(t+=o,r++)}t+="$";try{return new RegExp(t,"i").test(n)}catch{return!1}}async function sp(n,e,t,r,o,i,s,a){let c;try{c=await jo.readFile(n,"utf-8")}catch{return 0}let u=c.split(/\r?\n/),d=0,f;if(r==="regex")try{f=new RegExp(t,o?"g":"gi")}catch{let p=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");f=new RegExp(p,o?"g":"gi")}else{let p=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");f=new RegExp(p,o?"g":"gi")}for(let p=0;p<u.length&&d<s;p++){let h=u[p];if(f.test(h)){f.lastIndex=0;let g=Math.max(0,p-i),m=Math.min(u.length-1,p+i),b=u.slice(g,m+1);a.push({path:e,line:p+1,preview:h.trim(),snippet:b}),d++}}return d}async function ka(n,e,t,r,o,i,s,a,c,u,d,f,p,h,g,m){if(d.value>=c||f.length>=u)return;let b;try{b=await jo.readdir(n,{withFileTypes:!0})}catch{return}for(let E of b){if(d.value>=c||f.length>=u)break;let v=Ea.join(n,E.name),S=e==="."?E.name:Ea.posix.join(e,E.name);if(ue(S,E.isDirectory(),h,g,m).shouldIgnore){p.value++;continue}if(E.isFile()){if(i&&!ip(S,i))continue;d.value++,await sp(v,S,r,o,s,a,u-f.length,f)}else E.isDirectory()&&await ka(v,S,t,r,o,i,s,a,c,u,d,f,p,h,g,m)}}var gt=class extends G{async executeTool(e){let t=e.directory_id,r=se(this.config,t),o=e.query;if(!o||o.length===0)throw A("INVALID_INPUT","Query is required.",{hint:'Query should be a search pattern to find in file contents. Use a substring (default) or regex pattern (with mode="regex"). Examples: "function", "import.*from", "TODO"'});let i=e.mode??"substring",s=e.file_glob,a=Ko(e.max_files??2e3,1,1e4),c=Ko(e.max_matches??200,1,1e3),u=Ko(e.context_lines??2,0,10),d=e.case_sensitive??!1,{absTarget:f,rel:p}=await ge(r.path,e.path??".");if(p!==".")try{if(!(await jo.stat(f)).isDirectory())throw A("NOT_A_DIRECTORY","Grep path is not a directory.",{path:p,hint:'The grep path must be a directory. Grep searches within directories recursively. Use "." to search from the root, or provide a directory path.'})}catch(S){throw le(S)?S:z(S,"Failed to stat grep path.")}let h={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},g=[],m={value:0},b={value:0},E=ce(e);await ka(f,p,r.path,o,i,s,d,u,a,c,m,g,b,h,this.config,E);let v=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:p});return $("grep",v,!0,void 0,{file_count:m.value,match_count:g.length}),{matches:g,meta:{files_scanned:m.value,matches:g.length,truncated:m.value>=a||g.length>=c},context:v,filtered:{ignored_count:b.value}}}};import ap from"lodash/isEmpty.js";var yt=class extends G{async executeTool(e){let t=e.directory_id,r=se(this.config,t),o=e.default_limit??12e3,i=e.default_encoding??"utf-8",s=[];if(e.items&&Array.isArray(e.items)&&(s=e.items),ap(s))throw A("INVALID_INPUT","fs_read_many expects { items: [{path,...}] }",{receivedKeys:Object.keys(e),hint:'Provide an "items" array with at least one object containing a "path" property. Each item can optionally include "offset", "limit", and "encoding". Example: { items: [{ path: "file1.ts" }, { path: "file2.ts", limit: 5000 }] }'});let a=ce(e),c=[],u={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},d=new ht(this.config);for(let p of s)try{let h=ue(p.path,!1,u,this.config,a);if(h.shouldIgnore){c.push({path:p.path,content:"",bytes_read:0,truncated:!1,error:{code:"PERMISSION_DENIED",message:`Access denied: ${h.reason||h.matchedRule||"blocked"}`}});continue}let g={directory_id:t,path:p.path,workspace_id:e.workspace_id,device_id:e.device_id,offset:p.offset??0,limit:p.limit??o,encoding:p.encoding??i},m=await d.execute(g);if(!m.ok){c.push({path:p.path,content:"",bytes_read:0,truncated:!1,error:{code:m.error.code,message:m.error.message}});continue}c.push({path:p.path,content:m.data.content,bytes_read:m.data.bytes_read,truncated:!m.data.eof})}catch(h){let{code:g,message:m}=j(h);c.push({path:p.path,content:"",bytes_read:0,truncated:!1,error:{code:g,message:m}})}let f=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:"."});return $("read_many",f,!0,void 0,{file_count:c.length}),{files:c,context:f}}};import Ft from"lodash/clamp.js";import cp from"lodash/compact.js";import Ta from"lodash/orderBy.js";import lp from"lodash/uniq.js";import wa from"lodash/take.js";function Ra(n,e,t){if(!(e.length>=t)){if(n.type==="file"){e.push(n.path);return}if(n.children)for(let r of n.children){if(e.length>=t)break;Ra(r,e,t)}}}function up(n){let e=t=>{let r=t.toLowerCase(),o=r.split("/");return r==="readme.md"||r.endsWith("/readme.md")||r.includes("/readme.md")?0:r.endsWith(".md")?1:r.endsWith("package.json")||r.endsWith("pyproject.toml")||r.endsWith("go.mod")||r.endsWith("cargo.toml")||r.endsWith("pom.xml")||r.endsWith("build.gradle")?2:r.includes("dockerfile")||r.includes("compose")||r.endsWith(".env.example")?3:o.includes("config")||o.includes("conf")||o.includes("settings")?4:o.includes("ci")||o.includes(".github")||o.includes(".gitlab")||o.includes("jenkins")||r.includes("workflow")?5:r.endsWith(".ts")||r.endsWith(".tsx")||r.endsWith(".js")||r.endsWith(".jsx")||r.endsWith(".py")||r.endsWith(".go")||r.endsWith(".rs")||r.endsWith(".java")?6:7};return[...n].sort((t,r)=>{let o=e(t),i=e(r);return o!==i?o-i:t.localeCompare(r)})}function Ca(n,e,t,r){let o={path:n.path,name:n.name,type:n.type,depth:e,size:n.size,mtime:n.mtime,ext:n.ext,hidden:n.hidden,ignored:n.ignored};if(r?.has(n.path)?o.error=r.get(n.path):n.type==="other"&&n.name==="<readdir_error>"&&(o.error={code:"INTERNAL",message:"Failed to read directory"}),t.push(o),n.children)for(let i of n.children)Ca(i,e+1,t,r)}async function xa(n,e,t,r,o,i,s,a,c,u,d,f,p,h,g,m,b){if(a.value>=s)return g.reason="MAX_ENTRIES",null;if(t>r)return g.reason="MAX_DEPTH",null;let E=e==="."?".":e.replace(/\\/g,"/"),v;try{v=await Vo.lstat(n)}catch(I){let{code:O,message:de}=j(I);u.total_entries++;let q={name:Ce.basename(e)||e,type:"other",path:E,hidden:Ce.basename(e)?.startsWith("."),ignored:!1};return m&&m.set(E,{code:O,message:`Failed to stat: ${de}`}),o==="files"||o==="dirs"?null:(a.value++,q)}let S="other";if(v.isDirectory()?S="dir":v.isFile()?S="file":v.isSymbolicLink()&&(S="symlink"),ue(E,v.isDirectory(),p,h,b).shouldIgnore)return c.value++,u.ignored++,null;u.total_entries++,S==="file"?u.files++:S==="dir"?u.dirs++:S==="symlink"&&u.symlinks++;let x=Ce.basename(e)?.startsWith(".");x&&u.hidden++;let _=S==="file"?Ce.extname(Ce.basename(e)||e).slice(1):void 0;_&&Fe(f)&&d.set(_,(d.get(_)??0)+1),S==="file"&&Fe(f)&&(u.total_file_bytes=(u.total_file_bytes??0)+(v.size??0));let w={name:Ce.basename(e)||e,type:S,path:E,size:Fe(f)&&v.isFile()?v.size:void 0,mtime:Fe(f)?Math.floor(v.mtimeMs/1e3):void 0,ext:_,hidden:x,ignored:!1};if(o==="files"&&S!=="file"&&S!=="symlink"||o==="dirs"&&S!=="dir")return null;if(a.value++,S==="dir"&&t<r){let I,O;try{I=await Vo.readdir(n,{withFileTypes:!0})}catch(C){O=j(C),I=[]}let de=Ta(i?I:I.filter(C=>!C.name.startsWith(".")),[C=>C.isDirectory()?0:1,"name"],["asc","asc"]),q=[];O&&m&&m.set(E,{code:O.code,message:`Failed to read directory: ${O.message}`});for(let C of de){if(a.value>=s)break;let W=Ce.join(n,C.name),T=e==="."?C.name:Ce.posix.join(e,C.name),D=T.replace(/\\/g,"/");if(ue(D,C.isDirectory(),p,h,b).shouldIgnore){c.value++,u.ignored++;continue}try{let Ue=await xa(W,T,t+1,r,o,i,s,a,c,u,d,f,p,h,g,m,b);Ue&&q.push(Ue)}catch(Ue){let{code:ve,message:qt}=j(Ue);m&&m.set(D,{code:ve,message:`Failed to build subtree: ${qt}`}),u.total_entries++;let Xo={name:Ce.basename(T)||T,type:"other",path:D,hidden:Ce.basename(T)?.startsWith("."),ignored:!1};if(o==="files"||o==="dirs")continue;a.value++,q.push(Xo)}}q.length>0&&(w.children=q)}return w}var dn=class extends G{async executeTool(e){let t=e.directory_id,r=se(this.config,t),{absTarget:o,rel:i}=await ge(r.path,e.path),s=Ft(e.max_depth??3,1,20),a=e.only??"all",c=e.include_hidden??!1,u=Ft(e.max_entries??5e3,1,2e4),d=e.detail??"stat",f=e.include_display??!1,p=Ft(e.max_display_rows??2e3,1,2e4);try{if(!(await Vo.stat(o)).isDirectory())throw A("NOT_A_DIRECTORY","Path is not a directory.",{path:i,hint:"The path must point to a directory to build a tree. Provide a directory path, not a file."})}catch(C){throw le(C)?C:z(C,"Failed to build tree.")}let h=ce(e),g={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},m={reason:void 0},b={value:0},E={value:0},v={total_entries:0,files:0,dirs:0,symlinks:0,hidden:0,ignored:0,total_file_bytes:0},S=new Map,k=new Map,x=await xa(o,i,0,s,a,c,u,b,E,v,S,d,g,this.config,m,k,h);if(!x)throw A("INTERNAL","Failed to build tree (empty result).");let _=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:i});d==="digest"&&S.size>0&&(v.by_ext=wa(Ta([...S.entries()].map(([C,W])=>({ext:C,count:W})),["count"],["desc"]),10));let w={tree:x,context:_,filtered:{ignored_count:E.value}};if(f){let C=[];Ca(x,0,C,k),C.length>p&&(C.length=p,w.truncated=w.truncated??{reason:"MAX_ENTRIES",continuation:"Display rows truncated; reduce max_entries/max_depth or lower max_display_rows"}),w.display={rows:C}}m.reason&&(w.truncated={reason:m.reason,continuation:m.reason==="MAX_ENTRIES"?"Reduce max_entries or list this folder with fs_list instead":"Reduce max_depth or list this folder with fs_list instead"}),(d==="digest"||e.include_summary)&&(w.summary=v);let I={};if(e.grep?.query)try{let C=new gt(this.config),W={directory_id:t,workspace_id:e.workspace_id,device_id:e.device_id,path:e.path??".",query:e.grep.query,mode:e.grep.mode??"substring",file_glob:e.grep.file_glob,max_files:e.grep.max_files??2e3,max_matches:e.grep.max_matches??200,context_lines:e.grep.context_lines??2,case_sensitive:e.grep.case_sensitive??!1},T=await C.execute(W);T.ok&&(I.grep={matches:T.data.matches,meta:T.data.meta,context:T.data.context})}catch{}let O=cp(e.read?.paths),de=[];if(e.read?.auto){let C=Ft(e.read.auto.max_files??10,1,50),W=[];Ra(x,W,3e3),de=up(W).slice(0,C)}let q=wa(lp([...O,...de]),50);if(q.length>0)try{let C=Ft(e.read?.auto?.max_bytes_each??2e4,1,2e5),W=new yt(this.config),T={directory_id:t,workspace_id:e.workspace_id,device_id:e.device_id,default_limit:C,default_encoding:"utf-8",items:q.map(pe=>({path:pe}))},D=await W.execute(T);D.ok&&(I.read_many={files:D.data.files.map(pe=>({path:pe.path,content:pe.content,bytes_read:pe.bytes_read,truncated:pe.truncated,error:pe.error})),context:D.data.context})}catch{}return Object.keys(I).length>0&&(w.extras=I),$("tree",_,!0,void 0,{file_count:b.value}),w}};import qo from"node:fs/promises";import Lt from"node:path";import dp from"lodash/clamp.js";import pp from"lodash/orderBy.js";function fp(n,e){let t="^",r=0;for(;r<e.length;){let o=e[r];if(o==="*")r+1<e.length&&e[r+1]==="*"?(t+=".*",r+=2):(t+="[^/\\\\]*",r++);else if(o==="?")t+="[^/\\\\]",r++;else if(o==="["){let i=e.indexOf("]",r);if(i===-1)t+="\\[",r++;else{let s=e.substring(r+1,i);s.startsWith("!")?t+="[^"+s.substring(1)+"]":t+="["+s+"]",r=i+1}}else"\\^$|.+(){}[]".includes(o)?(t+="\\"+o,r++):(t+=o,r++)}t+="$";try{return new RegExp(t,"i").test(n)}catch{return n.toLowerCase().includes(e.toLowerCase())}}function mp(n,e,t){return t==="glob"?fp(n,e):n.toLowerCase().includes(e.toLowerCase())}function hp(n,e,t){let r=100;if(e){for(let o of e)if(n.path.startsWith(o)){r+=50;break}}if(t){for(let o of t)if(n.path.startsWith(o)){r-=30;break}}return n.name===n.path.split("/").pop()&&(r+=20),r}function gp(n,e){let t="^",r=0;for(;r<e.length;){let o=e[r];o==="*"?r+1<e.length&&e[r+1]==="*"?(t+=".*",r+=2):(t+="[^/]*",r++):o==="?"?(t+="[^/]",r++):"\\^$|.+(){}[]".includes(o)?(t+="\\"+o,r++):(t+=o,r++)}t+="$";try{return new RegExp(t,"i").test(n)}catch{return!1}}async function Wo(n,e,t,r,o,i,s,a,c,u,d,f,p,h,g,m,b,E){if(u.length>=c)return;let v;try{v=await qo.readdir(n,{withFileTypes:!0})}catch{return}let S=a?v:v.filter(k=>!k.name.startsWith("."));for(let k of S){if(u.length>=c)break;let x=Lt.join(n,k.name),_=e==="."?k.name:Lt.posix.join(e,k.name);if(ue(_,k.isDirectory(),f,p,E).shouldIgnore){d.value++;continue}if(h&&!gp(_,h)){i&&k.isDirectory()&&await Wo(x,_,t,r,o,i,s,a,c,u,d,f,p,h,g,m,b,E);continue}let I=mp(k.name,r,o),O="other";if(k.isDirectory()?O="dir":k.isFile()?O="file":k.isSymbolicLink()&&(O="symlink"),I&&(s==="all"||s==="files"&&(O==="file"||O==="symlink")||s==="dirs"&&O==="dir")){let q,C;if(b!==!1)try{let D=await qo.stat(x);q=D.isFile()?D.size:void 0,C=Math.floor(D.mtimeMs/1e3)}catch{}let W=O==="file"?Lt.extname(k.name).slice(1):void 0,T=hp({name:k.name,path:_},g,m);u.push({name:k.name,path:_,type:O,size:q,mtime:C,ext:W,hidden:k.name.startsWith("."),ignored:!1,score:T,matched:"name"})}i&&O==="dir"&&await Wo(x,_,t,r,o,i,s,a,c,u,d,f,p,h,g,m,b)}}var pn=class extends G{async executeTool(e){let t=e.directory_id,r=se(this.config,t),o=e.query;if(!o||o.length===0)throw A("INVALID_INPUT","Query is required.",{hint:'Query should be a pattern to match file or directory names. Use a substring (default) or glob pattern (with mode="glob"). Examples: "config", "*.ts", "test/**"'});let i=e.mode??"substring",s=e.recursive??!0,a=e.only??"all",c=e.include_hidden??!1,u=dp(e.max_results??200,1,2e4),d=Math.max(e.offset??0,0),f=e.file_glob,p=e.prefer_paths,h=e.avoid_paths,g=e.include_stats!==!1,{absTarget:m,rel:b}=await ge(r.path,e.path??"."),E=m,v=b,S=[];if(b!==".")try{let D=await qo.stat(m);if(!D.isDirectory())if(D.isFile()){E=Lt.dirname(m);let pe=Lt.posix.dirname(b);v=pe==="."?".":pe,S.push({type:"warning",description:`Search path "${b}" is not a directory (it's a file). Searching the directory containing it instead: "${v}"`})}else throw A("NOT_A_DIRECTORY","Search path is not a directory.",{path:b,hint:'The search path must be a directory. Search looks for files/directories matching the query within directories. Use "." to search from the root, or provide a directory path.'})}catch(D){throw le(D)?D:z(D,"Failed to stat search path.")}let k=ce(e),x={directory_id:t,workspace_id:e.workspace_id,directory_path:r.path},_=[],w={value:0};await Wo(E,v,r.path,o,i,s,a,c,u+d,_,w,x,this.config,f,p,h,g,k);let I=pp(_,[D=>D.score??0,"name"],["desc","asc"]),O=I.slice(d,d+u),de=d+O.length,q=de<I.length,C={count:O.length,limit:u,offset:d,has_more:q,next_offset:q?de:void 0},W=M({workspace_id:e.workspace_id,device_id:e.device_id,directory_id:t,path:v});$("search",W,!0,void 0,{file_count:O.length});let T={results:O,meta:C,context:W,filtered:{ignored_count:w.value}};return S.length>0&&(T.messages=S),T}};var fn=class extends G{async executeTool(e){let t={agent_version:he(),platform:process.platform,answered_at:Date.now()};return e.echo!==void 0&&(t.echo=e.echo),t}};var mn=class{config;executers=new Map;constructor(e){this.config=e,this.initializeExecuters()}initializeExecuters(){this.executers.set("fs_list",new ln(this.config)),this.executers.set("fs_read",new ht(this.config)),this.executers.set("fs_info",new un(this.config)),this.executers.set("fs_tree",new dn(this.config)),this.executers.set("fs_search",new pn(this.config)),this.executers.set("fs_grep",new gt(this.config)),this.executers.set("fs_read_many",new yt(this.config)),this.executers.set("dl_ping",new fn(this.config))}async executeTool(e,t){let r=this.executers.get(e);if(!r)return Ve({code:"UNKNOWN_TOOL",message:`Unknown tool: ${e}`,details:{toolName:e}});try{return await r.execute(t)}catch(o){return le(o)?Ve(o):Ve({...j(o),details:{raw:String(o)}})}}getExecuter(e){return this.executers.get(e)}hasTool(e){return this.executers.has(e)}getRegisteredTools(){return Array.from(this.executers.keys())}};import Aa from"lodash/isObject.js";import Qe from"lodash/get.js";function yp(n){return Aa(n)&&typeof Qe(n,"ok")=="boolean"}function bp(n){let e=yp(n),t=e?!!Qe(n,"ok"):!0,r,o,i;if(t){if(e?r=Qe(n,"data")??Qe(n,"result")??n:r=n,Aa(r)&&Array.isArray(Qe(r,"messages"))){i=Qe(r,"messages");let s={...r};delete s.messages,r=s}}else e?o=Qe(n,"error")??n:o=n;return{ok:t,result:r,error:o,messages:i}}function Da(n,e,t,r){let o=Ke(r),{ok:i,result:s,error:a,messages:c}=bp(t);return $n({type:"tool_result",job_id:n,tool:e,ok:i,timing:o,...i?{result:s??null}:{error:a??{code:"UNKNOWN",message:"Unknown error"}},messages:c})}function Ia(n,e,t,r){let o=Ke(r);return{type:"tool_result",job_id:n,tool:e,ok:!1,error:j(t),timing:o}}var V=class{toolName;jobId;ok;elapsedSec;raw;constructor(e,t,r,o){this.toolName=e,this.jobId=t,this.ok=r.ok,this.elapsedSec=o,this.raw=r}getErrorDescription(){return`error: ${K(this.raw.error)}`}getStatusIcon(){return this.ok?"\u2713":"\u2717"}getStatusText(){return this.ok?"SUCCESS":"FAILED"}toString(){let e=this.getStatusIcon(),t=this.getDescription();return`${e} ${this.toolName} (${t}, elapsed=${this.elapsedSec}s)`}};var Mt=class extends V{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{items:e,meta:t,filtered:r,context:o}=this.output,i=e?.length??0,s=r?.ignored_count??0,a=o?.path??"unknown",c=[];i>0&&c.push(`${i} item${i!==1?"s":""}`),s>0&&c.push(`${s} ignored`),t?.has_more&&c.push("has_more");let u=c.length>0?c.join(", "):"empty";return`path=${a}, ${u}`}};var $t=class extends V{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{bytes_read:e,eof:t,context:r}=this.output,o=r?.path??"unknown",i=e??0,s=!t,a=[`path=${o}`,`${i} bytes`];return s&&a.push("truncated"),a.join(", ")}};var Ut=class extends V{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{type:e,size:t,context:r}=this.output,o=r?.path??"unknown",i=t!==void 0?`${t} bytes`:"no size";return`path=${o}, type=${e}, ${i}`}};var Bt=class extends V{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{tree:e,filtered:t,summary:r,context:o}=this.output,i=o?.path??"unknown",s=t?.ignored_count??0,a=[`path=${i}`];if(r){let{total_entries:c,files:u,dirs:d}=r;c!==void 0&&a.push(`${c} entries`),u!==void 0&&a.push(`${u} files`),d!==void 0&&a.push(`${d} dirs`)}else if(e){let c=d=>{let f=1;if(d.children)for(let p of d.children)f+=c(p);return f},u=c(e);a.push(`${u} nodes`)}return s>0&&a.push(`${s} ignored`),this.output.truncated&&a.push("truncated"),a.join(", ")}};var Kt=class extends V{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{results:e,meta:t,filtered:r,context:o}=this.output,i=o?.path??"unknown",s=e?.length??0,a=r?.ignored_count??0,c=[`path=${i}`,`${s} result${s!==1?"s":""}`];return a>0&&c.push(`${a} ignored`),t?.has_more&&c.push("has_more"),c.join(", ")}};var jt=class extends V{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{matches:e,meta:t,filtered:r,context:o}=this.output,i=o?.path??"unknown",s=e?.length??0,a=t?.files_scanned??0,c=r?.ignored_count??0,u=[`path=${i}`,`${s} match${s!==1?"es":""}`,`${a} file${a!==1?"s":""} scanned`];return c>0&&u.push(`${c} ignored`),t?.truncated&&u.push("truncated"),u.join(", ")}};import vp from"lodash/sumBy.js";var Vt=class extends V{output;constructor(e,t,r,o){super(e,t,r,o),this.output=r.ok?r.data:void 0}getDescription(){if(!this.ok)return this.getErrorDescription();if(!this.output)return"no result";let{files:e}=this.output,t=e?.length??0,r=e?.filter(a=>!a.error).length??0,o=t-r,i=vp(e,a=>a.bytes_read??0),s=[`${t} file${t!==1?"s":""}`,`${r} success`];return o>0&&s.push(`${o} error${o!==1?"s":""}`),i>0&&s.push(`${i} bytes`),s.join(", ")}};function Ho(n,e,t,r){switch(n){case"fs_list":return new Mt(n,e,t,r);case"fs_read":return new $t(n,e,t,r);case"fs_info":return new Ut(n,e,t,r);case"fs_tree":return new Bt(n,e,t,r);case"fs_search":return new Kt(n,e,t,r);case"fs_grep":return new jt(n,e,t,r);case"fs_read_many":return new Vt(n,e,t,r);default:{class o extends V{getDescription(){return this.ok?"completed":"failed"}}return new o(n,e,t,r)}}}var Sp=64,_p=5*6e4,Go=class{entries=new Map;max;ttlMs;now;constructor(e={}){this.max=Math.max(1,e.max??Sp),this.ttlMs=Math.max(1,e.ttlMs??_p),this.now=e.now??(()=>Date.now())}get size(){return this.prune(),this.entries.size}get(e){return this.prune(),this.entries.get(e)}has(e){return this.get(e)!==void 0}remember(e,t,r){this.prune(),this.entries.delete(e),this.entries.set(e,{jobId:e,text:t,at:this.now(),delivered:r}),this.evictOverflow()}markDelivered(e){let t=this.entries.get(e);t&&(t.delivered=!0)}undelivered(){return this.prune(),[...this.entries.values()].filter(e=>!e.delivered)}prune(){let e=this.now()-this.ttlMs;for(let[t,r]of this.entries)r.at<=e&&this.entries.delete(t)}evictOverflow(){for(;this.entries.size>this.max;){let e=this.entries.keys().next();if(e.done)return;this.entries.delete(e.value)}}},hn=class{cache;inFlight=new Set;connected=!1;negotiated=!1;constructor(e={}){this.cache=new Go(e)}get isConnected(){return this.connected}get redeliveryNegotiated(){return this.negotiated}onConnected(){this.connected=!0}onDisconnected(){this.connected=!1,this.negotiated=!1}onSessionAck(e){this.negotiated=e.ok===!0&&Ze(e.capabilities,U.RESULT_REDELIVERY_V1)}decide(e){if(this.inFlight.has(e))return{action:"ignore",reason:"in_flight"};let t=this.cache.get(e);return t?{action:"resend",text:t.text}:{action:"execute"}}beginExecution(e){this.inFlight.add(e)}endExecution(e){this.inFlight.delete(e)}recordResult(e,t){return this.cache.remember(e,t,this.connected),{heldForRedelivery:!this.connected}}pendingRedeliveries(){return this.negotiated?this.cache.undelivered():[]}markDelivered(e){this.cache.markDelivered(e)}get cachedCount(){return this.cache.size}};var gn=class{name="tools-orchestrator";delivery=new hn;handlers(){return{"ws:connected":async(e,t)=>{this.delivery.onConnected(),t.notifier.info(`WS connected: ${e.url}`,{scope:"system"})},"ws:disconnected":async()=>{this.delivery.onDisconnected()},"auth:session_init_ack":async(e,t)=>{this.delivery.onSessionAck(e),this.redeliverPendingResults(t)},"ws:rx":async(e,t)=>{let r;try{r=JSON.parse(e.text)}catch{return}if(ur(r)!=="tool_call")return;let o=cr.safeParse(r);if(!o.success){t.notifier.error("Unexpected message format",{scope:"system"});return}let i=o.data,s=this.delivery.decide(i.job_id);if(s.action==="ignore"){t.notifier.info(`Tool call ${i.job_id} is already running; ignoring the repeat`,{scope:"system"});return}if(s.action==="resend"){t.notifier.info(`Tool call ${i.job_id} already ran; re-sending the stored result`,{scope:"system"}),this.sendResult(t,i.job_id,s.text);return}t.bus.emit("tool:call",i),await this.handleToolCall(i,t)}}}sendResult(e,t,r){let{heldForRedelivery:o}=this.delivery.recordResult(t,r);e.bus.emit("ws:tx",{text:r}),o&&e.notifier.info(`Tool result for ${t} produced while disconnected; holding it for redelivery`,{scope:"system"})}redeliverPendingResults(e){let t=this.delivery.pendingRedeliveries();if(t.length!==0){e.notifier.info(`Re-sending ${t.length} tool result${t.length===1?"":"s"} produced while disconnected`,{scope:"system"});for(let r of t)e.bus.emit("ws:tx",{text:r.text}),this.delivery.markDelivered(r.jobId)}}async handleToolCall(e,t){let r=e.tool,o=e.job_id,i=Mn(e.args).set("workspace_id",e.workspace_id).set("device_id",e.device_id).set("context",e.context).value(),s=i.directory_id,a=t.engine.configurationContext.configuration,c=a.directories.map(f=>f.id).join(", ")||"none",u=a.directories.map(f=>f.path).join(", ")||"none";t.notifier.info(`Tool call: ${r} (job=${o}, directory_id=${s||"MISSING"}, available_ids=[${c}], available_paths=[${u}], directory_count=${a.directories.length})`,{scope:"system"}),t.notifier.info(`Executing: ${r}`);let d=Date.now();this.delivery.beginExecution(o);try{let p=await new mn(a).executeTool(r,i),h=Da(o,r,p,d);lr.parse(h),this.sendResult(t,o,JSON.stringify(h));let g=Ke(d),m=Ho(r,o,p,g.execution_sec);m.ok?t.notifier.success(m.toString()):t.notifier.error(m.toString())}catch(f){let p=Ia(o,r,f,d);lr.parse(p),this.sendResult(t,o,JSON.stringify(p));let h=Ke(d),g={ok:!1,error:j(f)},m=Ho(r,o,g,h.execution_sec);t.notifier.error(m.toString())}finally{this.delivery.endExecution(o)}}};var Jo=class extends Q{constructor(){super(new Y({name:"tools-job",lane:"worker",priority:1e3,locks:[],maxAttempts:1,cancellable:!1}))}async run(e,t){t.notifier.info("Executing supported tools job");let o=t.engine.configurationContext.configuration.device?.id;if(!o){t.notifier.error("Cannot publish tools: device ID not available");return}let i={type:"tools_publish",device_id:o,tools:Ui()};t.bus.emit("ws:tx",{text:JSON.stringify(i)}),t.notifier.success(`\u2192 tools_publish (count=${Gn.length})`)}},zo=new Jo;function Oa(){return new ye(zo,void 0)}var Yo=class extends Q{constructor(){super(new Y({name:"directories-job",lane:"worker",priority:1e3,locks:[],maxAttempts:1,cancellable:!1}))}async run(e,t){t.notifier.info("Executing directories job");let r=t.engine.configurationContext.configuration,o=r.device?.id;if(!o){t.notifier.error("Cannot publish directories: device ID not available");return}let i=r.directories.map(a=>({id:a.id,name:a.name,path:Tn(a.path)??a.name,path_hint:a.tag||void 0})),s={type:"directories_publish",device_id:o,directories:i};t.bus.emit("ws:tx",{text:JSON.stringify(s)}),t.notifier.success(`\u2192 directories_publish (dirs=${s.directories.length})`)}},Qo=new Yo;function Na(){return new ye(Qo,void 0)}var yn=class{name="meta-data-orchestrator";onRegister(e){e.engine.register(zo),e.engine.register(Qo)}handlers(){return{"meta:data:requested:tools":async(e,t)=>{t.notifier.info("MetaData: tools requested -> dispatching supported tools job"),t.engine.dispatch(Oa())},"meta:data:requested:directories":async(e,t)=>{t.notifier.info("MetaData: directories requested -> dispatching directories job"),t.engine.dispatch(Na())}}}};var bn=class{name="discovery-orchestrator";refreshInFlight=!1;noticeShown=null;handlers(){return{"config:loaded":async(e,t)=>{this.surfaceNotice(e.discovery,t),!Qn(e.discovery)&&this.refresh(t,"cache-missing-or-expired")},"discovery:refresh:requested":async(e,t)=>{await this.refresh(t,e.reason)},"discovery:document:received":async(e,t)=>{this.adopt(Yn(e.document,e.source),t,e.source)},"discovery:cache:discarded":async(e,t)=>{let r=t.engine.configurationContext.configuration;if(!r.discovery)return;t.notifier.info(`Discovery: dropping cached endpoint (${e.reason})`,{scope:"system"});let o={...r,discovery:void 0};t.engine.configurationContext.loader.withDiscoveryCache(null),t.engine.applyConfiguration(o),t.bus.emit("config:save:requested",o)}}}async refresh(e,t){if(!this.refreshInFlight){this.refreshInFlight=!0;try{let r=e.engine.configurationContext.configuration,o=await Wi(r.controlBaseUrl);if(!o){e.notifier.info(`Discovery: no document available (${t})`,{scope:"system"});return}this.adopt(Yn(o,"well_known"),e,"well_known")}catch{return}finally{this.refreshInFlight=!1}}}adopt(e,t,r){if(!e)return;let o=t.engine.configurationContext.configuration,i=Vi(o.discovery,e);if(!i||i===o.discovery){t.notifier.info(`Discovery: keeping the cached document (${r} was not newer)`,{scope:"system"});return}let s=t.engine.configurationContext.loader.resolveBridgeWsUrl(o.discovery).url,a={...o,discovery:i};t.engine.configurationContext.loader.withDiscoveryCache(i),t.engine.applyConfiguration(a),t.bus.emit("config:save:requested",a);let c=t.engine.configurationContext.loader.resolveBridgeWsUrl(i).url;c&&c!==s&&t.bus.emit("discovery:endpoint:changed",{bridgeUrl:c}),t.notifier.info(`Discovery: cached ${r} document issued_at=${i.issuedAt??"-"} bridge=${(i.bridgeUrls??[]).join(",")||"-"}`,{scope:"system"}),this.surfaceNotice(i,t)}surfaceNotice(e,t){let r=e?.notice;!r||this.noticeShown===r||(this.noticeShown=r,t.notifier.warn(r))}};Ls(()=>[new Gr,new tn,new Qr,new Xr,new sn,new cn,new bn,new nn,new gn,new yn]);
|