@quantiya/codevibe-codex-plugin 2.0.28 → 2.0.29
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/dist/server.js +25 -25
- package/node_modules/@isaacs/cliui/node_modules/emoji-regex/README.md +137 -0
- package/node_modules/@isaacs/cliui/node_modules/emoji-regex/es2015/index.js +6 -0
- package/node_modules/@isaacs/cliui/node_modules/emoji-regex/es2015/text.js +6 -0
- package/node_modules/@isaacs/cliui/node_modules/emoji-regex/index.d.ts +5 -0
- package/node_modules/@isaacs/cliui/node_modules/emoji-regex/index.js +6 -0
- package/node_modules/@isaacs/cliui/node_modules/emoji-regex/package.json +52 -0
- package/node_modules/@isaacs/cliui/node_modules/emoji-regex/text.js +6 -0
- package/node_modules/@isaacs/cliui/node_modules/string-width/index.d.ts +29 -0
- package/node_modules/@isaacs/cliui/node_modules/string-width/index.js +54 -0
- package/node_modules/@isaacs/cliui/node_modules/string-width/package.json +59 -0
- package/node_modules/@isaacs/cliui/node_modules/string-width/readme.md +67 -0
- package/node_modules/@isaacs/cliui/node_modules/wrap-ansi/index.d.ts +41 -0
- package/node_modules/@isaacs/cliui/node_modules/wrap-ansi/index.js +214 -0
- package/node_modules/@isaacs/cliui/node_modules/wrap-ansi/package.json +69 -0
- package/node_modules/@isaacs/cliui/node_modules/wrap-ansi/readme.md +91 -0
- package/node_modules/@quantiya/codevibe-core/dist/index.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/index.js +321 -317
- package/node_modules/@quantiya/codevibe-core/dist/prompt-parser.d.ts +3 -1
- package/node_modules/@quantiya/codevibe-core/dist/terminal-menu.d.ts +22 -0
- package/node_modules/@quantiya/codevibe-core/package.json +1 -1
- package/node_modules/ansi-regex/index.js +3 -2
- package/node_modules/ansi-regex/package.json +1 -1
- package/node_modules/ansi-styles/index.d.ts +232 -341
- package/node_modules/ansi-styles/index.js +190 -130
- package/node_modules/ansi-styles/license +1 -1
- package/node_modules/ansi-styles/package.json +8 -10
- package/node_modules/ansi-styles/readme.md +53 -32
- package/node_modules/body-parser/README.md +34 -19
- package/node_modules/body-parser/index.js +10 -35
- package/node_modules/body-parser/lib/read.js +34 -37
- package/node_modules/body-parser/lib/types/json.js +68 -48
- package/node_modules/body-parser/lib/types/raw.js +6 -7
- package/node_modules/body-parser/lib/types/text.js +6 -7
- package/node_modules/body-parser/lib/types/urlencoded.js +23 -27
- package/node_modules/body-parser/lib/utils.js +29 -25
- package/node_modules/body-parser/node_modules/content-type/LICENSE +22 -0
- package/node_modules/body-parser/node_modules/content-type/README.md +71 -0
- package/node_modules/body-parser/node_modules/content-type/dist/index.d.ts +46 -0
- package/node_modules/body-parser/node_modules/content-type/dist/index.js +176 -0
- package/node_modules/body-parser/node_modules/content-type/dist/index.js.map +1 -0
- package/node_modules/body-parser/node_modules/content-type/package.json +52 -0
- package/node_modules/body-parser/package.json +23 -10
- package/node_modules/brace-expansion/README.md +23 -1
- package/node_modules/brace-expansion/index.js +216 -80
- package/node_modules/brace-expansion/package.json +1 -1
- package/node_modules/cli-truncate/index.js +194 -0
- package/node_modules/cli-truncate/package.json +52 -0
- package/node_modules/content-disposition/README.md +7 -8
- package/node_modules/content-disposition/index.js +118 -40
- package/node_modules/content-disposition/package.json +8 -11
- package/node_modules/cross-spawn/node_modules/isexe/README.md +51 -0
- package/node_modules/cross-spawn/node_modules/isexe/package.json +31 -0
- package/node_modules/cross-spawn/node_modules/which/README.md +54 -0
- package/node_modules/cross-spawn/node_modules/which/package.json +43 -0
- package/node_modules/emoji-regex/README.md +6 -70
- package/node_modules/emoji-regex/es2015/index.js +1 -1
- package/node_modules/emoji-regex/es2015/text.js +1 -1
- package/node_modules/emoji-regex/index.d.ts +20 -2
- package/node_modules/emoji-regex/index.js +1 -1
- package/node_modules/emoji-regex/package.json +11 -13
- package/node_modules/emoji-regex/text.js +1 -1
- package/node_modules/es-object-atoms/CHANGELOG.md +21 -14
- package/node_modules/es-object-atoms/isObject.d.ts +1 -1
- package/node_modules/es-object-atoms/package.json +6 -7
- package/node_modules/es-object-atoms/tsconfig.json +1 -0
- package/node_modules/es-toolkit/CHANGELOG.md +246 -3
- package/node_modules/es-toolkit/LICENSE +1 -5
- package/node_modules/es-toolkit/NOTICE +39 -0
- package/node_modules/es-toolkit/README.md +3 -3
- 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.mjs +1 -0
- package/node_modules/es-toolkit/compat/after.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/assign.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/assignInWith.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/at.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/before.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/bindAll.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/camelCase.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/castArray.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/chunk.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/clone.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/cloneDeepWith.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/compact.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/cond.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/conformsTo.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/countBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/curry.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/debounce.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/defaultTo.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/defaultsDeep.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/delay.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/differenceBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/divide.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/dropRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/dropWhile.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/eachRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/eq.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/escapeRegExp.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/extend.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/fill.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/find.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/findKey.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/findLastIndex.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/first.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/flatMapDeep.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/flatten.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/flattenDepth.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/floor.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/flowRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/forEachRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/forInRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/forOwnRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/functions.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/get.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/gt.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/has.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/head.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/inRange.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/indexOf.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/intersection.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/intersectionWith.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/invertBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/invokeMap.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isArray.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isArrayLike.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isBoolean.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isDate.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isEmpty.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isEqualWith.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isFinite.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isInteger.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isMap.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isMatchWith.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isNative.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isNull.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isObject.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isPlainObject.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isSafeInteger.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isString.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isTypedArray.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/isWeakMap.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/iteratee.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/kebabCase.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/keys.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/last.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/lowerCase.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/lt.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/map.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/mapValues.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/matchesProperty.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/maxBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/meanBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/merge.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/method.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/min.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/multiply.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/noop.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/nth.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/omit.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/once.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/over.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/overEvery.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/pad.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/padStart.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/partial.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/partition.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/pickBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/propertyOf.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/pullAll.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/pullAllWith.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/random.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/rangeRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/reduce.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/reject.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/repeat.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/rest.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/reverse.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/sample.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/set.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/shuffle.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/slice.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/some.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedIndex.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedIndexOf.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/sortedLastIndexBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/split.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/startCase.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubArray.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubObject.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/stubTrue.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/sum.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/tail.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/takeRight.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/takeWhile.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/templateSettings.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/times.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/toDefaulted.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/toInteger.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/toLower.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/toPairs.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/toPath.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/toSafeInteger.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/toUpper.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/trim.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/trimStart.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/unary.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/union.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/unionWith.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/uniqBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/uniqueId.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/unzip.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/update.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/upperCase.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/values.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/without.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/wrap.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/xorBy.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/zip.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/compat/zipObjectDeep.d.mts +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.mjs +1 -0
- package/node_modules/es-toolkit/dist/_internal/DOMException.d.mts +4 -3
- package/node_modules/es-toolkit/dist/_internal/DOMException.d.ts +4 -3
- package/node_modules/es-toolkit/dist/_internal/DOMException.js +4 -10
- package/node_modules/es-toolkit/dist/_internal/DOMException.mjs +4 -6
- package/node_modules/es-toolkit/dist/_internal/NonPlainObject.d.mts +8 -0
- package/node_modules/es-toolkit/dist/_internal/NonPlainObject.d.ts +8 -0
- package/node_modules/es-toolkit/dist/_internal/bigIntRangeLength.js +19 -0
- package/node_modules/es-toolkit/dist/_internal/bigIntRangeLength.mjs +19 -0
- package/node_modules/es-toolkit/dist/_internal/compareValues.js +18 -12
- package/node_modules/es-toolkit/dist/_internal/compareValues.mjs +18 -8
- package/node_modules/es-toolkit/dist/_internal/globalThis.d.mts +3 -2
- package/node_modules/es-toolkit/dist/_internal/globalThis.d.ts +3 -2
- package/node_modules/es-toolkit/dist/_internal/globalThis.js +6 -14
- package/node_modules/es-toolkit/dist/_internal/globalThis.mjs +6 -10
- package/node_modules/es-toolkit/dist/_internal/isMergeableValue.js +17 -0
- package/node_modules/es-toolkit/dist/_internal/isMergeableValue.mjs +17 -0
- package/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.js +16 -6
- package/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.mjs +16 -2
- package/node_modules/es-toolkit/dist/_internal/isUnsafeToWriteProperty.js +22 -0
- package/node_modules/es-toolkit/dist/_internal/isUnsafeToWriteProperty.mjs +22 -0
- package/node_modules/es-toolkit/dist/_virtual/_rolldown/runtime.js +13 -0
- package/node_modules/es-toolkit/dist/_virtual/_rolldown/runtime.mjs +13 -0
- package/node_modules/es-toolkit/dist/array/at.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/at.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/at.js +26 -16
- package/node_modules/es-toolkit/dist/array/at.mjs +26 -12
- package/node_modules/es-toolkit/dist/array/cartesianProduct.d.mts +75 -0
- package/node_modules/es-toolkit/dist/array/cartesianProduct.d.ts +75 -0
- package/node_modules/es-toolkit/dist/array/cartesianProduct.js +23 -0
- package/node_modules/es-toolkit/dist/array/cartesianProduct.mjs +23 -0
- package/node_modules/es-toolkit/dist/array/chunk.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/chunk.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/chunk.js +34 -16
- package/node_modules/es-toolkit/dist/array/chunk.mjs +34 -12
- package/node_modules/es-toolkit/dist/array/chunkBy.d.mts +32 -0
- package/node_modules/es-toolkit/dist/array/chunkBy.d.ts +32 -0
- package/node_modules/es-toolkit/dist/array/chunkBy.js +42 -0
- package/node_modules/es-toolkit/dist/array/chunkBy.mjs +42 -0
- package/node_modules/es-toolkit/dist/array/combinations.d.mts +35 -0
- package/node_modules/es-toolkit/dist/array/combinations.d.ts +35 -0
- package/node_modules/es-toolkit/dist/array/combinations.js +53 -0
- package/node_modules/es-toolkit/dist/array/combinations.mjs +53 -0
- package/node_modules/es-toolkit/dist/array/compact.d.mts +5 -4
- package/node_modules/es-toolkit/dist/array/compact.d.ts +5 -4
- package/node_modules/es-toolkit/dist/array/compact.js +19 -13
- package/node_modules/es-toolkit/dist/array/compact.mjs +19 -9
- package/node_modules/es-toolkit/dist/array/countBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/countBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/countBy.js +42 -12
- package/node_modules/es-toolkit/dist/array/countBy.mjs +42 -8
- package/node_modules/es-toolkit/dist/array/difference.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/difference.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/difference.js +26 -7
- package/node_modules/es-toolkit/dist/array/difference.mjs +26 -3
- package/node_modules/es-toolkit/dist/array/differenceBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/differenceBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/differenceBy.js +38 -9
- package/node_modules/es-toolkit/dist/array/differenceBy.mjs +38 -5
- package/node_modules/es-toolkit/dist/array/differenceWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/differenceWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/differenceWith.js +35 -10
- package/node_modules/es-toolkit/dist/array/differenceWith.mjs +35 -6
- package/node_modules/es-toolkit/dist/array/drop.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/drop.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/drop.js +20 -7
- package/node_modules/es-toolkit/dist/array/drop.mjs +20 -3
- package/node_modules/es-toolkit/dist/array/dropRight.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/dropRight.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/dropRight.js +21 -10
- package/node_modules/es-toolkit/dist/array/dropRight.mjs +21 -6
- package/node_modules/es-toolkit/dist/array/dropRightWhile.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/dropRightWhile.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/dropRightWhile.js +22 -11
- package/node_modules/es-toolkit/dist/array/dropRightWhile.mjs +22 -7
- package/node_modules/es-toolkit/dist/array/dropWhile.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/dropWhile.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/dropWhile.js +23 -10
- package/node_modules/es-toolkit/dist/array/dropWhile.mjs +23 -6
- package/node_modules/es-toolkit/dist/array/fill.d.mts +15 -14
- package/node_modules/es-toolkit/dist/array/fill.d.ts +15 -14
- package/node_modules/es-toolkit/dist/array/fill.js +35 -12
- package/node_modules/es-toolkit/dist/array/fill.mjs +35 -8
- package/node_modules/es-toolkit/dist/array/filterAsync.d.mts +9 -8
- package/node_modules/es-toolkit/dist/array/filterAsync.d.ts +9 -8
- package/node_modules/es-toolkit/dist/array/filterAsync.js +35 -12
- package/node_modules/es-toolkit/dist/array/filterAsync.mjs +35 -8
- package/node_modules/es-toolkit/dist/array/flatMap.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/flatMap.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/flatMap.js +24 -8
- package/node_modules/es-toolkit/dist/array/flatMap.mjs +24 -4
- package/node_modules/es-toolkit/dist/array/flatMapAsync.d.mts +9 -8
- package/node_modules/es-toolkit/dist/array/flatMapAsync.d.ts +9 -8
- package/node_modules/es-toolkit/dist/array/flatMapAsync.js +38 -13
- package/node_modules/es-toolkit/dist/array/flatMapAsync.mjs +37 -9
- package/node_modules/es-toolkit/dist/array/flatMapDeep.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/flatMapDeep.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/flatMapDeep.js +17 -8
- package/node_modules/es-toolkit/dist/array/flatMapDeep.mjs +17 -4
- package/node_modules/es-toolkit/dist/array/flatten.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/flatten.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/flatten.js +29 -20
- package/node_modules/es-toolkit/dist/array/flatten.mjs +29 -16
- package/node_modules/es-toolkit/dist/array/flattenDeep.d.mts +5 -4
- package/node_modules/es-toolkit/dist/array/flattenDeep.d.ts +5 -4
- package/node_modules/es-toolkit/dist/array/flattenDeep.js +15 -8
- package/node_modules/es-toolkit/dist/array/flattenDeep.mjs +15 -4
- package/node_modules/es-toolkit/dist/array/forEachAsync.d.mts +9 -8
- package/node_modules/es-toolkit/dist/array/forEachAsync.d.ts +9 -8
- package/node_modules/es-toolkit/dist/array/forEachAsync.js +34 -11
- package/node_modules/es-toolkit/dist/array/forEachAsync.mjs +34 -7
- package/node_modules/es-toolkit/dist/array/forEachRight.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/forEachRight.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/forEachRight.js +28 -9
- package/node_modules/es-toolkit/dist/array/forEachRight.mjs +28 -5
- package/node_modules/es-toolkit/dist/array/groupBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/groupBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/groupBy.js +48 -15
- package/node_modules/es-toolkit/dist/array/groupBy.mjs +48 -11
- package/node_modules/es-toolkit/dist/array/head.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/head.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/head.js +18 -6
- package/node_modules/es-toolkit/dist/array/head.mjs +18 -2
- package/node_modules/es-toolkit/dist/array/index.d.mts +70 -66
- package/node_modules/es-toolkit/dist/array/index.d.ts +70 -66
- package/node_modules/es-toolkit/dist/array/index.js +139 -139
- package/node_modules/es-toolkit/dist/array/index.mjs +70 -66
- package/node_modules/es-toolkit/dist/array/initial.d.mts +10 -9
- package/node_modules/es-toolkit/dist/array/initial.d.ts +10 -9
- package/node_modules/es-toolkit/dist/array/initial.js +16 -6
- package/node_modules/es-toolkit/dist/array/initial.mjs +16 -2
- package/node_modules/es-toolkit/dist/array/intersection.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/intersection.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/intersection.js +22 -7
- package/node_modules/es-toolkit/dist/array/intersection.mjs +22 -3
- package/node_modules/es-toolkit/dist/array/intersectionBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/intersectionBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/intersectionBy.js +46 -16
- package/node_modules/es-toolkit/dist/array/intersectionBy.mjs +46 -12
- package/node_modules/es-toolkit/dist/array/intersectionWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/intersectionWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/intersectionWith.js +41 -10
- package/node_modules/es-toolkit/dist/array/intersectionWith.mjs +41 -6
- package/node_modules/es-toolkit/dist/array/isSubset.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/isSubset.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/isSubset.js +27 -8
- package/node_modules/es-toolkit/dist/array/isSubset.mjs +27 -4
- package/node_modules/es-toolkit/dist/array/isSubsetWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/isSubsetWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/isSubsetWith.js +34 -8
- package/node_modules/es-toolkit/dist/array/isSubsetWith.mjs +34 -4
- package/node_modules/es-toolkit/dist/array/keyBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/keyBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/keyBy.js +42 -12
- package/node_modules/es-toolkit/dist/array/keyBy.mjs +42 -8
- package/node_modules/es-toolkit/dist/array/last.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/last.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/last.js +25 -6
- package/node_modules/es-toolkit/dist/array/last.mjs +25 -2
- package/node_modules/es-toolkit/dist/array/limitAsync.d.mts +7 -30
- package/node_modules/es-toolkit/dist/array/limitAsync.d.ts +7 -30
- package/node_modules/es-toolkit/dist/array/limitAsync.js +8 -19
- package/node_modules/es-toolkit/dist/array/limitAsync.mjs +9 -15
- package/node_modules/es-toolkit/dist/array/mapAsync.d.mts +9 -8
- package/node_modules/es-toolkit/dist/array/mapAsync.d.ts +9 -8
- package/node_modules/es-toolkit/dist/array/mapAsync.js +33 -11
- package/node_modules/es-toolkit/dist/array/mapAsync.mjs +33 -7
- package/node_modules/es-toolkit/dist/array/maxBy.d.mts +11 -8
- package/node_modules/es-toolkit/dist/array/maxBy.d.ts +11 -8
- package/node_modules/es-toolkit/dist/array/maxBy.js +37 -19
- package/node_modules/es-toolkit/dist/array/maxBy.mjs +37 -15
- package/node_modules/es-toolkit/dist/array/minBy.d.mts +11 -8
- package/node_modules/es-toolkit/dist/array/minBy.d.ts +11 -8
- package/node_modules/es-toolkit/dist/array/minBy.js +37 -19
- package/node_modules/es-toolkit/dist/array/minBy.mjs +37 -15
- package/node_modules/es-toolkit/dist/array/orderBy.d.mts +8 -7
- package/node_modules/es-toolkit/dist/array/orderBy.d.ts +8 -7
- package/node_modules/es-toolkit/dist/array/orderBy.js +50 -22
- package/node_modules/es-toolkit/dist/array/orderBy.mjs +48 -18
- package/node_modules/es-toolkit/dist/array/partition.d.mts +14 -12
- package/node_modules/es-toolkit/dist/array/partition.d.ts +14 -12
- package/node_modules/es-toolkit/dist/array/partition.js +10 -17
- package/node_modules/es-toolkit/dist/array/partition.mjs +10 -13
- package/node_modules/es-toolkit/dist/array/pull.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/pull.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/pull.js +30 -19
- package/node_modules/es-toolkit/dist/array/pull.mjs +30 -15
- package/node_modules/es-toolkit/dist/array/pullAt.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/pullAt.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/pullAt.js +23 -13
- package/node_modules/es-toolkit/dist/array/pullAt.mjs +23 -9
- package/node_modules/es-toolkit/dist/array/reduceAsync.d.mts +10 -9
- package/node_modules/es-toolkit/dist/array/reduceAsync.d.ts +10 -9
- package/node_modules/es-toolkit/dist/array/reduceAsync.js +10 -15
- package/node_modules/es-toolkit/dist/array/reduceAsync.mjs +10 -11
- package/node_modules/es-toolkit/dist/array/remove.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/remove.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/remove.js +34 -21
- package/node_modules/es-toolkit/dist/array/remove.mjs +34 -17
- package/node_modules/es-toolkit/dist/array/sample.d.mts +5 -4
- package/node_modules/es-toolkit/dist/array/sample.d.ts +5 -4
- package/node_modules/es-toolkit/dist/array/sample.js +17 -7
- package/node_modules/es-toolkit/dist/array/sample.mjs +17 -3
- package/node_modules/es-toolkit/dist/array/sampleSize.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/sampleSize.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/sampleSize.js +31 -21
- package/node_modules/es-toolkit/dist/array/sampleSize.mjs +31 -17
- package/node_modules/es-toolkit/dist/array/shuffle.d.mts +5 -4
- package/node_modules/es-toolkit/dist/array/shuffle.d.ts +5 -4
- package/node_modules/es-toolkit/dist/array/shuffle.js +25 -11
- package/node_modules/es-toolkit/dist/array/shuffle.mjs +25 -7
- package/node_modules/es-toolkit/dist/array/sortBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/sortBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/sortBy.js +36 -8
- package/node_modules/es-toolkit/dist/array/sortBy.mjs +36 -4
- package/node_modules/es-toolkit/dist/array/tail.d.mts +11 -10
- package/node_modules/es-toolkit/dist/array/tail.d.ts +11 -10
- package/node_modules/es-toolkit/dist/array/tail.js +27 -6
- package/node_modules/es-toolkit/dist/array/tail.mjs +27 -2
- package/node_modules/es-toolkit/dist/array/take.d.mts +7 -12
- package/node_modules/es-toolkit/dist/array/take.d.ts +7 -12
- package/node_modules/es-toolkit/dist/array/take.js +26 -10
- package/node_modules/es-toolkit/dist/array/take.mjs +26 -6
- package/node_modules/es-toolkit/dist/array/takeRight.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/takeRight.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/takeRight.js +26 -13
- package/node_modules/es-toolkit/dist/array/takeRight.mjs +26 -9
- package/node_modules/es-toolkit/dist/array/takeRightWhile.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/takeRightWhile.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/takeRightWhile.js +26 -11
- package/node_modules/es-toolkit/dist/array/takeRightWhile.mjs +26 -7
- package/node_modules/es-toolkit/dist/array/takeWhile.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/takeWhile.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/takeWhile.js +32 -14
- package/node_modules/es-toolkit/dist/array/takeWhile.mjs +32 -10
- package/node_modules/es-toolkit/dist/array/toFilled.d.mts +15 -14
- package/node_modules/es-toolkit/dist/array/toFilled.d.ts +15 -14
- package/node_modules/es-toolkit/dist/array/toFilled.js +20 -13
- package/node_modules/es-toolkit/dist/array/toFilled.mjs +20 -9
- package/node_modules/es-toolkit/dist/array/union.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/union.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/union.js +21 -8
- package/node_modules/es-toolkit/dist/array/union.mjs +21 -4
- package/node_modules/es-toolkit/dist/array/unionBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/unionBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/unionBy.js +26 -8
- package/node_modules/es-toolkit/dist/array/unionBy.mjs +26 -4
- package/node_modules/es-toolkit/dist/array/unionWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/unionWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/unionWith.js +24 -8
- package/node_modules/es-toolkit/dist/array/unionWith.mjs +24 -4
- package/node_modules/es-toolkit/dist/array/uniq.d.mts +5 -4
- package/node_modules/es-toolkit/dist/array/uniq.d.ts +5 -4
- package/node_modules/es-toolkit/dist/array/uniq.js +18 -6
- package/node_modules/es-toolkit/dist/array/uniq.mjs +18 -2
- package/node_modules/es-toolkit/dist/array/uniqBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/uniqBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/uniqBy.js +37 -14
- package/node_modules/es-toolkit/dist/array/uniqBy.mjs +37 -10
- package/node_modules/es-toolkit/dist/array/uniqWith.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/uniqWith.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/uniqWith.js +23 -14
- package/node_modules/es-toolkit/dist/array/uniqWith.mjs +23 -10
- package/node_modules/es-toolkit/dist/array/unzip.d.mts +9 -7
- package/node_modules/es-toolkit/dist/array/unzip.d.ts +9 -7
- package/node_modules/es-toolkit/dist/array/unzip.js +26 -19
- package/node_modules/es-toolkit/dist/array/unzip.mjs +26 -15
- package/node_modules/es-toolkit/dist/array/unzipWith.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/unzipWith.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/unzipWith.js +24 -15
- package/node_modules/es-toolkit/dist/array/unzipWith.mjs +24 -11
- package/node_modules/es-toolkit/dist/array/windowed.d.mts +21 -18
- package/node_modules/es-toolkit/dist/array/windowed.d.ts +21 -18
- package/node_modules/es-toolkit/dist/array/windowed.js +38 -17
- package/node_modules/es-toolkit/dist/array/windowed.mjs +38 -13
- package/node_modules/es-toolkit/dist/array/without.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/without.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/without.js +24 -8
- package/node_modules/es-toolkit/dist/array/without.mjs +24 -4
- package/node_modules/es-toolkit/dist/array/xor.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/xor.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/xor.js +23 -10
- package/node_modules/es-toolkit/dist/array/xor.mjs +23 -6
- package/node_modules/es-toolkit/dist/array/xorBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/xorBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/xorBy.js +27 -12
- package/node_modules/es-toolkit/dist/array/xorBy.mjs +25 -8
- package/node_modules/es-toolkit/dist/array/xorWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/array/xorWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/array/xorWith.js +26 -12
- package/node_modules/es-toolkit/dist/array/xorWith.mjs +24 -8
- package/node_modules/es-toolkit/dist/array/zip.d.mts +19 -18
- package/node_modules/es-toolkit/dist/array/zip.d.ts +19 -18
- package/node_modules/es-toolkit/dist/array/zip.js +31 -21
- package/node_modules/es-toolkit/dist/array/zip.mjs +31 -17
- package/node_modules/es-toolkit/dist/array/zipObject.d.mts +6 -5
- package/node_modules/es-toolkit/dist/array/zipObject.d.ts +6 -5
- package/node_modules/es-toolkit/dist/array/zipObject.js +35 -10
- package/node_modules/es-toolkit/dist/array/zipObject.mjs +35 -6
- package/node_modules/es-toolkit/dist/array/zipWith.d.mts +21 -20
- package/node_modules/es-toolkit/dist/array/zipWith.d.ts +21 -20
- package/node_modules/es-toolkit/dist/array/zipWith.js +29 -14
- package/node_modules/es-toolkit/dist/array/zipWith.mjs +29 -10
- package/node_modules/es-toolkit/dist/bigint/clamp.d.mts +37 -0
- package/node_modules/es-toolkit/dist/bigint/clamp.d.ts +37 -0
- package/node_modules/es-toolkit/dist/bigint/clamp.js +16 -0
- package/node_modules/es-toolkit/dist/bigint/clamp.mjs +16 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.d.mts +37 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.d.ts +37 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.js +20 -0
- package/node_modules/es-toolkit/dist/bigint/inRange.mjs +20 -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 +21 -0
- package/node_modules/es-toolkit/dist/bigint/max.d.ts +21 -0
- package/node_modules/es-toolkit/dist/bigint/max.js +26 -0
- package/node_modules/es-toolkit/dist/bigint/max.mjs +26 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.js +34 -0
- package/node_modules/es-toolkit/dist/bigint/maxBy.mjs +34 -0
- package/node_modules/es-toolkit/dist/bigint/median.d.mts +22 -0
- package/node_modules/es-toolkit/dist/bigint/median.d.ts +22 -0
- package/node_modules/es-toolkit/dist/bigint/median.js +28 -0
- package/node_modules/es-toolkit/dist/bigint/median.mjs +28 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.js +24 -0
- package/node_modules/es-toolkit/dist/bigint/medianBy.mjs +24 -0
- package/node_modules/es-toolkit/dist/bigint/min.d.mts +18 -0
- package/node_modules/es-toolkit/dist/bigint/min.d.ts +18 -0
- package/node_modules/es-toolkit/dist/bigint/min.js +23 -0
- package/node_modules/es-toolkit/dist/bigint/min.mjs +23 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.js +34 -0
- package/node_modules/es-toolkit/dist/bigint/minBy.mjs +34 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.d.mts +23 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.d.ts +23 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.js +31 -0
- package/node_modules/es-toolkit/dist/bigint/percentile.mjs +31 -0
- package/node_modules/es-toolkit/dist/bigint/range.d.mts +45 -0
- package/node_modules/es-toolkit/dist/bigint/range.d.ts +45 -0
- package/node_modules/es-toolkit/dist/bigint/range.js +24 -0
- package/node_modules/es-toolkit/dist/bigint/range.mjs +24 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.d.mts +43 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.d.ts +43 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.js +25 -0
- package/node_modules/es-toolkit/dist/bigint/rangeRight.mjs +25 -0
- package/node_modules/es-toolkit/dist/bigint/sum.d.mts +18 -0
- package/node_modules/es-toolkit/dist/bigint/sum.d.ts +18 -0
- package/node_modules/es-toolkit/dist/bigint/sum.js +22 -0
- package/node_modules/es-toolkit/dist/bigint/sum.mjs +22 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.d.mts +20 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.d.ts +20 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.js +24 -0
- package/node_modules/es-toolkit/dist/bigint/sumBy.mjs +24 -0
- package/node_modules/es-toolkit/dist/browser.global.js +11 -1
- package/node_modules/es-toolkit/dist/compat/_internal/ArrayIterator.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ArrayIterator.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ConformsPredicateObject.d.mts +4 -5
- package/node_modules/es-toolkit/dist/compat/_internal/ConformsPredicateObject.d.ts +4 -5
- package/node_modules/es-toolkit/dist/compat/_internal/EmptyObjectOf.d.mts +4 -5
- package/node_modules/es-toolkit/dist/compat/_internal/EmptyObjectOf.d.ts +4 -5
- package/node_modules/es-toolkit/dist/compat/_internal/Equals.d.mts +4 -0
- package/node_modules/es-toolkit/dist/compat/_internal/Equals.d.ts +4 -0
- package/node_modules/es-toolkit/dist/compat/_internal/GetFieldType.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/GetFieldType.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/IsEqualCustomizer.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/IsEqualCustomizer.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/IsMatchWithCustomizer.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/IsMatchWithCustomizer.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/IsWritable.d.mts +6 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IsWritable.d.ts +6 -0
- package/node_modules/es-toolkit/dist/compat/_internal/IterateeShorthand.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/IterateeShorthand.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratee.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratee.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterateeCustom.d.mts +6 -4
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterateeCustom.d.ts +6 -4
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterator.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ListIterator.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratorTypeGuard.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ListIteratorTypeGuard.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ListOfRecursiveArraysOrValues.d.mts +5 -5
- package/node_modules/es-toolkit/dist/compat/_internal/ListOfRecursiveArraysOrValues.d.ts +5 -5
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.js +3 -6
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.js +2 -5
- package/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.mjs +2 -1
- package/node_modules/es-toolkit/dist/compat/_internal/Many.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/Many.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/MemoListIterator.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/MemoListIterator.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/MemoObjectIterator.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/MemoObjectIterator.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/MutableList.d.mts +7 -0
- package/node_modules/es-toolkit/dist/compat/_internal/MutableList.d.ts +7 -0
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIteratee.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIteratee.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIterator.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ObjectIterator.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/PartialShallow.d.mts +4 -5
- package/node_modules/es-toolkit/dist/compat/_internal/PartialShallow.d.ts +4 -5
- package/node_modules/es-toolkit/dist/compat/_internal/PropertyPath.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/PropertyPath.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/RecursiveArray.d.mts +4 -4
- package/node_modules/es-toolkit/dist/compat/_internal/RecursiveArray.d.ts +4 -4
- package/node_modules/es-toolkit/dist/compat/_internal/RejectReadonly.d.mts +7 -0
- package/node_modules/es-toolkit/dist/compat/_internal/RejectReadonly.d.ts +7 -0
- package/node_modules/es-toolkit/dist/compat/_internal/StringIterator.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/StringIterator.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/TupleIterator.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/TupleIterator.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratee.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratee.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIterateeCustom.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIterateeCustom.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratorTypeGuard.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ValueIteratorTypeGuard.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIteratee.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIteratee.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIterateeTypeGuard.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/ValueKeyIterateeTypeGuard.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/assignValue.js +5 -11
- package/node_modules/es-toolkit/dist/compat/_internal/assignValue.mjs +5 -7
- package/node_modules/es-toolkit/dist/compat/_internal/compareValues.js +17 -32
- package/node_modules/es-toolkit/dist/compat/_internal/compareValues.mjs +17 -28
- package/node_modules/es-toolkit/dist/compat/_internal/copyArray.js +15 -12
- package/node_modules/es-toolkit/dist/compat/_internal/copyArray.mjs +14 -9
- package/node_modules/es-toolkit/dist/compat/_internal/createPadding.js +14 -0
- package/node_modules/es-toolkit/dist/compat/_internal/createPadding.mjs +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.js +13 -20
- package/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.mjs +13 -16
- package/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.js +10 -18
- package/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.mjs +10 -14
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbols.js +3 -6
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbols.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.js +9 -13
- package/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.mjs +9 -9
- package/node_modules/es-toolkit/dist/compat/_internal/getTag.js +11 -9
- package/node_modules/es-toolkit/dist/compat/_internal/getTag.mjs +11 -5
- package/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.js +37 -14
- package/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.mjs +37 -10
- package/node_modules/es-toolkit/dist/compat/_internal/isIndex.js +7 -16
- package/node_modules/es-toolkit/dist/compat/_internal/isIndex.mjs +7 -12
- package/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.js +9 -18
- package/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.mjs +9 -14
- package/node_modules/es-toolkit/dist/compat/_internal/isKey.js +21 -15
- package/node_modules/es-toolkit/dist/compat/_internal/isKey.mjs +21 -11
- package/node_modules/es-toolkit/dist/compat/_internal/isPrototype.js +4 -8
- package/node_modules/es-toolkit/dist/compat/_internal/isPrototype.mjs +4 -4
- package/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.js +7 -12
- package/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.mjs +7 -8
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.js +5 -11
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.mjs +5 -7
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeZero.js +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/normalizeZero.mjs +13 -0
- package/node_modules/es-toolkit/dist/compat/_internal/regexMultiByte.js +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/regexMultiByte.mjs +11 -0
- package/node_modules/es-toolkit/dist/compat/_internal/setToEntries.js +9 -12
- package/node_modules/es-toolkit/dist/compat/_internal/setToEntries.mjs +9 -8
- package/node_modules/es-toolkit/dist/compat/_internal/tags.js +28 -31
- package/node_modules/es-toolkit/dist/compat/_internal/tags.mjs +28 -27
- package/node_modules/es-toolkit/dist/compat/_internal/toArray.js +3 -6
- package/node_modules/es-toolkit/dist/compat/_internal/toArray.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/_internal/toKey.js +12 -12
- package/node_modules/es-toolkit/dist/compat/_internal/toKey.mjs +12 -8
- package/node_modules/es-toolkit/dist/compat/_internal/unicodeSize.js +45 -0
- package/node_modules/es-toolkit/dist/compat/_internal/unicodeSize.mjs +45 -0
- package/node_modules/es-toolkit/dist/compat/array/castArray.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/castArray.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/castArray.js +30 -9
- package/node_modules/es-toolkit/dist/compat/array/castArray.mjs +30 -5
- package/node_modules/es-toolkit/dist/compat/array/chunk.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/chunk.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/chunk.js +33 -14
- package/node_modules/es-toolkit/dist/compat/array/chunk.mjs +33 -10
- package/node_modules/es-toolkit/dist/compat/array/compact.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/compact.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/compact.js +17 -12
- package/node_modules/es-toolkit/dist/compat/array/compact.mjs +17 -8
- package/node_modules/es-toolkit/dist/compat/array/concat.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/concat.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/concat.js +31 -8
- package/node_modules/es-toolkit/dist/compat/array/concat.mjs +31 -4
- package/node_modules/es-toolkit/dist/compat/array/countBy.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/array/countBy.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/array/countBy.js +14 -20
- package/node_modules/es-toolkit/dist/compat/array/countBy.mjs +14 -16
- package/node_modules/es-toolkit/dist/compat/array/difference.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/difference.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/difference.js +38 -21
- package/node_modules/es-toolkit/dist/compat/array/difference.mjs +38 -17
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.d.mts +45 -44
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.d.ts +45 -44
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.js +23 -22
- package/node_modules/es-toolkit/dist/compat/array/differenceBy.mjs +23 -18
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.d.mts +20 -19
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.d.ts +20 -19
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.js +40 -20
- package/node_modules/es-toolkit/dist/compat/array/differenceWith.mjs +40 -16
- package/node_modules/es-toolkit/dist/compat/array/drop.d.mts +8 -8
- package/node_modules/es-toolkit/dist/compat/array/drop.d.ts +8 -8
- package/node_modules/es-toolkit/dist/compat/array/drop.js +10 -16
- package/node_modules/es-toolkit/dist/compat/array/drop.mjs +10 -12
- package/node_modules/es-toolkit/dist/compat/array/dropRight.d.mts +7 -7
- package/node_modules/es-toolkit/dist/compat/array/dropRight.d.ts +7 -7
- package/node_modules/es-toolkit/dist/compat/array/dropRight.js +27 -16
- package/node_modules/es-toolkit/dist/compat/array/dropRight.mjs +27 -12
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.js +41 -37
- package/node_modules/es-toolkit/dist/compat/array/dropRightWhile.mjs +41 -33
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.js +46 -38
- package/node_modules/es-toolkit/dist/compat/array/dropWhile.mjs +46 -34
- package/node_modules/es-toolkit/dist/compat/array/each.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/array/each.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/array/each.js +1 -0
- package/node_modules/es-toolkit/dist/compat/array/each.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.js +1 -0
- package/node_modules/es-toolkit/dist/compat/array/eachRight.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/array/every.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/every.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/every.js +37 -62
- package/node_modules/es-toolkit/dist/compat/array/every.mjs +37 -58
- package/node_modules/es-toolkit/dist/compat/array/fill.d.mts +21 -20
- package/node_modules/es-toolkit/dist/compat/array/fill.d.ts +21 -20
- package/node_modules/es-toolkit/dist/compat/array/fill.js +45 -24
- package/node_modules/es-toolkit/dist/compat/array/fill.mjs +45 -20
- package/node_modules/es-toolkit/dist/compat/array/filter.d.mts +15 -10
- package/node_modules/es-toolkit/dist/compat/array/filter.d.ts +15 -10
- package/node_modules/es-toolkit/dist/compat/array/filter.js +48 -36
- package/node_modules/es-toolkit/dist/compat/array/filter.mjs +48 -32
- package/node_modules/es-toolkit/dist/compat/array/find.d.mts +17 -12
- package/node_modules/es-toolkit/dist/compat/array/find.d.ts +17 -12
- package/node_modules/es-toolkit/dist/compat/array/find.js +34 -28
- package/node_modules/es-toolkit/dist/compat/array/find.mjs +34 -24
- package/node_modules/es-toolkit/dist/compat/array/findIndex.d.mts +8 -8
- package/node_modules/es-toolkit/dist/compat/array/findIndex.d.ts +8 -8
- package/node_modules/es-toolkit/dist/compat/array/findIndex.js +28 -42
- package/node_modules/es-toolkit/dist/compat/array/findIndex.mjs +27 -37
- package/node_modules/es-toolkit/dist/compat/array/findLast.d.mts +24 -23
- package/node_modules/es-toolkit/dist/compat/array/findLast.d.ts +24 -23
- package/node_modules/es-toolkit/dist/compat/array/findLast.js +37 -34
- package/node_modules/es-toolkit/dist/compat/array/findLast.mjs +37 -30
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.js +40 -42
- package/node_modules/es-toolkit/dist/compat/array/findLastIndex.mjs +39 -37
- package/node_modules/es-toolkit/dist/compat/array/first.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/array/first.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/array/first.js +1 -0
- package/node_modules/es-toolkit/dist/compat/array/first.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/array/flatMap.d.mts +22 -21
- package/node_modules/es-toolkit/dist/compat/array/flatMap.d.ts +22 -21
- package/node_modules/es-toolkit/dist/compat/array/flatMap.js +16 -14
- package/node_modules/es-toolkit/dist/compat/array/flatMap.mjs +16 -10
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.d.mts +20 -19
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.d.ts +20 -19
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.js +16 -8
- package/node_modules/es-toolkit/dist/compat/array/flatMapDeep.mjs +16 -4
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.d.mts +24 -23
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.d.ts +24 -23
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.js +24 -17
- package/node_modules/es-toolkit/dist/compat/array/flatMapDepth.mjs +21 -12
- package/node_modules/es-toolkit/dist/compat/array/flatten.d.mts +8 -8
- package/node_modules/es-toolkit/dist/compat/array/flatten.d.ts +8 -8
- package/node_modules/es-toolkit/dist/compat/array/flatten.js +16 -34
- package/node_modules/es-toolkit/dist/compat/array/flatten.mjs +16 -30
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.js +16 -9
- package/node_modules/es-toolkit/dist/compat/array/flattenDeep.mjs +16 -5
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.js +37 -8
- package/node_modules/es-toolkit/dist/compat/array/flattenDepth.mjs +37 -4
- package/node_modules/es-toolkit/dist/compat/array/forEach.d.mts +31 -30
- package/node_modules/es-toolkit/dist/compat/array/forEach.d.ts +31 -30
- package/node_modules/es-toolkit/dist/compat/array/forEach.js +32 -23
- package/node_modules/es-toolkit/dist/compat/array/forEach.mjs +31 -18
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.d.mts +31 -30
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.d.ts +31 -30
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.js +32 -23
- package/node_modules/es-toolkit/dist/compat/array/forEachRight.mjs +31 -18
- package/node_modules/es-toolkit/dist/compat/array/groupBy.d.mts +10 -9
- package/node_modules/es-toolkit/dist/compat/array/groupBy.d.ts +10 -9
- package/node_modules/es-toolkit/dist/compat/array/groupBy.js +42 -17
- package/node_modules/es-toolkit/dist/compat/array/groupBy.mjs +40 -13
- package/node_modules/es-toolkit/dist/compat/array/head.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/head.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/head.js +22 -13
- package/node_modules/es-toolkit/dist/compat/array/head.mjs +22 -9
- package/node_modules/es-toolkit/dist/compat/array/includes.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/array/includes.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/array/includes.js +44 -42
- package/node_modules/es-toolkit/dist/compat/array/includes.mjs +41 -38
- package/node_modules/es-toolkit/dist/compat/array/indexOf.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/indexOf.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/indexOf.js +29 -23
- package/node_modules/es-toolkit/dist/compat/array/indexOf.mjs +29 -19
- package/node_modules/es-toolkit/dist/compat/array/initial.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/initial.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/initial.js +19 -12
- package/node_modules/es-toolkit/dist/compat/array/initial.mjs +19 -8
- package/node_modules/es-toolkit/dist/compat/array/intersection.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/intersection.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/intersection.js +32 -24
- package/node_modules/es-toolkit/dist/compat/array/intersection.mjs +32 -20
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.d.mts +23 -22
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.d.ts +23 -22
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.js +52 -37
- package/node_modules/es-toolkit/dist/compat/array/intersectionBy.mjs +52 -33
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.d.mts +20 -19
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.d.ts +20 -19
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.js +38 -43
- package/node_modules/es-toolkit/dist/compat/array/intersectionWith.mjs +38 -39
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.js +37 -38
- package/node_modules/es-toolkit/dist/compat/array/invokeMap.mjs +37 -34
- package/node_modules/es-toolkit/dist/compat/array/join.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/join.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/join.js +17 -11
- package/node_modules/es-toolkit/dist/compat/array/join.mjs +17 -7
- package/node_modules/es-toolkit/dist/compat/array/keyBy.d.mts +10 -9
- package/node_modules/es-toolkit/dist/compat/array/keyBy.d.ts +10 -9
- package/node_modules/es-toolkit/dist/compat/array/keyBy.js +41 -20
- package/node_modules/es-toolkit/dist/compat/array/keyBy.mjs +41 -16
- package/node_modules/es-toolkit/dist/compat/array/last.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/last.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/last.js +29 -13
- package/node_modules/es-toolkit/dist/compat/array/last.mjs +29 -9
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.js +14 -23
- package/node_modules/es-toolkit/dist/compat/array/lastIndexOf.mjs +14 -19
- package/node_modules/es-toolkit/dist/compat/array/map.d.mts +31 -32
- package/node_modules/es-toolkit/dist/compat/array/map.d.ts +31 -32
- package/node_modules/es-toolkit/dist/compat/array/map.js +17 -23
- package/node_modules/es-toolkit/dist/compat/array/map.mjs +17 -19
- package/node_modules/es-toolkit/dist/compat/array/nth.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/nth.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/nth.js +19 -16
- package/node_modules/es-toolkit/dist/compat/array/nth.mjs +19 -12
- package/node_modules/es-toolkit/dist/compat/array/orderBy.d.mts +25 -23
- package/node_modules/es-toolkit/dist/compat/array/orderBy.d.ts +25 -23
- package/node_modules/es-toolkit/dist/compat/array/orderBy.js +79 -79
- package/node_modules/es-toolkit/dist/compat/array/orderBy.mjs +79 -75
- package/node_modules/es-toolkit/dist/compat/array/partition.d.mts +14 -13
- package/node_modules/es-toolkit/dist/compat/array/partition.d.ts +14 -13
- package/node_modules/es-toolkit/dist/compat/array/partition.js +40 -27
- package/node_modules/es-toolkit/dist/compat/array/partition.mjs +40 -23
- package/node_modules/es-toolkit/dist/compat/array/pull.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/pull.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/pull.js +20 -8
- package/node_modules/es-toolkit/dist/compat/array/pull.mjs +20 -4
- package/node_modules/es-toolkit/dist/compat/array/pullAll.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/pullAll.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/pullAll.js +22 -8
- package/node_modules/es-toolkit/dist/compat/array/pullAll.mjs +22 -4
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.d.mts +22 -21
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.d.ts +22 -21
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.js +40 -23
- package/node_modules/es-toolkit/dist/compat/array/pullAllBy.mjs +40 -19
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.d.mts +21 -20
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.d.ts +21 -20
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.js +40 -34
- package/node_modules/es-toolkit/dist/compat/array/pullAllWith.mjs +40 -30
- package/node_modules/es-toolkit/dist/compat/array/pullAt.d.mts +12 -11
- package/node_modules/es-toolkit/dist/compat/array/pullAt.d.ts +12 -11
- package/node_modules/es-toolkit/dist/compat/array/pullAt.js +41 -35
- package/node_modules/es-toolkit/dist/compat/array/pullAt.mjs +40 -31
- package/node_modules/es-toolkit/dist/compat/array/reduce.d.mts +26 -25
- package/node_modules/es-toolkit/dist/compat/array/reduce.d.ts +26 -25
- package/node_modules/es-toolkit/dist/compat/array/reduce.js +52 -35
- package/node_modules/es-toolkit/dist/compat/array/reduce.mjs +51 -30
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.d.mts +26 -25
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.d.ts +26 -25
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.js +52 -41
- package/node_modules/es-toolkit/dist/compat/array/reduceRight.mjs +51 -36
- package/node_modules/es-toolkit/dist/compat/array/reject.d.mts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/reject.d.ts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/reject.js +30 -12
- package/node_modules/es-toolkit/dist/compat/array/reject.mjs +29 -7
- package/node_modules/es-toolkit/dist/compat/array/remove.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/remove.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/remove.js +38 -11
- package/node_modules/es-toolkit/dist/compat/array/remove.mjs +37 -6
- package/node_modules/es-toolkit/dist/compat/array/reverse.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/reverse.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/reverse.js +25 -9
- package/node_modules/es-toolkit/dist/compat/array/reverse.mjs +25 -5
- package/node_modules/es-toolkit/dist/compat/array/sample.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/sample.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/sample.js +18 -16
- package/node_modules/es-toolkit/dist/compat/array/sample.mjs +18 -12
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.js +29 -19
- package/node_modules/es-toolkit/dist/compat/array/sampleSize.mjs +29 -15
- package/node_modules/es-toolkit/dist/compat/array/shuffle.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/shuffle.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/shuffle.js +22 -25
- package/node_modules/es-toolkit/dist/compat/array/shuffle.mjs +22 -21
- package/node_modules/es-toolkit/dist/compat/array/size.d.mts +9 -4
- package/node_modules/es-toolkit/dist/compat/array/size.d.ts +9 -4
- package/node_modules/es-toolkit/dist/compat/array/size.js +11 -14
- package/node_modules/es-toolkit/dist/compat/array/size.mjs +11 -10
- package/node_modules/es-toolkit/dist/compat/array/slice.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/slice.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/slice.js +37 -40
- package/node_modules/es-toolkit/dist/compat/array/slice.mjs +37 -36
- package/node_modules/es-toolkit/dist/compat/array/some.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/some.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/array/some.js +88 -83
- package/node_modules/es-toolkit/dist/compat/array/some.mjs +88 -79
- package/node_modules/es-toolkit/dist/compat/array/sortBy.d.mts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/sortBy.d.ts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/sortBy.js +9 -17
- package/node_modules/es-toolkit/dist/compat/array/sortBy.mjs +9 -13
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.js +33 -32
- package/node_modules/es-toolkit/dist/compat/array/sortedIndex.mjs +33 -28
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.js +52 -61
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.mjs +51 -56
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.js +39 -16
- package/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.mjs +39 -12
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.js +31 -32
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.mjs +31 -28
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.js +19 -8
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.mjs +19 -4
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.js +40 -16
- package/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.mjs +40 -12
- package/node_modules/es-toolkit/dist/compat/array/tail.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/tail.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/tail.js +31 -13
- package/node_modules/es-toolkit/dist/compat/array/tail.mjs +31 -9
- package/node_modules/es-toolkit/dist/compat/array/take.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/take.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/take.js +32 -15
- package/node_modules/es-toolkit/dist/compat/array/take.mjs +32 -11
- package/node_modules/es-toolkit/dist/compat/array/takeRight.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/takeRight.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/takeRight.js +31 -15
- package/node_modules/es-toolkit/dist/compat/array/takeRight.mjs +31 -11
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.js +56 -17
- package/node_modules/es-toolkit/dist/compat/array/takeRightWhile.mjs +56 -13
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.js +56 -17
- package/node_modules/es-toolkit/dist/compat/array/takeWhile.mjs +56 -13
- package/node_modules/es-toolkit/dist/compat/array/union.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/union.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/union.js +35 -12
- package/node_modules/es-toolkit/dist/compat/array/union.mjs +33 -8
- package/node_modules/es-toolkit/dist/compat/array/unionBy.d.mts +29 -28
- package/node_modules/es-toolkit/dist/compat/array/unionBy.d.ts +29 -28
- package/node_modules/es-toolkit/dist/compat/array/unionBy.js +35 -19
- package/node_modules/es-toolkit/dist/compat/array/unionBy.mjs +35 -15
- package/node_modules/es-toolkit/dist/compat/array/unionWith.d.mts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/unionWith.d.ts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/unionWith.js +38 -17
- package/node_modules/es-toolkit/dist/compat/array/unionWith.mjs +38 -13
- package/node_modules/es-toolkit/dist/compat/array/uniq.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/uniq.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/uniq.js +21 -12
- package/node_modules/es-toolkit/dist/compat/array/uniq.mjs +21 -8
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.js +11 -16
- package/node_modules/es-toolkit/dist/compat/array/uniqBy.mjs +10 -11
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.js +31 -13
- package/node_modules/es-toolkit/dist/compat/array/uniqWith.mjs +31 -9
- package/node_modules/es-toolkit/dist/compat/array/unzip.d.mts +8 -4
- package/node_modules/es-toolkit/dist/compat/array/unzip.d.ts +8 -4
- package/node_modules/es-toolkit/dist/compat/array/unzip.js +25 -15
- package/node_modules/es-toolkit/dist/compat/array/unzip.mjs +25 -11
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.js +30 -22
- package/node_modules/es-toolkit/dist/compat/array/unzipWith.mjs +30 -18
- package/node_modules/es-toolkit/dist/compat/array/without.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/without.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/array/without.js +32 -12
- package/node_modules/es-toolkit/dist/compat/array/without.mjs +32 -8
- package/node_modules/es-toolkit/dist/compat/array/xor.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/xor.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/array/xor.js +35 -31
- package/node_modules/es-toolkit/dist/compat/array/xor.mjs +35 -27
- package/node_modules/es-toolkit/dist/compat/array/xorBy.d.mts +16 -15
- package/node_modules/es-toolkit/dist/compat/array/xorBy.d.ts +16 -15
- package/node_modules/es-toolkit/dist/compat/array/xorBy.js +37 -24
- package/node_modules/es-toolkit/dist/compat/array/xorBy.mjs +35 -20
- package/node_modules/es-toolkit/dist/compat/array/xorWith.d.mts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/xorWith.d.ts +15 -14
- package/node_modules/es-toolkit/dist/compat/array/xorWith.js +34 -22
- package/node_modules/es-toolkit/dist/compat/array/xorWith.mjs +32 -18
- package/node_modules/es-toolkit/dist/compat/array/zip.d.mts +43 -42
- package/node_modules/es-toolkit/dist/compat/array/zip.d.ts +43 -42
- package/node_modules/es-toolkit/dist/compat/array/zip.js +27 -12
- package/node_modules/es-toolkit/dist/compat/array/zip.mjs +27 -8
- package/node_modules/es-toolkit/dist/compat/array/zipObject.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/zipObject.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/array/zipObject.js +38 -12
- package/node_modules/es-toolkit/dist/compat/array/zipObject.mjs +38 -8
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.js +47 -24
- package/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.mjs +47 -20
- package/node_modules/es-toolkit/dist/compat/array/zipWith.d.mts +30 -29
- package/node_modules/es-toolkit/dist/compat/array/zipWith.d.ts +30 -29
- package/node_modules/es-toolkit/dist/compat/array/zipWith.js +32 -21
- package/node_modules/es-toolkit/dist/compat/array/zipWith.mjs +32 -17
- package/node_modules/es-toolkit/dist/compat/compat.d.mts +299 -291
- package/node_modules/es-toolkit/dist/compat/compat.d.ts +299 -291
- package/node_modules/es-toolkit/dist/compat/compat.js +609 -595
- package/node_modules/es-toolkit/dist/compat/compat.mjs +604 -291
- package/node_modules/es-toolkit/dist/compat/function/after.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/after.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/after.js +29 -16
- package/node_modules/es-toolkit/dist/compat/function/after.mjs +29 -12
- package/node_modules/es-toolkit/dist/compat/function/ary.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/ary.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/ary.js +25 -14
- package/node_modules/es-toolkit/dist/compat/function/ary.mjs +25 -10
- package/node_modules/es-toolkit/dist/compat/function/attempt.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/attempt.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/attempt.js +37 -11
- package/node_modules/es-toolkit/dist/compat/function/attempt.mjs +37 -7
- package/node_modules/es-toolkit/dist/compat/function/before.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/before.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/before.js +34 -21
- package/node_modules/es-toolkit/dist/compat/function/before.mjs +34 -17
- package/node_modules/es-toolkit/dist/compat/function/bind.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/function/bind.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/function/bind.js +41 -28
- package/node_modules/es-toolkit/dist/compat/function/bind.mjs +41 -24
- package/node_modules/es-toolkit/dist/compat/function/bindKey.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/function/bindKey.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/function/bindKey.js +54 -28
- package/node_modules/es-toolkit/dist/compat/function/bindKey.mjs +54 -24
- package/node_modules/es-toolkit/dist/compat/function/curry.d.mts +85 -84
- package/node_modules/es-toolkit/dist/compat/function/curry.d.ts +85 -84
- package/node_modules/es-toolkit/dist/compat/function/curry.js +73 -53
- package/node_modules/es-toolkit/dist/compat/function/curry.mjs +73 -49
- package/node_modules/es-toolkit/dist/compat/function/curryRight.d.mts +66 -65
- package/node_modules/es-toolkit/dist/compat/function/curryRight.d.ts +66 -65
- package/node_modules/es-toolkit/dist/compat/function/curryRight.js +78 -60
- package/node_modules/es-toolkit/dist/compat/function/curryRight.mjs +78 -56
- package/node_modules/es-toolkit/dist/compat/function/debounce.d.mts +57 -56
- package/node_modules/es-toolkit/dist/compat/function/debounce.d.ts +57 -56
- package/node_modules/es-toolkit/dist/compat/function/debounce.js +35 -47
- package/node_modules/es-toolkit/dist/compat/function/debounce.mjs +35 -43
- package/node_modules/es-toolkit/dist/compat/function/defer.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/defer.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/defer.js +17 -9
- package/node_modules/es-toolkit/dist/compat/function/defer.mjs +17 -5
- package/node_modules/es-toolkit/dist/compat/function/delay.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/delay.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/delay.js +31 -11
- package/node_modules/es-toolkit/dist/compat/function/delay.mjs +31 -7
- package/node_modules/es-toolkit/dist/compat/function/flip.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/flip.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/flip.js +21 -8
- package/node_modules/es-toolkit/dist/compat/function/flip.mjs +21 -4
- package/node_modules/es-toolkit/dist/compat/function/flow.d.mts +12 -11
- package/node_modules/es-toolkit/dist/compat/function/flow.d.ts +12 -11
- package/node_modules/es-toolkit/dist/compat/function/flow.js +23 -13
- package/node_modules/es-toolkit/dist/compat/function/flow.mjs +23 -9
- package/node_modules/es-toolkit/dist/compat/function/flowRight.d.mts +13 -12
- package/node_modules/es-toolkit/dist/compat/function/flowRight.d.ts +13 -12
- package/node_modules/es-toolkit/dist/compat/function/flowRight.js +25 -13
- package/node_modules/es-toolkit/dist/compat/function/flowRight.mjs +25 -9
- package/node_modules/es-toolkit/dist/compat/function/identity.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/identity.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/identity.js +3 -6
- package/node_modules/es-toolkit/dist/compat/function/identity.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/function/memoize.d.mts +80 -79
- package/node_modules/es-toolkit/dist/compat/function/memoize.d.ts +80 -79
- package/node_modules/es-toolkit/dist/compat/function/memoize.js +24 -21
- package/node_modules/es-toolkit/dist/compat/function/memoize.mjs +24 -17
- package/node_modules/es-toolkit/dist/compat/function/negate.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/negate.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/negate.js +19 -11
- package/node_modules/es-toolkit/dist/compat/function/negate.mjs +19 -7
- package/node_modules/es-toolkit/dist/compat/function/noop.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/function/noop.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/function/noop.js +12 -6
- package/node_modules/es-toolkit/dist/compat/function/noop.mjs +12 -2
- package/node_modules/es-toolkit/dist/compat/function/nthArg.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/nthArg.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/nthArg.js +25 -10
- package/node_modules/es-toolkit/dist/compat/function/nthArg.mjs +25 -6
- package/node_modules/es-toolkit/dist/compat/function/once.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/function/once.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/function/once.js +4 -8
- package/node_modules/es-toolkit/dist/compat/function/once.mjs +4 -4
- package/node_modules/es-toolkit/dist/compat/function/overArgs.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/overArgs.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/overArgs.js +57 -21
- package/node_modules/es-toolkit/dist/compat/function/overArgs.mjs +57 -17
- package/node_modules/es-toolkit/dist/compat/function/partial.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/partial.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/partial.js +31 -9
- package/node_modules/es-toolkit/dist/compat/function/partial.mjs +31 -5
- package/node_modules/es-toolkit/dist/compat/function/partialRight.d.mts +143 -142
- package/node_modules/es-toolkit/dist/compat/function/partialRight.d.ts +143 -142
- package/node_modules/es-toolkit/dist/compat/function/partialRight.js +31 -9
- package/node_modules/es-toolkit/dist/compat/function/partialRight.mjs +31 -5
- package/node_modules/es-toolkit/dist/compat/function/rearg.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/rearg.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/rearg.js +23 -15
- package/node_modules/es-toolkit/dist/compat/function/rearg.mjs +23 -11
- package/node_modules/es-toolkit/dist/compat/function/rest.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/rest.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/function/rest.js +35 -12
- package/node_modules/es-toolkit/dist/compat/function/rest.mjs +35 -8
- package/node_modules/es-toolkit/dist/compat/function/spread.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/spread.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/spread.js +54 -17
- package/node_modules/es-toolkit/dist/compat/function/spread.mjs +54 -13
- package/node_modules/es-toolkit/dist/compat/function/throttle.d.mts +29 -28
- package/node_modules/es-toolkit/dist/compat/function/throttle.d.ts +29 -28
- package/node_modules/es-toolkit/dist/compat/function/throttle.js +39 -13
- package/node_modules/es-toolkit/dist/compat/function/throttle.mjs +39 -9
- package/node_modules/es-toolkit/dist/compat/function/unary.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/unary.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/function/unary.js +18 -8
- package/node_modules/es-toolkit/dist/compat/function/unary.mjs +18 -4
- package/node_modules/es-toolkit/dist/compat/function/wrap.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/wrap.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/function/wrap.js +31 -12
- package/node_modules/es-toolkit/dist/compat/function/wrap.mjs +31 -8
- package/node_modules/es-toolkit/dist/compat/index.d.mts +294 -292
- package/node_modules/es-toolkit/dist/compat/index.d.ts +294 -292
- package/node_modules/es-toolkit/dist/compat/index.js +598 -597
- package/node_modules/es-toolkit/dist/compat/index.mjs +295 -292
- package/node_modules/es-toolkit/dist/compat/math/add.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/add.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/add.js +29 -23
- package/node_modules/es-toolkit/dist/compat/math/add.mjs +29 -19
- package/node_modules/es-toolkit/dist/compat/math/ceil.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/ceil.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/ceil.js +16 -8
- package/node_modules/es-toolkit/dist/compat/math/ceil.mjs +16 -4
- package/node_modules/es-toolkit/dist/compat/math/clamp.d.mts +10 -9
- package/node_modules/es-toolkit/dist/compat/math/clamp.d.ts +10 -9
- package/node_modules/es-toolkit/dist/compat/math/clamp.js +33 -20
- package/node_modules/es-toolkit/dist/compat/math/clamp.mjs +33 -16
- package/node_modules/es-toolkit/dist/compat/math/divide.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/divide.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/divide.js +29 -23
- package/node_modules/es-toolkit/dist/compat/math/divide.mjs +29 -19
- package/node_modules/es-toolkit/dist/compat/math/floor.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/floor.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/floor.js +16 -8
- package/node_modules/es-toolkit/dist/compat/math/floor.mjs +16 -4
- package/node_modules/es-toolkit/dist/compat/math/inRange.d.mts +12 -8
- package/node_modules/es-toolkit/dist/compat/math/inRange.d.ts +12 -8
- package/node_modules/es-toolkit/dist/compat/math/inRange.js +28 -29
- package/node_modules/es-toolkit/dist/compat/math/inRange.mjs +28 -25
- package/node_modules/es-toolkit/dist/compat/math/max.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/max.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/max.js +17 -19
- package/node_modules/es-toolkit/dist/compat/math/max.mjs +17 -15
- package/node_modules/es-toolkit/dist/compat/math/maxBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/math/maxBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/math/maxBy.js +50 -14
- package/node_modules/es-toolkit/dist/compat/math/maxBy.mjs +50 -10
- package/node_modules/es-toolkit/dist/compat/math/mean.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/mean.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/mean.js +18 -9
- package/node_modules/es-toolkit/dist/compat/math/mean.mjs +18 -5
- package/node_modules/es-toolkit/dist/compat/math/meanBy.d.mts +11 -6
- package/node_modules/es-toolkit/dist/compat/math/meanBy.d.ts +11 -6
- package/node_modules/es-toolkit/dist/compat/math/meanBy.js +34 -13
- package/node_modules/es-toolkit/dist/compat/math/meanBy.mjs +34 -9
- package/node_modules/es-toolkit/dist/compat/math/min.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/min.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/min.js +17 -19
- package/node_modules/es-toolkit/dist/compat/math/min.mjs +17 -15
- package/node_modules/es-toolkit/dist/compat/math/minBy.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/math/minBy.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/math/minBy.js +50 -14
- package/node_modules/es-toolkit/dist/compat/math/minBy.mjs +50 -10
- package/node_modules/es-toolkit/dist/compat/math/multiply.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/multiply.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/multiply.js +29 -23
- package/node_modules/es-toolkit/dist/compat/math/multiply.mjs +29 -19
- package/node_modules/es-toolkit/dist/compat/math/parseInt.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/math/parseInt.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/math/parseInt.js +22 -9
- package/node_modules/es-toolkit/dist/compat/math/parseInt.mjs +22 -5
- package/node_modules/es-toolkit/dist/compat/math/random.d.mts +16 -15
- package/node_modules/es-toolkit/dist/compat/math/random.d.ts +16 -15
- package/node_modules/es-toolkit/dist/compat/math/random.js +55 -71
- package/node_modules/es-toolkit/dist/compat/math/random.mjs +55 -67
- package/node_modules/es-toolkit/dist/compat/math/range.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/math/range.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/math/range.js +34 -27
- package/node_modules/es-toolkit/dist/compat/math/range.mjs +34 -23
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.js +35 -27
- package/node_modules/es-toolkit/dist/compat/math/rangeRight.mjs +35 -23
- package/node_modules/es-toolkit/dist/compat/math/round.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/round.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/round.js +16 -8
- package/node_modules/es-toolkit/dist/compat/math/round.mjs +16 -4
- package/node_modules/es-toolkit/dist/compat/math/subtract.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/subtract.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/subtract.js +28 -23
- package/node_modules/es-toolkit/dist/compat/math/subtract.mjs +28 -19
- package/node_modules/es-toolkit/dist/compat/math/sum.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/sum.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/math/sum.js +20 -8
- package/node_modules/es-toolkit/dist/compat/math/sum.mjs +20 -4
- package/node_modules/es-toolkit/dist/compat/math/sumBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/sumBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/math/sumBy.js +30 -26
- package/node_modules/es-toolkit/dist/compat/math/sumBy.mjs +30 -22
- package/node_modules/es-toolkit/dist/compat/object/assign.d.mts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/assign.d.ts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/assign.js +27 -19
- package/node_modules/es-toolkit/dist/compat/object/assign.mjs +27 -15
- package/node_modules/es-toolkit/dist/compat/object/assignIn.d.mts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/assignIn.d.ts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/assignIn.js +27 -19
- package/node_modules/es-toolkit/dist/compat/object/assignIn.mjs +27 -15
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.d.mts +30 -29
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.d.ts +30 -29
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.js +42 -29
- package/node_modules/es-toolkit/dist/compat/object/assignInWith.mjs +42 -25
- package/node_modules/es-toolkit/dist/compat/object/assignWith.d.mts +30 -29
- package/node_modules/es-toolkit/dist/compat/object/assignWith.d.ts +30 -29
- package/node_modules/es-toolkit/dist/compat/object/assignWith.js +42 -29
- package/node_modules/es-toolkit/dist/compat/object/assignWith.mjs +42 -25
- package/node_modules/es-toolkit/dist/compat/object/at.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/at.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/at.js +34 -28
- package/node_modules/es-toolkit/dist/compat/object/at.mjs +34 -24
- package/node_modules/es-toolkit/dist/compat/object/clone.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/clone.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/clone.js +143 -151
- package/node_modules/es-toolkit/dist/compat/object/clone.mjs +143 -147
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.js +50 -8
- package/node_modules/es-toolkit/dist/compat/object/cloneDeep.mjs +50 -4
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.js +70 -43
- package/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.mjs +70 -39
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.d.mts +12 -11
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.d.ts +12 -11
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.js +52 -15
- package/node_modules/es-toolkit/dist/compat/object/cloneWith.mjs +52 -11
- package/node_modules/es-toolkit/dist/compat/object/create.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/create.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/create.js +28 -19
- package/node_modules/es-toolkit/dist/compat/object/create.mjs +28 -15
- package/node_modules/es-toolkit/dist/compat/object/defaults.d.mts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/defaults.d.ts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/defaults.js +43 -32
- package/node_modules/es-toolkit/dist/compat/object/defaults.mjs +43 -28
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.js +59 -55
- package/node_modules/es-toolkit/dist/compat/object/defaultsDeep.mjs +59 -51
- package/node_modules/es-toolkit/dist/compat/object/entries.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entries.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entries.js +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entries.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.js +1 -0
- package/node_modules/es-toolkit/dist/compat/object/entriesIn.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.js +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extend.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.d.mts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.d.ts +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.js +1 -0
- package/node_modules/es-toolkit/dist/compat/object/extendWith.mjs +1 -0
- package/node_modules/es-toolkit/dist/compat/object/findKey.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/findKey.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/findKey.js +21 -15
- package/node_modules/es-toolkit/dist/compat/object/findKey.mjs +20 -11
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.js +20 -15
- package/node_modules/es-toolkit/dist/compat/object/findLastKey.mjs +20 -11
- package/node_modules/es-toolkit/dist/compat/object/forIn.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/forIn.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/forIn.js +34 -18
- package/node_modules/es-toolkit/dist/compat/object/forIn.mjs +33 -13
- package/node_modules/es-toolkit/dist/compat/object/forInRight.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/forInRight.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/forInRight.js +39 -23
- package/node_modules/es-toolkit/dist/compat/object/forInRight.mjs +38 -18
- package/node_modules/es-toolkit/dist/compat/object/forOwn.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/forOwn.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/forOwn.js +38 -21
- package/node_modules/es-toolkit/dist/compat/object/forOwn.mjs +37 -16
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.js +38 -21
- package/node_modules/es-toolkit/dist/compat/object/forOwnRight.mjs +37 -16
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.js +24 -16
- package/node_modules/es-toolkit/dist/compat/object/fromPairs.mjs +24 -12
- package/node_modules/es-toolkit/dist/compat/object/functions.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/functions.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/functions.js +26 -11
- package/node_modules/es-toolkit/dist/compat/object/functions.mjs +26 -7
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.js +24 -17
- package/node_modules/es-toolkit/dist/compat/object/functionsIn.mjs +24 -13
- package/node_modules/es-toolkit/dist/compat/object/get.d.mts +73 -72
- package/node_modules/es-toolkit/dist/compat/object/get.d.ts +73 -72
- package/node_modules/es-toolkit/dist/compat/object/get.js +60 -77
- package/node_modules/es-toolkit/dist/compat/object/get.mjs +60 -73
- package/node_modules/es-toolkit/dist/compat/object/has.d.mts +12 -13
- package/node_modules/es-toolkit/dist/compat/object/has.d.ts +12 -13
- package/node_modules/es-toolkit/dist/compat/object/has.js +50 -35
- package/node_modules/es-toolkit/dist/compat/object/has.mjs +50 -31
- package/node_modules/es-toolkit/dist/compat/object/hasIn.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/hasIn.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/hasIn.js +60 -38
- package/node_modules/es-toolkit/dist/compat/object/hasIn.mjs +60 -34
- package/node_modules/es-toolkit/dist/compat/object/invert.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/invert.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/invert.js +22 -8
- package/node_modules/es-toolkit/dist/compat/object/invert.mjs +22 -4
- package/node_modules/es-toolkit/dist/compat/object/invertBy.d.mts +10 -9
- package/node_modules/es-toolkit/dist/compat/object/invertBy.d.ts +10 -9
- package/node_modules/es-toolkit/dist/compat/object/invertBy.js +42 -30
- package/node_modules/es-toolkit/dist/compat/object/invertBy.mjs +42 -26
- package/node_modules/es-toolkit/dist/compat/object/keys.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/keys.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/keys.js +44 -35
- package/node_modules/es-toolkit/dist/compat/object/keys.mjs +44 -31
- package/node_modules/es-toolkit/dist/compat/object/keysIn.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/keysIn.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/object/keysIn.js +57 -52
- package/node_modules/es-toolkit/dist/compat/object/keysIn.mjs +57 -48
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.js +26 -14
- package/node_modules/es-toolkit/dist/compat/object/mapKeys.mjs +25 -9
- package/node_modules/es-toolkit/dist/compat/object/mapValues.d.mts +9 -14
- package/node_modules/es-toolkit/dist/compat/object/mapValues.d.ts +9 -14
- package/node_modules/es-toolkit/dist/compat/object/mapValues.js +27 -14
- package/node_modules/es-toolkit/dist/compat/object/mapValues.mjs +26 -9
- package/node_modules/es-toolkit/dist/compat/object/merge.d.mts +24 -23
- package/node_modules/es-toolkit/dist/compat/object/merge.d.ts +24 -23
- package/node_modules/es-toolkit/dist/compat/object/merge.js +42 -9
- package/node_modules/es-toolkit/dist/compat/object/merge.mjs +42 -5
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.d.mts +28 -27
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.d.ts +28 -27
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.js +106 -105
- package/node_modules/es-toolkit/dist/compat/object/mergeWith.mjs +106 -101
- package/node_modules/es-toolkit/dist/compat/object/omit.d.mts +13 -12
- package/node_modules/es-toolkit/dist/compat/object/omit.d.ts +13 -12
- package/node_modules/es-toolkit/dist/compat/object/omit.js +69 -64
- package/node_modules/es-toolkit/dist/compat/object/omit.mjs +69 -60
- package/node_modules/es-toolkit/dist/compat/object/omitBy.d.mts +13 -12
- package/node_modules/es-toolkit/dist/compat/object/omitBy.d.ts +13 -12
- package/node_modules/es-toolkit/dist/compat/object/omitBy.js +36 -29
- package/node_modules/es-toolkit/dist/compat/object/omitBy.mjs +36 -25
- package/node_modules/es-toolkit/dist/compat/object/pick.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/object/pick.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/object/pick.js +58 -51
- package/node_modules/es-toolkit/dist/compat/object/pick.mjs +58 -47
- package/node_modules/es-toolkit/dist/compat/object/pickBy.d.mts +20 -19
- package/node_modules/es-toolkit/dist/compat/object/pickBy.d.ts +20 -19
- package/node_modules/es-toolkit/dist/compat/object/pickBy.js +38 -27
- package/node_modules/es-toolkit/dist/compat/object/pickBy.mjs +38 -23
- package/node_modules/es-toolkit/dist/compat/object/property.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/object/property.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/object/property.js +24 -10
- package/node_modules/es-toolkit/dist/compat/object/property.mjs +24 -6
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.js +26 -10
- package/node_modules/es-toolkit/dist/compat/object/propertyOf.mjs +26 -6
- package/node_modules/es-toolkit/dist/compat/object/result.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/object/result.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/object/result.js +47 -25
- package/node_modules/es-toolkit/dist/compat/object/result.mjs +47 -21
- package/node_modules/es-toolkit/dist/compat/object/set.d.mts +12 -11
- package/node_modules/es-toolkit/dist/compat/object/set.d.ts +12 -11
- package/node_modules/es-toolkit/dist/compat/object/set.js +31 -8
- package/node_modules/es-toolkit/dist/compat/object/set.mjs +31 -4
- package/node_modules/es-toolkit/dist/compat/object/setWith.d.mts +14 -13
- package/node_modules/es-toolkit/dist/compat/object/setWith.d.ts +14 -13
- package/node_modules/es-toolkit/dist/compat/object/setWith.js +30 -15
- package/node_modules/es-toolkit/dist/compat/object/setWith.mjs +30 -11
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.d.mts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.d.ts +26 -25
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.js +28 -10
- package/node_modules/es-toolkit/dist/compat/object/toDefaulted.mjs +27 -6
- package/node_modules/es-toolkit/dist/compat/object/toPairs.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/toPairs.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/toPairs.js +34 -26
- package/node_modules/es-toolkit/dist/compat/object/toPairs.mjs +34 -22
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.js +32 -26
- package/node_modules/es-toolkit/dist/compat/object/toPairsIn.mjs +32 -22
- package/node_modules/es-toolkit/dist/compat/object/transform.d.mts +19 -18
- package/node_modules/es-toolkit/dist/compat/object/transform.d.ts +19 -18
- package/node_modules/es-toolkit/dist/compat/object/transform.js +42 -32
- package/node_modules/es-toolkit/dist/compat/object/transform.mjs +41 -27
- package/node_modules/es-toolkit/dist/compat/object/unset.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/unset.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/object/unset.js +61 -77
- package/node_modules/es-toolkit/dist/compat/object/unset.mjs +61 -73
- package/node_modules/es-toolkit/dist/compat/object/update.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/object/update.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/object/update.js +13 -8
- package/node_modules/es-toolkit/dist/compat/object/update.mjs +13 -4
- package/node_modules/es-toolkit/dist/compat/object/updateWith.d.mts +14 -13
- package/node_modules/es-toolkit/dist/compat/object/updateWith.d.ts +14 -13
- package/node_modules/es-toolkit/dist/compat/object/updateWith.js +48 -54
- package/node_modules/es-toolkit/dist/compat/object/updateWith.mjs +48 -50
- package/node_modules/es-toolkit/dist/compat/object/values.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/values.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/object/values.js +17 -9
- package/node_modules/es-toolkit/dist/compat/object/values.mjs +17 -5
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.js +22 -14
- package/node_modules/es-toolkit/dist/compat/object/valuesIn.mjs +22 -10
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.js +27 -12
- package/node_modules/es-toolkit/dist/compat/predicate/conforms.mjs +27 -8
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.js +40 -24
- package/node_modules/es-toolkit/dist/compat/predicate/conformsTo.mjs +40 -20
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.js +24 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isArguments.mjs +24 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.js +23 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isArray.mjs +23 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.js +21 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.mjs +21 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.js +18 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.mjs +18 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.js +17 -9
- package/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.mjs +17 -5
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.js +25 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isBoolean.mjs +25 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.js +22 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isBuffer.mjs +22 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.js +17 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isDate.mjs +17 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.js +15 -9
- package/node_modules/es-toolkit/dist/compat/predicate/isElement.mjs +15 -5
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.js +45 -35
- package/node_modules/es-toolkit/dist/compat/predicate/isEmpty.mjs +45 -31
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.js +46 -23
- package/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.mjs +46 -19
- package/node_modules/es-toolkit/dist/compat/predicate/isError.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isError.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isError.js +17 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isError.mjs +17 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.js +27 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isFinite.mjs +27 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.js +16 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isFunction.mjs +16 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.js +17 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isInteger.mjs +17 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.js +24 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isLength.mjs +24 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.js +21 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isMap.mjs +21 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.js +32 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isMatch.mjs +32 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.d.mts +9 -7
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.d.ts +9 -7
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.js +153 -143
- package/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.mjs +154 -139
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.js +16 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isNaN.mjs +16 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.js +22 -17
- package/node_modules/es-toolkit/dist/compat/predicate/isNative.mjs +22 -13
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.js +22 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isNil.mjs +22 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.js +14 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isNull.mjs +14 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.js +23 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isNumber.mjs +23 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.js +26 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isObject.mjs +26 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.js +26 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.mjs +26 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.js +36 -30
- package/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.mjs +36 -26
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.js +17 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isRegExp.mjs +17 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.js +21 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.mjs +21 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.js +21 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isSet.mjs +21 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isString.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isString.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isString.js +20 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isString.mjs +20 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.js +17 -6
- package/node_modules/es-toolkit/dist/compat/predicate/isSymbol.mjs +17 -2
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.js +19 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.mjs +19 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.js +24 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isUndefined.mjs +24 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.js +24 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.mjs +24 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.js +24 -8
- package/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.mjs +24 -4
- package/node_modules/es-toolkit/dist/compat/predicate/matches.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/predicate/matches.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/predicate/matches.js +34 -12
- package/node_modules/es-toolkit/dist/compat/predicate/matches.mjs +34 -8
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.d.mts +10 -9
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.d.ts +10 -9
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js +47 -34
- package/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.mjs +47 -30
- package/node_modules/es-toolkit/dist/compat/string/camelCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/camelCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/camelCase.js +25 -10
- package/node_modules/es-toolkit/dist/compat/string/camelCase.mjs +25 -6
- package/node_modules/es-toolkit/dist/compat/string/capitalize.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/capitalize.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/capitalize.js +16 -9
- package/node_modules/es-toolkit/dist/compat/string/capitalize.mjs +16 -5
- package/node_modules/es-toolkit/dist/compat/string/deburr.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/deburr.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/deburr.js +24 -9
- package/node_modules/es-toolkit/dist/compat/string/deburr.mjs +24 -5
- package/node_modules/es-toolkit/dist/compat/string/endsWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/endsWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/endsWith.js +22 -12
- package/node_modules/es-toolkit/dist/compat/string/endsWith.mjs +22 -8
- package/node_modules/es-toolkit/dist/compat/string/escape.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/escape.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/escape.js +18 -9
- package/node_modules/es-toolkit/dist/compat/string/escape.mjs +18 -5
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.js +16 -9
- package/node_modules/es-toolkit/dist/compat/string/escapeRegExp.mjs +16 -5
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.js +20 -10
- package/node_modules/es-toolkit/dist/compat/string/kebabCase.mjs +20 -6
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.js +20 -10
- package/node_modules/es-toolkit/dist/compat/string/lowerCase.mjs +20 -6
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.js +16 -9
- package/node_modules/es-toolkit/dist/compat/string/lowerFirst.mjs +16 -5
- package/node_modules/es-toolkit/dist/compat/string/pad.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/pad.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/pad.js +29 -10
- package/node_modules/es-toolkit/dist/compat/string/pad.mjs +29 -6
- package/node_modules/es-toolkit/dist/compat/string/padEnd.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/padEnd.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/padEnd.js +28 -9
- package/node_modules/es-toolkit/dist/compat/string/padEnd.mjs +28 -5
- package/node_modules/es-toolkit/dist/compat/string/padStart.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/padStart.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/padStart.js +28 -9
- package/node_modules/es-toolkit/dist/compat/string/padStart.mjs +28 -5
- package/node_modules/es-toolkit/dist/compat/string/repeat.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/string/repeat.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/string/repeat.js +24 -20
- package/node_modules/es-toolkit/dist/compat/string/repeat.mjs +24 -16
- package/node_modules/es-toolkit/dist/compat/string/replace.d.mts +3 -2
- package/node_modules/es-toolkit/dist/compat/string/replace.d.ts +3 -2
- package/node_modules/es-toolkit/dist/compat/string/replace.js +19 -11
- package/node_modules/es-toolkit/dist/compat/string/replace.mjs +19 -7
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.js +20 -10
- package/node_modules/es-toolkit/dist/compat/string/snakeCase.mjs +20 -6
- package/node_modules/es-toolkit/dist/compat/string/split.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/string/split.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/string/split.js +4 -8
- package/node_modules/es-toolkit/dist/compat/string/split.mjs +4 -4
- package/node_modules/es-toolkit/dist/compat/string/startCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/startCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/startCase.js +27 -24
- package/node_modules/es-toolkit/dist/compat/string/startCase.mjs +27 -20
- package/node_modules/es-toolkit/dist/compat/string/startsWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/startsWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/string/startsWith.js +22 -12
- package/node_modules/es-toolkit/dist/compat/string/startsWith.mjs +22 -8
- package/node_modules/es-toolkit/dist/compat/string/template.d.mts +21 -20
- package/node_modules/es-toolkit/dist/compat/string/template.d.ts +21 -20
- package/node_modules/es-toolkit/dist/compat/string/template.js +121 -74
- package/node_modules/es-toolkit/dist/compat/string/template.mjs +121 -70
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.d.mts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.d.ts +18 -0
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.js +4 -0
- package/node_modules/es-toolkit/dist/compat/string/templateSettings.mjs +5 -0
- package/node_modules/es-toolkit/dist/compat/string/toLower.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/toLower.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/toLower.js +21 -8
- package/node_modules/es-toolkit/dist/compat/string/toLower.mjs +21 -4
- package/node_modules/es-toolkit/dist/compat/string/toUpper.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/toUpper.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/toUpper.js +21 -8
- package/node_modules/es-toolkit/dist/compat/string/toUpper.mjs +21 -4
- package/node_modules/es-toolkit/dist/compat/string/trim.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/string/trim.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/string/trim.js +10 -26
- package/node_modules/es-toolkit/dist/compat/string/trim.mjs +10 -22
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.d.mts +10 -9
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.d.ts +10 -9
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.js +21 -14
- package/node_modules/es-toolkit/dist/compat/string/trimEnd.mjs +21 -10
- package/node_modules/es-toolkit/dist/compat/string/trimStart.d.mts +10 -9
- package/node_modules/es-toolkit/dist/compat/string/trimStart.d.ts +10 -9
- package/node_modules/es-toolkit/dist/compat/string/trimStart.js +21 -14
- package/node_modules/es-toolkit/dist/compat/string/trimStart.mjs +21 -10
- package/node_modules/es-toolkit/dist/compat/string/truncate.d.mts +11 -10
- package/node_modules/es-toolkit/dist/compat/string/truncate.d.ts +11 -10
- package/node_modules/es-toolkit/dist/compat/string/truncate.js +60 -47
- package/node_modules/es-toolkit/dist/compat/string/truncate.mjs +60 -43
- package/node_modules/es-toolkit/dist/compat/string/unescape.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/unescape.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/unescape.js +18 -9
- package/node_modules/es-toolkit/dist/compat/string/unescape.mjs +18 -5
- package/node_modules/es-toolkit/dist/compat/string/upperCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/upperCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/upperCase.js +20 -10
- package/node_modules/es-toolkit/dist/compat/string/upperCase.mjs +20 -6
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.js +16 -9
- package/node_modules/es-toolkit/dist/compat/string/upperFirst.mjs +16 -5
- package/node_modules/es-toolkit/dist/compat/string/words.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/string/words.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/string/words.js +41 -35
- package/node_modules/es-toolkit/dist/compat/string/words.mjs +41 -31
- package/node_modules/es-toolkit/dist/compat/toolkit.d.mts +6 -6
- package/node_modules/es-toolkit/dist/compat/toolkit.d.ts +6 -6
- package/node_modules/es-toolkit/dist/compat/toolkit.js +5 -9
- package/node_modules/es-toolkit/dist/compat/toolkit.mjs +5 -5
- package/node_modules/es-toolkit/dist/compat/util/bindAll.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/bindAll.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/bindAll.js +50 -44
- package/node_modules/es-toolkit/dist/compat/util/bindAll.mjs +50 -40
- package/node_modules/es-toolkit/dist/compat/util/cond.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/cond.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/cond.js +19 -27
- package/node_modules/es-toolkit/dist/compat/util/cond.mjs +19 -23
- package/node_modules/es-toolkit/dist/compat/util/constant.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/constant.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/constant.js +17 -6
- package/node_modules/es-toolkit/dist/compat/util/constant.mjs +17 -2
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.d.mts +9 -8
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.d.ts +9 -8
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.js +20 -9
- package/node_modules/es-toolkit/dist/compat/util/defaultTo.mjs +20 -5
- package/node_modules/es-toolkit/dist/compat/util/eq.d.mts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/eq.d.ts +17 -0
- package/node_modules/es-toolkit/dist/compat/util/eq.js +19 -0
- package/node_modules/es-toolkit/dist/compat/util/eq.mjs +19 -0
- package/node_modules/es-toolkit/dist/compat/util/gt.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/gt.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/gt.js +17 -11
- package/node_modules/es-toolkit/dist/compat/util/gt.mjs +17 -7
- package/node_modules/es-toolkit/dist/compat/util/gte.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/gte.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/gte.js +17 -11
- package/node_modules/es-toolkit/dist/compat/util/gte.mjs +17 -7
- package/node_modules/es-toolkit/dist/compat/util/invoke.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/invoke.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/invoke.js +44 -48
- package/node_modules/es-toolkit/dist/compat/util/invoke.mjs +44 -44
- package/node_modules/es-toolkit/dist/compat/util/iteratee.d.mts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/iteratee.d.ts +7 -6
- package/node_modules/es-toolkit/dist/compat/util/iteratee.js +44 -29
- package/node_modules/es-toolkit/dist/compat/util/iteratee.mjs +44 -25
- package/node_modules/es-toolkit/dist/compat/util/lt.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/lt.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/lt.js +17 -11
- package/node_modules/es-toolkit/dist/compat/util/lt.mjs +17 -7
- package/node_modules/es-toolkit/dist/compat/util/lte.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/lte.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/lte.js +17 -11
- package/node_modules/es-toolkit/dist/compat/util/lte.mjs +17 -7
- package/node_modules/es-toolkit/dist/compat/util/method.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/method.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/method.js +25 -10
- package/node_modules/es-toolkit/dist/compat/util/method.mjs +25 -6
- package/node_modules/es-toolkit/dist/compat/util/methodOf.d.mts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/methodOf.d.ts +6 -5
- package/node_modules/es-toolkit/dist/compat/util/methodOf.js +25 -10
- package/node_modules/es-toolkit/dist/compat/util/methodOf.mjs +25 -6
- package/node_modules/es-toolkit/dist/compat/util/now.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/now.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/now.js +18 -6
- package/node_modules/es-toolkit/dist/compat/util/now.mjs +18 -2
- package/node_modules/es-toolkit/dist/compat/util/over.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/over.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/over.js +34 -14
- package/node_modules/es-toolkit/dist/compat/util/over.mjs +34 -10
- package/node_modules/es-toolkit/dist/compat/util/overEvery.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/util/overEvery.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/util/overEvery.js +58 -24
- package/node_modules/es-toolkit/dist/compat/util/overEvery.mjs +58 -20
- package/node_modules/es-toolkit/dist/compat/util/overSome.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/util/overSome.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/util/overSome.js +60 -24
- package/node_modules/es-toolkit/dist/compat/util/overSome.mjs +60 -20
- package/node_modules/es-toolkit/dist/compat/util/stubArray.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/stubArray.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/stubArray.js +3 -6
- package/node_modules/es-toolkit/dist/compat/util/stubArray.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.js +3 -6
- package/node_modules/es-toolkit/dist/compat/util/stubFalse.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/util/stubObject.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/stubObject.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/stubObject.js +10 -6
- package/node_modules/es-toolkit/dist/compat/util/stubObject.mjs +10 -2
- package/node_modules/es-toolkit/dist/compat/util/stubString.d.mts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/stubString.d.ts +4 -3
- package/node_modules/es-toolkit/dist/compat/util/stubString.js +3 -6
- package/node_modules/es-toolkit/dist/compat/util/stubString.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.js +3 -6
- package/node_modules/es-toolkit/dist/compat/util/stubTrue.mjs +3 -2
- package/node_modules/es-toolkit/dist/compat/util/times.d.mts +8 -7
- package/node_modules/es-toolkit/dist/compat/util/times.d.ts +8 -7
- package/node_modules/es-toolkit/dist/compat/util/times.js +19 -16
- package/node_modules/es-toolkit/dist/compat/util/times.mjs +19 -12
- package/node_modules/es-toolkit/dist/compat/util/toArray.d.mts +13 -12
- package/node_modules/es-toolkit/dist/compat/util/toArray.d.ts +13 -12
- package/node_modules/es-toolkit/dist/compat/util/toArray.js +25 -18
- package/node_modules/es-toolkit/dist/compat/util/toArray.mjs +25 -14
- package/node_modules/es-toolkit/dist/compat/util/toFinite.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toFinite.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toFinite.js +21 -16
- package/node_modules/es-toolkit/dist/compat/util/toFinite.mjs +21 -12
- package/node_modules/es-toolkit/dist/compat/util/toInteger.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toInteger.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toInteger.js +23 -10
- package/node_modules/es-toolkit/dist/compat/util/toInteger.mjs +23 -6
- package/node_modules/es-toolkit/dist/compat/util/toLength.d.mts +7 -5
- package/node_modules/es-toolkit/dist/compat/util/toLength.d.ts +7 -5
- package/node_modules/es-toolkit/dist/compat/util/toLength.js +23 -13
- package/node_modules/es-toolkit/dist/compat/util/toLength.mjs +23 -9
- package/node_modules/es-toolkit/dist/compat/util/toNumber.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toNumber.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toNumber.js +21 -11
- package/node_modules/es-toolkit/dist/compat/util/toNumber.mjs +21 -7
- package/node_modules/es-toolkit/dist/compat/util/toPath.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toPath.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toPath.js +71 -79
- package/node_modules/es-toolkit/dist/compat/util/toPath.mjs +71 -75
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.js +30 -25
- package/node_modules/es-toolkit/dist/compat/util/toPlainObject.mjs +30 -21
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.js +24 -13
- package/node_modules/es-toolkit/dist/compat/util/toSafeInteger.mjs +24 -9
- package/node_modules/es-toolkit/dist/compat/util/toString.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toString.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/toString.js +29 -19
- package/node_modules/es-toolkit/dist/compat/util/toString.mjs +29 -15
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.d.mts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.d.ts +5 -4
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.js +27 -8
- package/node_modules/es-toolkit/dist/compat/util/uniqueId.mjs +27 -4
- package/node_modules/es-toolkit/dist/error/AbortError.d.mts +5 -4
- package/node_modules/es-toolkit/dist/error/AbortError.d.ts +5 -4
- package/node_modules/es-toolkit/dist/error/AbortError.js +12 -12
- package/node_modules/es-toolkit/dist/error/AbortError.mjs +12 -8
- package/node_modules/es-toolkit/dist/error/TimeoutError.d.mts +5 -4
- package/node_modules/es-toolkit/dist/error/TimeoutError.d.ts +5 -4
- package/node_modules/es-toolkit/dist/error/TimeoutError.js +12 -12
- package/node_modules/es-toolkit/dist/error/TimeoutError.mjs +12 -8
- package/node_modules/es-toolkit/dist/error/index.d.mts +3 -2
- package/node_modules/es-toolkit/dist/error/index.d.ts +3 -2
- package/node_modules/es-toolkit/dist/error/index.js +5 -11
- package/node_modules/es-toolkit/dist/error/index.mjs +3 -2
- package/node_modules/es-toolkit/dist/fp/_internal/lazy.js +58 -0
- package/node_modules/es-toolkit/dist/fp/_internal/lazy.mjs +57 -0
- package/node_modules/es-toolkit/dist/fp/array/at.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/at.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/at.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/at.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.d.mts +61 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.d.ts +61 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/cartesianProduct.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/chunk.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/chunkBy.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/combinations.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/compact.mjs +30 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/countBy.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.js +32 -0
- package/node_modules/es-toolkit/dist/fp/array/difference.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.js +33 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceBy.mjs +32 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.js +32 -0
- package/node_modules/es-toolkit/dist/fp/array/differenceWith.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/drop.mjs +30 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRight.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/dropRightWhile.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.js +36 -0
- package/node_modules/es-toolkit/dist/fp/array/dropWhile.mjs +36 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.d.mts +45 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.d.ts +45 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.js +13 -0
- package/node_modules/es-toolkit/dist/fp/array/filter.mjs +12 -0
- package/node_modules/es-toolkit/dist/fp/array/find.d.mts +39 -0
- package/node_modules/es-toolkit/dist/fp/array/find.d.ts +39 -0
- package/node_modules/es-toolkit/dist/fp/array/find.js +8 -0
- package/node_modules/es-toolkit/dist/fp/array/find.mjs +8 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/findIndex.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.d.mts +39 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.d.ts +39 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.js +11 -0
- package/node_modules/es-toolkit/dist/fp/array/findLast.mjs +11 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/findLastIndex.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.d.mts +28 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.d.ts +28 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.js +39 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMap.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.d.mts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.d.ts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.js +38 -0
- package/node_modules/es-toolkit/dist/fp/array/flatMapDeep.mjs +37 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.js +39 -0
- package/node_modules/es-toolkit/dist/fp/array/flatten.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.js +36 -0
- package/node_modules/es-toolkit/dist/fp/array/flattenDeep.mjs +35 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.js +33 -0
- package/node_modules/es-toolkit/dist/fp/array/forEach.mjs +32 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/groupBy.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/head.d.mts +35 -0
- package/node_modules/es-toolkit/dist/fp/array/head.d.ts +35 -0
- package/node_modules/es-toolkit/dist/fp/array/head.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/head.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/array/index.d.mts +69 -0
- package/node_modules/es-toolkit/dist/fp/array/index.d.ts +69 -0
- package/node_modules/es-toolkit/dist/fp/array/index.js +68 -0
- package/node_modules/es-toolkit/dist/fp/array/index.mjs +68 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/initial.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.js +32 -0
- package/node_modules/es-toolkit/dist/fp/array/intersection.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.js +33 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionBy.mjs +32 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.js +32 -0
- package/node_modules/es-toolkit/dist/fp/array/intersectionWith.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubset.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/isSubsetWith.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/join.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/join.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/join.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/join.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/keyBy.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/last.d.mts +35 -0
- package/node_modules/es-toolkit/dist/fp/array/last.d.ts +35 -0
- package/node_modules/es-toolkit/dist/fp/array/last.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/last.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/array/length.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/length.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/length.js +22 -0
- package/node_modules/es-toolkit/dist/fp/array/length.mjs +22 -0
- package/node_modules/es-toolkit/dist/fp/array/map.d.mts +27 -0
- package/node_modules/es-toolkit/dist/fp/array/map.d.ts +27 -0
- package/node_modules/es-toolkit/dist/fp/array/map.js +36 -0
- package/node_modules/es-toolkit/dist/fp/array/map.mjs +35 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.d.mts +37 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.d.ts +37 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/maxBy.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.d.mts +37 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.d.ts +37 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/minBy.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/orderBy.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.d.mts +39 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.d.ts +39 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/partition.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/reverse.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.js +23 -0
- package/node_modules/es-toolkit/dist/fp/array/sample.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/sampleSize.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/shuffle.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.d.mts +26 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.d.ts +26 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.js +31 -0
- package/node_modules/es-toolkit/dist/fp/array/sortBy.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.js +24 -0
- package/node_modules/es-toolkit/dist/fp/array/tail.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/array/take.d.mts +26 -0
- package/node_modules/es-toolkit/dist/fp/array/take.d.ts +26 -0
- package/node_modules/es-toolkit/dist/fp/array/take.js +39 -0
- package/node_modules/es-toolkit/dist/fp/array/take.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRight.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/takeRightWhile.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.js +32 -0
- package/node_modules/es-toolkit/dist/fp/array/takeWhile.mjs +31 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.d.mts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.d.ts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.js +30 -0
- package/node_modules/es-toolkit/dist/fp/array/toFilled.mjs +30 -0
- package/node_modules/es-toolkit/dist/fp/array/union.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/union.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/union.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/union.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.js +27 -0
- package/node_modules/es-toolkit/dist/fp/array/unionBy.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/unionWith.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.js +36 -0
- package/node_modules/es-toolkit/dist/fp/array/uniq.mjs +36 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.js +38 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqBy.mjs +38 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.js +35 -0
- package/node_modules/es-toolkit/dist/fp/array/uniqWith.mjs +35 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.d.mts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.d.ts +23 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.js +27 -0
- package/node_modules/es-toolkit/dist/fp/array/unzip.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/unzipWith.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.d.mts +25 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.d.ts +25 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.js +50 -0
- package/node_modules/es-toolkit/dist/fp/array/windowed.mjs +50 -0
- package/node_modules/es-toolkit/dist/fp/array/without.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/without.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/array/without.js +30 -0
- package/node_modules/es-toolkit/dist/fp/array/without.mjs +29 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.js +25 -0
- package/node_modules/es-toolkit/dist/fp/array/xor.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.js +27 -0
- package/node_modules/es-toolkit/dist/fp/array/xorBy.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/xorWith.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.d.mts +61 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.d.ts +61 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/zip.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.js +26 -0
- package/node_modules/es-toolkit/dist/fp/array/zipObject.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.d.mts +57 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.d.ts +57 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.js +9 -0
- package/node_modules/es-toolkit/dist/fp/array/zipWith.mjs +9 -0
- package/node_modules/es-toolkit/dist/fp/flow.d.mts +213 -0
- package/node_modules/es-toolkit/dist/fp/flow.d.ts +213 -0
- package/node_modules/es-toolkit/dist/fp/flow.js +50 -0
- package/node_modules/es-toolkit/dist/fp/flow.mjs +50 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.d.mts +213 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.d.ts +213 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.js +37 -0
- package/node_modules/es-toolkit/dist/fp/flowAsync.mjs +37 -0
- package/node_modules/es-toolkit/dist/fp/index.d.mts +77 -0
- package/node_modules/es-toolkit/dist/fp/index.d.ts +77 -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 +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/cartesianProduct.d.ts +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/cartesianProduct.js +28 -0
- package/node_modules/es-toolkit/dist/fp/iterator/cartesianProduct.mjs +28 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/chunk.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.js +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/count.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/drop.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.js +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/dropWhile.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/every.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.d.mts +37 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.d.ts +37 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.js +8 -0
- package/node_modules/es-toolkit/dist/fp/iterator/filter.mjs +8 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/find.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/flatMap.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.js +26 -0
- package/node_modules/es-toolkit/dist/fp/iterator/forEach.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/head.mjs +24 -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 +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/map.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/map.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/map.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.d.mts +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.d.ts +22 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.js +27 -0
- package/node_modules/es-toolkit/dist/fp/iterator/partition.mjs +27 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.d.mts +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.d.ts +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.js +28 -0
- package/node_modules/es-toolkit/dist/fp/iterator/reduce.mjs +28 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.js +26 -0
- package/node_modules/es-toolkit/dist/fp/iterator/scan.mjs +26 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/some.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.js +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/take.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.js +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/takeWhile.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.d.mts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.d.ts +21 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.js +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/toArray.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.js +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/uniqBy.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.d.mts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.d.ts +20 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.js +25 -0
- package/node_modules/es-toolkit/dist/fp/iterator/zip.mjs +25 -0
- package/node_modules/es-toolkit/dist/fp/math/add.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/math/add.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/math/add.js +21 -0
- package/node_modules/es-toolkit/dist/fp/math/add.mjs +21 -0
- package/node_modules/es-toolkit/dist/fp/math/index.d.mts +2 -0
- package/node_modules/es-toolkit/dist/fp/math/index.d.ts +2 -0
- package/node_modules/es-toolkit/dist/fp/math/index.js +2 -0
- package/node_modules/es-toolkit/dist/fp/math/index.mjs +2 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.d.mts +17 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.d.ts +17 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.js +21 -0
- package/node_modules/es-toolkit/dist/fp/math/multiply.mjs +21 -0
- package/node_modules/es-toolkit/dist/fp/object/index.d.mts +2 -0
- package/node_modules/es-toolkit/dist/fp/object/index.d.ts +2 -0
- package/node_modules/es-toolkit/dist/fp/object/index.js +2 -0
- package/node_modules/es-toolkit/dist/fp/object/index.mjs +2 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.d.mts +18 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.d.ts +18 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.js +23 -0
- package/node_modules/es-toolkit/dist/fp/object/omit.mjs +23 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.d.mts +19 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.d.ts +19 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.js +24 -0
- package/node_modules/es-toolkit/dist/fp/object/pick.mjs +24 -0
- package/node_modules/es-toolkit/dist/fp/pipe.d.mts +235 -0
- package/node_modules/es-toolkit/dist/fp/pipe.d.ts +235 -0
- package/node_modules/es-toolkit/dist/fp/pipe.js +112 -0
- package/node_modules/es-toolkit/dist/fp/pipe.mjs +112 -0
- package/node_modules/es-toolkit/dist/function/after.d.mts +6 -5
- package/node_modules/es-toolkit/dist/function/after.d.ts +6 -5
- package/node_modules/es-toolkit/dist/function/after.js +35 -15
- package/node_modules/es-toolkit/dist/function/after.mjs +35 -11
- package/node_modules/es-toolkit/dist/function/ary.d.mts +6 -5
- package/node_modules/es-toolkit/dist/function/ary.d.ts +6 -5
- package/node_modules/es-toolkit/dist/function/ary.js +23 -8
- package/node_modules/es-toolkit/dist/function/ary.mjs +23 -4
- package/node_modules/es-toolkit/dist/function/asyncNoop.d.mts +4 -3
- package/node_modules/es-toolkit/dist/function/asyncNoop.d.ts +4 -3
- package/node_modules/es-toolkit/dist/function/asyncNoop.js +12 -6
- package/node_modules/es-toolkit/dist/function/asyncNoop.mjs +12 -2
- package/node_modules/es-toolkit/dist/function/before.d.mts +6 -5
- package/node_modules/es-toolkit/dist/function/before.d.ts +6 -5
- package/node_modules/es-toolkit/dist/function/before.js +35 -15
- package/node_modules/es-toolkit/dist/function/before.mjs +35 -11
- package/node_modules/es-toolkit/dist/function/curry.d.mts +17 -16
- package/node_modules/es-toolkit/dist/function/curry.d.ts +17 -16
- package/node_modules/es-toolkit/dist/function/curry.js +36 -20
- package/node_modules/es-toolkit/dist/function/curry.mjs +36 -16
- package/node_modules/es-toolkit/dist/function/curryRight.d.mts +17 -16
- package/node_modules/es-toolkit/dist/function/curryRight.d.ts +17 -16
- package/node_modules/es-toolkit/dist/function/curryRight.js +38 -20
- package/node_modules/es-toolkit/dist/function/curryRight.mjs +38 -16
- package/node_modules/es-toolkit/dist/function/debounce.d.mts +42 -39
- package/node_modules/es-toolkit/dist/function/debounce.d.ts +42 -39
- package/node_modules/es-toolkit/dist/function/debounce.js +88 -63
- package/node_modules/es-toolkit/dist/function/debounce.mjs +88 -59
- package/node_modules/es-toolkit/dist/function/flow.d.mts +27 -26
- package/node_modules/es-toolkit/dist/function/flow.d.ts +27 -26
- package/node_modules/es-toolkit/dist/function/flow.js +22 -12
- package/node_modules/es-toolkit/dist/function/flow.mjs +22 -8
- package/node_modules/es-toolkit/dist/function/flowRight.d.mts +27 -26
- package/node_modules/es-toolkit/dist/function/flowRight.d.ts +27 -26
- package/node_modules/es-toolkit/dist/function/flowRight.js +21 -8
- package/node_modules/es-toolkit/dist/function/flowRight.mjs +21 -4
- package/node_modules/es-toolkit/dist/function/identity.d.mts +5 -4
- package/node_modules/es-toolkit/dist/function/identity.d.ts +5 -4
- package/node_modules/es-toolkit/dist/function/identity.js +22 -6
- package/node_modules/es-toolkit/dist/function/identity.mjs +22 -2
- package/node_modules/es-toolkit/dist/function/index.d.mts +22 -21
- package/node_modules/es-toolkit/dist/function/index.d.ts +22 -21
- package/node_modules/es-toolkit/dist/function/index.js +43 -49
- package/node_modules/es-toolkit/dist/function/index.mjs +22 -21
- package/node_modules/es-toolkit/dist/function/memoize.d.mts +49 -47
- package/node_modules/es-toolkit/dist/function/memoize.d.ts +49 -47
- package/node_modules/es-toolkit/dist/function/memoize.js +85 -17
- package/node_modules/es-toolkit/dist/function/memoize.mjs +85 -13
- package/node_modules/es-toolkit/dist/function/negate.d.mts +5 -4
- package/node_modules/es-toolkit/dist/function/negate.d.ts +5 -4
- package/node_modules/es-toolkit/dist/function/negate.js +16 -6
- package/node_modules/es-toolkit/dist/function/negate.mjs +16 -2
- package/node_modules/es-toolkit/dist/function/noop.d.mts +4 -3
- package/node_modules/es-toolkit/dist/function/noop.d.ts +4 -3
- package/node_modules/es-toolkit/dist/function/noop.js +12 -6
- package/node_modules/es-toolkit/dist/function/noop.mjs +12 -2
- package/node_modules/es-toolkit/dist/function/once.d.mts +5 -4
- package/node_modules/es-toolkit/dist/function/once.d.ts +5 -4
- package/node_modules/es-toolkit/dist/function/once.js +28 -14
- package/node_modules/es-toolkit/dist/function/once.mjs +28 -10
- package/node_modules/es-toolkit/dist/function/partial.d.mts +137 -135
- package/node_modules/es-toolkit/dist/function/partial.d.ts +137 -135
- package/node_modules/es-toolkit/dist/function/partial.js +38 -19
- package/node_modules/es-toolkit/dist/function/partial.mjs +38 -15
- package/node_modules/es-toolkit/dist/function/partialRight.d.mts +145 -143
- package/node_modules/es-toolkit/dist/function/partialRight.d.ts +145 -143
- package/node_modules/es-toolkit/dist/function/partialRight.js +40 -21
- package/node_modules/es-toolkit/dist/function/partialRight.mjs +40 -17
- package/node_modules/es-toolkit/dist/function/rest.d.mts +7 -6
- package/node_modules/es-toolkit/dist/function/rest.d.ts +7 -6
- package/node_modules/es-toolkit/dist/function/rest.js +38 -13
- package/node_modules/es-toolkit/dist/function/rest.mjs +38 -9
- package/node_modules/es-toolkit/dist/function/retry.d.mts +49 -45
- package/node_modules/es-toolkit/dist/function/retry.d.ts +49 -45
- package/node_modules/es-toolkit/dist/function/retry.js +41 -41
- package/node_modules/es-toolkit/dist/function/retry.mjs +38 -37
- package/node_modules/es-toolkit/dist/function/spread.d.mts +5 -4
- package/node_modules/es-toolkit/dist/function/spread.d.ts +5 -4
- package/node_modules/es-toolkit/dist/function/spread.js +21 -8
- package/node_modules/es-toolkit/dist/function/spread.mjs +21 -4
- package/node_modules/es-toolkit/dist/function/throttle.d.mts +25 -21
- package/node_modules/es-toolkit/dist/function/throttle.d.ts +25 -21
- package/node_modules/es-toolkit/dist/function/throttle.js +52 -29
- package/node_modules/es-toolkit/dist/function/throttle.mjs +52 -25
- package/node_modules/es-toolkit/dist/function/unary.d.mts +5 -4
- package/node_modules/es-toolkit/dist/function/unary.d.ts +5 -4
- package/node_modules/es-toolkit/dist/function/unary.js +18 -8
- package/node_modules/es-toolkit/dist/function/unary.mjs +18 -4
- package/node_modules/es-toolkit/dist/index.d.mts +197 -180
- package/node_modules/es-toolkit/dist/index.d.ts +197 -180
- package/node_modules/es-toolkit/dist/index.js +405 -370
- package/node_modules/es-toolkit/dist/index.mjs +206 -180
- package/node_modules/es-toolkit/dist/iterator/_internal/iterator.js +74 -0
- package/node_modules/es-toolkit/dist/iterator/_internal/iterator.mjs +74 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.d.mts +33 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.d.ts +33 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.js +95 -0
- package/node_modules/es-toolkit/dist/iterator/cartesianProduct.mjs +95 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.d.mts +21 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.d.ts +21 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.js +40 -0
- package/node_modules/es-toolkit/dist/iterator/chunk.mjs +40 -0
- package/node_modules/es-toolkit/dist/iterator/count.d.mts +18 -0
- package/node_modules/es-toolkit/dist/iterator/count.d.ts +18 -0
- package/node_modules/es-toolkit/dist/iterator/count.js +26 -0
- package/node_modules/es-toolkit/dist/iterator/count.mjs +26 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.d.mts +20 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.d.ts +20 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.js +52 -0
- package/node_modules/es-toolkit/dist/iterator/dropWhile.mjs +52 -0
- package/node_modules/es-toolkit/dist/iterator/head.d.mts +21 -0
- package/node_modules/es-toolkit/dist/iterator/head.d.ts +21 -0
- package/node_modules/es-toolkit/dist/iterator/head.js +26 -0
- package/node_modules/es-toolkit/dist/iterator/head.mjs +26 -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 +20 -0
- package/node_modules/es-toolkit/dist/iterator/iterate.d.ts +20 -0
- package/node_modules/es-toolkit/dist/iterator/iterate.js +32 -0
- package/node_modules/es-toolkit/dist/iterator/iterate.mjs +32 -0
- package/node_modules/es-toolkit/dist/iterator/partition.d.mts +18 -0
- package/node_modules/es-toolkit/dist/iterator/partition.d.ts +18 -0
- package/node_modules/es-toolkit/dist/iterator/partition.js +36 -0
- package/node_modules/es-toolkit/dist/iterator/partition.mjs +36 -0
- package/node_modules/es-toolkit/dist/iterator/range.d.mts +42 -0
- package/node_modules/es-toolkit/dist/iterator/range.d.ts +42 -0
- package/node_modules/es-toolkit/dist/iterator/range.js +25 -0
- package/node_modules/es-toolkit/dist/iterator/range.mjs +25 -0
- package/node_modules/es-toolkit/dist/iterator/scan.d.mts +23 -0
- package/node_modules/es-toolkit/dist/iterator/scan.d.ts +23 -0
- package/node_modules/es-toolkit/dist/iterator/scan.js +47 -0
- package/node_modules/es-toolkit/dist/iterator/scan.mjs +47 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.d.mts +20 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.d.ts +20 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.js +34 -0
- package/node_modules/es-toolkit/dist/iterator/takeWhile.mjs +34 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.d.mts +22 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.d.ts +22 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.js +43 -0
- package/node_modules/es-toolkit/dist/iterator/uniqBy.mjs +43 -0
- package/node_modules/es-toolkit/dist/iterator/zip.d.mts +23 -0
- package/node_modules/es-toolkit/dist/iterator/zip.d.ts +23 -0
- package/node_modules/es-toolkit/dist/iterator/zip.js +45 -0
- package/node_modules/es-toolkit/dist/iterator/zip.mjs +45 -0
- package/node_modules/es-toolkit/dist/map/countBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/countBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/countBy.js +40 -11
- package/node_modules/es-toolkit/dist/map/countBy.mjs +40 -7
- package/node_modules/es-toolkit/dist/map/every.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/every.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/every.js +29 -11
- package/node_modules/es-toolkit/dist/map/every.mjs +29 -7
- package/node_modules/es-toolkit/dist/map/filter.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/filter.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/filter.js +31 -12
- package/node_modules/es-toolkit/dist/map/filter.mjs +31 -8
- package/node_modules/es-toolkit/dist/map/findKey.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/findKey.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/findKey.js +30 -13
- package/node_modules/es-toolkit/dist/map/findKey.mjs +30 -9
- package/node_modules/es-toolkit/dist/map/findValue.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/findValue.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/findValue.js +30 -13
- package/node_modules/es-toolkit/dist/map/findValue.mjs +30 -9
- package/node_modules/es-toolkit/dist/map/forEach.d.mts +5 -5
- package/node_modules/es-toolkit/dist/map/forEach.d.ts +5 -5
- package/node_modules/es-toolkit/dist/map/forEach.js +28 -8
- package/node_modules/es-toolkit/dist/map/forEach.mjs +28 -4
- package/node_modules/es-toolkit/dist/map/hasValue.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/hasValue.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/hasValue.js +30 -13
- package/node_modules/es-toolkit/dist/map/hasValue.mjs +30 -9
- package/node_modules/es-toolkit/dist/map/index.d.mts +13 -12
- package/node_modules/es-toolkit/dist/map/index.d.ts +13 -12
- package/node_modules/es-toolkit/dist/map/index.js +25 -31
- package/node_modules/es-toolkit/dist/map/index.mjs +13 -12
- package/node_modules/es-toolkit/dist/map/keyBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/keyBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/keyBy.js +36 -11
- package/node_modules/es-toolkit/dist/map/keyBy.mjs +36 -7
- package/node_modules/es-toolkit/dist/map/mapKeys.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/mapKeys.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/mapKeys.js +35 -11
- package/node_modules/es-toolkit/dist/map/mapKeys.mjs +35 -7
- package/node_modules/es-toolkit/dist/map/mapValues.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/mapValues.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/mapValues.js +35 -11
- package/node_modules/es-toolkit/dist/map/mapValues.mjs +35 -7
- package/node_modules/es-toolkit/dist/map/reduce.d.mts +7 -6
- package/node_modules/es-toolkit/dist/map/reduce.d.ts +7 -6
- package/node_modules/es-toolkit/dist/map/reduce.js +39 -18
- package/node_modules/es-toolkit/dist/map/reduce.mjs +39 -14
- package/node_modules/es-toolkit/dist/map/some.d.mts +6 -5
- package/node_modules/es-toolkit/dist/map/some.d.ts +6 -5
- package/node_modules/es-toolkit/dist/map/some.js +29 -11
- package/node_modules/es-toolkit/dist/map/some.mjs +29 -7
- package/node_modules/es-toolkit/dist/math/clamp.d.mts +10 -9
- package/node_modules/es-toolkit/dist/math/clamp.d.ts +10 -9
- package/node_modules/es-toolkit/dist/math/clamp.js +21 -9
- package/node_modules/es-toolkit/dist/math/clamp.mjs +21 -5
- package/node_modules/es-toolkit/dist/math/inRange.d.mts +10 -9
- package/node_modules/es-toolkit/dist/math/inRange.d.ts +10 -9
- package/node_modules/es-toolkit/dist/math/inRange.js +22 -13
- package/node_modules/es-toolkit/dist/math/inRange.mjs +22 -9
- package/node_modules/es-toolkit/dist/math/index.d.mts +15 -13
- package/node_modules/es-toolkit/dist/math/index.d.ts +15 -13
- package/node_modules/es-toolkit/dist/math/index.js +29 -33
- package/node_modules/es-toolkit/dist/math/index.mjs +15 -13
- package/node_modules/es-toolkit/dist/math/mean.d.mts +5 -4
- package/node_modules/es-toolkit/dist/math/mean.d.ts +5 -4
- package/node_modules/es-toolkit/dist/math/mean.js +17 -8
- package/node_modules/es-toolkit/dist/math/mean.mjs +17 -4
- package/node_modules/es-toolkit/dist/math/meanBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/math/meanBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/math/meanBy.js +19 -8
- package/node_modules/es-toolkit/dist/math/meanBy.mjs +19 -4
- package/node_modules/es-toolkit/dist/math/median.d.mts +5 -4
- package/node_modules/es-toolkit/dist/math/median.d.ts +5 -4
- package/node_modules/es-toolkit/dist/math/median.js +29 -16
- package/node_modules/es-toolkit/dist/math/median.mjs +29 -12
- package/node_modules/es-toolkit/dist/math/medianBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/math/medianBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/math/medianBy.js +25 -9
- package/node_modules/es-toolkit/dist/math/medianBy.mjs +24 -5
- package/node_modules/es-toolkit/dist/math/percentile.d.mts +29 -0
- package/node_modules/es-toolkit/dist/math/percentile.d.ts +29 -0
- package/node_modules/es-toolkit/dist/math/percentile.js +39 -0
- package/node_modules/es-toolkit/dist/math/percentile.mjs +39 -0
- package/node_modules/es-toolkit/dist/math/random.d.mts +8 -7
- package/node_modules/es-toolkit/dist/math/random.d.ts +8 -7
- package/node_modules/es-toolkit/dist/math/random.js +21 -13
- package/node_modules/es-toolkit/dist/math/random.mjs +21 -9
- package/node_modules/es-toolkit/dist/math/randomInt.d.mts +8 -7
- package/node_modules/es-toolkit/dist/math/randomInt.d.ts +8 -7
- package/node_modules/es-toolkit/dist/math/randomInt.js +18 -8
- package/node_modules/es-toolkit/dist/math/randomInt.mjs +18 -4
- package/node_modules/es-toolkit/dist/math/range.d.mts +12 -11
- package/node_modules/es-toolkit/dist/math/range.d.ts +12 -11
- package/node_modules/es-toolkit/dist/math/range.js +28 -18
- package/node_modules/es-toolkit/dist/math/range.mjs +28 -14
- package/node_modules/es-toolkit/dist/math/rangeRight.d.mts +12 -11
- package/node_modules/es-toolkit/dist/math/rangeRight.d.ts +12 -11
- package/node_modules/es-toolkit/dist/math/rangeRight.js +28 -18
- package/node_modules/es-toolkit/dist/math/rangeRight.mjs +28 -14
- package/node_modules/es-toolkit/dist/math/round.d.mts +6 -5
- package/node_modules/es-toolkit/dist/math/round.d.ts +6 -5
- package/node_modules/es-toolkit/dist/math/round.js +22 -10
- package/node_modules/es-toolkit/dist/math/round.mjs +22 -6
- package/node_modules/es-toolkit/dist/math/sum.d.mts +5 -4
- package/node_modules/es-toolkit/dist/math/sum.d.ts +5 -4
- package/node_modules/es-toolkit/dist/math/sum.js +18 -10
- package/node_modules/es-toolkit/dist/math/sum.mjs +18 -6
- package/node_modules/es-toolkit/dist/math/sumBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/math/sumBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/math/sumBy.js +21 -10
- package/node_modules/es-toolkit/dist/math/sumBy.mjs +21 -6
- package/node_modules/es-toolkit/dist/object/clone.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/clone.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/clone.js +58 -54
- package/node_modules/es-toolkit/dist/object/clone.mjs +58 -50
- package/node_modules/es-toolkit/dist/object/cloneDeep.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/cloneDeep.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/cloneDeep.js +50 -8
- package/node_modules/es-toolkit/dist/object/cloneDeep.mjs +50 -4
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.d.mts +11 -6
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.d.ts +11 -6
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.js +175 -170
- package/node_modules/es-toolkit/dist/object/cloneDeepWith.mjs +175 -166
- package/node_modules/es-toolkit/dist/object/deepFreeze.d.mts +20 -0
- package/node_modules/es-toolkit/dist/object/deepFreeze.d.ts +20 -0
- package/node_modules/es-toolkit/dist/object/deepFreeze.js +29 -0
- package/node_modules/es-toolkit/dist/object/deepFreeze.mjs +29 -0
- package/node_modules/es-toolkit/dist/object/findKey.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/findKey.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/findKey.js +21 -7
- package/node_modules/es-toolkit/dist/object/findKey.mjs +21 -3
- package/node_modules/es-toolkit/dist/object/flattenObject.d.mts +29 -11
- package/node_modules/es-toolkit/dist/object/flattenObject.d.ts +29 -11
- package/node_modules/es-toolkit/dist/object/flattenObject.js +58 -27
- package/node_modules/es-toolkit/dist/object/flattenObject.mjs +58 -23
- package/node_modules/es-toolkit/dist/object/index.d.mts +25 -17
- package/node_modules/es-toolkit/dist/object/index.d.ts +25 -17
- package/node_modules/es-toolkit/dist/object/index.js +49 -41
- package/node_modules/es-toolkit/dist/object/index.mjs +25 -17
- package/node_modules/es-toolkit/dist/object/invert.d.mts +5 -4
- package/node_modules/es-toolkit/dist/object/invert.d.ts +5 -4
- package/node_modules/es-toolkit/dist/object/invert.js +28 -13
- package/node_modules/es-toolkit/dist/object/invert.mjs +28 -9
- package/node_modules/es-toolkit/dist/object/mapKeys.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/mapKeys.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/mapKeys.js +27 -13
- package/node_modules/es-toolkit/dist/object/mapKeys.mjs +27 -9
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.d.mts +25 -0
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.d.ts +25 -0
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.js +32 -0
- package/node_modules/es-toolkit/dist/object/mapKeysAsync.mjs +32 -0
- package/node_modules/es-toolkit/dist/object/mapValues.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/mapValues.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/mapValues.js +28 -13
- package/node_modules/es-toolkit/dist/object/mapValues.mjs +28 -9
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.d.mts +26 -0
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.d.ts +26 -0
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.js +32 -0
- package/node_modules/es-toolkit/dist/object/mapValuesAsync.mjs +32 -0
- package/node_modules/es-toolkit/dist/object/merge.d.mts +9 -6
- package/node_modules/es-toolkit/dist/object/merge.d.ts +9 -6
- package/node_modules/es-toolkit/dist/object/merge.js +17 -33
- package/node_modules/es-toolkit/dist/object/merge.mjs +17 -29
- package/node_modules/es-toolkit/dist/object/mergeWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/object/mergeWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/object/mergeWith.js +67 -41
- package/node_modules/es-toolkit/dist/object/mergeWith.mjs +67 -37
- package/node_modules/es-toolkit/dist/object/omit.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/omit.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/omit.js +25 -11
- package/node_modules/es-toolkit/dist/object/omit.mjs +25 -7
- package/node_modules/es-toolkit/dist/object/omitBy.d.mts +10 -7
- package/node_modules/es-toolkit/dist/object/omitBy.d.ts +10 -7
- package/node_modules/es-toolkit/dist/object/omitBy.js +30 -15
- package/node_modules/es-toolkit/dist/object/omitBy.mjs +30 -11
- package/node_modules/es-toolkit/dist/object/pick.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/pick.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/pick.js +25 -13
- package/node_modules/es-toolkit/dist/object/pick.mjs +25 -9
- package/node_modules/es-toolkit/dist/object/pickBy.d.mts +10 -7
- package/node_modules/es-toolkit/dist/object/pickBy.d.ts +10 -7
- package/node_modules/es-toolkit/dist/object/pickBy.js +30 -15
- package/node_modules/es-toolkit/dist/object/pickBy.mjs +30 -11
- package/node_modules/es-toolkit/dist/object/sortKeys.d.mts +22 -0
- package/node_modules/es-toolkit/dist/object/sortKeys.d.ts +22 -0
- package/node_modules/es-toolkit/dist/object/sortKeys.js +30 -0
- package/node_modules/es-toolkit/dist/object/sortKeys.mjs +30 -0
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.d.mts +7 -12
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.d.ts +7 -12
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.js +63 -24
- package/node_modules/es-toolkit/dist/object/toCamelCaseKeys.mjs +63 -20
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.d.mts +52 -0
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.d.ts +52 -0
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.js +66 -0
- package/node_modules/es-toolkit/dist/object/toConstantCaseKeys.mjs +66 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.d.mts +52 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.d.ts +52 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.js +66 -0
- package/node_modules/es-toolkit/dist/object/toKebabCaseKeys.mjs +66 -0
- package/node_modules/es-toolkit/dist/object/toMerged.d.mts +6 -5
- package/node_modules/es-toolkit/dist/object/toMerged.d.ts +6 -5
- package/node_modules/es-toolkit/dist/object/toMerged.js +54 -27
- package/node_modules/es-toolkit/dist/object/toMerged.mjs +54 -23
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.d.mts +52 -0
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.d.ts +52 -0
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.js +66 -0
- package/node_modules/es-toolkit/dist/object/toPascalCaseKeys.mjs +66 -0
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.d.mts +7 -9
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.d.ts +7 -9
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.js +63 -24
- package/node_modules/es-toolkit/dist/object/toSnakeCaseKeys.mjs +63 -20
- package/node_modules/es-toolkit/dist/predicate/index.d.mts +34 -32
- package/node_modules/es-toolkit/dist/predicate/index.d.ts +34 -32
- package/node_modules/es-toolkit/dist/predicate/index.js +69 -73
- package/node_modules/es-toolkit/dist/predicate/index.mjs +34 -32
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.js +20 -6
- package/node_modules/es-toolkit/dist/predicate/isArrayBuffer.mjs +20 -2
- package/node_modules/es-toolkit/dist/predicate/isBlob.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isBlob.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isBlob.js +20 -9
- package/node_modules/es-toolkit/dist/predicate/isBlob.mjs +20 -5
- package/node_modules/es-toolkit/dist/predicate/isBoolean.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isBoolean.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isBoolean.js +25 -6
- package/node_modules/es-toolkit/dist/predicate/isBoolean.mjs +25 -2
- package/node_modules/es-toolkit/dist/predicate/isBrowser.d.mts +4 -3
- package/node_modules/es-toolkit/dist/predicate/isBrowser.d.ts +4 -3
- package/node_modules/es-toolkit/dist/predicate/isBrowser.js +17 -6
- package/node_modules/es-toolkit/dist/predicate/isBrowser.mjs +17 -2
- package/node_modules/es-toolkit/dist/predicate/isBuffer.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isBuffer.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isBuffer.js +22 -8
- package/node_modules/es-toolkit/dist/predicate/isBuffer.mjs +22 -4
- package/node_modules/es-toolkit/dist/predicate/isDate.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isDate.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isDate.js +16 -6
- package/node_modules/es-toolkit/dist/predicate/isDate.mjs +16 -2
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.js +16 -8
- package/node_modules/es-toolkit/dist/predicate/isEmptyObject.mjs +16 -4
- package/node_modules/es-toolkit/dist/predicate/isEqual.d.mts +6 -5
- package/node_modules/es-toolkit/dist/predicate/isEqual.d.ts +6 -5
- package/node_modules/es-toolkit/dist/predicate/isEqual.js +19 -9
- package/node_modules/es-toolkit/dist/predicate/isEqual.mjs +19 -5
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.d.mts +7 -6
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.d.ts +7 -6
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.js +145 -183
- package/node_modules/es-toolkit/dist/predicate/isEqualWith.mjs +141 -179
- package/node_modules/es-toolkit/dist/predicate/isError.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isError.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isError.js +16 -6
- package/node_modules/es-toolkit/dist/predicate/isError.mjs +16 -2
- package/node_modules/es-toolkit/dist/predicate/isFile.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isFile.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isFile.js +23 -11
- package/node_modules/es-toolkit/dist/predicate/isFile.mjs +23 -7
- package/node_modules/es-toolkit/dist/predicate/isFunction.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isFunction.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isFunction.js +16 -6
- package/node_modules/es-toolkit/dist/predicate/isFunction.mjs +16 -2
- package/node_modules/es-toolkit/dist/predicate/isIterable.d.mts +26 -0
- package/node_modules/es-toolkit/dist/predicate/isIterable.d.ts +26 -0
- package/node_modules/es-toolkit/dist/predicate/isIterable.js +28 -0
- package/node_modules/es-toolkit/dist/predicate/isIterable.mjs +28 -0
- package/node_modules/es-toolkit/dist/predicate/isJSON.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isJSON.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isJSON.js +37 -15
- package/node_modules/es-toolkit/dist/predicate/isJSON.mjs +37 -11
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.d.mts +9 -8
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.d.ts +9 -8
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.js +76 -39
- package/node_modules/es-toolkit/dist/predicate/isJSONValue.mjs +76 -35
- package/node_modules/es-toolkit/dist/predicate/isLength.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isLength.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isLength.js +24 -6
- package/node_modules/es-toolkit/dist/predicate/isLength.mjs +24 -2
- package/node_modules/es-toolkit/dist/predicate/isMap.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isMap.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isMap.js +20 -6
- package/node_modules/es-toolkit/dist/predicate/isMap.mjs +20 -2
- package/node_modules/es-toolkit/dist/predicate/isNil.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isNil.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isNil.js +22 -6
- package/node_modules/es-toolkit/dist/predicate/isNil.mjs +22 -2
- package/node_modules/es-toolkit/dist/predicate/isNode.d.mts +4 -3
- package/node_modules/es-toolkit/dist/predicate/isNode.d.ts +4 -3
- package/node_modules/es-toolkit/dist/predicate/isNode.js +17 -6
- package/node_modules/es-toolkit/dist/predicate/isNode.mjs +17 -2
- package/node_modules/es-toolkit/dist/predicate/isNotNil.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isNotNil.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isNotNil.js +19 -6
- package/node_modules/es-toolkit/dist/predicate/isNotNil.mjs +19 -2
- package/node_modules/es-toolkit/dist/predicate/isNull.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isNull.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isNull.js +23 -6
- package/node_modules/es-toolkit/dist/predicate/isNull.mjs +23 -2
- package/node_modules/es-toolkit/dist/predicate/isNumber.d.mts +7 -4
- package/node_modules/es-toolkit/dist/predicate/isNumber.d.ts +7 -4
- package/node_modules/es-toolkit/dist/predicate/isNumber.js +27 -6
- package/node_modules/es-toolkit/dist/predicate/isNumber.mjs +27 -2
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.js +48 -16
- package/node_modules/es-toolkit/dist/predicate/isPlainObject.mjs +48 -12
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.d.mts +5 -11
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.d.ts +5 -11
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.js +24 -6
- package/node_modules/es-toolkit/dist/predicate/isPrimitive.mjs +24 -2
- package/node_modules/es-toolkit/dist/predicate/isPromise.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isPromise.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isPromise.js +20 -6
- package/node_modules/es-toolkit/dist/predicate/isPromise.mjs +20 -2
- package/node_modules/es-toolkit/dist/predicate/isRegExp.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isRegExp.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isRegExp.js +16 -6
- package/node_modules/es-toolkit/dist/predicate/isRegExp.mjs +16 -2
- package/node_modules/es-toolkit/dist/predicate/isSet.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isSet.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isSet.js +20 -6
- package/node_modules/es-toolkit/dist/predicate/isSet.mjs +20 -2
- package/node_modules/es-toolkit/dist/predicate/isString.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isString.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isString.js +20 -6
- package/node_modules/es-toolkit/dist/predicate/isString.mjs +20 -2
- package/node_modules/es-toolkit/dist/predicate/isSymbol.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isSymbol.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isSymbol.js +26 -6
- package/node_modules/es-toolkit/dist/predicate/isSymbol.mjs +26 -2
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.d.mts +5 -15
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.d.ts +5 -15
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.js +18 -6
- package/node_modules/es-toolkit/dist/predicate/isTypedArray.mjs +18 -2
- package/node_modules/es-toolkit/dist/predicate/isUndefined.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isUndefined.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isUndefined.js +23 -6
- package/node_modules/es-toolkit/dist/predicate/isUndefined.mjs +23 -2
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.js +23 -6
- package/node_modules/es-toolkit/dist/predicate/isWeakMap.mjs +23 -2
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.d.mts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.d.ts +5 -4
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.js +23 -6
- package/node_modules/es-toolkit/dist/predicate/isWeakSet.mjs +23 -2
- package/node_modules/es-toolkit/dist/promise/allKeyed.d.mts +31 -0
- package/node_modules/es-toolkit/dist/promise/allKeyed.d.ts +31 -0
- package/node_modules/es-toolkit/dist/promise/allKeyed.js +37 -0
- package/node_modules/es-toolkit/dist/promise/allKeyed.mjs +37 -0
- package/node_modules/es-toolkit/dist/promise/delay.d.mts +11 -8
- package/node_modules/es-toolkit/dist/promise/delay.d.ts +11 -8
- package/node_modules/es-toolkit/dist/promise/delay.js +50 -24
- package/node_modules/es-toolkit/dist/promise/delay.mjs +50 -20
- package/node_modules/es-toolkit/dist/promise/index.d.mts +8 -5
- package/node_modules/es-toolkit/dist/promise/index.d.ts +8 -5
- package/node_modules/es-toolkit/dist/promise/index.js +15 -17
- package/node_modules/es-toolkit/dist/promise/index.mjs +8 -5
- package/node_modules/es-toolkit/dist/promise/limitAsync.d.mts +35 -0
- package/node_modules/es-toolkit/dist/promise/limitAsync.d.ts +35 -0
- package/node_modules/es-toolkit/dist/promise/limitAsync.js +46 -0
- package/node_modules/es-toolkit/dist/promise/limitAsync.mjs +46 -0
- package/node_modules/es-toolkit/dist/promise/mutex.d.mts +44 -43
- package/node_modules/es-toolkit/dist/promise/mutex.d.ts +44 -43
- package/node_modules/es-toolkit/dist/promise/mutex.js +71 -19
- package/node_modules/es-toolkit/dist/promise/mutex.mjs +71 -15
- package/node_modules/es-toolkit/dist/promise/semaphore.d.mts +55 -54
- package/node_modules/es-toolkit/dist/promise/semaphore.d.ts +55 -54
- package/node_modules/es-toolkit/dist/promise/semaphore.js +99 -33
- package/node_modules/es-toolkit/dist/promise/semaphore.mjs +99 -29
- package/node_modules/es-toolkit/dist/promise/timeout.d.mts +29 -5
- package/node_modules/es-toolkit/dist/promise/timeout.d.ts +29 -5
- package/node_modules/es-toolkit/dist/promise/timeout.js +47 -11
- package/node_modules/es-toolkit/dist/promise/timeout.mjs +47 -7
- package/node_modules/es-toolkit/dist/promise/withTimeout.d.mts +25 -6
- package/node_modules/es-toolkit/dist/promise/withTimeout.d.ts +25 -6
- package/node_modules/es-toolkit/dist/promise/withTimeout.js +43 -9
- package/node_modules/es-toolkit/dist/promise/withTimeout.mjs +43 -5
- package/node_modules/es-toolkit/dist/server/colors/_internal/parseHex.js +32 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/parseHex.mjs +32 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsi.js +21 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsi.mjs +21 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsiBg.js +30 -0
- package/node_modules/es-toolkit/dist/server/colors/_internal/wrapAnsiBg.mjs +30 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.d.mts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.d.ts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.js +19 -0
- package/node_modules/es-toolkit/dist/server/colors/ansi256.mjs +19 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.d.mts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.d.ts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.js +19 -0
- package/node_modules/es-toolkit/dist/server/colors/bgAnsi256.mjs +19 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlack.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlackBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlue.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgBlueBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyan.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgCyanBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreen.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgGreenBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.d.mts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.d.ts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.js +21 -0
- package/node_modules/es-toolkit/dist/server/colors/bgHex.mjs +21 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagenta.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgMagentaBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRed.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRedBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.d.mts +20 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.d.ts +20 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.js +21 -0
- package/node_modules/es-toolkit/dist/server/colors/bgRgb.mjs +21 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhite.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgWhiteBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellow.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bgYellowBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/black.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/black.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/black.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/black.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/blackBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/blue.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/blueBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/bold.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/cyan.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/cyanBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/dim.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/gray.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/gray.mjs +19 -0
- package/node_modules/es-toolkit/dist/server/colors/green.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/green.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/green.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/green.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/greenBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.d.mts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.d.ts +18 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.js +21 -0
- package/node_modules/es-toolkit/dist/server/colors/hex.mjs +21 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/hidden.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/index.d.mts +99 -0
- package/node_modules/es-toolkit/dist/server/colors/index.d.ts +99 -0
- package/node_modules/es-toolkit/dist/server/colors/index.js +99 -0
- package/node_modules/es-toolkit/dist/server/colors/index.mjs +99 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/inverse.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/italic.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/magenta.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/magentaBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/red.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/red.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/red.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/red.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/redBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/reset.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.d.mts +20 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.d.ts +20 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.js +21 -0
- package/node_modules/es-toolkit/dist/server/colors/rgb.mjs +21 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/strikethrough.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/types.d.mts +4 -0
- package/node_modules/es-toolkit/dist/server/colors/types.d.ts +4 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/underline.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/white.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/white.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/white.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/white.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/whiteBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/yellow.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.d.mts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.d.ts +15 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.js +18 -0
- package/node_modules/es-toolkit/dist/server/colors/yellowBright.mjs +18 -0
- package/node_modules/es-toolkit/dist/server/exec.d.mts +63 -0
- package/node_modules/es-toolkit/dist/server/exec.d.ts +63 -0
- package/node_modules/es-toolkit/dist/server/exec.js +103 -0
- package/node_modules/es-toolkit/dist/server/exec.mjs +102 -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 +6 -5
- package/node_modules/es-toolkit/dist/set/countBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/set/countBy.js +31 -11
- package/node_modules/es-toolkit/dist/set/countBy.mjs +31 -7
- package/node_modules/es-toolkit/dist/set/every.d.mts +6 -5
- package/node_modules/es-toolkit/dist/set/every.d.ts +6 -5
- package/node_modules/es-toolkit/dist/set/every.js +24 -11
- package/node_modules/es-toolkit/dist/set/every.mjs +24 -7
- package/node_modules/es-toolkit/dist/set/filter.d.mts +6 -5
- package/node_modules/es-toolkit/dist/set/filter.d.ts +6 -5
- package/node_modules/es-toolkit/dist/set/filter.js +22 -12
- package/node_modules/es-toolkit/dist/set/filter.mjs +22 -8
- package/node_modules/es-toolkit/dist/set/find.d.mts +6 -5
- package/node_modules/es-toolkit/dist/set/find.d.ts +6 -5
- package/node_modules/es-toolkit/dist/set/find.js +24 -11
- package/node_modules/es-toolkit/dist/set/find.mjs +24 -7
- package/node_modules/es-toolkit/dist/set/forEach.d.mts +5 -5
- package/node_modules/es-toolkit/dist/set/forEach.d.ts +5 -5
- package/node_modules/es-toolkit/dist/set/forEach.js +24 -8
- package/node_modules/es-toolkit/dist/set/forEach.mjs +24 -4
- package/node_modules/es-toolkit/dist/set/index.d.mts +10 -9
- package/node_modules/es-toolkit/dist/set/index.d.ts +10 -9
- package/node_modules/es-toolkit/dist/set/index.js +19 -25
- package/node_modules/es-toolkit/dist/set/index.mjs +10 -9
- package/node_modules/es-toolkit/dist/set/keyBy.d.mts +6 -5
- package/node_modules/es-toolkit/dist/set/keyBy.d.ts +6 -5
- package/node_modules/es-toolkit/dist/set/keyBy.js +35 -11
- package/node_modules/es-toolkit/dist/set/keyBy.mjs +35 -7
- package/node_modules/es-toolkit/dist/set/map.d.mts +6 -5
- package/node_modules/es-toolkit/dist/set/map.d.ts +6 -5
- package/node_modules/es-toolkit/dist/set/map.js +26 -11
- package/node_modules/es-toolkit/dist/set/map.mjs +26 -7
- package/node_modules/es-toolkit/dist/set/reduce.d.mts +7 -6
- package/node_modules/es-toolkit/dist/set/reduce.d.ts +7 -6
- package/node_modules/es-toolkit/dist/set/reduce.js +32 -18
- package/node_modules/es-toolkit/dist/set/reduce.mjs +32 -14
- package/node_modules/es-toolkit/dist/set/some.d.mts +6 -5
- package/node_modules/es-toolkit/dist/set/some.d.ts +6 -5
- package/node_modules/es-toolkit/dist/set/some.js +24 -11
- package/node_modules/es-toolkit/dist/set/some.mjs +24 -7
- package/node_modules/es-toolkit/dist/string/camelCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/camelCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/camelCase.js +24 -14
- package/node_modules/es-toolkit/dist/string/camelCase.mjs +24 -10
- package/node_modules/es-toolkit/dist/string/capitalize.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/capitalize.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/capitalize.js +14 -6
- package/node_modules/es-toolkit/dist/string/capitalize.mjs +14 -2
- package/node_modules/es-toolkit/dist/string/constantCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/constantCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/constantCase.js +18 -9
- package/node_modules/es-toolkit/dist/string/constantCase.mjs +18 -5
- package/node_modules/es-toolkit/dist/string/deburr.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/deburr.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/deburr.js +58 -44
- package/node_modules/es-toolkit/dist/string/deburr.mjs +58 -40
- package/node_modules/es-toolkit/dist/string/dedent.d.mts +37 -0
- package/node_modules/es-toolkit/dist/string/dedent.d.ts +37 -0
- package/node_modules/es-toolkit/dist/string/dedent.js +38 -0
- package/node_modules/es-toolkit/dist/string/dedent.mjs +38 -0
- package/node_modules/es-toolkit/dist/string/escape.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/escape.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/escape.js +21 -11
- package/node_modules/es-toolkit/dist/string/escape.mjs +21 -7
- package/node_modules/es-toolkit/dist/string/escapeRegExp.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/escapeRegExp.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/escapeRegExp.js +14 -6
- package/node_modules/es-toolkit/dist/string/escapeRegExp.mjs +14 -2
- package/node_modules/es-toolkit/dist/string/index.d.mts +23 -21
- package/node_modules/es-toolkit/dist/string/index.d.ts +23 -21
- package/node_modules/es-toolkit/dist/string/index.js +45 -49
- package/node_modules/es-toolkit/dist/string/index.mjs +23 -21
- package/node_modules/es-toolkit/dist/string/kebabCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/kebabCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/kebabCase.js +18 -9
- package/node_modules/es-toolkit/dist/string/kebabCase.mjs +18 -5
- package/node_modules/es-toolkit/dist/string/lowerCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/lowerCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/lowerCase.js +18 -9
- package/node_modules/es-toolkit/dist/string/lowerCase.mjs +18 -5
- package/node_modules/es-toolkit/dist/string/lowerFirst.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/lowerFirst.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/lowerFirst.js +14 -6
- package/node_modules/es-toolkit/dist/string/lowerFirst.mjs +14 -2
- package/node_modules/es-toolkit/dist/string/pad.d.mts +7 -6
- package/node_modules/es-toolkit/dist/string/pad.d.ts +7 -6
- package/node_modules/es-toolkit/dist/string/pad.js +20 -7
- package/node_modules/es-toolkit/dist/string/pad.mjs +20 -3
- package/node_modules/es-toolkit/dist/string/pascalCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/pascalCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/pascalCase.js +19 -10
- package/node_modules/es-toolkit/dist/string/pascalCase.mjs +19 -6
- package/node_modules/es-toolkit/dist/string/reverseString.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/reverseString.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/reverseString.js +16 -6
- package/node_modules/es-toolkit/dist/string/reverseString.mjs +16 -2
- package/node_modules/es-toolkit/dist/string/snakeCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/snakeCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/snakeCase.js +18 -9
- package/node_modules/es-toolkit/dist/string/snakeCase.mjs +18 -5
- package/node_modules/es-toolkit/dist/string/startCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/startCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/startCase.js +24 -17
- package/node_modules/es-toolkit/dist/string/startCase.mjs +24 -13
- package/node_modules/es-toolkit/dist/string/trim.d.mts +6 -5
- package/node_modules/es-toolkit/dist/string/trim.d.ts +6 -5
- package/node_modules/es-toolkit/dist/string/trim.js +18 -12
- package/node_modules/es-toolkit/dist/string/trim.mjs +18 -8
- package/node_modules/es-toolkit/dist/string/trimEnd.d.mts +6 -5
- package/node_modules/es-toolkit/dist/string/trimEnd.d.ts +6 -5
- package/node_modules/es-toolkit/dist/string/trimEnd.js +28 -26
- package/node_modules/es-toolkit/dist/string/trimEnd.mjs +28 -22
- package/node_modules/es-toolkit/dist/string/trimStart.d.mts +6 -5
- package/node_modules/es-toolkit/dist/string/trimStart.d.ts +6 -5
- package/node_modules/es-toolkit/dist/string/trimStart.js +28 -23
- package/node_modules/es-toolkit/dist/string/trimStart.mjs +28 -19
- package/node_modules/es-toolkit/dist/string/unescape.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/unescape.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/unescape.js +21 -11
- package/node_modules/es-toolkit/dist/string/unescape.mjs +21 -7
- package/node_modules/es-toolkit/dist/string/upperCase.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/upperCase.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/upperCase.js +24 -16
- package/node_modules/es-toolkit/dist/string/upperCase.mjs +24 -12
- package/node_modules/es-toolkit/dist/string/upperFirst.d.mts +5 -4
- package/node_modules/es-toolkit/dist/string/upperFirst.d.ts +5 -4
- package/node_modules/es-toolkit/dist/string/upperFirst.js +14 -6
- package/node_modules/es-toolkit/dist/string/upperFirst.mjs +14 -2
- package/node_modules/es-toolkit/dist/string/words.d.mts +24 -5
- package/node_modules/es-toolkit/dist/string/words.d.ts +24 -5
- package/node_modules/es-toolkit/dist/string/words.js +37 -7
- package/node_modules/es-toolkit/dist/string/words.mjs +38 -3
- package/node_modules/es-toolkit/dist/types/DeepPartial.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/DeepPartial.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/DeepReadonly.d.mts +22 -0
- package/node_modules/es-toolkit/dist/types/DeepReadonly.d.ts +22 -0
- package/node_modules/es-toolkit/dist/types/EmptyObject.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/EmptyObject.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/IsEqual.d.mts +18 -0
- package/node_modules/es-toolkit/dist/types/IsEqual.d.ts +18 -0
- package/node_modules/es-toolkit/dist/types/JSONValue.d.mts +24 -0
- package/node_modules/es-toolkit/dist/types/JSONValue.d.ts +24 -0
- package/node_modules/es-toolkit/dist/types/Merge.d.mts +37 -0
- package/node_modules/es-toolkit/dist/types/Merge.d.ts +37 -0
- package/node_modules/es-toolkit/dist/types/NonEmptyArray.d.mts +14 -0
- package/node_modules/es-toolkit/dist/types/NonEmptyArray.d.ts +14 -0
- package/node_modules/es-toolkit/dist/types/ObjectKeys.d.mts +19 -0
- package/node_modules/es-toolkit/dist/types/ObjectKeys.d.ts +19 -0
- package/node_modules/es-toolkit/dist/types/Primitive.d.mts +14 -0
- package/node_modules/es-toolkit/dist/types/Primitive.d.ts +14 -0
- package/node_modules/es-toolkit/dist/types/SetOptional.d.mts +20 -0
- package/node_modules/es-toolkit/dist/types/SetOptional.d.ts +20 -0
- package/node_modules/es-toolkit/dist/types/SetRequired.d.mts +20 -0
- package/node_modules/es-toolkit/dist/types/SetRequired.d.ts +20 -0
- package/node_modules/es-toolkit/dist/types/Simplify.d.mts +18 -0
- package/node_modules/es-toolkit/dist/types/Simplify.d.ts +18 -0
- package/node_modules/es-toolkit/dist/types/ToCamelCaseKeys.d.mts +24 -0
- package/node_modules/es-toolkit/dist/types/ToCamelCaseKeys.d.ts +24 -0
- package/node_modules/es-toolkit/dist/types/ToConstantCaseKeys.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/ToConstantCaseKeys.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/ToKebabCaseKeys.d.mts +23 -0
- package/node_modules/es-toolkit/dist/types/ToKebabCaseKeys.d.ts +23 -0
- package/node_modules/es-toolkit/dist/types/ToPascalCaseKeys.d.mts +24 -0
- package/node_modules/es-toolkit/dist/types/ToPascalCaseKeys.d.ts +24 -0
- package/node_modules/es-toolkit/dist/types/ToSnakeCaseKeys.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/ToSnakeCaseKeys.d.ts +21 -0
- package/node_modules/es-toolkit/dist/types/UnknownRecord.d.mts +24 -0
- package/node_modules/es-toolkit/dist/types/UnknownRecord.d.ts +24 -0
- package/node_modules/es-toolkit/dist/types/ValueOf.d.mts +14 -0
- package/node_modules/es-toolkit/dist/types/ValueOf.d.ts +14 -0
- package/node_modules/es-toolkit/dist/types/Writable.d.mts +15 -0
- package/node_modules/es-toolkit/dist/types/Writable.d.ts +15 -0
- package/node_modules/es-toolkit/dist/types/index.d.mts +21 -0
- package/node_modules/es-toolkit/dist/types/index.d.ts +21 -0
- package/node_modules/es-toolkit/dist/util/attempt.d.mts +6 -5
- package/node_modules/es-toolkit/dist/util/attempt.d.ts +6 -5
- package/node_modules/es-toolkit/dist/util/attempt.js +46 -11
- package/node_modules/es-toolkit/dist/util/attempt.mjs +46 -7
- package/node_modules/es-toolkit/dist/util/attemptAsync.d.mts +6 -5
- package/node_modules/es-toolkit/dist/util/attemptAsync.d.ts +6 -5
- package/node_modules/es-toolkit/dist/util/attemptAsync.js +39 -12
- package/node_modules/es-toolkit/dist/util/attemptAsync.mjs +39 -8
- package/node_modules/es-toolkit/dist/util/defer.d.mts +27 -0
- package/node_modules/es-toolkit/dist/util/defer.d.ts +27 -0
- package/node_modules/es-toolkit/dist/util/defer.js +31 -0
- package/node_modules/es-toolkit/dist/util/defer.mjs +31 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.d.mts +30 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.d.ts +30 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.js +34 -0
- package/node_modules/es-toolkit/dist/util/deferAsync.mjs +34 -0
- package/node_modules/es-toolkit/dist/util/index.d.mts +6 -3
- package/node_modules/es-toolkit/dist/util/index.d.ts +6 -3
- package/node_modules/es-toolkit/dist/util/index.js +12 -14
- package/node_modules/es-toolkit/dist/util/index.mjs +6 -3
- package/node_modules/es-toolkit/dist/util/invariant.d.mts +9 -8
- package/node_modules/es-toolkit/dist/util/invariant.d.ts +9 -8
- package/node_modules/es-toolkit/dist/util/invariant.js +29 -12
- package/node_modules/es-toolkit/dist/util/invariant.mjs +29 -8
- 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/iterator.d.ts +1 -0
- package/node_modules/es-toolkit/iterator.js +1 -0
- package/node_modules/es-toolkit/package.json +156 -20
- package/node_modules/es-toolkit/server.d.ts +1 -0
- package/node_modules/es-toolkit/server.js +1 -0
- package/node_modules/es-toolkit/types.d.ts +1 -0
- package/node_modules/graphql/error/GraphQLError.d.ts +151 -15
- package/node_modules/graphql/error/GraphQLError.js +143 -12
- package/node_modules/graphql/error/GraphQLError.mjs +143 -12
- package/node_modules/graphql/error/index.d.ts +6 -0
- package/node_modules/graphql/error/index.mjs +6 -0
- package/node_modules/graphql/error/locatedError.d.ts +20 -0
- package/node_modules/graphql/error/locatedError.js +21 -0
- package/node_modules/graphql/error/locatedError.mjs +20 -0
- package/node_modules/graphql/error/syntaxError.d.ts +15 -0
- package/node_modules/graphql/error/syntaxError.js +16 -0
- package/node_modules/graphql/error/syntaxError.mjs +15 -0
- package/node_modules/graphql/execution/collectFields.js +6 -0
- package/node_modules/graphql/execution/collectFields.mjs +6 -0
- package/node_modules/graphql/execution/execute.d.ts +222 -10
- package/node_modules/graphql/execution/execute.js +269 -28
- package/node_modules/graphql/execution/execute.mjs +268 -28
- package/node_modules/graphql/execution/index.d.ts +6 -0
- package/node_modules/graphql/execution/index.mjs +6 -0
- package/node_modules/graphql/execution/mapAsyncIterator.d.ts +2 -0
- package/node_modules/graphql/execution/mapAsyncIterator.js +2 -0
- package/node_modules/graphql/execution/mapAsyncIterator.mjs +2 -0
- package/node_modules/graphql/execution/subscribe.d.ts +195 -5
- package/node_modules/graphql/execution/subscribe.js +155 -11
- package/node_modules/graphql/execution/subscribe.mjs +155 -11
- package/node_modules/graphql/execution/values.d.ts +167 -10
- package/node_modules/graphql/execution/values.js +153 -9
- package/node_modules/graphql/execution/values.mjs +152 -9
- package/node_modules/graphql/graphql.d.ts +163 -41
- package/node_modules/graphql/graphql.js +126 -4
- package/node_modules/graphql/graphql.mjs +131 -41
- package/node_modules/graphql/index.d.ts +12 -17
- package/node_modules/graphql/index.mjs +13 -19
- package/node_modules/graphql/jsutils/Maybe.d.ts +5 -1
- package/node_modules/graphql/jsutils/ObjMap.d.ts +4 -0
- package/node_modules/graphql/jsutils/Path.d.ts +30 -0
- package/node_modules/graphql/jsutils/Path.js +29 -0
- package/node_modules/graphql/jsutils/Path.mjs +29 -0
- package/node_modules/graphql/jsutils/PromiseOrValue.d.ts +1 -0
- package/node_modules/graphql/jsutils/devAssert.d.ts +1 -0
- package/node_modules/graphql/jsutils/devAssert.js +1 -0
- package/node_modules/graphql/jsutils/devAssert.mjs +1 -0
- package/node_modules/graphql/jsutils/didYouMean.d.ts +4 -1
- package/node_modules/graphql/jsutils/didYouMean.js +4 -1
- package/node_modules/graphql/jsutils/didYouMean.mjs +4 -1
- package/node_modules/graphql/jsutils/groupBy.d.ts +2 -0
- package/node_modules/graphql/jsutils/groupBy.js +2 -0
- package/node_modules/graphql/jsutils/groupBy.mjs +2 -0
- package/node_modules/graphql/jsutils/identityFunc.d.ts +2 -0
- package/node_modules/graphql/jsutils/identityFunc.js +2 -0
- package/node_modules/graphql/jsutils/identityFunc.mjs +2 -0
- package/node_modules/graphql/jsutils/inspect.d.ts +2 -0
- package/node_modules/graphql/jsutils/inspect.js +2 -0
- package/node_modules/graphql/jsutils/inspect.mjs +2 -0
- package/node_modules/graphql/jsutils/instanceOf.d.ts +2 -0
- package/node_modules/graphql/jsutils/instanceOf.js +2 -0
- package/node_modules/graphql/jsutils/instanceOf.mjs +2 -0
- package/node_modules/graphql/jsutils/invariant.d.ts +1 -0
- package/node_modules/graphql/jsutils/invariant.js +1 -0
- package/node_modules/graphql/jsutils/invariant.mjs +1 -0
- package/node_modules/graphql/jsutils/isAsyncIterable.d.ts +2 -0
- package/node_modules/graphql/jsutils/isAsyncIterable.js +2 -0
- package/node_modules/graphql/jsutils/isAsyncIterable.mjs +2 -0
- package/node_modules/graphql/jsutils/isIterableObject.d.ts +6 -5
- package/node_modules/graphql/jsutils/isIterableObject.js +6 -5
- package/node_modules/graphql/jsutils/isIterableObject.mjs +6 -5
- package/node_modules/graphql/jsutils/isObjectLike.d.ts +2 -0
- package/node_modules/graphql/jsutils/isObjectLike.js +2 -0
- package/node_modules/graphql/jsutils/isObjectLike.mjs +2 -0
- package/node_modules/graphql/jsutils/isPromise.d.ts +2 -0
- package/node_modules/graphql/jsutils/isPromise.js +2 -0
- package/node_modules/graphql/jsutils/isPromise.mjs +2 -0
- package/node_modules/graphql/jsutils/keyMap.d.ts +7 -14
- package/node_modules/graphql/jsutils/keyMap.js +7 -14
- package/node_modules/graphql/jsutils/keyMap.mjs +7 -14
- package/node_modules/graphql/jsutils/keyValMap.d.ts +9 -6
- package/node_modules/graphql/jsutils/keyValMap.js +9 -6
- package/node_modules/graphql/jsutils/keyValMap.mjs +9 -6
- package/node_modules/graphql/jsutils/mapValue.d.ts +2 -0
- package/node_modules/graphql/jsutils/mapValue.js +2 -0
- package/node_modules/graphql/jsutils/mapValue.mjs +2 -0
- package/node_modules/graphql/jsutils/memoize3.d.ts +2 -0
- package/node_modules/graphql/jsutils/memoize3.js +2 -0
- package/node_modules/graphql/jsutils/memoize3.mjs +2 -0
- package/node_modules/graphql/jsutils/naturalCompare.d.ts +2 -0
- package/node_modules/graphql/jsutils/naturalCompare.js +2 -0
- package/node_modules/graphql/jsutils/naturalCompare.mjs +2 -0
- package/node_modules/graphql/jsutils/printPathArray.d.ts +2 -0
- package/node_modules/graphql/jsutils/printPathArray.js +2 -0
- package/node_modules/graphql/jsutils/printPathArray.mjs +2 -0
- package/node_modules/graphql/jsutils/promiseForObject.d.ts +2 -0
- package/node_modules/graphql/jsutils/promiseForObject.js +2 -0
- package/node_modules/graphql/jsutils/promiseForObject.mjs +2 -0
- package/node_modules/graphql/jsutils/promiseReduce.d.ts +2 -0
- package/node_modules/graphql/jsutils/promiseReduce.js +2 -0
- package/node_modules/graphql/jsutils/promiseReduce.mjs +2 -0
- package/node_modules/graphql/jsutils/suggestionList.d.ts +2 -0
- package/node_modules/graphql/jsutils/suggestionList.js +4 -0
- package/node_modules/graphql/jsutils/suggestionList.mjs +4 -0
- package/node_modules/graphql/jsutils/toError.d.ts +2 -0
- package/node_modules/graphql/jsutils/toError.js +2 -0
- package/node_modules/graphql/jsutils/toError.mjs +2 -0
- package/node_modules/graphql/jsutils/toObjMap.d.ts +1 -0
- package/node_modules/graphql/jsutils/toObjMap.js +1 -0
- package/node_modules/graphql/jsutils/toObjMap.mjs +1 -0
- package/node_modules/graphql/language/ast.d.ts +422 -55
- package/node_modules/graphql/language/ast.js +103 -39
- package/node_modules/graphql/language/ast.mjs +103 -39
- package/node_modules/graphql/language/blockString.d.ts +1 -3
- package/node_modules/graphql/language/blockString.js +1 -3
- package/node_modules/graphql/language/blockString.mjs +1 -3
- package/node_modules/graphql/language/directiveLocation.d.ts +29 -8
- package/node_modules/graphql/language/directiveLocation.js +10 -6
- package/node_modules/graphql/language/directiveLocation.mjs +10 -6
- package/node_modules/graphql/language/index.d.ts +7 -0
- package/node_modules/graphql/language/index.mjs +6 -0
- package/node_modules/graphql/language/kinds.d.ts +58 -18
- package/node_modules/graphql/language/kinds.js +10 -6
- package/node_modules/graphql/language/kinds.mjs +10 -6
- package/node_modules/graphql/language/lexer.d.ts +47 -14
- package/node_modules/graphql/language/lexer.js +71 -13
- package/node_modules/graphql/language/lexer.mjs +70 -13
- package/node_modules/graphql/language/location.d.ts +16 -3
- package/node_modules/graphql/language/location.js +14 -3
- package/node_modules/graphql/language/location.mjs +14 -3
- package/node_modules/graphql/language/parser.d.ts +248 -11
- package/node_modules/graphql/language/parser.js +257 -0
- package/node_modules/graphql/language/parser.mjs +257 -3
- package/node_modules/graphql/language/predicates.d.ts +169 -0
- package/node_modules/graphql/language/predicates.js +173 -1
- package/node_modules/graphql/language/predicates.mjs +185 -1
- package/node_modules/graphql/language/printLocation.d.ts +28 -0
- package/node_modules/graphql/language/printLocation.js +29 -0
- package/node_modules/graphql/language/printLocation.mjs +28 -0
- package/node_modules/graphql/language/printString.d.ts +2 -0
- package/node_modules/graphql/language/printString.js +5 -1
- package/node_modules/graphql/language/printString.mjs +5 -1
- package/node_modules/graphql/language/printer.d.ts +12 -0
- package/node_modules/graphql/language/printer.js +32 -1
- package/node_modules/graphql/language/printer.mjs +31 -1
- package/node_modules/graphql/language/schemaCoordinateLexer.d.ts +8 -6
- package/node_modules/graphql/language/schemaCoordinateLexer.js +10 -6
- package/node_modules/graphql/language/schemaCoordinateLexer.mjs +10 -6
- package/node_modules/graphql/language/source.d.ts +28 -0
- package/node_modules/graphql/language/source.js +32 -0
- package/node_modules/graphql/language/source.mjs +31 -0
- package/node_modules/graphql/language/tokenKind.d.ts +30 -3
- package/node_modules/graphql/language/tokenKind.js +8 -3
- package/node_modules/graphql/language/tokenKind.mjs +8 -3
- package/node_modules/graphql/language/visitor.d.ts +200 -72
- package/node_modules/graphql/language/visitor.js +122 -50
- package/node_modules/graphql/language/visitor.mjs +122 -54
- package/node_modules/graphql/package.json +1 -1
- package/node_modules/graphql/subscription/index.d.ts +9 -3
- package/node_modules/graphql/subscription/index.mjs +9 -3
- package/node_modules/graphql/type/assertName.d.ts +18 -1
- package/node_modules/graphql/type/assertName.js +19 -1
- package/node_modules/graphql/type/assertName.mjs +18 -1
- package/node_modules/graphql/type/definition.d.ts +2540 -79
- package/node_modules/graphql/type/definition.js +2214 -61
- package/node_modules/graphql/type/definition.mjs +2241 -60
- package/node_modules/graphql/type/directives.d.ts +202 -19
- package/node_modules/graphql/type/directives.js +206 -20
- package/node_modules/graphql/type/directives.mjs +206 -20
- package/node_modules/graphql/type/index.d.ts +6 -0
- package/node_modules/graphql/type/index.mjs +6 -0
- package/node_modules/graphql/type/introspection.d.ts +36 -0
- package/node_modules/graphql/type/introspection.js +57 -1
- package/node_modules/graphql/type/introspection.mjs +65 -1
- package/node_modules/graphql/type/scalars.d.ts +29 -2
- package/node_modules/graphql/type/scalars.js +37 -2
- package/node_modules/graphql/type/scalars.mjs +36 -2
- package/node_modules/graphql/type/schema.d.ts +490 -28
- package/node_modules/graphql/type/schema.js +484 -26
- package/node_modules/graphql/type/schema.mjs +484 -26
- package/node_modules/graphql/type/validate.d.ts +31 -0
- package/node_modules/graphql/type/validate.js +32 -0
- package/node_modules/graphql/type/validate.mjs +31 -0
- package/node_modules/graphql/utilities/TypeInfo.d.ts +441 -1
- package/node_modules/graphql/utilities/TypeInfo.js +444 -1
- package/node_modules/graphql/utilities/TypeInfo.mjs +443 -1
- package/node_modules/graphql/utilities/assertValidName.d.ts +27 -2
- package/node_modules/graphql/utilities/assertValidName.js +28 -2
- package/node_modules/graphql/utilities/assertValidName.mjs +27 -2
- package/node_modules/graphql/utilities/astFromValue.d.ts +33 -3
- package/node_modules/graphql/utilities/astFromValue.js +36 -3
- package/node_modules/graphql/utilities/astFromValue.mjs +35 -3
- package/node_modules/graphql/utilities/buildASTSchema.d.ts +65 -6
- package/node_modules/graphql/utilities/buildASTSchema.js +69 -6
- package/node_modules/graphql/utilities/buildASTSchema.mjs +69 -6
- package/node_modules/graphql/utilities/buildClientSchema.d.ts +15 -0
- package/node_modules/graphql/utilities/buildClientSchema.js +17 -0
- package/node_modules/graphql/utilities/buildClientSchema.mjs +16 -0
- package/node_modules/graphql/utilities/coerceInputValue.d.ts +46 -0
- package/node_modules/graphql/utilities/coerceInputValue.js +49 -2
- package/node_modules/graphql/utilities/coerceInputValue.mjs +48 -2
- package/node_modules/graphql/utilities/concatAST.d.ts +12 -0
- package/node_modules/graphql/utilities/concatAST.js +13 -0
- package/node_modules/graphql/utilities/concatAST.mjs +12 -0
- package/node_modules/graphql/utilities/extendSchema.d.ts +56 -3
- package/node_modules/graphql/utilities/extendSchema.js +121 -6
- package/node_modules/graphql/utilities/extendSchema.mjs +120 -6
- package/node_modules/graphql/utilities/findBreakingChanges.d.ts +95 -0
- package/node_modules/graphql/utilities/findBreakingChanges.js +68 -0
- package/node_modules/graphql/utilities/findBreakingChanges.mjs +70 -0
- package/node_modules/graphql/utilities/getIntrospectionQuery.d.ts +148 -0
- package/node_modules/graphql/utilities/getIntrospectionQuery.js +72 -38
- package/node_modules/graphql/utilities/getIntrospectionQuery.mjs +72 -38
- package/node_modules/graphql/utilities/getOperationAST.d.ts +15 -0
- package/node_modules/graphql/utilities/getOperationAST.js +16 -0
- package/node_modules/graphql/utilities/getOperationAST.mjs +15 -0
- package/node_modules/graphql/utilities/getOperationRootType.d.ts +18 -1
- package/node_modules/graphql/utilities/getOperationRootType.js +19 -1
- package/node_modules/graphql/utilities/getOperationRootType.mjs +18 -1
- package/node_modules/graphql/utilities/index.d.ts +7 -0
- package/node_modules/graphql/utilities/index.mjs +7 -0
- package/node_modules/graphql/utilities/introspectionFromSchema.d.ts +54 -0
- package/node_modules/graphql/utilities/introspectionFromSchema.js +56 -0
- package/node_modules/graphql/utilities/introspectionFromSchema.mjs +55 -0
- package/node_modules/graphql/utilities/lexicographicSortSchema.d.ts +35 -0
- package/node_modules/graphql/utilities/lexicographicSortSchema.js +36 -0
- package/node_modules/graphql/utilities/lexicographicSortSchema.mjs +35 -0
- package/node_modules/graphql/utilities/printSchema.d.ts +63 -0
- package/node_modules/graphql/utilities/printSchema.js +67 -0
- package/node_modules/graphql/utilities/printSchema.mjs +68 -0
- package/node_modules/graphql/utilities/resolveSchemaCoordinate.d.ts +62 -0
- package/node_modules/graphql/utilities/resolveSchemaCoordinate.js +64 -0
- package/node_modules/graphql/utilities/resolveSchemaCoordinate.mjs +63 -0
- package/node_modules/graphql/utilities/separateOperations.d.ts +30 -0
- package/node_modules/graphql/utilities/separateOperations.js +31 -0
- package/node_modules/graphql/utilities/separateOperations.mjs +30 -0
- package/node_modules/graphql/utilities/stripIgnoredCharacters.d.ts +13 -6
- package/node_modules/graphql/utilities/stripIgnoredCharacters.js +16 -6
- package/node_modules/graphql/utilities/stripIgnoredCharacters.mjs +15 -6
- package/node_modules/graphql/utilities/typeComparators.d.ts +84 -0
- package/node_modules/graphql/utilities/typeComparators.js +85 -0
- package/node_modules/graphql/utilities/typeComparators.mjs +84 -0
- package/node_modules/graphql/utilities/typeFromAST.d.ts +86 -0
- package/node_modules/graphql/utilities/typeFromAST.js +3 -0
- package/node_modules/graphql/utilities/typeFromAST.mjs +3 -0
- package/node_modules/graphql/utilities/typedQueryDocumentNode.d.ts +4 -0
- package/node_modules/graphql/utilities/valueFromAST.d.ts +38 -0
- package/node_modules/graphql/utilities/valueFromAST.js +51 -2
- package/node_modules/graphql/utilities/valueFromAST.mjs +50 -2
- package/node_modules/graphql/utilities/valueFromASTUntyped.d.ts +15 -2
- package/node_modules/graphql/utilities/valueFromASTUntyped.js +16 -2
- package/node_modules/graphql/utilities/valueFromASTUntyped.mjs +15 -2
- package/node_modules/graphql/validation/ValidationContext.d.ts +399 -0
- package/node_modules/graphql/validation/ValidationContext.js +400 -0
- package/node_modules/graphql/validation/ValidationContext.mjs +401 -0
- package/node_modules/graphql/validation/index.d.ts +6 -0
- package/node_modules/graphql/validation/index.mjs +6 -0
- package/node_modules/graphql/validation/rules/ExecutableDefinitionsRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/ExecutableDefinitionsRule.js +29 -0
- package/node_modules/graphql/validation/rules/ExecutableDefinitionsRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/FieldsOnCorrectTypeRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/FieldsOnCorrectTypeRule.js +33 -0
- package/node_modules/graphql/validation/rules/FieldsOnCorrectTypeRule.mjs +32 -0
- package/node_modules/graphql/validation/rules/FragmentsOnCompositeTypesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/FragmentsOnCompositeTypesRule.js +29 -0
- package/node_modules/graphql/validation/rules/FragmentsOnCompositeTypesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/KnownArgumentNamesRule.d.ts +29 -3
- package/node_modules/graphql/validation/rules/KnownArgumentNamesRule.js +30 -3
- package/node_modules/graphql/validation/rules/KnownArgumentNamesRule.mjs +29 -3
- package/node_modules/graphql/validation/rules/KnownDirectivesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/KnownDirectivesRule.js +33 -0
- package/node_modules/graphql/validation/rules/KnownDirectivesRule.mjs +32 -0
- package/node_modules/graphql/validation/rules/KnownFragmentNamesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/KnownFragmentNamesRule.js +29 -0
- package/node_modules/graphql/validation/rules/KnownFragmentNamesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/KnownTypeNamesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/KnownTypeNamesRule.js +29 -0
- package/node_modules/graphql/validation/rules/KnownTypeNamesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/LoneAnonymousOperationRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/LoneAnonymousOperationRule.js +29 -0
- package/node_modules/graphql/validation/rules/LoneAnonymousOperationRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js +22 -0
- package/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/MaxIntrospectionDepthRule.d.ts +31 -0
- package/node_modules/graphql/validation/rules/MaxIntrospectionDepthRule.js +33 -0
- package/node_modules/graphql/validation/rules/MaxIntrospectionDepthRule.mjs +34 -0
- package/node_modules/graphql/validation/rules/NoFragmentCyclesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/NoFragmentCyclesRule.js +29 -0
- package/node_modules/graphql/validation/rules/NoFragmentCyclesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/NoUndefinedVariablesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/NoUndefinedVariablesRule.js +29 -0
- package/node_modules/graphql/validation/rules/NoUndefinedVariablesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/NoUnusedFragmentsRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/NoUnusedFragmentsRule.js +29 -0
- package/node_modules/graphql/validation/rules/NoUnusedFragmentsRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/NoUnusedVariablesRule.d.ts +29 -0
- package/node_modules/graphql/validation/rules/NoUnusedVariablesRule.js +30 -0
- package/node_modules/graphql/validation/rules/NoUnusedVariablesRule.mjs +29 -0
- package/node_modules/graphql/validation/rules/OverlappingFieldsCanBeMergedRule.d.ts +33 -0
- package/node_modules/graphql/validation/rules/OverlappingFieldsCanBeMergedRule.js +45 -6
- package/node_modules/graphql/validation/rules/OverlappingFieldsCanBeMergedRule.mjs +45 -6
- package/node_modules/graphql/validation/rules/PossibleFragmentSpreadsRule.d.ts +36 -0
- package/node_modules/graphql/validation/rules/PossibleFragmentSpreadsRule.js +37 -0
- package/node_modules/graphql/validation/rules/PossibleFragmentSpreadsRule.mjs +36 -0
- package/node_modules/graphql/validation/rules/PossibleTypeExtensionsRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/PossibleTypeExtensionsRule.js +22 -0
- package/node_modules/graphql/validation/rules/PossibleTypeExtensionsRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/ProvidedRequiredArgumentsRule.d.ts +29 -3
- package/node_modules/graphql/validation/rules/ProvidedRequiredArgumentsRule.js +30 -3
- package/node_modules/graphql/validation/rules/ProvidedRequiredArgumentsRule.mjs +29 -3
- package/node_modules/graphql/validation/rules/ScalarLeafsRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/ScalarLeafsRule.js +29 -0
- package/node_modules/graphql/validation/rules/ScalarLeafsRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/SingleFieldSubscriptionsRule.d.ts +33 -0
- package/node_modules/graphql/validation/rules/SingleFieldSubscriptionsRule.js +34 -0
- package/node_modules/graphql/validation/rules/SingleFieldSubscriptionsRule.mjs +33 -0
- package/node_modules/graphql/validation/rules/UniqueArgumentDefinitionNamesRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/UniqueArgumentDefinitionNamesRule.js +22 -0
- package/node_modules/graphql/validation/rules/UniqueArgumentDefinitionNamesRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/UniqueArgumentNamesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/UniqueArgumentNamesRule.js +29 -0
- package/node_modules/graphql/validation/rules/UniqueArgumentNamesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/UniqueDirectiveNamesRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/UniqueDirectiveNamesRule.js +22 -0
- package/node_modules/graphql/validation/rules/UniqueDirectiveNamesRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/UniqueDirectivesPerLocationRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/UniqueDirectivesPerLocationRule.js +41 -0
- package/node_modules/graphql/validation/rules/UniqueDirectivesPerLocationRule.mjs +40 -0
- package/node_modules/graphql/validation/rules/UniqueEnumValueNamesRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/UniqueEnumValueNamesRule.js +22 -0
- package/node_modules/graphql/validation/rules/UniqueEnumValueNamesRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/UniqueFieldDefinitionNamesRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/UniqueFieldDefinitionNamesRule.js +22 -0
- package/node_modules/graphql/validation/rules/UniqueFieldDefinitionNamesRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/UniqueFragmentNamesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/UniqueFragmentNamesRule.js +29 -0
- package/node_modules/graphql/validation/rules/UniqueFragmentNamesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/UniqueInputFieldNamesRule.d.ts +32 -0
- package/node_modules/graphql/validation/rules/UniqueInputFieldNamesRule.js +33 -0
- package/node_modules/graphql/validation/rules/UniqueInputFieldNamesRule.mjs +32 -0
- package/node_modules/graphql/validation/rules/UniqueOperationNamesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/UniqueOperationNamesRule.js +29 -0
- package/node_modules/graphql/validation/rules/UniqueOperationNamesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/UniqueOperationTypesRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/UniqueOperationTypesRule.js +22 -0
- package/node_modules/graphql/validation/rules/UniqueOperationTypesRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/UniqueTypeNamesRule.d.ts +21 -0
- package/node_modules/graphql/validation/rules/UniqueTypeNamesRule.js +22 -0
- package/node_modules/graphql/validation/rules/UniqueTypeNamesRule.mjs +21 -0
- package/node_modules/graphql/validation/rules/UniqueVariableNamesRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/UniqueVariableNamesRule.js +29 -0
- package/node_modules/graphql/validation/rules/UniqueVariableNamesRule.mjs +28 -0
- package/node_modules/graphql/validation/rules/ValuesOfCorrectTypeRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/ValuesOfCorrectTypeRule.js +36 -11
- package/node_modules/graphql/validation/rules/ValuesOfCorrectTypeRule.mjs +35 -11
- package/node_modules/graphql/validation/rules/VariablesAreInputTypesRule.d.ts +32 -0
- package/node_modules/graphql/validation/rules/VariablesAreInputTypesRule.js +33 -0
- package/node_modules/graphql/validation/rules/VariablesAreInputTypesRule.mjs +32 -0
- package/node_modules/graphql/validation/rules/VariablesInAllowedPositionRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/VariablesInAllowedPositionRule.js +35 -1
- package/node_modules/graphql/validation/rules/VariablesInAllowedPositionRule.mjs +34 -1
- package/node_modules/graphql/validation/rules/custom/NoDeprecatedCustomRule.d.ts +41 -0
- package/node_modules/graphql/validation/rules/custom/NoDeprecatedCustomRule.js +42 -0
- package/node_modules/graphql/validation/rules/custom/NoDeprecatedCustomRule.mjs +41 -0
- package/node_modules/graphql/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.ts +28 -0
- package/node_modules/graphql/validation/rules/custom/NoSchemaIntrospectionCustomRule.js +29 -0
- package/node_modules/graphql/validation/rules/custom/NoSchemaIntrospectionCustomRule.mjs +28 -0
- package/node_modules/graphql/validation/specifiedRules.d.ts +2 -3
- package/node_modules/graphql/validation/specifiedRules.js +2 -3
- package/node_modules/graphql/validation/specifiedRules.mjs +2 -3
- package/node_modules/graphql/validation/validate.d.ts +70 -9
- package/node_modules/graphql/validation/validate.js +74 -6
- package/node_modules/graphql/validation/validate.mjs +76 -9
- package/node_modules/graphql/version.d.ts +3 -6
- package/node_modules/graphql/version.js +7 -9
- package/node_modules/graphql/version.mjs +6 -9
- package/node_modules/hasown/CHANGELOG.md +18 -0
- package/node_modules/hasown/eslint.config.mjs +6 -0
- package/node_modules/hasown/package.json +13 -14
- package/node_modules/iconv-lite/encodings/sbcs-data.js +2 -0
- package/node_modules/iconv-lite/encodings/utf32.js +10 -3
- package/node_modules/iconv-lite/lib/index.d.ts +68 -70
- package/node_modules/iconv-lite/lib/index.js +39 -40
- package/node_modules/iconv-lite/package.json +7 -2
- package/node_modules/iconv-lite/types/encodings.d.ts +2 -0
- package/node_modules/ini/README.md +145 -67
- package/node_modules/ini/package.json +28 -16
- package/node_modules/ink/build/devtools-window-polyfill.d.ts +1 -0
- package/node_modules/is-fullwidth-code-point/index.js +8 -46
- package/node_modules/is-fullwidth-code-point/license +1 -1
- package/node_modules/is-fullwidth-code-point/package.json +19 -8
- package/node_modules/is-fullwidth-code-point/readme.md +4 -12
- package/node_modules/isexe/README.md +52 -23
- package/node_modules/isexe/package.json +65 -18
- package/node_modules/media-typer/README.md +15 -14
- package/node_modules/media-typer/index.js +0 -8
- package/node_modules/media-typer/package.json +16 -12
- package/node_modules/negotiator/lib/accept.js +54 -0
- package/node_modules/negotiator/lib/charset.js +10 -34
- package/node_modules/negotiator/lib/encoding.js +9 -30
- package/node_modules/negotiator/lib/language.js +15 -36
- package/node_modules/negotiator/lib/mediaType.js +16 -134
- package/node_modules/negotiator/node_modules/content-type/LICENSE +22 -0
- package/node_modules/negotiator/node_modules/content-type/README.md +71 -0
- package/node_modules/negotiator/node_modules/content-type/dist/index.d.ts +46 -0
- package/node_modules/negotiator/node_modules/content-type/dist/index.js +176 -0
- package/node_modules/negotiator/node_modules/content-type/dist/index.js.map +1 -0
- package/node_modules/negotiator/node_modules/content-type/package.json +52 -0
- package/node_modules/negotiator/package.json +16 -10
- package/node_modules/node-abi/abi_registry.json +24 -3
- package/node_modules/node-abi/package.json +1 -1
- package/node_modules/path-to-regexp/Readme.md +3 -3
- package/node_modules/path-to-regexp/dist/index.d.ts +3 -0
- package/node_modules/path-to-regexp/dist/index.js +215 -193
- package/node_modules/path-to-regexp/dist/index.js.map +1 -1
- package/node_modules/path-to-regexp/package.json +2 -2
- package/node_modules/qs/.editorconfig +1 -1
- package/node_modules/qs/.github/SECURITY.md +11 -0
- package/node_modules/qs/.github/THREAT_MODEL.md +78 -0
- package/node_modules/qs/CHANGELOG.md +226 -0
- package/node_modules/qs/README.md +49 -6
- package/node_modules/qs/dist/qs.js +22 -22
- package/node_modules/qs/eslint.config.mjs +57 -0
- package/node_modules/qs/lib/parse.js +144 -59
- package/node_modules/qs/lib/stringify.js +34 -12
- package/node_modules/qs/lib/utils.js +137 -17
- package/node_modules/qs/package.json +15 -13
- package/node_modules/qs/test/parse.js +859 -13
- package/node_modules/qs/test/stringify.js +462 -3
- package/node_modules/qs/test/utils.js +379 -3
- package/node_modules/range-parser/README.md +13 -12
- package/node_modules/range-parser/index.js +27 -8
- package/node_modules/range-parser/package.json +12 -8
- package/node_modules/rc/node_modules/ini/README.md +102 -0
- package/node_modules/rc/node_modules/ini/package.json +33 -0
- package/node_modules/react/cjs/react.development.js +1284 -0
- package/node_modules/react/cjs/react.production.js +542 -0
- package/node_modules/react/cjs/react.react-server.development.js +848 -0
- package/node_modules/react/cjs/react.react-server.production.js +423 -0
- package/node_modules/react/package.json +51 -0
- package/node_modules/react-devtools-core/node_modules/ws/lib/receiver.js +648 -0
- package/node_modules/react-devtools-core/node_modules/ws/lib/websocket-server.js +461 -0
- package/node_modules/react-devtools-core/node_modules/ws/lib/websocket.js +1215 -0
- package/node_modules/react-devtools-core/node_modules/ws/package.json +56 -0
- package/node_modules/semver/README.md +19 -4
- package/node_modules/semver/bin/semver.js +14 -10
- package/node_modules/semver/classes/range.js +24 -4
- package/node_modules/semver/classes/semver.js +19 -2
- package/node_modules/semver/functions/truncate.js +48 -0
- package/node_modules/semver/index.js +2 -0
- package/node_modules/semver/internal/re.js +1 -1
- package/node_modules/semver/package.json +4 -4
- package/node_modules/semver/range.bnf +5 -4
- package/node_modules/semver/ranges/subset.js +2 -2
- package/node_modules/send/package.json +11 -8
- package/node_modules/serve-static/README.md +23 -23
- package/node_modules/serve-static/package.json +6 -3
- package/node_modules/side-channel/CHANGELOG.md +10 -0
- package/node_modules/side-channel/README.md +1 -1
- package/node_modules/side-channel/index.js +5 -2
- package/node_modules/side-channel/package.json +10 -10
- package/node_modules/side-channel/test/index.js +16 -0
- package/node_modules/side-channel-list/CHANGELOG.md +25 -4
- package/node_modules/side-channel-list/index.js +1 -3
- package/node_modules/side-channel-list/package.json +8 -8
- package/node_modules/side-channel-list/test/index.js +50 -0
- package/node_modules/string-width/index.d.ts +13 -3
- package/node_modules/string-width/index.js +182 -29
- package/node_modules/string-width/package.json +16 -10
- package/node_modules/string-width/readme.md +15 -16
- package/node_modules/string-width-cjs/node_modules/is-fullwidth-code-point/index.js +50 -0
- package/node_modules/string-width-cjs/node_modules/is-fullwidth-code-point/license +9 -0
- package/node_modules/string-width-cjs/node_modules/is-fullwidth-code-point/package.json +42 -0
- package/node_modules/string-width-cjs/node_modules/is-fullwidth-code-point/readme.md +39 -0
- package/node_modules/tar-fs/index.js +39 -10
- package/node_modules/tar-fs/package.json +6 -1
- package/node_modules/tar-fs/test/index.js +111 -0
- package/node_modules/type-fest/index.d.ts +226 -0
- package/node_modules/type-fest/package.json +75 -0
- package/node_modules/type-fest/readme.md +1086 -0
- package/node_modules/type-fest/source/delimiter-case.d.ts +79 -0
- package/node_modules/type-fest/source/get.d.ts +227 -0
- package/node_modules/type-fest/source/internal/object.d.ts +330 -0
- package/node_modules/type-fest/source/is-boolean-literal.d.ts +39 -0
- package/node_modules/type-fest/source/is-literal.d.ts +91 -0
- package/node_modules/type-fest/source/is-numeric-literal.d.ts +50 -0
- package/node_modules/type-fest/source/is-string-literal.d.ts +72 -0
- package/node_modules/type-fest/source/is-symbol-literal.d.ts +39 -0
- package/node_modules/type-fest/source/jsonify.d.ts +123 -0
- package/node_modules/type-fest/source/remove-prefix.d.ts +114 -0
- package/node_modules/type-fest/source/remove-suffix.d.ts +114 -0
- package/node_modules/type-fest/source/rename-keys.d.ts +163 -0
- package/node_modules/type-fest/source/shared-union-fields-deep.d.ts +181 -0
- package/node_modules/type-fest/source/split.d.ts +90 -0
- package/node_modules/type-fest/source/string-repeat.d.ts +76 -0
- package/node_modules/type-fest/source/string-to-array.d.ts +97 -0
- package/node_modules/type-fest/source/tsconfig-json.d.ts +1356 -0
- package/node_modules/type-fest/source/typed-array.d.ts +20 -0
- package/node_modules/type-fest/source/writable.d.ts +68 -0
- package/node_modules/type-is/index.js +8 -18
- package/node_modules/type-is/node_modules/content-type/LICENSE +22 -0
- package/node_modules/type-is/node_modules/content-type/README.md +71 -0
- package/node_modules/type-is/node_modules/content-type/dist/index.d.ts +46 -0
- package/node_modules/type-is/node_modules/content-type/dist/index.js +176 -0
- package/node_modules/type-is/node_modules/content-type/dist/index.js.map +1 -0
- package/node_modules/type-is/node_modules/content-type/package.json +52 -0
- package/node_modules/type-is/package.json +9 -5
- package/node_modules/uuid/dist/v35.js +3 -0
- package/node_modules/uuid/dist/v6.js +3 -0
- package/node_modules/uuid/dist-node/v35.js +3 -0
- package/node_modules/uuid/dist-node/v6.js +3 -0
- package/node_modules/uuid/package.json +1 -1
- package/node_modules/which/README.md +13 -16
- package/node_modules/which/package.json +34 -20
- package/node_modules/wrap-ansi/index.d.ts +2 -2
- package/node_modules/wrap-ansi/index.js +550 -114
- package/node_modules/wrap-ansi/package.json +10 -13
- package/node_modules/wrap-ansi/readme.md +8 -22
- package/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.d.ts +345 -0
- package/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.js +163 -0
- package/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/license +9 -0
- package/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json +56 -0
- package/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/readme.md +152 -0
- package/node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
- package/node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point/index.js +50 -0
- package/node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point/license +9 -0
- package/node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point/package.json +42 -0
- package/node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point/readme.md +39 -0
- package/node_modules/ws/index.js +15 -6
- package/node_modules/ws/lib/constants.js +1 -0
- package/node_modules/ws/lib/permessage-deflate.js +9 -7
- package/node_modules/ws/lib/receiver.js +37 -0
- package/node_modules/ws/lib/sender.js +6 -1
- package/node_modules/ws/lib/websocket-server.js +18 -6
- package/node_modules/ws/lib/websocket.js +33 -14
- package/node_modules/ws/package.json +8 -3
- package/node_modules/ws/wrapper.mjs +14 -1
- package/package.json +2 -2
- package/node_modules/@npmcli/git/node_modules/ini/README.md +0 -180
- package/node_modules/@npmcli/git/node_modules/ini/package.json +0 -45
- package/node_modules/@npmcli/git/node_modules/isexe/README.md +0 -80
- package/node_modules/@npmcli/git/node_modules/isexe/package.json +0 -78
- package/node_modules/@npmcli/git/node_modules/which/README.md +0 -51
- package/node_modules/@npmcli/git/node_modules/which/package.json +0 -57
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/LICENSE.md +0 -55
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/README.md +0 -80
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/index.d.ts +0 -14
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/index.js +0 -56
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/index.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/index.min.js +0 -2
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/options.d.ts +0 -32
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/options.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/options.js +0 -3
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/options.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/package.json +0 -3
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/posix.d.ts +0 -18
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/posix.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/posix.js +0 -67
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/posix.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/win32.d.ts +0 -18
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/win32.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/win32.js +0 -63
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/commonjs/win32.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/index.d.ts +0 -14
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/index.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/index.js +0 -16
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/index.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/index.min.js +0 -2
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/index.min.js.map +0 -7
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/options.d.ts +0 -32
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/options.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/options.js +0 -2
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/options.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/package.json +0 -3
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/posix.d.ts +0 -18
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/posix.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/posix.js +0 -62
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/posix.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/win32.d.ts +0 -18
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/win32.d.ts.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/win32.js +0 -58
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/dist/esm/win32.js.map +0 -1
- package/node_modules/@npmcli/promise-spawn/node_modules/isexe/package.json +0 -78
- package/node_modules/@npmcli/promise-spawn/node_modules/which/README.md +0 -51
- package/node_modules/@npmcli/promise-spawn/node_modules/which/bin/which.js +0 -52
- package/node_modules/@npmcli/promise-spawn/node_modules/which/lib/index.js +0 -111
- package/node_modules/@npmcli/promise-spawn/node_modules/which/package.json +0 -57
- package/node_modules/@quantiya/codevibe-core/node_modules/ansi-styles/index.d.ts +0 -236
- package/node_modules/@quantiya/codevibe-core/node_modules/ansi-styles/package.json +0 -54
- package/node_modules/@quantiya/codevibe-core/node_modules/ansi-styles/readme.md +0 -173
- package/node_modules/@quantiya/codevibe-core/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -223
- package/node_modules/@quantiya/codevibe-core/node_modules/cli-truncate/index.js +0 -194
- package/node_modules/@quantiya/codevibe-core/node_modules/cli-truncate/package.json +0 -52
- package/node_modules/@quantiya/codevibe-core/node_modules/is-fullwidth-code-point/index.js +0 -12
- package/node_modules/@quantiya/codevibe-core/node_modules/is-fullwidth-code-point/package.json +0 -53
- package/node_modules/@quantiya/codevibe-core/node_modules/is-fullwidth-code-point/readme.md +0 -31
- package/node_modules/@quantiya/codevibe-core/node_modules/react/cjs/react.development.js +0 -1284
- package/node_modules/@quantiya/codevibe-core/node_modules/react/cjs/react.production.js +0 -542
- package/node_modules/@quantiya/codevibe-core/node_modules/react/cjs/react.react-server.development.js +0 -848
- package/node_modules/@quantiya/codevibe-core/node_modules/react/cjs/react.react-server.production.js +0 -423
- package/node_modules/@quantiya/codevibe-core/node_modules/react/package.json +0 -51
- package/node_modules/@quantiya/codevibe-core/node_modules/react-devtools-core/node_modules/ws/lib/receiver.js +0 -664
- package/node_modules/@quantiya/codevibe-core/node_modules/react-devtools-core/node_modules/ws/lib/websocket-server.js +0 -461
- package/node_modules/@quantiya/codevibe-core/node_modules/react-devtools-core/node_modules/ws/lib/websocket.js +0 -1215
- package/node_modules/@quantiya/codevibe-core/node_modules/react-devtools-core/node_modules/ws/package.json +0 -56
- package/node_modules/@quantiya/codevibe-core/node_modules/string-width/index.d.ts +0 -39
- package/node_modules/@quantiya/codevibe-core/node_modules/string-width/index.js +0 -203
- package/node_modules/@quantiya/codevibe-core/node_modules/string-width/package.json +0 -65
- package/node_modules/@quantiya/codevibe-core/node_modules/string-width/readme.md +0 -66
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/index.d.ts +0 -227
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/package.json +0 -75
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/readme.md +0 -1085
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/delimiter-case.d.ts +0 -79
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/get.d.ts +0 -227
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/internal/object.d.ts +0 -301
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/is-literal.d.ts +0 -317
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/jsonify.d.ts +0 -127
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/remove-prefix.d.ts +0 -114
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/remove-suffix.d.ts +0 -114
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/shared-union-fields-deep.d.ts +0 -180
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/split.d.ts +0 -90
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/string-repeat.d.ts +0 -76
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/string-to-array.d.ts +0 -97
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/tsconfig-json.d.ts +0 -1356
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/typed-array.d.ts +0 -19
- package/node_modules/@quantiya/codevibe-core/node_modules/type-fest/source/writable.d.ts +0 -68
- package/node_modules/@quantiya/codevibe-core/node_modules/widest-line/license +0 -9
- package/node_modules/@quantiya/codevibe-core/node_modules/wrap-ansi/index.d.ts +0 -41
- package/node_modules/@quantiya/codevibe-core/node_modules/wrap-ansi/index.js +0 -468
- package/node_modules/@quantiya/codevibe-core/node_modules/wrap-ansi/license +0 -9
- package/node_modules/@quantiya/codevibe-core/node_modules/wrap-ansi/package.json +0 -69
- package/node_modules/@quantiya/codevibe-core/node_modules/wrap-ansi/readme.md +0 -77
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/LICENSE +0 -20
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/README.md +0 -548
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/browser.js +0 -8
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/index.js +0 -22
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/buffer-util.js +0 -131
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/constants.js +0 -19
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/event-target.js +0 -292
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/extension.js +0 -203
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/limiter.js +0 -55
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/permessage-deflate.js +0 -528
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/receiver.js +0 -760
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/sender.js +0 -607
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/stream.js +0 -161
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/subprotocol.js +0 -62
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/validation.js +0 -152
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/websocket-server.js +0 -562
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/lib/websocket.js +0 -1407
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/package.json +0 -70
- package/node_modules/@quantiya/codevibe-core/node_modules/ws/wrapper.mjs +0 -21
- package/node_modules/content-disposition/HISTORY.md +0 -72
- package/node_modules/es-toolkit/dist/_internal/isEqualsSameValueZero.d.mts +0 -16
- package/node_modules/es-toolkit/dist/_internal/isEqualsSameValueZero.d.ts +0 -16
- package/node_modules/es-toolkit/dist/_internal/isEqualsSameValueZero.js +0 -9
- package/node_modules/es-toolkit/dist/_internal/isEqualsSameValueZero.mjs +0 -5
- package/node_modules/es-toolkit/dist/compat/_internal/Equals.d.d.mts +0 -3
- package/node_modules/es-toolkit/dist/compat/_internal/Equals.d.d.ts +0 -3
- package/node_modules/es-toolkit/dist/compat/_internal/IsWritable.d.d.mts +0 -5
- package/node_modules/es-toolkit/dist/compat/_internal/IsWritable.d.d.ts +0 -5
- package/node_modules/es-toolkit/dist/compat/_internal/MutableList.d.d.mts +0 -6
- package/node_modules/es-toolkit/dist/compat/_internal/MutableList.d.d.ts +0 -6
- package/node_modules/es-toolkit/dist/compat/_internal/RejectReadonly.d.d.mts +0 -6
- package/node_modules/es-toolkit/dist/compat/_internal/RejectReadonly.d.d.ts +0 -6
- package/node_modules/gradient-string/node_modules/chalk/license +0 -9
- package/node_modules/gradient-string/node_modules/chalk/package.json +0 -83
- package/node_modules/gradient-string/node_modules/chalk/readme.md +0 -297
- package/node_modules/gradient-string/node_modules/chalk/source/index.d.ts +0 -325
- package/node_modules/gradient-string/node_modules/chalk/source/index.js +0 -225
- package/node_modules/gradient-string/node_modules/chalk/source/utilities.js +0 -33
- package/node_modules/gradient-string/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +0 -236
- package/node_modules/gradient-string/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -223
- package/node_modules/gradient-string/node_modules/chalk/source/vendor/supports-color/browser.d.ts +0 -1
- package/node_modules/gradient-string/node_modules/chalk/source/vendor/supports-color/browser.js +0 -34
- package/node_modules/gradient-string/node_modules/chalk/source/vendor/supports-color/index.d.ts +0 -55
- package/node_modules/gradient-string/node_modules/chalk/source/vendor/supports-color/index.js +0 -190
- package/node_modules/hasown/.eslintrc +0 -5
- package/node_modules/hosted-git-info/node_modules/lru-cache/LICENSE +0 -15
- package/node_modules/hosted-git-info/node_modules/lru-cache/README.md +0 -331
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/commonjs/index.d.ts +0 -1277
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/commonjs/index.js +0 -1546
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/commonjs/package.json +0 -3
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/esm/index.d.ts +0 -1277
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/esm/index.js +0 -1542
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/esm/index.js.map +0 -1
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/esm/index.min.js +0 -2
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
- package/node_modules/hosted-git-info/node_modules/lru-cache/dist/esm/package.json +0 -3
- package/node_modules/hosted-git-info/node_modules/lru-cache/package.json +0 -116
- package/node_modules/iconv-lite/Changelog.md +0 -241
- package/node_modules/ink-text-input/node_modules/chalk/license +0 -9
- package/node_modules/ink-text-input/node_modules/chalk/package.json +0 -83
- package/node_modules/ink-text-input/node_modules/chalk/readme.md +0 -297
- package/node_modules/ink-text-input/node_modules/chalk/source/index.d.ts +0 -325
- package/node_modules/ink-text-input/node_modules/chalk/source/index.js +0 -225
- package/node_modules/ink-text-input/node_modules/chalk/source/utilities.js +0 -33
- package/node_modules/ink-text-input/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +0 -236
- package/node_modules/ink-text-input/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -223
- package/node_modules/ink-text-input/node_modules/chalk/source/vendor/supports-color/browser.d.ts +0 -1
- package/node_modules/ink-text-input/node_modules/chalk/source/vendor/supports-color/browser.js +0 -34
- package/node_modules/ink-text-input/node_modules/chalk/source/vendor/supports-color/index.d.ts +0 -55
- package/node_modules/ink-text-input/node_modules/chalk/source/vendor/supports-color/index.js +0 -190
- package/node_modules/isexe/LICENSE +0 -15
- package/node_modules/negotiator/HISTORY.md +0 -114
- package/node_modules/path-scurry/node_modules/lru-cache/LICENSE +0 -15
- package/node_modules/path-scurry/node_modules/lru-cache/README.md +0 -331
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.d.ts +0 -1277
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js +0 -1546
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/package.json +0 -3
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts +0 -1277
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.js +0 -1542
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.js.map +0 -1
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js +0 -2
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/package.json +0 -3
- package/node_modules/path-scurry/node_modules/lru-cache/package.json +0 -116
- package/node_modules/qs/.eslintrc +0 -39
- package/node_modules/send/HISTORY.md +0 -580
- package/node_modules/serve-static/HISTORY.md +0 -516
- package/node_modules/string-width-cjs/node_modules/emoji-regex/README.md +0 -73
- package/node_modules/string-width-cjs/node_modules/emoji-regex/es2015/index.js +0 -6
- package/node_modules/string-width-cjs/node_modules/emoji-regex/es2015/text.js +0 -6
- package/node_modules/string-width-cjs/node_modules/emoji-regex/index.d.ts +0 -23
- package/node_modules/string-width-cjs/node_modules/emoji-regex/index.js +0 -6
- package/node_modules/string-width-cjs/node_modules/emoji-regex/package.json +0 -50
- package/node_modules/string-width-cjs/node_modules/emoji-regex/text.js +0 -6
- package/node_modules/wrap-ansi/node_modules/ansi-styles/index.d.ts +0 -236
- package/node_modules/wrap-ansi/node_modules/ansi-styles/index.js +0 -223
- package/node_modules/wrap-ansi/node_modules/ansi-styles/license +0 -9
- package/node_modules/wrap-ansi/node_modules/ansi-styles/package.json +0 -54
- package/node_modules/wrap-ansi/node_modules/ansi-styles/readme.md +0 -173
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/README.md +0 -73
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/es2015/index.js +0 -6
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/es2015/text.js +0 -6
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/index.d.ts +0 -23
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/index.js +0 -6
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/package.json +0 -50
- package/node_modules/wrap-ansi-cjs/node_modules/emoji-regex/text.js +0 -6
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/LICENSE +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/README.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/ansiCodes.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/ansiCodes.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/ansiCodes.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/consts.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/consts.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/consts.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/diff.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/diff.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/diff.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/index.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/reduce.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/reduce.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/reduce.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/styledChars.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/styledChars.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/styledChars.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/tokenize.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/tokenize.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/tokenize.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/undo.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/undo.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/build/undo.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/@alcalzone → @alcalzone}/ansi-tokenize/package.json +0 -0
- /package/node_modules/{string-width-cjs → @isaacs/cliui}/node_modules/emoji-regex/LICENSE-MIT.txt +0 -0
- /package/node_modules/{emoji-regex → @isaacs/cliui/node_modules/emoji-regex}/RGI_Emoji.d.ts +0 -0
- /package/node_modules/{emoji-regex → @isaacs/cliui/node_modules/emoji-regex}/RGI_Emoji.js +0 -0
- /package/node_modules/{emoji-regex → @isaacs/cliui/node_modules/emoji-regex}/es2015/RGI_Emoji.d.ts +0 -0
- /package/node_modules/{emoji-regex → @isaacs/cliui/node_modules/emoji-regex}/es2015/RGI_Emoji.js +0 -0
- /package/node_modules/{emoji-regex → @isaacs/cliui/node_modules/emoji-regex}/es2015/index.d.ts +0 -0
- /package/node_modules/{emoji-regex → @isaacs/cliui/node_modules/emoji-regex}/es2015/text.d.ts +0 -0
- /package/node_modules/{emoji-regex → @isaacs/cliui/node_modules/emoji-regex}/text.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-escapes → @isaacs/cliui/node_modules/string-width}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-styles → @isaacs/cliui/node_modules/wrap-ansi}/license +0 -0
- /package/node_modules/@quantiya/codevibe-core/{node_modules/ink/build/devtools-window-polyfill.d.ts → dist/__tests__/terminal-menu.test.d.ts} +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-escapes → ansi-escapes}/base.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-escapes → ansi-escapes}/base.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-escapes → ansi-escapes}/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-escapes → ansi-escapes}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → ansi-escapes}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-escapes → ansi-escapes}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ansi-escapes → ansi-escapes}/readme.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-boxes → chalk}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/readme.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/utilities.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/vendor/ansi-styles/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules → chalk/source/vendor}/ansi-styles/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/vendor/supports-color/browser.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/vendor/supports-color/browser.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/vendor/supports-color/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/chalk → chalk}/source/vendor/supports-color/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-boxes → cli-boxes}/boxes.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-boxes → cli-boxes}/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-boxes → cli-boxes}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-truncate → cli-boxes}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-boxes → cli-boxes}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-boxes → cli-boxes}/readme.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-truncate → cli-truncate}/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/is-fullwidth-code-point → cli-truncate}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/cli-truncate → cli-truncate}/readme.md +0 -0
- /package/node_modules/{isexe → cross-spawn/node_modules/isexe}/.npmignore +0 -0
- /package/node_modules/{@npmcli/git/node_modules/ini → cross-spawn/node_modules/isexe}/LICENSE +0 -0
- /package/node_modules/{isexe → cross-spawn/node_modules/isexe}/index.js +0 -0
- /package/node_modules/{isexe → cross-spawn/node_modules/isexe}/mode.js +0 -0
- /package/node_modules/{isexe → cross-spawn/node_modules/isexe}/test/basic.js +0 -0
- /package/node_modules/{isexe → cross-spawn/node_modules/isexe}/windows.js +0 -0
- /package/node_modules/{which → cross-spawn/node_modules/which}/CHANGELOG.md +0 -0
- /package/node_modules/{@npmcli/git → cross-spawn}/node_modules/which/LICENSE +0 -0
- /package/node_modules/{which → cross-spawn/node_modules/which}/bin/node-which +0 -0
- /package/node_modules/{which → cross-spawn/node_modules/which}/which.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/ini → ini}/lib/ini.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/ansi-tokenizer.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/ansi-tokenizer.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/ansi-tokenizer.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/colorize.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/colorize.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/colorize.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AccessibilityContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AccessibilityContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AccessibilityContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AnimationContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AnimationContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AnimationContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/App.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/App.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/App.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AppContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AppContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/AppContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/BackgroundContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/BackgroundContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/BackgroundContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Box.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Box.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Box.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/CursorContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/CursorContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/CursorContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/ErrorBoundary.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/ErrorBoundary.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/ErrorBoundary.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/ErrorOverview.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/ErrorOverview.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/ErrorOverview.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/FocusContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/FocusContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/FocusContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Newline.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Newline.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Newline.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Spacer.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Spacer.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Spacer.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Static.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Static.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Static.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StderrContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StderrContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StderrContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StdinContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StdinContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StdinContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StdoutContext.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StdoutContext.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/StdoutContext.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Text.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Text.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Text.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Transform.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Transform.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/components/Transform.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/cursor-helpers.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/cursor-helpers.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/cursor-helpers.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/devtools-window-polyfill.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/devtools-window-polyfill.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/devtools.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/devtools.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/devtools.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/dom.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/dom.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/dom.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/get-max-width.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/get-max-width.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/get-max-width.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-animation.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-animation.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-animation.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-app.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-app.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-app.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-box-metrics.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-box-metrics.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-box-metrics.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-cursor.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-cursor.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-cursor.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-focus-manager.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-focus-manager.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-focus-manager.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-focus.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-focus.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-focus.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-input.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-input.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-input.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-is-screen-reader-enabled.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-is-screen-reader-enabled.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-is-screen-reader-enabled.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-paste.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-paste.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-paste.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stderr.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stderr.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stderr.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stdin.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stdin.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stdin.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stdout.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stdout.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-stdout.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-window-size.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-window-size.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/hooks/use-window-size.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/index.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/ink.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/ink.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/ink.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/input-parser.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/input-parser.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/input-parser.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/instances.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/instances.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/instances.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/kitty-keyboard.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/kitty-keyboard.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/kitty-keyboard.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/log-update.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/log-update.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/log-update.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/measure-element.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/measure-element.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/measure-element.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/measure-text.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/measure-text.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/measure-text.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/output.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/output.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/output.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/parse-keypress.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/parse-keypress.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/parse-keypress.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/reconciler.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/reconciler.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/reconciler.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-background.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-background.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-background.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-border.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-border.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-border.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-node-to-output.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-node-to-output.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-node-to-output.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-to-string.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-to-string.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render-to-string.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/render.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/renderer.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/renderer.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/renderer.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/sanitize-ansi.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/sanitize-ansi.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/sanitize-ansi.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/squash-text-nodes.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/squash-text-nodes.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/squash-text-nodes.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/styles.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/styles.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/styles.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/utils.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/utils.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/utils.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/wrap-text.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/wrap-text.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/wrap-text.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/write-synchronized.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/write-synchronized.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/build/write-synchronized.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core → ink}/node_modules/signal-exit/LICENSE.txt +0 -0
- /package/node_modules/{@quantiya/codevibe-core → ink}/node_modules/signal-exit/README.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core → ink}/node_modules/signal-exit/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core → ink}/node_modules/signal-exit/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core → ink}/node_modules/signal-exit/signals.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/ink → ink}/readme.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/is-in-ci → is-in-ci}/cli.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/is-in-ci → is-in-ci}/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/is-in-ci → is-in-ci}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/is-in-ci → is-in-ci}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/is-in-ci → is-in-ci}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/is-in-ci → is-in-ci}/readme.md +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/LICENSE.md +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/index.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/index.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/index.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/index.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/index.min.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/index.min.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/options.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/options.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/options.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/options.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/package.json +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/posix.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/posix.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/posix.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/posix.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/win32.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/win32.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/win32.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/commonjs/win32.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/index.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/index.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/index.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/index.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/index.min.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/index.min.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/options.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/options.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/options.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/options.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/package.json +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/posix.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/posix.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/posix.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/posix.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/win32.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/win32.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/win32.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/isexe → isexe}/dist/esm/win32.js.map +0 -0
- /package/node_modules/{@npmcli/package-json/node_modules/json-parse-even-better-errors → json-parse-even-better-errors}/LICENSE.md +0 -0
- /package/node_modules/{@npmcli/package-json/node_modules/json-parse-even-better-errors → json-parse-even-better-errors}/README.md +0 -0
- /package/node_modules/{@npmcli/package-json/node_modules/json-parse-even-better-errors → json-parse-even-better-errors}/lib/index.js +0 -0
- /package/node_modules/{@npmcli/package-json/node_modules/json-parse-even-better-errors → json-parse-even-better-errors}/package.json +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/LICENSE.md +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/README.md +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/common.gypi +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/except.gypi +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/index.js +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/napi-inl.deprecated.h +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/napi-inl.h +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/napi.h +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/node_api.gyp +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/noexcept.gypi +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/nothing.c +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/package-support.json +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/package.json +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/tools/README.md +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/tools/check-napi.js +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/tools/clang-format.js +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/tools/conversion.js +0 -0
- /package/node_modules/{node-addon-api → keytar/node_modules/node-addon-api}/tools/eslint-format.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/LICENSE +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/README.md +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/commonjs/index.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/commonjs/index.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/commonjs/index.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/commonjs/index.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/commonjs/index.min.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/commonjs/index.min.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/commonjs/package.json +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/esm/index.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/esm/index.d.ts.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/esm/index.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/esm/index.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/esm/index.min.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/esm/index.min.js.map +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/dist/esm/package.json +0 -0
- /package/node_modules/{@npmcli/git/node_modules/lru-cache → lru-cache}/package.json +0 -0
- /package/node_modules/{@npmcli/promise-spawn/node_modules/which → rc/node_modules/ini}/LICENSE +0 -0
- /package/node_modules/{ini → rc/node_modules/ini}/ini.js +0 -0
- /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/index.js +0 -0
- /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/license +0 -0
- /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/package.json +0 -0
- /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/readme.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/LICENSE +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/README.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-compiler-runtime.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-compiler-runtime.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-compiler-runtime.profiling.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-dev-runtime.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-dev-runtime.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-dev-runtime.profiling.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-dev-runtime.react-server.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-dev-runtime.react-server.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-runtime.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-runtime.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-runtime.profiling.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-runtime.react-server.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/cjs/react-jsx-runtime.react-server.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/compiler-runtime.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/jsx-dev-runtime.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/jsx-dev-runtime.react-server.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/jsx-runtime.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/jsx-runtime.react-server.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react → react}/react.react-server.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/README.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/backend.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/backend.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/backend.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/importFile.worker.worker.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/importFile.worker.worker.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/parseHookNames.chunk.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/parseHookNames.chunk.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/parseSourceAndMetadata.worker.worker.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/parseSourceAndMetadata.worker.worker.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/standalone.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/standalone.js.LICENSE.txt +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/dist/standalone.js.map +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/LICENSE +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/README.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/browser.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/buffer-util.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/constants.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/event-target.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/extension.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/limiter.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/permessage-deflate.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/sender.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/stream.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/node_modules/ws/lib/validation.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-devtools-core → react-devtools-core}/standalone.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/LICENSE +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/README.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/cjs/react-reconciler-constants.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/cjs/react-reconciler-constants.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/cjs/react-reconciler-reflection.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/cjs/react-reconciler-reflection.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/cjs/react-reconciler.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/cjs/react-reconciler.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/cjs/react-reconciler.profiling.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/constants.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/react-reconciler → react-reconciler}/reflection.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/LICENSE +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/README.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler-unstable_mock.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler-unstable_mock.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler-unstable_post_task.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler-unstable_post_task.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler.native.development.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler.native.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/cjs/scheduler.production.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/index.native.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/unstable_mock.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/scheduler → scheduler}/unstable_post_task.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/slice-ansi → slice-ansi}/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/slice-ansi → slice-ansi}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/slice-ansi → slice-ansi}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/slice-ansi → slice-ansi}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/slice-ansi → slice-ansi}/readme.md +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/slice-ansi → slice-ansi}/tokenize-ansi.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core → string-width-cjs}/node_modules/is-fullwidth-code-point/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/license-cc0 +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/license-mit +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/absolute.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/all-extend.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/all-union-fields.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/and-all.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/and.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-element.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-indices.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-length.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-reverse.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-slice.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-splice.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-tail.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/array-values.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/arrayable.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/async-return-type.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/asyncify.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/basic.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/camel-case.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/camel-cased-properties-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/camel-cased-properties.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/characters.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/conditional-except.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/conditional-keys.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/conditional-pick-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/conditional-pick.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/conditional-simplify-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/conditional-simplify.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/delimiter-cased-properties-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/delimiter-cased-properties.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/distributed-omit.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/distributed-pick.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/empty-object.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/entries.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/entry.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/exact.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/except.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/exclude-exactly.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/exclude-rest-element.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/exclude-strict.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/exclusify-union.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/extends-strict.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/extract-exactly.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/extract-rest-element.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/extract-strict.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/find-global-type.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/fixed-length-array.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/global-this.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/globals/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/globals/observable-like.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/greater-than-or-equal.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/greater-than.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/has-optional-keys.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/has-readonly-keys.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/has-required-keys.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/has-writable-keys.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/if-any.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/if-empty-object.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/if-never.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/if-null.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/if-unknown.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/if.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/includes.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/int-closed-range.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/int-range.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/array.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/characters.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/enforce-optional.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/keys.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/numeric.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/string.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/tuple.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/internal/type.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/invariant-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-any.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-equal.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-float.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-integer.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-lowercase.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-never.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-null.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-nullable.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-optional-key-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-optional.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-readonly-key-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-required-key-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-tuple.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-undefined.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-union.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-unknown.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-uppercase.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/is-writable-key-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/iterable-element.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/join.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/json-value.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/jsonifiable.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/kebab-case.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/kebab-cased-properties-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/kebab-cased-properties.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/key-as-string.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/keys-of-union.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/last-array-element.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/less-than-or-equal.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/less-than.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/literal-to-primitive-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/literal-to-primitive.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/literal-union.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/merge-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/merge-exclusive.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/merge.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/multidimensional-array.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/multidimensional-readonly-array.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/non-empty-object.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/non-empty-string.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/non-empty-tuple.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/non-nullable-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/numeric.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/object-merge.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/omit-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/omit-index-signature.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/opaque.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/optional-keys-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/optional.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/or-all.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/or.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/override-properties.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/package-json.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/partial-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/partial-on-undefined-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/pascal-case.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/pascal-cased-properties-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/pascal-cased-properties.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/paths.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/pick-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/pick-index-signature.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/primitive.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/promisable.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/readonly-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/readonly-keys-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/readonly-tuple.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/replace.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/require-all-or-none.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/require-at-least-one.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/require-exactly-one.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/require-one-or-none.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/required-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/required-keys-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/schema.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/screaming-snake-case.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-field-type.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-non-nullable-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-non-nullable.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-optional.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-parameter-type.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-readonly.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-required-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-required.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/set-return-type.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/shared-union-fields.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/simplify-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/simplify.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/single-key-object.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/snake-case.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/snake-cased-properties-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/snake-cased-properties.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/some-extend.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/split-on-rest-element.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/spread.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/string-length.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/string-slice.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/string-to-number.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/stringified.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/structured-cloneable.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/subtract.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/sum.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/tagged-union.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/tagged.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/trim.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/tuple-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/tuple-to-object.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/tuple-to-union.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/undefined-on-partial-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/union-length.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/union-member.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/union-to-intersection.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/union-to-tuple.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/unknown-array.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/unknown-map.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/unknown-record.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/unknown-set.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/unwrap-partial.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/unwrap-required.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/value-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/words.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/writable-deep.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/writable-keys-of.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/type-fest → type-fest}/source/xor.d.ts +0 -0
- /package/node_modules/{@npmcli/git/node_modules/which → which}/bin/which.js +0 -0
- /package/node_modules/{@npmcli/git/node_modules/which → which}/lib/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/widest-line → widest-line}/index.d.ts +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/widest-line → widest-line}/index.js +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/string-width → widest-line}/license +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/widest-line → widest-line}/package.json +0 -0
- /package/node_modules/{@quantiya/codevibe-core/node_modules/widest-line → widest-line}/readme.md +0 -0
package/dist/server.js
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
"use strict";var kt=Object.create;var re=Object.defineProperty;var Ft=Object.getOwnPropertyDescriptor;var Dt=Object.getOwnPropertyNames;var Nt=Object.getPrototypeOf,Mt=Object.prototype.hasOwnProperty;var Lt=(o,t)=>{for(var e in t)re(o,e,{get:t[e],enumerable:!0})},Be=(o,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Dt(t))!Mt.call(o,s)&&s!==e&&re(o,s,{get:()=>t[s],enumerable:!(i=Ft(t,s))||i.enumerable});return o};var R=(o,t,e)=>(e=o!=null?kt(Nt(o)):{},Be(t||!o||!o.__esModule?re(e,"default",{value:o,enumerable:!0}):e,o)),Kt=o=>Be(re({},"__esModule",{value:!0}),o);var Bi={};Lt(Bi,{CodexCompanionServer:()=>Pe,TERMINAL_SHUTDOWN_SIGNALS:()=>Rt,classifyTmuxHasSessionError:()=>_t,extractShellCommandFromPromptText:()=>Tt,extractShellCommandPartsFromPromptText:()=>Ke,restoreCodexPersistOptionCommand:()=>Ct,shellCommandPartsMatchExpected:()=>xt});module.exports=Kt(Bi);var se=require("uuid"),Se=R(require("crypto")),H=R(require("fs")),k=R(require("path")),De=R(require("os")),Me=require("util"),Ie=require("child_process"),Le=require("shell-quote"),m=require("@quantiya/codevibe-core");var qe=R(require("os")),Ue=R(require("path")),$e=require("@quantiya/codevibe-core"),a=(0,$e.createLogger)({name:"codevibe-codex",logFile:Ue.default.join(qe.default.tmpdir(),"codevibe-codex-mcp.log"),level:"debug"});var He=require("events"),w=R(require("fs")),N=R(require("path")),ze=require("string_decoder"),We=require("chokidar"),je=require("@quantiya/codevibe-core");var we=256*1024,Bt=64*1024*1024,qt=16*1024*1024,Ut=64*1024;function $t(o=process.env){let t=o.CODEX_HOME?.trim();return t?N.resolve(t,"sessions"):(0,je.getConfig)().codex.sessionsDir}var ne=class extends He.EventEmitter{constructor(e={}){super();this.watcher=null;this.filePositions=new Map;this.activeLogFile=null;this.sessionId=null;this.isWatching=!1;this.startTime=0;this.sessionsDir=null;this.activeReads=new Map;this.pendingReads=new Set;this.readGeneration=0;this.oversizedRecordFiles=new Set;this.fileIdentities=new Map;this.bindSource=null;this.authoritativeSessionId=null;this.pendingTranscriptBind=null;this.transcriptBindGeneration=0;this.transcriptBindingsClosed=!1;this.activeTranscriptAdmissions=new Set;this.startBaselines=new Map;if(this.maxBacklogBytes=e.maxBacklogBytes??Bt,this.maxRecordBytes=e.maxRecordBytes??qt,!Number.isSafeInteger(this.maxBacklogBytes)||this.maxBacklogBytes<=0)throw new RangeError("maxBacklogBytes must be a positive safe integer");if(!Number.isSafeInteger(this.maxRecordBytes)||this.maxRecordBytes<=0)throw new RangeError("maxRecordBytes must be a positive safe integer")}start(){if(this.isWatching){a.warn("Session log watcher already running");return}this.transcriptBindGeneration++,this.transcriptBindingsClosed=!1;let e=$t();this.sessionsDir=e,a.info("Starting Codex session log watcher",{sessionsDir:e}),w.existsSync(e)||(a.info("Codex sessions directory does not exist yet, creating...",{sessionsDir:e}),w.mkdirSync(e,{recursive:!0})),this.startTime=Date.now(),this.readGeneration++,this.bindSource=null,this.authoritativeSessionId=null,this.snapshotStartBaselines(e),this.drainPendingTranscriptBind(),this.watcher=(0,We.watch)(e,{persistent:!0,ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:100,pollInterval:50},depth:4,ignored:i=>{let s=N.basename(i);return w.existsSync(i)&&w.statSync(i).isDirectory()?!1:!s.startsWith("rollout-")||!s.endsWith(".jsonl")}}),this.watcher.on("add",i=>{i.endsWith(".jsonl")&&this.onFileAdded(i)}),this.watcher.on("change",i=>{i.endsWith(".jsonl")&&this.onFileChanged(i)}),this.watcher.on("error",i=>{a.error("Watcher error:",i),this.emit("error",i)}),this.watcher.on("ready",()=>{a.info("Session log watcher ready"),this.activeLogFile||a.debug("No authoritative transcript hook received yet; rollout watcher remains fail-closed")}),this.isWatching=!0,a.info("Session log watcher started")}stop(){this.transcriptBindingsClosed=!0,this.transcriptBindGeneration++,this.watcher&&(this.watcher.close(),this.watcher=null),this.isWatching=!1,this.readGeneration++,this.filePositions.clear(),this.activeReads.clear(),this.pendingReads.clear(),this.oversizedRecordFiles.clear(),this.activeLogFile=null,this.sessionId=null,this.sessionsDir=null,this.bindSource=null,this.authoritativeSessionId=null,this.pendingTranscriptBind&&(this.pendingTranscriptBind.resolve({status:"rejected",reason:"watcher_stopped"}),this.pendingTranscriptBind=null),this.startBaselines.clear(),this.fileIdentities.clear(),a.info("Session log watcher stopped")}async waitForTranscriptAdmissions(){for(;this.activeTranscriptAdmissions.size>0;)await Promise.all(Array.from(this.activeTranscriptAdmissions,e=>e.then(()=>{},()=>{})))}getSessionId(){return this.sessionId}getActiveLogFile(){return this.activeLogFile}getBindSource(){return this.bindSource}getAuthoritativeSessionId(){return this.authoritativeSessionId}tryRealpath(e){try{return w.realpathSync(e)}catch{return null}}isInteractiveRollout(e){return!(!e||e.originator==="codex_exec"||e.threadSource==="subagent"||e.sourceSubagent)}identityOf(e){return{dev:e.dev,ino:e.ino}}identitiesEqual(e,i){return e.dev===i.dev&&e.ino===i.ino}computeSeedOffset(e){let i;try{i=w.statSync(e)}catch{return 0}if(this.getSessionAgeMs(e,i)>=this.startTime)return 0;let r=this.startBaselines.get(e);return r&&this.identitiesEqual(r.identity,this.identityOf(i))?r.size:i.size}applyBind(e,i){this.readGeneration++,this.activeReads.delete(e),this.pendingReads.delete(e),this.activeLogFile=e,this.bindSource=i,i==="heuristic"&&(this.authoritativeSessionId=null),this.filePositions.has(e)||this.filePositions.set(e,this.computeSeedOffset(e));try{this.fileIdentities.set(e,this.identityOf(w.statSync(e)))}catch{this.fileIdentities.delete(e)}this.scheduleReadNewLines(e)}bindToFile(e){let i=this.tryRealpath(e);if(!i){a.warn("bindToFile: could not canonicalize path; skipping",{filePath:e});return}if(i===this.activeLogFile){this.bindSource="authoritative";return}a.info("bindToFile: authoritative bind to session rollout",{filePath:i}),this.applyBind(i,"authoritative")}async bindToSessionTranscript(e,i){if(typeof e!="string"||e.length===0)return{status:"rejected",reason:"missing_transcript_path"};if(this.transcriptBindingsClosed)return{status:"rejected",reason:"watcher_stopped"};if(!this.sessionsDir){let s=this.pendingTranscriptBind;if(s)return s.transcriptPath===e&&s.expectedSessionId===i?{status:"pending",completion:s.completion}:(a.warn("bindToSessionTranscript: conflicting startup bind rejected",{transcriptPath:e,expectedSessionId:i,pendingExpectedSessionId:s.expectedSessionId}),{status:"rejected",reason:"conflicting_startup_bind"});let r,n=new Promise(l=>{r=l});return this.pendingTranscriptBind={transcriptPath:e,expectedSessionId:i,completion:n,resolve:r},a.debug("bindToSessionTranscript: watcher not started yet; queued pending authoritative bind",{transcriptPath:e,expectedSessionId:i}),{status:"pending",completion:n}}return this.trackTranscriptAdmission(this.validateAndBindSessionTranscript(e,i,this.transcriptBindGeneration))}trackTranscriptAdmission(e){let i;return i=e.finally(()=>{this.activeTranscriptAdmissions.delete(i)}),this.activeTranscriptAdmissions.add(i),i}isTranscriptAdmissionCurrent(e,i){return!this.transcriptBindingsClosed&&this.transcriptBindGeneration===e&&this.sessionsDir===i}async validateAndBindSessionTranscript(e,i,s){let r=this.sessionsDir;if(!r||!this.isTranscriptAdmissionCurrent(s,r))return{status:"rejected",reason:"watcher_not_started"};let n=this.tryRealpath(e),l=this.tryRealpath(r);if(!n||!l)return{status:"rejected",reason:"canonicalization_failed"};let p=N.relative(l,n);if(p===".."||p.startsWith(".."+N.sep)||N.isAbsolute(p))return a.warn("bindToSessionTranscript: path not under sessionsDir; rejecting",{transcriptPath:n}),{status:"rejected",reason:"outside_sessions_directory"};let d=N.basename(n);if(!d.startsWith("rollout-")||!d.endsWith(".jsonl"))return{status:"rejected",reason:"invalid_rollout_filename"};let c=null;for(let u=0;u<3;u++){if(!this.isTranscriptAdmissionCurrent(s,r))return{status:"rejected",reason:"watcher_stopped"};if(c=this.readSessionMeta(n),c)break;if(await new Promise(f=>setTimeout(f,20)),!this.isTranscriptAdmissionCurrent(s,r))return{status:"rejected",reason:"watcher_stopped"}}return!c||c.id!==i?(a.debug("bindToSessionTranscript: meta missing or id mismatch; not binding",{transcriptPath:n,metaId:c?.id,expectedSessionId:i}),{status:"rejected",reason:"session_metadata_mismatch"}):this.isInteractiveRollout(c)?this.isTranscriptAdmissionCurrent(s,r)?(this.bindToFile(n),this.authoritativeSessionId=i,{status:"bound"}):{status:"rejected",reason:"watcher_stopped"}:(a.debug("bindToSessionTranscript: non-interactive rollout (codex_exec/subagent); not binding",{transcriptPath:n,originator:c.originator,threadSource:c.threadSource}),{status:"rejected",reason:"non_interactive_rollout"})}async drainPendingTranscriptBind(){let e=this.pendingTranscriptBind;if(!e)return;this.pendingTranscriptBind=null;let i;try{this.transcriptBindingsClosed?i={status:"rejected",reason:"watcher_stopped"}:i=await this.trackTranscriptAdmission(this.validateAndBindSessionTranscript(e.transcriptPath,e.expectedSessionId,this.transcriptBindGeneration))}catch(s){a.warn("bindToSessionTranscript: pending startup bind failed",{expectedSessionId:e.expectedSessionId,error:s instanceof Error?s.message:String(s)}),i={status:"rejected",reason:"startup_bind_failed"}}e.resolve(i)}onFileAdded(e){let i=this.tryRealpath(e);i&&(i===this.activeLogFile?this.scheduleReadNewLines(i):a.debug("Ignoring unowned rollout add; awaiting authoritative hook binding",{filePath:i}))}onFileChanged(e){let i=this.tryRealpath(e);i&&(this.activeLogFile&&i!==this.activeLogFile||this.activeLogFile&&this.scheduleReadNewLines(i))}readSessionMeta(e){let i=this.readFirstLogEntry(e);if(!i)return null;let s=i.payload||{};return{id:typeof s.id=="string"?s.id:void 0,timestamp:typeof i.timestamp=="string"?i.timestamp:void 0,originator:typeof s.originator=="string"?s.originator:void 0,cwd:typeof s.cwd=="string"?s.cwd:void 0,threadSource:typeof s.thread_source=="string"?s.thread_source:void 0,sourceSubagent:!!(s.source&&typeof s.source=="object"&&s.source.subagent)}}readFirstLogEntry(e){let i=null;try{i=w.openSync(e,"r");let s=new ze.StringDecoder("utf8"),r=Buffer.alloc(64*1024),n="",l=0,p=-1;for(;l<we;){let c=w.readSync(i,r,0,r.length,l);if(c<=0||(l+=c,n+=s.write(r.subarray(0,c)),p=n.indexOf(`
|
|
2
|
-
`),p!==-1))break}n+=s.end();let d=p===-1?n:n.slice(0,p);return d.trim()?JSON.parse(d):null}catch{return null}finally{if(i!==null)try{w.closeSync(i)}catch{}}}snapshotStartBaselines(e){this.startBaselines.clear();try{for(let{filePath:i,size:s}of this.collectRecentSessionFiles(e,!0)){let r=this.tryRealpath(i);if(r)try{let n=w.statSync(r);this.startBaselines.set(r,{size:s,identity:this.identityOf(n)})}catch{}}}catch{}}getSessionAgeMs(e,i){let s=this.readSessionMeta(e);if(s?.timestamp){let r=Date.parse(s.timestamp);if(!Number.isNaN(r))return r}return i.birthtimeMs||i.ctimeMs}collectRecentSessionFiles(e,i=!1){let s=[],r=[e];for(;r.length>0;){let n=r.pop();if(!n)continue;let l;try{l=w.readdirSync(n,{withFileTypes:!0})}catch{continue}for(let p of l){let d=
|
|
3
|
-
`).trim()}function
|
|
1
|
+
"use strict";var Dt=Object.create;var oe=Object.defineProperty;var Mt=Object.getOwnPropertyDescriptor;var Nt=Object.getOwnPropertyNames;var Lt=Object.getPrototypeOf,Kt=Object.prototype.hasOwnProperty;var Bt=(o,t)=>{for(var e in t)oe(o,e,{get:t[e],enumerable:!0})},Ue=(o,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Nt(t))!Kt.call(o,s)&&s!==e&&oe(o,s,{get:()=>t[s],enumerable:!(i=Mt(t,s))||i.enumerable});return o};var R=(o,t,e)=>(e=o!=null?Dt(Lt(o)):{},Ue(t||!o||!o.__esModule?oe(e,"default",{value:o,enumerable:!0}):e,o)),qt=o=>Ue(oe({},"__esModule",{value:!0}),o);var Ui={};Bt(Ui,{CodexCompanionServer:()=>be,TERMINAL_SHUTDOWN_SIGNALS:()=>Tt,classifyTmuxHasSessionError:()=>xt,extractShellCommandFromPromptText:()=>Ct,extractShellCommandPartsFromPromptText:()=>qe,restoreCodexPersistOptionCommand:()=>At,shellCommandPartsMatchExpected:()=>Ot});module.exports=qt(Ui);var J=require("uuid"),Ie=R(require("crypto")),H=R(require("fs")),k=R(require("path")),Ne=R(require("os")),Ke=require("util"),we=require("child_process"),Be=require("shell-quote"),m=require("@quantiya/codevibe-core");var $e=R(require("os")),He=R(require("path")),ze=require("@quantiya/codevibe-core"),a=(0,ze.createLogger)({name:"codevibe-codex",logFile:He.default.join($e.default.tmpdir(),"codevibe-codex-mcp.log"),level:"debug"});var We=require("events"),w=R(require("fs")),M=R(require("path")),je=require("string_decoder"),Ge=require("chokidar"),Ve=require("@quantiya/codevibe-core");var Re=256*1024,Ut=64*1024*1024,$t=16*1024*1024,Ht=64*1024;function zt(o=process.env){let t=o.CODEX_HOME?.trim();return t?M.resolve(t,"sessions"):(0,Ve.getConfig)().codex.sessionsDir}var ae=class extends We.EventEmitter{constructor(e={}){super();this.watcher=null;this.filePositions=new Map;this.activeLogFile=null;this.sessionId=null;this.isWatching=!1;this.startTime=0;this.sessionsDir=null;this.activeReads=new Map;this.pendingReads=new Set;this.readGeneration=0;this.oversizedRecordFiles=new Set;this.fileIdentities=new Map;this.bindSource=null;this.authoritativeSessionId=null;this.pendingTranscriptBind=null;this.transcriptBindGeneration=0;this.transcriptBindingsClosed=!1;this.activeTranscriptAdmissions=new Set;this.startBaselines=new Map;if(this.maxBacklogBytes=e.maxBacklogBytes??Ut,this.maxRecordBytes=e.maxRecordBytes??$t,!Number.isSafeInteger(this.maxBacklogBytes)||this.maxBacklogBytes<=0)throw new RangeError("maxBacklogBytes must be a positive safe integer");if(!Number.isSafeInteger(this.maxRecordBytes)||this.maxRecordBytes<=0)throw new RangeError("maxRecordBytes must be a positive safe integer")}start(){if(this.isWatching){a.warn("Session log watcher already running");return}this.transcriptBindGeneration++,this.transcriptBindingsClosed=!1;let e=zt();this.sessionsDir=e,a.info("Starting Codex session log watcher",{sessionsDir:e}),w.existsSync(e)||(a.info("Codex sessions directory does not exist yet, creating...",{sessionsDir:e}),w.mkdirSync(e,{recursive:!0})),this.startTime=Date.now(),this.readGeneration++,this.bindSource=null,this.authoritativeSessionId=null,this.snapshotStartBaselines(e),this.drainPendingTranscriptBind(),this.watcher=(0,Ge.watch)(e,{persistent:!0,ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:100,pollInterval:50},depth:4,ignored:i=>{let s=M.basename(i);return w.existsSync(i)&&w.statSync(i).isDirectory()?!1:!s.startsWith("rollout-")||!s.endsWith(".jsonl")}}),this.watcher.on("add",i=>{i.endsWith(".jsonl")&&this.onFileAdded(i)}),this.watcher.on("change",i=>{i.endsWith(".jsonl")&&this.onFileChanged(i)}),this.watcher.on("error",i=>{a.error("Watcher error:",i),this.emit("error",i)}),this.watcher.on("ready",()=>{a.info("Session log watcher ready"),this.activeLogFile||a.debug("No authoritative transcript hook received yet; rollout watcher remains fail-closed")}),this.isWatching=!0,a.info("Session log watcher started")}stop(){this.transcriptBindingsClosed=!0,this.transcriptBindGeneration++,this.watcher&&(this.watcher.close(),this.watcher=null),this.isWatching=!1,this.readGeneration++,this.filePositions.clear(),this.activeReads.clear(),this.pendingReads.clear(),this.oversizedRecordFiles.clear(),this.activeLogFile=null,this.sessionId=null,this.sessionsDir=null,this.bindSource=null,this.authoritativeSessionId=null,this.pendingTranscriptBind&&(this.pendingTranscriptBind.resolve({status:"rejected",reason:"watcher_stopped"}),this.pendingTranscriptBind=null),this.startBaselines.clear(),this.fileIdentities.clear(),a.info("Session log watcher stopped")}async waitForTranscriptAdmissions(){for(;this.activeTranscriptAdmissions.size>0;)await Promise.all(Array.from(this.activeTranscriptAdmissions,e=>e.then(()=>{},()=>{})))}getSessionId(){return this.sessionId}getActiveLogFile(){return this.activeLogFile}getBindSource(){return this.bindSource}getAuthoritativeSessionId(){return this.authoritativeSessionId}tryRealpath(e){try{return w.realpathSync(e)}catch{return null}}isInteractiveRollout(e){return!(!e||e.originator==="codex_exec"||e.threadSource==="subagent"||e.sourceSubagent)}identityOf(e){return{dev:e.dev,ino:e.ino}}identitiesEqual(e,i){return e.dev===i.dev&&e.ino===i.ino}computeSeedOffset(e){let i;try{i=w.statSync(e)}catch{return 0}if(this.getSessionAgeMs(e,i)>=this.startTime)return 0;let r=this.startBaselines.get(e);return r&&this.identitiesEqual(r.identity,this.identityOf(i))?r.size:i.size}applyBind(e,i){this.readGeneration++,this.activeReads.delete(e),this.pendingReads.delete(e),this.activeLogFile=e,this.bindSource=i,i==="heuristic"&&(this.authoritativeSessionId=null),this.filePositions.has(e)||this.filePositions.set(e,this.computeSeedOffset(e));try{this.fileIdentities.set(e,this.identityOf(w.statSync(e)))}catch{this.fileIdentities.delete(e)}this.scheduleReadNewLines(e)}bindToFile(e){let i=this.tryRealpath(e);if(!i){a.warn("bindToFile: could not canonicalize path; skipping",{filePath:e});return}if(i===this.activeLogFile){this.bindSource="authoritative";return}a.info("bindToFile: authoritative bind to session rollout",{filePath:i}),this.applyBind(i,"authoritative")}async bindToSessionTranscript(e,i){if(typeof e!="string"||e.length===0)return{status:"rejected",reason:"missing_transcript_path"};if(this.transcriptBindingsClosed)return{status:"rejected",reason:"watcher_stopped"};if(!this.sessionsDir){let s=this.pendingTranscriptBind;if(s)return s.transcriptPath===e&&s.expectedSessionId===i?{status:"pending",completion:s.completion}:(a.warn("bindToSessionTranscript: conflicting startup bind rejected",{transcriptPath:e,expectedSessionId:i,pendingExpectedSessionId:s.expectedSessionId}),{status:"rejected",reason:"conflicting_startup_bind"});let r,n=new Promise(l=>{r=l});return this.pendingTranscriptBind={transcriptPath:e,expectedSessionId:i,completion:n,resolve:r},a.debug("bindToSessionTranscript: watcher not started yet; queued pending authoritative bind",{transcriptPath:e,expectedSessionId:i}),{status:"pending",completion:n}}return this.trackTranscriptAdmission(this.validateAndBindSessionTranscript(e,i,this.transcriptBindGeneration))}trackTranscriptAdmission(e){let i;return i=e.finally(()=>{this.activeTranscriptAdmissions.delete(i)}),this.activeTranscriptAdmissions.add(i),i}isTranscriptAdmissionCurrent(e,i){return!this.transcriptBindingsClosed&&this.transcriptBindGeneration===e&&this.sessionsDir===i}async validateAndBindSessionTranscript(e,i,s){let r=this.sessionsDir;if(!r||!this.isTranscriptAdmissionCurrent(s,r))return{status:"rejected",reason:"watcher_not_started"};let n=this.tryRealpath(e),l=this.tryRealpath(r);if(!n||!l)return{status:"rejected",reason:"canonicalization_failed"};let p=M.relative(l,n);if(p===".."||p.startsWith(".."+M.sep)||M.isAbsolute(p))return a.warn("bindToSessionTranscript: path not under sessionsDir; rejecting",{transcriptPath:n}),{status:"rejected",reason:"outside_sessions_directory"};let d=M.basename(n);if(!d.startsWith("rollout-")||!d.endsWith(".jsonl"))return{status:"rejected",reason:"invalid_rollout_filename"};let u=null;for(let c=0;c<3;c++){if(!this.isTranscriptAdmissionCurrent(s,r))return{status:"rejected",reason:"watcher_stopped"};if(u=this.readSessionMeta(n),u)break;if(await new Promise(f=>setTimeout(f,20)),!this.isTranscriptAdmissionCurrent(s,r))return{status:"rejected",reason:"watcher_stopped"}}return!u||u.id!==i?(a.debug("bindToSessionTranscript: meta missing or id mismatch; not binding",{transcriptPath:n,metaId:u?.id,expectedSessionId:i}),{status:"rejected",reason:"session_metadata_mismatch"}):this.isInteractiveRollout(u)?this.isTranscriptAdmissionCurrent(s,r)?(this.bindToFile(n),this.authoritativeSessionId=i,{status:"bound"}):{status:"rejected",reason:"watcher_stopped"}:(a.debug("bindToSessionTranscript: non-interactive rollout (codex_exec/subagent); not binding",{transcriptPath:n,originator:u.originator,threadSource:u.threadSource}),{status:"rejected",reason:"non_interactive_rollout"})}async drainPendingTranscriptBind(){let e=this.pendingTranscriptBind;if(!e)return;this.pendingTranscriptBind=null;let i;try{this.transcriptBindingsClosed?i={status:"rejected",reason:"watcher_stopped"}:i=await this.trackTranscriptAdmission(this.validateAndBindSessionTranscript(e.transcriptPath,e.expectedSessionId,this.transcriptBindGeneration))}catch(s){a.warn("bindToSessionTranscript: pending startup bind failed",{expectedSessionId:e.expectedSessionId,error:s instanceof Error?s.message:String(s)}),i={status:"rejected",reason:"startup_bind_failed"}}e.resolve(i)}onFileAdded(e){let i=this.tryRealpath(e);i&&(i===this.activeLogFile?this.scheduleReadNewLines(i):a.debug("Ignoring unowned rollout add; awaiting authoritative hook binding",{filePath:i}))}onFileChanged(e){let i=this.tryRealpath(e);i&&(this.activeLogFile&&i!==this.activeLogFile||this.activeLogFile&&this.scheduleReadNewLines(i))}readSessionMeta(e){let i=this.readFirstLogEntry(e);if(!i)return null;let s=i.payload||{};return{id:typeof s.id=="string"?s.id:void 0,timestamp:typeof i.timestamp=="string"?i.timestamp:void 0,originator:typeof s.originator=="string"?s.originator:void 0,cwd:typeof s.cwd=="string"?s.cwd:void 0,threadSource:typeof s.thread_source=="string"?s.thread_source:void 0,sourceSubagent:!!(s.source&&typeof s.source=="object"&&s.source.subagent)}}readFirstLogEntry(e){let i=null;try{i=w.openSync(e,"r");let s=new je.StringDecoder("utf8"),r=Buffer.alloc(64*1024),n="",l=0,p=-1;for(;l<Re;){let u=w.readSync(i,r,0,r.length,l);if(u<=0||(l+=u,n+=s.write(r.subarray(0,u)),p=n.indexOf(`
|
|
2
|
+
`),p!==-1))break}n+=s.end();let d=p===-1?n:n.slice(0,p);return d.trim()?JSON.parse(d):null}catch{return null}finally{if(i!==null)try{w.closeSync(i)}catch{}}}snapshotStartBaselines(e){this.startBaselines.clear();try{for(let{filePath:i,size:s}of this.collectRecentSessionFiles(e,!0)){let r=this.tryRealpath(i);if(r)try{let n=w.statSync(r);this.startBaselines.set(r,{size:s,identity:this.identityOf(n)})}catch{}}}catch{}}getSessionAgeMs(e,i){let s=this.readSessionMeta(e);if(s?.timestamp){let r=Date.parse(s.timestamp);if(!Number.isNaN(r))return r}return i.birthtimeMs||i.ctimeMs}collectRecentSessionFiles(e,i=!1){let s=[],r=[e];for(;r.length>0;){let n=r.pop();if(!n)continue;let l;try{l=w.readdirSync(n,{withFileTypes:!0})}catch{continue}for(let p of l){let d=M.join(n,p.name);if(p.isDirectory()){r.push(d);continue}if(!(!p.isFile()||!p.name.startsWith("rollout-")||!p.name.endsWith(".jsonl")))try{let u=w.statSync(d),c=u.birthtimeMs||u.ctimeMs,f=u.mtimeMs;(i||c>=this.startTime||f>=this.startTime-5e3)&&s.push({filePath:d,createdAt:c,modifiedAt:f,size:u.size})}catch{}}}return s}scheduleReadNewLines(e){let i=this.activeReads.get(e);if(i)return this.pendingReads.add(e),i;let s=this.readGeneration,r=Promise.resolve().then(()=>this.drainReadQueue(e,s));return this.activeReads.set(e,r),r.finally(()=>{this.activeReads.get(e)===r&&(this.activeReads.delete(e),this.pendingReads.delete(e))}),r}async drainReadQueue(e,i){do this.pendingReads.delete(e),await this.readNewLines(e,i);while(i===this.readGeneration&&this.pendingReads.has(e))}async readNewLines(e,i){if(i!==this.readGeneration)return;let s=this.filePositions.get(e)||0,r=null;try{r=w.openSync(e,w.constants.O_RDONLY|(w.constants.O_NOFOLLOW??0));let n=w.fstatSync(r),l=this.identityOf(n),p=this.fileIdentities.get(e);if(p&&!this.identitiesEqual(p,l)){let v=this.readFirstLogEntryFromFd(r),P=v?.type==="session_meta"?v.payload.id:void 0;if(this.authoritativeSessionId&&P!==this.authoritativeSessionId){let E=new Error("Authoritative Codex rollout path was replaced by a different session");a.error("Refusing replaced rollout with mismatched session identity",{filePath:e,expectedSessionId:this.authoritativeSessionId,replacementSessionId:P}),this.emit("error",E);return}a.info("Session log inode replaced; resetting byte and decoder state",{filePath:e,oldPosition:s,oldIdentity:p,newIdentity:l}),s=0,this.filePositions.set(e,0),this.oversizedRecordFiles.delete(e)}if(this.fileIdentities.set(e,l),n.size<s&&(a.info("Session log truncated/rotated; resetting cursor to 0",{filePath:e,oldPosition:s,size:n.size}),s=0,this.filePositions.set(e,0),this.oversizedRecordFiles.delete(e)),n.size<=s)return;if(n.size-s>this.maxBacklogBytes){if(s===0&&this.sessionId===null){let P=this.readFirstLogEntryFromFd(r);P?.type==="session_meta"&&this.processLogEntry(P)}let v=this.findRecentRecordBoundary(r,n.size);if(a.warn("Codex rollout backlog exceeded live-mirror limit; skipping archival prefix",{filePath:e,oldPosition:s,newPosition:v.position,size:n.size,maxBacklogBytes:this.maxBacklogBytes,discardUntilNewline:v.discardUntilNewline}),s=v.position,this.filePositions.set(e,s),v.discardUntilNewline?this.oversizedRecordFiles.add(e):this.oversizedRecordFiles.delete(e),n.size<=s)return}let d=n.size,u=Buffer.allocUnsafe(64*1024),c=s,f=[],y=0,h=this.oversizedRecordFiles.has(e);for(;c<d;){if(i!==this.readGeneration)return;let v=Math.min(u.length,d-c),P=w.readSync(r,u,0,v,c);if(P<=0)break;let E=0;for(;E<P;){if(i!==this.readGeneration)return;let S=u.subarray(0,P).indexOf(10,E),b=S!==-1,O=b?S:P,L=O-E,F=L+(b?1:0);if(h){c+=F,this.filePositions.set(e,c),b&&(h=!1,this.oversizedRecordFiles.delete(e)),E=b?S+1:P;continue}if(L>0&&(f.push(Buffer.from(u.subarray(E,O))),y+=L),c+=F,y>this.maxRecordBytes){a.warn("Discarding oversized Codex rollout JSONL record",{filePath:e,recordEnd:c,maxRecordBytes:this.maxRecordBytes}),this.filePositions.set(e,c),f=[],y=0,h=!b,h?this.oversizedRecordFiles.add(e):this.oversizedRecordFiles.delete(e),E=b?S+1:P;continue}if(!b){E=P;continue}let C=Buffer.concat(f,y);f=[],y=0,C.length>0&&C[C.length-1]===13&&(C=C.subarray(0,C.length-1));let Z=C.toString("utf8");if(Z.trim())try{let Ee=JSON.parse(Z);this.processLogEntry(Ee)}catch(Ee){a.warn("Failed to parse log line",{filePath:e,line:Z.substring(0,100),error:Ee})}if(i===this.readGeneration&&this.filePositions.set(e,c),i!==this.readGeneration)return;E=S+1}}}catch(n){a.error("Error reading log file",{filePath:e,error:n}),this.emit("error",n)}finally{if(r!==null)try{w.closeSync(r)}catch{}}}findRecentRecordBoundary(e,i){let s=Math.max(0,i-this.maxBacklogBytes),r=s+Math.min(i-s,this.maxRecordBytes);{if(s===0)return{position:0,discardUntilNewline:!1};let n=Buffer.allocUnsafe(1);if(w.readSync(e,n,0,1,s-1)===1&&n[0]===10)return{position:s,discardUntilNewline:!1};let l=Buffer.allocUnsafe(Ht),p=s;for(;p<r;){let d=Math.min(l.length,r-p),u=w.readSync(e,l,0,d,p);if(u<=0)break;let c=l.subarray(0,u).indexOf(10);if(c!==-1)return{position:p+c+1,discardUntilNewline:!1};p+=u}if(p===r&&p<i&&r-s===this.maxRecordBytes){let d=Buffer.allocUnsafe(1);if(w.readSync(e,d,0,1,p)===1&&d[0]===10)return{position:p+1,discardUntilNewline:!1}}return{position:s,discardUntilNewline:!0}}}readFirstLogEntryFromFd(e){try{let i=[],s=0,r=Buffer.allocUnsafe(64*1024);for(;s<Re;){let l=Math.min(r.length,Re-s),p=w.readSync(e,r,0,l,s);if(p<=0)break;let d=r.subarray(0,p).indexOf(10);if(d!==-1){i.push(Buffer.from(r.subarray(0,d)));break}i.push(Buffer.from(r.subarray(0,p))),s+=p}if(i.length===0)return null;let n=Buffer.concat(i).toString("utf8");return n.trim()?JSON.parse(n):null}catch{return null}}processLogEntry(e){if(a.debug("Processing log entry",{type:e.type}),e.type==="session_meta"){let i=e.payload;this.sessionId=i.id,a.info("Codex session started",{sessionId:i.id,cwd:i.cwd,cliVersion:i.cli_version}),this.emit("session-started",i);return}this.emit("log-entry",e),e.type==="event_msg"&&e.payload?.type?this.emit(`event:${e.payload.type}`,e):e.type==="response_item"&&e.payload?.type&&this.emit(`response:${e.payload.type}`,e)}};var Te=require("uuid"),A=require("@quantiya/codevibe-core");var z=new Map,G=[],Wt=24;function te(o){return typeof o=="string"?o.trim():""}function Qe(o){return typeof o=="string"?o:""}function Xe(o,t,e){let i=te(e);if(!i)return!1;let s=Qe(t);return G.some(r=>r.text===i&&r.phase===s&&r.carrier!==o)}function jt(o){let t=te(o);return t.length>0&&G.some(e=>e.text===t&&e.phase==="final_answer")}function _e(o,t,e){let i=te(e);if(i)for(G.push({carrier:o,phase:Qe(t),text:i});G.length>Wt;)G.shift()}function j(){G.length=0}function Gt(o){let t=o?.content;return Array.isArray(t)?t.filter(e=>e&&(e.type==="output_text"||e.type==="text")).map(e=>typeof e?.text=="string"?e.text:"").join(""):""}function Vt(o){let t=o?.summary;return!Array.isArray(t)||t.length===0?"":t.map(e=>typeof e=="string"?e:typeof e?.text=="string"?e.text:"").join(`
|
|
3
|
+
`).trim()}function Xt(o){if(typeof o!="string")return"";let t=o.match(/"cmd"\s*:\s*"((?:\\.|[^"\\])*)"/);if(t)try{return JSON.parse(`"${t[1]}"`)}catch{return t[1]}return""}function V(o){if(typeof o!="string"||!o.startsWith(`*** Begin Patch
|
|
4
4
|
`)||!o.endsWith(`
|
|
5
5
|
*** End Patch`))return"";let t=o.split(`
|
|
6
|
-
`);return t[0]!=="*** Begin Patch"||t[t.length-1]!=="*** End Patch"||t.filter(e=>e==="*** Begin Patch").length!==1||t.filter(e=>e==="*** End Patch").length!==1||!/^\*\*\* (?:Add|Update|Delete) File: [^\r\n]+$/.test(t[1]??"")?"":o}function
|
|
7
|
-
${p}`,metadata:{toolName:l,toolOutput:r,callId:s,status:"completed"}}}if(i==="custom_tool_call"){let{name:s,call_id:r,input:n,status:l}=o.payload;z.set(r,{name:s,input:n,eventId:(0,
|
|
8
|
-
${
|
|
6
|
+
`);return t[0]!=="*** Begin Patch"||t[t.length-1]!=="*** End Patch"||t.filter(e=>e==="*** Begin Patch").length!==1||t.filter(e=>e==="*** End Patch").length!==1||!/^\*\*\* (?:Add|Update|Delete) File: [^\r\n]+$/.test(t[1]??"")?"":o}function ie(o){if(typeof o!="string")return"";let t="[A-Za-z_$][\\w$]*",e='"(?:\\\\.|[^"\\\\])*"',i=o.match(new RegExp(`^\\s*(?:const|let|var)\\s+(${t})\\s*=\\s*await\\s+tools\\.apply_patch\\(\\s*(${e})\\s*\\)\\s*;\\s*(?:text\\(\\s*(${t})\\s*\\)\\s*;\\s*)?$`,"s")),s=o.match(new RegExp(`^\\s*(?:const|let|var)\\s+(${t})\\s*=\\s*(${e})\\s*;\\s*(?:const|let|var)\\s+(${t})\\s*=\\s*await\\s+tools\\.apply_patch\\(\\s*(${t})\\s*\\)\\s*;\\s*(?:text\\(\\s*(${t})\\s*\\)\\s*;\\s*)?$`,"s")),r;if(i&&(!i[3]||i[3]===i[1])?r=i[2]:s&&s[4]===s[1]&&(!s[5]||s[5]===s[3])&&(r=s[2]),!r)return"";try{return V(JSON.parse(r))}catch{return""}}var Yt=new Set(["exec","shell","shell_command","bash","run_command","run_cmd"]);function Ye(o,t){return typeof t!="string"?"":o==="apply_patch"?t:o==="exec"?ie(t):typeof o=="string"&&Yt.has(o)?"":t.includes("*** Begin Patch")?t:""}function Je(o,t){let e={sessionId:t,source:A.EventSource.DESKTOP};if(o.type==="event_msg"&&o.payload){let i=o.payload.type;switch(i){case"user_message":return j(),{...e,type:A.EventType.USER_PROMPT,content:o.payload.message||"",metadata:{images:o.payload.images||[]}};case"agent_message":{let s=o.payload.message||"",r=o.payload.phase;return Xe("agent_message",r,s)?null:(_e("agent_message",r,s),{...e,type:A.EventType.ASSISTANT_RESPONSE,content:s,metadata:{phase:r}})}case"agent_reasoning":return{...e,type:A.EventType.REASONING,content:o.payload.text||""};case"task_started":return j(),a.debug("Skipping task_started entry (turn boundary)"),null;case"task_complete":{let s=o.payload.error,r=typeof s?.message=="string"?s.message.trim():"";if(r){o.payload.last_agent_message&&a.warn("task_complete carried BOTH an error and a final message; relaying the error",{turnId:o.payload.turn_id});let p=typeof s?.codex_error_info=="string"?s.codex_error_info.trim():"",d=p!==""&&new RegExp(`(^|[^A-Za-z0-9_])${p.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}($|[^A-Za-z0-9_])`).test(r);return j(),{...e,type:A.EventType.NOTIFICATION,content:p&&!d?`${r} (${p})`:r,metadata:{phase:"turn_error",turnId:o.payload.turn_id,...p?{codexErrorInfo:p}:{}}}}s!=null&&a.warn("task_complete carried an error with no extractable message; falling through to the message path",{turnId:o.payload.turn_id,errorShape:typeof s});let n=te(o.payload.last_agent_message),l=null;return n&&!jt(n)?(_e("task_complete","final_answer",n),l={...e,type:A.EventType.ASSISTANT_RESPONSE,content:n,metadata:{phase:"final_answer"}}):a.debug("Skipping task_complete (final already emitted or empty)"),j(),l}case"turn_aborted":{let s=typeof o.payload.reason=="string"?o.payload.reason.trim():"";return j(),{...e,type:A.EventType.NOTIFICATION,content:s?`Turn aborted (${s})`:"Turn aborted",metadata:{phase:"turn_aborted",turnId:o.payload.turn_id,...s?{reason:s}:{}}}}case"token_count":return a.debug("Skipping token_count entry"),null;default:return a.debug("Unknown event_msg type",{type:i}),null}}if(o.type==="response_item"&&o.payload){let i=o.payload.type;if(i==="message"){if(o.payload.role!=="assistant")return a.debug("Skipping non-assistant response_item/message",{role:o.payload.role}),null;let s=Gt(o.payload),r=o.payload.phase;return!te(s)||Xe("response_item",r,s)?null:(_e("response_item",r,s),{...e,type:A.EventType.ASSISTANT_RESPONSE,content:s,metadata:{phase:r}})}if(i==="reasoning"){let s=Vt(o.payload);return s?{...e,type:A.EventType.REASONING,content:s}:(a.debug("Skipping reasoning response_item (no readable summary)"),null)}if(i==="function_call"){let{name:s,arguments:r,call_id:n}=o.payload,l={};try{l=JSON.parse(r||"{}")}catch{l={raw:r}}let p=(0,Te.v4)();z.set(n,{name:s,input:r,eventId:p});let d=ee(s),u=Qt(s,l);return{...e,type:A.EventType.TOOL_USE,content:u,metadata:{toolName:d,toolInput:l,callId:n,status:"running"}}}if(i==="function_call_output"){let{call_id:s,output:r}=o.payload,n=z.get(s);z.delete(s);let l=n?.name?ee(n.name):"Tool",p=xe(le(r),500);return{...e,type:A.EventType.TOOL_USE,content:`${l} completed:
|
|
7
|
+
${p}`,metadata:{toolName:l,toolOutput:r,callId:s,status:"completed"}}}if(i==="custom_tool_call"){let{name:s,call_id:r,input:n,status:l}=o.payload;z.set(r,{name:s,input:n,eventId:(0,Te.v4)()});let p=Ye(s,n);if(p){let c=Zt(p),{oldString:f,newString:y}=Jt(p),h=c?`Editing: ${c.filePath}`:"Applying patch";return{...e,type:A.EventType.TOOL_USE,content:h,metadata:{tool_name:"Edit",tool_input:{file_path:c?.filePath||"",old_string:f,new_string:y},callId:r,status:l||"running"}}}let d=Xt(n),u=ee(s==="exec"?"shell":s||"tool");return{...e,type:A.EventType.TOOL_USE,content:d?`Running: ${d}`:`Running ${u}`,metadata:{toolName:u,toolInput:d?{command:d}:{raw:typeof n=="string"?n:""},callId:r,status:l||"running"}}}if(i==="custom_tool_call_output"){let{call_id:s,output:r}=o.payload,n=z.get(s);if(z.delete(s),Ye(n?.name,n?.input)){let d={};if(typeof r=="string")try{d=JSON.parse(r||"{}")}catch{d={raw:r}}else if(Array.isArray(r)){let v=le(r);try{d=JSON.parse(v)}catch{d={raw:r,text:v}}}else d=r??{};let u=d!==null&&typeof d=="object"&&!Array.isArray(d)?d:null,c=typeof u?.output=="string"?u.output:void 0,f=u?.error,y=c!==void 0&&c.includes("Success"),h=typeof f=="string"?f:f!==void 0?JSON.stringify(f):"Unknown error";return{...e,type:A.EventType.TOOL_USE,content:y?"File edit applied successfully":`Edit failed: ${h}`,metadata:{toolName:"Edit",toolOutput:d,callId:s,status:"completed",success:y}}}let l=n?.name?ee(n.name==="exec"?"shell":n.name):"Tool",p=le(r);return{...e,type:A.EventType.TOOL_USE,content:`${l} completed:
|
|
8
|
+
${xe(p,500)}`,metadata:{toolName:l,toolOutput:r,callId:s,status:"completed"}}}return a.debug("Unknown response_item type",{type:i}),null}return o.type==="turn_context"?(a.debug("Skipping turn_context entry"),null):(a.debug("Unhandled log entry type",{type:o.type}),null)}function ee(o){return{shell_command:"Bash",shell:"Bash",apply_patch:"Edit",write_file:"Write",read_file:"Read",list_files:"Glob",search_files:"Grep",web_search:"WebSearch",web_fetch:"WebFetch"}[o]||o}function Qt(o,t){switch(o){case"shell_command":case"shell":return`Running: ${t.command||"command"}`;case"read_file":return`Reading: ${t.file_path||t.path||"file"}`;case"write_file":return`Writing: ${t.file_path||t.path||"file"}`;case"list_files":return`Listing: ${t.path||"."}`;case"search_files":return`Searching for: ${t.pattern||t.query||"pattern"}`;case"web_search":return`Searching web: ${t.query||"query"}`;default:return`Running ${ee(o)}`}}function Jt(o){let t=[],e=[],i=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/;for(let s of o.split(`
|
|
9
9
|
`))if(!(i.test(s)||s.startsWith("***")||s.startsWith("---")||s.startsWith("+++"))){if(s.startsWith("-"))t.push(s.slice(1));else if(s.startsWith("+"))e.push(s.slice(1));else if(s.startsWith(" ")){let r=s.slice(1);t.push(r),e.push(r)}}return{oldString:t.join(`
|
|
10
10
|
`),newString:e.join(`
|
|
11
|
-
`)}}function
|
|
12
|
-
`);if(typeof o=="object"&&typeof o.text=="string")return o.text;try{return JSON.stringify(o)??""}catch{return String(o)}}function _e(o,t){return typeof o!="string"?_e(oe(o),t):o?o.length<=t?o:o.substring(0,t)+"...":""}function Te(){z.clear(),j()}var T=require("@quantiya/codevibe-core"),Qe=3e3,Jt=8,Zt=10,ei=100;function Je(o){let t=Buffer.byteLength(o.carryover);return{status:"partial",progressKey:`${o.fileIdentity.dev}:${o.fileIdentity.ino}:${o.size}:${o.endOfComplete}:${t}`,size:o.size,carryoverBytes:t,endOfComplete:o.endOfComplete}}var ti="tool_activity",X=class{constructor(t){this.consolidator=null;this.ledger=null;this.sessionMap=null;this.ownership=null;this.cursor=null;this.backendSessionId=null;this.rolloutId=null;this.transcriptPath=null;this.backstopTimer=null;this.backstopInFlight=null;this.cursorReady=Promise.resolve();this.cursorRepaired=!1;this.deps=t}static mintBackendSessionId(){return T.ToolActivitySessionMap.mintCodexBackendSessionId()}async recordedBackendSessionId(t){return new T.ToolActivitySessionMap({agent:"codex",logger:this.deps.logger,lock:new T.InProcessRolloutLock,root:this.deps.root}).ownerBackendSessionId(t)}get sessionId(){return this.backendSessionId}get rollout(){return this.rolloutId}isActive(){return this.consolidator!==null}async start(t,e,i){this.backendSessionId=t,this.rolloutId=e;let s=(0,T.createRolloutLock)({agent:"codex",logger:this.deps.logger,socketDir:this.deps.socketDir,root:this.deps.root});this.sessionMap=new T.ToolActivitySessionMap({agent:"codex",logger:this.deps.logger,lock:s,root:this.deps.root}),this.ownership=await this.sessionMap.claimOwnership(e,t);let r=new T.ToolActivityOutbox({agent:"codex",logger:this.deps.logger,root:this.deps.root});this.ledger=new T.ToolActivityLedger({agent:"codex",sessionId:t,logger:this.deps.logger,root:this.deps.root}),this.consolidator=new T.ToolActivityConsolidator({agent:"codex",sessionId:t,logger:this.deps.logger,outbox:r,ledger:this.ledger,transport:this.buildTransport()}),await this.consolidator.init(),i&&this.bindTranscript(i),this.deps.logger.info("[tool-activity] codex consolidator started",{sessionId:t,rollout:e,hasTranscript:!!i})}bindTranscript(t){if(!this.consolidator||!t||this.transcriptPath===t)return;this.transcriptPath=t;let e=new T.ToolReplayCursor({agent:"codex",sessionId:this.backendSessionId,canonicalPath:t,logger:this.deps.logger,root:this.deps.root,readBytes:this.deps.replayReadBytes,maxFrameBytes:this.deps.replayMaxFrameBytes});this.cursor=e,this.cursorRepaired=!1,this.cursorReady=e.load().catch(s=>this.deps.logger.warn("[tool-activity] codex cursor load failed (rescanning fresh)",{sessionId:this.backendSessionId,err:String(s)}));let i=this.deps.backstopIntervalMs??3e3;i>0&&!this.backstopTimer&&(this.backstopTimer=setInterval(()=>{this.runTranscriptBackstop().catch(s=>this.deps.logger.warn("[tool-activity] codex transcript backstop failed",{sessionId:this.backendSessionId,err:String(s)}))},i),this.backstopTimer.unref?.())}async observeCall(t,e){if(!this.consolidator||!this.sessionMap||!this.ownership||!t.callId||!t.toolName)return;let i=this.consolidator;await this.sessionMap.bindCall(this.ownership,t.callId);let s={id:t.callId,tool:t.toolName,normalizedTarget:ni(t.toolName,t.toolInput),ts:t.ts??new Date().toISOString(),byteOffset:t.byteOffset??0,...t.toolInput!==void 0?{digest:(0,T.digestOf)(t.toolInput)}:{}},r=await i.observe(s,e);return r==="closed"?await i.captureTerminal(s,this.deps.shutdownDrainMs??Qe)?"sealed-terminal":"closed":r}async runTranscriptBackstop(t=!1){await this.runTranscriptBackstopTurn(t)}runTranscriptBackstopTurn(t=!1){if(this.backstopInFlight)return this.backstopInFlight;let e=this.cursor,i=this.cursorReady,s=this.consolidator;if(!s||!e)return Promise.resolve("caught-up");let n=(async()=>{if(await i,this.cursor!==e)return"more";if(!this.cursorRepaired){if(await s.repairLostWindows(e),this.cursor!==e)return"more";this.cursorRepaired=!0}return this.doTranscriptBackstop(e,t)})().finally(()=>{this.backstopInFlight===n&&(this.backstopInFlight=null)});return this.backstopInFlight=n,n}async doTranscriptBackstop(t,e=!1){let i=this.consolidator;if(!i)return"caught-up";this.ledger&&await this.ledger.reloadLegacyOwned();for(let s=0;s<Jt;s+=1){if(this.cursor!==t)return"caught-up";let r=await t.readFrames();if(r.missing)return"caught-up";if(r.frames.length===0)return r.carryover.length>0?Je(r):"caught-up";let n=Number.POSITIVE_INFINITY,l=e?{includeInFlight:!0}:void 0;for(let p of r.frames)for(let d of ii(p.line,p.startOffset))await this.observeCall(d,l)==="deferred-in-flight"&&(n=Math.min(n,p.startOffset));if(await i.flush(),n<r.endOfComplete)return await t.checkpoint(n,{fileIdentity:r.fileIdentity,size:r.size,carryover:""}),"more";if(await t.checkpoint(r.endOfComplete,{fileIdentity:r.fileIdentity,size:r.size,carryover:r.carryover}),!r.hasMore)return r.carryover.length>0?Je(r):"caught-up"}return"more"}async flush(){await this.consolidator?.flush()}async stop(){this.backstopTimer&&(clearInterval(this.backstopTimer),this.backstopTimer=null),await this.runTranscriptBackstop().catch(()=>{});let t=Math.max(1,Math.trunc(this.deps.shutdownPartialNoProgressTurns??ei)),e=null,i=0;for(;;){let s=await this.runTranscriptBackstopTurn(!0);if(s==="caught-up")break;if(typeof s!="string"){if(s.progressKey===e?i+=1:(e=s.progressKey,i=1),i>=t){this.deps.logger.warn("[tool-activity] deferring unchanged incomplete rollout suffix during shutdown; the next owner will re-read it from the durable complete-line boundary",{size:s.size,carryoverBytes:s.carryoverBytes,endOfComplete:s.endOfComplete,unchangedTurns:i});break}await new Promise(r=>setTimeout(r,Zt))}else e=null,i=0,await new Promise(r=>setImmediate(r))}await this.consolidator?.drainSends(this.deps.shutdownDrainMs??Qe).catch(()=>{});try{await this.consolidator?.shutdown()}finally{await this.ownership?.release().catch(()=>{}),this.ownership=null,this.consolidator=null,this.ledger=null,this.sessionMap=null,this.cursor=null}}buildTransport(){let t=async(e,i,s)=>{let r=s?s.sessionKey:this.deps.getSessionKey();if(!r)throw new Error("[tool-activity] no session key at send (retryable)");let n=s?s.sessionKeyGen:this.deps.getSessionKeyGen();await this.deps.createEvent({sessionId:e,type:T.EventType.TOOL_ACTIVITY,source:T.EventSource.DESKTOP,content:this.deps.encryptContent(ti,r),metadata:{encrypted:this.deps.encryptMetadata({manifest:i.manifest},r)},timestamp:i.windowStart,isEncrypted:!0,clientEventId:i.clientEventId,...n?{expectedSessionKeyGen:n}:{}})};return{send:async(e,i)=>{try{await t(e,i)}catch(s){if((0,T.isSessionKeyStaleError)(s)&&this.deps.refreshSessionKey){let r=await this.deps.refreshSessionKey(e);if(!r)throw s;await t(e,i,r);return}throw s}}}}};function ii(o,t){let e;try{e=JSON.parse(o)}catch{return[]}if(e?.type!=="response_item"||!e.payload)return[];let i=e.payload,s=typeof e.timestamp=="string"?e.timestamp:new Date(0).toISOString();if(i.type==="function_call"&&typeof i.call_id=="string"&&typeof i.name=="string"){let r;try{r=JSON.parse(i.arguments||"{}")}catch{r={raw:i.arguments}}return[{callId:i.call_id,toolName:si(i.name),toolInput:r,ts:s,byteOffset:t}]}if(i.type==="custom_tool_call"&&typeof i.call_id=="string"){let r=ri(typeof i.input=="string"?i.input:""),n=r?{file_path:r,patch:i.input}:{patch:i.input};return[{callId:i.call_id,toolName:"Edit",toolInput:n,ts:s,byteOffset:t}]}return[]}function si(o){return o==="shell"||o==="shell_command"||o==="local_shell"?"Bash":o==="apply_patch"?"Edit":o}function ri(o){let t=o.match(/^\*\*\* (?:Update|Add|Delete) File: (.+)$/m);return t?t[1].trim():void 0}function ni(o,t){if(!t||typeof t!="object")return;let e=t,i=r=>typeof r=="string"&&r.length>0?r:void 0,s=Array.isArray(e.command)?e.command.filter(r=>typeof r=="string").join(" ").trim().split(/\s+/)[0]:typeof e.command=="string"?e.command.trim().split(/\s+/)[0]:void 0;return i(e.file_path)??i(e.path)??i(e.pattern)??i(e.url)??(s&&s.length>0?s:void 0)}var Ze=require("events"),et=require("@quantiya/codevibe-core");var ae=class o extends Ze.EventEmitter{constructor(){super();this.pendingCalls=new Map;this.timers=new Map;this.timeoutMs=(0,et.getConfig)().codex.approvalTimeoutMs,a.info("Approval detector initialized",{timeoutMs:this.timeoutMs})}onToolCallStart(e,i,s){a.debug("Tool call started",{callId:e,name:i});let r=this.parseInput(s),n=this.extractFilePath(i,s,r),l=this.extractDiff(i,s,r),p={callId:e,name:i,input:s,filePath:n,diff:l,parsedInput:r,timestamp:Date.now(),notificationSent:!1};if(this.pendingCalls.set(e,p),!this.shouldScheduleApprovalTimeout(i,r)){a.debug("Skipping approval timeout for non-escalated tool call",{callId:e,name:i});return}let d=setTimeout(()=>{this.checkPendingCall(e)},this.timeoutMs);this.timers.set(e,d)}onToolCallComplete(e){a.debug("Tool call completed",{callId:e}),this.pendingCalls.delete(e);let i=this.timers.get(e);i&&(clearTimeout(i),this.timers.delete(e))}checkPendingCall(e){let i=this.pendingCalls.get(e);if(!i||i.notificationSent)return;let s=Date.now()-i.timestamp;a.info("Tool call still pending after timeout",{callId:e,name:i.name,elapsedMs:s}),i.notificationSent=!0,this.pendingCalls.set(e,i),this.emit("approval-pending",{callId:e,toolName:i.name,hint:this.extractHint(i.name,i.input,i.filePath),filePath:i.filePath,diff:i.diff,toolInput:i.parsedInput,rawInput:i.input,elapsedMs:s})}extractHint(e,i,s){if(s)return`File: ${s}`;if(e==="apply_patch"&&i){let r=i.match(/\*\*\* (?:Update|Add|Delete) File: (.+)/);if(r)return`File: ${r[1].trim()}`}if(o.SHELL_TOOL_NAMES.has(e))try{let r=JSON.parse(i),n=typeof r.command=="string"?r.command:typeof r.cmd=="string"?r.cmd:void 0;if(n)return`Command: ${n.substring(0,50)}${n.length>50?"...":""}`}catch{}return`Tool: ${this.mapToolName(e)}`}mapToolName(e){return{exec_command:"Bash",shell_command:"Bash",shell:"Bash",exec:"Bash",local_shell:"Bash",apply_patch:"File Edit",write_file:"Write File",read_file:"Read File"}[e]||e}parseInput(e){if(e)try{return JSON.parse(e)}catch{return}}static{this.SHELL_TOOL_NAMES=new Set(["exec_command","shell_command","shell","exec","local_shell"])}shouldScheduleApprovalTimeout(e,i){return o.SHELL_TOOL_NAMES.has(e)?i?.sandbox_permissions==="require_escalated":!1}extractFilePath(e,i,s){if(e==="apply_patch"&&i){let n=i.match(/\*\*\* (?:Update|Add|Delete) File: (.+)/);if(n)return n[1].trim()}let r=s?.file_path||s?.path||s?.filePath;if(r&&typeof r=="string")return r}extractDiff(e,i,s){if(e==="apply_patch"&&i)return i;if(s?.diff&&typeof s.diff=="string")return s.diff}getPendingCalls(){return Array.from(this.pendingCalls.values())}hasPendingCalls(){return this.pendingCalls.size>0}clear(){for(let e of this.timers.values())clearTimeout(e);this.timers.clear(),this.pendingCalls.clear(),a.debug("Approval detector cleared")}shutdown(){this.clear(),this.removeAllListeners(),a.info("Approval detector shutdown")}};var tt=require("child_process"),it=require("util");var xe=(0,it.promisify)(tt.exec),Y="__CODEVIBE_CODEX_KEY_ESCAPE__",le=class{async sendLiteral(t,e){return this.sendTerminalOperation(t,async i=>{await this.sendLiteralViaTmux(i,e)})}async sendKey(t,e){return this.sendTerminalOperation(t,async i=>{await this.sendKeyViaTmux(i,e)})}async sendInput(t,e){a.info("Attempting to send input to Codex",{sessionId:t,input:e});try{let i=process.env.CODEVIBE_CODEX_TMUX_SESSION;return i?(a.info("Using tmux send-keys",{tmuxSession:i}),e===Y?await this.sendKeyViaTmux(i,"Escape"):await this.sendViaTmux(i,e),a.info("Successfully sent input to Codex",{sessionId:t,input:e}),!0):(a.error("No tmux session found - CodeVibe Companion launch is required",{sessionId:t,hint:"Start Codex CLI using `codevibe --agent codex`"}),!1)}catch(i){return a.error("Failed to send input to Codex",{sessionId:t,error:i instanceof Error?i.message:String(i)}),!1}}async sendTerminalOperation(t,e){let i=process.env.CODEVIBE_CODEX_TMUX_SESSION;if(!i)return a.error("No tmux session found - CodeVibe Companion launch is required",{sessionId:t,hint:"Start Codex CLI using `codevibe --agent codex`"}),!1;try{return await e(i),!0}catch(s){return a.error("Failed to send terminal input to Codex",{sessionId:t,error:s instanceof Error?s.message:String(s)}),!1}}async sendViaTmux(t,e){a.info("Sending via tmux",{sessionName:t,inputLength:e.length});try{await this.sendLiteralViaTmux(t,e),await this.delay(500);let i=`tmux send-keys -t "${t}" Enter`;await xe(i),a.info("tmux send-keys completed")}catch(i){throw a.error("tmux send-keys failed",{sessionName:t,error:i}),i}}async sendLiteralViaTmux(t,e){let i=e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\$/g,"\\$").replace(/`/g,"\\`"),s=`tmux send-keys -t "${t}" -l "${i}"`;await xe(s)}async sendKeyViaTmux(t,e){a.info("Sending special key via tmux",{sessionName:t,key:e});try{let i=`tmux send-keys -t "${t}" ${e}`;await xe(i),a.info("tmux special-key send completed")}catch(i){throw a.error("tmux special-key send failed",{sessionName:t,key:e,error:i}),i}}delay(t){return new Promise(e=>setTimeout(e,t))}isApprovalResponse(t){let e=t.trim().toLowerCase();return["y","n","a","q","e","yes","no"].includes(e)||/^[0-9]+$/.test(e)}};var g=R(require("fs")),de=R(require("os")),M=R(require("path")),te=require("crypto"),rt=require("child_process"),nt=require("events"),ot=require("util");var Ce=(0,ot.promisify)(rt.execFile),st=512*1024,W="writer.state",oi=2e3,ai=10,li=16*1024*1024,pi=10080*60*1e3,pe=class extends nt.EventEmitter{constructor(e={}){super();this.sessionName=null;this.started=!1;this.pipeDirPath=null;this.pipeDirIdentity=null;this.pipeFilePath=null;this.pipeFileFd=null;this.pipeFileIdentity=null;this.writerStatePath=null;this.writerStateFd=null;this.writerStateIdentity=null;this.writerGeneration=null;this.pipeEnabled=!1;this.filePosition=0;this.pollTimer=null;this.processing=!1;this.pendingRead=!1;this.promptInspectionChain=Promise.resolve();this.lastPromptHash=null;this.lifecycleGeneration=0;this.retainedMirrors=[];this.retainedMirrorContainmentLost=!1;this.maxPaneFileBytes=e.maxPaneFileBytes??li,this.stalePaneRetentionMs=e.stalePaneRetentionMs??pi,this.tempDir=e.tempDir??de.tmpdir(),this.writerPath=M.resolve(__dirname,"..","libexec","pane-mirror-writer.js");let i=e.runtimePlatform??process.platform,s=e.runtimeRelease??de.release();if(this.wslDetected=i==="linux"&&(/microsoft/i.test(s)||!!process.env.WSL_DISTRO_NAME||!!process.env.WSL_INTEROP),!Number.isSafeInteger(this.maxPaneFileBytes)||this.maxPaneFileBytes<=0)throw new RangeError("maxPaneFileBytes must be a positive safe integer");if(!Number.isSafeInteger(this.stalePaneRetentionMs)||this.stalePaneRetentionMs<0)throw new RangeError("stalePaneRetentionMs must be a non-negative safe integer")}async start(e){if(this.wslDetected)throw new Error("Tmux pane mirror fallback is disabled on unqualified WSL; using hook-based prompts only");if(this.started&&this.sessionName===e&&this.pipeEnabled){a.debug("Tmux pane observer already started",{sessionName:e});return}this.started&&await this.stop(),this.lifecycleGeneration++,this.sessionName=e,this.filePosition=0,this.lastPromptHash=null;try{if(this.cleanupStalePipeFiles(),this.reapOwnedRetainedMirrors(),this.retainedMirrorContainmentLost||this.retainedMirrors.length>0)throw new Error("Prior bounded tmux pane writer is still unconfirmed; refusing another mirror");this.createSecureMirror(),this.started=!0,await this.enablePipePane(),this.pipeEnabled=!0,this.startPolling()}catch(i){this.started=!1,this.lifecycleGeneration++;let s=this.writerGeneration===null;if(!s)try{await this.disablePipePane(),s=!0}catch(r){a.error("Failed to confirm tmux pane writer quiescence after startup failure",{disableError:r})}throw s&&(this.pipeEnabled=!1),this.clearPolling(),s?this.releaseSecureMirror():this.abandonSecureMirror(),this.resetLifecycleState(),i}a.info("Tmux pane observer started",{sessionName:e})}async stop(){if(!this.started&&this.pipeFileFd===null)return;this.started=!1,this.lifecycleGeneration++;let e=!1;try{await this.disablePipePane(),e=!0}catch(i){a.error("Failed to confirm tmux pane writer quiescence during stop",{error:i}),this.emit("observer-error",i)}e&&(this.pipeEnabled=!1),this.clearPolling(),e?this.releaseSecureMirror():this.abandonSecureMirror(),a.info("Tmux pane observer stopped",{sessionName:this.sessionName,writerQuiesced:e}),this.resetLifecycleState()}identityOf(e){return{dev:e.dev,ino:e.ino}}identitiesEqual(e,i){return e.dev===i.dev&&e.ino===i.ino}openMirrorFile(e){return g.openSync(e,g.constants.O_RDWR|g.constants.O_CREAT|g.constants.O_EXCL|(g.constants.O_NOFOLLOW??0),384)}truncateMirror(e){g.ftruncateSync(e,0)}createSecureMirror(){g.mkdirSync(this.tempDir,{recursive:!0,mode:448});let e=g.mkdtempSync(M.join(this.tempDir,`codevibe-codex-pane-${process.pid}-`));g.chmodSync(e,448);let i=M.join(e,"pane.log"),s=M.join(e,W),r=null,n=null;try{r=this.openMirrorFile(i),g.fchmodSync(r,384);let l=g.fstatSync(r);if(!l.isFile())throw new Error("Tmux pane mirror is not a regular file");n=this.openMirrorFile(s),g.fchmodSync(n,384);let p=g.fstatSync(n);if(!p.isFile())throw new Error("Tmux pane writer state is not a regular file");g.writeSync(n,Buffer.from(`idle
|
|
13
|
-
`),0,5,0),this.pipeDirPath=e,this.pipeDirIdentity=this.identityOf(g.lstatSync(e)),this.pipeFilePath=i,this.pipeFileFd=r,this.pipeFileIdentity=this.identityOf(l),this.writerStatePath=s,this.writerStateFd=n,this.writerStateIdentity=this.identityOf(p),r=null,n=null}catch(l){if(r!==null)try{g.closeSync(r)}catch{}if(n!==null)try{g.closeSync(n)}catch{}try{g.unlinkSync(i)}catch{}try{g.unlinkSync(s)}catch{}try{g.rmdirSync(e)}catch{}throw l}}pathMatchesMirrorIdentity(){if(!this.pipeFilePath||!this.pipeFileIdentity)return!1;try{let e=g.lstatSync(this.pipeFilePath);return e.isFile()&&!e.isSymbolicLink()&&this.identitiesEqual(this.pipeFileIdentity,this.identityOf(e))}catch{return!1}}quarantineIfIdentityMatches(e,i){let s=`${e}.reap-${process.pid}-${(0,
|
|
14
|
-
`);let i=[process.execPath,this.writerPath,this.pipeFilePath,String(this.pipeFileIdentity.dev),String(this.pipeFileIdentity.ino),this.writerStatePath,String(this.writerStateIdentity.dev),String(this.writerStateIdentity.ino),e,String(this.maxPaneFileBytes)].map(r=>this.quoteShellArg(r)).join(" ");try{await
|
|
15
|
-
`).slice(-6).join("\\n")});return}let r=this.hashPromptSnapshot(s);r!==this.lastPromptHash&&(this.lastPromptHash=r,this.emit("prompt-candidate",{rawDelta:i,snapshot:s,promptHash:r,detectedAt:Date.now()}))}queueCurrentSnapshotInspection(e){this.promptInspectionChain=this.promptInspectionChain.then(async()=>{if(!(!this.started||this.lifecycleGeneration!==e))try{let i=await this.captureSnapshot();this.inspectSnapshotForPrompt(i,"")}catch(i){a.error("Failed to inspect tmux pane snapshot after rotation",{error:i}),this.emit("observer-error",i)}})}async rotatePipeFileIfNeeded(){let e=this.pipeFilePath,i=this.pipeFileFd,s=this.pipeFileIdentity,r=this.sessionName,n=this.lifecycleGeneration;if(!e||i===null||!s||!r||!this.started)return;let l;try{let d=g.fstatSync(i);if(!this.identitiesEqual(s,this.identityOf(d)))throw new Error("Tmux pane mirror descriptor identity changed");l=d.size}catch(d){await this.failClosedPipe(d);return}if(l<this.maxPaneFileBytes)return;let p="";try{await this.disablePipePane(),this.pipeEnabled=!1}catch(d){a.error("Tmux pane mirror rotation deferred because writer quiescence is unconfirmed",{error:d}),this.emit("observer-error",d),this.clearPolling();return}if(!(!this.started||this.lifecycleGeneration!==n||this.pipeFilePath!==e)){try{p=this.readAppendedChunk()}catch(d){a.error("Failed to drain final tmux pane suffix during rotation; mirror remains intact and disabled",{error:d}),this.emit("observer-error",d),this.clearPolling();return}try{this.truncateMirror(i);let d=g.fstatSync(i);if(!this.identitiesEqual(s,this.identityOf(d))||d.size!==0)throw new Error("Tmux pane mirror truncation could not be verified");if(!this.pathMatchesMirrorIdentity())throw new Error("Tmux pane mirror path was replaced during rotation")}catch(d){a.error("Tmux pane mirror remains disabled after truncation verification failure",{error:d}),this.emit("observer-error",d),this.clearPolling();return}if(this.filePosition=0,a.info("Rotated bounded tmux pane mirror",{sessionName:r,priorBytes:l,maxBytes:this.maxPaneFileBytes}),this.started&&this.lifecycleGeneration===n&&this.pipeFilePath===e&&this.sessionName===r)try{await this.enablePipePane(),this.pipeEnabled=!0}catch(d){this.pipeEnabled=!1,a.error("Tmux pane mirror remains disabled after re-enable failure",{error:d}),this.emit("observer-error",d),this.clearPolling()}p&&this.queuePromptInspection(p,n),this.pipeEnabled&&this.queueCurrentSnapshotInspection(n)}}retainedPathMatchesIdentity(e,i,s){try{let r=g.lstatSync(e);return(s==="file"?r.isFile():r.isDirectory())&&!r.isSymbolicLink()&&(typeof process.getuid!="function"||r.uid===process.getuid())&&this.identitiesEqual(i,this.identityOf(r))}catch{return!1}}readRetainedWriterState(e,i){let s=null;try{s=g.openSync(e,g.constants.O_RDONLY|(g.constants.O_NOFOLLOW??0));let r=g.fstatSync(s);if(!r.isFile()||typeof process.getuid=="function"&&r.uid!==process.getuid()||!this.identitiesEqual(i,this.identityOf(r))||r.size>512)return null;let n=Buffer.alloc(r.size),l=r.size===0?0:g.readSync(s,n,0,r.size,0);return n.subarray(0,l).toString("utf8").trim()}catch{return null}finally{if(s!==null)try{g.closeSync(s)}catch{}}}reapOwnedRetainedMirror(e){if(!this.retainedPathMatchesIdentity(e.dirPath,e.dirIdentity,"directory"))return!1;let i;try{i=g.readdirSync(e.dirPath).sort()}catch{return!1}if(i.length!==2||i[0]!=="pane.log"||i[1]!==W||!this.retainedPathMatchesIdentity(e.panePath,e.paneIdentity,"file")||!this.retainedPathMatchesIdentity(e.statePath,e.stateIdentity,"file"))return!1;let s=new RegExp(`^done ${e.writerGeneration} \\d+ \\d+$`);if(!s.test(this.readRetainedWriterState(e.statePath,e.stateIdentity)??""))return!1;let r=this.quarantineIfIdentityMatches(e.dirPath,e.dirIdentity);if(!r)return!1;let n=!1;try{let l=
|
|
16
|
-
`).map(h=>h.replace(/\s+$/,"")),r=h=>h.trim().length>0,n=h=>{let v=h.trim();return/^(?:[>›❯]\s*)?press enter to confirm(?: or esc to cancel)?$/i.test(v)||/^(?:[>›❯]\s*)?(?:press )?esc to cancel$/i.test(v)},l=h=>/Would you like to |Do you want to |The model would like to |Allow .+ to run|Requesting permission for:/i.test(h),p=h=>/^[>›❯\s]*[1-9][.)]\s+\S/.test(h),d=h=>/\[(?:y\/n|Y\/n|y\/N)\]/i.test(h),
|
|
11
|
+
`)}}function Zt(o){if(!o)return null;let t=o.match(/\*\*\* (?:Update|Add|Delete) File: (.+)/);return t?{filePath:t[1].trim()}:null}function le(o){if(o==null)return"";if(typeof o=="string")return o;if(Array.isArray(o))return o.map(t=>typeof t?.text=="string"?t.text:t?.type==="input_image"||typeof t?.image_url=="string"?"[image]":JSON.stringify(t??null)).join(`
|
|
12
|
+
`);if(typeof o=="object"&&typeof o.text=="string")return o.text;try{return JSON.stringify(o)??""}catch{return String(o)}}function xe(o,t){return typeof o!="string"?xe(le(o),t):o?o.length<=t?o:o.substring(0,t)+"...":""}function Ce(){z.clear(),j()}var T=require("@quantiya/codevibe-core"),Ze=3e3,ei=8,ti=10,ii=100;function et(o){let t=Buffer.byteLength(o.carryover);return{status:"partial",progressKey:`${o.fileIdentity.dev}:${o.fileIdentity.ino}:${o.size}:${o.endOfComplete}:${t}`,size:o.size,carryoverBytes:t,endOfComplete:o.endOfComplete}}var si="tool_activity",X=class{constructor(t){this.consolidator=null;this.ledger=null;this.sessionMap=null;this.ownership=null;this.cursor=null;this.backendSessionId=null;this.rolloutId=null;this.transcriptPath=null;this.backstopTimer=null;this.backstopInFlight=null;this.cursorReady=Promise.resolve();this.cursorRepaired=!1;this.deps=t}static mintBackendSessionId(){return T.ToolActivitySessionMap.mintCodexBackendSessionId()}async recordedBackendSessionId(t){return new T.ToolActivitySessionMap({agent:"codex",logger:this.deps.logger,lock:new T.InProcessRolloutLock,root:this.deps.root}).ownerBackendSessionId(t)}get sessionId(){return this.backendSessionId}get rollout(){return this.rolloutId}isActive(){return this.consolidator!==null}async start(t,e,i){this.backendSessionId=t,this.rolloutId=e;let s=(0,T.createRolloutLock)({agent:"codex",logger:this.deps.logger,socketDir:this.deps.socketDir,root:this.deps.root});this.sessionMap=new T.ToolActivitySessionMap({agent:"codex",logger:this.deps.logger,lock:s,root:this.deps.root}),this.ownership=await this.sessionMap.claimOwnership(e,t);let r=new T.ToolActivityOutbox({agent:"codex",logger:this.deps.logger,root:this.deps.root});this.ledger=new T.ToolActivityLedger({agent:"codex",sessionId:t,logger:this.deps.logger,root:this.deps.root}),this.consolidator=new T.ToolActivityConsolidator({agent:"codex",sessionId:t,logger:this.deps.logger,outbox:r,ledger:this.ledger,transport:this.buildTransport()}),await this.consolidator.init(),i&&this.bindTranscript(i),this.deps.logger.info("[tool-activity] codex consolidator started",{sessionId:t,rollout:e,hasTranscript:!!i})}bindTranscript(t){if(!this.consolidator||!t||this.transcriptPath===t)return;this.transcriptPath=t;let e=new T.ToolReplayCursor({agent:"codex",sessionId:this.backendSessionId,canonicalPath:t,logger:this.deps.logger,root:this.deps.root,readBytes:this.deps.replayReadBytes,maxFrameBytes:this.deps.replayMaxFrameBytes});this.cursor=e,this.cursorRepaired=!1,this.cursorReady=e.load().catch(s=>this.deps.logger.warn("[tool-activity] codex cursor load failed (rescanning fresh)",{sessionId:this.backendSessionId,err:String(s)}));let i=this.deps.backstopIntervalMs??3e3;i>0&&!this.backstopTimer&&(this.backstopTimer=setInterval(()=>{this.runTranscriptBackstop().catch(s=>this.deps.logger.warn("[tool-activity] codex transcript backstop failed",{sessionId:this.backendSessionId,err:String(s)}))},i),this.backstopTimer.unref?.())}async observeCall(t,e){if(!this.consolidator||!this.sessionMap||!this.ownership||!t.callId||!t.toolName)return;let i=this.consolidator;await this.sessionMap.bindCall(this.ownership,t.callId);let s={id:t.callId,tool:t.toolName,normalizedTarget:ai(t.toolName,t.toolInput),ts:t.ts??new Date().toISOString(),byteOffset:t.byteOffset??0,...t.toolInput!==void 0?{digest:(0,T.digestOf)(t.toolInput)}:{}},r=await i.observe(s,e);return r==="closed"?await i.captureTerminal(s,this.deps.shutdownDrainMs??Ze)?"sealed-terminal":"closed":r}async runTranscriptBackstop(t=!1){await this.runTranscriptBackstopTurn(t)}runTranscriptBackstopTurn(t=!1){if(this.backstopInFlight)return this.backstopInFlight;let e=this.cursor,i=this.cursorReady,s=this.consolidator;if(!s||!e)return Promise.resolve("caught-up");let n=(async()=>{if(await i,this.cursor!==e)return"more";if(!this.cursorRepaired){if(await s.repairLostWindows(e),this.cursor!==e)return"more";this.cursorRepaired=!0}return this.doTranscriptBackstop(e,t)})().finally(()=>{this.backstopInFlight===n&&(this.backstopInFlight=null)});return this.backstopInFlight=n,n}async doTranscriptBackstop(t,e=!1){let i=this.consolidator;if(!i)return"caught-up";this.ledger&&await this.ledger.reloadLegacyOwned();for(let s=0;s<ei;s+=1){if(this.cursor!==t)return"caught-up";let r=await t.readFrames();if(r.missing)return"caught-up";if(r.frames.length===0)return r.carryover.length>0?et(r):"caught-up";let n=Number.POSITIVE_INFINITY,l=e?{includeInFlight:!0}:void 0;for(let p of r.frames)for(let d of ri(p.line,p.startOffset))await this.observeCall(d,l)==="deferred-in-flight"&&(n=Math.min(n,p.startOffset));if(await i.flush(),n<r.endOfComplete)return await t.checkpoint(n,{fileIdentity:r.fileIdentity,size:r.size,carryover:""}),"more";if(await t.checkpoint(r.endOfComplete,{fileIdentity:r.fileIdentity,size:r.size,carryover:r.carryover}),!r.hasMore)return r.carryover.length>0?et(r):"caught-up"}return"more"}async flush(){await this.consolidator?.flush()}async stop(){this.backstopTimer&&(clearInterval(this.backstopTimer),this.backstopTimer=null),await this.runTranscriptBackstop().catch(()=>{});let t=Math.max(1,Math.trunc(this.deps.shutdownPartialNoProgressTurns??ii)),e=null,i=0;for(;;){let s=await this.runTranscriptBackstopTurn(!0);if(s==="caught-up")break;if(typeof s!="string"){if(s.progressKey===e?i+=1:(e=s.progressKey,i=1),i>=t){this.deps.logger.warn("[tool-activity] deferring unchanged incomplete rollout suffix during shutdown; the next owner will re-read it from the durable complete-line boundary",{size:s.size,carryoverBytes:s.carryoverBytes,endOfComplete:s.endOfComplete,unchangedTurns:i});break}await new Promise(r=>setTimeout(r,ti))}else e=null,i=0,await new Promise(r=>setImmediate(r))}await this.consolidator?.drainSends(this.deps.shutdownDrainMs??Ze).catch(()=>{});try{await this.consolidator?.shutdown()}finally{await this.ownership?.release().catch(()=>{}),this.ownership=null,this.consolidator=null,this.ledger=null,this.sessionMap=null,this.cursor=null}}buildTransport(){let t=async(e,i,s)=>{let r=s?s.sessionKey:this.deps.getSessionKey();if(!r)throw new Error("[tool-activity] no session key at send (retryable)");let n=s?s.sessionKeyGen:this.deps.getSessionKeyGen();await this.deps.createEvent({sessionId:e,type:T.EventType.TOOL_ACTIVITY,source:T.EventSource.DESKTOP,content:this.deps.encryptContent(si,r),metadata:{encrypted:this.deps.encryptMetadata({manifest:i.manifest},r)},timestamp:i.windowStart,isEncrypted:!0,clientEventId:i.clientEventId,...n?{expectedSessionKeyGen:n}:{}})};return{send:async(e,i)=>{try{await t(e,i)}catch(s){if((0,T.isSessionKeyStaleError)(s)&&this.deps.refreshSessionKey){let r=await this.deps.refreshSessionKey(e);if(!r)throw s;await t(e,i,r);return}throw s}}}}};function ri(o,t){let e;try{e=JSON.parse(o)}catch{return[]}if(e?.type!=="response_item"||!e.payload)return[];let i=e.payload,s=typeof e.timestamp=="string"?e.timestamp:new Date(0).toISOString();if(i.type==="function_call"&&typeof i.call_id=="string"&&typeof i.name=="string"){let r;try{r=JSON.parse(i.arguments||"{}")}catch{r={raw:i.arguments}}return[{callId:i.call_id,toolName:ni(i.name),toolInput:r,ts:s,byteOffset:t}]}if(i.type==="custom_tool_call"&&typeof i.call_id=="string"){let r=oi(typeof i.input=="string"?i.input:""),n=r?{file_path:r,patch:i.input}:{patch:i.input};return[{callId:i.call_id,toolName:"Edit",toolInput:n,ts:s,byteOffset:t}]}return[]}function ni(o){return o==="shell"||o==="shell_command"||o==="local_shell"?"Bash":o==="apply_patch"?"Edit":o}function oi(o){let t=o.match(/^\*\*\* (?:Update|Add|Delete) File: (.+)$/m);return t?t[1].trim():void 0}function ai(o,t){if(!t||typeof t!="object")return;let e=t,i=r=>typeof r=="string"&&r.length>0?r:void 0,s=Array.isArray(e.command)?e.command.filter(r=>typeof r=="string").join(" ").trim().split(/\s+/)[0]:typeof e.command=="string"?e.command.trim().split(/\s+/)[0]:void 0;return i(e.file_path)??i(e.path)??i(e.pattern)??i(e.url)??(s&&s.length>0?s:void 0)}var tt=require("events"),it=require("@quantiya/codevibe-core");var pe=class o extends tt.EventEmitter{constructor(){super();this.pendingCalls=new Map;this.timers=new Map;this.timeoutMs=(0,it.getConfig)().codex.approvalTimeoutMs,a.info("Approval detector initialized",{timeoutMs:this.timeoutMs})}onToolCallStart(e,i,s){a.debug("Tool call started",{callId:e,name:i});let r=this.parseInput(s),n=this.extractFilePath(i,s,r),l=this.extractDiff(i,s,r),p={callId:e,name:i,input:s,filePath:n,diff:l,parsedInput:r,timestamp:Date.now(),notificationSent:!1};if(this.pendingCalls.set(e,p),!this.shouldScheduleApprovalTimeout(i,r)){a.debug("Skipping approval timeout for non-escalated tool call",{callId:e,name:i});return}let d=setTimeout(()=>{this.checkPendingCall(e)},this.timeoutMs);this.timers.set(e,d)}onToolCallComplete(e){a.debug("Tool call completed",{callId:e}),this.pendingCalls.delete(e);let i=this.timers.get(e);i&&(clearTimeout(i),this.timers.delete(e))}checkPendingCall(e){let i=this.pendingCalls.get(e);if(!i||i.notificationSent)return;let s=Date.now()-i.timestamp;a.info("Tool call still pending after timeout",{callId:e,name:i.name,elapsedMs:s}),i.notificationSent=!0,this.pendingCalls.set(e,i),this.emit("approval-pending",{callId:e,toolName:i.name,hint:this.extractHint(i.name,i.input,i.filePath),filePath:i.filePath,diff:i.diff,toolInput:i.parsedInput,rawInput:i.input,elapsedMs:s})}extractHint(e,i,s){if(s)return`File: ${s}`;if(e==="apply_patch"&&i){let r=i.match(/\*\*\* (?:Update|Add|Delete) File: (.+)/);if(r)return`File: ${r[1].trim()}`}if(o.SHELL_TOOL_NAMES.has(e))try{let r=JSON.parse(i),n=typeof r.command=="string"?r.command:typeof r.cmd=="string"?r.cmd:void 0;if(n)return`Command: ${n.substring(0,50)}${n.length>50?"...":""}`}catch{}return`Tool: ${this.mapToolName(e)}`}mapToolName(e){return{exec_command:"Bash",shell_command:"Bash",shell:"Bash",exec:"Bash",local_shell:"Bash",apply_patch:"File Edit",write_file:"Write File",read_file:"Read File"}[e]||e}parseInput(e){if(e)try{return JSON.parse(e)}catch{return}}static{this.SHELL_TOOL_NAMES=new Set(["exec_command","shell_command","shell","exec","local_shell"])}shouldScheduleApprovalTimeout(e,i){return o.SHELL_TOOL_NAMES.has(e)?i?.sandbox_permissions==="require_escalated":!1}extractFilePath(e,i,s){if(e==="apply_patch"&&i){let n=i.match(/\*\*\* (?:Update|Add|Delete) File: (.+)/);if(n)return n[1].trim()}let r=s?.file_path||s?.path||s?.filePath;if(r&&typeof r=="string")return r}extractDiff(e,i,s){if(e==="apply_patch"&&i)return i;if(s?.diff&&typeof s.diff=="string")return s.diff}getPendingCalls(){return Array.from(this.pendingCalls.values())}hasPendingCalls(){return this.pendingCalls.size>0}clear(){for(let e of this.timers.values())clearTimeout(e);this.timers.clear(),this.pendingCalls.clear(),a.debug("Approval detector cleared")}shutdown(){this.clear(),this.removeAllListeners(),a.info("Approval detector shutdown")}};var st=require("child_process"),rt=require("util");var Oe=(0,rt.promisify)(st.exec),Y="__CODEVIBE_CODEX_KEY_ESCAPE__",de=class{async sendLiteral(t,e){return this.sendTerminalOperation(t,async i=>{await this.sendLiteralViaTmux(i,e)})}async sendKey(t,e){return this.sendTerminalOperation(t,async i=>{await this.sendKeyViaTmux(i,e)})}async sendInput(t,e){a.info("Attempting to send input to Codex",{sessionId:t,input:e});try{let i=process.env.CODEVIBE_CODEX_TMUX_SESSION;return i?(a.info("Using tmux send-keys",{tmuxSession:i}),e===Y?await this.sendKeyViaTmux(i,"Escape"):await this.sendViaTmux(i,e),a.info("Successfully sent input to Codex",{sessionId:t,input:e}),!0):(a.error("No tmux session found - CodeVibe Companion launch is required",{sessionId:t,hint:"Start Codex CLI using `codevibe --agent codex`"}),!1)}catch(i){return a.error("Failed to send input to Codex",{sessionId:t,error:i instanceof Error?i.message:String(i)}),!1}}async sendTerminalOperation(t,e){let i=process.env.CODEVIBE_CODEX_TMUX_SESSION;if(!i)return a.error("No tmux session found - CodeVibe Companion launch is required",{sessionId:t,hint:"Start Codex CLI using `codevibe --agent codex`"}),!1;try{return await e(i),!0}catch(s){return a.error("Failed to send terminal input to Codex",{sessionId:t,error:s instanceof Error?s.message:String(s)}),!1}}async sendViaTmux(t,e){a.info("Sending via tmux",{sessionName:t,inputLength:e.length});try{await this.sendLiteralViaTmux(t,e),await this.delay(500);let i=`tmux send-keys -t "${t}" Enter`;await Oe(i),a.info("tmux send-keys completed")}catch(i){throw a.error("tmux send-keys failed",{sessionName:t,error:i}),i}}async sendLiteralViaTmux(t,e){let i=e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\$/g,"\\$").replace(/`/g,"\\`"),s=`tmux send-keys -t "${t}" -l "${i}"`;await Oe(s)}async sendKeyViaTmux(t,e){a.info("Sending special key via tmux",{sessionName:t,key:e});try{let i=`tmux send-keys -t "${t}" ${e}`;await Oe(i),a.info("tmux special-key send completed")}catch(i){throw a.error("tmux special-key send failed",{sessionName:t,key:e,error:i}),i}}delay(t){return new Promise(e=>setTimeout(e,t))}isApprovalResponse(t){let e=t.trim().toLowerCase();return["y","n","a","q","e","yes","no"].includes(e)||/^[0-9]+$/.test(e)}};var g=R(require("fs")),ue=R(require("os")),N=R(require("path")),Q=require("crypto"),ot=require("child_process"),at=require("events"),lt=require("util");var se=require("@quantiya/codevibe-core"),Ae=(0,lt.promisify)(ot.execFile),nt=512*1024,W="writer.state",li=2e3,pi=10,di=16*1024*1024,ci=10080*60*1e3,ce=class extends at.EventEmitter{constructor(e={}){super();this.sessionName=null;this.started=!1;this.pipeDirPath=null;this.pipeDirIdentity=null;this.pipeFilePath=null;this.pipeFileFd=null;this.pipeFileIdentity=null;this.writerStatePath=null;this.writerStateFd=null;this.writerStateIdentity=null;this.writerGeneration=null;this.pipeEnabled=!1;this.filePosition=0;this.pollTimer=null;this.processing=!1;this.pendingRead=!1;this.promptInspectionChain=Promise.resolve();this.lastPromptHash=null;this.lastPromptWasMenu=!1;this.lifecycleGeneration=0;this.retainedMirrors=[];this.retainedMirrorContainmentLost=!1;this.maxPaneFileBytes=e.maxPaneFileBytes??di,this.stalePaneRetentionMs=e.stalePaneRetentionMs??ci,this.tempDir=e.tempDir??ue.tmpdir(),this.writerPath=N.resolve(__dirname,"..","libexec","pane-mirror-writer.js");let i=e.runtimePlatform??process.platform,s=e.runtimeRelease??ue.release();if(this.wslDetected=i==="linux"&&(/microsoft/i.test(s)||!!process.env.WSL_DISTRO_NAME||!!process.env.WSL_INTEROP),!Number.isSafeInteger(this.maxPaneFileBytes)||this.maxPaneFileBytes<=0)throw new RangeError("maxPaneFileBytes must be a positive safe integer");if(!Number.isSafeInteger(this.stalePaneRetentionMs)||this.stalePaneRetentionMs<0)throw new RangeError("stalePaneRetentionMs must be a non-negative safe integer")}async start(e){if(this.wslDetected)throw new Error("Tmux pane mirror fallback is disabled on unqualified WSL; using hook-based prompts only");if(this.started&&this.sessionName===e&&this.pipeEnabled){a.debug("Tmux pane observer already started",{sessionName:e});return}this.started&&await this.stop(),this.lifecycleGeneration++,this.sessionName=e,this.filePosition=0,this.lastPromptHash=null;try{if(this.cleanupStalePipeFiles(),this.reapOwnedRetainedMirrors(),this.retainedMirrorContainmentLost||this.retainedMirrors.length>0)throw new Error("Prior bounded tmux pane writer is still unconfirmed; refusing another mirror");this.createSecureMirror(),this.started=!0,await this.enablePipePane(),this.pipeEnabled=!0,this.startPolling()}catch(i){this.started=!1,this.lifecycleGeneration++;let s=this.writerGeneration===null;if(!s)try{await this.disablePipePane(),s=!0}catch(r){a.error("Failed to confirm tmux pane writer quiescence after startup failure",{disableError:r})}throw s&&(this.pipeEnabled=!1),this.clearPolling(),s?this.releaseSecureMirror():this.abandonSecureMirror(),this.resetLifecycleState(),i}a.info("Tmux pane observer started",{sessionName:e})}async stop(){if(!this.started&&this.pipeFileFd===null)return;this.started=!1,this.lifecycleGeneration++;let e=!1;try{await this.disablePipePane(),e=!0}catch(i){a.error("Failed to confirm tmux pane writer quiescence during stop",{error:i}),this.emit("observer-error",i)}e&&(this.pipeEnabled=!1),this.clearPolling(),e?this.releaseSecureMirror():this.abandonSecureMirror(),a.info("Tmux pane observer stopped",{sessionName:this.sessionName,writerQuiesced:e}),this.resetLifecycleState()}identityOf(e){return{dev:e.dev,ino:e.ino}}identitiesEqual(e,i){return e.dev===i.dev&&e.ino===i.ino}openMirrorFile(e){return g.openSync(e,g.constants.O_RDWR|g.constants.O_CREAT|g.constants.O_EXCL|(g.constants.O_NOFOLLOW??0),384)}truncateMirror(e){g.ftruncateSync(e,0)}createSecureMirror(){g.mkdirSync(this.tempDir,{recursive:!0,mode:448});let e=g.mkdtempSync(N.join(this.tempDir,`codevibe-codex-pane-${process.pid}-`));g.chmodSync(e,448);let i=N.join(e,"pane.log"),s=N.join(e,W),r=null,n=null;try{r=this.openMirrorFile(i),g.fchmodSync(r,384);let l=g.fstatSync(r);if(!l.isFile())throw new Error("Tmux pane mirror is not a regular file");n=this.openMirrorFile(s),g.fchmodSync(n,384);let p=g.fstatSync(n);if(!p.isFile())throw new Error("Tmux pane writer state is not a regular file");g.writeSync(n,Buffer.from(`idle
|
|
13
|
+
`),0,5,0),this.pipeDirPath=e,this.pipeDirIdentity=this.identityOf(g.lstatSync(e)),this.pipeFilePath=i,this.pipeFileFd=r,this.pipeFileIdentity=this.identityOf(l),this.writerStatePath=s,this.writerStateFd=n,this.writerStateIdentity=this.identityOf(p),r=null,n=null}catch(l){if(r!==null)try{g.closeSync(r)}catch{}if(n!==null)try{g.closeSync(n)}catch{}try{g.unlinkSync(i)}catch{}try{g.unlinkSync(s)}catch{}try{g.rmdirSync(e)}catch{}throw l}}pathMatchesMirrorIdentity(){if(!this.pipeFilePath||!this.pipeFileIdentity)return!1;try{let e=g.lstatSync(this.pipeFilePath);return e.isFile()&&!e.isSymbolicLink()&&this.identitiesEqual(this.pipeFileIdentity,this.identityOf(e))}catch{return!1}}quarantineIfIdentityMatches(e,i){let s=`${e}.reap-${process.pid}-${(0,Q.randomBytes)(6).toString("hex")}`;try{g.renameSync(e,s);let r=g.lstatSync(s);return this.identitiesEqual(i,this.identityOf(r))?s:(g.existsSync(e)||g.renameSync(s,e),null)}catch{return null}}restoreQuarantine(e,i){try{g.existsSync(i)||g.renameSync(e,i)}catch{}}pathMatchesIdentity(e,i){if(!e||!i)return!1;try{let s=g.lstatSync(e);return s.isFile()&&!s.isSymbolicLink()&&this.identitiesEqual(i,this.identityOf(s))}catch{return!1}}closeOwnedDescriptors(){if(this.pipeFileFd!==null)try{g.closeSync(this.pipeFileFd)}catch{}if(this.writerStateFd!==null)try{g.closeSync(this.writerStateFd)}catch{}this.pipeFileFd=null,this.writerStateFd=null}unlinkOwnedFile(e,i){if(!e||!i||!this.pathMatchesIdentity(e,i))return;let s=this.quarantineIfIdentityMatches(e,i);s&&g.unlinkSync(s)}releaseSecureMirror(){let e=this.pipeFilePath,i=this.writerStatePath,s=this.pipeDirPath,r=this.pipeFileIdentity,n=this.writerStateIdentity;this.closeOwnedDescriptors();try{this.unlinkOwnedFile(e,r)}catch{}try{this.unlinkOwnedFile(i,n)}catch{}if(s)try{g.rmdirSync(s)}catch{}this.pipeDirPath=null,this.pipeDirIdentity=null,this.pipeFilePath=null,this.pipeFileIdentity=null,this.writerStatePath=null,this.writerStateIdentity=null,this.writerGeneration=null}abandonSecureMirror(){let e=this.pipeDirPath,i=this.pipeFilePath;e&&this.pipeDirIdentity&&i&&this.pipeFileIdentity&&this.writerStatePath&&this.writerStateIdentity&&this.writerGeneration?this.retainedMirrors.push({dirPath:e,dirIdentity:this.pipeDirIdentity,panePath:i,paneIdentity:this.pipeFileIdentity,statePath:this.writerStatePath,stateIdentity:this.writerStateIdentity,writerGeneration:this.writerGeneration}):(e||i)&&(this.retainedMirrorContainmentLost=!0),this.closeOwnedDescriptors(),a.warn("Retaining bounded tmux pane mirror because writer quiescence is unconfirmed",{retainedDir:e,retainedFile:i,maxBytes:this.maxPaneFileBytes}),this.pipeDirPath=null,this.pipeDirIdentity=null,this.pipeFilePath=null,this.pipeFileIdentity=null,this.writerStatePath=null,this.writerStateIdentity=null,this.writerGeneration=null}resetLifecycleState(){this.sessionName=null,this.pipeDirPath=null,this.pipeDirIdentity=null,this.pipeFilePath=null,this.pipeFileFd=null,this.pipeFileIdentity=null,this.writerStatePath=null,this.writerStateFd=null,this.writerStateIdentity=null,this.writerGeneration=null,this.pipeEnabled=!1,this.filePosition=0,this.processing=!1,this.pendingRead=!1,this.lastPromptHash=null}async failClosedPipe(e){let i=!1;try{await this.disablePipePane(),i=!0}catch(s){a.error("Failed to confirm unsafe tmux pane writer quiescence",{disableError:s})}i&&(this.pipeEnabled=!1),this.clearPolling(),a.error("Tmux pane mirror entered fail-closed containment after integrity/cap failure",{error:e,writerQuiesced:i,independentlyBounded:!0}),this.emit("observer-error",e)}resetLastPromptHash(){this.lastPromptHash=null}async captureSnapshot(e=120){if(!this.sessionName)throw new Error("Tmux pane observer is not started");let i=Math.max(1,Math.floor(e));try{let{stdout:s}=await Ae("tmux",["capture-pane","-p","-e","-J","-S",`-${i}`,"-t",this.sessionName],{timeout:5e3,maxBuffer:2097152});return s}catch(s){throw a.error("Failed to capture tmux pane snapshot",{sessionName:this.sessionName,error:s}),this.emit("observer-error",s),s}}quoteShellArg(e){return`'${e.replace(/'/g,"'\\''")}'`}writerStatePathMatchesIdentity(){return this.pathMatchesIdentity(this.writerStatePath,this.writerStateIdentity)}writeWriterState(e){if(this.writerStateFd===null||!this.writerStateIdentity||!this.writerStatePathMatchesIdentity())throw new Error("Tmux pane writer state identity is not valid");let i=g.fstatSync(this.writerStateFd);if(!this.identitiesEqual(this.writerStateIdentity,this.identityOf(i)))throw new Error("Tmux pane writer state descriptor identity changed");let s=Buffer.from(e,"utf8");g.ftruncateSync(this.writerStateFd,0);let r=0;for(;r<s.length;){let n=g.writeSync(this.writerStateFd,s,r,s.length-r,r);if(n<=0)throw new Error("Short tmux pane writer-state write");r+=n}g.fsyncSync(this.writerStateFd)}readWriterState(){if(this.writerStateFd===null||!this.writerStateIdentity||!this.writerStatePathMatchesIdentity())throw new Error("Tmux pane writer state identity is not valid");let e=g.fstatSync(this.writerStateFd);if(!this.identitiesEqual(this.writerStateIdentity,this.identityOf(e)))throw new Error("Tmux pane writer state descriptor identity changed");let i=Math.min(e.size,512);if(i===0)return"";let s=Buffer.alloc(i),r=g.readSync(this.writerStateFd,s,0,i,0);return s.subarray(0,r).toString("utf8").trim()}async waitForWriterState(e,i,s=li){let r=Date.now()+s;do{let n=this.readWriterState();if(i.some(l=>n.startsWith(`${l} ${e} `)))return n;if(Date.now()>=r)return null;await new Promise(l=>setTimeout(l,pi))}while(!0)}async enablePipePane(){if(!this.sessionName||!this.pipeFilePath||!this.writerStatePath)throw new Error("Tmux pane observer is not initialized");if(this.pipeFileFd===null||!this.pipeFileIdentity||!this.pathMatchesMirrorIdentity()||this.writerStateFd===null||!this.writerStateIdentity||!this.writerStatePathMatchesIdentity())throw new Error("Tmux pane mirror identity is not valid");let e=(0,Q.randomBytes)(16).toString("hex");this.writerGeneration=e,this.writeWriterState(`starting ${e}
|
|
14
|
+
`);let i=[process.execPath,this.writerPath,this.pipeFilePath,String(this.pipeFileIdentity.dev),String(this.pipeFileIdentity.ino),this.writerStatePath,String(this.writerStateIdentity.dev),String(this.writerStateIdentity.ino),e,String(this.maxPaneFileBytes)].map(r=>this.quoteShellArg(r)).join(" ");try{await Ae("tmux",["pipe-pane","-O","-t",this.sessionName,i])}catch(r){throw this.writerGeneration=null,r}let s=await this.waitForWriterState(e,["ready","done"]);if(!s)throw new Error("Tmux pane writer did not confirm startup");if(s.startsWith(`done ${e} `))throw new Error("Tmux pane writer terminated during startup");a.debug("Enabled tmux pipe-pane mirroring",{sessionName:this.sessionName,pipeFilePath:this.pipeFilePath,writerGeneration:e})}async disablePipePane(){let e=this.writerGeneration;if(!this.sessionName||!e)return;let i=null;try{await Ae("tmux",["pipe-pane","-t",this.sessionName])}catch(n){i=n}if(!e){if(i)throw i;return}if(await this.waitForWriterState(e,["done"])){this.writerGeneration=null;return}let r=i instanceof Error?`: ${i.message}`:"";throw new Error(`Tmux pane writer quiescence was not confirmed${r}`)}startPolling(){this.clearPolling(),this.pollTimer=setInterval(()=>{this.processFileChanges()},100),this.pollTimer.unref?.()}clearPolling(){this.pollTimer&&clearInterval(this.pollTimer),this.pollTimer=null}async processFileChanges(){if(!(!this.started||!this.pipeFilePath)){if(this.processing){this.pendingRead=!0;return}this.processing=!0;try{do{this.pendingRead=!1;let e="";try{e=this.readAppendedChunk()}catch(i){a.error("Failed to read bounded tmux pane mirror",{error:i}),await this.failClosedPipe(i);return}await this.rotatePipeFileIfNeeded(),e&&this.queuePromptInspection(e,this.lifecycleGeneration)}while(this.pendingRead)}catch(e){a.error("Failed to process tmux pane changes",{error:e}),this.emit("observer-error",e)}finally{this.processing=!1}}}queuePromptInspection(e,i){this.promptInspectionChain=this.promptInspectionChain.then(async()=>{if(!(!this.started||this.lifecycleGeneration!==i))try{await this.inspectChunkForPrompt(e)}catch(s){a.error("Failed to inspect tmux pane delta",{error:s}),this.emit("observer-error",s)}})}async inspectChunkForPrompt(e){if(!this.lastPromptHash&&!this.looksLikePromptDelta(e))return;let i=await this.captureSnapshot();this.inspectSnapshotForPrompt(i,e)}inspectSnapshotForPrompt(e,i){let s=e?this.extractActivePromptBlock(e):null;if(!s){if(this.lastPromptHash){let n=this.lastPromptHash;this.lastPromptHash=null,this.lastPromptWasMenu=!1,this.emit("prompt-cleared",{promptHash:n})}e&&a.debug("tmux delta cue matched but no active dialog isolated (no candidate emitted)",{snapshotTail:e.split(`
|
|
15
|
+
`).slice(-6).join("\\n")});return}let r=this.hashPromptSnapshot(s);r!==this.lastPromptHash&&(this.lastPromptHash&&(this.lastPromptWasMenu||(0,se.parseActiveTerminalMenu)(s))&&this.emit("prompt-cleared",{promptHash:this.lastPromptHash}),this.lastPromptHash=r,this.lastPromptWasMenu=!!(0,se.parseActiveTerminalMenu)(s),this.emit("prompt-candidate",{rawDelta:i,snapshot:s,promptHash:r,detectedAt:Date.now()}))}queueCurrentSnapshotInspection(e){this.promptInspectionChain=this.promptInspectionChain.then(async()=>{if(!(!this.started||this.lifecycleGeneration!==e))try{let i=await this.captureSnapshot();this.inspectSnapshotForPrompt(i,"")}catch(i){a.error("Failed to inspect tmux pane snapshot after rotation",{error:i}),this.emit("observer-error",i)}})}async rotatePipeFileIfNeeded(){let e=this.pipeFilePath,i=this.pipeFileFd,s=this.pipeFileIdentity,r=this.sessionName,n=this.lifecycleGeneration;if(!e||i===null||!s||!r||!this.started)return;let l;try{let d=g.fstatSync(i);if(!this.identitiesEqual(s,this.identityOf(d)))throw new Error("Tmux pane mirror descriptor identity changed");l=d.size}catch(d){await this.failClosedPipe(d);return}if(l<this.maxPaneFileBytes)return;let p="";try{await this.disablePipePane(),this.pipeEnabled=!1}catch(d){a.error("Tmux pane mirror rotation deferred because writer quiescence is unconfirmed",{error:d}),this.emit("observer-error",d),this.clearPolling();return}if(!(!this.started||this.lifecycleGeneration!==n||this.pipeFilePath!==e)){try{p=this.readAppendedChunk()}catch(d){a.error("Failed to drain final tmux pane suffix during rotation; mirror remains intact and disabled",{error:d}),this.emit("observer-error",d),this.clearPolling();return}try{this.truncateMirror(i);let d=g.fstatSync(i);if(!this.identitiesEqual(s,this.identityOf(d))||d.size!==0)throw new Error("Tmux pane mirror truncation could not be verified");if(!this.pathMatchesMirrorIdentity())throw new Error("Tmux pane mirror path was replaced during rotation")}catch(d){a.error("Tmux pane mirror remains disabled after truncation verification failure",{error:d}),this.emit("observer-error",d),this.clearPolling();return}if(this.filePosition=0,a.info("Rotated bounded tmux pane mirror",{sessionName:r,priorBytes:l,maxBytes:this.maxPaneFileBytes}),this.started&&this.lifecycleGeneration===n&&this.pipeFilePath===e&&this.sessionName===r)try{await this.enablePipePane(),this.pipeEnabled=!0}catch(d){this.pipeEnabled=!1,a.error("Tmux pane mirror remains disabled after re-enable failure",{error:d}),this.emit("observer-error",d),this.clearPolling()}p&&this.queuePromptInspection(p,n),this.pipeEnabled&&this.queueCurrentSnapshotInspection(n)}}retainedPathMatchesIdentity(e,i,s){try{let r=g.lstatSync(e);return(s==="file"?r.isFile():r.isDirectory())&&!r.isSymbolicLink()&&(typeof process.getuid!="function"||r.uid===process.getuid())&&this.identitiesEqual(i,this.identityOf(r))}catch{return!1}}readRetainedWriterState(e,i){let s=null;try{s=g.openSync(e,g.constants.O_RDONLY|(g.constants.O_NOFOLLOW??0));let r=g.fstatSync(s);if(!r.isFile()||typeof process.getuid=="function"&&r.uid!==process.getuid()||!this.identitiesEqual(i,this.identityOf(r))||r.size>512)return null;let n=Buffer.alloc(r.size),l=r.size===0?0:g.readSync(s,n,0,r.size,0);return n.subarray(0,l).toString("utf8").trim()}catch{return null}finally{if(s!==null)try{g.closeSync(s)}catch{}}}reapOwnedRetainedMirror(e){if(!this.retainedPathMatchesIdentity(e.dirPath,e.dirIdentity,"directory"))return!1;let i;try{i=g.readdirSync(e.dirPath).sort()}catch{return!1}if(i.length!==2||i[0]!=="pane.log"||i[1]!==W||!this.retainedPathMatchesIdentity(e.panePath,e.paneIdentity,"file")||!this.retainedPathMatchesIdentity(e.statePath,e.stateIdentity,"file"))return!1;let s=new RegExp(`^done ${e.writerGeneration} \\d+ \\d+$`);if(!s.test(this.readRetainedWriterState(e.statePath,e.stateIdentity)??""))return!1;let r=this.quarantineIfIdentityMatches(e.dirPath,e.dirIdentity);if(!r)return!1;let n=!1;try{let l=N.join(r,"pane.log"),p=N.join(r,W);if(!this.retainedPathMatchesIdentity(l,e.paneIdentity,"file"))throw new Error("pane identity changed");if(!this.retainedPathMatchesIdentity(p,e.stateIdentity,"file"))throw new Error("state identity changed");if(!s.test(this.readRetainedWriterState(p,e.stateIdentity)??""))throw new Error("writer generation is no longer done");if(this.unlinkOwnedFile(l,e.paneIdentity),this.unlinkOwnedFile(p,e.stateIdentity),g.existsSync(l)||g.existsSync(p))throw new Error("retained mirror unlink was incomplete");g.rmdirSync(r),n=!0,a.info("Removed completed same-owner tmux pane mirror",{retainedDir:e.dirPath})}catch{g.existsSync(r)&&this.restoreQuarantine(r,e.dirPath)}return n}reapOwnedRetainedMirrors(){this.retainedMirrors=this.retainedMirrors.filter(e=>!this.reapOwnedRetainedMirror(e))}cleanupStalePipeFiles(){let e=Date.now()-this.stalePaneRetentionMs,i;try{i=g.readdirSync(this.tempDir,{withFileTypes:!0})}catch{return}for(let s of i){let r=/^codevibe-codex-pane-(\d+)\.log$/.exec(s.name);if(r){let d=N.join(this.tempDir,s.name),u=null;try{let c=g.lstatSync(d);if(!c.isFile()||c.isSymbolicLink()||c.mtimeMs>e||typeof process.getuid=="function"&&c.uid!==process.getuid()||this.isProcessAlive(Number(r[1]))||(u=this.quarantineIfIdentityMatches(d,this.identityOf(c)),!u))continue;g.unlinkSync(u),u=null,a.info("Removed stale legacy tmux pane mirror",{candidate:d,ageMs:Date.now()-c.mtimeMs})}catch{u&&this.restoreQuarantine(u,d)}continue}let n=/^codevibe-codex-pane-(\d+)-[A-Za-z0-9_-]+$/.exec(s.name);if(!n||!s.isDirectory())continue;let l=N.join(this.tempDir,s.name),p=null;try{let d=g.lstatSync(l);if(!d.isDirectory()||d.isSymbolicLink()||d.mtimeMs>e||typeof process.getuid=="function"&&d.uid!==process.getuid())continue;let u=Number(n[1]);if(this.isProcessAlive(u)||(p=this.quarantineIfIdentityMatches(l,this.identityOf(d)),!p))continue;let c=N.join(p,"pane.log"),f=N.join(p,W),y=g.readdirSync(p);if(y.some(h=>h!=="pane.log"&&h!==W)){this.restoreQuarantine(p,l);continue}for(let h of y.map(v=>N.join(p,v))){let v=g.lstatSync(h);if(!v.isFile()||v.isSymbolicLink()||typeof process.getuid=="function"&&v.uid!==process.getuid()){this.restoreQuarantine(p,l),p=null;break}}if(!p)continue;if(y.includes(W)){let h=g.readFileSync(f,"utf8").trim(),v=/^ready [a-f0-9]{32} (\d+)$/.exec(h);if(!(h==="idle"||/^done [a-f0-9]{32} \d+ \d+$/.test(h)||!!v)||v&&this.isProcessAlive(Number(v[1]))){this.restoreQuarantine(p,l);continue}}y.includes("pane.log")&&g.unlinkSync(c),y.includes(W)&&g.unlinkSync(f),g.rmdirSync(p),p=null,a.info("Removed stale tmux pane mirror directory",{candidate:l,ageMs:Date.now()-d.mtimeMs})}catch{p&&this.restoreQuarantine(p,l)}}}isProcessAlive(e){try{return process.kill(e,0),!0}catch(i){return i?.code==="EPERM"}}readAppendedChunk(){if(!this.pipeFilePath||this.pipeFileFd===null||!this.pipeFileIdentity)return"";if(!this.pathMatchesMirrorIdentity())throw new Error("Tmux pane mirror path was replaced");let e=g.fstatSync(this.pipeFileFd);if(!this.identitiesEqual(this.pipeFileIdentity,this.identityOf(e)))throw new Error("Tmux pane mirror descriptor identity changed");if(e.size<=this.filePosition)return"";{let s=e.size-this.filePosition>nt?e.size-nt:this.filePosition,r=e.size-s,n=Buffer.alloc(r),l=0;for(;l<r;){let p=g.readSync(this.pipeFileFd,n,l,r-l,s+l);if(p===0)break;l+=p}return this.filePosition=s+l,n.subarray(0,l).toString("utf-8")}}looksLikePromptDelta(e){return/Would you like to run/i.test(e)||/[›❯▸▶]\s*[1-9]\d?\.\s/.test(e)||/\x1b\[[0-9;]*m[^\n]{0,80}[1-9]\d?\.\s/.test(e)||/Press enter to confirm/i.test(e)||/\besc to cancel\b/i.test(e)||/\bYes,\s+proceed\b/i.test(e)||/\bNo,\s+and tell Codex\b/i.test(e)||/don't ask again/i.test(e)||/Requesting permission for:|Do you want to proceed\?/i.test(e)||/\[(?:y\/n|Y\/n|y\/N)\]|\b(?:apply|approve|allow|reject|deny|continue)\b/i.test(e)}looksLikePromptSnapshot(e){return this.extractActivePromptBlock(e)!==null}extractActivePromptBlock(e){return this.extractActiveApprovalBlock(e)??(0,se.parseActiveTerminalMenu)(e)?.snapshot??null}extractActiveApprovalBlock(e){let s=e.replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"").split(`
|
|
16
|
+
`).map(h=>h.replace(/\s+$/,"")),r=h=>h.trim().length>0,n=h=>{let v=h.trim();return/^(?:[>›❯]\s*)?press enter to confirm(?: or esc to cancel)?$/i.test(v)||/^(?:[>›❯]\s*)?(?:press )?esc to cancel$/i.test(v)},l=h=>/Would you like to |Do you want to |The model would like to |Allow .+ to run|Requesting permission for:/i.test(h),p=h=>/^[>›❯\s]*[1-9][.)]\s+\S/.test(h),d=h=>/\[(?:y\/n|Y\/n|y\/N)\]/i.test(h),u=h=>{let v=new Set;for(let P of h)p(P)&&(/\bYes,\s+proceed\b/i.test(P)&&v.add("proceed"),/\bNo,\s+and tell Codex\b/i.test(P)&&v.add("reject"),/don't ask again/i.test(P)&&v.add("dont-ask"));return v.size},c=h=>p(h)&&(/\bYes,\s+proceed\b/i.test(h)||/\bNo,\s+and tell Codex\b/i.test(h)||/don't ask again/i.test(h)),f=-1;for(let h=s.length-1;h>=0;h--)if(r(s[h])){f=h;break}if(f===-1)return null;if(d(s[f])){let h=f;for(let v=f-1;v>=0&&f-v<=8&&!(!r(s[v])||n(s[v])||p(s[v]));v--)h=v;return s.slice(h,f+1).join(`
|
|
17
17
|
`)}let y=-1;for(let h=s.length-1;h>=0;h--)if(n(s[h])){y=h;break}if(y===f){let h=-1;for(let P=y-1;P>=0&&!n(s[P]);P--)if(l(s[P])){h=P;break}if(h===-1)return null;let v=s.slice(h,y+1);return v.some(p)?v.join(`
|
|
18
|
-
`):null}if(
|
|
19
|
-
`)}return null}hashPromptSnapshot(e){let i=e.replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"").replace(/\r/g,`
|
|
18
|
+
`):null}if(c(s[f])){let h=-1;for(let S=f-1;S>=0;S--){if(n(s[S]))return null;if(l(s[S])){h=S;break}}if(h===-1)return null;let v=S=>{let b=S.match(/^[>›❯\s]*([1-9])[.)]\s/);return b?parseInt(b[1],10):null},P=[],E=Number.POSITIVE_INFINITY;for(let S=f;S>h&&p(s[S]);S--){let b=v(s[S]);if(b===null||b>=E)break;P.push(s[S]),E=b}return u(P)<2?null:s.slice(h,f+1).join(`
|
|
19
|
+
`)}return null}hashPromptSnapshot(e){let i=(0,se.parseActiveTerminalMenu)(e);if(i)return(0,Q.createHash)("sha256").update(i.identity).digest("hex");let s=e.replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"").replace(/\r/g,`
|
|
20
20
|
`).replace(/[ \t]+\n/g,`
|
|
21
|
-
`).trim();return(0,
|
|
22
|
-
`;if(Buffer.byteLength(i,"utf8")>
|
|
23
|
-
${
|
|
24
|
-
`),e=n=>/^[\s>]*\d+\.\s/.test(n),i=-1;for(let n=t.length-1;n>=0;n-=1)if(/^\s*\$\s+/.test(t[n])){i=n;break}if(i===-1)return;let s=t[i].trim().match(/^\$\s+(.+)$/);if(!s?.[1]?.trim())return;let r=[s[1].trim()];for(let n=i+1;n<t.length;n+=1){let l=t[n];if(e(l)||/^\s*$/.test(l)||/^\s*\$\s+/.test(l))break;r.push(l.trim())}return r.length>0?r:void 0}function
|
|
25
|
-
`).map(r=>r.trim()).filter(Boolean);return s.length<2||!i.test(s[s.length-1])||!e?!1:
|
|
26
|
-
`).map(l=>l.trim()),i=new RegExp(`^(?:[>\u203A\u276F\u25B8\u25B6\u279C\u27A4*\u25CF]\\s*)?${t}\\.\\s+(.*)$`),s=-1,r="";for(let l=e.length-1;l>=0;l-=1){let p=e[l].match(i);if(p){s=l,r=p[1];break}}if(s<0)return null;let n=[r];for(let l=s+1;l<e.length&&!(/^(?:[>›❯▸▶➜➤*●]\s*)?\d+\.\s+/.test(e[l])||!e[l]||(n.push(e[l]),/\(p\)\s*$/i.test(e[l])));l+=1);return n.some(l=>/\(p\)\s*$/i.test(l))?n:null}function At(o){if(o.length===0||o.length>13)return new Set;let t=new Set([o[0]]);for(let e of o.slice(1)){let i=new Set;for(let s of t)i.add(`${s}${e}`),i.add(`${s} ${e}`);t=i}return t}function Ne(o){try{let t=(0,Le.parse)(o,e=>`\${${e}}`);return t.every(e=>typeof e=="string")?t:null}catch{return null}}function Li(o){return o.map(t=>/^[A-Za-z0-9_@%+=:,./-]+$/.test(t)?t:`'${t.replace(/'/g,`'"'"'`)}'`).join(" ")}function Ki(o,t){if(o.length===0)return!1;let e;try{e=(0,Le.parse)(t,s=>`\${${s}}`)}catch{return!1}let i=[[]];for(let s of e){if(typeof s=="string"){i[i.length-1].push(s);continue}if("op"in s&&["&&","||",";","|","|&","&"].includes(s.op)){i.push([]);continue}return!1}return i.some(s=>o.every((r,n)=>s[n]===r))}var Pe=class o{constructor(){this.sessionState=null;this.unsubscribe=null;this.sessionKey=null;this.sessionIsEncrypted=!1;this.sessionKeyGen=null;this.e1PromptRaises=new Map;this.e1PendingResolutions=new Map;this.e1ResolutionInFlight=new Map;this.e1RaiseInFlight=new Map;this.e1NeedsReRaise=new Set;this.e1RetirementOrphans=new Map;this.e1ContentKeyIndex=new Map;this.e1TtlRefreshTimer=null;this.toolActivity=null;this.toolActivityStartPromise=null;this.toolActivityLegacyRecorders=new Map;this.pendingInteractivePrompt=null;this.queuedInteractivePrompts=[];this.isInitializingSession=!1;this.bufferedLogEntries=[];this.logEntryChain=Promise.resolve();this.hookEventChain=Promise.resolve();this.hooksActive=!1;this.hooksCompatibilityNoticeSent=!1;this.permissionRequestHookInFlight=null;this.queuedPermissionRequestDedupeKeys=new Map;this.queuedPermissionRequestSessionCounts=new Map;this.queuedPermissionRequestRegistrations=new Map;this.waitingPermissionRequests=new Map;this.permissionRequestOccurrencesByCompletionKey=new Map;this.deferredTmuxPromptCandidates=new Map;this.recoveryPermissionReplay=null;this.resolvedApprovalDedupeKeys=new Map;this.subscribedSessionId=null;this.subscribedSessionState=null;this.terminalInputChain=Promise.resolve();this.terminalInputBlockedStates=new WeakSet;this.mobilePromptDeduper=new ue({expiryMs:1e4});this.launchSessionInitPromise=null;this.sessionStartedInitPromise=null;this.bootstrapSessionId=null;this.recoveryBootstrapOwnerBound=!1;this.resumeBackendSession=m.resumeOrCreateSession;this.sessionBootstrapFailureCount=0;this.sessionBootstrapRetryAt=0;this.retiredSessionRecoveryPromise=null;this.lifecycleGeneration=0;this.isStopping=!1;this.stopPromise=null;this.terminalRetirementRequested=!1;this.tmuxLifecycleTimer=null;this.tmuxLifecycleCheckInFlight=!1;this.tmuxLifecycleObservedAlive=!1;this.tmuxLifecycleInitDeadlineMs=Number.POSITIVE_INFINITY;this.v1Bridge=new me;this.orchestrationClient=null;this.userDecisionUnsubscribe=null;this.httpApi=new ce,this.sessionWatcher=new ne,this.approvalDetector=new ae,this.promptResponder=new le,this.tmuxPaneObserver=new pe,this.e1DurableState=new fe({handoffRoot:process.env.CODEVIBE_CODEX_HANDOFF_ROOT,resolutionRoot:process.env.CODEVIBE_CODEX_E1_OUTBOX_ROOT})}static{this.E1_TTL_REFRESH_MS=300*1e3}async start(){a.info("Starting CodeVibe Codex companion server",{environment:(0,m.getEnvironment)()}),this.appSyncClient=new m.AppSyncClient,await this.appSyncClient.authenticateWithStoredTokens()||(a.error('Authentication failed. Run "codevibe login" first.'),console.error('Not authenticated. Run "codevibe login" to sign in.'),process.exit(1)),a.info("Authenticated successfully",{userId:this.appSyncClient.getCurrentUserId(),email:this.appSyncClient.getCurrentUserEmail()}),await this.restorePendingE1ResolutionsFromOutbox(),await(0,m.registerDeviceEncryptionKey)(this.appSyncClient,a),(0,m.startDeviceKeyWatcher)(this.appSyncClient,a),(0,m.pushDetectedAgents)(this.appSyncClient,a).catch(i=>{a.warn("Failed to update available agents (non-fatal)",{error:i?.message})});try{let i=await this.appSyncClient.sweepOrphanSessions({agentType:"CODEX"});i>0&&a.info("Orphan sweep: marked stale Codex sessions INACTIVE",{swept:i})}catch(i){a.warn("Orphan sweep failed, continuing startup",{error:i instanceof Error?i.message:String(i)})}this.httpApi.onEvent(this.handleEventFromHook.bind(this));let e=await this.httpApi.start();a.info("HTTP API started for hooks",{port:e}),this.startTmuxLifecycleMonitor(),await this.createLaunchSession(),this.setupEventHandlers(),this.sessionWatcher.start(),a.info("CodeVibe Codex companion server started")}async createLaunchSession(){if(this.isStopping)return;if(process.env[ye]==="1"){a.info("Recovery daemon deferring backend bootstrap until the native rollout is known");return}let t=this.lifecycleGeneration,e=process.env.CODEVIBE_CODEX_TMUX_SESSION;if(!e){a.warn("No CODEVIBE_CODEX_TMUX_SESSION \u2014 skipping launch session");return}let i;this.launchSessionInitPromise=new Promise(s=>{i=s});try{let s=process.env.CODEX_WORKING_DIRECTORY||process.cwd(),r=this.getOrCreateBootstrapSessionId(),n=this.appSyncClient.getCurrentUserId();a.info("Creating launch session",{sessionId:r,projectPath:s});let l=!1;try{let p=await(0,m.resumeOrCreateSession)({sessionId:r,userId:n,agentType:m.AgentType.CODEX,projectPath:s,metadata:{launchSession:!0}},this.appSyncClient,a);if(r=p.sessionId,!this.isLifecycleCurrent(t)){await this.retireCancelledBootstrap(r,"launch_session");return}this.sessionKey=p.sessionKey,this.sessionKeyGen=p.sessionKeyGen,this.sessionIsEncrypted=!!p.sessionKey,l=!0,this.sessionState={sessionId:r,userId:n,projectPath:s,cwd:s,createdAt:new Date,subscriptionActive:!1,metadata:{launchSession:!0},encryptionSnapshot:{sessionKey:p.sessionKey,sessionIsEncrypted:!!p.sessionKey},codexSessionId:e,codexLogFile:void 0},this.clearSessionBootstrapFailure(),this.bootstrapSessionId=null,await _("daemon_init_step_completed",{step:"session_resume_or_create",path:"launch_session"})}catch(p){if(!this.isLifecycleCurrent(t)){let d=this.authoritativeSessionIdFromError(p)??r;await this.retireCancelledBootstrap(d,"launch_session_error");return}await _("daemon_init_step_failed",{step:"session_resume_or_create",path:"launch_session",error_class:p?.name||"Error",error_message:p?.message||String(p)}),p?.code==="ENCRYPTED_SESSION_NO_KEY"&&(this.sessionIsEncrypted=!0,this.sessionKey=null),this.bindBootstrapIdentityFromError(p),this.recordSessionBootstrapFailure(p,"launch_session"),a.error("Failed to create/resume launch session (non-fatal)",{error:p})}if(!l)return;await _("daemon_init_step_completed",{step:"session_state_set",path:"launch_session"});try{this.subscribeToMobileEvents(r)?await _("daemon_init_step_completed",{step:"subscribe_mobile_events",path:"launch_session"}):await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"launch_session",error_class:"SubscriptionSetupFailed",error_message:"subscribeToMobileEvents returned false"})}catch(p){await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"launch_session",error_class:p?.name||"Error",error_message:p?.message||String(p)}),a.error("Failed to subscribe to mobile events for launch session",{error:p})}try{await this.appSyncClient.startHeartbeat(r)?await _("daemon_init_step_completed",{step:"heartbeat_start",path:"launch_session"}):(await _("daemon_init_step_failed",{step:"heartbeat_start",path:"launch_session",error_class:"InitialHeartbeatNotPersisted",error_message:"Backend did not confirm the initial heartbeat mutation"}),a.error("Initial launch-session heartbeat was not persisted",{sessionId:r}))}catch(p){await _("daemon_init_step_failed",{step:"heartbeat_start",path:"launch_session",error_class:p?.name||"Error",error_message:p?.message||String(p)}),a.error("Failed to start heartbeat for launch session",{error:p})}try{await this.subscribeToOnApplyUserDecision(r)}catch(p){a.error("Failed to subscribe to onApplyUserDecision for launch session (non-fatal)",{error:p})}this.startMobileEndWatcher(r),a.info("Launch session created",{sessionId:r})}finally{i()}}encryptForEmit(t,e,i,s){let r=this.sessionState;if(!r||r.sessionId!==s||!r.encryptionSnapshot)return a.warn("Dropping event from stale or unresolved session generation (#638)",{type:i,sessionId:s,currentSessionId:r?.sessionId}),null;let{sessionKey:n,sessionIsEncrypted:l}=r.encryptionSnapshot,p=(0,m.encryptForEmit)(n,l,t,e);return p===null&&a.error("No session key for ENCRYPTED session \u2014 dropping event (fail-closed, #638)",{type:i,sessionId:s}),p}newE1Raise(t,e,i,s){let{record:r}=(0,m.newPromptRaise)({sessionId:t,producerKind:"PLUGIN_APPROVAL",mobileActionable:e,agentType:"CODEX",...i!==void 0&&{title:i}});return this.e1PromptRaises.set(r.promptId,{record:r,...s?.dedupeKey!==void 0?{resolutionDedupeKey:s.dedupeKey}:{},...s?.completionKey!==void 0?{resolutionCompletionKey:s.completionKey}:{},...s?.callId!==void 0?{resolutionCallId:s.callId}:{}}),this.e1TtlRefreshTimer||this.startE1TtlRefresh(),r}stashE1RaiseContent(t,e,i){let s=this.e1PromptRaises.get(t);s&&(s.contentPlain=e,s.metadataPlain=i)}async emitSuppressedPromptCarrier(t,e){let i="\u26A0\uFE0F A prompt is waiting in your desktop terminal, but its options could not be shown here. Please answer it on your desktop.",s=this.encryptForEmit(i,{e1SuppressedPrompt:!0},m.EventType.NOTIFICATION,t);return s?(await this.trackE1Raise(e.promptId,this.appSyncClient.createEvent({sessionId:t,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,content:s.content,metadata:s.metadata,...(0,m.raiseFieldsFromRecord)(e),notificationText:i,timestamp:(0,m.prepareEventTimestamp)({orderingKey:t}),isEncrypted:s.isEncrypted?!0:void 0})),a.info("E1: emitted suppressed-prompt badge carrier (mobileActionable=false)",{sessionId:t,promptId:e.promptId}),!0):!1}raiseSuppressedBadge(t,e,i={}){if(e){if(this.hasRecentlyResolvedApprovalDedupeKey(t,e)){a.debug("Skipping suppressed-prompt carrier; approval completed while producer was in flight",{sessionId:t,dedupeKey:e});return}let r=`${t}::${e}`,n=this.e1ContentKeyIndex.get(r);if(n&&this.e1PromptRaises.has(n)){if(i.suppressTmuxObserverUntilResolved){let l=this.e1PromptRaises.get(n);l&&(l.suppressTmuxObserverUntilResolved=!0,i.observerSnapshot&&(l.suppressedObserverSnapshotKey=this.buildObserverSnapshotMatchKey(i.observerSnapshot)))}return}n&&this.e1ContentKeyIndex.delete(r)}let s=this.newE1Raise(t,!1,void 0,e?{dedupeKey:e,completionKey:i.completionKey}:void 0);if(i.suppressTmuxObserverUntilResolved){let r=this.e1PromptRaises.get(s.promptId);r&&(r.suppressTmuxObserverUntilResolved=!0,i.observerSnapshot&&(r.suppressedObserverSnapshotKey=this.buildObserverSnapshotMatchKey(i.observerSnapshot)))}e&&this.e1ContentKeyIndex.set(`${t}::${e}`,s.promptId),this.emitSuppressedPromptCarrier(t,s).catch(r=>{a.error("E1: failed to emit suppressed-prompt badge carrier",{sessionId:t,promptId:s.promptId,error:r instanceof Error?r.message:String(r)})})}snapshotOpenE1(t){return[...this.e1PromptRaises.values()].filter(e=>e.record.sessionId===t).map(e=>({record:{...e.record},...e.contentPlain!==void 0&&{contentPlain:e.contentPlain},...e.metadataPlain!==void 0&&{metadataPlain:e.metadataPlain},...e.resolutionDedupeKey!==void 0&&{resolutionDedupeKey:e.resolutionDedupeKey},...e.resolutionCompletionKey!==void 0&&{resolutionCompletionKey:e.resolutionCompletionKey},...e.resolutionCallId!==void 0&&{resolutionCallId:e.resolutionCallId},...e.suppressTmuxObserverUntilResolved!==void 0&&{suppressTmuxObserverUntilResolved:e.suppressTmuxObserverUntilResolved},...e.suppressedObserverSnapshotKey!==void 0&&{suppressedObserverSnapshotKey:e.suppressedObserverSnapshotKey}}))}buildDaemonHandoffSnapshot(t){let e=process.env[$];if(!e)throw new Error("E1_DAEMON_HANDOFF_MISSING_TMUX_SESSION");return{version:1,createdAtMs:Date.now(),tmuxSession:e,backendSessionId:t.sessionId,openRaises:this.snapshotOpenE1(t.sessionId),pendingResolutions:[...this.e1PendingResolutions.values()].map(i=>({record:{...i.record},resolutionAt:i.resolutionAt,attempts:i.attempts})),needsReRaisePromptIds:[...this.e1NeedsReRaise],permissionOccurrences:[...this.permissionRequestOccurrencesByCompletionKey.entries()].map(([i,s])=>[i,s.map(r=>({...r}))]),waitingPermissionRequests:[...this.waitingPermissionRequests.values()].filter(i=>i.ownerState===t).map(({occurrenceKey:i,dedupeKey:s,payload:r})=>({occurrenceKey:i,dedupeKey:s,payload:r})),pendingInteractivePrompt:this.pendingInteractivePrompt?{...this.pendingInteractivePrompt}:null,queuedInteractivePrompts:this.queuedInteractivePrompts.map(i=>({prompt:{...i.prompt},content:i.content,metadata:{...i.metadata}})),resolvedApprovalDedupeKeys:[...this.resolvedApprovalDedupeKeys.entries()].filter(([,i])=>i>Date.now()-Fe)}}persistDaemonHandoffState(t){for(let i of this.e1PendingResolutions.values())this.e1DurableState.writeResolution(i);let e=this.buildDaemonHandoffSnapshot(t);this.e1DurableState.writeHandoff(e),a.info("E1: persisted daemon handoff state",{sessionId:t.sessionId,openPrompts:e.openRaises.length,pendingResolutions:e.pendingResolutions.length,completionQueues:e.permissionOccurrences.length})}async adoptDaemonHandoffState(t){if(process.env[ye]!=="1")return!1;let e=process.env[$];if(!e)return!1;let i=this.e1DurableState.readHandoff(e);if(!i)return!1;let s=this.sessionState;if(!s||s.sessionId!==t)throw new Error("E1_DAEMON_HANDOFF_WITHOUT_CURRENT_SESSION");for(let p of i.pendingResolutions)this.e1PendingResolutions.has(p.record.promptId)||this.e1PendingResolutions.set(p.record.promptId,{record:{...p.record},resolutionAt:p.resolutionAt,attempts:p.attempts}),this.e1DurableState.writeResolution(p);for(let p of i.openRaises){let d={...p,record:{...p.record},...p.metadataPlain!==void 0&&{metadataPlain:{...p.metadataPlain}}};this.e1PromptRaises.set(d.record.promptId,d),i.backendSessionId!==t&&this.e1RetirementOrphans.set(d.record.promptId,{...d,record:{...d.record}}),d.resolutionDedupeKey&&this.e1ContentKeyIndex.set(`${t}::${d.resolutionDedupeKey}`,d.record.promptId)}this.permissionRequestOccurrencesByCompletionKey=new Map(i.permissionOccurrences.map(([p,d])=>[p,d.map(c=>({...c}))])),this.e1NeedsReRaise=new Set(i.needsReRaisePromptIds);for(let p of i.waitingPermissionRequests??[])this.waitingPermissionRequests.set(p.occurrenceKey,{...p,ownerState:s,context:this.buildApprovalPromptContextFromHookPayload(p.payload)});this.pendingInteractivePrompt=i.pendingInteractivePrompt?{...i.pendingInteractivePrompt,ownerSessionId:t}:null;let r=this.pendingInteractivePrompt,n=r?.completionKey?this.permissionRequestOccurrencesByCompletionKey.get(r.completionKey):void 0;this.recoveryPermissionReplay=r?.source==="permission_hook"&&r.completionKey&&r.dedupeKey&&this.isPermissionRequestOccurrenceKey(r.dedupeKey)&&n?.some(p=>p.occurrenceKey===r.dedupeKey)?{ownerSessionId:t,completionKey:r.completionKey,occurrenceKey:r.dedupeKey}:null,this.queuedInteractivePrompts=i.queuedInteractivePrompts.map(p=>({prompt:{...p.prompt,ownerSessionId:t},content:p.content,metadata:{...p.metadata},ownerState:s}));let l=Date.now()-Fe;for(let[p,d]of i.resolvedApprovalDedupeKeys){if(d<=l)continue;let c=`${i.backendSessionId}::`,u=p.startsWith(c)?`${t}::${p.slice(c.length)}`:p;this.resolvedApprovalDedupeKeys.set(u,d)}return i.backendSessionId!==t&&await this.drainRetirementOrphans(t),await this.drainPendingE1Resolutions(),await this.drainPendingE1ReRaises(),(this.e1PromptRaises.size>0||this.e1PendingResolutions.size>0)&&this.startE1TtlRefresh(),this.e1DurableState.removeHandoff(e),a.info("E1: adopted daemon handoff state",{fromSessionId:i.backendSessionId,replacementSessionId:t,openPrompts:i.openRaises.length,pendingResolutions:i.pendingResolutions.length,completionQueues:i.permissionOccurrences.length}),!0}parkRetirementOrphans(t){for(let e of this.snapshotOpenE1(t))this.e1RetirementOrphans.set(e.record.promptId,e)}async drainRetirementOrphans(t){if(this.e1RetirementOrphans.size===0){this.e1PendingResolutions.size>0&&!this.e1TtlRefreshTimer&&this.startE1TtlRefresh();return}a.info("E1 (\xA76a-4): re-homing parked retirement-orphan prompts onto replacement session",{replacementSessionId:t,count:this.e1RetirementOrphans.size});for(let[e,i]of[...this.e1RetirementOrphans]){let r=this.e1PromptRaises.get(e)??{record:{...i.record},...i.contentPlain!==void 0&&{contentPlain:i.contentPlain},...i.metadataPlain!==void 0&&{metadataPlain:i.metadataPlain},...i.resolutionDedupeKey!==void 0&&{resolutionDedupeKey:i.resolutionDedupeKey},...i.resolutionCompletionKey!==void 0&&{resolutionCompletionKey:i.resolutionCompletionKey},...i.resolutionCallId!==void 0&&{resolutionCallId:i.resolutionCallId}};for(let[l,p]of this.e1ContentKeyIndex.entries())p===e&&this.e1ContentKeyIndex.delete(l);if(r.record.sessionId=t,this.e1PromptRaises.set(e,r),r.resolutionDedupeKey&&this.e1ContentKeyIndex.set(`${t}::${r.resolutionDedupeKey}`,e),!await this.reRaiseOneE1(t,r,{untilAck:!0})){if(!this.e1RetirementOrphans.has(e))continue;break}this.e1RetirementOrphans.delete(e)}this.e1TtlRefreshTimer||this.startE1TtlRefresh()}isReRaiseTargetCurrent(t){return!this.isStopping&&this.sessionState!==null&&this.sessionState.sessionId===t}async reRaiseOneE1(t,e,i){let s=e.record;if(!(0,m.canRecoverPromptRaise)(e,this.e1RaiseInFlight.has(s.promptId)))return!1;let r=s.mobileActionable&&e.contentPlain!==void 0,n=i?.untilAck??!1,l=4,p=4e3;for(let d=1;n||d<=l;d++){if(!(0,m.isOpenPromptRaise)(e,this.e1PromptRaises.get(s.promptId)))return!1;if(n&&!this.isReRaiseTargetCurrent(t))return this.e1NeedsReRaise.add(s.promptId),a.warn("E1: retirement re-raise aborted (stopping/superseded) \u2014 parked",{sessionId:t,promptId:s.promptId}),!1;try{if(r){let c=this.encryptForEmit(e.contentPlain,e.metadataPlain??{},m.EventType.INTERACTIVE_PROMPT,t);if(!c)return!1;await this.trackE1Raise(s.promptId,this.appSyncClient.createEvent({sessionId:t,type:m.EventType.INTERACTIVE_PROMPT,source:m.EventSource.DESKTOP,content:c.content,metadata:c.metadata,...(0,m.raiseFieldsFromRecord)(s),timestamp:(0,m.prepareEventTimestamp)({orderingKey:t}),...c.isEncrypted?{isEncrypted:!0}:{}}))}else if(s.mobileActionable=!1,!await this.emitSuppressedPromptCarrier(t,s))return!1;return this.e1NeedsReRaise.delete(s.promptId),a.info("E1: re-raised prompt onto replacement session",{sessionId:t,promptId:s.promptId,actionable:r}),!0}catch(c){if(!n&&d===l)return this.e1NeedsReRaise.add(s.promptId),a.error("E1: re-raise unacked after backoff \u2014 parked for retry-until-ack",{sessionId:t,promptId:s.promptId,error:c instanceof Error?c.message:String(c)}),!1;if(n){let u=Date.now()+Math.min(250*2**(d-1),p);for(;Date.now()<u&&this.isReRaiseTargetCurrent(t);)await new Promise(f=>setTimeout(f,Math.min(50,u-Date.now())))}else await new Promise(u=>setTimeout(u,250*d))}}return!1}async drainPendingE1ReRaises(){if(this.e1NeedsReRaise.size!==0)for(let t of[...this.e1NeedsReRaise]){let e=this.e1PromptRaises.get(t);if(!e){this.e1NeedsReRaise.delete(t);continue}!this.sessionState||e.record.sessionId!==this.sessionState.sessionId||await this.reRaiseOneE1(e.record.sessionId,e)}}beginE1Resolution(t,e){if(this.e1PendingResolutions.has(t))return!0;let i=this.e1PromptRaises.get(t);if(!i||i.record.sessionId!==e)return!1;this.e1PromptRaises.delete(t),this.e1NeedsReRaise.delete(t),this.e1RetirementOrphans.delete(t);for(let[s,r]of this.e1ContentKeyIndex.entries())r===t&&this.e1ContentKeyIndex.delete(s);return this.e1PendingResolutions.set(t,{record:{...i.record},resolutionAt:new Date().toISOString(),attempts:0}),this.e1TtlRefreshTimer||this.startE1TtlRefresh(),!0}async emitE1Resolution(t){let e=this.e1ResolutionInFlight.get(t);if(e)return e;if(!this.e1PendingResolutions.has(t))return;let i=(async()=>{let s=this.e1PendingResolutions.get(t);if(s){try{this.e1DurableState.writeResolution(s)}catch(r){a.error("E1: failed to persist exact-clear outbox record",{promptId:t,error:r instanceof Error?r.message:String(r)})}try{let r=this.e1RaiseInFlight.get(t);if(r&&await r,s=this.e1PendingResolutions.get(t),!s)return;if((await this.appSyncClient.createEvent({sessionId:s.record.sessionId,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,resolvedPromptId:s.record.promptId,ownerToken:s.record.ownerToken,resolutionAt:s.resolutionAt,timestamp:(0,m.prepareEventTimestamp)({orderingKey:s.record.sessionId})}))?.promptId!==s.record.promptId)throw new Error("E1_PLUGIN_RESOLUTION_NOT_ACKNOWLEDGED: exact prompt id was not returned");this.e1PendingResolutions.delete(t);try{this.e1DurableState.removeResolution(t)}catch(l){a.warn("E1: exact-clear ACKed but outbox cleanup failed",{promptId:t,error:l instanceof Error?l.message:String(l)})}a.info("E1: plugin approval resolution acknowledged",{sessionId:s.record.sessionId,promptId:t})}catch(r){let n=this.e1PendingResolutions.get(t);a.warn("E1: plugin approval resolution unacknowledged; parked for retry",{sessionId:n?.record.sessionId,promptId:t,error:r instanceof Error?r.message:String(r)})}}})();this.e1ResolutionInFlight.set(t,i);try{await i}finally{this.e1ResolutionInFlight.get(t)===i&&this.e1ResolutionInFlight.delete(t)}}trackE1Raise(t,e){let i=e.then(()=>{},()=>{});return this.e1RaiseInFlight.set(t,i),i.then(()=>{this.e1RaiseInFlight.get(t)===i&&this.e1RaiseInFlight.delete(t)}),e}async drainPendingE1Resolutions(){for(let[t,e]of[...this.e1PendingResolutions.entries()])e.attempts+=1,await this.emitE1Resolution(t)}async restorePendingE1ResolutionsFromOutbox(){let{records:t,rejected:e}=this.e1DurableState.readResolutions();for(let i of e)a.error("E1: rejected unsafe or invalid resolution outbox record",i);for(let i of t){let s=this.e1PendingResolutions.get(i.record.promptId);(!s||i.attempts>s.attempts)&&this.e1PendingResolutions.set(i.record.promptId,{record:{...i.record},resolutionAt:i.resolutionAt,attempts:i.attempts})}t.length>0&&(a.info("E1: recovered pending exact-clear outbox records",{count:t.length}),await this.drainPendingE1Resolutions(),this.e1PendingResolutions.size>0&&!this.e1TtlRefreshTimer&&this.startE1TtlRefresh())}async drainPendingE1ResolutionsForLifecycleEnd(t={}){let e=t.maxWaitMs??4e3,i=t.retryDelayMs??250,s=Date.now()+Math.max(0,e),r=0;do{if(await this.drainPendingE1Resolutions(),this.e1PendingResolutions.size===0)return;if(r+=1,Date.now()>=s)break;await new Promise(n=>setTimeout(n,Math.min(i*r,Math.max(0,s-Date.now()))))}while(Date.now()<s);for(let n of this.e1PendingResolutions.values())this.e1DurableState.writeResolution(n);a.warn("E1: graceful lifecycle ended with durable exact-clear work pending",{count:this.e1PendingResolutions.size})}beginE1PromptResolutions(t,e){let i=[];for(let s of new Set(t))this.beginE1Resolution(s,e)&&i.push(s);return i}launchE1Resolutions(t){Promise.all([...t].map(e=>this.emitE1Resolution(e)))}async exactClearOpenE1ForLifecycleEnd(t){let e=[...this.e1PromptRaises.values()].filter(s=>s.record.sessionId===t).map(s=>s.record.promptId),i=this.beginE1PromptResolutions(e,t);await Promise.all(i.map(s=>this.emitE1Resolution(s)))}async refreshE1Ttls(){await this.drainPendingE1Resolutions(),await this.drainPendingE1ReRaises();let t=this.sessionState?.sessionId;if(!t)return;let e=[...this.e1PromptRaises.values()].filter(i=>i.record.sessionId===t&&(0,m.canRecoverPromptRaise)(i,this.e1RaiseInFlight.has(i.record.promptId))).map(i=>i.record.promptId);if(e.length!==0)try{let i=await this.appSyncClient.refreshOpenPromptTtl(e);for(let s of i){let r=this.e1PromptRaises.get(s);r&&r.record.sessionId===t&&await this.reRaiseOneE1(t,r)}}catch(i){a.warn("E1: TTL-refresh tick failed (non-fatal, retries next tick)",{error:i instanceof Error?i.message:String(i)})}}startE1TtlRefresh(){this.e1TtlRefreshTimer&&clearInterval(this.e1TtlRefreshTimer),this.e1TtlRefreshTimer=setInterval(()=>{this.refreshE1Ttls()},o.E1_TTL_REFRESH_MS)}stopE1TtlRefresh(){this.e1TtlRefreshTimer&&(clearInterval(this.e1TtlRefreshTimer),this.e1TtlRefreshTimer=null)}isExpectedSessionStateCurrent(t){return!this.isStopping&&this.sessionState===t&&!this.terminalInputBlockedStates.has(t)}sendSessionPinnedInput(t,e){if(!this.isExpectedSessionStateCurrent(t)||this.terminalInputBlockedStates.has(t))return Promise.resolve(!1);let i=this.terminalInputChain.then(async()=>!this.isExpectedSessionStateCurrent(t)||this.terminalInputBlockedStates.has(t)||!await this.verifyNoActiveCodexChooser(t.sessionId)||!await this.promptResponder.sendLiteral(t.sessionId,e)||(await new Promise(s=>setTimeout(s,500)),!this.isExpectedSessionStateCurrent(t))||!await this.verifyNoActiveCodexChooser(t.sessionId)?!1:this.promptResponder.sendKey(t.sessionId,"Enter"));return this.terminalInputChain=i.then(()=>{},()=>{}),i}async verifyNoActiveCodexChooser(t){try{let e=await this.tmuxPaneObserver.captureSnapshot();return!this.tmuxPaneObserver.extractActiveApprovalBlock(e)}catch(e){return a.warn("Failed to verify that no Codex chooser is active",{sessionId:t,error:e instanceof Error?e.message:String(e)}),!1}}sendVerifiedPromptInput(t,e,i){if(!this.isExpectedSessionStateCurrent(t))return Promise.resolve("stale");let s=this.terminalInputChain.then(async()=>{if(!this.isExpectedSessionStateCurrent(t)||this.pendingInteractivePrompt!==e||e.ownerSessionId!==t.sessionId)return"stale";if(!e.observerMatchKey)return a.warn("Refusing mobile prompt input without a captured pane identity",{sessionId:t.sessionId,promptId:e.promptId}),"unverified";let r=null;try{let l=await this.tmuxPaneObserver.captureSnapshot(),p=this.tmuxPaneObserver.extractActiveApprovalBlock(l),d=p?(0,B.parseInteractivePrompt)(p):null;r=d?this.buildObserverPromptMatchKey(d):null}catch(l){return a.warn("Failed to re-probe Codex prompt before mobile input",{sessionId:t.sessionId,promptId:e.promptId,error:l instanceof Error?l.message:String(l)}),"unverified"}return!this.isExpectedSessionStateCurrent(t)||this.pendingInteractivePrompt!==e?"stale":!r||r!==e.observerMatchKey?(a.warn("Refusing mobile input because the live Codex prompt changed",{sessionId:t.sessionId,promptId:e.promptId,hasLiveIdentity:!!r}),"unverified"):(i===Y?await this.promptResponder.sendKey(t.sessionId,"Escape"):await this.promptResponder.sendLiteral(t.sessionId,i))?"sent":"send_failed"});return this.terminalInputChain=s.then(()=>{},()=>{}),s}sendVerifiedFollowUpAfterDismissal(t,e,i){let s=this.terminalInputChain.then(async()=>{let r=()=>this.isExpectedSessionStateCurrent(t)&&e.ownerSessionId===t.sessionId;return r()?!await this.verifyNoActiveCodexChooser(t.sessionId)||!r()?"unverified":await this.promptResponder.sendLiteral(t.sessionId,i)?(await new Promise(n=>setTimeout(n,500)),r()?!await this.verifyNoActiveCodexChooser(t.sessionId)||!r()?"unverified":await this.promptResponder.sendKey(t.sessionId,"Enter")?"sent":"send_failed":"stale"):"send_failed":"stale"});return this.terminalInputChain=s.then(()=>{},()=>{}),s}sendConversationContinuation(t,e){if(!this.isExpectedSessionStateCurrent(t))return Promise.resolve("stale");let i=this.terminalInputChain.then(async()=>{if(!this.isExpectedSessionStateCurrent(t))return"stale";try{let s=await this.tmuxPaneObserver.captureSnapshot();if(this.tmuxPaneObserver.extractActiveApprovalBlock(s)){if(!await this.promptResponder.sendKey(t.sessionId,"Escape"))return"send_failed";if(await new Promise(r=>setTimeout(r,200)),!this.isExpectedSessionStateCurrent(t))return"stale";if(!await this.verifyNoActiveCodexChooser(t.sessionId))return"unverified"}}catch(s){return a.warn("Failed to inspect Codex chooser before conversation continuation",{sessionId:t.sessionId,error:s instanceof Error?s.message:String(s)}),"unverified"}return await this.promptResponder.sendLiteral(t.sessionId,e)?(await new Promise(s=>setTimeout(s,500)),this.isExpectedSessionStateCurrent(t)?await this.verifyNoActiveCodexChooser(t.sessionId)?await this.promptResponder.sendKey(t.sessionId,"Enter")?"sent":"send_failed":"unverified":"stale"):"send_failed"});return this.terminalInputChain=i.then(()=>{},()=>{}),i}handleEventFromHook(t){if(this.isStopping)return Promise.resolve();let e=this.lifecycleGeneration,i=this.registerQueuedPermissionRequest(t,e),s=this.hookEventChain.then(()=>this.processHookEvent(t,e,i??void 0)),r=i?s.finally(()=>this.unregisterQueuedPermissionRequest(i)):s;return this.hookEventChain=r.catch(n=>{a.error("[Hooks] event handler failed",{hookEvent:t.hook_event_name,sessionId:t.session_id,error:n instanceof Error?n.message:String(n)})}),r}registerQueuedPermissionRequest(t,e){if(t.hook_event_name!=="PermissionRequest"||!this.sessionState||this.sessionWatcher.getAuthoritativeSessionId()!==t.session_id)return null;let i=this.sessionState.sessionId;this.queuedPermissionRequestSessionCounts.set(i,(this.queuedPermissionRequestSessionCounts.get(i)??0)+1);let s=this.buildApprovalPromptContextFromHookPayload(t),r=this.buildApprovalDedupeKey(s),n=`permission:${(0,se.v4)()}`,l=r?`${i}::${r}`:void 0;l&&this.queuedPermissionRequestDedupeKeys.set(l,(this.queuedPermissionRequestDedupeKeys.get(l)??0)+1);let p={sessionId:i,lifecycleGeneration:e,context:s,dedupeKey:r,occurrenceKey:n,dedupeRegistryKey:l,disposition:"pending"};if(r){let c=this.permissionRequestOccurrencesByCompletionKey.get(r)??[];c.push({occurrenceKey:n,hookObserved:!1,jsonlObserved:!1}),this.permissionRequestOccurrencesByCompletionKey.set(r,c)}let d=this.queuedPermissionRequestRegistrations.get(i)??[];return d.push(p),this.queuedPermissionRequestRegistrations.set(i,d),p}async unregisterQueuedPermissionRequest(t){let e=this.queuedPermissionRequestSessionCounts.get(t.sessionId)??0;if(e<=1?this.queuedPermissionRequestSessionCounts.delete(t.sessionId):this.queuedPermissionRequestSessionCounts.set(t.sessionId,e-1),t.dedupeRegistryKey){let l=this.queuedPermissionRequestDedupeKeys.get(t.dedupeRegistryKey)??0;l<=1?this.queuedPermissionRequestDedupeKeys.delete(t.dedupeRegistryKey):this.queuedPermissionRequestDedupeKeys.set(t.dedupeRegistryKey,l-1)}let s=(this.queuedPermissionRequestRegistrations.get(t.sessionId)??[]).filter(l=>l!==t);s.length>0?this.queuedPermissionRequestRegistrations.set(t.sessionId,s):this.queuedPermissionRequestRegistrations.delete(t.sessionId),(t.disposition==="pending"||t.disposition==="dropped"||this.sessionState?.sessionId!==t.sessionId)&&this.removePermissionRequestOccurrence(t.dedupeKey,t.occurrenceKey);let r=this.deferredTmuxPromptCandidates.get(t);if(!r)return;if(this.deferredTmuxPromptCandidates.delete(t),!this.isLifecycleCurrent(t.lifecycleGeneration)){t.disposition="dropped",this.removePermissionRequestOccurrence(t.dedupeKey,t.occurrenceKey),a.debug("Discarding deferred tmux prompt after lifecycle invalidation",{sessionId:t.sessionId,lifecycleGeneration:t.lifecycleGeneration,currentLifecycleGeneration:this.lifecycleGeneration});return}let n=this.hasRecentlyResolvedApprovalDedupeKey(t.sessionId,t.occurrenceKey);if(t.disposition==="covered"||t.disposition==="resolved"||n){a.debug("Discarding deferred tmux prompt covered by its PermissionRequest",{sessionId:t.sessionId,dedupeKey:t.dedupeKey,disposition:t.disposition});return}if(!(t.disposition==="dropped"||this.sessionState?.sessionId!==t.sessionId)){a.debug("Replaying deferred tmux prompt after PermissionRequest produced no durable owner",{sessionId:t.sessionId,dedupeKey:t.dedupeKey});try{await this.handleTmuxPromptCandidate(r.snapshot,t,r.promptHash)}catch(l){a.error("Failed to replay deferred tmux prompt candidate",{sessionId:t.sessionId,error:l instanceof Error?l.message:String(l)})}}}removePermissionRequestOccurrence(t,e){if(!t||!e)return;let i=this.permissionRequestOccurrencesByCompletionKey.get(t);if(!i)return;let s=i.filter(r=>r.occurrenceKey!==e);s.length>0?this.permissionRequestOccurrencesByCompletionKey.set(t,s):this.permissionRequestOccurrencesByCompletionKey.delete(t)}observePermissionRequestCompletion(t,e){if(!t)return{shouldResolve:!0};let i=this.permissionRequestOccurrencesByCompletionKey.get(t);if(!i)return{shouldResolve:!0};let s=e==="hook"?"hookObserved":"jsonlObserved",r=i.find(l=>!l[s]);if(!r)return a.debug("Ignoring duplicate interactive-prompt completion observation",{completionKey:t,producer:e}),{shouldResolve:!1};let n=!r.hookObserved&&!r.jsonlObserved;return r[s]=!0,r.hookObserved&&r.jsonlObserved&&this.removePermissionRequestOccurrence(t,r.occurrenceKey),{shouldResolve:n,occurrenceKey:r.occurrenceKey}}isPermissionRequestOccurrenceKey(t){return t.startsWith("permission:")}consumeRecoveryPermissionReplay(t,e,i){let s=this.recoveryPermissionReplay,r=this.pendingInteractivePrompt;return!s||!e||s.ownerSessionId!==t.sessionId||s.completionKey!==e||r?.ownerSessionId!==t.sessionId||r.source!=="permission_hook"||r.dedupeKey!==s.occurrenceKey||r.completionKey!==s.completionKey?!1:(this.recoveryPermissionReplay=null,i&&(this.removePermissionRequestOccurrence(i.dedupeKey,i.occurrenceKey),i.occurrenceKey=s.occurrenceKey,i.disposition="covered"),a.info("[Hooks] Reused adopted PermissionRequest occurrence for one recovery replay",{sessionId:t.sessionId,completionKey:e,occurrenceKey:s.occurrenceKey}),!0)}async processHookEvent(t,e,i){if(!this.isLifecycleCurrent(e))return;let{session_id:s,hook_event_name:r,type:n,content:l,metadata:p}=t;a.info("[Hooks] Received event",{sessionId:s,hookEvent:r,type:n,contentLength:l?.length});let d=this.sessionWatcher.getAuthoritativeSessionId();if(d&&d!==s){a.warn("[Hooks] Rejecting event for foreign native session",{hookEvent:r,sessionId:s,authoritativeSessionId:d});return}if(p?.transcript_path){let f=await this.sessionWatcher.bindToSessionTranscript(p.transcript_path,s);if(!this.isLifecycleCurrent(e))return;let y=f.status==="pending"?await f.completion:f;if(!this.isLifecycleCurrent(e))return;if(y.status!=="bound"){a.warn("[Hooks] Rejecting event whose transcript ownership was not proven",{hookEvent:r,sessionId:s,reason:y.reason});return}}else if(d!==s){a.warn("[Hooks] Rejecting event without an owned transcript",{hookEvent:r,sessionId:s});return}if(!this.isLifecycleCurrent(e)||this.sessionWatcher.getAuthoritativeSessionId()!==s){a.warn("[Hooks] Rejecting event after ownership changed during admission",{hookEvent:r,sessionId:s,authoritativeSessionId:this.sessionWatcher.getAuthoritativeSessionId()});return}if(this.hooksActive=!0,r==="SessionStart"){if(this.launchSessionInitPromise&&(await this.launchSessionInitPromise,!this.isLifecycleCurrent(e)))return;if(this.sessionState){if(a.info("[Hooks] SessionStart \u2014 launch session already exists, updating codexSessionId",{existingSessionId:this.sessionState.sessionId,codexSessionId:s}),this.sessionState.codexSessionId=s,this.sessionState.metadata={...this.sessionState.metadata,codexSessionId:s,cliVersion:p?.model||"unknown",modelProvider:p?.model||"unknown",launchSession:void 0},this.appSyncClient.updateSession({sessionId:this.sessionState.sessionId,metadata:this.sessionState.metadata}).catch(f=>a.warn("Failed to update session metadata",{error:f})),await this.startTmuxObserverWithBeacon("session_start_existing"),!this.isLifecycleCurrent(e))return;await this.ensureToolActivityStarted(s)}else{let f={id:s,timestamp:new Date().toISOString(),cwd:p?.cwd||process.cwd(),originator:"hook",cli_version:p?.model||"unknown",instructions:null,source:p?.source||"startup",model_provider:p?.model||"unknown"};await this.ensureSessionStarted(f)}return}if(!this.sessionState){a.warn("[Hooks] Hook event for un-bootstrapped session \u2014 self-healing via session bootstrap (#638)",{hookEvent:r,sessionId:s});let f={id:s,timestamp:new Date().toISOString(),cwd:p?.cwd||process.cwd(),originator:"hook",cli_version:p?.model||"unknown",instructions:null,source:p?.source||"startup",model_provider:p?.model||"unknown"};if(await this.ensureSessionStarted(f),!this.isLifecycleCurrent(e))return;if(!this.sessionState){a.warn("[Hooks] Session still not initialized after self-heal, dropping event",{hook_event_name:r});return}}let c=this.sessionState,u=c.sessionId;if(n==="USER_PROMPT"&&(this.approvalDetector.clear(),this.clearInteractivePromptsForAcceptedInput(c)),n==="USER_PROMPT"&&l){let f=this.consumeRecentMobilePrompt(u,l);if(f){a.info("[Hooks] Skipping duplicate USER_PROMPT from mobile",{sessionId:u,matchType:f.matchType,originalLength:f.originalLength,echoLength:f.echoLength});return}}if(r==="PreToolUse"){a.debug("[Hooks] PreToolUse observed; AppSync emission suppressed",{toolName:p?.tool_name||"unknown",sessionId:u});return}if(r==="PermissionRequest"){let f=i??this.registerQueuedPermissionRequest(t,e);if(!f){a.error("[Hooks] Dropping admitted PermissionRequest without occurrence registration",{sessionId:u,nativeSessionId:s});return}try{await this.handlePermissionRequestHook(t,c,f)}finally{i||await this.unregisterQueuedPermissionRequest(f)}return}if(r==="PostToolUse"){let f=this.buildApprovalPromptContextFromHookPayload(t),y=this.buildApprovalDedupeKey(f),h=this.firstString(p?.tool_use_id,p?.call_id,p?.callId)??"",v=this.observePermissionRequestCompletion(y,"hook");if(v.shouldResolve&&await this.clearResolvedInteractivePrompt(h,v.occurrenceKey??y),!this.isExpectedSessionStateCurrent(c)||this.toolActivity?.isActive()&&await this.toolActivity.observeCall({callId:p?.tool_use_id??p?.call_id??p?.callId,toolName:p?.tool_name,toolInput:p?.tool_input})!=="closed")return;let P=this.encryptForEmit(l,p,m.EventType.TOOL_USE,u);if(!P)return;let E=P.content,S=P.metadata,b=P.isEncrypted,O=p?.tool_use_id??p?.call_id??p?.callId,L=typeof O=="string"&&O.length>0&&!!this.sessionKey,C=L?this.getToolActivityLegacyRecorder(u):void 0;C&&L&&C.markLegacyInFlight(O);try{let D=await this.appSyncClient.createEvent({sessionId:u,type:m.EventType.TOOL_USE,source:m.EventSource.DESKTOP,content:E,metadata:S,isEncrypted:b,timestamp:(0,m.prepareEventTimestamp)({orderingKey:u})});C&&L&&((0,m.isPersistedEventResult)(D)?await C.finalizeLegacyOwned([O]):C.clearLegacyInFlight(O))}catch(D){throw C&&L&&C.clearLegacyInFlight(O),D}return}if(n==="ASSISTANT_RESPONSE"||n==="USER_PROMPT"){if(n==="ASSISTANT_RESPONSE"){this.sessionWatcher.getBindSource()==="authoritative"&&this.sessionWatcher.getAuthoritativeSessionId()===s?a.debug("[Hooks] Suppressing Stop final \u2014 JSONL watcher authoritatively bound to this session (Bug #2)"):a.warn("[Hooks] Dropping Stop final after authoritative ownership changed",{authoritativeSessionId:this.sessionWatcher.getAuthoritativeSessionId()});return}let f=this.encryptForEmit(l,void 0,m.EventType.USER_PROMPT,u);if(!f)return;await this.appSyncClient.createEvent({sessionId:u,type:m.EventType.USER_PROMPT,source:m.EventSource.DESKTOP,content:f.content,isEncrypted:f.isEncrypted,timestamp:(0,m.prepareEventTimestamp)({orderingKey:u})});return}}mapToolName(t){return{shell_command:"Bash",shell:"Bash",apply_patch:"Edit",create_file:"Write",read_file:"Read"}[t]||t}trackMobilePrompt(t,e){this.mobilePromptDeduper.track(t,e),a.debug("Tracking mobile prompt for USER_PROMPT echo deduplication",{sessionId:t,promptLength:e.trim().length})}forgetMobilePrompt(t,e){this.mobilePromptDeduper.forget(t,e)}consumeRecentMobilePrompt(t,e){return this.mobilePromptDeduper.consumeIfDuplicate(t,e)}setupEventHandlers(){this.sessionWatcher.on("session-started",async t=>{try{if(this.launchSessionInitPromise&&await this.launchSessionInitPromise,this.sessionState){a.info("[JSONL] Session already active, skipping",{currentSessionId:this.sessionState.sessionId,codexSessionId:t.id}),await this.ensureToolActivityStarted(t.id);return}await this.ensureSessionStarted(t)}catch(e){a.error("[JSONL] session-started handler failed (non-fatal) \u2014 next event retries",{codexSessionId:t?.id,error:String(e)})}}),this.sessionWatcher.on("log-entry",t=>{this.enqueueLogEntry(t)}),this.approvalDetector.on("approval-pending",async t=>{try{await this.handleApprovalPending(t)}catch(e){a.error("approval-pending handler failed (non-fatal)",{error:String(e)})}}),this.tmuxPaneObserver.on("prompt-candidate",async t=>{try{await this.handleTmuxPromptCandidate(t.snapshot,void 0,t.promptHash)}catch(e){a.error("prompt-candidate handler failed (non-fatal)",{error:String(e)})}}),this.tmuxPaneObserver.on("prompt-cleared",t=>{let e=this.sessionState;e&&this.clearObservedInteractivePrompt(e,t.promptHash).catch(i=>{a.error("prompt-cleared handler failed (non-fatal)",{error:String(i)})})}),this.tmuxPaneObserver.on("observer-error",t=>{a.debug("Tmux pane observer error",{error:t})}),this.sessionWatcher.on("error",t=>{a.error("Session watcher error:",t)})}async ensureSessionStarted(t,e){if(this.isStopping||(this.launchSessionInitPromise&&await this.launchSessionInitPromise,this.isStopping)||this.sessionState)return;process.env[ye]==="1"&&await this.bindRecoveryBootstrapIdentity(t.id);let i=this.sessionBootstrapRetryAt-Date.now();if(i>0){a.warn("Session bootstrap is in retry backoff; hook will be retried later",{codexSessionId:t.id,retryDelayMs:i,failureCount:this.sessionBootstrapFailureCount});return}if(this.sessionStartedInitPromise){try{await this.sessionStartedInitPromise}catch{}return}let s=this.handleSessionStarted(t,e);this.sessionStartedInitPromise=s.catch(()=>{});try{await s}finally{this.sessionStartedInitPromise=null}}async handleSessionStarted(t,e){if(this.isStopping)return;let i=this.lifecycleGeneration;a.info("Handling new Codex session",{codexSessionId:t.id}),this.isInitializingSession=!0,this.bufferedLogEntries=[],this.sessionState&&await this.endActiveSession("new-codex-session-started");let s=process.env.CODEX_WORKING_DIRECTORY||t.cwd||process.cwd(),r=this.getOrCreateBootstrapSessionId(),n=this.appSyncClient.getCurrentUserId(),l={codexSessionId:t.id,cliVersion:t.cli_version,modelProvider:t.model_provider},p={sessionKey:null,sessionIsEncrypted:!0};try{let d={sessionId:r,userId:n,agentType:m.AgentType.CODEX,projectPath:s,metadata:l},c=await this.resumeOrCreateBootstrapSession(d);if(r=c.sessionId,!this.isLifecycleCurrent(i)){this.isInitializingSession=!1,await this.retireCancelledBootstrap(r,"session_started");return}this.sessionKey=c.sessionKey,this.sessionKeyGen=c.sessionKeyGen,this.sessionIsEncrypted=!!c.sessionKey,p={sessionKey:c.sessionKey,sessionIsEncrypted:!!c.sessionKey},await _("daemon_init_step_completed",{step:"session_resume_or_create",path:"session_started"})}catch(d){if(this.isInitializingSession=!1,!this.isLifecycleCurrent(i)){let c=this.authoritativeSessionIdFromError(d)??r;await this.retireCancelledBootstrap(c,"session_started_error");return}throw await _("daemon_init_step_failed",{step:"session_resume_or_create",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),d?.code==="ENCRYPTED_SESSION_NO_KEY"&&(this.sessionIsEncrypted=!0,this.sessionKey=null),this.bindBootstrapIdentityFromError(d),this.recordSessionBootstrapFailure(d,"session_started"),a.error("Failed to create/resume session:",d),d}try{this.sessionState={sessionId:r,userId:n,projectPath:s,cwd:t.cwd,createdAt:new Date,subscriptionActive:!1,metadata:l,encryptionSnapshot:p,codexSessionId:t.id,codexLogFile:this.sessionWatcher.getActiveLogFile()||void 0},this.clearSessionBootstrapFailure(),this.bootstrapSessionId=null,this.recoveryBootstrapOwnerBound=!1,await _("daemon_init_step_completed",{step:"session_state_set",path:"session_started"})}catch(d){await _("daemon_init_step_failed",{step:"session_state_set",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to set session state:",d)}await this.adoptDaemonHandoffState(r),this.sessionState&&this.rebindWaitingPermissionRequests(this.sessionState),await this.ensureToolActivityStarted(t.id);try{this.subscribeToMobileEvents(r)?await _("daemon_init_step_completed",{step:"subscribe_mobile_events",path:"session_started"}):await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"session_started",error_class:"SubscriptionSetupFailed",error_message:"subscribeToMobileEvents returned false"})}catch(d){await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to subscribe to mobile events:",d)}if(e)try{await e()}catch(d){a.error("E1: pre-heartbeat re-raise hook failed (non-fatal)",{sessionId:r,error:d instanceof Error?d.message:String(d)})}try{await this.drainRetirementOrphans(r)}catch(d){a.error("E1: retirement-orphan drain failed (non-fatal)",{sessionId:r,error:d instanceof Error?d.message:String(d)})}try{await this.appSyncClient.startHeartbeat(r)?await _("daemon_init_step_completed",{step:"heartbeat_start",path:"session_started"}):(await _("daemon_init_step_failed",{step:"heartbeat_start",path:"session_started",error_class:"InitialHeartbeatNotPersisted",error_message:"Backend did not confirm the initial heartbeat mutation"}),a.error("Initial session heartbeat was not persisted",{sessionId:r}))}catch(d){await _("daemon_init_step_failed",{step:"heartbeat_start",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to start heartbeat:",d)}try{await this.subscribeToOnApplyUserDecision(r)}catch(d){a.error("Failed to subscribe to onApplyUserDecision (non-fatal)",{error:d})}this.startMobileEndWatcher(r);try{await this.flushBufferedLogEntries(),await _("daemon_init_step_completed",{step:"flush_buffered_entries",path:"session_started"})}catch(d){await _("daemon_init_step_failed",{step:"flush_buffered_entries",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to flush buffered log entries:",d),this.bufferedLogEntries=[]}await this.startTmuxObserverWithBeacon("session_started"),this.isInitializingSession=!1}getOrCreateBootstrapSessionId(){return this.bootstrapSessionId||(this.bootstrapSessionId=X.mintBackendSessionId()),this.bootstrapSessionId}async bindRecoveryBootstrapIdentity(t){if(!(process.env[ye]!=="1"||this.bootstrapSessionId||this.sessionState||!t))try{let e=await this.buildToolActivityIntegration().recordedBackendSessionId(t);if(!e){a.warn("Recovery daemon found no durable backend owner; a new session will be created",{rolloutId:t});return}if(!/^codex-[A-Za-z0-9_-]{1,180}$/.test(e)){a.warn("Recovery daemon ignored invalid durable backend owner",{rolloutId:t});return}this.bootstrapSessionId=e,this.recoveryBootstrapOwnerBound=!0,a.info("Recovery daemon reclaiming existing backend session",{rolloutId:t,sessionId:e})}catch(e){a.warn("Recovery daemon could not read the durable rollout owner; a new session will be created",{rolloutId:t,error:e instanceof Error?e.message:String(e)})}}isSessionIdReservedRejection(t){return(t instanceof Error?t.message:String(t)).includes("SESSION_ID_RESERVED")}async resumeOrCreateBootstrapSession(t){try{return await this.resumeBackendSession(t,this.appSyncClient,a)}catch(e){if(!this.recoveryBootstrapOwnerBound||!this.isSessionIdReservedRejection(e))throw e;return a.warn("Recovery discarded a permanently reserved pending create; retrying the durable rollout owner",{sessionId:t.sessionId}),this.resumeBackendSession(t,this.appSyncClient,a)}}startTmuxLifecycleMonitor(){if(this.tmuxLifecycleTimer)return;let t=process.env[$];t&&(this.tmuxLifecycleInitDeadlineMs=Date.now()+Ci,this.tmuxLifecycleTimer=setInterval(()=>{this.checkTmuxLifecycle(t)},xi),this.tmuxLifecycleTimer.unref?.(),this.checkTmuxLifecycle(t))}async tmuxSessionState(t){try{return await _i("tmux",["has-session","-t",t]),"alive"}catch(e){let i=_t(e);return i==="absent"?i:(a.warn("Could not inspect native Codex tmux session; preserving daemon",{tmuxSession:t,error:e instanceof Error?e.message:String(e)}),"unknown")}}async checkTmuxLifecycle(t){if(!(this.isStopping||this.tmuxLifecycleCheckInFlight)){this.tmuxLifecycleCheckInFlight=!0;try{let e=await this.tmuxSessionState(t);if(e==="alive"){this.tmuxLifecycleObservedAlive=!0;return}let i=this.tmuxLifecycleObservedAlive||Date.now()>=this.tmuxLifecycleInitDeadlineMs;if(e==="unknown"||!i||this.isStopping)return;this.stopTmuxLifecycleMonitor(),a.info("Native Codex tmux session ended; stopping companion daemon",{tmuxSession:t}),this.stop().then(()=>process.exit(0),s=>{a.error("Failed to stop companion daemon after native session end",{error:s instanceof Error?s.message:String(s)}),process.exit(1)})}finally{this.tmuxLifecycleCheckInFlight=!1}}}stopTmuxLifecycleMonitor(){this.tmuxLifecycleTimer&&(clearInterval(this.tmuxLifecycleTimer),this.tmuxLifecycleTimer=null)}async stopForTerminalSignal(t){if(t==="SIGHUP"){let e=process.env[$];if(e){let i=await this.tmuxSessionState(e);if(i!=="absent")return a.info("Ignoring SIGHUP while native Codex tmux session remains available",{tmuxSession:e,state:i}),!1}}return await this.stop(),!0}isLifecycleCurrent(t){return!this.isStopping&&this.lifecycleGeneration===t}authoritativeSessionIdFromError(t){let e=t?.authoritativeSessionId;return typeof e=="string"&&e.length>0?e:null}async retireCancelledBootstrap(t,e){this.appSyncClient.stopHeartbeat(t),this.appSyncClient.cleanupSubscription(t);try{await this.appSyncClient.updateSession({sessionId:t,status:m.SessionStatus.INACTIVE}),a.info("Cancelled bootstrap row marked INACTIVE",{sessionId:t,path:e})}catch(i){a.warn("Cancelled bootstrap row could not be marked INACTIVE",{sessionId:t,path:e,error:i instanceof Error?i.message:String(i)})}}bindBootstrapIdentityFromError(t){let e=t?.authoritativeSessionId;typeof e!="string"||e.length===0||(this.bootstrapSessionId=e,a.info("Retained authoritative backend identity from failed bootstrap",{sessionId:e}))}recoverRetiredBackendSession(t){if(this.retiredSessionRecoveryPromise)return this.retiredSessionRecoveryPromise;if(this.isStopping)return Promise.resolve();let e=(async()=>{if(this.launchSessionInitPromise&&await this.launchSessionInitPromise,this.sessionStartedInitPromise&&await this.sessionStartedInitPromise,this.isStopping)return;let i=this.sessionState;if(!i||i.sessionId!==t)return;let s={id:i.codexSessionId||t,timestamp:new Date().toISOString(),cwd:i.cwd||i.projectPath,originator:"codevibe-retired-session-recovery",cli_version:String(i.metadata?.cliVersion??"unknown"),instructions:null,source:"codevibe",model_provider:String(i.metadata?.modelProvider??"unknown")};a.warn("Backend retired live Codex session; creating replacement row",{sessionId:t,codexSessionId:s.id}),this.parkRetirementOrphans(t),await this.endActiveSession("backend-generation-retired"),this.bootstrapSessionId=X.mintBackendSessionId(),this.recoveryBootstrapOwnerBound=!1,this.clearSessionBootstrapFailure(),await this.ensureSessionStarted(s)})();return this.retiredSessionRecoveryPromise=e.finally(()=>{this.retiredSessionRecoveryPromise=null}),this.retiredSessionRecoveryPromise}recordSessionBootstrapFailure(t,e){this.sessionBootstrapFailureCount+=1;let i=t instanceof Error?t.message:String(t),r=i.includes("SESSION_LIMIT_EXCEEDED")?6e4:Math.min(5e3*2**(this.sessionBootstrapFailureCount-1),6e4);this.sessionBootstrapRetryAt=Date.now()+r,a.warn("Session bootstrap retry scheduled",{path:e,requestedSessionId:this.bootstrapSessionId,failureCount:this.sessionBootstrapFailureCount,delayMs:r,error:i})}clearSessionBootstrapFailure(){this.sessionBootstrapFailureCount=0,this.sessionBootstrapRetryAt=0}async flushBufferedLogEntries(){if(this.bufferedLogEntries.length===0)return;let t=this.bufferedLogEntries;this.bufferedLogEntries=[],a.info("Flushing buffered log entries after session initialization",{count:t.length,sessionId:this.sessionState?.sessionId});let e=Promise.resolve();for(let i of t)e=this.enqueueLogEntry(i);await e.catch(()=>{})}enqueueLogEntry(t){let e=this.logEntryChain.then(()=>this.handleLogEntry(t));return this.logEntryChain=e.catch(i=>{a.error("[JSONL] log entry handler failed",{type:t.type,err:String(i)})}),e}async handleLogEntry(t){if(!this.sessionState){if(this.isInitializingSession){this.bufferedLogEntries.push(t),a.debug("Buffering log entry until session initialization completes",{type:t.type,bufferedCount:this.bufferedLogEntries.length});return}a.warn("Received log entry but no active session");return}let e=this.sessionState,i=e.sessionId,{sessionKey:s,sessionIsEncrypted:r}=e.encryptionSnapshot;if(t.type==="event_msg"&&t.payload?.type==="turn_aborted"&&(this.approvalDetector.clear(),this.clearInteractivePromptsForAcceptedInput(e)),t.type==="response_item"&&t.payload){let h=t.payload.type;if(h==="function_call"||h==="custom_tool_call")this.approvalDetector.onToolCallStart(t.payload.call_id,t.payload.name,t.payload.arguments||t.payload.input||"");else if(h==="function_call_output"||h==="custom_tool_call_output"){let v=this.approvalDetector.getPendingCalls().find(S=>S.callId===t.payload.call_id),P=v?this.buildApprovalDedupeKey(this.buildApprovalPromptContextFromPendingCall(v)):void 0;this.approvalDetector.onToolCallComplete(t.payload.call_id);let E=this.observePermissionRequestCompletion(P,"jsonl");if(E.shouldResolve&&await this.clearResolvedInteractivePrompt(t.payload.call_id,E.occurrenceKey??P),!this.isExpectedSessionStateCurrent(e))return}}let n=Ye(t,i);if(!n)return;n.timestamp=(0,m.prepareEventTimestamp)({orderingKey:i,agentClock:t.timestamp});let l=t.payload?.type,p=!1;if(this.toolActivity?.isActive()&&n.type===m.EventType.TOOL_USE){let h=l==="function_call"||l==="custom_tool_call",v=l==="function_call_output"||l==="custom_tool_call_output";if(h&&typeof t.payload?.call_id=="string"){let P=this.sessionWatcher.getActiveLogFile();P&&this.toolActivity.bindTranscript(P);let E=await this.toolActivity.observeCall({callId:t.payload.call_id,toolName:n.metadata?.toolName??n.metadata?.tool_name,toolInput:n.metadata?.toolInput??n.metadata?.tool_input,ts:t.timestamp});if(!this.isExpectedSessionStateCurrent(e)||E!=="closed")return;p=!0}if(v)return}if(this.toolActivity?.isActive()&&(l==="user_message"||l==="agent_message")&&(await this.toolActivity.flush().catch(h=>a.warn("[tool-activity] codex boundary flush failed",{sessionId:i,err:String(h)})),!this.isExpectedSessionStateCurrent(e)))return;let d=l==="function_call"||l==="function_call_output",c=n.type===m.EventType.USER_PROMPT||n.type===m.EventType.ASSISTANT_RESPONSE||d&&(n.type===m.EventType.TOOL_USE||n.type===m.EventType.INTERACTIVE_PROMPT);if(!this.hooksActive&&c&&(await this.emitHooksCompatibilityModeNotice(e),!this.isExpectedSessionStateCurrent(e)))return;if(this.hooksActive){if(n.type===m.EventType.USER_PROMPT){a.debug("[JSONL] Skipping USER_PROMPT \u2014 hooks deliver it",{type:n.type});return}if(d&&(n.type===m.EventType.TOOL_USE||n.type===m.EventType.INTERACTIVE_PROMPT)&&!p){a.debug("[JSONL] Skipping function_call \u2014 hooks deliver this",{type:n.type,tool:t.payload?.name});return}}if(n.type===m.EventType.USER_PROMPT&&n.source===m.EventSource.DESKTOP){let h=this.consumeRecentMobilePrompt(i,n.content);if(h){a.info("[JSONL] Skipping duplicate USER_PROMPT from mobile",{sessionId:i,matchType:h.matchType,originalLength:h.originalLength,echoLength:h.echoLength});return}}if(this.sessionState!==e){a.warn("[JSONL] Dropping event from stale session generation (#638)",{sessionId:i,currentSessionId:this.sessionState?.sessionId});return}let u=t.payload?.call_id,f=n.type===m.EventType.TOOL_USE&&typeof u=="string"&&u.length>0&&!!s,y=f?this.getToolActivityLegacyRecorder(i):void 0;y&&f&&y.markLegacyInFlight(u);try{let h=(0,m.encryptForEmit)(s,r,n.content,n.metadata);if(!h){a.error("No session key for ENCRYPTED session \u2014 dropping JSONL event (fail-closed, #638)",{type:n.type,sessionId:i});return}n.content=h.content,n.metadata=h.metadata,h.isEncrypted&&(n.isEncrypted=!0,a.debug("Event encrypted",{type:n.type}));let v=await this.appSyncClient.createEvent(n);a.debug("Event synced to backend",{type:n.type,encrypted:h.isEncrypted}),y&&f&&((0,m.isPersistedEventResult)(v)?await y.finalizeLegacyOwned([u]):y.clearLegacyInFlight(u))}catch(h){y&&f&&y.clearLegacyInFlight(u),a.error("Failed to sync event:",h)}}async handlePermissionRequestHook(t,e,i){if(!this.isExpectedSessionStateCurrent(e)){i&&(i.disposition="dropped");return}let s=i?.context??this.buildApprovalPromptContextFromHookPayload(t),r=i?.dedupeKey??this.buildApprovalDedupeKey(s);if(this.consumeRecoveryPermissionReplay(e,r,i))return;let n=i?.occurrenceKey??`permission:${(0,se.v4)()}`,l={ownerState:e,context:s,dedupeKey:r,occurrenceKey:n,registration:i};this.permissionRequestHookInFlight=l;try{let p=await this.handlePermissionRequestHookWhileTracked(t,e,s,n,r);i&&(i.disposition=p)}finally{this.permissionRequestHookInFlight===l&&(this.permissionRequestHookInFlight=null)}}buildApprovalPromptContextFromHookPayload(t){let e=t.metadata||{},i=typeof e.tool_name=="string"?e.tool_name:"Tool",s=e.tool_input,r=this.firstString(s?.command,s?.cmd),n=V(r)||ee(r),l=i==="apply_patch"?this.firstString(s?.patch,r,typeof s=="string"?s:void 0):void 0,d=V(l)||n,c=!!d,u=d?"apply_patch":i,f=d||this.stringifyToolInput(s),y=d?this.extractFilePathFromToolInput("apply_patch",void 0,d):this.extractFilePathFromToolInput(u,s,f),h=d?this.resolveHookPatchPath(y,e.cwd):y;return{toolName:u,framedPatch:c,toolInput:s,rawInput:f,filePath:h,diff:c?f:void 0,hint:h&&this.mapToolNameForApproval(u)==="Edit"?`File: ${h}`:this.buildPermissionRequestHint(u,s,f)}}resolveHookPatchPath(t,e){if(!t||k.isAbsolute(t))return t;if(!(typeof e!="string"||!k.isAbsolute(e)))return k.resolve(e,t)}async handlePermissionRequestHookWhileTracked(t,e,i=this.buildApprovalPromptContextFromHookPayload(t),s=`permission:${(0,se.v4)()}`,r,n){let l=t.metadata||{},{toolName:p,toolInput:d,rawInput:c}=i,u=this.buildToolDetailsForInteractivePrompt(i),f=u.tool_name||this.mapToolNameForApproval(p),y=u.tool_input||this.buildFallbackToolInput(i),h=!!(f&&y);if(r??=this.buildApprovalDedupeKey({toolName:p,toolInput:d,filePath:i.filePath,rawInput:c,hint:i.hint}),this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s))return"resolved";let v=n??await this.tryParsePermissionRequestPromptFromTmux((D,Q)=>this.parsedPromptMatchesApprovalContext(D,i,Q),()=>this.isExpectedSessionStateCurrent(e));if(!this.isExpectedSessionStateCurrent(e))return a.warn("[Hooks] Dropping stale PermissionRequest after session generation changed",{sessionId:e.sessionId,currentSessionId:this.sessionState?.sessionId}),"dropped";if(this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s))return a.info("[Hooks] Dropping PermissionRequest completed while terminal options were being parsed",{sessionId:e.sessionId,toolName:p,occurrenceKey:s}),"resolved";let P=v?.parsedPrompt??null;if(!P)return v?.differentPrompt?(this.waitingPermissionRequests.set(s,{ownerState:e,context:i,occurrenceKey:s,dedupeKey:r,payload:t}),a.info("[Hooks] Queued PermissionRequest until its desktop dialog is visible",{sessionId:e.sessionId,occurrenceKey:s,toolName:p}),"waiting"):(a.warn("[Hooks] Suppressing PermissionRequest mobile prompt because exact Codex options are unavailable",{sessionId:e.sessionId,toolName:p,hint:i.hint}),this.raiseSuppressedBadge(e.sessionId,s,{suppressTmuxObserverUntilResolved:!0,observerSnapshot:v?.snapshot,completionKey:r}),"covered");let E=this.mapToolNameForApproval(p)==="Bash"?this.firstString(d?.command,d?.cmd):void 0,S=this.buildCodexPromptPresentation(P,E,v?.snapshot);if(!S)return a.warn("[Hooks] Suppressing PermissionRequest mobile prompt because Codex option hotkeys are unavailable",{sessionId:e.sessionId,toolName:p,hint:i.hint}),this.raiseSuppressedBadge(e.sessionId,s,{suppressTmuxObserverUntilResolved:!0,observerSnapshot:v?.snapshot,completionKey:r}),"covered";let b=s,O=this.buildApprovalPromptContent(S.content,{toolName:f,toolInput:y,hint:i.hint,filePath:i.filePath}),L={promptId:b,kind:S.kind,options:S.options,submitMap:S.submitMap,promptText:O,createdAt:Date.now(),source:"permission_hook",dedupeKey:s,completionKey:r,ownerSessionId:e.sessionId,observerMatchKey:this.buildObserverPromptMatchKey(P),observerPromptHash:v?.snapshot?this.tmuxPaneObserver.hashPromptSnapshot(v.snapshot):void 0,requiresFollowUpText:S.requiresFollowUpText},C={isApprovalHint:!0,toolName:p,toolInput:d,hint:i.hint,filePath:i.filePath,diff:i.diff,rawInput:c,tool_name:f,tool_input:y,has_details:h,options:S.options,instructions:S.instructions,prompt_source:P?"permission_hook_tmux":"permission_hook",permission_mode:l.permission_mode,turn_id:l.turn_id,dedupe_key:s};return a.info("[Hooks] Sending PermissionRequest interactive prompt",{sessionId:e.sessionId,toolName:p,promptId:b,promptSource:C.prompt_source,occurrenceKey:s}),await this.enqueueOrEmitInteractivePrompt({prompt:L,content:O,metadata:C,ownerState:e}),this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s)?"resolved":"covered"}async emitHooksCompatibilityModeNotice(t){if(this.hooksCompatibilityNoticeSent||!this.isExpectedSessionStateCurrent(t))return;this.hooksCompatibilityNoticeSent=!0;let e="Codex hooks are not active. CodeVibe is using compatibility mode: mobile approvals still mirror the desktop prompt, but timeline events may be delayed or incomplete. Open Codex /hooks and trust/enable CodeVibe hooks for full fidelity.",i={compatibility_mode:!0,reason:"codex_hooks_inactive",action:"trust_enable_codevibe_hooks"};a.warn("Codex hooks inactive; running in compatibility mode",{sessionId:t.sessionId});let s=this.encryptForEmit(e,i,m.EventType.NOTIFICATION,t.sessionId);if(s)try{await this.appSyncClient.createEvent({sessionId:t.sessionId,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,content:s.content,metadata:s.metadata,timestamp:(0,m.prepareEventTimestamp)({orderingKey:t.sessionId}),...s.isEncrypted?{isEncrypted:!0}:{}})}catch(r){a.warn("Failed to emit hooks compatibility mode notification",{error:r})}}async handleApprovalPending(t){let e=this.sessionState;if(!e)return;if((this.queuedPermissionRequestSessionCounts.get(e.sessionId)??0)>0){a.debug("Skipping heuristic approval prompt while PermissionRequest owns the session prompt",{sessionId:e.sessionId,callId:t.callId});return}let i=this.buildApprovalDedupeKey(t);if(i&&this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,i)){a.info("Skipping heuristic approval prompt; same approval was already answered recently",{callId:t.callId,toolName:t.toolName,dedupeKey:i});return}if(i&&this.hasDurablePermissionHookFallbackByDedupeKey(e.sessionId,i)){a.debug("Skipping heuristic approval prompt already owned by a hook fallback",{sessionId:e.sessionId,callId:t.callId,dedupeKey:i});return}if(i&&this.hasActiveOrQueuedPermissionHookPrompt(e.sessionId,i)){this.mergeCallIdIntoPromptByDedupeKey(e.sessionId,i,t.callId),a.info("Skipping heuristic approval prompt; PermissionRequest hook already emitted it",{callId:t.callId,toolName:t.toolName,dedupeKey:i});return}a.info("Sending approval pending interactive prompt",t);try{let s=await this.tryParseInteractivePromptFromTmux(),r=s?.parsedPrompt??null;if((this.queuedPermissionRequestSessionCounts.get(e.sessionId)??0)>0||r&&this.hasMatchingDurablePermissionHookFallback(r,e.sessionId,s?.snapshot)||r&&this.hasMatchingPermissionHookPrompt(r,e.sessionId)){a.debug("Skipping heuristic approval prompt after PermissionRequest claimed the terminal dialog",{sessionId:e.sessionId,callId:t.callId});return}let n=this.buildToolDetailsForInteractivePrompt(t,s?.snapshot),l=n.tool_name||this.mapToolNameForApproval(t.toolName),p=n.tool_input||this.buildFallbackToolInput(t),d=!!(l&&p);if(!r){a.warn("Suppressing heuristic approval prompt because exact Codex options are unavailable",{callId:t.callId,toolName:t.toolName,hint:t.hint}),this.raiseSuppressedBadge(e.sessionId,i);return}if(!this.parsedPromptMatchesApprovalContext(r,t,s?.snapshot)){a.warn("Suppressing heuristic approval prompt because parsed tmux prompt does not match the active tool",{callId:t.callId,toolName:t.toolName,hint:t.hint,parsedPromptText:r.promptText}),this.raiseSuppressedBadge(e.sessionId,i);return}let c=this.mapToolNameForApproval(t.toolName)==="Bash"?this.firstString(t.toolInput?.command,t.toolInput?.cmd):void 0,u=this.buildCodexPromptPresentation(r,c,s?.snapshot);if(!u){a.warn("Suppressing heuristic approval prompt because Codex option hotkeys are unavailable",{callId:t.callId,toolName:t.toolName,hint:t.hint}),this.raiseSuppressedBadge(e.sessionId,i);return}let f=u.options,y=this.buildApprovalPromptContent(u.content,{toolName:l,toolInput:p,hint:t.hint,filePath:t.filePath}),h={promptId:t.callId,callId:t.callId,kind:u.kind,options:f,submitMap:u.submitMap,promptText:u.promptText,createdAt:Date.now(),source:r?"tmux":"heuristic",dedupeKey:i,ownerSessionId:e.sessionId,observerMatchKey:this.buildObserverPromptMatchKey(r),requiresFollowUpText:u.requiresFollowUpText},v={isApprovalHint:!0,toolName:t.toolName,toolInput:t.toolInput,hint:t.hint,callId:t.callId,filePath:t.filePath,diff:t.diff,rawInput:t.rawInput,tool_name:l,tool_input:p,has_details:d,options:f,instructions:u.instructions,prompt_source:r?"tmux":"heuristic",dedupe_key:i};a.debug("Interactive prompt (pre-encryption)",{sessionId:e.sessionId,callId:t.callId,contentPreview:y.substring(0,200),toolDetails:n,metadata:v}),await this.enqueueOrEmitInteractivePrompt({prompt:h,content:y,metadata:v,ownerState:e})}catch(s){a.error("Failed to send approval interactive prompt:",s)}}async handleTmuxPromptCandidate(t,e,i){let s=this.sessionState;if(!s){this.tmuxPaneObserver.resetLastPromptHash();return}if(await this.promoteWaitingPermissionRequest(t,s)||!e&&this.deferTmuxPromptCandidateForPermissionHook(s.sessionId,t,i))return;let r=e?.occurrenceKey;if(r&&this.hasRecentlyResolvedApprovalDedupeKey(s.sessionId,r))return;let n=(0,B.parseInteractivePrompt)(t);if(!n){this.raiseSuppressedBadge(s.sessionId,r??null);return}if(this.hasMatchingPermissionHookPrompt(n,s.sessionId)){a.debug("Skipping tmux prompt candidate already owned by PermissionRequest",{sessionId:s.sessionId,promptText:n.promptText});return}let l=this.getMostRecentPendingToolCall();if(!l){if(await new Promise(C=>setTimeout(C,500)),!this.isExpectedSessionStateCurrent(s)){a.warn("Dropping tmux prompt candidate after session generation changed",{sessionId:s.sessionId,currentSessionId:this.sessionState?.sessionId});return}if(!e&&this.deferTmuxPromptCandidateForPermissionHook(s.sessionId,t,i))return;l=this.getMostRecentPendingToolCall()}let p=e?.context??(l?this.buildApprovalPromptContextFromPendingCall(l):null);if(p&&!this.parsedPromptMatchesApprovalContext(n,p,t)){a.warn("Skipping tmux-detected prompt because parsed prompt does not match pending tool call",{callId:l?.callId,toolName:l?.name,parsedPromptText:n.promptText}),this.raiseSuppressedBadge(s.sessionId,r??null);return}let d=p?null:this.buildApprovalPromptContextFromParsedPrompt(n),c=p||d;if(!c){a.warn("Skipping tmux-detected prompt because no tool context could be derived from the parsed prompt",{parsedPromptText:n.promptText}),this.raiseSuppressedBadge(s.sessionId,r??null);return}let u=this.mapToolNameForApproval(c.toolName)==="Bash"?this.firstString(c.toolInput?.command,c.toolInput?.cmd):void 0,f=this.buildCodexPromptPresentation(n,u,t);if(!f){a.warn("Skipping tmux-detected prompt because Codex option hotkeys are unavailable",{parsedPromptText:n.promptText}),this.raiseSuppressedBadge(s.sessionId,r??null);return}let y=c?this.buildApprovalDedupeKey(c):void 0;if(y&&this.hasRecentlyResolvedApprovalDedupeKey(s.sessionId,y)){a.info("Skipping tmux-detected prompt; same approval was already answered recently",{promptText:n.promptText,dedupeKey:y});return}if(y&&this.hasActiveOrQueuedPermissionHookPrompt(s.sessionId,y)){l?.callId&&this.mergeCallIdIntoPromptByDedupeKey(s.sessionId,y,l.callId),a.info("Skipping tmux-detected prompt; PermissionRequest hook already emitted it",{promptText:n.promptText,dedupeKey:y});return}let h=c?this.buildToolDetailsForInteractivePrompt(c,t):{},v=h.tool_name||this.mapToolNameForApproval(l?.name),P=h.tool_input||(c?this.buildFallbackToolInput(c):void 0),E=!!(v&&P),b={promptId:l?.callId||(0,se.v4)(),callId:l?.callId,kind:f.kind,options:f.options,submitMap:f.submitMap,promptText:f.promptText,createdAt:Date.now(),source:"tmux",dedupeKey:y,ownerSessionId:s.sessionId,observerMatchKey:this.buildObserverPromptMatchKey(n),observerPromptHash:i,requiresFollowUpText:f.requiresFollowUpText},O={options:f.options,instructions:f.instructions,prompt_source:"tmux_live",toolName:c?.toolName,toolInput:c?.toolInput,hint:c?.hint,filePath:c?.filePath,diff:c?.diff,rawInput:c?.rawInput,tool_name:v,tool_input:P,has_details:E,dedupe_key:y},L=this.buildApprovalPromptContent(f.content,{toolName:v,toolInput:P,hint:c?.hint,filePath:c?.filePath});try{await this.enqueueOrEmitInteractivePrompt({prompt:b,content:L,metadata:O,ownerState:s})&&a.info("Sent tmux-detected interactive prompt",{sessionId:s.sessionId,promptText:n.promptText,kind:n.kind})}catch(C){a.error("Failed to send tmux-detected interactive prompt",{error:C})}}async enqueueOrEmitInteractivePrompt(t){if(!this.isExpectedSessionStateCurrent(t.ownerState))return a.warn("Dropping interactive prompt from stale session generation",{sessionId:t.ownerState.sessionId,currentSessionId:this.sessionState?.sessionId,source:t.prompt.source}),!1;if(t.prompt.ownerSessionId??=t.ownerState.sessionId,t.prompt.dedupeKey&&this.hasRecentlyResolvedApprovalDedupeKey(t.ownerState.sessionId,t.prompt.dedupeKey))return a.debug("Skipping interactive prompt emission; same approval was already answered recently",{source:t.prompt.source,callId:t.prompt.callId,dedupeKey:t.prompt.dedupeKey}),!1;let e=this.pendingInteractivePrompt;if(e&&e.ownerSessionId!==t.ownerState.sessionId&&(a.warn("Discarding active prompt from a stale session generation",{activeSessionId:e.ownerSessionId,candidateSessionId:t.ownerState.sessionId}),this.pendingInteractivePrompt=null,e=null),!e){this.pendingInteractivePrompt=t.prompt;try{return await this.emitInteractivePromptEvent(t),!0}catch(i){throw this.pendingInteractivePrompt?.promptId===t.prompt.promptId&&(this.pendingInteractivePrompt=null),i}}if(this.isSameInteractivePrompt(e,t.prompt)){if(t.prompt.source==="permission_hook"&&e.source!=="permission_hook"){e.source="permission_hook",e.completionKey=t.prompt.completionKey??e.dedupeKey,e.dedupeKey=t.prompt.dedupeKey;let i=this.e1PromptRaises.get(e.promptId);i&&(i.resolutionDedupeKey=e.dedupeKey,i.resolutionCompletionKey=e.completionKey)}return!e.callId&&t.prompt.callId&&(e.callId=t.prompt.callId,a.debug("Merged callId into existing interactive prompt",{source:e.source,callId:t.prompt.callId,promptText:e.promptText})),a.debug("Skipping duplicate interactive prompt emission",{existingSource:e.source,candidateSource:t.prompt.source,existingCallId:e.callId,candidateCallId:t.prompt.callId,promptText:t.prompt.promptText}),!1}return this.queuedInteractivePrompts.some(i=>this.isSameInteractivePrompt(i.prompt,t.prompt))?(a.debug("Skipping duplicate queued interactive prompt",{candidateSource:t.prompt.source,candidateCallId:t.prompt.callId,promptText:t.prompt.promptText}),!1):(this.queuedInteractivePrompts.push(t),a.info("Queued interactive prompt behind active prompt",{activeCallId:e.callId,queuedCallId:t.prompt.callId,queueLength:this.queuedInteractivePrompts.length}),!1)}async emitInteractivePromptEvent(t){if(!this.isExpectedSessionStateCurrent(t.ownerState))return;let e=t.ownerState.sessionId,i=this.e1PromptRaises.get(t.prompt.promptId),s=i?i.record:this.newE1Raise(e,!0,void 0,{...t.prompt.dedupeKey!==void 0?{dedupeKey:t.prompt.dedupeKey}:{},...t.prompt.completionKey!==void 0?{completionKey:t.prompt.completionKey}:{},...t.prompt.callId!==void 0?{callId:t.prompt.callId}:{}});t.prompt.promptId=s.promptId;let r=this.e1PromptRaises.get(s.promptId);r&&(r.resolutionDedupeKey??=t.prompt.dedupeKey,r.resolutionCompletionKey??=t.prompt.completionKey,r.resolutionCallId??=t.prompt.callId),t.prompt.dedupeKey&&this.e1ContentKeyIndex.set(`${e}::${t.prompt.dedupeKey}`,s.promptId),this.stashE1RaiseContent(s.promptId,t.content,t.metadata??{});let n=this.encryptForEmit(t.content,t.metadata,m.EventType.INTERACTIVE_PROMPT,e);n&&await this.trackE1Raise(s.promptId,this.appSyncClient.createEvent({sessionId:e,type:m.EventType.INTERACTIVE_PROMPT,source:m.EventSource.DESKTOP,content:n.content,metadata:n.metadata,...(0,m.raiseFieldsFromRecord)(s),timestamp:(0,m.prepareEventTimestamp)({orderingKey:e}),...n.isEncrypted?{isEncrypted:!0}:{}}))}rebindWaitingPermissionRequests(t){for(let e of this.waitingPermissionRequests.values())e.ownerState.codexSessionId&&e.ownerState.codexSessionId===t.codexSessionId&&(e.ownerState=t)}async promoteWaitingPermissionRequest(t,e){if(!this.isExpectedSessionStateCurrent(e))return!1;let i=(0,B.parseInteractivePrompt)(t);if(!i||this.hasMatchingPermissionHookPrompt(i,e.sessionId))return!1;for(let[s,r]of this.waitingPermissionRequests)if(this.isExpectedSessionStateCurrent(r.ownerState)&&this.parsedPromptMatchesApprovalContext(i,r.context,t)){this.waitingPermissionRequests.delete(s);try{await this.handlePermissionRequestHookWhileTracked(r.payload,e,r.context,s,r.dedupeKey,{parsedPrompt:i,snapshot:t})}catch(n){throw this.isExpectedSessionStateCurrent(e)&&!this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s)&&this.waitingPermissionRequests.set(s,r),this.tmuxPaneObserver.resetLastPromptHash(),n}return!0}return!1}async emitNextQueuedInteractivePrompt(){if(this.pendingInteractivePrompt)return;if(this.queuedInteractivePrompts.length===0){let e=this.sessionState;if(e&&this.waitingPermissionRequests.size>0){let i=await this.tmuxPaneObserver.captureSnapshot();!(i&&await this.promoteWaitingPermissionRequest(i,e))&&this.isExpectedSessionStateCurrent(e)&&!this.pendingInteractivePrompt&&this.waitingPermissionRequests.size>0&&this.tmuxPaneObserver.resetLastPromptHash()}return}let t=this.queuedInteractivePrompts.shift();if(t){if(!this.isExpectedSessionStateCurrent(t.ownerState)){a.warn("Discarding queued prompt from stale session generation",{sessionId:t.ownerState.sessionId,currentSessionId:this.sessionState?.sessionId}),await this.emitNextQueuedInteractivePrompt();return}this.pendingInteractivePrompt=t.prompt;try{await this.emitInteractivePromptEvent(t),a.info("Emitted next queued interactive prompt",{callId:t.prompt.callId,queueLength:this.queuedInteractivePrompts.length})}catch(e){this.pendingInteractivePrompt=null,a.error("Failed to emit queued interactive prompt",{error:e}),await this.emitNextQueuedInteractivePrompt()}}}async clearObservedInteractivePrompt(t,e){if(!this.isExpectedSessionStateCurrent(t))return;let i=this.pendingInteractivePrompt;if(!i||i.ownerSessionId!==t.sessionId||i.observerPromptHash!==e){a.debug("Ignoring prompt-cleared for a non-current chooser occurrence",{sessionId:t.sessionId,clearedPromptHash:e,activePromptId:i?.promptId,activePromptHash:i?.observerPromptHash});return}this.pendingInteractivePrompt=null,i.callId&&this.approvalDetector.onToolCallComplete(i.callId),this.rememberResolvedApprovalDedupeKey(t.sessionId,i.dedupeKey);for(let r of this.queuedPermissionRequestRegistrations.get(t.sessionId)??[])r.occurrenceKey===i.dedupeKey&&(r.disposition="resolved",this.deferredTmuxPromptCandidates.delete(r),this.removePermissionRequestOccurrence(r.dedupeKey,r.occurrenceKey));let s=this.beginE1PromptResolutions(new Set([i.promptId]),t.sessionId);this.launchE1Resolutions(s),await this.emitNextQueuedInteractivePrompt()}async clearResolvedInteractivePrompt(t,e){if(!e){a.debug("Interactive prompt completion had no comparable dialog identity",{callId:t});return}let i=this.isPermissionRequestOccurrenceKey(e),s=this.pendingInteractivePrompt,r=!!s&&(s.dedupeKey===e||s.completionKey===e||!i&&!!t&&s.callId===t),n=this.sessionState?.sessionId??s?.ownerSessionId,l=this.queuedInteractivePrompts.find(S=>!i&&!!t&&S.prompt.callId===t||S.prompt.dedupeKey===e||S.prompt.completionKey===e),p=this.permissionRequestHookInFlight,d=p?.ownerState.sessionId===n&&(p?.dedupeKey===e||p?.occurrenceKey===e),u=(n?this.queuedPermissionRequestRegistrations.get(n)??[]:[]).find(S=>S.dedupeKey===e||S.occurrenceKey===e),f=[...this.waitingPermissionRequests.values()].find(S=>S.ownerState.sessionId===n&&(S.occurrenceKey===e||S.dedupeKey===e)),y=r?s?.dedupeKey:l?.prompt.dedupeKey??(d?p?.occurrenceKey:void 0)??u?.occurrenceKey??f?.occurrenceKey??e,h=new Set;if(r&&s&&h.add(s.promptId),l&&h.add(l.prompt.promptId),n&&y){let S=this.e1ContentKeyIndex.get(`${n}::${y}`);S&&h.add(S)}let v=[...this.e1PromptRaises.entries()].find(([,S])=>S.record.sessionId===n&&(S.resolutionDedupeKey===y||!i&&!!t&&S.resolutionCallId===t||S.resolutionCompletionKey===e));if(v&&h.add(v[0]),(r||d||u||f||h.size>0)&&this.rememberResolvedApprovalDedupeKey(n,y),r&&s&&(this.pendingInteractivePrompt=null),u&&(u.disposition="resolved"),y)for(let S of this.removeQueuedInteractivePromptByDedupeKey(y))h.add(S);let E=n?this.beginE1PromptResolutions(h,n):[];this.launchE1Resolutions(E),(r||!this.pendingInteractivePrompt&&l)&&await this.emitNextQueuedInteractivePrompt()}clearInteractivePromptsForAcceptedInput(t){let e=t.sessionId,i=new Set,s=this.pendingInteractivePrompt;s?.ownerSessionId===e&&(i.add(s.promptId),this.rememberResolvedApprovalDedupeKey(e,s.dedupeKey),this.pendingInteractivePrompt=null);let r=[];for(let l of this.queuedInteractivePrompts)l.prompt.ownerSessionId===e?(i.add(l.prompt.promptId),this.rememberResolvedApprovalDedupeKey(e,l.prompt.dedupeKey)):r.push(l);this.queuedInteractivePrompts=r;for(let[l,p]of this.e1PromptRaises.entries())p.record.sessionId===e&&i.add(l);for(let l of this.queuedPermissionRequestRegistrations.get(e)??[])l.disposition="resolved",this.rememberResolvedApprovalDedupeKey(e,l.occurrenceKey),this.deferredTmuxPromptCandidates.delete(l);for(let[l,p]of this.waitingPermissionRequests)p.ownerState.sessionId===e&&(this.rememberResolvedApprovalDedupeKey(e,l),this.waitingPermissionRequests.delete(l));this.permissionRequestOccurrencesByCompletionKey.clear();let n=this.beginE1PromptResolutions(i,e);this.launchE1Resolutions(n)}removeQueuedInteractivePromptByDedupeKey(t){let e=this.queuedInteractivePrompts.length,i=this.queuedInteractivePrompts.filter(s=>s.prompt.dedupeKey===t);for(let s of i)this.rememberResolvedApprovalDedupeKey(s.ownerState.sessionId,s.prompt.dedupeKey);return this.queuedInteractivePrompts=this.queuedInteractivePrompts.filter(s=>s.prompt.dedupeKey!==t),this.queuedInteractivePrompts.length!==e&&a.debug("Removed resolved deduped tool call from interactive prompt queue",{dedupeKey:t,removed:e-this.queuedInteractivePrompts.length}),i.map(s=>s.prompt.promptId)}mergeCallIdIntoPromptByDedupeKey(t,e,i){let s=this.pendingInteractivePrompt;if(s?.ownerSessionId===t&&(s.completionKey??s.dedupeKey)===e&&!s.callId){s.callId=i;let n=this.e1PromptRaises.get(s.promptId);n&&(n.resolutionCallId??=i),a.debug("Merged callId into active deduped interactive prompt",{source:s.source,callId:i,dedupeKey:e});return}let r=this.queuedInteractivePrompts.find(n=>n.prompt.ownerSessionId===t&&(n.prompt.completionKey??n.prompt.dedupeKey)===e&&!n.prompt.callId);r&&(r.prompt.callId=i,a.debug("Merged callId into queued deduped interactive prompt",{source:r.prompt.source,callId:i,dedupeKey:e}))}isSameInteractivePrompt(t,e){if(t.ownerSessionId!==e.ownerSessionId||Date.now()-t.createdAt>Ai)return!1;if(t.callId&&e.callId)return t.callId===e.callId;let s=t.completionKey??t.dedupeKey,r=e.completionKey??e.dedupeKey;return t.source!==e.source&&s&&s===r&&t.observerMatchKey&&t.observerMatchKey===e.observerMatchKey?!0:t.dedupeKey&&e.dedupeKey?t.dedupeKey===e.dedupeKey:t.kind===e.kind&&this.normalizePromptDedupeText(t.promptText)===this.normalizePromptDedupeText(e.promptText)}normalizePromptDedupeText(t){return t.replace(/\s+/g," ").trim().toLowerCase()}async startTmuxObserver(){let t=process.env.CODEVIBE_CODEX_TMUX_SESSION;if(!t)return a.debug("Skipping tmux pane observer start - no tmux session in environment"),!0;try{return await this.tmuxPaneObserver.start(t),!0}catch(e){return a.warn("Failed to start tmux pane observer",{tmuxSession:t,error:e}),!1}}async startTmuxObserverWithBeacon(t){try{await this.startTmuxObserver()?await _("daemon_init_step_completed",{step:"tmux_observer_start",path:t}):await _("daemon_init_step_failed",{step:"tmux_observer_start",path:t,error_class:"TmuxObserverStartFailed",error_message:"tmuxPaneObserver.start threw (see plugin log)"})}catch(e){await _("daemon_init_step_failed",{step:"tmux_observer_start",path:t,error_class:e?.name||"Error",error_message:e?.message||String(e)}),a.error("Failed to start tmux observer:",e)}}async tryParseInteractivePromptFromTmux(){try{let t=await this.tmuxPaneObserver.captureSnapshot(),e=this.tmuxPaneObserver.extractActiveApprovalBlock(t),i=e?(0,B.parseInteractivePrompt)(e):null;return a.debug("tmux prompt parse result",{parsed:!!i,kind:i?.kind,promptText:i?.promptText,isolated:!!e,snapshotPreview:this.summarizePromptSnapshot(e??t)}),{parsedPrompt:i,snapshot:e??t}}catch(t){return a.debug("tmux prompt parsing unavailable",{error:t}),null}}async tryParsePermissionRequestPromptFromTmux(t,e){let r=null;for(let n=0;n<25;n+=1){if(e&&!e()||n>0&&(await new Promise(p=>setTimeout(p,125)),e&&!e()))return null;let l=await this.tryParseInteractivePromptFromTmux();if(l&&(r=l),l?.parsedPrompt&&(!t||t(l.parsedPrompt,l.snapshot)))return l}return r?.snapshot?{parsedPrompt:null,snapshot:r.snapshot,...r.parsedPrompt?{differentPrompt:!0}:{}}:null}buildPromptPresentation(t){return t?{content:t.promptText,promptText:t.promptText,kind:t.kind,options:t.options,submitMap:t.submitMap,instructions:this.buildPromptInstructions(t),requiresFollowUpText:t.requiresFollowUpText}:{content:"Codex is waiting for approval.",promptText:"Codex is waiting for approval.",kind:"yes_no",options:[{number:"1",text:'Yes (sends "y")'},{number:"2",text:'No, tell Codex what to change (sends "n <instructions>")'}],submitMap:{1:"y",2:"n"},instructions:"Reply with 1 to approve, or 2 followed by what to change",requiresFollowUpText:!0}}buildCodexPromptPresentation(t,e,i){let s=this.buildPromptPresentation(t),r=Ct(s.options,e,i);if(!r)return null;let n=this.buildSubmitMapFromCodexOptionHotkeys(r);return n?{...s,options:r,submitMap:n,instructions:this.buildCodexPermissionInstructions(r),requiresFollowUpText:this.optionsRequireFollowUpText(r)}:null}buildSubmitMapFromCodexOptionHotkeys(t){let e={};for(let i of t){let s=i.text.match(/\(([^)]+)\)\s*$/)?.[1]?.trim().toLowerCase();if(!s||!ki.test(s))return null;s==="esc"||s==="escape"?e[i.number]=Y:e[i.number]=s}return e}buildCodexPermissionInstructions(t){let e=t.find(n=>/\((?:y|yes)\)\s*$/i.test(n.text)),i=t.find(n=>/\(p\)\s*$/i.test(n.text)),s=t.find(n=>/\((?:esc|escape)\)\s*$/i.test(n.text)),r=[];return e&&r.push(`${e.number} to approve`),i&&r.push(`${i.number} to persist the desktop allow rule`),s&&r.push(`${s.number} followed by what to change`),r.length>0?`Reply with ${r.join(", ")}`:"Reply with the number of the option you want"}optionsRequireFollowUpText(t){return t.some(e=>/what to (?:do differently|change)|instructions/i.test(e.text))}getMostRecentPendingToolCall(){let t=this.approvalDetector.getPendingCalls();return t.length===0?null:t.reduce((e,i)=>i.timestamp>e.timestamp?i:e)}hasActiveOrQueuedPermissionHookPrompt(t,e){let i=this.pendingInteractivePrompt;return i?.ownerSessionId===t&&i.source==="permission_hook"&&(i.completionKey??i.dedupeKey)===e?!0:this.queuedInteractivePrompts.some(s=>s.prompt.ownerSessionId===t&&s.prompt.source==="permission_hook"&&(s.prompt.completionKey??s.prompt.dedupeKey)===e)||[...this.waitingPermissionRequests.values()].some(s=>s.ownerState.sessionId===t&&s.dedupeKey===e)}hasDurablePermissionHookFallback(t){return[...this.e1PromptRaises.values()].some(e=>e.record.sessionId===t&&e.suppressTmuxObserverUntilResolved===!0)}hasDurablePermissionHookFallbackByDedupeKey(t,e){return[...this.e1PromptRaises.values()].some(i=>i.record.sessionId===t&&i.suppressTmuxObserverUntilResolved===!0&&(i.resolutionDedupeKey===e||i.resolutionCompletionKey===e))}hasMatchingDurablePermissionHookFallback(t,e,i){let s=this.buildApprovalPromptContextFromParsedPrompt(t),r=s?this.buildApprovalDedupeKey(s):void 0;if(r&&this.hasDurablePermissionHookFallbackByDedupeKey(e,r))return!0;if(!i)return!1;let n=this.buildObserverSnapshotMatchKey(i);return[...this.e1PromptRaises.values()].some(l=>l.record.sessionId===e&&l.suppressTmuxObserverUntilResolved===!0&&l.suppressedObserverSnapshotKey===n)}deferTmuxPromptCandidateForPermissionHook(t,e,i){let s=this.queuedPermissionRequestSessionCounts.get(t)??0,r=this.hasDurablePermissionHookFallback(t);if(s<=0&&!r)return!1;let n=(0,B.parseInteractivePrompt)(e);if(n&&this.hasMatchingDurablePermissionHookFallback(n,t,e))return a.debug("Skipping tmux repaint already owned by a durable PermissionRequest fallback",{sessionId:t,promptText:n.promptText}),!0;if(n&&this.hasMatchingPermissionHookPrompt(n,t))return a.debug("Skipping tmux repaint already owned by an actionable PermissionRequest",{sessionId:t,promptText:n.promptText}),!0;if(n&&s<=0)return!1;if(s>0){let l=this.queuedPermissionRequestRegistrations.get(t)??[],p=n?l.find(u=>this.parsedPromptMatchesApprovalContext(n,u.context,e)):void 0,d=!n&&this.permissionRequestHookInFlight?.ownerState.sessionId===t?this.permissionRequestHookInFlight.registration:void 0,c=p??d??(l.length===1&&(!n||!r)?l[0]:void 0);if(c&&this.deferredTmuxPromptCandidates.set(c,{snapshot:e,promptHash:i}),n&&!c)return!1}return a.debug("Skipping tmux prompt candidate while PermissionRequest owns the session prompt",{sessionId:t,toolName:this.permissionRequestHookInFlight?.context.toolName,ownership:s>0?"queued_or_in_flight":"durable_prompt"}),!0}hasMatchingPermissionHookPrompt(t,e){let i=this.buildObserverPromptMatchKey(t);return[this.pendingInteractivePrompt,...this.queuedInteractivePrompts.map(r=>r.prompt)].some(r=>r?.source==="permission_hook"&&r.ownerSessionId===e&&r.observerMatchKey===i)}buildObserverPromptMatchKey(t){let e=t.options.map(s=>`${s.number}:${this.normalizeObserverPromptText(s.text)}`).join("|"),i=[t.kind,this.normalizeObserverPromptText(t.promptText),e].join("::");return`observer:${Se.createHash("sha256").update(i).digest("hex").slice(0,16)}`}buildObserverSnapshotMatchKey(t){let e=this.normalizeObserverPromptText(t);return`snapshot:${Se.createHash("sha256").update(e).digest("hex").slice(0,16)}`}normalizeObserverPromptText(t){return t.replace(/\r\n?/g,`
|
|
21
|
+
`).trim();return(0,Q.createHash)("sha256").update(s).digest("hex")}};var B=require("@quantiya/codevibe-core");var ne=require("@quantiya/codevibe-core");var ke=R(require("express")),U=R(require("fs")),pt=R(require("path")),dt=R(require("os"));var ui=1800*1e3,hi=60*1e3,mi=1440*60*1e3;var he=class{constructor(){this.assignedPort=0;this.portRefreshTimer=null;this.app=(0,ke.default)(),this.setupMiddleware(),this.setupRoutes(),this.tmuxSession=process.env.CODEVIBE_CODEX_TMUX_SESSION}getPort(){return this.assignedPort}setupMiddleware(){this.app.use(ke.default.json({limit:"1mb"})),this.app.use((t,e,i)=>{a.debug(`${t.method} ${t.path}`,{body:t.body}),i()})}setupRoutes(){this.app.get("/health",(t,e)=>{e.json({success:!0,service:"codevibe-codex",pid:process.pid,data:{status:"healthy",uptime:process.uptime()}})}),this.app.post("/event",this.handleEvent.bind(this))}async handleEvent(t,e){try{let i=t.body;if(!i.session_id||!i.hook_event_name){e.status(400).json({success:!1,error:"Missing session_id or hook_event_name"});return}let s=this.transformHookToEvent(i);if(a.info("Received hook event",{sessionId:i.session_id,hookEvent:i.hook_event_name,type:s.type}),this.eventHandler){let r=this.eventHandler(s);if(i.hook_event_name==="PermissionRequest"){r.catch(n=>{a.error("Error resolving PermissionRequest after acknowledgement:",n)}),e.json({success:!0});return}await r}e.json({success:!0})}catch(i){a.error("Error handling event:",i),e.status(500).json({success:!1,error:i instanceof Error?i.message:"Unknown error"})}}transformHookToEvent(t){let e={cwd:t.cwd,hook_event_name:t.hook_event_name,transcript_path:t.transcript_path,...t.metadata||{}},i,s;switch(t.hook_event_name){case"SessionStart":i="NOTIFICATION",s="Session started",e.source=t.source,e.model=t.model;break;case"UserPromptSubmit":i="USER_PROMPT",s=t.prompt||"";break;case"PreToolUse":i="NOTIFICATION",s="PreToolUse observed",e.tool_name=t.tool_name,e.tool_input=t.tool_input,e.tool_use_id=t.tool_use_id,e.approval_status="observed_pre_tool",e.requires_user_action=!1;break;case"PermissionRequest":i="NOTIFICATION",s="PermissionRequest observed",e.tool_name=t.tool_name,e.tool_input=t.tool_input,e.permission_mode=t.permission_mode,e.turn_id=t.turn_id,e.requires_user_action=!0;break;case"PostToolUse":i="TOOL_USE",s=JSON.stringify({tool_name:t.tool_name,tool_input:t.tool_input,tool_response:t.tool_response}),e.tool_name=t.tool_name,e.tool_input=t.tool_input,e.tool_use_id=t.tool_use_id;break;case"Stop":i="ASSISTANT_RESPONSE",s=t.last_assistant_message||"";break;default:i="NOTIFICATION",s=`Hook: ${t.hook_event_name}`}return{session_id:t.session_id,hook_event_name:t.hook_event_name,type:i,source:"DESKTOP",content:s,metadata:e}}onEvent(t){this.eventHandler=t}async start(){return new Promise((t,e)=>{try{this.server=this.app.listen(0,"localhost",()=>{let i=this.server.address();this.assignedPort=i.port,a.info(`HTTP API listening on http://localhost:${this.assignedPort}`),this.writePortFile(this.assignedPort),this.startPortFileKeepalive(),t(this.assignedPort)}),this.server.on("error",i=>{a.error("HTTP server error:",i),e(i)})}catch(i){e(i)}})}portFilePath(){return this.tmuxSession?pt.join(dt.tmpdir(),`codevibe-codex-${this.tmuxSession}.port`):null}writePortFile(t){let e=this.portFilePath();if(!e){a.warn("No CODEVIBE_CODEX_TMUX_SESSION set, skipping port file");return}try{U.writeFileSync(e,t.toString()),a.info(`Port file written: ${e} -> ${t}`)}catch(i){a.error(`Failed to write port file: ${e}`,i)}}removePortFile(){let t=this.portFilePath();if(t)try{U.existsSync(t)&&(U.unlinkSync(t),a.info(`Port file removed: ${t}`))}catch(e){a.warn(`Failed to remove port file: ${t}`,e)}}startPortFileKeepalive(){this.portRefreshTimer&&(clearInterval(this.portRefreshTimer),this.portRefreshTimer=null);let t=Number(process.env.CODEVIBE_PORTFILE_REFRESH_MS),e=Number.isFinite(t)&&t>0?Math.min(mi,Math.max(hi,t)):ui;this.portRefreshTimer=setInterval(()=>this.refreshPortFile(),e)}refreshPortFile(){let t=this.portFilePath();if(t)try{let e=new Date;U.utimesSync(t,e,e)}catch(e){e?.code==="ENOENT"?this.writePortFile(this.assignedPort):a.warn(`Port-file refresh failed: ${t}`,e)}}async stop(){return this.portRefreshTimer&&(clearInterval(this.portRefreshTimer),this.portRefreshTimer=null),this.removePortFile(),new Promise(t=>{this.server?this.server.close(()=>{a.info("HTTP API stopped"),t()}):t()})}};var me=class{constructor(t={}){this.pendingBySession=new Map;this.expiryMs=t.expiryMs??1e4,this.minFuzzyEchoLength=t.minFuzzyEchoLength??16,this.minFuzzyEchoRatio=t.minFuzzyEchoRatio??.35,this.now=t.now??Date.now}track(t,e){let i=this.normalize(e);if(!i)return;let s=this.validEntries(t);s.push({normalized:i,timestamp:this.now()}),this.pendingBySession.set(t,s)}forget(t,e){let i=this.normalize(e);if(!i)return;let s=!1,r=this.validEntries(t).filter(n=>!s&&n.normalized===i?(s=!0,!1):!0);this.replaceEntries(t,r)}consumeIfDuplicate(t,e){let i=this.normalize(e);if(!i)return null;let s=null,r=this.validEntries(t).filter(n=>{if(!s){let l=this.matchType(n.normalized,i);if(l)return s={matchType:l,originalLength:n.normalized.length,echoLength:i.length},!1}return!0});return this.replaceEntries(t,r),s}validEntries(t){let e=this.now()-this.expiryMs;return(this.pendingBySession.get(t)||[]).filter(i=>i.timestamp>=e)}replaceEntries(t,e){e.length>0?this.pendingBySession.set(t,e):this.pendingBySession.delete(t)}matchType(t,e){if(t===e)return"exact";let i=e.length>=this.minFuzzyEchoLength,s=e.length/t.length>=this.minFuzzyEchoRatio;return i&&s&&t.endsWith(e)?"suffix":null}normalize(t){return t.replace(/\s+/g," ").trim()}};var ut=R(require("crypto")),ht=R(require("fs")),mt=R(require("https")),fe=R(require("os")),ft=R(require("path")),fi="G-GS74YEQTB8",gi="lAfOF6OxRzSQ-NsLBRjhAg",yi="www.google-analytics.com",vi=`/mp/collect?measurement_id=${fi}&api_secret=${gi}`,ct=800;function Si(){try{let o=ft.resolve(__dirname,"..","package.json"),t=ht.readFileSync(o,"utf-8"),e=JSON.parse(t);if(typeof e.version=="string"&&e.version.length>0&&e.version.length<30)return e.version}catch{}return"unknown"}var Pi=Si();function Ii(){let o=typeof process.getuid=="function"?process.getuid():0;return ut.createHash("sha256").update(`${fe.hostname()}-${o}`).digest("hex").substring(0,36)}function bi(o){if(!o)return"";let t=fe.homedir(),e=o.replace(/[\n\r\t]/g," ");if(t&&t.length>0){let i=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp(i,"g"),"~")}return e=e.replace(/\/Users\/[^/\s"'`]+/g,"/Users/<user>").replace(/\/home\/[^/\s"'`]+/g,"/home/<user>").replace(/[^\x20-\x7E]/g,""),e.trim().substring(0,100)}function _(o,t){return new Promise(e=>{let i,s=!1,r=()=>{s||(s=!0,clearTimeout(n),e())},n=setTimeout(()=>{try{i?.destroy()}catch{}r()},ct);typeof n.unref=="function"&&n.unref();try{let l={...t};typeof l.error_message=="string"&&(l.error_message=bi(l.error_message));let p=JSON.stringify({client_id:Ii(),events:[{name:o,params:{agent:"codex",plugin_version:Pi,platform:process.platform,source:process.env.CODEVIBE_TELEMETRY_SOURCE||"production",...l}}]});i=mt.request({hostname:yi,path:vi,method:"POST",headers:{"Content-Type":"application/json"},timeout:ct},d=>{d.resume(),d.on("end",r),d.on("close",r),d.on("error",r)}),i.on("error",r),i.on("timeout",()=>{try{i?.destroy()}catch{}r()}),i.on("close",r),i.write(p),i.end()}catch{r()}})}var ge=class{constructor(){this.originated=new Set;this.externallyResolved=new Set}markOriginated(t){this.originated.add(t)}clearOriginated(t){this.originated.delete(t)}getOriginated(){return new Set(this.originated)}getExternallyResolved(){return new Set(this.externallyResolved)}isExternallyResolved(t){return this.externallyResolved.has(t)}dispatch(t){let{gateId:e}=t;return this.originated.has(e)?(this.originated.delete(e),this.externallyResolved.add(e),"self_echo"):(this.externallyResolved.add(e),"foreign")}clear(){this.originated.clear(),this.externallyResolved.clear()}};function gt(o){return`[CodeVibe] Decision recorded on another device: ${o} \u2014 type any number to dismiss the open AskUserQuestion`}var re=R(require("crypto")),I=R(require("fs")),ve=R(require("os")),K=R(require("path")),St=require("@quantiya/codevibe-core"),Fe=2*1024*1024,wi=600*1e3,q=1e3;function Pt(){return typeof process.getuid=="function"?process.getuid():void 0}function De(o,t){let e=Pt();if(e!==void 0&&o.uid!==e)throw new Error(`E1_STATE_FOREIGN_OWNER: ${t}`)}function It(o){I.mkdirSync(o,{recursive:!0,mode:448});let t=I.lstatSync(o);if(!t.isDirectory()||t.isSymbolicLink())throw new Error(`E1_STATE_ROOT_NOT_PRIVATE_DIRECTORY: ${o}`);De(t,o),process.platform!=="win32"&&I.chmodSync(o,448)}function yt(o,t){let e=K.dirname(o);It(e);let i=`${JSON.stringify(t)}
|
|
22
|
+
`;if(Buffer.byteLength(i,"utf8")>Fe)throw new Error(`E1_STATE_TOO_LARGE: ${o}`);let s=K.join(e,`.${K.basename(o)}.${process.pid}.${re.randomUUID()}.tmp`),r=I.constants.O_NOFOLLOW??0,n=null;try{n=I.openSync(s,I.constants.O_WRONLY|I.constants.O_CREAT|I.constants.O_EXCL|r,384),I.writeFileSync(n,i,{encoding:"utf8"}),I.fsyncSync(n),I.closeSync(n),n=null,process.platform!=="win32"&&I.chmodSync(s,384),I.renameSync(s,o),process.platform!=="win32"&&I.chmodSync(o,384);try{let l=I.openSync(e,I.constants.O_RDONLY);try{I.fsyncSync(l)}finally{I.closeSync(l)}}catch{}}finally{n!==null&&I.closeSync(n);try{I.unlinkSync(s)}catch(l){if(l.code!=="ENOENT")throw l}}}function vt(o){let t;try{t=I.lstatSync(o)}catch(s){if(s.code==="ENOENT")return null;throw s}if(!t.isFile()||t.isSymbolicLink())throw new Error(`E1_STATE_NOT_REGULAR_FILE: ${o}`);if(De(t,o),process.platform!=="win32"&&(t.mode&63)!==0)throw new Error(`E1_STATE_PERMISSIONS_LOOSE: ${o}`);if(t.size>Fe)throw new Error(`E1_STATE_TOO_LARGE: ${o}`);let e=I.constants.O_NOFOLLOW??0,i=I.openSync(o,I.constants.O_RDONLY|e);try{let s=I.fstatSync(i);if(De(s,o),!s.isFile()||t.dev!==s.dev||t.ino!==s.ino)throw new Error(`E1_STATE_FILE_CHANGED_DURING_OPEN: ${o}`);if(s.size>Fe)throw new Error(`E1_STATE_TOO_LARGE: ${o}`);return JSON.parse(I.readFileSync(i,{encoding:"utf8"}))}finally{I.closeSync(i)}}function D(o){return o!==null&&typeof o=="object"&&!Array.isArray(o)}function x(o,t=256*1024){return typeof o=="string"&&Buffer.byteLength(o,"utf8")<=t}function bt(o){if(!D(o)||!x(o.promptId,512)||!x(o.ownerToken,512)||!x(o.sessionId,1024)||o.producerKind!=="PLUGIN_APPROVAL"||o.agentType!==void 0&&o.agentType!=="CODEX"||o.title!==void 0&&!x(o.title,4096)||typeof o.mobileActionable!="boolean"||typeof o.raisedAtMs!="number"||!Number.isFinite(o.raisedAtMs))return!1;try{return(0,St.deriveOpenPromptId)(o.ownerToken)===o.promptId}catch{return!1}}function Ei(o){if(!D(o)||!bt(o.record))return!1;for(let t of["contentPlain","resolutionDedupeKey","resolutionCompletionKey","resolutionCallId","suppressedObserverSnapshotKey"])if(o[t]!==void 0&&!x(o[t]))return!1;return!(o.metadataPlain!==void 0&&!D(o.metadataPlain)||o.suppressTmuxObserverUntilResolved!==void 0&&typeof o.suppressTmuxObserverUntilResolved!="boolean")}function wt(o){return D(o)&&bt(o.record)&&x(o.resolutionAt,128)&&!Number.isNaN(Date.parse(o.resolutionAt))&&typeof o.attempts=="number"&&Number.isSafeInteger(o.attempts)&&o.attempts>=0}function Et(o){if(!D(o)||!x(o.promptId,512)||!["yes_no","numbered","text"].includes(String(o.kind))||!Array.isArray(o.options)||o.options.length>100||!o.options.every(t=>D(t)&&x(t.number,32)&&x(t.text,32*1024))||!D(o.submitMap)||!Object.entries(o.submitMap).every(([t,e])=>x(t,128)&&x(e,32*1024))||!x(o.promptText)||typeof o.createdAt!="number"||!Number.isFinite(o.createdAt)||!["permission_hook","tmux","heuristic"].includes(String(o.source)))return!1;for(let t of["callId","dedupeKey","completionKey","ownerSessionId","observerMatchKey","observerPromptHash","terminalMenuIdentity"])if(o[t]!==void 0&&!x(o[t],32*1024))return!1;return o.requiresFollowUpText===void 0||typeof o.requiresFollowUpText=="boolean"}function Ri(o){return D(o)&&Et(o.prompt)&&x(o.content)&&D(o.metadata)}function _i(o,t,e){if(!D(o)||o.version!==1)throw new Error("E1_HANDOFF_UNSUPPORTED_VERSION");if(o.tmuxSession!==t||!x(o.backendSessionId,1024))throw new Error("E1_HANDOFF_INSTANCE_MISMATCH");if(typeof o.createdAtMs!="number"||!Number.isFinite(o.createdAtMs))throw new Error("E1_HANDOFF_INVALID_TIMESTAMP");if(o.createdAtMs>e+6e4||e-o.createdAtMs>wi)throw new Error("E1_HANDOFF_STALE");if(!Array.isArray(o.openRaises)||o.openRaises.length>q||!o.openRaises.every(Ei))throw new Error("E1_HANDOFF_INVALID_OPEN_RAISES");if(!Array.isArray(o.pendingResolutions)||o.pendingResolutions.length>q||!o.pendingResolutions.every(wt))throw new Error("E1_HANDOFF_INVALID_PENDING_RESOLUTIONS");if(!Array.isArray(o.needsReRaisePromptIds)||o.needsReRaisePromptIds.length>q||!o.needsReRaisePromptIds.every(s=>x(s,512)))throw new Error("E1_HANDOFF_INVALID_RERAISE_IDS");if(!Array.isArray(o.permissionOccurrences)||o.permissionOccurrences.length>q)throw new Error("E1_HANDOFF_INVALID_OCCURRENCES");if(!o.permissionOccurrences.every(s=>Array.isArray(s)&&s.length===2&&x(s[0],256*1024)&&Array.isArray(s[1])&&s[1].length<=q&&s[1].every(r=>D(r)&&x(r.occurrenceKey,512)&&typeof r.hookObserved=="boolean"&&typeof r.jsonlObserved=="boolean")))throw new Error("E1_HANDOFF_INVALID_OCCURRENCES");if(o.waitingPermissionRequests!==void 0&&(!Array.isArray(o.waitingPermissionRequests)||o.waitingPermissionRequests.length>q||!o.waitingPermissionRequests.every(s=>D(s)&&x(s.occurrenceKey,512)&&(s.dedupeKey===void 0||x(s.dedupeKey))&&D(s.payload)&&s.payload.hook_event_name==="PermissionRequest"&&(s.payload.metadata===void 0||D(s.payload.metadata)))))throw new Error("E1_HANDOFF_INVALID_WAITING_REQUESTS");if(o.pendingInteractivePrompt!==null&&!Et(o.pendingInteractivePrompt))throw new Error("E1_HANDOFF_INVALID_ACTIVE_PROMPT");if(!Array.isArray(o.queuedInteractivePrompts)||o.queuedInteractivePrompts.length>q||!o.queuedInteractivePrompts.every(Ri))throw new Error("E1_HANDOFF_INVALID_QUEUED_PROMPTS");if(!Array.isArray(o.resolvedApprovalDedupeKeys)||o.resolvedApprovalDedupeKeys.length>q||!o.resolvedApprovalDedupeKeys.every(s=>Array.isArray(s)&&s.length===2&&x(s[0])&&typeof s[1]=="number"&&Number.isFinite(s[1])))throw new Error("E1_HANDOFF_INVALID_RESOLVED_KEYS");return o}function Ti(o){if(!D(o)||o.version!==1||!wt(o.pending))throw new Error("E1_RESOLUTION_OUTBOX_INVALID_RECORD");if(typeof o.updatedAtMs!="number"||!Number.isFinite(o.updatedAtMs))throw new Error("E1_RESOLUTION_OUTBOX_INVALID_TIMESTAMP");return o}var ye=class{constructor(t={}){let e=Pt()??"nouid";this.handoffRoot=t.handoffRoot??K.join(ve.tmpdir(),`codevibe-codex-handoff-${e}`),this.resolutionRoot=t.resolutionRoot??K.join(ve.homedir(),".codevibe","codex","e1-resolution-outbox"),this.now=t.now??Date.now}handoffPath(t){let e=re.createHash("sha256").update(t).digest("hex").slice(0,32);return K.join(this.handoffRoot,`${e}.json`)}resolutionPath(t){let e=re.createHash("sha256").update(t).digest("hex");return K.join(this.resolutionRoot,`${e}.json`)}writeHandoff(t){yt(this.handoffPath(t.tmuxSession),t)}readHandoff(t){let e=vt(this.handoffPath(t));if(e===null)return null;try{return _i(e,t,this.now())}catch(i){if(i.message==="E1_HANDOFF_STALE")return this.removeHandoff(t),null;throw i}}removeHandoff(t){try{I.unlinkSync(this.handoffPath(t))}catch(e){if(e.code!=="ENOENT")throw e}}writeResolution(t){yt(this.resolutionPath(t.record.promptId),{version:1,updatedAtMs:this.now(),pending:t})}removeResolution(t){try{I.unlinkSync(this.resolutionPath(t))}catch(e){if(e.code!=="ENOENT")throw e}}readResolutions(){let t;try{It(this.resolutionRoot),t=I.readdirSync(this.resolutionRoot).filter(s=>s.endsWith(".json"))}catch(s){if(s.code==="ENOENT")return{records:[],rejected:[]};throw s}let e=[],i=[];for(let s of t.slice(0,q)){let r=K.join(this.resolutionRoot,s);try{let n=vt(r);if(n!==null){let l=Ti(n).pending;if(K.basename(this.resolutionPath(l.record.promptId))!==s)throw new Error("E1_RESOLUTION_OUTBOX_IDENTITY_MISMATCH");e.push(l)}}catch(n){i.push({file:r,reason:n instanceof Error?n.message:String(n)})}}return t.length>q&&i.push({file:this.resolutionRoot,reason:`E1_RESOLUTION_OUTBOX_RECORD_LIMIT: ${t.length}`}),{records:e,rejected:i}}};var _t=(0,Ke.promisify)(we.exec),xi=(0,Ke.promisify)(we.execFile),Ci="/quit",$="CODEVIBE_CODEX_TMUX_SESSION",Se="CODEVIBE_CODEX_DAEMON_RECOVERY",Oi=1e3,Ai=1e4,Pe=3,ki=100,Tt=["SIGINT","SIGTERM","SIGHUP"],Fi=600*1e3,Me=30*1e3,Di=/^(?:[a-z0-9]|esc|escape)$/;function Rt(o,t){let e=o?.[t];return typeof e=="string"?e:Buffer.isBuffer(e)?e.toString("utf8"):""}function xt(o){if(typeof o?.code!="number")return"unknown";let t=`${Rt(o,"stderr")}
|
|
23
|
+
${Rt(o,"stdout")}`;return/^can't find session:/m.test(t)||/^no server running on /m.test(t)||/^error connecting to .* \((?:No such file or directory|Connection refused)\)$/m.test(t)?"absent":"unknown"}async function Mi(o,t){let e=async(i,s)=>{try{await _t(i)}catch(r){a.warn("tmux send-keys failed during self-terminate",{sessionName:o,label:s,error:String(r)})}};await e(`tmux send-keys -t "${o}" C-c`,"ctrl-c"),await new Promise(i=>setTimeout(i,200)),await e(`tmux send-keys -t "${o}" -l "${t}"`,"quit-text"),await new Promise(i=>setTimeout(i,500)),await e(`tmux send-keys -t "${o}" Enter`,"enter")}function qe(o){let t=o.split(`
|
|
24
|
+
`),e=n=>/^[\s>]*\d+\.\s/.test(n),i=-1;for(let n=t.length-1;n>=0;n-=1)if(/^\s*\$\s+/.test(t[n])){i=n;break}if(i===-1)return;let s=t[i].trim().match(/^\$\s+(.+)$/);if(!s?.[1]?.trim())return;let r=[s[1].trim()];for(let n=i+1;n<t.length;n+=1){let l=t[n];if(e(l)||/^\s*$/.test(l)||/^\s*\$\s+/.test(l))break;r.push(l.trim())}return r.length>0?r:void 0}function Ct(o){let t=qe(o);if(!t)return;let e=t.join(" ").trim();return e.length>0?e:void 0}function Ot(o,t){return Ni(o,t).has(t)}function Ni(o,t){if(o.length===0)return new Set;let e=t,i=new Set([o[0]]);for(let s of o.slice(1)){let r=s,n=new Set;for(let l of i)for(let p of[""," "]){let d=`${l}${p}${r}`;e.startsWith(d)&&n.add(d)}if(n.size===0)return new Set;i=n}return i}function Li(o,t,e){let i=/^\[\u2026\s+\d+\s+lines\]\s+ctrl\s*\+\s*a\s+view\s+all$/i,s=o.split(`
|
|
25
|
+
`).map(r=>r.trim()).filter(Boolean);return s.length<2||!i.test(s[s.length-1])||!e?!1:Ki(e,t)}function Ki(o,t){let e=Le(t),i=kt(o,"2");if(!e||!i)return!1;let s=new Set;for(let r of Ft(i)){let n=r.match(/^Yes, and don't ask again for commands that start with `([^`]*)`\s*\(p\)$/);if(!n)continue;let l=Le(n[1]);l&&JSON.stringify(l)===JSON.stringify(e)&&s.add(JSON.stringify(l))}return s.size===1}function At(o,t,e){if(!o.find(c=>c.number==="2"&&/\(p\)\s*$/i.test(c.text)))return o;let s="Yes, and don't ask again for commands that start with",r="Yes, and don't ask again (p)",n=kt(e,"2");if(!n)return null;let l=Ft(n);if(l.has(r))return o.map(c=>c.number==="2"?{...c,text:r}:c);if(!t)return null;let p=new Map;for(let c of l){let f=c.match(/^Yes, and don't ask again for commands that start with `([^`]*)`\s*\(p\)$/);if(!f)continue;let y=Le(f[1]);!y||!qi(y,t)||p.set(JSON.stringify(y),y)}if(p.size!==1)return null;let d=[...p.values()][0],u=Bi(d);return o.map(c=>c.number==="2"?{...c,text:`${s} \`${u}\` (p)`}:c)}function kt(o,t){if(!o)return null;let e=(0,B.normalizeSnapshot)(o).split(`
|
|
26
|
+
`).map(l=>l.trim()),i=new RegExp(`^(?:[>\u203A\u276F\u25B8\u25B6\u279C\u27A4*\u25CF]\\s*)?${t}\\.\\s+(.*)$`),s=-1,r="";for(let l=e.length-1;l>=0;l-=1){let p=e[l].match(i);if(p){s=l,r=p[1];break}}if(s<0)return null;let n=[r];for(let l=s+1;l<e.length&&!(/^(?:[>›❯▸▶➜➤*●]\s*)?\d+\.\s+/.test(e[l])||!e[l]||(n.push(e[l]),/\(p\)\s*$/i.test(e[l])));l+=1);return n.some(l=>/\(p\)\s*$/i.test(l))?n:null}function Ft(o){if(o.length===0||o.length>13)return new Set;let t=new Set([o[0]]);for(let e of o.slice(1)){let i=new Set;for(let s of t)i.add(`${s}${e}`),i.add(`${s} ${e}`);t=i}return t}function Le(o){try{let t=(0,Be.parse)(o,e=>`\${${e}}`);return t.every(e=>typeof e=="string")?t:null}catch{return null}}function Bi(o){return o.map(t=>/^[A-Za-z0-9_@%+=:,./-]+$/.test(t)?t:`'${t.replace(/'/g,`'"'"'`)}'`).join(" ")}function qi(o,t){if(o.length===0)return!1;let e;try{e=(0,Be.parse)(t,s=>`\${${s}}`)}catch{return!1}let i=[[]];for(let s of e){if(typeof s=="string"){i[i.length-1].push(s);continue}if("op"in s&&["&&","||",";","|","|&","&"].includes(s.op)){i.push([]);continue}return!1}return i.some(s=>o.every((r,n)=>s[n]===r))}var be=class o{constructor(){this.sessionState=null;this.unsubscribe=null;this.sessionKey=null;this.sessionIsEncrypted=!1;this.sessionKeyGen=null;this.e1PromptRaises=new Map;this.e1PendingResolutions=new Map;this.e1ResolutionInFlight=new Map;this.e1RaiseInFlight=new Map;this.e1NeedsReRaise=new Set;this.e1RetirementOrphans=new Map;this.e1ContentKeyIndex=new Map;this.e1TtlRefreshTimer=null;this.toolActivity=null;this.toolActivityStartPromise=null;this.toolActivityLegacyRecorders=new Map;this.pendingInteractivePrompt=null;this.queuedInteractivePrompts=[];this.isInitializingSession=!1;this.bufferedLogEntries=[];this.logEntryChain=Promise.resolve();this.hookEventChain=Promise.resolve();this.hooksActive=!1;this.hooksCompatibilityNoticeSent=!1;this.permissionRequestHookInFlight=null;this.queuedPermissionRequestDedupeKeys=new Map;this.queuedPermissionRequestSessionCounts=new Map;this.queuedPermissionRequestRegistrations=new Map;this.waitingPermissionRequests=new Map;this.permissionRequestOccurrencesByCompletionKey=new Map;this.deferredTmuxPromptCandidates=new Map;this.recoveryPermissionReplay=null;this.resolvedApprovalDedupeKeys=new Map;this.subscribedSessionId=null;this.subscribedSessionState=null;this.terminalInputChain=Promise.resolve();this.terminalInputBlockedStates=new WeakSet;this.mobilePromptDeduper=new me({expiryMs:1e4});this.launchSessionInitPromise=null;this.sessionStartedInitPromise=null;this.bootstrapSessionId=null;this.recoveryBootstrapOwnerBound=!1;this.resumeBackendSession=m.resumeOrCreateSession;this.sessionBootstrapFailureCount=0;this.sessionBootstrapRetryAt=0;this.retiredSessionRecoveryPromise=null;this.lifecycleGeneration=0;this.isStopping=!1;this.stopPromise=null;this.terminalRetirementRequested=!1;this.tmuxLifecycleTimer=null;this.tmuxLifecycleCheckInFlight=!1;this.tmuxLifecycleObservedAlive=!1;this.tmuxLifecycleInitDeadlineMs=Number.POSITIVE_INFINITY;this.v1Bridge=new ge;this.orchestrationClient=null;this.userDecisionUnsubscribe=null;this.httpApi=new he,this.sessionWatcher=new ae,this.approvalDetector=new pe,this.promptResponder=new de,this.tmuxPaneObserver=new ce,this.e1DurableState=new ye({handoffRoot:process.env.CODEVIBE_CODEX_HANDOFF_ROOT,resolutionRoot:process.env.CODEVIBE_CODEX_E1_OUTBOX_ROOT})}static{this.E1_TTL_REFRESH_MS=300*1e3}async start(){a.info("Starting CodeVibe Codex companion server",{environment:(0,m.getEnvironment)()}),this.appSyncClient=new m.AppSyncClient,await this.appSyncClient.authenticateWithStoredTokens()||(a.error('Authentication failed. Run "codevibe login" first.'),console.error('Not authenticated. Run "codevibe login" to sign in.'),process.exit(1)),a.info("Authenticated successfully",{userId:this.appSyncClient.getCurrentUserId(),email:this.appSyncClient.getCurrentUserEmail()}),await this.restorePendingE1ResolutionsFromOutbox(),await(0,m.registerDeviceEncryptionKey)(this.appSyncClient,a),(0,m.startDeviceKeyWatcher)(this.appSyncClient,a),(0,m.pushDetectedAgents)(this.appSyncClient,a).catch(i=>{a.warn("Failed to update available agents (non-fatal)",{error:i?.message})});try{let i=await this.appSyncClient.sweepOrphanSessions({agentType:"CODEX"});i>0&&a.info("Orphan sweep: marked stale Codex sessions INACTIVE",{swept:i})}catch(i){a.warn("Orphan sweep failed, continuing startup",{error:i instanceof Error?i.message:String(i)})}this.httpApi.onEvent(this.handleEventFromHook.bind(this));let e=await this.httpApi.start();a.info("HTTP API started for hooks",{port:e}),this.startTmuxLifecycleMonitor(),await this.createLaunchSession(),this.setupEventHandlers(),this.sessionWatcher.start(),a.info("CodeVibe Codex companion server started")}async createLaunchSession(){if(this.isStopping)return;if(process.env[Se]==="1"){a.info("Recovery daemon deferring backend bootstrap until the native rollout is known");return}let t=this.lifecycleGeneration,e=process.env.CODEVIBE_CODEX_TMUX_SESSION;if(!e){a.warn("No CODEVIBE_CODEX_TMUX_SESSION \u2014 skipping launch session");return}let i;this.launchSessionInitPromise=new Promise(s=>{i=s});try{let s=process.env.CODEX_WORKING_DIRECTORY||process.cwd(),r=this.getOrCreateBootstrapSessionId(),n=this.appSyncClient.getCurrentUserId();a.info("Creating launch session",{sessionId:r,projectPath:s});let l=!1;try{let p=await(0,m.resumeOrCreateSession)({sessionId:r,userId:n,agentType:m.AgentType.CODEX,projectPath:s,metadata:{launchSession:!0}},this.appSyncClient,a);if(r=p.sessionId,!this.isLifecycleCurrent(t)){await this.retireCancelledBootstrap(r,"launch_session");return}this.sessionKey=p.sessionKey,this.sessionKeyGen=p.sessionKeyGen,this.sessionIsEncrypted=!!p.sessionKey,l=!0,this.sessionState={sessionId:r,userId:n,projectPath:s,cwd:s,createdAt:new Date,subscriptionActive:!1,metadata:{launchSession:!0},encryptionSnapshot:{sessionKey:p.sessionKey,sessionIsEncrypted:!!p.sessionKey},codexSessionId:e,codexLogFile:void 0},this.clearSessionBootstrapFailure(),this.bootstrapSessionId=null,await _("daemon_init_step_completed",{step:"session_resume_or_create",path:"launch_session"})}catch(p){if(!this.isLifecycleCurrent(t)){let d=this.authoritativeSessionIdFromError(p)??r;await this.retireCancelledBootstrap(d,"launch_session_error");return}await _("daemon_init_step_failed",{step:"session_resume_or_create",path:"launch_session",error_class:p?.name||"Error",error_message:p?.message||String(p)}),p?.code==="ENCRYPTED_SESSION_NO_KEY"&&(this.sessionIsEncrypted=!0,this.sessionKey=null),this.bindBootstrapIdentityFromError(p),this.recordSessionBootstrapFailure(p,"launch_session"),a.error("Failed to create/resume launch session (non-fatal)",{error:p})}if(!l)return;await _("daemon_init_step_completed",{step:"session_state_set",path:"launch_session"});try{this.subscribeToMobileEvents(r)?await _("daemon_init_step_completed",{step:"subscribe_mobile_events",path:"launch_session"}):await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"launch_session",error_class:"SubscriptionSetupFailed",error_message:"subscribeToMobileEvents returned false"})}catch(p){await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"launch_session",error_class:p?.name||"Error",error_message:p?.message||String(p)}),a.error("Failed to subscribe to mobile events for launch session",{error:p})}try{await this.appSyncClient.startHeartbeat(r)?await _("daemon_init_step_completed",{step:"heartbeat_start",path:"launch_session"}):(await _("daemon_init_step_failed",{step:"heartbeat_start",path:"launch_session",error_class:"InitialHeartbeatNotPersisted",error_message:"Backend did not confirm the initial heartbeat mutation"}),a.error("Initial launch-session heartbeat was not persisted",{sessionId:r}))}catch(p){await _("daemon_init_step_failed",{step:"heartbeat_start",path:"launch_session",error_class:p?.name||"Error",error_message:p?.message||String(p)}),a.error("Failed to start heartbeat for launch session",{error:p})}try{await this.subscribeToOnApplyUserDecision(r)}catch(p){a.error("Failed to subscribe to onApplyUserDecision for launch session (non-fatal)",{error:p})}this.startMobileEndWatcher(r),a.info("Launch session created",{sessionId:r})}finally{i()}}encryptForEmit(t,e,i,s){let r=this.sessionState;if(!r||r.sessionId!==s||!r.encryptionSnapshot)return a.warn("Dropping event from stale or unresolved session generation (#638)",{type:i,sessionId:s,currentSessionId:r?.sessionId}),null;let{sessionKey:n,sessionIsEncrypted:l}=r.encryptionSnapshot,p=(0,m.encryptForEmit)(n,l,t,e);return p===null&&a.error("No session key for ENCRYPTED session \u2014 dropping event (fail-closed, #638)",{type:i,sessionId:s}),p}newE1Raise(t,e,i,s){let{record:r}=(0,m.newPromptRaise)({sessionId:t,producerKind:"PLUGIN_APPROVAL",mobileActionable:e,agentType:"CODEX",...i!==void 0&&{title:i}});return this.e1PromptRaises.set(r.promptId,{record:r,...s?.dedupeKey!==void 0?{resolutionDedupeKey:s.dedupeKey}:{},...s?.completionKey!==void 0?{resolutionCompletionKey:s.completionKey}:{},...s?.callId!==void 0?{resolutionCallId:s.callId}:{}}),this.e1TtlRefreshTimer||this.startE1TtlRefresh(),r}stashE1RaiseContent(t,e,i){let s=this.e1PromptRaises.get(t);s&&(s.contentPlain=e,s.metadataPlain=i)}async emitSuppressedPromptCarrier(t,e){let i="\u26A0\uFE0F A prompt is waiting in your desktop terminal, but its options could not be shown here. Please answer it on your desktop.",s=this.encryptForEmit(i,{e1SuppressedPrompt:!0},m.EventType.NOTIFICATION,t);return s?(await this.trackE1Raise(e.promptId,this.appSyncClient.createEvent({sessionId:t,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,content:s.content,metadata:s.metadata,...(0,m.raiseFieldsFromRecord)(e),notificationText:i,timestamp:(0,m.prepareEventTimestamp)({orderingKey:t}),isEncrypted:s.isEncrypted?!0:void 0})),a.info("E1: emitted suppressed-prompt badge carrier (mobileActionable=false)",{sessionId:t,promptId:e.promptId}),!0):!1}raiseSuppressedBadge(t,e,i={}){if(e){if(this.hasRecentlyResolvedApprovalDedupeKey(t,e)){a.debug("Skipping suppressed-prompt carrier; approval completed while producer was in flight",{sessionId:t,dedupeKey:e});return}let r=`${t}::${e}`,n=this.e1ContentKeyIndex.get(r);if(n&&this.e1PromptRaises.has(n)){if(i.suppressTmuxObserverUntilResolved){let l=this.e1PromptRaises.get(n);l&&(l.suppressTmuxObserverUntilResolved=!0,i.observerSnapshot&&(l.suppressedObserverSnapshotKey=this.buildObserverSnapshotMatchKey(i.observerSnapshot)))}return}n&&this.e1ContentKeyIndex.delete(r)}let s=this.newE1Raise(t,!1,void 0,e?{dedupeKey:e,completionKey:i.completionKey}:void 0);if(i.suppressTmuxObserverUntilResolved){let r=this.e1PromptRaises.get(s.promptId);r&&(r.suppressTmuxObserverUntilResolved=!0,i.observerSnapshot&&(r.suppressedObserverSnapshotKey=this.buildObserverSnapshotMatchKey(i.observerSnapshot)))}e&&this.e1ContentKeyIndex.set(`${t}::${e}`,s.promptId),this.emitSuppressedPromptCarrier(t,s).catch(r=>{a.error("E1: failed to emit suppressed-prompt badge carrier",{sessionId:t,promptId:s.promptId,error:r instanceof Error?r.message:String(r)})})}snapshotOpenE1(t){return[...this.e1PromptRaises.values()].filter(e=>e.record.sessionId===t).map(e=>({record:{...e.record},...e.contentPlain!==void 0&&{contentPlain:e.contentPlain},...e.metadataPlain!==void 0&&{metadataPlain:e.metadataPlain},...e.resolutionDedupeKey!==void 0&&{resolutionDedupeKey:e.resolutionDedupeKey},...e.resolutionCompletionKey!==void 0&&{resolutionCompletionKey:e.resolutionCompletionKey},...e.resolutionCallId!==void 0&&{resolutionCallId:e.resolutionCallId},...e.suppressTmuxObserverUntilResolved!==void 0&&{suppressTmuxObserverUntilResolved:e.suppressTmuxObserverUntilResolved},...e.suppressedObserverSnapshotKey!==void 0&&{suppressedObserverSnapshotKey:e.suppressedObserverSnapshotKey}}))}buildDaemonHandoffSnapshot(t){let e=process.env[$];if(!e)throw new Error("E1_DAEMON_HANDOFF_MISSING_TMUX_SESSION");return{version:1,createdAtMs:Date.now(),tmuxSession:e,backendSessionId:t.sessionId,openRaises:this.snapshotOpenE1(t.sessionId),pendingResolutions:[...this.e1PendingResolutions.values()].map(i=>({record:{...i.record},resolutionAt:i.resolutionAt,attempts:i.attempts})),needsReRaisePromptIds:[...this.e1NeedsReRaise],permissionOccurrences:[...this.permissionRequestOccurrencesByCompletionKey.entries()].map(([i,s])=>[i,s.map(r=>({...r}))]),waitingPermissionRequests:[...this.waitingPermissionRequests.values()].filter(i=>i.ownerState===t).map(({occurrenceKey:i,dedupeKey:s,payload:r})=>({occurrenceKey:i,dedupeKey:s,payload:r})),pendingInteractivePrompt:this.pendingInteractivePrompt?{...this.pendingInteractivePrompt}:null,queuedInteractivePrompts:this.queuedInteractivePrompts.map(i=>({prompt:{...i.prompt},content:i.content,metadata:{...i.metadata}})),resolvedApprovalDedupeKeys:[...this.resolvedApprovalDedupeKeys.entries()].filter(([,i])=>i>Date.now()-Me)}}persistDaemonHandoffState(t){for(let i of this.e1PendingResolutions.values())this.e1DurableState.writeResolution(i);let e=this.buildDaemonHandoffSnapshot(t);this.e1DurableState.writeHandoff(e),a.info("E1: persisted daemon handoff state",{sessionId:t.sessionId,openPrompts:e.openRaises.length,pendingResolutions:e.pendingResolutions.length,completionQueues:e.permissionOccurrences.length})}async adoptDaemonHandoffState(t){if(process.env[Se]!=="1")return!1;let e=process.env[$];if(!e)return!1;let i=this.e1DurableState.readHandoff(e);if(!i)return!1;let s=this.sessionState;if(!s||s.sessionId!==t)throw new Error("E1_DAEMON_HANDOFF_WITHOUT_CURRENT_SESSION");for(let p of i.pendingResolutions)this.e1PendingResolutions.has(p.record.promptId)||this.e1PendingResolutions.set(p.record.promptId,{record:{...p.record},resolutionAt:p.resolutionAt,attempts:p.attempts}),this.e1DurableState.writeResolution(p);for(let p of i.openRaises){let d={...p,record:{...p.record},...p.metadataPlain!==void 0&&{metadataPlain:{...p.metadataPlain}}};this.e1PromptRaises.set(d.record.promptId,d),i.backendSessionId!==t&&this.e1RetirementOrphans.set(d.record.promptId,{...d,record:{...d.record}}),d.resolutionDedupeKey&&this.e1ContentKeyIndex.set(`${t}::${d.resolutionDedupeKey}`,d.record.promptId)}this.permissionRequestOccurrencesByCompletionKey=new Map(i.permissionOccurrences.map(([p,d])=>[p,d.map(u=>({...u}))])),this.e1NeedsReRaise=new Set(i.needsReRaisePromptIds);for(let p of i.waitingPermissionRequests??[])this.waitingPermissionRequests.set(p.occurrenceKey,{...p,ownerState:s,context:this.buildApprovalPromptContextFromHookPayload(p.payload)});this.pendingInteractivePrompt=i.pendingInteractivePrompt?{...i.pendingInteractivePrompt,ownerSessionId:t}:null;let r=this.pendingInteractivePrompt,n=r?.completionKey?this.permissionRequestOccurrencesByCompletionKey.get(r.completionKey):void 0;this.recoveryPermissionReplay=r?.source==="permission_hook"&&r.completionKey&&r.dedupeKey&&this.isPermissionRequestOccurrenceKey(r.dedupeKey)&&n?.some(p=>p.occurrenceKey===r.dedupeKey)?{ownerSessionId:t,completionKey:r.completionKey,occurrenceKey:r.dedupeKey}:null,this.queuedInteractivePrompts=i.queuedInteractivePrompts.map(p=>({prompt:{...p.prompt,ownerSessionId:t},content:p.content,metadata:{...p.metadata},ownerState:s}));let l=Date.now()-Me;for(let[p,d]of i.resolvedApprovalDedupeKeys){if(d<=l)continue;let u=`${i.backendSessionId}::`,c=p.startsWith(u)?`${t}::${p.slice(u.length)}`:p;this.resolvedApprovalDedupeKeys.set(c,d)}return i.backendSessionId!==t&&await this.drainRetirementOrphans(t),await this.drainPendingE1Resolutions(),await this.drainPendingE1ReRaises(),(this.e1PromptRaises.size>0||this.e1PendingResolutions.size>0)&&this.startE1TtlRefresh(),this.e1DurableState.removeHandoff(e),a.info("E1: adopted daemon handoff state",{fromSessionId:i.backendSessionId,replacementSessionId:t,openPrompts:i.openRaises.length,pendingResolutions:i.pendingResolutions.length,completionQueues:i.permissionOccurrences.length}),!0}parkRetirementOrphans(t){for(let e of this.snapshotOpenE1(t))this.e1RetirementOrphans.set(e.record.promptId,e)}async drainRetirementOrphans(t){if(this.e1RetirementOrphans.size===0){this.e1PendingResolutions.size>0&&!this.e1TtlRefreshTimer&&this.startE1TtlRefresh();return}a.info("E1 (\xA76a-4): re-homing parked retirement-orphan prompts onto replacement session",{replacementSessionId:t,count:this.e1RetirementOrphans.size});for(let[e,i]of[...this.e1RetirementOrphans]){let r=this.e1PromptRaises.get(e)??{record:{...i.record},...i.contentPlain!==void 0&&{contentPlain:i.contentPlain},...i.metadataPlain!==void 0&&{metadataPlain:i.metadataPlain},...i.resolutionDedupeKey!==void 0&&{resolutionDedupeKey:i.resolutionDedupeKey},...i.resolutionCompletionKey!==void 0&&{resolutionCompletionKey:i.resolutionCompletionKey},...i.resolutionCallId!==void 0&&{resolutionCallId:i.resolutionCallId}};for(let[l,p]of this.e1ContentKeyIndex.entries())p===e&&this.e1ContentKeyIndex.delete(l);if(r.record.sessionId=t,this.e1PromptRaises.set(e,r),r.resolutionDedupeKey&&this.e1ContentKeyIndex.set(`${t}::${r.resolutionDedupeKey}`,e),!await this.reRaiseOneE1(t,r,{untilAck:!0})){if(!this.e1RetirementOrphans.has(e))continue;break}this.e1RetirementOrphans.delete(e)}this.e1TtlRefreshTimer||this.startE1TtlRefresh()}isReRaiseTargetCurrent(t){return!this.isStopping&&this.sessionState!==null&&this.sessionState.sessionId===t}async reRaiseOneE1(t,e,i){let s=e.record;if(!(0,m.canRecoverPromptRaise)(e,this.e1RaiseInFlight.has(s.promptId)))return!1;let r=s.mobileActionable&&e.contentPlain!==void 0,n=i?.untilAck??!1,l=4,p=4e3;for(let d=1;n||d<=l;d++){if(!(0,m.isOpenPromptRaise)(e,this.e1PromptRaises.get(s.promptId)))return!1;if(n&&!this.isReRaiseTargetCurrent(t))return this.e1NeedsReRaise.add(s.promptId),a.warn("E1: retirement re-raise aborted (stopping/superseded) \u2014 parked",{sessionId:t,promptId:s.promptId}),!1;try{if(r){let u=this.encryptForEmit(e.contentPlain,e.metadataPlain??{},m.EventType.INTERACTIVE_PROMPT,t);if(!u)return!1;await this.trackE1Raise(s.promptId,this.appSyncClient.createEvent({sessionId:t,type:m.EventType.INTERACTIVE_PROMPT,source:m.EventSource.DESKTOP,content:u.content,metadata:u.metadata,...(0,m.raiseFieldsFromRecord)(s),timestamp:(0,m.prepareEventTimestamp)({orderingKey:t}),...u.isEncrypted?{isEncrypted:!0}:{}}))}else if(s.mobileActionable=!1,!await this.emitSuppressedPromptCarrier(t,s))return!1;return this.e1NeedsReRaise.delete(s.promptId),a.info("E1: re-raised prompt onto replacement session",{sessionId:t,promptId:s.promptId,actionable:r}),!0}catch(u){if(!n&&d===l)return this.e1NeedsReRaise.add(s.promptId),a.error("E1: re-raise unacked after backoff \u2014 parked for retry-until-ack",{sessionId:t,promptId:s.promptId,error:u instanceof Error?u.message:String(u)}),!1;if(n){let c=Date.now()+Math.min(250*2**(d-1),p);for(;Date.now()<c&&this.isReRaiseTargetCurrent(t);)await new Promise(f=>setTimeout(f,Math.min(50,c-Date.now())))}else await new Promise(c=>setTimeout(c,250*d))}}return!1}async drainPendingE1ReRaises(){if(this.e1NeedsReRaise.size!==0)for(let t of[...this.e1NeedsReRaise]){let e=this.e1PromptRaises.get(t);if(!e){this.e1NeedsReRaise.delete(t);continue}!this.sessionState||e.record.sessionId!==this.sessionState.sessionId||await this.reRaiseOneE1(e.record.sessionId,e)}}beginE1Resolution(t,e){if(this.e1PendingResolutions.has(t))return!0;let i=this.e1PromptRaises.get(t);if(!i||i.record.sessionId!==e)return!1;this.e1PromptRaises.delete(t),this.e1NeedsReRaise.delete(t),this.e1RetirementOrphans.delete(t);for(let[s,r]of this.e1ContentKeyIndex.entries())r===t&&this.e1ContentKeyIndex.delete(s);return this.e1PendingResolutions.set(t,{record:{...i.record},resolutionAt:new Date().toISOString(),attempts:0}),this.e1TtlRefreshTimer||this.startE1TtlRefresh(),!0}async emitE1Resolution(t){let e=this.e1ResolutionInFlight.get(t);if(e)return e;if(!this.e1PendingResolutions.has(t))return;let i=(async()=>{let s=this.e1PendingResolutions.get(t);if(s){try{this.e1DurableState.writeResolution(s)}catch(r){a.error("E1: failed to persist exact-clear outbox record",{promptId:t,error:r instanceof Error?r.message:String(r)})}try{let r=this.e1RaiseInFlight.get(t);if(r&&await r,s=this.e1PendingResolutions.get(t),!s)return;if((await this.appSyncClient.createEvent({sessionId:s.record.sessionId,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,resolvedPromptId:s.record.promptId,ownerToken:s.record.ownerToken,resolutionAt:s.resolutionAt,timestamp:(0,m.prepareEventTimestamp)({orderingKey:s.record.sessionId})}))?.promptId!==s.record.promptId)throw new Error("E1_PLUGIN_RESOLUTION_NOT_ACKNOWLEDGED: exact prompt id was not returned");this.e1PendingResolutions.delete(t);try{this.e1DurableState.removeResolution(t)}catch(l){a.warn("E1: exact-clear ACKed but outbox cleanup failed",{promptId:t,error:l instanceof Error?l.message:String(l)})}a.info("E1: plugin approval resolution acknowledged",{sessionId:s.record.sessionId,promptId:t})}catch(r){let n=this.e1PendingResolutions.get(t);a.warn("E1: plugin approval resolution unacknowledged; parked for retry",{sessionId:n?.record.sessionId,promptId:t,error:r instanceof Error?r.message:String(r)})}}})();this.e1ResolutionInFlight.set(t,i);try{await i}finally{this.e1ResolutionInFlight.get(t)===i&&this.e1ResolutionInFlight.delete(t)}}trackE1Raise(t,e){let i=e.then(()=>{},()=>{});return this.e1RaiseInFlight.set(t,i),i.then(()=>{this.e1RaiseInFlight.get(t)===i&&this.e1RaiseInFlight.delete(t)}),e}async drainPendingE1Resolutions(){for(let[t,e]of[...this.e1PendingResolutions.entries()])e.attempts+=1,await this.emitE1Resolution(t)}async restorePendingE1ResolutionsFromOutbox(){let{records:t,rejected:e}=this.e1DurableState.readResolutions();for(let i of e)a.error("E1: rejected unsafe or invalid resolution outbox record",i);for(let i of t){let s=this.e1PendingResolutions.get(i.record.promptId);(!s||i.attempts>s.attempts)&&this.e1PendingResolutions.set(i.record.promptId,{record:{...i.record},resolutionAt:i.resolutionAt,attempts:i.attempts})}t.length>0&&(a.info("E1: recovered pending exact-clear outbox records",{count:t.length}),await this.drainPendingE1Resolutions(),this.e1PendingResolutions.size>0&&!this.e1TtlRefreshTimer&&this.startE1TtlRefresh())}async drainPendingE1ResolutionsForLifecycleEnd(t={}){let e=t.maxWaitMs??4e3,i=t.retryDelayMs??250,s=Date.now()+Math.max(0,e),r=0;do{if(await this.drainPendingE1Resolutions(),this.e1PendingResolutions.size===0)return;if(r+=1,Date.now()>=s)break;await new Promise(n=>setTimeout(n,Math.min(i*r,Math.max(0,s-Date.now()))))}while(Date.now()<s);for(let n of this.e1PendingResolutions.values())this.e1DurableState.writeResolution(n);a.warn("E1: graceful lifecycle ended with durable exact-clear work pending",{count:this.e1PendingResolutions.size})}beginE1PromptResolutions(t,e){let i=[];for(let s of new Set(t))this.beginE1Resolution(s,e)&&i.push(s);return i}launchE1Resolutions(t){Promise.all([...t].map(e=>this.emitE1Resolution(e)))}async exactClearOpenE1ForLifecycleEnd(t){let e=[...this.e1PromptRaises.values()].filter(s=>s.record.sessionId===t).map(s=>s.record.promptId),i=this.beginE1PromptResolutions(e,t);await Promise.all(i.map(s=>this.emitE1Resolution(s)))}async refreshE1Ttls(){await this.drainPendingE1Resolutions(),await this.drainPendingE1ReRaises();let t=this.sessionState?.sessionId;if(!t)return;let e=[...this.e1PromptRaises.values()].filter(i=>i.record.sessionId===t&&(0,m.canRecoverPromptRaise)(i,this.e1RaiseInFlight.has(i.record.promptId))).map(i=>i.record.promptId);if(e.length!==0)try{let i=await this.appSyncClient.refreshOpenPromptTtl(e);for(let s of i){let r=this.e1PromptRaises.get(s);r&&r.record.sessionId===t&&await this.reRaiseOneE1(t,r)}}catch(i){a.warn("E1: TTL-refresh tick failed (non-fatal, retries next tick)",{error:i instanceof Error?i.message:String(i)})}}startE1TtlRefresh(){this.e1TtlRefreshTimer&&clearInterval(this.e1TtlRefreshTimer),this.e1TtlRefreshTimer=setInterval(()=>{this.refreshE1Ttls()},o.E1_TTL_REFRESH_MS)}stopE1TtlRefresh(){this.e1TtlRefreshTimer&&(clearInterval(this.e1TtlRefreshTimer),this.e1TtlRefreshTimer=null)}isExpectedSessionStateCurrent(t){return!this.isStopping&&this.sessionState===t&&!this.terminalInputBlockedStates.has(t)}sendSessionPinnedInput(t,e){if(!this.isExpectedSessionStateCurrent(t)||this.terminalInputBlockedStates.has(t))return Promise.resolve(!1);let i=this.terminalInputChain.then(async()=>!this.isExpectedSessionStateCurrent(t)||this.terminalInputBlockedStates.has(t)||!await this.verifyNoActiveCodexChooser(t.sessionId)||!await this.promptResponder.sendLiteral(t.sessionId,e)||(await new Promise(s=>setTimeout(s,500)),!this.isExpectedSessionStateCurrent(t))||!await this.verifyNoActiveCodexChooser(t.sessionId)?!1:this.promptResponder.sendKey(t.sessionId,"Enter"));return this.terminalInputChain=i.then(()=>{},()=>{}),i}async verifyNoActiveCodexChooser(t){try{let e=await this.tmuxPaneObserver.captureSnapshot();return!this.tmuxPaneObserver.extractActivePromptBlock(e)}catch(e){return a.warn("Failed to verify that no Codex chooser is active",{sessionId:t,error:e instanceof Error?e.message:String(e)}),!1}}sendVerifiedPromptInput(t,e,i){if(!this.isExpectedSessionStateCurrent(t))return Promise.resolve("stale");let s=this.terminalInputChain.then(async()=>{if(!this.isExpectedSessionStateCurrent(t)||this.pendingInteractivePrompt!==e||e.ownerSessionId!==t.sessionId)return"stale";if(!e.observerMatchKey)return a.warn("Refusing mobile prompt input without a captured pane identity",{sessionId:t.sessionId,promptId:e.promptId}),"unverified";if(e.terminalMenuIdentity)try{return await(0,ne.selectTerminalMenuOption)(e.terminalMenuIdentity,i,{current:()=>this.isExpectedSessionStateCurrent(t)&&this.pendingInteractivePrompt===e,read:async()=>(0,ne.parseActiveTerminalMenu)(await this.tmuxPaneObserver.captureSnapshot()),key:l=>this.promptResponder.sendKey(t.sessionId,l),wait:()=>new Promise(l=>setTimeout(l,100))})}catch{return"unverified"}let r=null;try{let l=await this.tmuxPaneObserver.captureSnapshot(),p=this.tmuxPaneObserver.extractActiveApprovalBlock(l),d=p?(0,B.parseInteractivePrompt)(p):null;r=d?this.buildObserverPromptMatchKey(d):null}catch(l){return a.warn("Failed to re-probe Codex prompt before mobile input",{sessionId:t.sessionId,promptId:e.promptId,error:l instanceof Error?l.message:String(l)}),"unverified"}return!this.isExpectedSessionStateCurrent(t)||this.pendingInteractivePrompt!==e?"stale":!r||r!==e.observerMatchKey?(a.warn("Refusing mobile input because the live Codex prompt changed",{sessionId:t.sessionId,promptId:e.promptId,hasLiveIdentity:!!r}),"unverified"):(i===Y?await this.promptResponder.sendKey(t.sessionId,"Escape"):await this.promptResponder.sendLiteral(t.sessionId,i))?"sent":"send_failed"});return this.terminalInputChain=s.then(()=>{},()=>{}),s}sendVerifiedFollowUpAfterDismissal(t,e,i){let s=this.terminalInputChain.then(async()=>{let r=()=>this.isExpectedSessionStateCurrent(t)&&e.ownerSessionId===t.sessionId;return r()?!await this.verifyNoActiveCodexChooser(t.sessionId)||!r()?"unverified":await this.promptResponder.sendLiteral(t.sessionId,i)?(await new Promise(n=>setTimeout(n,500)),r()?!await this.verifyNoActiveCodexChooser(t.sessionId)||!r()?"unverified":await this.promptResponder.sendKey(t.sessionId,"Enter")?"sent":"send_failed":"stale"):"send_failed":"stale"});return this.terminalInputChain=s.then(()=>{},()=>{}),s}sendConversationContinuation(t,e){if(!this.isExpectedSessionStateCurrent(t))return Promise.resolve("stale");let i=this.terminalInputChain.then(async()=>{if(!this.isExpectedSessionStateCurrent(t))return"stale";try{let s=new Set;for(;;){let r=await this.tmuxPaneObserver.captureSnapshot();if(!this.isExpectedSessionStateCurrent(t))return"stale";let n=this.tmuxPaneObserver.extractActivePromptBlock(r);if(!n)break;let l=this.tmuxPaneObserver.hashPromptSnapshot(n);if(s.has(l)||s.size>=4)return"unverified";if(s.add(l),!await this.promptResponder.sendKey(t.sessionId,"Escape"))return"send_failed";if(await new Promise(p=>setTimeout(p,200)),!this.isExpectedSessionStateCurrent(t))return"stale"}}catch(s){return a.warn("Failed to inspect Codex chooser before conversation continuation",{sessionId:t.sessionId,error:s instanceof Error?s.message:String(s)}),"unverified"}return await this.promptResponder.sendLiteral(t.sessionId,e)?(await new Promise(s=>setTimeout(s,500)),this.isExpectedSessionStateCurrent(t)?await this.verifyNoActiveCodexChooser(t.sessionId)?await this.promptResponder.sendKey(t.sessionId,"Enter")?"sent":"send_failed":"unverified":"stale"):"send_failed"});return this.terminalInputChain=i.then(()=>{},()=>{}),i}handleEventFromHook(t){if(this.isStopping)return Promise.resolve();let e=this.lifecycleGeneration,i=this.registerQueuedPermissionRequest(t,e),s=this.hookEventChain.then(()=>this.processHookEvent(t,e,i??void 0)),r=i?s.finally(()=>this.unregisterQueuedPermissionRequest(i)):s;return this.hookEventChain=r.catch(n=>{a.error("[Hooks] event handler failed",{hookEvent:t.hook_event_name,sessionId:t.session_id,error:n instanceof Error?n.message:String(n)})}),r}registerQueuedPermissionRequest(t,e){if(t.hook_event_name!=="PermissionRequest"||!this.sessionState||this.sessionWatcher.getAuthoritativeSessionId()!==t.session_id)return null;let i=this.sessionState.sessionId;this.queuedPermissionRequestSessionCounts.set(i,(this.queuedPermissionRequestSessionCounts.get(i)??0)+1);let s=this.buildApprovalPromptContextFromHookPayload(t),r=this.buildApprovalDedupeKey(s),n=`permission:${(0,J.v4)()}`,l=r?`${i}::${r}`:void 0;l&&this.queuedPermissionRequestDedupeKeys.set(l,(this.queuedPermissionRequestDedupeKeys.get(l)??0)+1);let p={sessionId:i,lifecycleGeneration:e,context:s,dedupeKey:r,occurrenceKey:n,dedupeRegistryKey:l,disposition:"pending"};if(r){let u=this.permissionRequestOccurrencesByCompletionKey.get(r)??[];u.push({occurrenceKey:n,hookObserved:!1,jsonlObserved:!1}),this.permissionRequestOccurrencesByCompletionKey.set(r,u)}let d=this.queuedPermissionRequestRegistrations.get(i)??[];return d.push(p),this.queuedPermissionRequestRegistrations.set(i,d),p}async unregisterQueuedPermissionRequest(t){let e=this.queuedPermissionRequestSessionCounts.get(t.sessionId)??0;if(e<=1?this.queuedPermissionRequestSessionCounts.delete(t.sessionId):this.queuedPermissionRequestSessionCounts.set(t.sessionId,e-1),t.dedupeRegistryKey){let l=this.queuedPermissionRequestDedupeKeys.get(t.dedupeRegistryKey)??0;l<=1?this.queuedPermissionRequestDedupeKeys.delete(t.dedupeRegistryKey):this.queuedPermissionRequestDedupeKeys.set(t.dedupeRegistryKey,l-1)}let s=(this.queuedPermissionRequestRegistrations.get(t.sessionId)??[]).filter(l=>l!==t);s.length>0?this.queuedPermissionRequestRegistrations.set(t.sessionId,s):this.queuedPermissionRequestRegistrations.delete(t.sessionId),(t.disposition==="pending"||t.disposition==="dropped"||this.sessionState?.sessionId!==t.sessionId)&&this.removePermissionRequestOccurrence(t.dedupeKey,t.occurrenceKey);let r=this.deferredTmuxPromptCandidates.get(t);if(!r)return;if(this.deferredTmuxPromptCandidates.delete(t),!this.isLifecycleCurrent(t.lifecycleGeneration)){t.disposition="dropped",this.removePermissionRequestOccurrence(t.dedupeKey,t.occurrenceKey),a.debug("Discarding deferred tmux prompt after lifecycle invalidation",{sessionId:t.sessionId,lifecycleGeneration:t.lifecycleGeneration,currentLifecycleGeneration:this.lifecycleGeneration});return}let n=this.hasRecentlyResolvedApprovalDedupeKey(t.sessionId,t.occurrenceKey);if(t.disposition==="covered"||t.disposition==="resolved"||n){a.debug("Discarding deferred tmux prompt covered by its PermissionRequest",{sessionId:t.sessionId,dedupeKey:t.dedupeKey,disposition:t.disposition});return}if(!(t.disposition==="dropped"||this.sessionState?.sessionId!==t.sessionId)){a.debug("Replaying deferred tmux prompt after PermissionRequest produced no durable owner",{sessionId:t.sessionId,dedupeKey:t.dedupeKey});try{await this.handleTmuxPromptCandidate(r.snapshot,t,r.promptHash)}catch(l){a.error("Failed to replay deferred tmux prompt candidate",{sessionId:t.sessionId,error:l instanceof Error?l.message:String(l)})}}}removePermissionRequestOccurrence(t,e){if(!t||!e)return;let i=this.permissionRequestOccurrencesByCompletionKey.get(t);if(!i)return;let s=i.filter(r=>r.occurrenceKey!==e);s.length>0?this.permissionRequestOccurrencesByCompletionKey.set(t,s):this.permissionRequestOccurrencesByCompletionKey.delete(t)}observePermissionRequestCompletion(t,e){if(!t)return{shouldResolve:!0};let i=this.permissionRequestOccurrencesByCompletionKey.get(t);if(!i)return{shouldResolve:!0};let s=e==="hook"?"hookObserved":"jsonlObserved",r=i.find(l=>!l[s]);if(!r)return a.debug("Ignoring duplicate interactive-prompt completion observation",{completionKey:t,producer:e}),{shouldResolve:!1};let n=!r.hookObserved&&!r.jsonlObserved;return r[s]=!0,r.hookObserved&&r.jsonlObserved&&this.removePermissionRequestOccurrence(t,r.occurrenceKey),{shouldResolve:n,occurrenceKey:r.occurrenceKey}}isPermissionRequestOccurrenceKey(t){return t.startsWith("permission:")}consumeRecoveryPermissionReplay(t,e,i){let s=this.recoveryPermissionReplay,r=this.pendingInteractivePrompt;return!s||!e||s.ownerSessionId!==t.sessionId||s.completionKey!==e||r?.ownerSessionId!==t.sessionId||r.source!=="permission_hook"||r.dedupeKey!==s.occurrenceKey||r.completionKey!==s.completionKey?!1:(this.recoveryPermissionReplay=null,i&&(this.removePermissionRequestOccurrence(i.dedupeKey,i.occurrenceKey),i.occurrenceKey=s.occurrenceKey,i.disposition="covered"),a.info("[Hooks] Reused adopted PermissionRequest occurrence for one recovery replay",{sessionId:t.sessionId,completionKey:e,occurrenceKey:s.occurrenceKey}),!0)}async processHookEvent(t,e,i){if(!this.isLifecycleCurrent(e))return;let{session_id:s,hook_event_name:r,type:n,content:l,metadata:p}=t;a.info("[Hooks] Received event",{sessionId:s,hookEvent:r,type:n,contentLength:l?.length});let d=this.sessionWatcher.getAuthoritativeSessionId();if(d&&d!==s){a.warn("[Hooks] Rejecting event for foreign native session",{hookEvent:r,sessionId:s,authoritativeSessionId:d});return}if(p?.transcript_path){let f=await this.sessionWatcher.bindToSessionTranscript(p.transcript_path,s);if(!this.isLifecycleCurrent(e))return;let y=f.status==="pending"?await f.completion:f;if(!this.isLifecycleCurrent(e))return;if(y.status!=="bound"){a.warn("[Hooks] Rejecting event whose transcript ownership was not proven",{hookEvent:r,sessionId:s,reason:y.reason});return}}else if(d!==s){a.warn("[Hooks] Rejecting event without an owned transcript",{hookEvent:r,sessionId:s});return}if(!this.isLifecycleCurrent(e)||this.sessionWatcher.getAuthoritativeSessionId()!==s){a.warn("[Hooks] Rejecting event after ownership changed during admission",{hookEvent:r,sessionId:s,authoritativeSessionId:this.sessionWatcher.getAuthoritativeSessionId()});return}if(this.hooksActive=!0,r==="SessionStart"){if(this.launchSessionInitPromise&&(await this.launchSessionInitPromise,!this.isLifecycleCurrent(e)))return;if(this.sessionState){if(a.info("[Hooks] SessionStart \u2014 launch session already exists, updating codexSessionId",{existingSessionId:this.sessionState.sessionId,codexSessionId:s}),this.sessionState.codexSessionId=s,this.sessionState.metadata={...this.sessionState.metadata,codexSessionId:s,cliVersion:p?.model||"unknown",modelProvider:p?.model||"unknown",launchSession:void 0},this.appSyncClient.updateSession({sessionId:this.sessionState.sessionId,metadata:this.sessionState.metadata}).catch(f=>a.warn("Failed to update session metadata",{error:f})),await this.startTmuxObserverWithBeacon("session_start_existing"),!this.isLifecycleCurrent(e))return;await this.ensureToolActivityStarted(s)}else{let f={id:s,timestamp:new Date().toISOString(),cwd:p?.cwd||process.cwd(),originator:"hook",cli_version:p?.model||"unknown",instructions:null,source:p?.source||"startup",model_provider:p?.model||"unknown"};await this.ensureSessionStarted(f)}return}if(!this.sessionState){a.warn("[Hooks] Hook event for un-bootstrapped session \u2014 self-healing via session bootstrap (#638)",{hookEvent:r,sessionId:s});let f={id:s,timestamp:new Date().toISOString(),cwd:p?.cwd||process.cwd(),originator:"hook",cli_version:p?.model||"unknown",instructions:null,source:p?.source||"startup",model_provider:p?.model||"unknown"};if(await this.ensureSessionStarted(f),!this.isLifecycleCurrent(e))return;if(!this.sessionState){a.warn("[Hooks] Session still not initialized after self-heal, dropping event",{hook_event_name:r});return}}let u=this.sessionState,c=u.sessionId;if(n==="USER_PROMPT"&&(this.approvalDetector.clear(),this.clearInteractivePromptsForAcceptedInput(u)),n==="USER_PROMPT"&&l){let f=this.consumeRecentMobilePrompt(c,l);if(f){a.info("[Hooks] Skipping duplicate USER_PROMPT from mobile",{sessionId:c,matchType:f.matchType,originalLength:f.originalLength,echoLength:f.echoLength});return}}if(r==="PreToolUse"){a.debug("[Hooks] PreToolUse observed; AppSync emission suppressed",{toolName:p?.tool_name||"unknown",sessionId:c});return}if(r==="PermissionRequest"){let f=i??this.registerQueuedPermissionRequest(t,e);if(!f){a.error("[Hooks] Dropping admitted PermissionRequest without occurrence registration",{sessionId:c,nativeSessionId:s});return}try{await this.handlePermissionRequestHook(t,u,f)}finally{i||await this.unregisterQueuedPermissionRequest(f)}return}if(r==="PostToolUse"){let f=this.buildApprovalPromptContextFromHookPayload(t),y=this.buildApprovalDedupeKey(f),h=this.firstString(p?.tool_use_id,p?.call_id,p?.callId)??"",v=this.observePermissionRequestCompletion(y,"hook");if(v.shouldResolve&&await this.clearResolvedInteractivePrompt(h,v.occurrenceKey??y),!this.isExpectedSessionStateCurrent(u)||this.toolActivity?.isActive()&&await this.toolActivity.observeCall({callId:p?.tool_use_id??p?.call_id??p?.callId,toolName:p?.tool_name,toolInput:p?.tool_input})!=="closed")return;let P=this.encryptForEmit(l,p,m.EventType.TOOL_USE,c);if(!P)return;let E=P.content,S=P.metadata,b=P.isEncrypted,O=p?.tool_use_id??p?.call_id??p?.callId,L=typeof O=="string"&&O.length>0&&!!this.sessionKey,F=L?this.getToolActivityLegacyRecorder(c):void 0;F&&L&&F.markLegacyInFlight(O);try{let C=await this.appSyncClient.createEvent({sessionId:c,type:m.EventType.TOOL_USE,source:m.EventSource.DESKTOP,content:E,metadata:S,isEncrypted:b,timestamp:(0,m.prepareEventTimestamp)({orderingKey:c})});F&&L&&((0,m.isPersistedEventResult)(C)?await F.finalizeLegacyOwned([O]):F.clearLegacyInFlight(O))}catch(C){throw F&&L&&F.clearLegacyInFlight(O),C}return}if(n==="ASSISTANT_RESPONSE"||n==="USER_PROMPT"){if(n==="ASSISTANT_RESPONSE"){this.sessionWatcher.getBindSource()==="authoritative"&&this.sessionWatcher.getAuthoritativeSessionId()===s?a.debug("[Hooks] Suppressing Stop final \u2014 JSONL watcher authoritatively bound to this session (Bug #2)"):a.warn("[Hooks] Dropping Stop final after authoritative ownership changed",{authoritativeSessionId:this.sessionWatcher.getAuthoritativeSessionId()});return}let f=this.encryptForEmit(l,void 0,m.EventType.USER_PROMPT,c);if(!f)return;await this.appSyncClient.createEvent({sessionId:c,type:m.EventType.USER_PROMPT,source:m.EventSource.DESKTOP,content:f.content,isEncrypted:f.isEncrypted,timestamp:(0,m.prepareEventTimestamp)({orderingKey:c})});return}}mapToolName(t){return{shell_command:"Bash",shell:"Bash",apply_patch:"Edit",create_file:"Write",read_file:"Read"}[t]||t}trackMobilePrompt(t,e){this.mobilePromptDeduper.track(t,e),a.debug("Tracking mobile prompt for USER_PROMPT echo deduplication",{sessionId:t,promptLength:e.trim().length})}forgetMobilePrompt(t,e){this.mobilePromptDeduper.forget(t,e)}consumeRecentMobilePrompt(t,e){return this.mobilePromptDeduper.consumeIfDuplicate(t,e)}setupEventHandlers(){this.sessionWatcher.on("session-started",async t=>{try{if(this.launchSessionInitPromise&&await this.launchSessionInitPromise,this.sessionState){a.info("[JSONL] Session already active, skipping",{currentSessionId:this.sessionState.sessionId,codexSessionId:t.id}),await this.ensureToolActivityStarted(t.id);return}await this.ensureSessionStarted(t)}catch(e){a.error("[JSONL] session-started handler failed (non-fatal) \u2014 next event retries",{codexSessionId:t?.id,error:String(e)})}}),this.sessionWatcher.on("log-entry",t=>{this.enqueueLogEntry(t)}),this.approvalDetector.on("approval-pending",async t=>{try{await this.handleApprovalPending(t)}catch(e){a.error("approval-pending handler failed (non-fatal)",{error:String(e)})}}),this.tmuxPaneObserver.on("prompt-candidate",async t=>{try{await this.handleTmuxPromptCandidate(t.snapshot,void 0,t.promptHash)}catch(e){a.error("prompt-candidate handler failed (non-fatal)",{error:String(e)})}}),this.tmuxPaneObserver.on("prompt-cleared",t=>{let e=this.sessionState;e&&this.clearObservedInteractivePrompt(e,t.promptHash).catch(i=>{a.error("prompt-cleared handler failed (non-fatal)",{error:String(i)})})}),this.tmuxPaneObserver.on("observer-error",t=>{a.debug("Tmux pane observer error",{error:t})}),this.sessionWatcher.on("error",t=>{a.error("Session watcher error:",t)})}async ensureSessionStarted(t,e){if(this.isStopping||(this.launchSessionInitPromise&&await this.launchSessionInitPromise,this.isStopping)||this.sessionState)return;process.env[Se]==="1"&&await this.bindRecoveryBootstrapIdentity(t.id);let i=this.sessionBootstrapRetryAt-Date.now();if(i>0){a.warn("Session bootstrap is in retry backoff; hook will be retried later",{codexSessionId:t.id,retryDelayMs:i,failureCount:this.sessionBootstrapFailureCount});return}if(this.sessionStartedInitPromise){try{await this.sessionStartedInitPromise}catch{}return}let s=this.handleSessionStarted(t,e);this.sessionStartedInitPromise=s.catch(()=>{});try{await s}finally{this.sessionStartedInitPromise=null}}async handleSessionStarted(t,e){if(this.isStopping)return;let i=this.lifecycleGeneration;a.info("Handling new Codex session",{codexSessionId:t.id}),this.isInitializingSession=!0,this.bufferedLogEntries=[],this.sessionState&&await this.endActiveSession("new-codex-session-started");let s=process.env.CODEX_WORKING_DIRECTORY||t.cwd||process.cwd(),r=this.getOrCreateBootstrapSessionId(),n=this.appSyncClient.getCurrentUserId(),l={codexSessionId:t.id,cliVersion:t.cli_version,modelProvider:t.model_provider},p={sessionKey:null,sessionIsEncrypted:!0};try{let d={sessionId:r,userId:n,agentType:m.AgentType.CODEX,projectPath:s,metadata:l},u=await this.resumeOrCreateBootstrapSession(d);if(r=u.sessionId,!this.isLifecycleCurrent(i)){this.isInitializingSession=!1,await this.retireCancelledBootstrap(r,"session_started");return}this.sessionKey=u.sessionKey,this.sessionKeyGen=u.sessionKeyGen,this.sessionIsEncrypted=!!u.sessionKey,p={sessionKey:u.sessionKey,sessionIsEncrypted:!!u.sessionKey},await _("daemon_init_step_completed",{step:"session_resume_or_create",path:"session_started"})}catch(d){if(this.isInitializingSession=!1,!this.isLifecycleCurrent(i)){let u=this.authoritativeSessionIdFromError(d)??r;await this.retireCancelledBootstrap(u,"session_started_error");return}throw await _("daemon_init_step_failed",{step:"session_resume_or_create",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),d?.code==="ENCRYPTED_SESSION_NO_KEY"&&(this.sessionIsEncrypted=!0,this.sessionKey=null),this.bindBootstrapIdentityFromError(d),this.recordSessionBootstrapFailure(d,"session_started"),a.error("Failed to create/resume session:",d),d}try{this.sessionState={sessionId:r,userId:n,projectPath:s,cwd:t.cwd,createdAt:new Date,subscriptionActive:!1,metadata:l,encryptionSnapshot:p,codexSessionId:t.id,codexLogFile:this.sessionWatcher.getActiveLogFile()||void 0},this.clearSessionBootstrapFailure(),this.bootstrapSessionId=null,this.recoveryBootstrapOwnerBound=!1,await _("daemon_init_step_completed",{step:"session_state_set",path:"session_started"})}catch(d){await _("daemon_init_step_failed",{step:"session_state_set",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to set session state:",d)}await this.adoptDaemonHandoffState(r),this.sessionState&&this.rebindWaitingPermissionRequests(this.sessionState),await this.ensureToolActivityStarted(t.id);try{this.subscribeToMobileEvents(r)?await _("daemon_init_step_completed",{step:"subscribe_mobile_events",path:"session_started"}):await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"session_started",error_class:"SubscriptionSetupFailed",error_message:"subscribeToMobileEvents returned false"})}catch(d){await _("daemon_init_step_failed",{step:"subscribe_mobile_events",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to subscribe to mobile events:",d)}if(e)try{await e()}catch(d){a.error("E1: pre-heartbeat re-raise hook failed (non-fatal)",{sessionId:r,error:d instanceof Error?d.message:String(d)})}try{await this.drainRetirementOrphans(r)}catch(d){a.error("E1: retirement-orphan drain failed (non-fatal)",{sessionId:r,error:d instanceof Error?d.message:String(d)})}try{await this.appSyncClient.startHeartbeat(r)?await _("daemon_init_step_completed",{step:"heartbeat_start",path:"session_started"}):(await _("daemon_init_step_failed",{step:"heartbeat_start",path:"session_started",error_class:"InitialHeartbeatNotPersisted",error_message:"Backend did not confirm the initial heartbeat mutation"}),a.error("Initial session heartbeat was not persisted",{sessionId:r}))}catch(d){await _("daemon_init_step_failed",{step:"heartbeat_start",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to start heartbeat:",d)}try{await this.subscribeToOnApplyUserDecision(r)}catch(d){a.error("Failed to subscribe to onApplyUserDecision (non-fatal)",{error:d})}this.startMobileEndWatcher(r);try{await this.flushBufferedLogEntries(),await _("daemon_init_step_completed",{step:"flush_buffered_entries",path:"session_started"})}catch(d){await _("daemon_init_step_failed",{step:"flush_buffered_entries",path:"session_started",error_class:d?.name||"Error",error_message:d?.message||String(d)}),a.error("Failed to flush buffered log entries:",d),this.bufferedLogEntries=[]}await this.startTmuxObserverWithBeacon("session_started"),this.isInitializingSession=!1}getOrCreateBootstrapSessionId(){return this.bootstrapSessionId||(this.bootstrapSessionId=X.mintBackendSessionId()),this.bootstrapSessionId}async bindRecoveryBootstrapIdentity(t){if(!(process.env[Se]!=="1"||this.bootstrapSessionId||this.sessionState||!t))try{let e=await this.buildToolActivityIntegration().recordedBackendSessionId(t);if(!e){a.warn("Recovery daemon found no durable backend owner; a new session will be created",{rolloutId:t});return}if(!/^codex-[A-Za-z0-9_-]{1,180}$/.test(e)){a.warn("Recovery daemon ignored invalid durable backend owner",{rolloutId:t});return}this.bootstrapSessionId=e,this.recoveryBootstrapOwnerBound=!0,a.info("Recovery daemon reclaiming existing backend session",{rolloutId:t,sessionId:e})}catch(e){a.warn("Recovery daemon could not read the durable rollout owner; a new session will be created",{rolloutId:t,error:e instanceof Error?e.message:String(e)})}}isSessionIdReservedRejection(t){return(t instanceof Error?t.message:String(t)).includes("SESSION_ID_RESERVED")}async resumeOrCreateBootstrapSession(t){try{return await this.resumeBackendSession(t,this.appSyncClient,a)}catch(e){if(!this.recoveryBootstrapOwnerBound||!this.isSessionIdReservedRejection(e))throw e;return a.warn("Recovery discarded a permanently reserved pending create; retrying the durable rollout owner",{sessionId:t.sessionId}),this.resumeBackendSession(t,this.appSyncClient,a)}}startTmuxLifecycleMonitor(){if(this.tmuxLifecycleTimer)return;let t=process.env[$];t&&(this.tmuxLifecycleInitDeadlineMs=Date.now()+Ai,this.tmuxLifecycleTimer=setInterval(()=>{this.checkTmuxLifecycle(t)},Oi),this.tmuxLifecycleTimer.unref?.(),this.checkTmuxLifecycle(t))}async tmuxSessionState(t){try{return await xi("tmux",["has-session","-t",t]),"alive"}catch(e){let i=xt(e);return i==="absent"?i:(a.warn("Could not inspect native Codex tmux session; preserving daemon",{tmuxSession:t,error:e instanceof Error?e.message:String(e)}),"unknown")}}async checkTmuxLifecycle(t){if(!(this.isStopping||this.tmuxLifecycleCheckInFlight)){this.tmuxLifecycleCheckInFlight=!0;try{let e=await this.tmuxSessionState(t);if(e==="alive"){this.tmuxLifecycleObservedAlive=!0;return}let i=this.tmuxLifecycleObservedAlive||Date.now()>=this.tmuxLifecycleInitDeadlineMs;if(e==="unknown"||!i||this.isStopping)return;this.stopTmuxLifecycleMonitor(),a.info("Native Codex tmux session ended; stopping companion daemon",{tmuxSession:t}),this.stop().then(()=>process.exit(0),s=>{a.error("Failed to stop companion daemon after native session end",{error:s instanceof Error?s.message:String(s)}),process.exit(1)})}finally{this.tmuxLifecycleCheckInFlight=!1}}}stopTmuxLifecycleMonitor(){this.tmuxLifecycleTimer&&(clearInterval(this.tmuxLifecycleTimer),this.tmuxLifecycleTimer=null)}async stopForTerminalSignal(t){if(t==="SIGHUP"){let e=process.env[$];if(e){let i=await this.tmuxSessionState(e);if(i!=="absent")return a.info("Ignoring SIGHUP while native Codex tmux session remains available",{tmuxSession:e,state:i}),!1}}return await this.stop(),!0}isLifecycleCurrent(t){return!this.isStopping&&this.lifecycleGeneration===t}authoritativeSessionIdFromError(t){let e=t?.authoritativeSessionId;return typeof e=="string"&&e.length>0?e:null}async retireCancelledBootstrap(t,e){this.appSyncClient.stopHeartbeat(t),this.appSyncClient.cleanupSubscription(t);try{await this.appSyncClient.updateSession({sessionId:t,status:m.SessionStatus.INACTIVE}),a.info("Cancelled bootstrap row marked INACTIVE",{sessionId:t,path:e})}catch(i){a.warn("Cancelled bootstrap row could not be marked INACTIVE",{sessionId:t,path:e,error:i instanceof Error?i.message:String(i)})}}bindBootstrapIdentityFromError(t){let e=t?.authoritativeSessionId;typeof e!="string"||e.length===0||(this.bootstrapSessionId=e,a.info("Retained authoritative backend identity from failed bootstrap",{sessionId:e}))}recoverRetiredBackendSession(t){if(this.retiredSessionRecoveryPromise)return this.retiredSessionRecoveryPromise;if(this.isStopping)return Promise.resolve();let e=(async()=>{if(this.launchSessionInitPromise&&await this.launchSessionInitPromise,this.sessionStartedInitPromise&&await this.sessionStartedInitPromise,this.isStopping)return;let i=this.sessionState;if(!i||i.sessionId!==t)return;let s={id:i.codexSessionId||t,timestamp:new Date().toISOString(),cwd:i.cwd||i.projectPath,originator:"codevibe-retired-session-recovery",cli_version:String(i.metadata?.cliVersion??"unknown"),instructions:null,source:"codevibe",model_provider:String(i.metadata?.modelProvider??"unknown")};a.warn("Backend retired live Codex session; creating replacement row",{sessionId:t,codexSessionId:s.id}),this.parkRetirementOrphans(t),await this.endActiveSession("backend-generation-retired"),this.bootstrapSessionId=X.mintBackendSessionId(),this.recoveryBootstrapOwnerBound=!1,this.clearSessionBootstrapFailure(),await this.ensureSessionStarted(s)})();return this.retiredSessionRecoveryPromise=e.finally(()=>{this.retiredSessionRecoveryPromise=null}),this.retiredSessionRecoveryPromise}recordSessionBootstrapFailure(t,e){this.sessionBootstrapFailureCount+=1;let i=t instanceof Error?t.message:String(t),r=i.includes("SESSION_LIMIT_EXCEEDED")?6e4:Math.min(5e3*2**(this.sessionBootstrapFailureCount-1),6e4);this.sessionBootstrapRetryAt=Date.now()+r,a.warn("Session bootstrap retry scheduled",{path:e,requestedSessionId:this.bootstrapSessionId,failureCount:this.sessionBootstrapFailureCount,delayMs:r,error:i})}clearSessionBootstrapFailure(){this.sessionBootstrapFailureCount=0,this.sessionBootstrapRetryAt=0}async flushBufferedLogEntries(){if(this.bufferedLogEntries.length===0)return;let t=this.bufferedLogEntries;this.bufferedLogEntries=[],a.info("Flushing buffered log entries after session initialization",{count:t.length,sessionId:this.sessionState?.sessionId});let e=Promise.resolve();for(let i of t)e=this.enqueueLogEntry(i);await e.catch(()=>{})}enqueueLogEntry(t){let e=this.logEntryChain.then(()=>this.handleLogEntry(t));return this.logEntryChain=e.catch(i=>{a.error("[JSONL] log entry handler failed",{type:t.type,err:String(i)})}),e}async handleLogEntry(t){if(!this.sessionState){if(this.isInitializingSession){this.bufferedLogEntries.push(t),a.debug("Buffering log entry until session initialization completes",{type:t.type,bufferedCount:this.bufferedLogEntries.length});return}a.warn("Received log entry but no active session");return}let e=this.sessionState,i=e.sessionId,{sessionKey:s,sessionIsEncrypted:r}=e.encryptionSnapshot;if(t.type==="event_msg"&&t.payload?.type==="turn_aborted"&&(this.approvalDetector.clear(),this.clearInteractivePromptsForAcceptedInput(e)),t.type==="response_item"&&t.payload){let h=t.payload.type;if(h==="function_call"||h==="custom_tool_call")this.approvalDetector.onToolCallStart(t.payload.call_id,t.payload.name,t.payload.arguments||t.payload.input||"");else if(h==="function_call_output"||h==="custom_tool_call_output"){let v=this.approvalDetector.getPendingCalls().find(S=>S.callId===t.payload.call_id),P=v?this.buildApprovalDedupeKey(this.buildApprovalPromptContextFromPendingCall(v)):void 0;this.approvalDetector.onToolCallComplete(t.payload.call_id);let E=this.observePermissionRequestCompletion(P,"jsonl");if(E.shouldResolve&&await this.clearResolvedInteractivePrompt(t.payload.call_id,E.occurrenceKey??P),!this.isExpectedSessionStateCurrent(e))return}}let n=Je(t,i);if(!n)return;n.timestamp=(0,m.prepareEventTimestamp)({orderingKey:i,agentClock:t.timestamp});let l=t.payload?.type,p=!1;if(this.toolActivity?.isActive()&&n.type===m.EventType.TOOL_USE){let h=l==="function_call"||l==="custom_tool_call",v=l==="function_call_output"||l==="custom_tool_call_output";if(h&&typeof t.payload?.call_id=="string"){let P=this.sessionWatcher.getActiveLogFile();P&&this.toolActivity.bindTranscript(P);let E=await this.toolActivity.observeCall({callId:t.payload.call_id,toolName:n.metadata?.toolName??n.metadata?.tool_name,toolInput:n.metadata?.toolInput??n.metadata?.tool_input,ts:t.timestamp});if(!this.isExpectedSessionStateCurrent(e)||E!=="closed")return;p=!0}if(v)return}if(this.toolActivity?.isActive()&&(l==="user_message"||l==="agent_message")&&(await this.toolActivity.flush().catch(h=>a.warn("[tool-activity] codex boundary flush failed",{sessionId:i,err:String(h)})),!this.isExpectedSessionStateCurrent(e)))return;let d=l==="function_call"||l==="function_call_output",u=n.type===m.EventType.USER_PROMPT||n.type===m.EventType.ASSISTANT_RESPONSE||d&&(n.type===m.EventType.TOOL_USE||n.type===m.EventType.INTERACTIVE_PROMPT);if(!this.hooksActive&&u&&(await this.emitHooksCompatibilityModeNotice(e),!this.isExpectedSessionStateCurrent(e)))return;if(this.hooksActive){if(n.type===m.EventType.USER_PROMPT){a.debug("[JSONL] Skipping USER_PROMPT \u2014 hooks deliver it",{type:n.type});return}if(d&&(n.type===m.EventType.TOOL_USE||n.type===m.EventType.INTERACTIVE_PROMPT)&&!p){a.debug("[JSONL] Skipping function_call \u2014 hooks deliver this",{type:n.type,tool:t.payload?.name});return}}if(n.type===m.EventType.USER_PROMPT&&n.source===m.EventSource.DESKTOP){let h=this.consumeRecentMobilePrompt(i,n.content);if(h){a.info("[JSONL] Skipping duplicate USER_PROMPT from mobile",{sessionId:i,matchType:h.matchType,originalLength:h.originalLength,echoLength:h.echoLength});return}}if(this.sessionState!==e){a.warn("[JSONL] Dropping event from stale session generation (#638)",{sessionId:i,currentSessionId:this.sessionState?.sessionId});return}let c=t.payload?.call_id,f=n.type===m.EventType.TOOL_USE&&typeof c=="string"&&c.length>0&&!!s,y=f?this.getToolActivityLegacyRecorder(i):void 0;y&&f&&y.markLegacyInFlight(c);try{let h=(0,m.encryptForEmit)(s,r,n.content,n.metadata);if(!h){a.error("No session key for ENCRYPTED session \u2014 dropping JSONL event (fail-closed, #638)",{type:n.type,sessionId:i});return}n.content=h.content,n.metadata=h.metadata,h.isEncrypted&&(n.isEncrypted=!0,a.debug("Event encrypted",{type:n.type}));let v=await this.appSyncClient.createEvent(n);a.debug("Event synced to backend",{type:n.type,encrypted:h.isEncrypted}),y&&f&&((0,m.isPersistedEventResult)(v)?await y.finalizeLegacyOwned([c]):y.clearLegacyInFlight(c))}catch(h){y&&f&&y.clearLegacyInFlight(c),a.error("Failed to sync event:",h)}}async handlePermissionRequestHook(t,e,i){if(!this.isExpectedSessionStateCurrent(e)){i&&(i.disposition="dropped");return}let s=i?.context??this.buildApprovalPromptContextFromHookPayload(t),r=i?.dedupeKey??this.buildApprovalDedupeKey(s);if(this.consumeRecoveryPermissionReplay(e,r,i))return;let n=i?.occurrenceKey??`permission:${(0,J.v4)()}`,l={ownerState:e,context:s,dedupeKey:r,occurrenceKey:n,registration:i};this.permissionRequestHookInFlight=l;try{let p=await this.handlePermissionRequestHookWhileTracked(t,e,s,n,r);i&&(i.disposition=p)}finally{this.permissionRequestHookInFlight===l&&(this.permissionRequestHookInFlight=null)}}buildApprovalPromptContextFromHookPayload(t){let e=t.metadata||{},i=typeof e.tool_name=="string"?e.tool_name:"Tool",s=e.tool_input,r=this.firstString(s?.command,s?.cmd),n=V(r)||ie(r),l=i==="apply_patch"?this.firstString(s?.patch,r,typeof s=="string"?s:void 0):void 0,d=V(l)||n,u=!!d,c=d?"apply_patch":i,f=d||this.stringifyToolInput(s),y=d?this.extractFilePathFromToolInput("apply_patch",void 0,d):this.extractFilePathFromToolInput(c,s,f),h=d?this.resolveHookPatchPath(y,e.cwd):y;return{toolName:c,framedPatch:u,toolInput:s,rawInput:f,filePath:h,diff:u?f:void 0,hint:h&&this.mapToolNameForApproval(c)==="Edit"?`File: ${h}`:this.buildPermissionRequestHint(c,s,f)}}resolveHookPatchPath(t,e){if(!t||k.isAbsolute(t))return t;if(!(typeof e!="string"||!k.isAbsolute(e)))return k.resolve(e,t)}async handlePermissionRequestHookWhileTracked(t,e,i=this.buildApprovalPromptContextFromHookPayload(t),s=`permission:${(0,J.v4)()}`,r,n){let l=t.metadata||{},{toolName:p,toolInput:d,rawInput:u}=i,c=this.buildToolDetailsForInteractivePrompt(i),f=c.tool_name||this.mapToolNameForApproval(p),y=c.tool_input||this.buildFallbackToolInput(i),h=!!(f&&y);if(r??=this.buildApprovalDedupeKey({toolName:p,toolInput:d,filePath:i.filePath,rawInput:u,hint:i.hint}),this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s))return"resolved";let v=n??await this.tryParsePermissionRequestPromptFromTmux((C,Z)=>this.parsedPromptMatchesApprovalContext(C,i,Z),()=>this.isExpectedSessionStateCurrent(e));if(!this.isExpectedSessionStateCurrent(e))return a.warn("[Hooks] Dropping stale PermissionRequest after session generation changed",{sessionId:e.sessionId,currentSessionId:this.sessionState?.sessionId}),"dropped";if(this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s))return a.info("[Hooks] Dropping PermissionRequest completed while terminal options were being parsed",{sessionId:e.sessionId,toolName:p,occurrenceKey:s}),"resolved";let P=v?.parsedPrompt??null;if(!P)return v?.differentPrompt?(this.waitingPermissionRequests.set(s,{ownerState:e,context:i,occurrenceKey:s,dedupeKey:r,payload:t}),a.info("[Hooks] Queued PermissionRequest until its desktop dialog is visible",{sessionId:e.sessionId,occurrenceKey:s,toolName:p}),"waiting"):(a.warn("[Hooks] Suppressing PermissionRequest mobile prompt because exact Codex options are unavailable",{sessionId:e.sessionId,toolName:p,hint:i.hint}),this.raiseSuppressedBadge(e.sessionId,s,{suppressTmuxObserverUntilResolved:!0,observerSnapshot:v?.snapshot,completionKey:r}),"covered");let E=this.mapToolNameForApproval(p)==="Bash"?this.firstString(d?.command,d?.cmd):void 0,S=this.buildCodexPromptPresentation(P,E,v?.snapshot);if(!S)return a.warn("[Hooks] Suppressing PermissionRequest mobile prompt because Codex option hotkeys are unavailable",{sessionId:e.sessionId,toolName:p,hint:i.hint}),this.raiseSuppressedBadge(e.sessionId,s,{suppressTmuxObserverUntilResolved:!0,observerSnapshot:v?.snapshot,completionKey:r}),"covered";let b=s,O=this.buildApprovalPromptContent(S.content,{toolName:f,toolInput:y,hint:i.hint,filePath:i.filePath}),L={promptId:b,kind:S.kind,options:S.options,submitMap:S.submitMap,promptText:O,createdAt:Date.now(),source:"permission_hook",dedupeKey:s,completionKey:r,ownerSessionId:e.sessionId,observerMatchKey:this.buildObserverPromptMatchKey(P),observerPromptHash:v?.snapshot?this.tmuxPaneObserver.hashPromptSnapshot(v.snapshot):void 0,requiresFollowUpText:S.requiresFollowUpText},F={isApprovalHint:!0,toolName:p,toolInput:d,hint:i.hint,filePath:i.filePath,diff:i.diff,rawInput:u,tool_name:f,tool_input:y,has_details:h,options:S.options,instructions:S.instructions,prompt_source:P?"permission_hook_tmux":"permission_hook",permission_mode:l.permission_mode,turn_id:l.turn_id,dedupe_key:s};return a.info("[Hooks] Sending PermissionRequest interactive prompt",{sessionId:e.sessionId,toolName:p,promptId:b,promptSource:F.prompt_source,occurrenceKey:s}),await this.enqueueOrEmitInteractivePrompt({prompt:L,content:O,metadata:F,ownerState:e}),this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s)?"resolved":"covered"}async emitHooksCompatibilityModeNotice(t){if(this.hooksCompatibilityNoticeSent||!this.isExpectedSessionStateCurrent(t))return;this.hooksCompatibilityNoticeSent=!0;let e="Codex hooks are not active. CodeVibe is using compatibility mode: mobile approvals still mirror the desktop prompt, but timeline events may be delayed or incomplete. Open Codex /hooks and trust/enable CodeVibe hooks for full fidelity.",i={compatibility_mode:!0,reason:"codex_hooks_inactive",action:"trust_enable_codevibe_hooks"};a.warn("Codex hooks inactive; running in compatibility mode",{sessionId:t.sessionId});let s=this.encryptForEmit(e,i,m.EventType.NOTIFICATION,t.sessionId);if(s)try{await this.appSyncClient.createEvent({sessionId:t.sessionId,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,content:s.content,metadata:s.metadata,timestamp:(0,m.prepareEventTimestamp)({orderingKey:t.sessionId}),...s.isEncrypted?{isEncrypted:!0}:{}})}catch(r){a.warn("Failed to emit hooks compatibility mode notification",{error:r})}}async handleApprovalPending(t){let e=this.sessionState;if(!e)return;if((this.queuedPermissionRequestSessionCounts.get(e.sessionId)??0)>0){a.debug("Skipping heuristic approval prompt while PermissionRequest owns the session prompt",{sessionId:e.sessionId,callId:t.callId});return}let i=this.buildApprovalDedupeKey(t);if(i&&this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,i)){a.info("Skipping heuristic approval prompt; same approval was already answered recently",{callId:t.callId,toolName:t.toolName,dedupeKey:i});return}if(i&&this.hasDurablePermissionHookFallbackByDedupeKey(e.sessionId,i)){a.debug("Skipping heuristic approval prompt already owned by a hook fallback",{sessionId:e.sessionId,callId:t.callId,dedupeKey:i});return}if(i&&this.hasActiveOrQueuedPermissionHookPrompt(e.sessionId,i)){this.mergeCallIdIntoPromptByDedupeKey(e.sessionId,i,t.callId),a.info("Skipping heuristic approval prompt; PermissionRequest hook already emitted it",{callId:t.callId,toolName:t.toolName,dedupeKey:i});return}a.info("Sending approval pending interactive prompt",t);try{let s=await this.tryParseInteractivePromptFromTmux(),r=s?.parsedPrompt??null;if((this.queuedPermissionRequestSessionCounts.get(e.sessionId)??0)>0||r&&this.hasMatchingDurablePermissionHookFallback(r,e.sessionId,s?.snapshot)||r&&this.hasMatchingPermissionHookPrompt(r,e.sessionId)){a.debug("Skipping heuristic approval prompt after PermissionRequest claimed the terminal dialog",{sessionId:e.sessionId,callId:t.callId});return}let n=this.buildToolDetailsForInteractivePrompt(t,s?.snapshot),l=n.tool_name||this.mapToolNameForApproval(t.toolName),p=n.tool_input||this.buildFallbackToolInput(t),d=!!(l&&p);if(!r){a.warn("Suppressing heuristic approval prompt because exact Codex options are unavailable",{callId:t.callId,toolName:t.toolName,hint:t.hint}),this.raiseSuppressedBadge(e.sessionId,i);return}if(!this.parsedPromptMatchesApprovalContext(r,t,s?.snapshot)){a.warn("Suppressing heuristic approval prompt because parsed tmux prompt does not match the active tool",{callId:t.callId,toolName:t.toolName,hint:t.hint,parsedPromptText:r.promptText}),this.raiseSuppressedBadge(e.sessionId,i);return}let u=this.mapToolNameForApproval(t.toolName)==="Bash"?this.firstString(t.toolInput?.command,t.toolInput?.cmd):void 0,c=this.buildCodexPromptPresentation(r,u,s?.snapshot);if(!c){a.warn("Suppressing heuristic approval prompt because Codex option hotkeys are unavailable",{callId:t.callId,toolName:t.toolName,hint:t.hint}),this.raiseSuppressedBadge(e.sessionId,i);return}let f=c.options,y=this.buildApprovalPromptContent(c.content,{toolName:l,toolInput:p,hint:t.hint,filePath:t.filePath}),h={promptId:t.callId,callId:t.callId,kind:c.kind,options:f,submitMap:c.submitMap,promptText:c.promptText,createdAt:Date.now(),source:r?"tmux":"heuristic",dedupeKey:i,ownerSessionId:e.sessionId,observerMatchKey:this.buildObserverPromptMatchKey(r),requiresFollowUpText:c.requiresFollowUpText},v={isApprovalHint:!0,toolName:t.toolName,toolInput:t.toolInput,hint:t.hint,callId:t.callId,filePath:t.filePath,diff:t.diff,rawInput:t.rawInput,tool_name:l,tool_input:p,has_details:d,options:f,instructions:c.instructions,prompt_source:r?"tmux":"heuristic",dedupe_key:i};a.debug("Interactive prompt (pre-encryption)",{sessionId:e.sessionId,callId:t.callId,contentPreview:y.substring(0,200),toolDetails:n,metadata:v}),await this.enqueueOrEmitInteractivePrompt({prompt:h,content:y,metadata:v,ownerState:e})}catch(s){a.error("Failed to send approval interactive prompt:",s)}}async handleTerminalMenu(t,e,i){if(!this.isExpectedSessionStateCurrent(e)||this.pendingInteractivePrompt?.terminalMenuIdentity===t.identity&&this.pendingInteractivePrompt.ownerSessionId===e.sessionId)return;let s=(0,J.v4)(),r={promptId:s,kind:"numbered",options:t.prompt.options,submitMap:t.prompt.submitMap,promptText:t.prompt.promptText,createdAt:Date.now(),source:"tmux",dedupeKey:`menu:${s}`,ownerSessionId:e.sessionId,observerMatchKey:this.buildObserverPromptMatchKey(t.prompt),observerPromptHash:i??this.tmuxPaneObserver.hashPromptSnapshot(t.snapshot),terminalMenuIdentity:t.identity};await this.enqueueOrEmitInteractivePrompt({prompt:r,ownerState:e,content:t.prompt.promptText,metadata:{options:t.prompt.options,instructions:"Reply with the number of the option you want",prompt_source:"tmux_live",dialog_kind:"terminal_menu",has_details:!1}}),a.info("Published live terminal menu",{sessionId:e.sessionId,promptId:r.promptId,optionsCount:r.options.length})}async handleTmuxPromptCandidate(t,e,i){let s=this.sessionState;if(!s){this.tmuxPaneObserver.resetLastPromptHash();return}let r=this.tmuxPaneObserver.extractActiveApprovalBlock(t)?null:(0,ne.parseActiveTerminalMenu)(t);if(r){await this.handleTerminalMenu(r,s,i);return}if(await this.promoteWaitingPermissionRequest(t,s)||!e&&this.deferTmuxPromptCandidateForPermissionHook(s.sessionId,t,i))return;let n=e?.occurrenceKey;if(n&&this.hasRecentlyResolvedApprovalDedupeKey(s.sessionId,n))return;let l=(0,B.parseInteractivePrompt)(t);if(!l){this.raiseSuppressedBadge(s.sessionId,n??null);return}if(this.hasMatchingPermissionHookPrompt(l,s.sessionId)){a.debug("Skipping tmux prompt candidate already owned by PermissionRequest",{sessionId:s.sessionId,promptText:l.promptText});return}let p=this.getMostRecentPendingToolCall();if(!p){if(await new Promise(C=>setTimeout(C,500)),!this.isExpectedSessionStateCurrent(s)){a.warn("Dropping tmux prompt candidate after session generation changed",{sessionId:s.sessionId,currentSessionId:this.sessionState?.sessionId});return}if(!e&&this.deferTmuxPromptCandidateForPermissionHook(s.sessionId,t,i))return;p=this.getMostRecentPendingToolCall()}let d=e?.context??(p?this.buildApprovalPromptContextFromPendingCall(p):null);if(d&&!this.parsedPromptMatchesApprovalContext(l,d,t)){a.warn("Skipping tmux-detected prompt because parsed prompt does not match pending tool call",{callId:p?.callId,toolName:p?.name,parsedPromptText:l.promptText}),this.raiseSuppressedBadge(s.sessionId,n??null);return}let u=d?null:this.buildApprovalPromptContextFromParsedPrompt(l),c=d||u;if(!c){a.warn("Skipping tmux-detected prompt because no tool context could be derived from the parsed prompt",{parsedPromptText:l.promptText}),this.raiseSuppressedBadge(s.sessionId,n??null);return}let f=this.mapToolNameForApproval(c.toolName)==="Bash"?this.firstString(c.toolInput?.command,c.toolInput?.cmd):void 0,y=this.buildCodexPromptPresentation(l,f,t);if(!y){a.warn("Skipping tmux-detected prompt because Codex option hotkeys are unavailable",{parsedPromptText:l.promptText}),this.raiseSuppressedBadge(s.sessionId,n??null);return}let h=c?this.buildApprovalDedupeKey(c):void 0;if(h&&this.hasRecentlyResolvedApprovalDedupeKey(s.sessionId,h)){a.info("Skipping tmux-detected prompt; same approval was already answered recently",{promptText:l.promptText,dedupeKey:h});return}if(h&&this.hasActiveOrQueuedPermissionHookPrompt(s.sessionId,h)){p?.callId&&this.mergeCallIdIntoPromptByDedupeKey(s.sessionId,h,p.callId),a.info("Skipping tmux-detected prompt; PermissionRequest hook already emitted it",{promptText:l.promptText,dedupeKey:h});return}let v=c?this.buildToolDetailsForInteractivePrompt(c,t):{},P=v.tool_name||this.mapToolNameForApproval(p?.name),E=v.tool_input||(c?this.buildFallbackToolInput(c):void 0),S=!!(P&&E),O={promptId:p?.callId||(0,J.v4)(),callId:p?.callId,kind:y.kind,options:y.options,submitMap:y.submitMap,promptText:y.promptText,createdAt:Date.now(),source:"tmux",dedupeKey:h,ownerSessionId:s.sessionId,observerMatchKey:this.buildObserverPromptMatchKey(l),observerPromptHash:i,requiresFollowUpText:y.requiresFollowUpText},L={options:y.options,instructions:y.instructions,prompt_source:"tmux_live",toolName:c?.toolName,toolInput:c?.toolInput,hint:c?.hint,filePath:c?.filePath,diff:c?.diff,rawInput:c?.rawInput,tool_name:P,tool_input:E,has_details:S,dedupe_key:h},F=this.buildApprovalPromptContent(y.content,{toolName:P,toolInput:E,hint:c?.hint,filePath:c?.filePath});try{await this.enqueueOrEmitInteractivePrompt({prompt:O,content:F,metadata:L,ownerState:s})&&a.info("Sent tmux-detected interactive prompt",{sessionId:s.sessionId,promptText:l.promptText,kind:l.kind})}catch(C){a.error("Failed to send tmux-detected interactive prompt",{error:C})}}async enqueueOrEmitInteractivePrompt(t){if(!this.isExpectedSessionStateCurrent(t.ownerState))return a.warn("Dropping interactive prompt from stale session generation",{sessionId:t.ownerState.sessionId,currentSessionId:this.sessionState?.sessionId,source:t.prompt.source}),!1;if(t.prompt.ownerSessionId??=t.ownerState.sessionId,t.prompt.dedupeKey&&this.hasRecentlyResolvedApprovalDedupeKey(t.ownerState.sessionId,t.prompt.dedupeKey))return a.debug("Skipping interactive prompt emission; same approval was already answered recently",{source:t.prompt.source,callId:t.prompt.callId,dedupeKey:t.prompt.dedupeKey}),!1;let e=this.pendingInteractivePrompt;if(e&&e.ownerSessionId!==t.ownerState.sessionId&&(a.warn("Discarding active prompt from a stale session generation",{activeSessionId:e.ownerSessionId,candidateSessionId:t.ownerState.sessionId}),this.pendingInteractivePrompt=null,e=null),!e){this.pendingInteractivePrompt=t.prompt;try{return await this.emitInteractivePromptEvent(t),!0}catch(i){throw this.pendingInteractivePrompt?.promptId===t.prompt.promptId&&(this.pendingInteractivePrompt=null),i}}if(this.isSameInteractivePrompt(e,t.prompt)){if(t.prompt.source==="permission_hook"&&e.source!=="permission_hook"){e.source="permission_hook",e.completionKey=t.prompt.completionKey??e.dedupeKey,e.dedupeKey=t.prompt.dedupeKey;let i=this.e1PromptRaises.get(e.promptId);i&&(i.resolutionDedupeKey=e.dedupeKey,i.resolutionCompletionKey=e.completionKey)}return!e.callId&&t.prompt.callId&&(e.callId=t.prompt.callId,a.debug("Merged callId into existing interactive prompt",{source:e.source,callId:t.prompt.callId,promptText:e.promptText})),a.debug("Skipping duplicate interactive prompt emission",{existingSource:e.source,candidateSource:t.prompt.source,existingCallId:e.callId,candidateCallId:t.prompt.callId,promptText:t.prompt.promptText}),!1}return this.queuedInteractivePrompts.some(i=>this.isSameInteractivePrompt(i.prompt,t.prompt))?(a.debug("Skipping duplicate queued interactive prompt",{candidateSource:t.prompt.source,candidateCallId:t.prompt.callId,promptText:t.prompt.promptText}),!1):(this.queuedInteractivePrompts.push(t),a.info("Queued interactive prompt behind active prompt",{activeCallId:e.callId,queuedCallId:t.prompt.callId,queueLength:this.queuedInteractivePrompts.length}),!1)}async emitInteractivePromptEvent(t){if(!this.isExpectedSessionStateCurrent(t.ownerState))return;let e=t.ownerState.sessionId,i=this.e1PromptRaises.get(t.prompt.promptId),s=i?i.record:this.newE1Raise(e,!0,void 0,{...t.prompt.dedupeKey!==void 0?{dedupeKey:t.prompt.dedupeKey}:{},...t.prompt.completionKey!==void 0?{completionKey:t.prompt.completionKey}:{},...t.prompt.callId!==void 0?{callId:t.prompt.callId}:{}});t.prompt.promptId=s.promptId;let r=this.e1PromptRaises.get(s.promptId);r&&(r.resolutionDedupeKey??=t.prompt.dedupeKey,r.resolutionCompletionKey??=t.prompt.completionKey,r.resolutionCallId??=t.prompt.callId),t.prompt.dedupeKey&&this.e1ContentKeyIndex.set(`${e}::${t.prompt.dedupeKey}`,s.promptId),this.stashE1RaiseContent(s.promptId,t.content,t.metadata??{});let n=this.encryptForEmit(t.content,t.metadata,m.EventType.INTERACTIVE_PROMPT,e);n&&await this.trackE1Raise(s.promptId,this.appSyncClient.createEvent({sessionId:e,type:m.EventType.INTERACTIVE_PROMPT,source:m.EventSource.DESKTOP,content:n.content,metadata:n.metadata,...(0,m.raiseFieldsFromRecord)(s),timestamp:(0,m.prepareEventTimestamp)({orderingKey:e}),...n.isEncrypted?{isEncrypted:!0}:{}}))}rebindWaitingPermissionRequests(t){for(let e of this.waitingPermissionRequests.values())e.ownerState.codexSessionId&&e.ownerState.codexSessionId===t.codexSessionId&&(e.ownerState=t)}async promoteWaitingPermissionRequest(t,e){if(!this.isExpectedSessionStateCurrent(e))return!1;let i=(0,B.parseInteractivePrompt)(t);if(!i||this.hasMatchingPermissionHookPrompt(i,e.sessionId))return!1;for(let[s,r]of this.waitingPermissionRequests)if(this.isExpectedSessionStateCurrent(r.ownerState)&&this.parsedPromptMatchesApprovalContext(i,r.context,t)){this.waitingPermissionRequests.delete(s);try{await this.handlePermissionRequestHookWhileTracked(r.payload,e,r.context,s,r.dedupeKey,{parsedPrompt:i,snapshot:t})}catch(n){throw this.isExpectedSessionStateCurrent(e)&&!this.hasRecentlyResolvedApprovalDedupeKey(e.sessionId,s)&&this.waitingPermissionRequests.set(s,r),this.tmuxPaneObserver.resetLastPromptHash(),n}return!0}return!1}async emitNextQueuedInteractivePrompt(){if(this.pendingInteractivePrompt)return;if(this.queuedInteractivePrompts.length===0){let e=this.sessionState;if(e&&this.waitingPermissionRequests.size>0){let i=await this.tmuxPaneObserver.captureSnapshot();!(i&&await this.promoteWaitingPermissionRequest(i,e))&&this.isExpectedSessionStateCurrent(e)&&!this.pendingInteractivePrompt&&this.waitingPermissionRequests.size>0&&this.tmuxPaneObserver.resetLastPromptHash()}return}let t=this.queuedInteractivePrompts.shift();if(t){if(!this.isExpectedSessionStateCurrent(t.ownerState)){a.warn("Discarding queued prompt from stale session generation",{sessionId:t.ownerState.sessionId,currentSessionId:this.sessionState?.sessionId}),await this.emitNextQueuedInteractivePrompt();return}this.pendingInteractivePrompt=t.prompt;try{await this.emitInteractivePromptEvent(t),a.info("Emitted next queued interactive prompt",{callId:t.prompt.callId,queueLength:this.queuedInteractivePrompts.length})}catch(e){this.pendingInteractivePrompt=null,a.error("Failed to emit queued interactive prompt",{error:e}),await this.emitNextQueuedInteractivePrompt()}}}async clearObservedInteractivePrompt(t,e){if(!this.isExpectedSessionStateCurrent(t))return;let i=this.pendingInteractivePrompt;if(!i||i.ownerSessionId!==t.sessionId||i.observerPromptHash!==e){a.debug("Ignoring prompt-cleared for a non-current chooser occurrence",{sessionId:t.sessionId,clearedPromptHash:e,activePromptId:i?.promptId,activePromptHash:i?.observerPromptHash});return}this.pendingInteractivePrompt=null,i.callId&&this.approvalDetector.onToolCallComplete(i.callId),this.rememberResolvedApprovalDedupeKey(t.sessionId,i.dedupeKey);for(let r of this.queuedPermissionRequestRegistrations.get(t.sessionId)??[])r.occurrenceKey===i.dedupeKey&&(r.disposition="resolved",this.deferredTmuxPromptCandidates.delete(r),this.removePermissionRequestOccurrence(r.dedupeKey,r.occurrenceKey));let s=this.beginE1PromptResolutions(new Set([i.promptId]),t.sessionId);this.launchE1Resolutions(s),await this.emitNextQueuedInteractivePrompt()}async clearResolvedInteractivePrompt(t,e){if(!e){a.debug("Interactive prompt completion had no comparable dialog identity",{callId:t});return}let i=this.isPermissionRequestOccurrenceKey(e),s=this.pendingInteractivePrompt,r=!!s&&(s.dedupeKey===e||s.completionKey===e||!i&&!!t&&s.callId===t),n=this.sessionState?.sessionId??s?.ownerSessionId,l=this.queuedInteractivePrompts.find(S=>!i&&!!t&&S.prompt.callId===t||S.prompt.dedupeKey===e||S.prompt.completionKey===e),p=this.permissionRequestHookInFlight,d=p?.ownerState.sessionId===n&&(p?.dedupeKey===e||p?.occurrenceKey===e),c=(n?this.queuedPermissionRequestRegistrations.get(n)??[]:[]).find(S=>S.dedupeKey===e||S.occurrenceKey===e),f=[...this.waitingPermissionRequests.values()].find(S=>S.ownerState.sessionId===n&&(S.occurrenceKey===e||S.dedupeKey===e)),y=r?s?.dedupeKey:l?.prompt.dedupeKey??(d?p?.occurrenceKey:void 0)??c?.occurrenceKey??f?.occurrenceKey??e,h=new Set;if(r&&s&&h.add(s.promptId),l&&h.add(l.prompt.promptId),n&&y){let S=this.e1ContentKeyIndex.get(`${n}::${y}`);S&&h.add(S)}let v=[...this.e1PromptRaises.entries()].find(([,S])=>S.record.sessionId===n&&(S.resolutionDedupeKey===y||!i&&!!t&&S.resolutionCallId===t||S.resolutionCompletionKey===e));if(v&&h.add(v[0]),(r||d||c||f||h.size>0)&&this.rememberResolvedApprovalDedupeKey(n,y),r&&s&&(this.pendingInteractivePrompt=null),c&&(c.disposition="resolved"),y)for(let S of this.removeQueuedInteractivePromptByDedupeKey(y))h.add(S);let E=n?this.beginE1PromptResolutions(h,n):[];this.launchE1Resolutions(E),(r||!this.pendingInteractivePrompt&&l)&&await this.emitNextQueuedInteractivePrompt()}clearInteractivePromptsForAcceptedInput(t){let e=t.sessionId,i=new Set,s=this.pendingInteractivePrompt;s?.ownerSessionId===e&&(i.add(s.promptId),this.rememberResolvedApprovalDedupeKey(e,s.dedupeKey),this.pendingInteractivePrompt=null);let r=[];for(let l of this.queuedInteractivePrompts)l.prompt.ownerSessionId===e?(i.add(l.prompt.promptId),this.rememberResolvedApprovalDedupeKey(e,l.prompt.dedupeKey)):r.push(l);this.queuedInteractivePrompts=r;for(let[l,p]of this.e1PromptRaises.entries())p.record.sessionId===e&&i.add(l);for(let l of this.queuedPermissionRequestRegistrations.get(e)??[])l.disposition="resolved",this.rememberResolvedApprovalDedupeKey(e,l.occurrenceKey),this.deferredTmuxPromptCandidates.delete(l);for(let[l,p]of this.waitingPermissionRequests)p.ownerState.sessionId===e&&(this.rememberResolvedApprovalDedupeKey(e,l),this.waitingPermissionRequests.delete(l));this.permissionRequestOccurrencesByCompletionKey.clear();let n=this.beginE1PromptResolutions(i,e);this.launchE1Resolutions(n)}removeQueuedInteractivePromptByDedupeKey(t){let e=this.queuedInteractivePrompts.length,i=this.queuedInteractivePrompts.filter(s=>s.prompt.dedupeKey===t);for(let s of i)this.rememberResolvedApprovalDedupeKey(s.ownerState.sessionId,s.prompt.dedupeKey);return this.queuedInteractivePrompts=this.queuedInteractivePrompts.filter(s=>s.prompt.dedupeKey!==t),this.queuedInteractivePrompts.length!==e&&a.debug("Removed resolved deduped tool call from interactive prompt queue",{dedupeKey:t,removed:e-this.queuedInteractivePrompts.length}),i.map(s=>s.prompt.promptId)}mergeCallIdIntoPromptByDedupeKey(t,e,i){let s=this.pendingInteractivePrompt;if(s?.ownerSessionId===t&&(s.completionKey??s.dedupeKey)===e&&!s.callId){s.callId=i;let n=this.e1PromptRaises.get(s.promptId);n&&(n.resolutionCallId??=i),a.debug("Merged callId into active deduped interactive prompt",{source:s.source,callId:i,dedupeKey:e});return}let r=this.queuedInteractivePrompts.find(n=>n.prompt.ownerSessionId===t&&(n.prompt.completionKey??n.prompt.dedupeKey)===e&&!n.prompt.callId);r&&(r.prompt.callId=i,a.debug("Merged callId into queued deduped interactive prompt",{source:r.prompt.source,callId:i,dedupeKey:e}))}isSameInteractivePrompt(t,e){if(t.ownerSessionId!==e.ownerSessionId||Date.now()-t.createdAt>Fi)return!1;if(t.callId&&e.callId)return t.callId===e.callId;let s=t.completionKey??t.dedupeKey,r=e.completionKey??e.dedupeKey;return t.source!==e.source&&s&&s===r&&t.observerMatchKey&&t.observerMatchKey===e.observerMatchKey?!0:t.dedupeKey&&e.dedupeKey?t.dedupeKey===e.dedupeKey:t.kind===e.kind&&this.normalizePromptDedupeText(t.promptText)===this.normalizePromptDedupeText(e.promptText)}normalizePromptDedupeText(t){return t.replace(/\s+/g," ").trim().toLowerCase()}async startTmuxObserver(){let t=process.env.CODEVIBE_CODEX_TMUX_SESSION;if(!t)return a.debug("Skipping tmux pane observer start - no tmux session in environment"),!0;try{return await this.tmuxPaneObserver.start(t),!0}catch(e){return a.warn("Failed to start tmux pane observer",{tmuxSession:t,error:e}),!1}}async startTmuxObserverWithBeacon(t){try{await this.startTmuxObserver()?await _("daemon_init_step_completed",{step:"tmux_observer_start",path:t}):await _("daemon_init_step_failed",{step:"tmux_observer_start",path:t,error_class:"TmuxObserverStartFailed",error_message:"tmuxPaneObserver.start threw (see plugin log)"})}catch(e){await _("daemon_init_step_failed",{step:"tmux_observer_start",path:t,error_class:e?.name||"Error",error_message:e?.message||String(e)}),a.error("Failed to start tmux observer:",e)}}async tryParseInteractivePromptFromTmux(){try{let t=await this.tmuxPaneObserver.captureSnapshot(),e=this.tmuxPaneObserver.extractActiveApprovalBlock(t),i=e?(0,B.parseInteractivePrompt)(e):null;return a.debug("tmux prompt parse result",{parsed:!!i,kind:i?.kind,promptText:i?.promptText,isolated:!!e,snapshotPreview:this.summarizePromptSnapshot(e??t)}),{parsedPrompt:i,snapshot:e??t}}catch(t){return a.debug("tmux prompt parsing unavailable",{error:t}),null}}async tryParsePermissionRequestPromptFromTmux(t,e){let r=null;for(let n=0;n<25;n+=1){if(e&&!e()||n>0&&(await new Promise(p=>setTimeout(p,125)),e&&!e()))return null;let l=await this.tryParseInteractivePromptFromTmux();if(l&&(r=l),l?.parsedPrompt&&(!t||t(l.parsedPrompt,l.snapshot)))return l}return r?.snapshot?{parsedPrompt:null,snapshot:r.snapshot,...r.parsedPrompt?{differentPrompt:!0}:{}}:null}buildPromptPresentation(t){return t?{content:t.promptText,promptText:t.promptText,kind:t.kind,options:t.options,submitMap:t.submitMap,instructions:this.buildPromptInstructions(t),requiresFollowUpText:t.requiresFollowUpText}:{content:"Codex is waiting for approval.",promptText:"Codex is waiting for approval.",kind:"yes_no",options:[{number:"1",text:'Yes (sends "y")'},{number:"2",text:'No, tell Codex what to change (sends "n <instructions>")'}],submitMap:{1:"y",2:"n"},instructions:"Reply with 1 to approve, or 2 followed by what to change",requiresFollowUpText:!0}}buildCodexPromptPresentation(t,e,i){let s=this.buildPromptPresentation(t),r=At(s.options,e,i);if(!r)return null;let n=this.buildSubmitMapFromCodexOptionHotkeys(r);return n?{...s,options:r,submitMap:n,instructions:this.buildCodexPermissionInstructions(r),requiresFollowUpText:this.optionsRequireFollowUpText(r)}:null}buildSubmitMapFromCodexOptionHotkeys(t){let e={};for(let i of t){let s=i.text.match(/\(([^)]+)\)\s*$/)?.[1]?.trim().toLowerCase();if(!s||!Di.test(s))return null;s==="esc"||s==="escape"?e[i.number]=Y:e[i.number]=s}return e}buildCodexPermissionInstructions(t){let e=t.find(n=>/\((?:y|yes)\)\s*$/i.test(n.text)),i=t.find(n=>/\(p\)\s*$/i.test(n.text)),s=t.find(n=>/\((?:esc|escape)\)\s*$/i.test(n.text)),r=[];return e&&r.push(`${e.number} to approve`),i&&r.push(`${i.number} to persist the desktop allow rule`),s&&r.push(`${s.number} followed by what to change`),r.length>0?`Reply with ${r.join(", ")}`:"Reply with the number of the option you want"}optionsRequireFollowUpText(t){return t.some(e=>/what to (?:do differently|change)|instructions/i.test(e.text))}getMostRecentPendingToolCall(){let t=this.approvalDetector.getPendingCalls();return t.length===0?null:t.reduce((e,i)=>i.timestamp>e.timestamp?i:e)}hasActiveOrQueuedPermissionHookPrompt(t,e){let i=this.pendingInteractivePrompt;return i?.ownerSessionId===t&&i.source==="permission_hook"&&(i.completionKey??i.dedupeKey)===e?!0:this.queuedInteractivePrompts.some(s=>s.prompt.ownerSessionId===t&&s.prompt.source==="permission_hook"&&(s.prompt.completionKey??s.prompt.dedupeKey)===e)||[...this.waitingPermissionRequests.values()].some(s=>s.ownerState.sessionId===t&&s.dedupeKey===e)}hasDurablePermissionHookFallback(t){return[...this.e1PromptRaises.values()].some(e=>e.record.sessionId===t&&e.suppressTmuxObserverUntilResolved===!0)}hasDurablePermissionHookFallbackByDedupeKey(t,e){return[...this.e1PromptRaises.values()].some(i=>i.record.sessionId===t&&i.suppressTmuxObserverUntilResolved===!0&&(i.resolutionDedupeKey===e||i.resolutionCompletionKey===e))}hasMatchingDurablePermissionHookFallback(t,e,i){let s=this.buildApprovalPromptContextFromParsedPrompt(t),r=s?this.buildApprovalDedupeKey(s):void 0;if(r&&this.hasDurablePermissionHookFallbackByDedupeKey(e,r))return!0;if(!i)return!1;let n=this.buildObserverSnapshotMatchKey(i);return[...this.e1PromptRaises.values()].some(l=>l.record.sessionId===e&&l.suppressTmuxObserverUntilResolved===!0&&l.suppressedObserverSnapshotKey===n)}deferTmuxPromptCandidateForPermissionHook(t,e,i){let s=this.queuedPermissionRequestSessionCounts.get(t)??0,r=this.hasDurablePermissionHookFallback(t);if(s<=0&&!r)return!1;let n=(0,B.parseInteractivePrompt)(e);if(n&&this.hasMatchingDurablePermissionHookFallback(n,t,e))return a.debug("Skipping tmux repaint already owned by a durable PermissionRequest fallback",{sessionId:t,promptText:n.promptText}),!0;if(n&&this.hasMatchingPermissionHookPrompt(n,t))return a.debug("Skipping tmux repaint already owned by an actionable PermissionRequest",{sessionId:t,promptText:n.promptText}),!0;if(n&&s<=0)return!1;if(s>0){let l=this.queuedPermissionRequestRegistrations.get(t)??[],p=n?l.find(c=>this.parsedPromptMatchesApprovalContext(n,c.context,e)):void 0,d=!n&&this.permissionRequestHookInFlight?.ownerState.sessionId===t?this.permissionRequestHookInFlight.registration:void 0,u=p??d??(l.length===1&&(!n||!r)?l[0]:void 0);if(u&&this.deferredTmuxPromptCandidates.set(u,{snapshot:e,promptHash:i}),n&&!u)return!1}return a.debug("Skipping tmux prompt candidate while PermissionRequest owns the session prompt",{sessionId:t,toolName:this.permissionRequestHookInFlight?.context.toolName,ownership:s>0?"queued_or_in_flight":"durable_prompt"}),!0}hasMatchingPermissionHookPrompt(t,e){let i=this.buildObserverPromptMatchKey(t);return[this.pendingInteractivePrompt,...this.queuedInteractivePrompts.map(r=>r.prompt)].some(r=>r?.source==="permission_hook"&&r.ownerSessionId===e&&r.observerMatchKey===i)}buildObserverPromptMatchKey(t){let e=t.options.map(s=>`${s.number}:${this.normalizeObserverPromptText(s.text)}`).join("|"),i=[t.kind,this.normalizeObserverPromptText(t.promptText),e].join("::");return`observer:${Ie.createHash("sha256").update(i).digest("hex").slice(0,16)}`}buildObserverSnapshotMatchKey(t){let e=this.normalizeObserverPromptText(t);return`snapshot:${Ie.createHash("sha256").update(e).digest("hex").slice(0,16)}`}normalizeObserverPromptText(t){return t.replace(/\r\n?/g,`
|
|
27
27
|
`).split(`
|
|
28
28
|
`).map(e=>e.replace(/[ \t]+$/g,"")).join(`
|
|
29
|
-
`).trim()}hasRecentlyResolvedApprovalDedupeKey(t,e){return t?(this.pruneResolvedApprovalDedupeKeys(),this.resolvedApprovalDedupeKeys.has(`${t}::${e}`)):!1}rememberResolvedApprovalDedupeKey(t,e){!t||!e||(this.pruneResolvedApprovalDedupeKeys(),this.waitingPermissionRequests.get(e)?.ownerState.sessionId===t&&this.waitingPermissionRequests.delete(e),this.resolvedApprovalDedupeKeys.set(`${t}::${e}`,Date.now()))}pruneResolvedApprovalDedupeKeys(){let t=Date.now()-
|
|
29
|
+
`).trim()}hasRecentlyResolvedApprovalDedupeKey(t,e){return t?(this.pruneResolvedApprovalDedupeKeys(),this.resolvedApprovalDedupeKeys.has(`${t}::${e}`)):!1}rememberResolvedApprovalDedupeKey(t,e){!t||!e||(this.pruneResolvedApprovalDedupeKeys(),this.waitingPermissionRequests.get(e)?.ownerState.sessionId===t&&this.waitingPermissionRequests.delete(e),this.resolvedApprovalDedupeKeys.set(`${t}::${e}`,Date.now()))}pruneResolvedApprovalDedupeKeys(){let t=Date.now()-Me;for(let[e,i]of this.resolvedApprovalDedupeKeys.entries())i<t&&this.resolvedApprovalDedupeKeys.delete(e)}buildApprovalDedupeKey(t){let e=t.toolName||"Tool",i=this.firstString(t.toolInput?.command,t.toolInput?.cmd,t.rawInput);if(i)return`command:${this.hashDedupeValue(`${this.mapToolNameForApproval(e)||e}:${i}`)}`;let s=this.firstString(t.filePath,t.toolInput?.file_path,t.toolInput?.path,t.toolInput?.filePath);if(s)return`file:${this.hashDedupeValue(`${e}:${s}`)}`;let r=this.firstString(t.hint);if(r)return`hint:${this.hashDedupeValue(`${e}:${r}`)}`}hashDedupeValue(t){return Ie.createHash("sha256").update(t).digest("hex").slice(0,16)}buildPermissionRequestHint(t,e,i){let s=this.extractFilePathFromToolInput(t,e,i);if(this.mapToolNameForApproval(t)==="Edit"&&s)return`File: ${s}`;let r=this.firstString(e?.command,e?.cmd);return r?`Command: ${this.truncateApprovalDetail(r,80)}`:s?`File: ${s}`:`Tool: ${this.mapToolNameForApproval(t)||t}`}extractFilePathFromToolInput(t,e,i){let s=this.firstString(e?.file_path,e?.path,e?.filePath);if(s)return s;if(t==="apply_patch"){let n=this.firstString(e?.command,e?.cmd,i)?.match(/\*\*\* (?:Update|Add|Delete) File: ([^\r\n]+)/);if(n)return n[1].trim()}}stringifyToolInput(t){if(t!=null){if(typeof t=="string")return t;try{return JSON.stringify(t)}catch{return String(t)}}}buildApprovalPromptContextFromPendingCall(t){let e=this.firstString(t.parsedInput?.command,t.parsedInput?.cmd),i=ie(t.input),s=V(e)||ie(e),n=(t.name==="apply_patch"?V(t.input):"")||i||s,l=!!n,p=l?"apply_patch":t.name,d=l?n:t.input,u=l?t.parsedInput||{command:n}:t.parsedInput,c=l?this.extractFilePathFromToolInput("apply_patch",void 0,n):t.filePath;return{toolName:p,framedPatch:l,filePath:c,diff:l?d:t.diff,toolInput:u,rawInput:d,hint:c?`File: ${c}`:`Tool: ${this.mapToolNameForApproval(p)||p}`}}buildApprovalPromptContextFromParsedPrompt(t){let e=this.extractShellCommandFromPromptText(t.promptText);if(e)return{toolName:"Bash",toolInput:{command:e},rawInput:e,hint:`Command: ${this.truncateApprovalDetail(e,80)}`};let i=t.promptText.match(/^(?:Destination|File):\s*([^\r\n]+)$/mi)?.[1]?.trim();return i?{toolName:"apply_patch",filePath:i,toolInput:{file_path:i},hint:`File: ${i}`}:null}parsedPromptMatchesApprovalContext(t,e,i){let s=this.buildApprovalPromptContextFromParsedPrompt(t),r=this.mapToolNameForApproval(e.toolName)==="Bash"?this.firstString(e.toolInput?.command,e.toolInput?.cmd):void 0;if(r){if(Li(t.promptText,r,i))return!0;if(this.mapToolNameForApproval(s?.toolName)!=="Bash")return!1;let l=qe(t.promptText);return l?Ot(l,r):!1}if(e.framedPatch!==!0)return!1;let n=e.filePath;return n?s?.toolName!=="apply_patch"||!s.filePath?!1:k.normalize(s.filePath)===k.normalize(n):!1}extractShellCommandFromPromptText(t){return Ct(t)}buildPromptInstructions(t){return t.kind==="yes_no"&&t.requiresFollowUpText?"Reply with 1 to approve, or 2 followed by what to change":t.kind==="yes_no"?"Reply with 1 for yes or 2 for no":t.kind==="numbered"?"Reply with the number of the option you want":"Reply with your response"}buildApprovalPromptContent(t,e){let i=t.trim(),s=i==="Codex is waiting for approval.",r=/^\$\s+/.test(i),n=e.toolName?`${e.toolName} requires approval.`:"Codex is waiting for approval.",l=[s||r||!i?n:i],p=typeof e.toolInput?.command=="string"?e.toolInput.command.trim():void 0;if(p&&!l.join(`
|
|
30
30
|
`).includes(p))return l.push("Command:",this.truncateApprovalDetail(p,240)),l.join(`
|
|
31
31
|
`);let d=e.filePath||e.toolInput?.file_path;return typeof d=="string"&&d.length>0&&!l.join(`
|
|
32
32
|
`).includes(d)?(l.push(`File: ${d}`),l.join(`
|
|
@@ -34,13 +34,13 @@ ${wt(o,"stdout")}`;return/^can't find session:/m.test(t)||/^no server running on
|
|
|
34
34
|
`).includes(e.hint)&&l.push(e.hint),l.join(`
|
|
35
35
|
`))}truncateApprovalDetail(t,e){return t.length>e?`${t.slice(0,e-3)}...`:t}summarizePromptSnapshot(t){return t.split(`
|
|
36
36
|
`).map(e=>e.trimEnd()).filter(e=>e.length>0).slice(-12).map(e=>e.slice(0,160)).join(`
|
|
37
|
-
`)}translatePromptResponse(t,e,i=this.pendingInteractivePrompt){if(!i||e.kind!=="option")return{primaryInput:t};let s=i.submitMap[e.option];return s?e.followUpText?{primaryInput:s,followUpInput:e.followUpText}:{primaryInput:s}:{primaryInput:t}}getEventPromptId(t){let e=t.promptId;return typeof e=="string"&&e.trim().length>0?e.trim():null}async emitRejectedPromptResponseNotification(t,e,i){if(!this.isExpectedSessionStateCurrent(i))return;let s=i.sessionId,r=t==="no_safe_reject_option"?"Your message was not sent because the active desktop prompt has no verified reject option. Please resolve it on the desktop and send your message again.":t==="live_prompt_unverified"?"Your response was not sent because the desktop prompt changed or could not be verified. Please reply to the prompt currently shown on your device.":t==="follow_up_delivery_failed"?"Your option was accepted, but the accompanying text could not be sent. Please send the text again.":"Response ignored because it was not tied to the current prompt. Please reply to the latest prompt again.",n={prompt_response_rejected:!0,reason:t,eventId:e.eventId,eventPromptId:this.getEventPromptId(e),activePromptId:this.pendingInteractivePrompt?.promptId},l=this.encryptForEmit(r,n,m.EventType.NOTIFICATION,s);if(l)try{await this.appSyncClient.createEvent({sessionId:s,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,content:l.content,metadata:l.metadata,timestamp:(0,m.prepareEventTimestamp)({orderingKey:s}),...l.isEncrypted?{isEncrypted:!0}:{}})}catch(p){a.warn("Failed to emit rejected prompt response notification",{reason:t,error:p})}}buildToolDetailsForInteractivePrompt(t,e){let i=t.toolName,s=t.toolInput&&typeof t.toolInput=="object"?t.toolInput:void 0;if(i==="apply_patch"){let n=t.diff||t.rawInput;if(n){let{oldString:l,newString:p,oldStartLine:d,newStartLine:
|
|
38
|
-
`)){let u
|
|
37
|
+
`)}translatePromptResponse(t,e,i=this.pendingInteractivePrompt){if(!i||e.kind!=="option")return{primaryInput:t};let s=i.submitMap[e.option];return s?e.followUpText?{primaryInput:s,followUpInput:e.followUpText}:{primaryInput:s}:{primaryInput:t}}getEventPromptId(t){let e=t.promptId;return typeof e=="string"&&e.trim().length>0?e.trim():null}async emitRejectedPromptResponseNotification(t,e,i){if(!this.isExpectedSessionStateCurrent(i))return;let s=i.sessionId,r=t==="no_safe_reject_option"?"Your message was not sent because the active desktop prompt has no verified reject option. Please resolve it on the desktop and send your message again.":t==="live_prompt_unverified"?"Your response was not sent because the desktop prompt changed or could not be verified. Please reply to the prompt currently shown on your device.":t==="follow_up_delivery_failed"?"Your option was accepted, but the accompanying text could not be sent. Please send the text again.":"Response ignored because it was not tied to the current prompt. Please reply to the latest prompt again.",n={prompt_response_rejected:!0,reason:t,eventId:e.eventId,eventPromptId:this.getEventPromptId(e),activePromptId:this.pendingInteractivePrompt?.promptId},l=this.encryptForEmit(r,n,m.EventType.NOTIFICATION,s);if(l)try{await this.appSyncClient.createEvent({sessionId:s,type:m.EventType.NOTIFICATION,source:m.EventSource.DESKTOP,content:l.content,metadata:l.metadata,timestamp:(0,m.prepareEventTimestamp)({orderingKey:s}),...l.isEncrypted?{isEncrypted:!0}:{}})}catch(p){a.warn("Failed to emit rejected prompt response notification",{reason:t,error:p})}}buildToolDetailsForInteractivePrompt(t,e){let i=t.toolName,s=t.toolInput&&typeof t.toolInput=="object"?t.toolInput:void 0;if(i==="apply_patch"){let n=t.diff||t.rawInput;if(n){let{oldString:l,newString:p,oldStartLine:d,newStartLine:u}=this.extractOldNewFromPatch(n),c=e?this.extractDiffLineAnchorsFromSnapshot(e):{};return{tool_name:"Edit",tool_input:{file_path:t.filePath,content:n,diff:t.diff,raw_patch:t.rawInput,old_string:l,new_string:p,old_start_line:d??c.oldStartLine,new_start_line:u??c.newStartLine}}}}if(this.mapToolNameForApproval(i)==="Bash"){let n=this.firstString(s?.command,s?.cmd,t.rawInput,t.hint);if(n)return{tool_name:"Bash",tool_input:{command:n,output:s?.output}}}let r={};return t.filePath&&(r.file_path=t.filePath),t.diff&&(r.diff=t.diff),t.rawInput&&(r.raw_input=t.rawInput),Object.keys(r).length>0?{tool_name:i||"Tool",tool_input:r}:{}}firstString(...t){for(let e of t)if(typeof e=="string"&&e.trim().length>0)return e}buildFallbackToolInput(t){let e={};return t.filePath&&(e.file_path=t.filePath),t.diff&&(e.diff=t.diff),t.rawInput&&(e.raw_input=t.rawInput),t.toolInput&&typeof t.toolInput=="object"&&(e.parsed_input=t.toolInput),Object.keys(e).length>0?e:void 0}mapToolNameForApproval(t){return t?{exec_command:"Bash",exec:"Bash",local_shell:"Bash",Bash:"Bash",apply_patch:"Edit",shell_command:"Bash",shell:"Bash",Edit:"Edit",Write:"Write"}[t]||t:void 0}extractOldNewFromPatch(t){let e=[],i=[],s=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/,r=0,n=0,l=0,p,d;for(let u of t.split(`
|
|
38
|
+
`)){let c=u.match(s);if(c){r+=1,n=Number.parseInt(c[1],10),l=Number.parseInt(c[2],10);continue}if(!(u.startsWith("***")||u.startsWith("---")||u.startsWith("+++")||u.startsWith("*** End Patch"))){if(u.startsWith("-"))p===void 0&&(p=n),e.push(u.slice(1)),n+=1;else if(u.startsWith("+"))d===void 0&&(d=l),i.push(u.slice(1)),l+=1;else if(u.startsWith(" ")){let f=u.slice(1);e.push(f),i.push(f),n+=1,l+=1}}}return{oldString:e.join(`
|
|
39
39
|
`),newString:i.join(`
|
|
40
40
|
`),oldStartLine:r===1?p:void 0,newStartLine:r===1?d:void 0}}extractDiffLineAnchorsFromSnapshot(t){let e=(0,B.normalizeSnapshot)(t),i,s;for(let r of e.split(`
|
|
41
|
-
`)){let n=r.match(/^\s*(\d+)\s+(.*)$/);if(!n)continue;let l=Number.parseInt(n[1],10),p=n[2];if(Number.isFinite(l)){if(p.startsWith("-")){i??=l;continue}if(p.startsWith("+")){s??=l;continue}i??=l,s??=l}}return a.debug("Recovered diff line anchors from tmux snapshot",{oldStartLine:i,newStartLine:s,snapshotPreview:this.summarizePromptSnapshot(t)}),{oldStartLine:i,newStartLine:s}}subscribeToMobileEvents(t){let e=this.sessionState;if(!e||e.sessionId!==t)return a.warn("Refusing mobile subscription without matching session generation",{sessionId:t,currentSessionId:e?.sessionId}),!1;if(this.subscribedSessionId===t&&this.subscribedSessionState===e)return a.info("Already subscribed to mobile events, skipping",{sessionId:t}),!0;if(a.info("Subscribing to mobile events",{sessionId:t}),this.unsubscribe){try{this.unsubscribe()}catch(i){a.warn("Error cleaning up previous subscription (non-fatal)",{error:i})}this.subscribedSessionId=null,this.subscribedSessionState=null}try{this.unsubscribe=this.appSyncClient.subscribeToEvents(t,async i=>{await this.handleMobileEvent(i,e)},i=>{a.error("Subscription error:",i)},{onSessionRetired:()=>this.recoverRetiredBackendSession(t)}),this.subscribedSessionId=t,this.subscribedSessionState=e}catch(i){return a.error("Failed to subscribe to mobile events (non-fatal)",{sessionId:t,error:i}),!1}return this.isExpectedSessionStateCurrent(e)&&(e.subscriptionActive=!0),a.info("Subscribed to mobile events"),!0}async ensureOrchestrationClient(t){let{OrchestrationClient:e}=await import("@quantiya/quorum-core"),i=await m.keychainManager.getTokens((0,m.getEnvironment)());if(!i?.idToken)throw new Error("No Cognito ID token available \u2014 plugin must be logged in");let s=(0,m.getConfig)(),r=this.sessionKey??Buffer.alloc(32).toString("base64"),n=require("ws");return await e.connect({appsyncUrl:s.aws.appsyncUrl,cognitoIdToken:i.idToken,tokenProvider:async()=>(await m.keychainManager.getTokens((0,m.getEnvironment)()))?.idToken??i.idToken,sessionId:t,sessionKeyB64:r,webSocketFactory:((p,d)=>new n(p,d))})}async subscribeToOnApplyUserDecision(t){if(this.userDecisionUnsubscribe){try{this.userDecisionUnsubscribe()}catch(e){a.warn("Error invoking previous onApplyUserDecision unsubscribe (non-fatal)",{error:e})}this.userDecisionUnsubscribe=null}if(this.orchestrationClient){try{await this.orchestrationClient.destroy()}catch(e){a.warn("Error destroying previous OrchestrationClient (non-fatal)",{error:e})}this.orchestrationClient=null}try{let e=await this.ensureOrchestrationClient(t);this.orchestrationClient=e;let i=await e.onApplyUserDecision(s=>{this.handleApplyUserDecisionEvent(s)});return this.userDecisionUnsubscribe=i,a.info("[v1-bridge] Subscribed to onApplyUserDecision via OrchestrationClient",{sessionId:t}),!0}catch(e){if(a.error("Failed to subscribe to onApplyUserDecision (non-fatal)",{sessionId:t,error:e}),this.orchestrationClient){try{await this.orchestrationClient.destroy()}catch{}this.orchestrationClient=null}return!1}}handleApplyUserDecisionEvent(t){let{gateId:e,decision:i,sessionId:s,taskId:r}=t;if(this.v1Bridge.dispatch(t)==="self_echo"){a.debug("[v1-bridge] Self-origin decision echo absorbed",{gateId:e,decision:i,sessionId:s,taskId:r});return}a.info("[v1-bridge] cross-device decision recorded",{gateId:e,decision:i,sessionId:s,taskId:r});let l=String(i).toUpperCase();this.emitOrchestrationBanner(l)}async emitOrchestrationBanner(t){let e=process.env[$];if(!e){a.warn("[v1-bridge] No tmux session set; cannot emit cross-device banner",{expectedEnv:$});return}let s=
|
|
41
|
+
`)){let n=r.match(/^\s*(\d+)\s+(.*)$/);if(!n)continue;let l=Number.parseInt(n[1],10),p=n[2];if(Number.isFinite(l)){if(p.startsWith("-")){i??=l;continue}if(p.startsWith("+")){s??=l;continue}i??=l,s??=l}}return a.debug("Recovered diff line anchors from tmux snapshot",{oldStartLine:i,newStartLine:s,snapshotPreview:this.summarizePromptSnapshot(t)}),{oldStartLine:i,newStartLine:s}}subscribeToMobileEvents(t){let e=this.sessionState;if(!e||e.sessionId!==t)return a.warn("Refusing mobile subscription without matching session generation",{sessionId:t,currentSessionId:e?.sessionId}),!1;if(this.subscribedSessionId===t&&this.subscribedSessionState===e)return a.info("Already subscribed to mobile events, skipping",{sessionId:t}),!0;if(a.info("Subscribing to mobile events",{sessionId:t}),this.unsubscribe){try{this.unsubscribe()}catch(i){a.warn("Error cleaning up previous subscription (non-fatal)",{error:i})}this.subscribedSessionId=null,this.subscribedSessionState=null}try{this.unsubscribe=this.appSyncClient.subscribeToEvents(t,async i=>{await this.handleMobileEvent(i,e)},i=>{a.error("Subscription error:",i)},{onSessionRetired:()=>this.recoverRetiredBackendSession(t)}),this.subscribedSessionId=t,this.subscribedSessionState=e}catch(i){return a.error("Failed to subscribe to mobile events (non-fatal)",{sessionId:t,error:i}),!1}return this.isExpectedSessionStateCurrent(e)&&(e.subscriptionActive=!0),a.info("Subscribed to mobile events"),!0}async ensureOrchestrationClient(t){let{OrchestrationClient:e}=await import("@quantiya/quorum-core"),i=await m.keychainManager.getTokens((0,m.getEnvironment)());if(!i?.idToken)throw new Error("No Cognito ID token available \u2014 plugin must be logged in");let s=(0,m.getConfig)(),r=this.sessionKey??Buffer.alloc(32).toString("base64"),n=require("ws");return await e.connect({appsyncUrl:s.aws.appsyncUrl,cognitoIdToken:i.idToken,tokenProvider:async()=>(await m.keychainManager.getTokens((0,m.getEnvironment)()))?.idToken??i.idToken,sessionId:t,sessionKeyB64:r,webSocketFactory:((p,d)=>new n(p,d))})}async subscribeToOnApplyUserDecision(t){if(this.userDecisionUnsubscribe){try{this.userDecisionUnsubscribe()}catch(e){a.warn("Error invoking previous onApplyUserDecision unsubscribe (non-fatal)",{error:e})}this.userDecisionUnsubscribe=null}if(this.orchestrationClient){try{await this.orchestrationClient.destroy()}catch(e){a.warn("Error destroying previous OrchestrationClient (non-fatal)",{error:e})}this.orchestrationClient=null}try{let e=await this.ensureOrchestrationClient(t);this.orchestrationClient=e;let i=await e.onApplyUserDecision(s=>{this.handleApplyUserDecisionEvent(s)});return this.userDecisionUnsubscribe=i,a.info("[v1-bridge] Subscribed to onApplyUserDecision via OrchestrationClient",{sessionId:t}),!0}catch(e){if(a.error("Failed to subscribe to onApplyUserDecision (non-fatal)",{sessionId:t,error:e}),this.orchestrationClient){try{await this.orchestrationClient.destroy()}catch{}this.orchestrationClient=null}return!1}}handleApplyUserDecisionEvent(t){let{gateId:e,decision:i,sessionId:s,taskId:r}=t;if(this.v1Bridge.dispatch(t)==="self_echo"){a.debug("[v1-bridge] Self-origin decision echo absorbed",{gateId:e,decision:i,sessionId:s,taskId:r});return}a.info("[v1-bridge] cross-device decision recorded",{gateId:e,decision:i,sessionId:s,taskId:r});let l=String(i).toUpperCase();this.emitOrchestrationBanner(l)}async emitOrchestrationBanner(t){let e=process.env[$];if(!e){a.warn("[v1-bridge] No tmux session set; cannot emit cross-device banner",{expectedEnv:$});return}let s=gt(t).replace(/"/g,'\\"'),r=`tmux display-message -d 8000 -t "${e}" "${s}"`;try{await _t(r),a.info("[v1-bridge] Cross-device decision banner emitted",{decision:t})}catch(n){a.warn("[v1-bridge] tmux display-message failed (non-fatal)",{error:n instanceof Error?n.message:String(n)})}}async originateUserDecision(t){this.v1Bridge.markOriginated(t.gateId);let e=this.sessionState?.sessionId;if(!e)throw this.v1Bridge.clearOriginated(t.gateId),new Error("No active session \u2014 cannot originate user decision");let i=this.orchestrationClient,s=!1;i||(i=await this.ensureOrchestrationClient(e),s=!0);try{await i.applyUserDecision(t),a.info("[v1-bridge] originated user decision",{gateId:t.gateId,decision:t.decision,sessionId:e})}catch(r){throw this.v1Bridge.clearOriginated(t.gateId),a.error("[v1-bridge] applyUserDecision failed (rolled back originator marker)",{gateId:t.gateId,decision:t.decision,error:r instanceof Error?r.message:String(r)}),r}finally{if(s&&i)try{await i.destroy()}catch{}}}_v1BridgeStateForTest(){return this.v1Bridge}_v1BridgeHandleEventForTest(t){this.handleApplyUserDecisionEvent(t)}async downloadAttachment(t,e,i,s){try{let r=t.isEncrypted??s??!1;a.info("Downloading attachment",{id:t.id,type:t.type,filename:t.filename,s3Key:t.s3Key,attachmentIsEncrypted:t.isEncrypted,eventIsEncrypted:s,shouldDecrypt:r});let{downloadUrl:n}=await this.appSyncClient.getAttachmentDownloadUrl(t.s3Key),l=await fetch(n);if(!l.ok)throw new Error(`Failed to download attachment: ${l.status} ${l.statusText}`);let p=Buffer.from(await l.arrayBuffer());if(r&&i)try{a.info("Decrypting attachment",{id:t.id}),p=m.cryptoService.decryptData(p,i),a.info("Attachment decrypted successfully",{id:t.id,decryptedSize:p.length})}catch(y){throw a.error("Failed to decrypt attachment:",{id:t.id,error:y}),new Error("Failed to decrypt attachment")}else if(r&&!i)return a.warn("Cannot decrypt attachment - no session key available",{id:t.id}),null;let d=k.join(Ne.tmpdir(),"codevibe-codex",e);H.existsSync(d)||H.mkdirSync(d,{recursive:!0});let u="";if(t.filename){let y=k.extname(t.filename);y&&(u=y)}u||(u={"image/jpeg":".jpg","image/png":".png","image/gif":".gif","image/webp":".webp","image/heic":".heic","application/pdf":".pdf"}[t.type]||".bin");let c=`attachment-${t.id}${u}`,f=k.join(d,c);return H.writeFileSync(f,p),a.info("Attachment saved to temp file",{id:t.id,filePath:f,size:p.length}),f}catch(r){return a.error("Failed to download attachment:",{id:t.id,error:r}),null}}async handleMobileEvent(t,e=this.sessionState){if(t.attachments&&t.attachments.length>0&&a.info("DEBUG: Raw attachment data from subscription",{attachments:JSON.stringify(t.attachments),eventIsEncrypted:t.isEncrypted}),a.info("Received mobile event",{eventId:t.eventId,type:t.type,content:t.content?.substring(0,50),attachmentCount:t.attachments?.length||0,isEncrypted:t.isEncrypted}),!e||!this.isExpectedSessionStateCurrent(e)||t.sessionId!==e.sessionId){a.warn("Dropping mobile event for stale or mismatched session generation",{eventSessionId:t.sessionId,expectedSessionId:e?.sessionId,currentSessionId:this.sessionState?.sessionId});return}let i=e.sessionId,{sessionKey:s}=e.encryptionSnapshot,r=t.content||"";if(t.isEncrypted){if(!s){a.error("Dropping encrypted mobile event without its session-pinned key",{eventId:t.eventId,sessionId:i});return}try{r=m.cryptoService.decryptContent(t.content,s),a.debug("Event decrypted successfully",{eventId:t.eventId})}catch(l){a.error("Failed to decrypt event:",{eventId:t.eventId,error:l});return}}let n=this.pendingInteractivePrompt;try{await this.appSyncClient.updateEventStatus({eventId:t.eventId,sessionId:t.sessionId,timestamp:t.timestamp,deliveryStatus:m.DeliveryStatus.DELIVERED})}catch(l){a.error("Failed to update delivery status:",l)}if(this.isExpectedSessionStateCurrent(e)&&(t.type===m.EventType.USER_PROMPT||t.type===m.EventType.PROMPT_RESPONSE)){let l=r,p=t.attachments||[],d=t.type===m.EventType.PROMPT_RESPONSE,u=null,c=!1,f=(0,m.classifyMobilePromptInput)(l,n?Object.keys(n.submitMap):[]);if(f.kind==="option"){let S=n;if(!S)c=!0,d=!1;else if(t.type===m.EventType.PROMPT_RESPONSE){let b=this.getEventPromptId(t),O=S.promptId;if(!b||b!==O){a.warn("Rejecting stale or unbound PROMPT_RESPONSE",{eventId:t.eventId,eventPromptId:b,activePromptId:O}),await this.emitRejectedPromptResponseNotification("prompt_id_mismatch",t,e);return}u=S}else d=!0,u=S,a.info("Treating approval-shaped USER_PROMPT as active prompt response",{eventId:t.eventId,activePromptId:S.promptId,promptPreview:l.slice(0,20)})}else d=!1,c=!0,a.info("Treating mobile input as conversation continuation",{eventId:t.eventId,activePromptId:n?.promptId,attachmentCount:p.length});let y=[];if(p.length>0){a.info("Downloading attachments for prompt",{count:p.length});for(let S of p){let b=await this.downloadAttachment(S,i,s,t.isEncrypted);if(!this.isExpectedSessionStateCurrent(e))return;b&&y.push(b)}if(y.length>0){let S=y.map(b=>`[Attached file: ${b}]`).join(`
|
|
42
42
|
`);l?l=`${S}
|
|
43
43
|
|
|
44
44
|
${l}`:l=`${S}
|
|
45
45
|
|
|
46
|
-
Please analyze the attached file(s).`,a.info("Prompt updated with attachment paths",{attachmentCount:y.length,newPromptLength:l.length})}}if(d&&this.pendingInteractivePrompt!==c){a.info("Ignoring mobile prompt response already settled by a concurrent completion",{eventId:t.eventId,boundPromptId:c?.promptId,activePromptId:this.pendingInteractivePrompt?.promptId});return}let h=this.translatePromptResponse(l,f,c);if(!this.isExpectedSessionStateCurrent(e)||(h.primaryInput!==Y&&this.trackMobilePrompt(i,h.primaryInput),!this.isExpectedSessionStateCurrent(e)))return;let v=c?await this.sendVerifiedPromptInput(e,c,h.primaryInput):u?await this.sendConversationContinuation(e,h.primaryInput):await this.sendSessionPinnedInput(e,h.primaryInput)?"sent":"send_failed",P=v==="sent";if(!this.isExpectedSessionStateCurrent(e))return;P&&u&&(this.approvalDetector.clear(),this.clearInteractivePromptsForAcceptedInput(e)),(v==="stale"||v==="unverified")&&await this.emitRejectedPromptResponseNotification("live_prompt_unverified",t,e),!P&&h.primaryInput!==Y&&this.forgetMobilePrompt(i,h.primaryInput);let E=!0;if(P&&h.followUpInput){if(await new Promise(b=>setTimeout(b,200)),!this.isExpectedSessionStateCurrent(e)||(this.trackMobilePrompt(i,h.followUpInput),!this.isExpectedSessionStateCurrent(e))||(E=(c?await this.sendVerifiedFollowUpAfterDismissal(e,c,h.followUpInput):await this.sendSessionPinnedInput(e,h.followUpInput)?"sent":"send_failed")==="sent",!this.isExpectedSessionStateCurrent(e)))return;E||(await this.emitRejectedPromptResponseNotification("follow_up_delivery_failed",t,e),this.forgetMobilePrompt(i,h.followUpInput))}if(P&&d&&c&&this.pendingInteractivePrompt===c){let S=c;this.rememberResolvedApprovalDedupeKey(e.sessionId,S.dedupeKey),this.pendingInteractivePrompt=null;let b=this.beginE1PromptResolutions([S.promptId],e.sessionId);if(this.launchE1Resolutions(b),!this.isExpectedSessionStateCurrent(e)||(await this.emitNextQueuedInteractivePrompt(),!this.isExpectedSessionStateCurrent(e)))return}if(P&&E){if(!this.isExpectedSessionStateCurrent(e))return;try{await this.appSyncClient.updateEventStatus({eventId:t.eventId,sessionId:t.sessionId,timestamp:t.timestamp,deliveryStatus:m.DeliveryStatus.EXECUTED})}catch(S){a.error("Failed to update executed status:",S)}}}}buildToolActivityIntegration(){return new X({logger:a,createEvent:t=>this.appSyncClient.createEvent(t),encryptContent:(t,e)=>m.cryptoService.encryptContent(t,e),encryptMetadata:(t,e)=>m.cryptoService.encryptMetadata(t,e),getSessionKey:()=>this.sessionKey,getSessionKeyGen:()=>this.sessionKeyGen,refreshSessionKey:t=>this.refreshToolActivitySessionKey(t)})}async refreshToolActivitySessionKey(t){try{let e=await this.appSyncClient.getSession(t);if(e&&e.status===m.SessionStatus.INACTIVE){let n=new Error(`SESSION_TERMINAL: session ${t} is ${e.status}; stop retrying`);throw n.errorType="SessionTerminal",n}if(!e||e.status!==m.SessionStatus.ACTIVE||!e.isEncrypted)return null;let i=e.sessionKeyGen??null,s=e.encryptedKeys??[];if(s.length===0)return null;let r=await m.keychainManager.getSessionKey(t,s,i);return r?(a.info("[tool-activity] refreshed session key for SessionKeyStale retry (live key untouched)",{sessionId:t,sessionKeyGen:i}),{sessionKey:r,sessionKeyGen:i}):null}catch(e){if((0,m.isTerminalSessionError)(e))throw e;return a.warn("[tool-activity] session key refresh failed after SessionKeyStale (staying retryable)",{sessionId:t,error:String(e)}),null}}getToolActivityLegacyRecorder(t){let e=this.toolActivityLegacyRecorders.get(t);return e||(e=new m.ToolActivityLedger({agent:"codex",sessionId:t,logger:a}),this.toolActivityLegacyRecorders.set(t,e)),e}async ensureToolActivityStarted(t){if(!this.sessionState||!t)return;let e=this.sessionWatcher.getActiveLogFile()||this.sessionState.codexLogFile||void 0,i=this.toolActivity;if(i){e&&i.bindTranscript(e);return}if(this.toolActivityStartPromise){await this.toolActivityStartPromise,e&&this.toolActivity?.bindTranscript(e);return}if(!this.sessionKey)return;let s=this.sessionState.sessionId;this.toolActivityStartPromise=(async()=>{let r=this.buildToolActivityIntegration();try{await r.start(s,t,e),this.toolActivity=r}catch(n){throw await r.stop().catch(()=>{}),this.toolActivityStartPromise=null,n}})().catch(r=>{a.warn("[tool-activity] failed to start codex consolidator (non-fatal)",{backendSessionId:s,rolloutId:t,error:String(r)})}),await this.toolActivityStartPromise}startMobileEndWatcher(t){!this.sessionState||this.sessionState.sessionId!==t||(this.sessionState.mobileEndWatcher=this.appSyncClient.watchForMobileEnd(t,async()=>{a.info("Mobile ended session \u2014 sending desktop quit",{sessionId:t}),this.appSyncClient.stopHeartbeat(t),this.appSyncClient.cleanupSubscription(t);try{await this.appSyncClient.updateSession({sessionId:t,status:m.SessionStatus.INACTIVE}),a.info("Marked session INACTIVE on mobile-end (before tmux terminate)",{sessionId:t})}catch(i){a.warn("Failed to mark session INACTIVE on mobile-end",{sessionId:t,error:i})}let e=process.env[$];if(!e){a.warn("No tmux session set; skipping desktop self-terminate",{sessionId:t,expectedEnv:$});return}await Fi(e,Ti)}))}async endActiveSession(t,e=!0){if(!this.sessionState)return;let i=t,s=e,r=this.sessionState;if(this.terminalInputBlockedStates.add(r),await this.terminalInputChain.catch(()=>{}),this.sessionState!==r){a.warn("Session changed while waiting for terminal-input teardown barrier",{endingSessionId:r.sessionId,currentSessionId:this.sessionState?.sessionId,reason:i});return}if(a.info("Ending active session",{sessionId:r.sessionId,codexSessionId:r.codexSessionId,reason:i}),this.sessionState.mobileEndWatcher&&(this.sessionState.mobileEndWatcher.stop(),this.sessionState.mobileEndWatcher=void 0),this.userDecisionUnsubscribe){try{this.userDecisionUnsubscribe()}catch(n){a.warn("Error invoking onApplyUserDecision unsubscribe (non-fatal)",{error:n})}this.userDecisionUnsubscribe=null}if(this.orchestrationClient){try{await this.orchestrationClient.destroy()}catch(n){a.warn("Error destroying OrchestrationClient (non-fatal)",{error:n})}this.orchestrationClient=null}this.v1Bridge.clear(),this.appSyncClient.stopHeartbeat(this.sessionState.sessionId),this.stopE1TtlRefresh(),this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.subscribedSessionId=null,this.subscribedSessionState=null),await this.tmuxPaneObserver.stop();for(let n of this.deferredTmuxPromptCandidates.keys())n.sessionId===r.sessionId&&this.deferredTmuxPromptCandidates.delete(n);this.queuedPermissionRequestRegistrations.delete(r.sessionId),this.terminalRetirementRequested&&(i="shutdown",s=!0),i==="shutdown"&&this.sessionWatcher.stop(),this.toolActivityStartPromise&&(await this.toolActivityStartPromise.catch(()=>{}),this.toolActivityStartPromise=null),await this.logEntryChain.catch(()=>{}),this.toolActivity&&(await this.toolActivity.stop(),this.toolActivity=null);for(let n of this.toolActivityLegacyRecorders.values())n.disposeLegacyCoordination();this.toolActivityLegacyRecorders.clear(),this.terminalRetirementRequested&&(i="shutdown",s=!0),i==="daemon-handoff"&&this.persistDaemonHandoffState(r),(i==="new-codex-session-started"||i==="shutdown")&&(await this.exactClearOpenE1ForLifecycleEnd(r.sessionId),await this.drainPendingE1ResolutionsForLifecycleEnd(),this.stopE1TtlRefresh()),i!=="backend-generation-retired"&&i!=="daemon-handoff"&&(this.permissionRequestOccurrencesByCompletionKey.clear(),this.waitingPermissionRequests.clear()),this.pendingInteractivePrompt=null,this.queuedInteractivePrompts=[],this.isInitializingSession=!1,this.bufferedLogEntries=[],Te(),this.sessionKey&&(m.keychainManager.clearSessionKey(this.sessionState.sessionId),this.sessionKey=null,this.sessionKeyGen=null),this.terminalRetirementRequested&&(s=!0),s?await this.retireHostedSession(this.sessionState.sessionId):a.info("Preserving active backend session for daemon handoff",{sessionId:this.sessionState.sessionId}),this.sessionState=null}async retireHostedSession(t){let e;for(let i=1;i<=ve;i+=1)try{await this.appSyncClient.updateSession({sessionId:t,status:m.SessionStatus.INACTIVE});return}catch(s){e=s,a.warn("Failed to retire hosted Codex session",{sessionId:t,attempt:i,maxAttempts:ve,error:s instanceof Error?s.message:String(s)}),i<ve&&await new Promise(r=>setTimeout(r,Oi*i))}throw new Error(`Failed to retire hosted Codex session ${t} after ${ve} attempts: ${String(e)}`)}async cleanupDetachedWrapperArtifacts(){let t=process.env.CODEVIBE_CODEX_WRAPPER_PID;if(!t||!/^\d+$/.test(t))return;let e=process.env.TMPDIR||De.tmpdir(),i=[k.join(e,`codevibe-codex-server-${t}.pid`),k.join(e,`codevibe-codex-exit-${t}`),k.join(e,`codevibe-codex-tmux-session-${t}`)];for(let s of i)try{H.unlinkSync(s)}catch(r){r?.code!=="ENOENT"&&a.warn("Failed to remove detached-wrapper artifact",{ownedPath:s,error:String(r)})}}stop(t={}){return t.retireBackendSession!==!1&&(this.terminalRetirementRequested=!0),this.stopPromise?this.stopPromise:(this.stopPromise=this.doStop(),this.stopPromise)}async doStop(){a.info("Stopping CodeVibe Codex companion server"),this.stopTmuxLifecycleMonitor(),this.isStopping=!0,this.lifecycleGeneration+=1,this.sessionWatcher.stop();let t=this.launchSessionInitPromise,e=this.sessionStartedInitPromise,i=this.retiredSessionRecoveryPromise,s=this.hookEventChain,r=typeof this.sessionWatcher.waitForTranscriptAdmissions=="function"?this.sessionWatcher.waitForTranscriptAdmissions():Promise.resolve();await Promise.all([t?.catch(()=>{}),e?.catch(()=>{}),i?.catch(()=>{}),r.catch(()=>{}),s.catch(()=>{})]);try{let n=this.terminalRetirementRequested;await this.endActiveSession(n?"shutdown":"daemon-handoff",n),this.sessionWatcher.stop(),this.approvalDetector.shutdown(),Te()}finally{await this.httpApi.stop(),this.appSyncClient.cleanupSubscriptions(),this.terminalRetirementRequested&&await this.cleanupDetachedWrapperArtifacts()}a.info("CodeVibe Codex companion server stopped")}};if(require.main===module){let o=new Pe;for(let t of Rt)process.on(t,()=>{a.info(`Received ${t}, evaluating terminal shutdown...`),o.stopForTerminalSignal(t).then(e=>{e&&process.exit(0)},e=>{a.error(`Failed to stop companion daemon after ${t}`,{error:e instanceof Error?e.message:String(e)}),process.exit(1)})});process.on("SIGUSR2",async()=>{a.info("Received SIGUSR2, handing off active session to replacement daemon..."),await o.stop({retireBackendSession:!1}),process.exit(0)}),(0,m.installDaemonProcessGuards)(a,{onFatal:()=>{o.stop().finally(()=>process.exit(1))}}),o.start().catch(t=>{a.error("Failed to start server:",t),process.exit(1)})}0&&(module.exports={CodexCompanionServer,TERMINAL_SHUTDOWN_SIGNALS,classifyTmuxHasSessionError,extractShellCommandFromPromptText,extractShellCommandPartsFromPromptText,restoreCodexPersistOptionCommand,shellCommandPartsMatchExpected});
|
|
46
|
+
Please analyze the attached file(s).`,a.info("Prompt updated with attachment paths",{attachmentCount:y.length,newPromptLength:l.length})}}if(d&&this.pendingInteractivePrompt!==u){a.info("Ignoring mobile prompt response already settled by a concurrent completion",{eventId:t.eventId,boundPromptId:u?.promptId,activePromptId:this.pendingInteractivePrompt?.promptId});return}let h=this.translatePromptResponse(l,f,u);if(!this.isExpectedSessionStateCurrent(e)||(h.primaryInput!==Y&&this.trackMobilePrompt(i,h.primaryInput),!this.isExpectedSessionStateCurrent(e)))return;let v=u?await this.sendVerifiedPromptInput(e,u,h.primaryInput):c?await this.sendConversationContinuation(e,h.primaryInput):await this.sendSessionPinnedInput(e,h.primaryInput)?"sent":"send_failed",P=v==="sent";if(!this.isExpectedSessionStateCurrent(e))return;P&&c&&(this.approvalDetector.clear(),this.clearInteractivePromptsForAcceptedInput(e)),(v==="stale"||v==="unverified")&&await this.emitRejectedPromptResponseNotification("live_prompt_unverified",t,e),!P&&h.primaryInput!==Y&&this.forgetMobilePrompt(i,h.primaryInput);let E=!0;if(P&&h.followUpInput){if(await new Promise(b=>setTimeout(b,200)),!this.isExpectedSessionStateCurrent(e)||(this.trackMobilePrompt(i,h.followUpInput),!this.isExpectedSessionStateCurrent(e))||(E=(u?await this.sendVerifiedFollowUpAfterDismissal(e,u,h.followUpInput):await this.sendSessionPinnedInput(e,h.followUpInput)?"sent":"send_failed")==="sent",!this.isExpectedSessionStateCurrent(e)))return;E||(await this.emitRejectedPromptResponseNotification("follow_up_delivery_failed",t,e),this.forgetMobilePrompt(i,h.followUpInput))}if(P&&d&&u&&!u.terminalMenuIdentity&&this.pendingInteractivePrompt===u){let S=u;this.rememberResolvedApprovalDedupeKey(e.sessionId,S.dedupeKey),this.pendingInteractivePrompt=null;let b=this.beginE1PromptResolutions([S.promptId],e.sessionId);if(this.launchE1Resolutions(b),!this.isExpectedSessionStateCurrent(e)||(await this.emitNextQueuedInteractivePrompt(),!this.isExpectedSessionStateCurrent(e)))return}if(P&&E){if(!this.isExpectedSessionStateCurrent(e))return;try{await this.appSyncClient.updateEventStatus({eventId:t.eventId,sessionId:t.sessionId,timestamp:t.timestamp,deliveryStatus:m.DeliveryStatus.EXECUTED})}catch(S){a.error("Failed to update executed status:",S)}}}}buildToolActivityIntegration(){return new X({logger:a,createEvent:t=>this.appSyncClient.createEvent(t),encryptContent:(t,e)=>m.cryptoService.encryptContent(t,e),encryptMetadata:(t,e)=>m.cryptoService.encryptMetadata(t,e),getSessionKey:()=>this.sessionKey,getSessionKeyGen:()=>this.sessionKeyGen,refreshSessionKey:t=>this.refreshToolActivitySessionKey(t)})}async refreshToolActivitySessionKey(t){try{let e=await this.appSyncClient.getSession(t);if(e&&e.status===m.SessionStatus.INACTIVE){let n=new Error(`SESSION_TERMINAL: session ${t} is ${e.status}; stop retrying`);throw n.errorType="SessionTerminal",n}if(!e||e.status!==m.SessionStatus.ACTIVE||!e.isEncrypted)return null;let i=e.sessionKeyGen??null,s=e.encryptedKeys??[];if(s.length===0)return null;let r=await m.keychainManager.getSessionKey(t,s,i);return r?(a.info("[tool-activity] refreshed session key for SessionKeyStale retry (live key untouched)",{sessionId:t,sessionKeyGen:i}),{sessionKey:r,sessionKeyGen:i}):null}catch(e){if((0,m.isTerminalSessionError)(e))throw e;return a.warn("[tool-activity] session key refresh failed after SessionKeyStale (staying retryable)",{sessionId:t,error:String(e)}),null}}getToolActivityLegacyRecorder(t){let e=this.toolActivityLegacyRecorders.get(t);return e||(e=new m.ToolActivityLedger({agent:"codex",sessionId:t,logger:a}),this.toolActivityLegacyRecorders.set(t,e)),e}async ensureToolActivityStarted(t){if(!this.sessionState||!t)return;let e=this.sessionWatcher.getActiveLogFile()||this.sessionState.codexLogFile||void 0,i=this.toolActivity;if(i){e&&i.bindTranscript(e);return}if(this.toolActivityStartPromise){await this.toolActivityStartPromise,e&&this.toolActivity?.bindTranscript(e);return}if(!this.sessionKey)return;let s=this.sessionState.sessionId;this.toolActivityStartPromise=(async()=>{let r=this.buildToolActivityIntegration();try{await r.start(s,t,e),this.toolActivity=r}catch(n){throw await r.stop().catch(()=>{}),this.toolActivityStartPromise=null,n}})().catch(r=>{a.warn("[tool-activity] failed to start codex consolidator (non-fatal)",{backendSessionId:s,rolloutId:t,error:String(r)})}),await this.toolActivityStartPromise}startMobileEndWatcher(t){!this.sessionState||this.sessionState.sessionId!==t||(this.sessionState.mobileEndWatcher=this.appSyncClient.watchForMobileEnd(t,async()=>{a.info("Mobile ended session \u2014 sending desktop quit",{sessionId:t}),this.appSyncClient.stopHeartbeat(t),this.appSyncClient.cleanupSubscription(t);try{await this.appSyncClient.updateSession({sessionId:t,status:m.SessionStatus.INACTIVE}),a.info("Marked session INACTIVE on mobile-end (before tmux terminate)",{sessionId:t})}catch(i){a.warn("Failed to mark session INACTIVE on mobile-end",{sessionId:t,error:i})}let e=process.env[$];if(!e){a.warn("No tmux session set; skipping desktop self-terminate",{sessionId:t,expectedEnv:$});return}await Mi(e,Ci)}))}async endActiveSession(t,e=!0){if(!this.sessionState)return;let i=t,s=e,r=this.sessionState;if(this.terminalInputBlockedStates.add(r),await this.terminalInputChain.catch(()=>{}),this.sessionState!==r){a.warn("Session changed while waiting for terminal-input teardown barrier",{endingSessionId:r.sessionId,currentSessionId:this.sessionState?.sessionId,reason:i});return}if(a.info("Ending active session",{sessionId:r.sessionId,codexSessionId:r.codexSessionId,reason:i}),this.sessionState.mobileEndWatcher&&(this.sessionState.mobileEndWatcher.stop(),this.sessionState.mobileEndWatcher=void 0),this.userDecisionUnsubscribe){try{this.userDecisionUnsubscribe()}catch(n){a.warn("Error invoking onApplyUserDecision unsubscribe (non-fatal)",{error:n})}this.userDecisionUnsubscribe=null}if(this.orchestrationClient){try{await this.orchestrationClient.destroy()}catch(n){a.warn("Error destroying OrchestrationClient (non-fatal)",{error:n})}this.orchestrationClient=null}this.v1Bridge.clear(),this.appSyncClient.stopHeartbeat(this.sessionState.sessionId),this.stopE1TtlRefresh(),this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.subscribedSessionId=null,this.subscribedSessionState=null),await this.tmuxPaneObserver.stop();for(let n of this.deferredTmuxPromptCandidates.keys())n.sessionId===r.sessionId&&this.deferredTmuxPromptCandidates.delete(n);this.queuedPermissionRequestRegistrations.delete(r.sessionId),this.terminalRetirementRequested&&(i="shutdown",s=!0),i==="shutdown"&&this.sessionWatcher.stop(),this.toolActivityStartPromise&&(await this.toolActivityStartPromise.catch(()=>{}),this.toolActivityStartPromise=null),await this.logEntryChain.catch(()=>{}),this.toolActivity&&(await this.toolActivity.stop(),this.toolActivity=null);for(let n of this.toolActivityLegacyRecorders.values())n.disposeLegacyCoordination();this.toolActivityLegacyRecorders.clear(),this.terminalRetirementRequested&&(i="shutdown",s=!0),i==="daemon-handoff"&&this.persistDaemonHandoffState(r),(i==="new-codex-session-started"||i==="shutdown")&&(await this.exactClearOpenE1ForLifecycleEnd(r.sessionId),await this.drainPendingE1ResolutionsForLifecycleEnd(),this.stopE1TtlRefresh()),i!=="backend-generation-retired"&&i!=="daemon-handoff"&&(this.permissionRequestOccurrencesByCompletionKey.clear(),this.waitingPermissionRequests.clear()),this.pendingInteractivePrompt=null,this.queuedInteractivePrompts=[],this.isInitializingSession=!1,this.bufferedLogEntries=[],Ce(),this.sessionKey&&(m.keychainManager.clearSessionKey(this.sessionState.sessionId),this.sessionKey=null,this.sessionKeyGen=null),this.terminalRetirementRequested&&(s=!0),s?await this.retireHostedSession(this.sessionState.sessionId):a.info("Preserving active backend session for daemon handoff",{sessionId:this.sessionState.sessionId}),this.sessionState=null}async retireHostedSession(t){let e;for(let i=1;i<=Pe;i+=1)try{await this.appSyncClient.updateSession({sessionId:t,status:m.SessionStatus.INACTIVE});return}catch(s){e=s,a.warn("Failed to retire hosted Codex session",{sessionId:t,attempt:i,maxAttempts:Pe,error:s instanceof Error?s.message:String(s)}),i<Pe&&await new Promise(r=>setTimeout(r,ki*i))}throw new Error(`Failed to retire hosted Codex session ${t} after ${Pe} attempts: ${String(e)}`)}async cleanupDetachedWrapperArtifacts(){let t=process.env.CODEVIBE_CODEX_WRAPPER_PID;if(!t||!/^\d+$/.test(t))return;let e=process.env.TMPDIR||Ne.tmpdir(),i=[k.join(e,`codevibe-codex-server-${t}.pid`),k.join(e,`codevibe-codex-exit-${t}`),k.join(e,`codevibe-codex-tmux-session-${t}`)];for(let s of i)try{H.unlinkSync(s)}catch(r){r?.code!=="ENOENT"&&a.warn("Failed to remove detached-wrapper artifact",{ownedPath:s,error:String(r)})}}stop(t={}){return t.retireBackendSession!==!1&&(this.terminalRetirementRequested=!0),this.stopPromise?this.stopPromise:(this.stopPromise=this.doStop(),this.stopPromise)}async doStop(){a.info("Stopping CodeVibe Codex companion server"),this.stopTmuxLifecycleMonitor(),this.isStopping=!0,this.lifecycleGeneration+=1,this.sessionWatcher.stop();let t=this.launchSessionInitPromise,e=this.sessionStartedInitPromise,i=this.retiredSessionRecoveryPromise,s=this.hookEventChain,r=typeof this.sessionWatcher.waitForTranscriptAdmissions=="function"?this.sessionWatcher.waitForTranscriptAdmissions():Promise.resolve();await Promise.all([t?.catch(()=>{}),e?.catch(()=>{}),i?.catch(()=>{}),r.catch(()=>{}),s.catch(()=>{})]);try{let n=this.terminalRetirementRequested;await this.endActiveSession(n?"shutdown":"daemon-handoff",n),this.sessionWatcher.stop(),this.approvalDetector.shutdown(),Ce()}finally{await this.httpApi.stop(),this.appSyncClient.cleanupSubscriptions(),this.terminalRetirementRequested&&await this.cleanupDetachedWrapperArtifacts()}a.info("CodeVibe Codex companion server stopped")}};if(require.main===module){let o=new be;for(let t of Tt)process.on(t,()=>{a.info(`Received ${t}, evaluating terminal shutdown...`),o.stopForTerminalSignal(t).then(e=>{e&&process.exit(0)},e=>{a.error(`Failed to stop companion daemon after ${t}`,{error:e instanceof Error?e.message:String(e)}),process.exit(1)})});process.on("SIGUSR2",async()=>{a.info("Received SIGUSR2, handing off active session to replacement daemon..."),await o.stop({retireBackendSession:!1}),process.exit(0)}),(0,m.installDaemonProcessGuards)(a,{onFatal:()=>{o.stop().finally(()=>process.exit(1))}}),o.start().catch(t=>{a.error("Failed to start server:",t),process.exit(1)})}0&&(module.exports={CodexCompanionServer,TERMINAL_SHUTDOWN_SIGNALS,classifyTmuxHasSessionError,extractShellCommandFromPromptText,extractShellCommandPartsFromPromptText,restoreCodexPersistOptionCommand,shellCommandPartsMatchExpected});
|