From 0133a752eb75520e7fbd0ed231a693b6487c03d0 Mon Sep 17 00:00:00 2001 From: "lvce-editor-helper-bot[bot]" <155071229+lvce-editor-helper-bot[bot]@users.noreply.github.com> Date: Tue, 13 Jan 2026 16:45:29 +0000 Subject: [PATCH 1/2] chore: lint and fix code --- package-lock.json | 1509 ++++++++++++++++++++++++++++++++++++--------- package.json | 2 +- 2 files changed, 1203 insertions(+), 308 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8a2cc1be..7a689b5a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "license": "MIT", "devDependencies": { "@lerna/legacy-package-management": "^8.2.4", - "@lvce-editor/eslint-config": "^2.25.0", + "@lvce-editor/eslint-config": "^4.4.0", "eslint": "9.39.1", "lerna": "^8.2.4", "prettier": "^3.6.2", @@ -82,9 +82,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", - "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", + "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", "dev": true, "license": "MIT", "dependencies": { @@ -508,7 +508,6 @@ "integrity": "sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } @@ -519,7 +518,6 @@ "integrity": "sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } @@ -1026,45 +1024,58 @@ } }, "node_modules/@lvce-editor/eslint-config": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/@lvce-editor/eslint-config/-/eslint-config-2.25.0.tgz", - "integrity": "sha512-mV6Zu++g4ff8mPb9o9lTDrWcVFEzUVgITsrNIY3R7GVhs2y/EJ6PTuIX092X8hf/E8+wVxr4wdC/kQMbWSarbw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@lvce-editor/eslint-config/-/eslint-config-4.4.0.tgz", + "integrity": "sha512-aW7DMNW5d2XnUJFUgHr2fjxAgZov+Crroy8Rc+WrBr5fn1EhE8V0/wA7dbUcMuOKaSrWTg48ctF6MWPhfEZjQw==", "dev": true, "license": "MIT", "dependencies": { "@eslint/css": "0.14.1", - "@eslint/js": "9.39.1", + "@eslint/js": "9.39.2", "@eslint/json": "0.14.0", "@eslint/markdown": "7.5.1", - "@lvce-editor/eslint-plugin-github-actions": "2.25.0", - "@lvce-editor/eslint-plugin-tsconfig": "2.25.0", - "eslint-plugin-jest": "29.2.1", + "@lvce-editor/eslint-plugin-github-actions": "4.4.0", + "@lvce-editor/eslint-plugin-tsconfig": "4.4.0", + "eslint-plugin-jest": "29.12.1", "eslint-plugin-n": "17.23.1", - "eslint-plugin-package-json": "0.85.0", - "eslint-plugin-perfectionist": "4.15.1", + "eslint-plugin-package-json": "0.88.0", + "eslint-plugin-perfectionist": "5.2.0", "eslint-plugin-unicorn": "62.0.0", - "eslint-plugin-yml": "1.19.0", - "typescript-eslint": "8.48.0" + "eslint-plugin-yml": "1.19.1", + "typescript-eslint": "8.52.0" }, "peerDependencies": { "eslint": ">= 9" } }, + "node_modules/@lvce-editor/eslint-config/node_modules/@eslint/js": { + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", + "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, "node_modules/@lvce-editor/eslint-plugin-github-actions": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/@lvce-editor/eslint-plugin-github-actions/-/eslint-plugin-github-actions-2.25.0.tgz", - "integrity": "sha512-tGxCWbdwwY937IlqJPhiDIzWQrJyEBD+epiSLJU2indj1StE1kH2hG/HNy2GrMXJOcTADzMsE9e/AT8pHhdB/Q==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@lvce-editor/eslint-plugin-github-actions/-/eslint-plugin-github-actions-4.4.0.tgz", + "integrity": "sha512-WRNHCxkZI3BV3x8RzRoet7AsKAtf4ZDLKqrssCPFzZqjJjfyOIaIc1JCvs2A/aAzplyJBBraCld1C512d3QW3w==", "dev": true, "license": "MIT", "dependencies": { "eslint-compat-utils": "0.6.5", - "yaml-eslint-parser": "1.3.1" + "yaml-eslint-parser": "1.3.2" } }, "node_modules/@lvce-editor/eslint-plugin-tsconfig": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/@lvce-editor/eslint-plugin-tsconfig/-/eslint-plugin-tsconfig-2.25.0.tgz", - "integrity": "sha512-pYf170krqB3f2fSF9Sc/RWTzFHd5WGqM/xvwkGLief7Vvgd8ie2Epifw6tXv1UCC8jv21ectZQnIf/NiqFK51Q==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@lvce-editor/eslint-plugin-tsconfig/-/eslint-plugin-tsconfig-4.4.0.tgz", + "integrity": "sha512-ZEVo8SppyC4g7fHwD4590Fk6Jz+BUAsBROdl8Um3zxQaRrTZmm5ggRm8/+smEh6S3mxroWbGReehGF3WHbnRwA==", "dev": true, "license": "MIT", "dependencies": { @@ -1511,8 +1522,7 @@ "optional": true, "os": [ "darwin" - ], - "peer": true + ] }, "node_modules/@nx/nx-darwin-x64": { "version": "21.6.9", @@ -1526,8 +1536,7 @@ "optional": true, "os": [ "darwin" - ], - "peer": true + ] }, "node_modules/@nx/nx-freebsd-x64": { "version": "21.6.9", @@ -1541,8 +1550,7 @@ "optional": true, "os": [ "freebsd" - ], - "peer": true + ] }, "node_modules/@nx/nx-linux-arm-gnueabihf": { "version": "21.6.9", @@ -1556,8 +1564,7 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@nx/nx-linux-arm64-gnu": { "version": "21.6.9", @@ -1571,8 +1578,7 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@nx/nx-linux-arm64-musl": { "version": "21.6.9", @@ -1586,8 +1592,7 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@nx/nx-linux-x64-gnu": { "version": "21.6.9", @@ -1601,8 +1606,7 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@nx/nx-linux-x64-musl": { "version": "21.6.9", @@ -1616,8 +1620,7 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@nx/nx-win32-arm64-msvc": { "version": "21.6.9", @@ -1631,8 +1634,7 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@nx/nx-win32-x64-msvc": { "version": "21.6.9", @@ -1646,8 +1648,7 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@octokit/auth-token": { "version": "4.0.0", @@ -1665,6 +1666,7 @@ "integrity": "sha512-/g2d4sW9nUDJOMz3mabVQvOGhVa4e/BN/Um7yca9Bb2XTzPPnfTWHWQg+IsEYO7M3Vx+EXvaM/I2pJWIMun1bg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@octokit/auth-token": "^4.0.0", "@octokit/graphql": "^7.1.0", @@ -1962,110 +1964,686 @@ "dev": true, "license": "ISC", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", + "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.52.0.tgz", + "integrity": "sha512-okqtOgqu2qmZJ5iN4TWlgfF171dZmx2FzdOv2K/ixL2LZWDStL8+JgQerI2sa8eAEfoydG9+0V96m7V+P8yE1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.52.0", + "@typescript-eslint/type-utils": "8.52.0", + "@typescript-eslint/utils": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0", + "ignore": "^7.0.5", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.52.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/project-service": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.52.0.tgz", + "integrity": "sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.52.0", + "@typescript-eslint/types": "^8.52.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.52.0.tgz", + "integrity": "sha512-ixxqmmCcc1Nf8S0mS0TkJ/3LKcC8mruYJPOU6Ia2F/zUUR4pApW7LzrpU3JmtePbRUTes9bEqRc1Gg4iyRnDzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.52.0.tgz", + "integrity": "sha512-jl+8fzr/SdzdxWJznq5nvoI7qn2tNYV/ZBAEcaFMVXf+K6jmXvAFrgo/+5rxgnL152f//pDEAYAhhBAZGrVfwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.52.0.tgz", + "integrity": "sha512-LWQV1V4q9V4cT4H5JCIx3481iIFxH1UkVk+ZkGGAV1ZGcjGI9IoFOfg3O6ywz8QqCDEp7Inlg6kovMofsNRaGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.52.0.tgz", + "integrity": "sha512-XP3LClsCc0FsTK5/frGjolyADTh3QmsLp6nKd476xNI9CsSsLnmn4f0jrzNoAulmxlmNIpeXuHYeEQv61Q6qeQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.52.0", + "@typescript-eslint/tsconfig-utils": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.52.0.tgz", + "integrity": "sha512-wYndVMWkweqHpEpwPhwqE2lnD2DxC6WVLupU/DOt/0/v+/+iQbbzO3jOHjmBMnhu0DgLULvOaU4h4pwHYi2oRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/typescript-estree": "8.52.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.52.0.tgz", + "integrity": "sha512-ink3/Zofus34nmBsPjow63FP5M7IGff0RKAgqR6+CFpdk22M7aLwC9gOcLGYqr7MczLPzZVERW9hRog3O4n1sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.52.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.52.0.tgz", + "integrity": "sha512-iIACsx8pxRnguSYhHiMn2PvhvfpopO9FXHyn1mG5txZIsAaB6F0KwbFnUQN3KCiG3Jcuad/Cao2FAs1Wp7vAyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/typescript-estree": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.52.0.tgz", + "integrity": "sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.52.0", + "@typescript-eslint/types": "^8.52.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.52.0.tgz", + "integrity": "sha512-ixxqmmCcc1Nf8S0mS0TkJ/3LKcC8mruYJPOU6Ia2F/zUUR4pApW7LzrpU3JmtePbRUTes9bEqRc1Gg4iyRnDzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.52.0.tgz", + "integrity": "sha512-jl+8fzr/SdzdxWJznq5nvoI7qn2tNYV/ZBAEcaFMVXf+K6jmXvAFrgo/+5rxgnL152f//pDEAYAhhBAZGrVfwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.52.0.tgz", + "integrity": "sha512-LWQV1V4q9V4cT4H5JCIx3481iIFxH1UkVk+ZkGGAV1ZGcjGI9IoFOfg3O6ywz8QqCDEp7Inlg6kovMofsNRaGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.52.0.tgz", + "integrity": "sha512-XP3LClsCc0FsTK5/frGjolyADTh3QmsLp6nKd476xNI9CsSsLnmn4f0jrzNoAulmxlmNIpeXuHYeEQv61Q6qeQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.52.0", + "@typescript-eslint/tsconfig-utils": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.52.0.tgz", + "integrity": "sha512-ink3/Zofus34nmBsPjow63FP5M7IGff0RKAgqR6+CFpdk22M7aLwC9gOcLGYqr7MczLPzZVERW9hRog3O4n1sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.52.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.53.0.tgz", + "integrity": "sha512-Bl6Gdr7NqkqIP5yP9z1JU///Nmes4Eose6L1HwpuVHwScgDPPuEWbUVhvlZmb8hy0vX9syLk5EGNL700WcBlbg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.53.0", + "@typescript-eslint/types": "^8.53.0", + "debug": "^4.4.3" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@tybys/wasm-util": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", - "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.53.0.tgz", + "integrity": "sha512-kWNj3l01eOGSdVBnfAF2K1BTh06WS0Yet6JUgb9Cmkqaz3Jlu0fdVUjj9UI8gPidBWSMqDIglmEXifSgDT/D0g==", "dev": true, "license": "MIT", "dependencies": { - "tslib": "^2.4.0" + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/visitor-keys": "8.53.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.53.0.tgz", + "integrity": "sha512-K6Sc0R5GIG6dNoPdOooQ+KtvT5KCKAvTcY8h2rIuul19vxH5OTQk7ArKkd4yTzkw66WnNY0kPPzzcmWA+XRmiA==", "dev": true, "license": "MIT", - "dependencies": { - "@types/ms": "*" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/mdast": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", - "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "node_modules/@typescript-eslint/type-utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.52.0.tgz", + "integrity": "sha512-JD3wKBRWglYRQkAtsyGz1AewDu3mTc7NtRjR/ceTyGoPqmdS5oCdx/oZMWD5Zuqmo6/MpsYs0wp6axNt88/2EQ==", "dev": true, "license": "MIT", "dependencies": { - "@types/unist": "*" + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/typescript-estree": "8.52.0", + "@typescript-eslint/utils": "8.52.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@types/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", - "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", - "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.48.0.tgz", - "integrity": "sha512-XxXP5tL1txl13YFtrECECQYeZjBZad4fyd3cFV4a19LkAY/bIp9fev3US4S5fDVV2JaYFiKAZ/GRTOLer+mbyQ==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/project-service": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.52.0.tgz", + "integrity": "sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==", "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.48.0", - "@typescript-eslint/type-utils": "8.48.0", - "@typescript-eslint/utils": "8.48.0", - "@typescript-eslint/visitor-keys": "8.48.0", - "graphemer": "^1.4.0", - "ignore": "^7.0.0", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/tsconfig-utils": "^8.52.0", + "@typescript-eslint/types": "^8.52.0", + "debug": "^4.4.3" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2075,34 +2653,33 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.48.0", - "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", - "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.52.0.tgz", + "integrity": "sha512-ixxqmmCcc1Nf8S0mS0TkJ/3LKcC8mruYJPOU6Ia2F/zUUR4pApW7LzrpU3JmtePbRUTes9bEqRc1Gg4iyRnDzA==", "dev": true, "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0" + }, "engines": { - "node": ">= 4" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.48.0.tgz", - "integrity": "sha512-jCzKdm/QK0Kg4V4IK/oMlRZlY+QOcdjv89U2NgKHZk1CYTj82/RVSx1mV/0gqCVMJ/DA+Zf/S4NBWNF8GQ+eqQ==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.52.0.tgz", + "integrity": "sha512-jl+8fzr/SdzdxWJznq5nvoI7qn2tNYV/ZBAEcaFMVXf+K6jmXvAFrgo/+5rxgnL152f//pDEAYAhhBAZGrVfwg==", "dev": true, "license": "MIT", - "dependencies": { - "@typescript-eslint/scope-manager": "8.48.0", - "@typescript-eslint/types": "8.48.0", - "@typescript-eslint/typescript-estree": "8.48.0", - "@typescript-eslint/visitor-keys": "8.48.0", - "debug": "^4.3.4" - }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2111,41 +2688,39 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/project-service": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.48.0.tgz", - "integrity": "sha512-Ne4CTZyRh1BecBf84siv42wv5vQvVmgtk8AuiEffKTUo3DrBaGYZueJSxxBZ8fjk/N3DrgChH4TOdIOwOwiqqw==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.52.0.tgz", + "integrity": "sha512-LWQV1V4q9V4cT4H5JCIx3481iIFxH1UkVk+ZkGGAV1ZGcjGI9IoFOfg3O6ywz8QqCDEp7Inlg6kovMofsNRaGg==", "dev": true, "license": "MIT", - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.48.0", - "@typescript-eslint/types": "^8.48.0", - "debug": "^4.3.4" - }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.48.0.tgz", - "integrity": "sha512-uGSSsbrtJrLduti0Q1Q9+BF1/iFKaxGoQwjWOIVNJv0o6omrdyR8ct37m4xIl5Zzpkp69Kkmvom7QFTtue89YQ==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.52.0.tgz", + "integrity": "sha512-XP3LClsCc0FsTK5/frGjolyADTh3QmsLp6nKd476xNI9CsSsLnmn4f0jrzNoAulmxlmNIpeXuHYeEQv61Q6qeQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.48.0", - "@typescript-eslint/visitor-keys": "8.48.0" + "@typescript-eslint/project-service": "8.52.0", + "@typescript-eslint/tsconfig-utils": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2153,14 +2728,23 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.48.0.tgz", - "integrity": "sha512-WNebjBdFdyu10sR1M4OXTt2OkMd5KWIL+LLfeH9KhgP+jzfDV/LI3eXzwJ1s9+Yc0Kzo2fQCdY/OpdusCMmh6w==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.52.0.tgz", + "integrity": "sha512-wYndVMWkweqHpEpwPhwqE2lnD2DxC6WVLupU/DOt/0/v+/+iQbbzO3jOHjmBMnhu0DgLULvOaU4h4pwHYi2oRQ==", "dev": true, "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/typescript-estree": "8.52.0" + }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2169,21 +2753,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.48.0.tgz", - "integrity": "sha512-zbeVaVqeXhhab6QNEKfK96Xyc7UQuoFWERhEnj3mLVnUWrQnv15cJNseUni7f3g557gm0e46LZ6IJ4NJVOgOpw==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.52.0.tgz", + "integrity": "sha512-ink3/Zofus34nmBsPjow63FP5M7IGff0RKAgqR6+CFpdk22M7aLwC9gOcLGYqr7MczLPzZVERW9hRog3O4n1sQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.48.0", - "@typescript-eslint/typescript-estree": "8.48.0", - "@typescript-eslint/utils": "8.48.0", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" + "@typescript-eslint/types": "8.52.0", + "eslint-visitor-keys": "^4.2.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2191,16 +2773,100 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" } }, "node_modules/@typescript-eslint/types": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.48.0.tgz", - "integrity": "sha512-cQMcGQQH7kwKoVswD1xdOytxQR60MWKM1di26xSUtxehaDs/32Zpqsu5WJlXTtTTqyAVK8R7hvsUnIXRS+bjvA==", + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.0.tgz", + "integrity": "sha512-Bmh9KX31Vlxa13+PqPvt4RzKRN1XORYSLlAE+sO1i28NkisGbTtSLFVB3l7PWdHtR3E0mVMuC7JilWJ99m2HxQ==", "dev": true, "license": "MIT", "engines": { @@ -2212,21 +2878,21 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.48.0.tgz", - "integrity": "sha512-ljHab1CSO4rGrQIAyizUS6UGHHCiAYhbfcIZ1zVJr5nMryxlXMVWS3duFPSKvSUbFPwkXMFk1k0EMIjub4sRRQ==", + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.53.0.tgz", + "integrity": "sha512-pw0c0Gdo7Z4xOG987u3nJ8akL9093yEEKv8QTJ+Bhkghj1xyj8cgPaavlr9rq8h7+s6plUJ4QJYw2gCZodqmGw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.48.0", - "@typescript-eslint/tsconfig-utils": "8.48.0", - "@typescript-eslint/types": "8.48.0", - "@typescript-eslint/visitor-keys": "8.48.0", - "debug": "^4.3.4", - "minimatch": "^9.0.4", - "semver": "^7.6.0", + "@typescript-eslint/project-service": "8.53.0", + "@typescript-eslint/tsconfig-utils": "8.53.0", + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/visitor-keys": "8.53.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", "tinyglobby": "^0.2.15", - "ts-api-utils": "^2.1.0" + "ts-api-utils": "^2.4.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2289,6 +2955,7 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -2327,16 +2994,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.48.0.tgz", - "integrity": "sha512-yTJO1XuGxCsSfIVt1+1UrLHtue8xz16V8apzPYI06W0HbEbEWHxHXgZaAgavIkoh+GeV6hKKd5jm0sS6OYxWXQ==", + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.53.0.tgz", + "integrity": "sha512-XDY4mXTez3Z1iRDI5mbRhH4DFSt46oaIFsLg+Zn97+sYrXACziXSQcSelMybnVZ5pa1P6xYkPr5cMJyunM1ZDA==", "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.48.0", - "@typescript-eslint/types": "8.48.0", - "@typescript-eslint/typescript-estree": "8.48.0" + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.53.0", + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/typescript-estree": "8.53.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2351,13 +3018,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.48.0.tgz", - "integrity": "sha512-T0XJMaRPOH3+LBbAfzR2jalckP1MSG/L9eUtY0DEzUyVaXJ/t6zN0nR7co5kz0Jko/nkSYCBRkz1djvjajVTTg==", + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.53.0.tgz", + "integrity": "sha512-LZ2NqIHFhvFwxG0qZeLL9DvdNAHPGCY5dIRwBhyYeU+LfLhcStE1ImjsuTG/WaVh3XysGaeLW8Rqq7cGkPCFvw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.48.0", + "@typescript-eslint/types": "8.53.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -2442,6 +3109,7 @@ "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2763,6 +3431,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "baseline-browser-mapping": "^2.8.25", "caniuse-lite": "^1.0.30001754", @@ -3909,31 +4578,6 @@ "dev": true, "license": "MIT" }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/end-of-stream": { "version": "1.4.5", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", @@ -4089,6 +4733,7 @@ "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.1", @@ -4243,9 +4888,9 @@ } }, "node_modules/eslint-plugin-jest": { - "version": "29.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-29.2.1.tgz", - "integrity": "sha512-0WLIezrIxitUGbjMIGwznVzSIp0uFJV0PZ2fiSvpyVcxe+QMXKUt7MRhUpzdbctnnLwiOTOFkACplgB0wAglFw==", + "version": "29.12.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-29.12.1.tgz", + "integrity": "sha512-Rxo7r4jSANMBkXLICJKS0gjacgyopfNAsoS0e3R9AHnjoKuQOaaPfmsDJPi8UWwygI099OV/K/JhpYRVkxD4AA==", "dev": true, "license": "MIT", "dependencies": { @@ -4322,9 +4967,9 @@ } }, "node_modules/eslint-plugin-package-json": { - "version": "0.85.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-package-json/-/eslint-plugin-package-json-0.85.0.tgz", - "integrity": "sha512-MrOxFvhbqLuk4FIPG9v3u9Amn0n137J8LKILHvgfxK3rRyAHEVzuZM0CtpXFTx7cx4LzmAzONtlpjbM0UFNuTA==", + "version": "0.88.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-package-json/-/eslint-plugin-package-json-0.88.0.tgz", + "integrity": "sha512-cu3/rvFDKbVSzmtjP4bS4oqyLDLVHXG7clJG3TS/U7g+JUWb1/yQ3l2a6W1aFLQiS9gmD2/qvNCTbIlHC33q2A==", "dev": true, "license": "MIT", "dependencies": { @@ -4333,7 +4978,7 @@ "detect-indent": "^7.0.2", "detect-newline": "^4.0.1", "eslint-fix-utils": "~0.4.0", - "package-json-validator": "~0.59.0", + "package-json-validator": "~0.59.1", "semver": "^7.7.3", "sort-object-keys": "^2.0.0", "sort-package-json": "^3.4.0", @@ -4361,18 +5006,17 @@ } }, "node_modules/eslint-plugin-perfectionist": { - "version": "4.15.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-perfectionist/-/eslint-plugin-perfectionist-4.15.1.tgz", - "integrity": "sha512-MHF0cBoOG0XyBf7G0EAFCuJJu4I18wy0zAoT1OHfx2o6EOx1EFTIzr2HGeuZa1kDcusoX0xJ9V7oZmaeFd773Q==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-perfectionist/-/eslint-plugin-perfectionist-5.2.0.tgz", + "integrity": "sha512-rLD4VyA6sxcCPlG/koqjp0D46JTNRURSDs22Jr1JeVbOiu1BoeRdROnJoqDoGESuXbwxvGEnMSqClX/Q3HSMig==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "^8.38.0", - "@typescript-eslint/utils": "^8.38.0", + "@typescript-eslint/utils": "^8.51.0", "natural-orderby": "^5.0.0" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^20.0.0 || >=22.0.0" }, "peerDependencies": { "eslint": ">=8.45.0" @@ -4441,9 +5085,9 @@ } }, "node_modules/eslint-plugin-yml": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-1.19.0.tgz", - "integrity": "sha512-S+4GbcCWksFKAvFJtf0vpdiCkZZvDJCV4Zsi9ahmYkYOYcf+LRqqzvzkb/ST7vTYV6sFwXOvawzYyL/jFT2nQA==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-1.19.1.tgz", + "integrity": "sha512-bYkOxyEiXh9WxUhVYPELdSHxGG5pOjCSeJOVkfdIyj6tuiHDxrES2WAW1dBxn3iaZQey57XflwLtCYRcNPOiOg==", "dev": true, "license": "MIT", "dependencies": { @@ -5456,16 +6100,9 @@ "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true, - "license": "MIT" + "license": "ISC" }, "node_modules/handlebars": { "version": "4.7.8", @@ -6361,12 +6998,11 @@ } }, "node_modules/jsonc-eslint-parser": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/jsonc-eslint-parser/-/jsonc-eslint-parser-2.4.1.tgz", - "integrity": "sha512-uuPNLJkKN8NXAlZlQ6kmUF9qO+T6Kyd7oV4+/7yy8Jz6+MZNyhPq8EdLpdfnPVzUC8qSf1b4j1azKaGnFsjmsw==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jsonc-eslint-parser/-/jsonc-eslint-parser-2.4.2.tgz", + "integrity": "sha512-1e4qoRgnn448pRuMvKGsFFymUCquZV0mpGgOyIKNgD3JVDTsVJyRBGH/Fm0tBb8WsWGgmB1mDe6/yJMQM37DUA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "acorn": "^8.5.0", "eslint-visitor-keys": "^3.0.0", @@ -6386,7 +7022,6 @@ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "license": "Apache-2.0", - "peer": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -6400,7 +7035,6 @@ "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "dependencies": { "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", @@ -8830,7 +9464,6 @@ "dev": true, "hasInstallScript": true, "license": "MIT", - "peer": true, "dependencies": { "@napi-rs/wasm-runtime": "0.2.4", "@yarnpkg/lockfile": "^1.1.0", @@ -8903,7 +9536,6 @@ "integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@sinclair/typebox": "^0.34.0" }, @@ -8916,8 +9548,7 @@ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.41.tgz", "integrity": "sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/nx/node_modules/brace-expansion": { "version": "2.0.2", @@ -8925,7 +9556,6 @@ "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -8936,7 +9566,6 @@ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -8954,7 +9583,6 @@ "integrity": "sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@jest/diff-sequences": "30.0.1", "@jest/get-type": "30.1.0", @@ -8971,7 +9599,6 @@ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -8988,7 +9615,6 @@ "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "bl": "^4.0.3", "chalk": "^4.1.0", @@ -9012,7 +9638,6 @@ "integrity": "sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@jest/schemas": "30.0.5", "ansi-styles": "^5.2.0", @@ -9028,7 +9653,6 @@ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=10" }, @@ -9042,7 +9666,6 @@ "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", "dev": true, "license": "ISC", - "peer": true, "bin": { "semver": "bin/semver.js" }, @@ -9301,9 +9924,9 @@ "license": "BlueOak-1.0.0" }, "node_modules/package-json-validator": { - "version": "0.59.0", - "resolved": "https://registry.npmjs.org/package-json-validator/-/package-json-validator-0.59.0.tgz", - "integrity": "sha512-WBTDKtO9pBa9GmA1sPbQHqlWxRdnHNfLFIIA49PPgV7px/rG27gHX57DWy77qyu374fla4veaIHy+gA+qRRuug==", + "version": "0.59.1", + "resolved": "https://registry.npmjs.org/package-json-validator/-/package-json-validator-0.59.1.tgz", + "integrity": "sha512-cLk5/c/OJX9nA9rl3d2Gymrxv2lqhOBn3+1+D6ZqPNjL6ZyhcjVDUfKyXh+nDyQjGVEQfPoVIE5kLrZ2zn6nDQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9316,7 +9939,7 @@ "pjv": "lib/bin/pjv.mjs" }, "engines": { - "node": "^20.19.0 || >=22.12.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" } }, "node_modules/package-json-validator/node_modules/ansi-regex": { @@ -10694,26 +11317,26 @@ } }, "node_modules/sort-object-keys": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-2.0.1.tgz", - "integrity": "sha512-R89fO+z3x7hiKPXX5P0qim+ge6Y60AjtlW+QQpRozrrNcR1lw9Pkpm5MLB56HoNvdcLHL4wbpq16OcvGpEDJIg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-2.1.0.tgz", + "integrity": "sha512-SOiEnthkJKPv2L6ec6HMwhUcN0/lppkeYuN1x63PbyPRrgSPIuBJCiYxYyvWRTtjMlOi14vQUCGUJqS6PLVm8g==", "dev": true, "license": "MIT" }, "node_modules/sort-package-json": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-3.4.0.tgz", - "integrity": "sha512-97oFRRMM2/Js4oEA9LJhjyMlde+2ewpZQf53pgue27UkbEXfHJnDzHlUxQ/DWUkzqmp7DFwJp8D+wi/TYeQhpA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-3.6.0.tgz", + "integrity": "sha512-fyJsPLhWvY7u2KsKPZn1PixbXp+1m7V8NWqU8CvgFRbMEX41Ffw1kD8n0CfJiGoaSfoAvbrqRRl/DcHO8omQOQ==", "dev": true, "license": "MIT", "dependencies": { - "detect-indent": "^7.0.1", + "detect-indent": "^7.0.2", "detect-newline": "^4.0.1", - "git-hooks-list": "^4.0.0", + "git-hooks-list": "^4.1.1", "is-plain-obj": "^4.1.0", - "semver": "^7.7.1", - "sort-object-keys": "^1.1.3", - "tinyglobby": "^0.2.12" + "semver": "^7.7.3", + "sort-object-keys": "^2.0.1", + "tinyglobby": "^0.2.15" }, "bin": { "sort-package-json": "cli.js" @@ -10722,6 +11345,24 @@ "node": ">=20" } }, + "node_modules/sort-package-json/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, "node_modules/sort-package-json/node_modules/is-plain-obj": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", @@ -10735,6 +11376,20 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/sort-package-json/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/sort-package-json/node_modules/semver": { "version": "7.7.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", @@ -10748,12 +11403,22 @@ "node": ">=10" } }, - "node_modules/sort-package-json/node_modules/sort-object-keys": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz", - "integrity": "sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==", + "node_modules/sort-package-json/node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } }, "node_modules/source-map": { "version": "0.6.1", @@ -11234,6 +11899,7 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -11277,7 +11943,6 @@ "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true, "license": "MIT", - "peer": true, "bin": { "tree-kill": "cli.js" } @@ -11303,9 +11968,9 @@ } }, "node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", + "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", "dev": true, "license": "MIT", "engines": { @@ -11437,6 +12102,7 @@ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -11446,16 +12112,139 @@ } }, "node_modules/typescript-eslint": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.48.0.tgz", - "integrity": "sha512-fcKOvQD9GUn3Xw63EgiDqhvWJ5jsyZUaekl3KVpGsDJnN46WJTe3jWxtQP9lMZm1LJNkFLlTaWAxK2vUQR+cqw==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.52.0.tgz", + "integrity": "sha512-atlQQJ2YkO4pfTVQmQ+wvYQwexPDOIgo+RaVcD7gHgzy/IQA+XTyuxNM9M9TVXvttkF7koBHmcwisKdOAf2EcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.52.0", + "@typescript-eslint/parser": "8.52.0", + "@typescript-eslint/typescript-estree": "8.52.0", + "@typescript-eslint/utils": "8.52.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/typescript-eslint/node_modules/@typescript-eslint/project-service": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.52.0.tgz", + "integrity": "sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.52.0", + "@typescript-eslint/types": "^8.52.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/typescript-eslint/node_modules/@typescript-eslint/scope-manager": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.52.0.tgz", + "integrity": "sha512-ixxqmmCcc1Nf8S0mS0TkJ/3LKcC8mruYJPOU6Ia2F/zUUR4pApW7LzrpU3JmtePbRUTes9bEqRc1Gg4iyRnDzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/typescript-eslint/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.52.0.tgz", + "integrity": "sha512-jl+8fzr/SdzdxWJznq5nvoI7qn2tNYV/ZBAEcaFMVXf+K6jmXvAFrgo/+5rxgnL152f//pDEAYAhhBAZGrVfwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/typescript-eslint/node_modules/@typescript-eslint/types": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.52.0.tgz", + "integrity": "sha512-LWQV1V4q9V4cT4H5JCIx3481iIFxH1UkVk+ZkGGAV1ZGcjGI9IoFOfg3O6ywz8QqCDEp7Inlg6kovMofsNRaGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/typescript-eslint/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.52.0.tgz", + "integrity": "sha512-XP3LClsCc0FsTK5/frGjolyADTh3QmsLp6nKd476xNI9CsSsLnmn4f0jrzNoAulmxlmNIpeXuHYeEQv61Q6qeQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.52.0", + "@typescript-eslint/tsconfig-utils": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/visitor-keys": "8.52.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/typescript-eslint/node_modules/@typescript-eslint/utils": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.52.0.tgz", + "integrity": "sha512-wYndVMWkweqHpEpwPhwqE2lnD2DxC6WVLupU/DOt/0/v+/+iQbbzO3jOHjmBMnhu0DgLULvOaU4h4pwHYi2oRQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/eslint-plugin": "8.48.0", - "@typescript-eslint/parser": "8.48.0", - "@typescript-eslint/typescript-estree": "8.48.0", - "@typescript-eslint/utils": "8.48.0" + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.52.0", + "@typescript-eslint/types": "8.52.0", + "@typescript-eslint/typescript-estree": "8.52.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -11469,6 +12258,112 @@ "typescript": ">=4.8.4 <6.0.0" } }, + "node_modules/typescript-eslint/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.52.0.tgz", + "integrity": "sha512-ink3/Zofus34nmBsPjow63FP5M7IGff0RKAgqR6+CFpdk22M7aLwC9gOcLGYqr7MczLPzZVERW9hRog3O4n1sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.52.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/typescript-eslint/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/typescript-eslint/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/typescript-eslint/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/typescript-eslint/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/typescript-eslint/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/typescript-eslint/node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, "node_modules/uglify-js": { "version": "3.19.3", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", @@ -11683,9 +12578,9 @@ } }, "node_modules/validate-npm-package-name": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-7.0.0.tgz", - "integrity": "sha512-bwVk/OK+Qu108aJcMAEiU4yavHUI7aN20TgZNBj9MR2iU1zPUl1Z1Otr7771ExfYTPTvfN8ZJ1pbr5Iklgt4xg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-7.0.2.tgz", + "integrity": "sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A==", "dev": true, "license": "ISC", "engines": { @@ -11981,9 +12876,9 @@ } }, "node_modules/yaml-eslint-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-1.3.1.tgz", - "integrity": "sha512-MdSgP9YA9QjtAO2+lt4O7V2bnH22LPnfeVLiQqjY3cOyn8dy/Ief8otjIe6SPPTK03nM7O3Yl0LTfWuF7l+9yw==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-1.3.2.tgz", + "integrity": "sha512-odxVsHAkZYYglR30aPYRY4nUGJnoJ2y1ww2HDvZALo0BDETv9kWbi16J52eHs+PWRNmF4ub6nZqfVOeesOvntg==", "dev": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index 0db2d599..db2002a6 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ }, "devDependencies": { "@lerna/legacy-package-management": "^8.2.4", - "@lvce-editor/eslint-config": "^2.25.0", + "@lvce-editor/eslint-config": "^4.4.0", "eslint": "9.39.1", "lerna": "^8.2.4", "prettier": "^3.6.2", From 2c9c383ef0e460597a7782e227661043855cad10 Mon Sep 17 00:00:00 2001 From: Le Vivilet Date: Tue, 13 Jan 2026 21:00:48 +0100 Subject: [PATCH 2/2] fix --- .github/workflows/ci.yml | 4 +- .github/workflows/pr.yml | 4 +- .github/workflows/release.yml | 8 +- .../AcceptWatchExpressionEdit.ts | 10 +- .../AddWatchExpression/AddWatchExpression.ts | 8 +- .../src/parts/CallStackItem/CallStackItem.ts | 4 +- .../CancelWatchExpressionEdit.ts | 6 +- .../CollapseScopeChain/CollapseScopeChain.ts | 8 +- .../src/parts/CommandMap/CommandMap.ts | 10 +- .../debug-worker/src/parts/Create/Create.ts | 54 ++--- .../CreateDefaultState/CreateDefaultState.ts | 54 ++--- .../src/parts/DebugButton/DebugButton.ts | 4 +- .../src/parts/DebugDisplay/DebugDisplay.ts | 20 +- .../src/parts/DebugRow/DebugRow.ts | 26 +-- .../debug-worker/src/parts/Diff2/Diff2.ts | 2 +- .../DomEventListener/DomEventListener.ts | 2 +- .../EditWatchExpression.ts | 8 +- .../src/parts/EditorWorker/EditorWorker.ts | 2 +- .../src/parts/ErrorHandling/ErrorHandling.ts | 2 +- .../ExpandScopeChain/ExpandScopeChain.ts | 4 +- .../src/parts/ExtensionHost/ExtensionHost.ts | 2 +- .../src/parts/GetActionDom/GetActionDom.ts | 10 +- .../src/parts/GetActionsDom/GetActionsDom.ts | 4 +- .../src/parts/GetArrowNodes/GetArrowNodes.ts | 8 +- .../src/parts/GetCallStack/GetCallStack.ts | 2 +- .../GetChevronVirtualDom.ts | 8 +- .../GetCollapsedScopeChain.ts | 6 +- .../GetDebugButtonHandler.ts | 4 +- .../GetDebugButtonVirtualDom.ts | 12 +- .../parts/GetDebugButtons/GetDebugButtons.ts | 28 +-- .../GetDebugPausedMessage.ts | 4 +- .../GetDebugPropertyValueLabel.ts | 10 +- .../GetDebugValueClassName.ts | 20 +- .../src/parts/GetHighlight/GetHighlight.ts | 12 +- .../GetInnerChildScopeChain.ts | 10 +- .../parts/GetKeyBindings/GetKeyBindings.ts | 46 ++--- .../parts/GetMenuEntries/GetMenuEntries.ts | 2 +- .../GetMenuEntriesWatchExpression.ts | 12 +- .../GetNewWatchExpressionsAccept.ts | 2 +- .../GetNewWatchExpressionsEvaluate.ts | 2 +- .../src/parts/GetOpenInfo/GetOpenInfo.ts | 12 +- .../parts/GetPausedInfo2/GetPausedInfo2.ts | 10 +- .../src/parts/GetRenderer/GetRenderer.ts | 16 +- .../GetRunAndDebugButtonsVirtualDom.ts | 6 +- .../GetRunAndDebugRowRenderer.ts | 28 +-- ...tRunAndDebugRowSectionHeadingVirtualDom.ts | 16 +- .../GetRunAndDebugVirtualDom2.ts | 6 +- .../GetRunAndDebugVisibleRows.ts | 16 +- .../GetRunAndDebugVisibleRowsBreakPoints.ts | 66 +++--- .../GetRunAndDebugVisibleRowsCallStack.ts | 70 +++---- .../GetRunAndDebugVisibleRowsScope.ts | 50 ++--- .../GetRunAndDebugVisibleRowsWatch.ts | 18 +- .../GetRunAndDebugVisibleRowsWatchContent.ts | 48 ++--- .../src/parts/GetScopeChain/GetScopeChain.ts | 26 +-- .../GetScopeRenderer/GetScopeRenderer.ts | 8 +- .../GetSectionClickHandler.ts | 8 +- .../parts/GetWatchActions/GetWatchActions.ts | 4 +- .../HandleClickCallstackItem.ts | 2 +- .../HandleClickPauseOnExceptions.ts | 4 +- .../HandleClickPauseOnUncaughtExceptions.ts | 4 +- .../HandleClickScopeChainIndex.ts | 2 +- .../HandleClickSectionBreakPoints.ts | 2 +- .../HandleClickSectionCallstack.ts | 2 +- .../HandleClickSectionScope.ts | 2 +- .../HandleClickSectionWatch.ts | 4 +- .../src/parts/HandlePaused/HandlePaused.ts | 2 +- .../src/parts/HandlePaused2/HandlePaused2.ts | 14 +- .../src/parts/HandleResumed/HandleResumed.ts | 6 +- .../src/parts/Highlight/Highlight.ts | 4 +- .../src/parts/KeyBinding/KeyBinding.ts | 2 +- .../src/parts/LoadContent/LoadContent.ts | 12 +- .../src/parts/MenuEntry/MenuEntry.ts | 4 +- .../OpenAtPausedLocation.ts | 2 +- .../src/parts/OpenInfo/OpenInfo.ts | 4 +- .../debug-worker/src/parts/OpenUri/OpenUri.ts | 2 +- .../src/parts/PausedInfo2/PausedInfo2.ts | 8 +- .../RefreshWatchExpression.ts | 2 +- .../debug-worker/src/parts/Render2/Render2.ts | 2 +- .../src/parts/RenderActions/RenderActions.ts | 2 +- .../parts/RenderCallStack/RenderCallStack.ts | 18 +- .../parts/RenderCheckBox/RenderCheckBox.ts | 22 +- .../RenderDebugValue/RenderDebugValue.ts | 24 +-- .../src/parts/RenderFocus/RenderFocus.ts | 2 +- .../RenderInputField/RenderInputField.ts | 22 +- .../RenderInputValue/RenderInputValue.ts | 2 +- .../src/parts/RenderScope/RenderScope.ts | 16 +- .../parts/RenderSelection/RenderSelection.ts | 2 +- .../RenderWatchExpression.ts | 22 +- .../RenderWatchMessage/RenderWatchMessage.ts | 10 +- .../parts/RendererWorker/RendererWorker.ts | 4 +- .../src/parts/RestoreState/RestoreState.ts | 8 +- .../RestoreWatchExpressions.ts | 4 +- .../src/parts/RestoredState/RestoredState.ts | 8 +- .../RunAndDebugRowRenderers.ts | 8 +- .../RunAndDebugState/RunAndDebugState.ts | 2 +- .../RunAndDebugStates/RunAndDebugStates.ts | 2 +- .../src/parts/SaveState/SaveState.ts | 18 +- .../src/parts/SavedState/SavedState.ts | 8 +- .../ScopeRenderers/GetScopeExceptionRows.ts | 20 +- .../ScopeRenderers/GetScopePropertyRows.ts | 20 +- .../parts/ScopeRenderers/GetScopeScopeRows.ts | 18 +- .../parts/ScopeRenderers/GetScopeThisRows.ts | 18 +- .../parts/WatchExpression/WatchExpression.ts | 2 +- .../test/AcceptWatchExpressionEdit.test.ts | 18 +- .../test/AddWatchExpression.test.ts | 2 +- .../test/CancelWatchExpressionEdit.test.ts | 6 +- .../test/CollapseScopeChain.test.ts | 28 +-- .../debug-worker/test/CreateScriptMap.test.ts | 4 +- .../debug-worker/test/DebugDisplay.test.ts | 2 +- .../test/DeleteWatchExpression.test.ts | 2 +- packages/debug-worker/test/DiffItems.test.ts | 4 +- .../debug-worker/test/DiffSelection.test.ts | 8 +- packages/debug-worker/test/DiffValue.test.ts | 6 +- .../test/EvaluateWatchExpressions.test.ts | 16 +- .../test/ExpandScopeChain.test.ts | 32 +-- .../debug-worker/test/GetActionDom.test.ts | 40 ++-- .../debug-worker/test/GetArrowNodes.test.ts | 8 +- .../debug-worker/test/GetCallStack.test.ts | 8 +- .../test/GetChevronVirtualDom.test.ts | 16 +- .../test/GetDebugPropertyValueLabel.test.ts | 22 +- .../GetDebugPropertyValueLabelArray.test.ts | 8 +- .../debug-worker/test/GetHighlight.test.ts | 26 +-- .../test/GetInnerChildScopeChain.test.ts | 14 +- .../debug-worker/test/GetOpenInfo.test.ts | 14 +- .../debug-worker/test/GetPausedInfo2.test.ts | 10 +- ...ndDebugRowSectionHeadingVirtualDom.test.ts | 60 +++--- .../test/GetRunAndDebugRowVirtualDom.test.ts | 10 +- .../test/GetRunAndDebugVisibleRows.test.ts | 192 +++++++++--------- ...GetRunAndDebugVisibleRowsCallStack.test.ts | 116 +++++------ .../GetRunAndDebugVisibleRowsScope.test.ts | 74 +++---- .../GetRunAndDebugVisibleRowsWatch.test.ts | 134 ++++++------ ...RunAndDebugVisibleRowsWatchContent.test.ts | 106 +++++----- .../debug-worker/test/GetScopeChain.test.ts | 6 +- .../test/GetScopeExceptionRows.test.ts | 24 +-- .../test/GetScopePropertyRows.test.ts | 24 +-- .../test/GetScopeScopeRows.test.ts | 18 +- .../test/GetScopeThisRows.test.ts | 24 +-- .../test/GetVisibleScopeItems.test.ts | 80 ++++---- .../debug-worker/test/GetWatchActions.test.ts | 4 +- .../debug-worker/test/HandleArrowLeft.test.ts | 40 ++-- .../test/HandleArrowRight.test.ts | 40 ++-- .../test/HandleClickCallstackItem.test.ts | 10 +- .../test/HandleClickSectionAction.test.ts | 2 +- .../HandleClickSectionBreakPoints.test.ts | 2 +- .../test/HandleClickWatchExpression.test.ts | 6 +- .../HandleClickWatchExpressionDelete.test.ts | 2 +- .../debug-worker/test/HandleDelete.test.ts | 12 +- .../debug-worker/test/HandleInputBlur.test.ts | 2 +- packages/debug-worker/test/HandleNew.test.ts | 2 +- .../debug-worker/test/HandleRename.test.ts | 44 ++-- .../debug-worker/test/HandleSpace.test.ts | 24 +-- packages/debug-worker/test/Listen.test.ts | 2 +- packages/debug-worker/test/Main.test.ts | 2 +- .../test/OpenAtPausedLocation.test.ts | 12 +- packages/debug-worker/test/OpenUri.test.ts | 2 +- .../test/RefreshWatchExpression.test.ts | 14 +- .../test/RemoveWatchExpression.test.ts | 2 +- .../debug-worker/test/RenderCheckBox.test.ts | 34 ++-- .../debug-worker/test/RenderFocus.test.ts | 4 +- .../test/RenderInputField.test.ts | 32 +-- .../test/RenderInputValue.test.ts | 4 +- .../debug-worker/test/RenderItems.test.ts | 10 +- .../test/RenderPauseOnExceptions.test.ts | 2 +- .../debug-worker/test/RenderSelection.test.ts | 10 +- .../test/RenderWatchExpression.test.ts | 36 ++-- .../test/RenderWatchMessage.test.ts | 24 +-- .../debug-worker/test/RestoreState.test.ts | 24 +-- .../test/RestoreWatchExpressions.test.ts | 6 +- .../test/RunAndDebugRowRenderers.test.ts | 132 ++++++------ packages/debug-worker/test/SaveState.test.ts | 76 +++---- .../test/SelectFirstIndex.test.ts | 80 ++++---- .../debug-worker/test/SelectIndex.test.ts | 64 +++--- .../debug-worker/test/SelectLastIndex.test.ts | 80 ++++---- .../debug-worker/test/SelectNextRow.test.ts | 72 +++---- .../test/SelectPreviousRow.test.ts | 60 +++--- ...ebug-provider-breakpoints-accessibility.ts | 2 +- ...provider-breakpoints-disable-with-space.ts | 2 +- ...-provider-breakpoints-enable-with-space.ts | 2 +- ....debug-provider-callstack-accessibility.ts | 2 +- .../sample.debug-provider-error-not-found.ts | 2 +- ...mple.debug-provider-paused-on-exception.ts | 2 +- ...mple.debug-provider-scope-accessibility.ts | 2 +- .../e2e/src/sample.debug-provider-scope.ts | 2 +- ...ample.debug-provider-watch-accessiblity.ts | 2 +- ...ple.debug-provider-watch-expression-add.ts | 2 +- ...le.debug-provider-watch-expression-edit.ts | 2 +- ...ebug-provider-watch-expression-evaluate.ts | 2 +- 187 files changed, 1690 insertions(+), 1690 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a6ed2ab2..d9b0de78 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,7 +23,7 @@ jobs: runs-on: ${{ matrix.os }} timeout-minutes: 30 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: node-version-file: '.nvmrc' @@ -31,7 +31,7 @@ jobs: id: nodeModulesCacheKey run: echo "value=$(node packages/build/src/computeNodeModulesCacheKey.ts)" >> $GITHUB_OUTPUT shell: bash - - uses: actions/cache@v4 + - uses: actions/cache@v5 id: npm-cache with: path: '**/node_modules' diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 29597f7e..898cbe2b 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -14,7 +14,7 @@ jobs: runs-on: ${{ matrix.os }} timeout-minutes: 30 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: node-version-file: '.nvmrc' @@ -22,7 +22,7 @@ jobs: id: nodeModulesCacheKey run: echo "value=$(node packages/build/src/computeNodeModulesCacheKey.js)" >> $GITHUB_OUTPUT shell: bash - - uses: actions/cache@v4 + - uses: actions/cache@v5 id: npm-cache with: path: '**/node_modules' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 5e44e37c..3d0fabd9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -43,7 +43,7 @@ jobs: os: [windows-2025, macos-15, ubuntu-24.04] runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: node-version-file: '.nvmrc' @@ -52,7 +52,7 @@ jobs: id: nodeModulesCacheKey run: echo "value=$(node packages/build/src/computeNodeModulesCacheKey.js)" >> $GITHUB_OUTPUT shell: bash - - uses: actions/cache@v4 + - uses: actions/cache@v5 id: npm-cache with: path: '**/node_modules' @@ -81,7 +81,7 @@ jobs: run: npm run measure env: PLAYWRIGHT_BROWSERS_PATH: 0 - - uses: actions/upload-artifact@v5 + - uses: actions/upload-artifact@v6 if: matrix.os == 'ubuntu-24.04' with: name: dist @@ -92,7 +92,7 @@ jobs: needs: ['create-release', 'build-release'] runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - uses: actions/download-artifact@v6 with: name: dist diff --git a/packages/debug-worker/src/parts/AcceptWatchExpressionEdit/AcceptWatchExpressionEdit.ts b/packages/debug-worker/src/parts/AcceptWatchExpressionEdit/AcceptWatchExpressionEdit.ts index 684805ea..4601c001 100644 --- a/packages/debug-worker/src/parts/AcceptWatchExpressionEdit/AcceptWatchExpressionEdit.ts +++ b/packages/debug-worker/src/parts/AcceptWatchExpressionEdit/AcceptWatchExpressionEdit.ts @@ -4,18 +4,18 @@ import { updateVisibleRows } from '../UpdateVisibleRows/UpdateVisibleRows.ts' import * as WhenExpression from '../WhenExpression/WhenExpression.ts' export const acceptWatchExpressionEdit = async (state: RunAndDebugState): Promise => { - const { watchExpressions, editingValue, debugId, debugState, callFrameId } = state + const { callFrameId, debugId, debugState, editingValue, watchExpressions } = state const newWatchExpressions = await getNewWatchExpressionsAccept(debugId, callFrameId, debugState, watchExpressions, editingValue) if (watchExpressions === newWatchExpressions) { return state } const newState: RunAndDebugState = { ...state, - watchExpressions: newWatchExpressions, - focus: WhenExpression.FocusDebugRow, - editingValue: '', - editingselectionstart: 0, editingselectionend: 0, + editingselectionstart: 0, + editingValue: '', + focus: WhenExpression.FocusDebugRow, + watchExpressions: newWatchExpressions, } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/AddWatchExpression/AddWatchExpression.ts b/packages/debug-worker/src/parts/AddWatchExpression/AddWatchExpression.ts index b874be97..e17ecb61 100644 --- a/packages/debug-worker/src/parts/AddWatchExpression/AddWatchExpression.ts +++ b/packages/debug-worker/src/parts/AddWatchExpression/AddWatchExpression.ts @@ -7,16 +7,16 @@ export const addWatchExpression = async (state: RunAndDebugState, expression = ' const { watchExpressions } = state const watchExpression: WatchExpression = { expression, - value: null, isEditing: true, + value: null, } const newWatchExpressions1 = [...watchExpressions, watchExpression] const newState: RunAndDebugState = { ...state, - watchExpressions: newWatchExpressions1, - focus: WhenExpression.FocusDebugWatchInput, - editingselectionstart: 0, editingselectionend: expression.length, + editingselectionstart: 0, + focus: WhenExpression.FocusDebugWatchInput, + watchExpressions: newWatchExpressions1, } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/CallStackItem/CallStackItem.ts b/packages/debug-worker/src/parts/CallStackItem/CallStackItem.ts index 2e437857..bfc0321b 100644 --- a/packages/debug-worker/src/parts/CallStackItem/CallStackItem.ts +++ b/packages/debug-worker/src/parts/CallStackItem/CallStackItem.ts @@ -1,7 +1,7 @@ interface Location { - readonly scriptId: string - readonly lineNumber: number readonly columnNumber: number + readonly lineNumber: number + readonly scriptId: string } export interface CallStackItem { diff --git a/packages/debug-worker/src/parts/CancelWatchExpressionEdit/CancelWatchExpressionEdit.ts b/packages/debug-worker/src/parts/CancelWatchExpressionEdit/CancelWatchExpressionEdit.ts index c5ae5cb7..10086bf3 100644 --- a/packages/debug-worker/src/parts/CancelWatchExpressionEdit/CancelWatchExpressionEdit.ts +++ b/packages/debug-worker/src/parts/CancelWatchExpressionEdit/CancelWatchExpressionEdit.ts @@ -8,11 +8,11 @@ export const cancelWatchExpressionEdit = (state: RunAndDebugState): RunAndDebugS const newWatchExpressions = getNewWatchExpressionsCancel(watchExpressions) const newState: RunAndDebugState = { ...state, - watchExpressions: newWatchExpressions, - focus: WhenExpression.FocusDebugRow, - editingselectionstart: 0, editingselectionend: 0, + editingselectionstart: 0, editingValue: '', + focus: WhenExpression.FocusDebugRow, + watchExpressions: newWatchExpressions, } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/CollapseScopeChain/CollapseScopeChain.ts b/packages/debug-worker/src/parts/CollapseScopeChain/CollapseScopeChain.ts index 9be7f927..f524c681 100644 --- a/packages/debug-worker/src/parts/CollapseScopeChain/CollapseScopeChain.ts +++ b/packages/debug-worker/src/parts/CollapseScopeChain/CollapseScopeChain.ts @@ -20,15 +20,15 @@ export const collapseScopeChain = ( ): RunAndDebugState => { const { cache } = state const newExpandedIds = Arrays.removeElement(expandedIds, element.objectId) - const { newScopeChain, newCache } = getCollapsedScopeChain(cache, scopeChain, element, scopeChainIndex) + const { newCache, newScopeChain } = getCollapsedScopeChain(cache, scopeChain, element, scopeChainIndex) const newState: RunAndDebugState = { ...state, - expandedIds: newExpandedIds, - scopeChain: newScopeChain, - scopeFocusedIndex: scopeChainIndex, cache: newCache, + expandedIds: newExpandedIds, focus: WhenExpression.FocusDebugRow, focusedIndex: index, + scopeChain: newScopeChain, + scopeFocusedIndex: scopeChainIndex, selectedIndex: index, } return updateVisibleRows(newState) diff --git a/packages/debug-worker/src/parts/CommandMap/CommandMap.ts b/packages/debug-worker/src/parts/CommandMap/CommandMap.ts index f7ba83f1..5111b007 100644 --- a/packages/debug-worker/src/parts/CommandMap/CommandMap.ts +++ b/packages/debug-worker/src/parts/CommandMap/CommandMap.ts @@ -77,7 +77,6 @@ export const commandMap = { 'Debug.scriptParsed': Debug.scriptParsed, 'Initialize.initialize': Initialize.initialize, 'RunAndDebug.acceptWatchExpressionEdit': WrapCommand.wrapCommand(acceptWatchExpressionEdit), - 'RunAndDebug.getMenuIds': getMenuIds, 'RunAndDebug.addWatchExpression': WrapCommand.wrapCommand(addWatchExpression), 'RunAndDebug.cancelWatchExpressionEdit': WrapCommand.wrapCommand(cancelWatchExpressionEdit), 'RunAndDebug.create': Create.create, @@ -91,6 +90,7 @@ export const commandMap = { 'RunAndDebug.getHighlight': GetHighlight.getHighlight, 'RunAndDebug.getKeyBindings': GetKeyBindings.getKeyBindings, 'RunAndDebug.getMenuEntries': GetMenuEntries.getMenuEntries, + 'RunAndDebug.getMenuIds': getMenuIds, 'RunAndDebug.handleArrowDown': WrapCommand.wrapCommand(HandlePaused.handleArrowDown), 'RunAndDebug.handleArrowLeft': WrapCommand.wrapCommand(HandleArrowLeft.handleArrowLeft), 'RunAndDebug.handleArrowRight': WrapCommand.wrapCommand(HandleArrowRight.handleArrowRight), @@ -111,17 +111,17 @@ export const commandMap = { 'RunAndDebug.handleClickWatchExpression': WrapCommand.wrapCommand(HandleClickWatchExpression.handleClickWatchExpression), 'RunAndDebug.handleClickWatchExpressionDelete': WrapCommand.wrapCommand(HandleClickWatchExpressionDelete.handleClickWatchExpressionDelete), 'RunAndDebug.handleCopy': WrapCommand.wrapCommand(handleCopy), - 'RunAndDebug.handleNew': WrapCommand.wrapCommand(handleNew), 'RunAndDebug.handleDebugInput': WrapCommand.wrapCommand(HandlePaused.handleDebugInput), + 'RunAndDebug.handleDelete': WrapCommand.wrapCommand(handleDelete), + 'RunAndDebug.handleEnter': WrapCommand.wrapCommand(HandleEnter.handleEnter), 'RunAndDebug.handleEvaluate': WrapCommand.wrapCommand(HandlePaused.handleEvaluate), 'RunAndDebug.handleInputBlur': WrapCommand.wrapCommand(HandleInputBlur.handleInputBlur), 'RunAndDebug.handleInputFieldChange': WrapCommand.wrapCommand(HandleInputFieldChange.handleInputFieldChange), + 'RunAndDebug.handleNew': WrapCommand.wrapCommand(handleNew), // eslint-disable-next-line @typescript-eslint/no-deprecated 'RunAndDebug.handlePaused': WrapCommand.wrapCommand(HandlePaused.handlePaused), - 'RunAndDebug.handleResumed': WrapCommand.wrapCommand(HandleResumed.handleResumed), - 'RunAndDebug.handleDelete': WrapCommand.wrapCommand(handleDelete), - 'RunAndDebug.handleEnter': WrapCommand.wrapCommand(HandleEnter.handleEnter), 'RunAndDebug.handleRename': WrapCommand.wrapCommand(handleRename), + 'RunAndDebug.handleResumed': WrapCommand.wrapCommand(HandleResumed.handleResumed), 'RunAndDebug.handleScriptParsed': WrapCommand.wrapCommand(HandleScriptParsed.handleScriptParsed), 'RunAndDebug.handleSectionHeaderContextMenu': WrapCommand.wrapCommand(HandleSectionHeaderContextMenu.handleSectionHeaderContextMenu), 'RunAndDebug.handleSpace': WrapCommand.wrapCommand(HandleSpace.handleSpace), diff --git a/packages/debug-worker/src/parts/Create/Create.ts b/packages/debug-worker/src/parts/Create/Create.ts index be52e210..3e35e750 100644 --- a/packages/debug-worker/src/parts/Create/Create.ts +++ b/packages/debug-worker/src/parts/Create/Create.ts @@ -7,45 +7,45 @@ import * as RunAndDebugStates from '../RunAndDebugStates/RunAndDebugStates.ts' export const create = (id: number, uri: string, x: number, y: number, width: number, height: number): void => { const state: RunAndDebugState = { - uid: id, - disposed: false, - processes: [], - debugState: DebugState.None, - watchExpanded: false, breakPointsExpanded: false, - scopeExpanded: false, - callStackExpanded: false, - watchVisible: true, breakPointsVisible: true, - scopeVisible: true, - callStackVisible: true, - scopeChain: [], + cache: Object.create(null), // TODO maybe store cache in extension host worker + callFrameId: '', callStack: [], - parsedScripts: Object.create(null), - pausedReason: DebugPausedReason.None, - pausedMessage: '', + callStackExpanded: false, + callStackVisible: true, + debugId: 0, debugInputValue: '', debugOutputValue: '', - callFrameId: '', - expandedIds: [], - scopeFocusedIndex: -1, - focusedIndex: -1, - pauseOnExceptionState: PauseOnExceptionState.None, - cache: Object.create(null), // TODO maybe store cache in extension host worker + debugState: DebugState.None, + disposed: false, + editingselectionend: 0, + editingselectionstart: 0, + editingValue: '', exceptionBreakPoints: ExceptionBreakPoints.None, - watchExpressions: [], + expandedIds: [], focus: 0, - editingValue: '', - debugId: 0, + focusedIndex: -1, inputSource: 0, - editingselectionstart: 0, - editingselectionend: 0, - openFilesOnPause: true, maxDescriptionLength: 100, + openFilesOnPause: true, + parsedScripts: Object.create(null), + pausedMessage: '', + pausedReason: DebugPausedReason.None, + pauseOnExceptionState: PauseOnExceptionState.None, + processes: [], + scopeChain: [], + scopeExpanded: false, + scopeFocusedIndex: -1, + scopeVisible: true, selectedIndex: -1, - visibleRows: [], tokenColoringEnabled: false, topLevelCount: 4, + uid: id, + visibleRows: [], + watchExpanded: false, + watchExpressions: [], + watchVisible: true, } RunAndDebugStates.set(id, state, state) } diff --git a/packages/debug-worker/src/parts/CreateDefaultState/CreateDefaultState.ts b/packages/debug-worker/src/parts/CreateDefaultState/CreateDefaultState.ts index 28e5a8eb..fed22f17 100644 --- a/packages/debug-worker/src/parts/CreateDefaultState/CreateDefaultState.ts +++ b/packages/debug-worker/src/parts/CreateDefaultState/CreateDefaultState.ts @@ -3,45 +3,45 @@ import { set } from '../RunAndDebugStates/RunAndDebugStates.ts' export const createDefaultState = (uid = 0): RunAndDebugState => { const state: RunAndDebugState = { - uid: uid, - disposed: false, - processes: [], - debugState: 0, - watchExpanded: false, breakPointsExpanded: false, - scopeExpanded: false, - callStackExpanded: false, - watchVisible: true, breakPointsVisible: true, - scopeVisible: true, - callStackVisible: true, - scopeChain: [], + cache: {}, + callFrameId: '', callStack: [], - parsedScripts: {}, - pausedReason: '', - pausedMessage: '', + callStackExpanded: false, + callStackVisible: true, + debugId: 0, debugInputValue: '', debugOutputValue: '', - callFrameId: '', - expandedIds: [], - scopeFocusedIndex: 0, - focusedIndex: 0, - pauseOnExceptionState: 'none', - cache: {}, + debugState: 0, + disposed: false, + editingselectionend: 0, + editingselectionstart: 0, + editingValue: '', exceptionBreakPoints: 0, - watchExpressions: [], + expandedIds: [], focus: 0, - editingValue: '', - debugId: 0, + focusedIndex: 0, inputSource: 0, - editingselectionstart: 0, - editingselectionend: 0, - openFilesOnPause: true, maxDescriptionLength: 100, + openFilesOnPause: true, + parsedScripts: {}, + pausedMessage: '', + pausedReason: '', + pauseOnExceptionState: 'none', + processes: [], + scopeChain: [], + scopeExpanded: false, + scopeFocusedIndex: 0, + scopeVisible: true, selectedIndex: -1, - visibleRows: [], tokenColoringEnabled: false, topLevelCount: 4, + uid: uid, + visibleRows: [], + watchExpanded: false, + watchExpressions: [], + watchVisible: true, } set(uid, state, state) return state diff --git a/packages/debug-worker/src/parts/DebugButton/DebugButton.ts b/packages/debug-worker/src/parts/DebugButton/DebugButton.ts index f568661d..c7948fd6 100644 --- a/packages/debug-worker/src/parts/DebugButton/DebugButton.ts +++ b/packages/debug-worker/src/parts/DebugButton/DebugButton.ts @@ -1,5 +1,5 @@ export interface DebugButton { - readonly title: string - readonly icon: string readonly fn: string + readonly icon: string + readonly title: string } diff --git a/packages/debug-worker/src/parts/DebugDisplay/DebugDisplay.ts b/packages/debug-worker/src/parts/DebugDisplay/DebugDisplay.ts index d949f2b8..f9197ec6 100644 --- a/packages/debug-worker/src/parts/DebugDisplay/DebugDisplay.ts +++ b/packages/debug-worker/src/parts/DebugDisplay/DebugDisplay.ts @@ -3,29 +3,29 @@ import * as DebugStrings from '../DebugStrings/DebugStrings.ts' export const getScopeLabel = (element: any): string => { switch (element.type) { - case DebugScopeType.Local: - return DebugStrings.local() + case DebugScopeType.Block: + return DebugStrings.block() + case DebugScopeType.Catch: + return DebugStrings.catchScope() case DebugScopeType.Closure: if (element.name) { return DebugStrings.namedClosure(element.name) } return DebugStrings.closure() + case DebugScopeType.Eval: + return DebugStrings.evalScope() case DebugScopeType.Global: return DebugStrings.global() - case DebugScopeType.Block: - return DebugStrings.block() - case DebugScopeType.WasmExpressionStack: - return DebugStrings.expression() + case DebugScopeType.Local: + return DebugStrings.local() case DebugScopeType.Module: return DebugStrings.module2() - case DebugScopeType.Eval: - return DebugStrings.evalScope() case DebugScopeType.Script: return DebugStrings.script() + case DebugScopeType.WasmExpressionStack: + return DebugStrings.expression() case DebugScopeType.With: return DebugStrings.withScope() - case DebugScopeType.Catch: - return DebugStrings.catchScope() default: return element.type } diff --git a/packages/debug-worker/src/parts/DebugRow/DebugRow.ts b/packages/debug-worker/src/parts/DebugRow/DebugRow.ts index 47d4a614..da5645d5 100644 --- a/packages/debug-worker/src/parts/DebugRow/DebugRow.ts +++ b/packages/debug-worker/src/parts/DebugRow/DebugRow.ts @@ -1,28 +1,28 @@ // TODO instead of reusing debug row for all different kinds of debug items, // maybe use separate interfaces for checkboxes, headings, callstacks, values, scopes export interface DebugRowAction { + readonly icon: string readonly id: string readonly title: string - readonly icon: string } export interface DebugRow { - readonly type: number - readonly text: string - readonly expanded: boolean - readonly key: string - readonly value: string - readonly indent: number - readonly valueType: string | number // TODO convert to number - readonly name: string + readonly actions?: readonly DebugRowAction[] readonly description: string + readonly expanded: boolean readonly hasArrow?: boolean + readonly indent: number readonly index?: number - readonly actions?: readonly DebugRowAction[] - readonly tokens?: string[] - readonly setSize?: number + readonly key: string + readonly name: string readonly posInset?: number readonly scopeChainIndex?: number + readonly setSize?: number + readonly text: string + readonly tokens?: string[] + readonly type: number + readonly value: string + readonly valueType: string | number // TODO convert to number } export interface DebugRowBase { @@ -30,9 +30,9 @@ export interface DebugRowBase { } export interface DebugRowHeading { - readonly heading: string readonly actions: readonly DebugRowAction[] readonly expanded: boolean + readonly heading: string } export interface DebugRowBreakPoints { diff --git a/packages/debug-worker/src/parts/Diff2/Diff2.ts b/packages/debug-worker/src/parts/Diff2/Diff2.ts index 6dfad97b..4471d726 100644 --- a/packages/debug-worker/src/parts/Diff2/Diff2.ts +++ b/packages/debug-worker/src/parts/Diff2/Diff2.ts @@ -2,7 +2,7 @@ import * as Diff from '../Diff/Diff.ts' import * as RunAndDebugStates from '../RunAndDebugStates/RunAndDebugStates.ts' export const diff2 = (uid: number): readonly number[] => { - const { oldState, newState } = RunAndDebugStates.get(uid) + const { newState, oldState } = RunAndDebugStates.get(uid) const diffResult = Diff.diff(oldState, newState) return diffResult diff --git a/packages/debug-worker/src/parts/DomEventListener/DomEventListener.ts b/packages/debug-worker/src/parts/DomEventListener/DomEventListener.ts index 80647688..af840808 100644 --- a/packages/debug-worker/src/parts/DomEventListener/DomEventListener.ts +++ b/packages/debug-worker/src/parts/DomEventListener/DomEventListener.ts @@ -1,6 +1,6 @@ export interface DomEventListener { readonly name: string readonly params: readonly (string | number)[] - readonly preventDefault?: boolean readonly passive?: boolean + readonly preventDefault?: boolean } diff --git a/packages/debug-worker/src/parts/EditWatchExpression/EditWatchExpression.ts b/packages/debug-worker/src/parts/EditWatchExpression/EditWatchExpression.ts index 9939e0b6..464b66ac 100644 --- a/packages/debug-worker/src/parts/EditWatchExpression/EditWatchExpression.ts +++ b/packages/debug-worker/src/parts/EditWatchExpression/EditWatchExpression.ts @@ -17,12 +17,12 @@ export const editWatchExpression = (state: RunAndDebugState, index: number): Run const newWatchExpressions = watchExpressions.toSpliced(index, 1, newItem) const newState: RunAndDebugState = { ...state, - watchExpressions: newWatchExpressions, + editingselectionend: item.expression.length, + editingselectionstart: 0, + editingValue: item.expression, focus: WhenExpression.FocusDebugWatchInput, inputSource: InputSource.Script, - editingValue: item.expression, - editingselectionstart: 0, - editingselectionend: item.expression.length, + watchExpressions: newWatchExpressions, } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/EditorWorker/EditorWorker.ts b/packages/debug-worker/src/parts/EditorWorker/EditorWorker.ts index f23ea1b6..00614867 100644 --- a/packages/debug-worker/src/parts/EditorWorker/EditorWorker.ts +++ b/packages/debug-worker/src/parts/EditorWorker/EditorWorker.ts @@ -1,3 +1,3 @@ import { EditorWorker } from '@lvce-editor/rpc-registry' -export const { set, dispose, updateDebugInfo } = EditorWorker +export const { dispose, set, updateDebugInfo } = EditorWorker diff --git a/packages/debug-worker/src/parts/ErrorHandling/ErrorHandling.ts b/packages/debug-worker/src/parts/ErrorHandling/ErrorHandling.ts index 69229110..b9d45f52 100644 --- a/packages/debug-worker/src/parts/ErrorHandling/ErrorHandling.ts +++ b/packages/debug-worker/src/parts/ErrorHandling/ErrorHandling.ts @@ -12,8 +12,8 @@ export const showErrorDialog = async (error: any): Promise => { const errorInfo = { code, message, - stack, name, + stack, } await Rpc.showErrorDialog(errorInfo) } diff --git a/packages/debug-worker/src/parts/ExpandScopeChain/ExpandScopeChain.ts b/packages/debug-worker/src/parts/ExpandScopeChain/ExpandScopeChain.ts index defd1aa1..6934baeb 100644 --- a/packages/debug-worker/src/parts/ExpandScopeChain/ExpandScopeChain.ts +++ b/packages/debug-worker/src/parts/ExpandScopeChain/ExpandScopeChain.ts @@ -19,11 +19,11 @@ export const expandScopeChain = async ( const newExpandedIds = [...expandedIds, objectId] const newState: RunAndDebugState = { ...state, - scopeChain: newScopeChain, expandedIds: newExpandedIds, - scopeFocusedIndex: scopeChainIndex, focus: WhenExpression.FocusDebugRow, focusedIndex: index, + scopeChain: newScopeChain, + scopeFocusedIndex: scopeChainIndex, selectedIndex: index, } return updateVisibleRows(newState) diff --git a/packages/debug-worker/src/parts/ExtensionHost/ExtensionHost.ts b/packages/debug-worker/src/parts/ExtensionHost/ExtensionHost.ts index 7a809108..43ec037a 100644 --- a/packages/debug-worker/src/parts/ExtensionHost/ExtensionHost.ts +++ b/packages/debug-worker/src/parts/ExtensionHost/ExtensionHost.ts @@ -1,3 +1,3 @@ import { ExtensionHost } from '@lvce-editor/rpc-registry' -export const { invoke, set, dispose } = ExtensionHost +export const { dispose, invoke, set } = ExtensionHost diff --git a/packages/debug-worker/src/parts/GetActionDom/GetActionDom.ts b/packages/debug-worker/src/parts/GetActionDom/GetActionDom.ts index 164d53cc..d694cdc9 100644 --- a/packages/debug-worker/src/parts/GetActionDom/GetActionDom.ts +++ b/packages/debug-worker/src/parts/GetActionDom/GetActionDom.ts @@ -6,15 +6,15 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' export const getActionDom = (action: DebugRowAction): readonly VirtualDomNode[] => { - const { title, id, icon } = action + const { icon, id, title } = action return [ { - type: VirtualDomElements.Button, + childCount: 1, className: ClassNames.DebugSectionAction, - title, - onClick: DomEventListenerFunctions.HandleClickSectionAction, name: id, - childCount: 1, + onClick: DomEventListenerFunctions.HandleClickSectionAction, + title, + type: VirtualDomElements.Button, }, VirtualDomHelpers.text(icon), ] diff --git a/packages/debug-worker/src/parts/GetActionsDom/GetActionsDom.ts b/packages/debug-worker/src/parts/GetActionsDom/GetActionsDom.ts index b313e968..ba817ba6 100644 --- a/packages/debug-worker/src/parts/GetActionsDom/GetActionsDom.ts +++ b/packages/debug-worker/src/parts/GetActionsDom/GetActionsDom.ts @@ -10,9 +10,9 @@ export const getActionsDom = (actions: readonly DebugRowAction[]): readonly Virt } return [ { - type: Div, - className: ClassNames.DebugSectionActions, childCount: actions.length, + className: ClassNames.DebugSectionActions, + type: Div, }, ...actions.flatMap(GetActionDom.getActionDom), ] diff --git a/packages/debug-worker/src/parts/GetArrowNodes/GetArrowNodes.ts b/packages/debug-worker/src/parts/GetArrowNodes/GetArrowNodes.ts index e8eb8293..5bc2869b 100644 --- a/packages/debug-worker/src/parts/GetArrowNodes/GetArrowNodes.ts +++ b/packages/debug-worker/src/parts/GetArrowNodes/GetArrowNodes.ts @@ -9,14 +9,14 @@ export const getArrowNodes = (hasArrow: boolean | undefined): readonly VirtualDo return [ { - type: VirtualDomElements.Div, - className: ClassNames.CallStackArrow, childCount: 1, + className: ClassNames.CallStackArrow, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Div, - className: 'MaskIcon MaskIconArrowRight', childCount: 0, + className: 'MaskIcon MaskIconArrowRight', + type: VirtualDomElements.Div, }, ] } diff --git a/packages/debug-worker/src/parts/GetCallStack/GetCallStack.ts b/packages/debug-worker/src/parts/GetCallStack/GetCallStack.ts index 504bec69..47ef7608 100644 --- a/packages/debug-worker/src/parts/GetCallStack/GetCallStack.ts +++ b/packages/debug-worker/src/parts/GetCallStack/GetCallStack.ts @@ -5,8 +5,8 @@ export const getCallStack = (callFrames: readonly any[]): any[] => { const callStack = [] for (const callFrame of callFrames) { callStack.push({ - functionName: callFrame.functionName || '(anonymous)', functionLocation: callFrame.functionLocation, + functionName: callFrame.functionName || '(anonymous)', location: callFrame.location, }) } diff --git a/packages/debug-worker/src/parts/GetChevronVirtualDom/GetChevronVirtualDom.ts b/packages/debug-worker/src/parts/GetChevronVirtualDom/GetChevronVirtualDom.ts index fc0899d9..ff1d9b6d 100644 --- a/packages/debug-worker/src/parts/GetChevronVirtualDom/GetChevronVirtualDom.ts +++ b/packages/debug-worker/src/parts/GetChevronVirtualDom/GetChevronVirtualDom.ts @@ -4,16 +4,16 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts export const getChevronDownVirtualDom = (extraClassName = ''): VirtualDomNode => { return { - type: VirtualDomElements.Div, - className: `${ClassNames.Chevron} MaskIconChevronDown ${extraClassName}`, childCount: 0, + className: `${ClassNames.Chevron} MaskIconChevronDown ${extraClassName}`, + type: VirtualDomElements.Div, } } export const getChevronRightVirtualDom = (extraClassName = ''): VirtualDomNode => { return { - type: VirtualDomElements.Div, - className: `${ClassNames.Chevron} MaskIconChevronRight ${extraClassName}`, childCount: 0, + className: `${ClassNames.Chevron} MaskIconChevronRight ${extraClassName}`, + type: VirtualDomElements.Div, } } diff --git a/packages/debug-worker/src/parts/GetCollapsedScopeChain/GetCollapsedScopeChain.ts b/packages/debug-worker/src/parts/GetCollapsedScopeChain/GetCollapsedScopeChain.ts index de046ec7..2a70676f 100644 --- a/packages/debug-worker/src/parts/GetCollapsedScopeChain/GetCollapsedScopeChain.ts +++ b/packages/debug-worker/src/parts/GetCollapsedScopeChain/GetCollapsedScopeChain.ts @@ -2,8 +2,8 @@ import type { ScopeChainItem } from '../ScopeChainItem/ScopeChainItem.ts' import { getCollapsedEndIndex } from '../GetCollapsedEndIndex/GetCollapsedEndIndex.ts' export interface CollapsedScopeChainResult { - readonly newScopeChain: readonly ScopeChainItem[] readonly newCache: any + readonly newScopeChain: readonly ScopeChainItem[] } export const getCollapsedScopeChain = (cache: any, scopeChain: readonly ScopeChainItem[], element: any, index: number): CollapsedScopeChainResult => { @@ -11,8 +11,8 @@ export const getCollapsedScopeChain = (cache: any, scopeChain: readonly ScopeCha const endIndex = getCollapsedEndIndex(scopeChain, index, indent) if (endIndex === -1) { return { - newScopeChain: scopeChain, newCache: cache, + newScopeChain: scopeChain, } } const newItems = scopeChain.slice(index + 1, endIndex) @@ -21,7 +21,7 @@ export const getCollapsedScopeChain = (cache: any, scopeChain: readonly ScopeCha [scopeChain[index].objectId]: newItems, } return { - newScopeChain: [...scopeChain.slice(0, index + 1), ...scopeChain.slice(endIndex)], newCache, + newScopeChain: [...scopeChain.slice(0, index + 1), ...scopeChain.slice(endIndex)], } } diff --git a/packages/debug-worker/src/parts/GetDebugButtonHandler/GetDebugButtonHandler.ts b/packages/debug-worker/src/parts/GetDebugButtonHandler/GetDebugButtonHandler.ts index b092b3de..b58e2fb8 100644 --- a/packages/debug-worker/src/parts/GetDebugButtonHandler/GetDebugButtonHandler.ts +++ b/packages/debug-worker/src/parts/GetDebugButtonHandler/GetDebugButtonHandler.ts @@ -24,10 +24,10 @@ export const getDebugButtonHandler = (inputName: string): DebugButtonHandler => return resume case InputName.DebugStepInto: return stepInto - case InputName.DebugStepOver: - return stepOver case InputName.DebugStepOut: return stepOut + case InputName.DebugStepOver: + return stepOver case InputName.DebugStop: return stop default: diff --git a/packages/debug-worker/src/parts/GetDebugButtonVirtualDom/GetDebugButtonVirtualDom.ts b/packages/debug-worker/src/parts/GetDebugButtonVirtualDom/GetDebugButtonVirtualDom.ts index 92ca2fa4..ffc9d12b 100644 --- a/packages/debug-worker/src/parts/GetDebugButtonVirtualDom/GetDebugButtonVirtualDom.ts +++ b/packages/debug-worker/src/parts/GetDebugButtonVirtualDom/GetDebugButtonVirtualDom.ts @@ -7,19 +7,19 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts const DebugButtonClass = ClassNames.IconButton + ' ' + ClassNames.DebugButton export const getDebugButtonVirtualDom = (button: DebugButton): readonly VirtualDomNode[] => { - const { title, icon, fn } = button + const { fn, icon, title } = button return [ { - type: VirtualDomElements.Button, - className: MergeClassNames.mergeClassNames(DebugButtonClass, icon), - title, childCount: 1, + className: MergeClassNames.mergeClassNames(DebugButtonClass, icon), name: fn, + title, + type: VirtualDomElements.Button, }, { - type: VirtualDomElements.Div, - className: `MaskIcon MaskIcon${icon}`, childCount: 0, + className: `MaskIcon MaskIcon${icon}`, + type: VirtualDomElements.Div, }, ] } diff --git a/packages/debug-worker/src/parts/GetDebugButtons/GetDebugButtons.ts b/packages/debug-worker/src/parts/GetDebugButtons/GetDebugButtons.ts index 0c008010..d75842d3 100644 --- a/packages/debug-worker/src/parts/GetDebugButtons/GetDebugButtons.ts +++ b/packages/debug-worker/src/parts/GetDebugButtons/GetDebugButtons.ts @@ -12,42 +12,42 @@ export const getDebugButtons = (debugState: number): readonly DebugButton[] => { const debugButtons: DebugButton[] = [] if (debugState === DebugState.Paused) { debugButtons.push({ - title: ViewletRunAndDebugStrings.resume(), - icon: MaskIcon.DebugContinue, fn: InputName.DebugResume, + icon: MaskIcon.DebugContinue, + title: ViewletRunAndDebugStrings.resume(), }) } else { debugButtons.push({ - title: ViewletRunAndDebugStrings.pause(), - icon: MaskIcon.DebugPause, fn: InputName.DebugPause, + icon: MaskIcon.DebugPause, + title: ViewletRunAndDebugStrings.pause(), }) } debugButtons.push( { - title: ViewletRunAndDebugStrings.stepOver(), - icon: MaskIcon.DebugStepOver, fn: InputName.DebugStepOver, + icon: MaskIcon.DebugStepOver, + title: ViewletRunAndDebugStrings.stepOver(), }, { - title: ViewletRunAndDebugStrings.stepInto(), - icon: MaskIcon.DebugStepInto, fn: InputName.DebugStepInto, + icon: MaskIcon.DebugStepInto, + title: ViewletRunAndDebugStrings.stepInto(), }, { - title: ViewletRunAndDebugStrings.stepOut(), - icon: MaskIcon.DebugStepOut, fn: InputName.DebugStepOut, + icon: MaskIcon.DebugStepOut, + title: ViewletRunAndDebugStrings.stepOut(), }, { - title: ViewletRunAndDebugStrings.restart(), - icon: MaskIcon.DebugRestart, fn: InputName.DebugRestart, + icon: MaskIcon.DebugRestart, + title: ViewletRunAndDebugStrings.restart(), }, { - title: ViewletRunAndDebugStrings.stop(), - icon: MaskIcon.DebugStop, fn: InputName.DebugStop, + icon: MaskIcon.DebugStop, + title: ViewletRunAndDebugStrings.stop(), }, ) return debugButtons diff --git a/packages/debug-worker/src/parts/GetDebugPausedMessage/GetDebugPausedMessage.ts b/packages/debug-worker/src/parts/GetDebugPausedMessage/GetDebugPausedMessage.ts index 3d047cd7..7d23d197 100644 --- a/packages/debug-worker/src/parts/GetDebugPausedMessage/GetDebugPausedMessage.ts +++ b/packages/debug-worker/src/parts/GetDebugPausedMessage/GetDebugPausedMessage.ts @@ -3,10 +3,10 @@ import * as DebugStrings from '../DebugStrings/DebugStrings.ts' export const getDebugPausedMessage = (reason: any): string => { switch (reason) { - case DebugPauseReason.Other: - return DebugStrings.debuggerPaused() case DebugPauseReason.Exception: return DebugStrings.debuggerPausedOnException() + case DebugPauseReason.Other: + return DebugStrings.debuggerPaused() default: return `Debugger paused (${reason})` } diff --git a/packages/debug-worker/src/parts/GetDebugPropertyValueLabel/GetDebugPropertyValueLabel.ts b/packages/debug-worker/src/parts/GetDebugPropertyValueLabel/GetDebugPropertyValueLabel.ts index 14c93a2e..6569a738 100644 --- a/packages/debug-worker/src/parts/GetDebugPropertyValueLabel/GetDebugPropertyValueLabel.ts +++ b/packages/debug-worker/src/parts/GetDebugPropertyValueLabel/GetDebugPropertyValueLabel.ts @@ -10,18 +10,18 @@ export const getDebugPropertyValueLabel = (property: any, maxDescriptionLength: return 'n/a' } switch (property.type) { + case DebugValueType.Boolean: + return GetDebugPropertyValueLabelBoolean.getDebugPropertyValueLabelBoolean(property) + case DebugValueType.Function: case DebugValueType.Number: case DebugValueType.Symbol: - case DebugValueType.Function: return GetDebugPropertyValueLabelCommon.getDebugPropertyValueLabelCommon(property, maxDescriptionLength) case DebugValueType.Object: return GetDebugPropertyValueLabelObject.getDebugPropertyValueLabelObject(property) - case DebugValueType.Undefined: - return GetDebugPropertyValueLabelUndefined.getDebugPropertyValueLabelString(property) case DebugValueType.String: return GetDebugPropertyValueLabelString.getDebugPropertyValueLabelString(property) - case DebugValueType.Boolean: - return GetDebugPropertyValueLabelBoolean.getDebugPropertyValueLabelBoolean(property) + case DebugValueType.Undefined: + return GetDebugPropertyValueLabelUndefined.getDebugPropertyValueLabelString(property) default: return `${JSON.stringify(property)}` } diff --git a/packages/debug-worker/src/parts/GetDebugValueClassName/GetDebugValueClassName.ts b/packages/debug-worker/src/parts/GetDebugValueClassName/GetDebugValueClassName.ts index 5781fafc..56599000 100644 --- a/packages/debug-worker/src/parts/GetDebugValueClassName/GetDebugValueClassName.ts +++ b/packages/debug-worker/src/parts/GetDebugValueClassName/GetDebugValueClassName.ts @@ -3,22 +3,22 @@ import * as DebugValueType from '../DebugValueType/DebugValueType.ts' export const getDebugValueClassName = (valueType: string | number): string => { switch (valueType) { - case DebugValueType.Undefined: - return ClassNames.DebugValueUndefined - case DebugValueType.Number: - return ClassNames.DebugValueNumber - case DebugValueType.Symbol: - return ClassNames.DebugValueSymbol case DebugValueType.Boolean: return ClassNames.DebugValueBoolean - case DebugValueType.String: - return ClassNames.DebugValueString - case DebugValueType.Object: - return ClassNames.DebugValueObject case DebugValueType.Function: return ClassNames.DebugValueFunction case DebugValueType.Getter: return ClassNames.DebugValueGetter + case DebugValueType.Number: + return ClassNames.DebugValueNumber + case DebugValueType.Object: + return ClassNames.DebugValueObject + case DebugValueType.String: + return ClassNames.DebugValueString + case DebugValueType.Symbol: + return ClassNames.DebugValueSymbol + case DebugValueType.Undefined: + return ClassNames.DebugValueUndefined default: return '' } diff --git a/packages/debug-worker/src/parts/GetHighlight/GetHighlight.ts b/packages/debug-worker/src/parts/GetHighlight/GetHighlight.ts index 4d4b12cd..b63c4eae 100644 --- a/packages/debug-worker/src/parts/GetHighlight/GetHighlight.ts +++ b/packages/debug-worker/src/parts/GetHighlight/GetHighlight.ts @@ -2,9 +2,9 @@ import type { Highlight } from '../Highlight/Highlight.ts' import * as RunAndDebugStates from '../RunAndDebugStates/RunAndDebugStates.ts' const emptyHighlight: Highlight = { - uri: '', - rowIndex: 0, columnIndex: 0, + rowIndex: 0, + uri: '', } export const getHighlight = (uid: number): Highlight => { @@ -13,20 +13,20 @@ export const getHighlight = (uid: number): Highlight => { return emptyHighlight } const { newState } = state - const { parsedScripts, callStack } = newState + const { callStack, parsedScripts } = newState if (callStack.length === 0) { return emptyHighlight } const top = callStack[0] const { location } = top - const { scriptId, lineNumber, columnNumber } = location + const { columnNumber, lineNumber, scriptId } = location const script = parsedScripts[scriptId] if (!script) { return emptyHighlight } return { - uri: script.url, - rowIndex: lineNumber, columnIndex: columnNumber, + rowIndex: lineNumber, + uri: script.url, } } diff --git a/packages/debug-worker/src/parts/GetInnerChildScopeChain/GetInnerChildScopeChain.ts b/packages/debug-worker/src/parts/GetInnerChildScopeChain/GetInnerChildScopeChain.ts index 32fbc128..0252b599 100644 --- a/packages/debug-worker/src/parts/GetInnerChildScopeChain/GetInnerChildScopeChain.ts +++ b/packages/debug-worker/src/parts/GetInnerChildScopeChain/GetInnerChildScopeChain.ts @@ -21,14 +21,14 @@ export const getInnerChildScopeChain = async ( for (const child of childScopes.result.result) { const valueLabel = GetDebugPropertyValueLabel.getDebugPropertyValueLabel(child.value || child.get || {}, maxDescriptionLength) childScopeChain.push({ - type: DebugScopeChainType.Property, + flags: DebugItemFlags.None, + indent: indent + 10, key: child.name, + label: '', + objectId: GetDebugValueObjectId.getDebugValueObjectId(child), + type: DebugScopeChainType.Property, value: valueLabel, valueType: GetDebugValueType.getDebugValueType(child), - objectId: GetDebugValueObjectId.getDebugValueObjectId(child), - indent: indent + 10, - label: '', - flags: DebugItemFlags.None, }) } return childScopeChain diff --git a/packages/debug-worker/src/parts/GetKeyBindings/GetKeyBindings.ts b/packages/debug-worker/src/parts/GetKeyBindings/GetKeyBindings.ts index c05f86dc..33d802df 100644 --- a/packages/debug-worker/src/parts/GetKeyBindings/GetKeyBindings.ts +++ b/packages/debug-worker/src/parts/GetKeyBindings/GetKeyBindings.ts @@ -5,117 +5,117 @@ import * as WhenExpression from '../WhenExpression/WhenExpression.ts' export const getKeyBindings = (): readonly KeyBinding[] => { return [ { - key: KeyCode.Backslash | KeyModifier.CtrlCmd, command: 'Run And Debug.togglePause', + key: KeyCode.Backslash | KeyModifier.CtrlCmd, }, { - key: KeyCode.LeftArrow, command: 'Run And Debug.handleArrowLeft', + key: KeyCode.LeftArrow, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.RightArrow, command: 'Run And Debug.handleArrowRight', + key: KeyCode.RightArrow, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.Home, command: 'Run And Debug.focusFirst', + key: KeyCode.Home, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.End, command: 'Run And Debug.focusLast', + key: KeyCode.End, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.UpArrow, command: 'Run And Debug.selectPreviousRow', + key: KeyCode.UpArrow, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.DownArrow, command: 'Run And Debug.selectNextRow', + key: KeyCode.DownArrow, when: WhenExpression.FocusDebugRow, }, { - key: KeyModifier.CtrlCmd | KeyCode.Star, command: 'Run And Debug.expandAll', + key: KeyModifier.CtrlCmd | KeyCode.Star, when: WhenExpression.FocusDebugRow, }, { - key: KeyModifier.Alt | KeyCode.RightArrow, command: 'Run And Debug.expandRecursively', + key: KeyModifier.Alt | KeyCode.RightArrow, when: WhenExpression.FocusDebugRow, }, { - key: KeyModifier.CtrlCmd | KeyCode.LeftArrow, command: 'Run And Debug.collapseAll', + key: KeyModifier.CtrlCmd | KeyCode.LeftArrow, when: WhenExpression.FocusDebugRow, }, { - key: KeyModifier.CtrlCmd | KeyCode.KeyV, command: 'Run And Debug.handlePaste', + key: KeyModifier.CtrlCmd | KeyCode.KeyV, when: WhenExpression.FocusDebugRow, }, { - key: KeyModifier.CtrlCmd | KeyCode.KeyC, command: 'Run And Debug.handleCopy', + key: KeyModifier.CtrlCmd | KeyCode.KeyC, when: WhenExpression.FocusDebugRow, }, { - key: KeyModifier.CtrlCmd | KeyCode.KeyN, command: 'Run And Debug.handleNew', + key: KeyModifier.CtrlCmd | KeyCode.KeyN, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.F2, command: 'Run And Debug.handleRename', + key: KeyCode.F2, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.Delete, command: 'Run And Debug.handleDelete', + key: KeyCode.Delete, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.Escape, command: 'Run And Debug.focusNone', + key: KeyCode.Escape, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.Enter, command: 'Run And Debug.handleClickCurrent', + key: KeyCode.Enter, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.Space, command: 'Run And Debug.handleSpace', + key: KeyCode.Space, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.Enter, command: 'Run And Debug.handleEnter', + key: KeyCode.Enter, when: WhenExpression.FocusDebugRow, }, { - key: KeyCode.Escape, command: 'Run And Debug.cancelWatchExpressionEdit', + key: KeyCode.Escape, when: WhenExpression.FocusDebugWatchInput, }, { - key: KeyCode.Enter, command: 'Run And Debug.acceptWatchExpressionEdit', + key: KeyCode.Enter, when: WhenExpression.FocusDebugWatchInput, }, { - key: KeyModifier.CtrlCmd | KeyCode.Home, command: 'Run And Debug.selectFirstIndex', + key: KeyModifier.CtrlCmd | KeyCode.Home, when: WhenExpression.FocusDebugRow, }, { - key: KeyModifier.CtrlCmd | KeyCode.End, command: 'Run And Debug.selectLastIndex', + key: KeyModifier.CtrlCmd | KeyCode.End, when: WhenExpression.FocusDebugRow, }, ] diff --git a/packages/debug-worker/src/parts/GetMenuEntries/GetMenuEntries.ts b/packages/debug-worker/src/parts/GetMenuEntries/GetMenuEntries.ts index 8d1a2272..fb16e0d3 100644 --- a/packages/debug-worker/src/parts/GetMenuEntries/GetMenuEntries.ts +++ b/packages/debug-worker/src/parts/GetMenuEntries/GetMenuEntries.ts @@ -4,8 +4,8 @@ import * as MenuEntryId from '../MenuEntryId/MenuEntryId.ts' export const getMenuEntries = (): readonly any[] => { return [ { - id: MenuEntryId.DebugWatchExpression, entries: getMenuEntriesWatchExpression(), + id: MenuEntryId.DebugWatchExpression, }, ] } diff --git a/packages/debug-worker/src/parts/GetMenuEntriesWatchExpression/GetMenuEntriesWatchExpression.ts b/packages/debug-worker/src/parts/GetMenuEntriesWatchExpression/GetMenuEntriesWatchExpression.ts index 448f0d02..25eac29b 100644 --- a/packages/debug-worker/src/parts/GetMenuEntriesWatchExpression/GetMenuEntriesWatchExpression.ts +++ b/packages/debug-worker/src/parts/GetMenuEntriesWatchExpression/GetMenuEntriesWatchExpression.ts @@ -4,24 +4,24 @@ import * as MenuItemFlags from '../MenuItemFlags/MenuItemFlags.ts' export const getMenuEntriesWatchExpression = (): readonly MenuEntry[] => { const addMenuEntry: MenuEntry = { + command: 'RunAndDebug.addWatchExpression', + flags: MenuItemFlags.None, id: 'addWatchExpression', label: DebugStrings.addWatchExpression(), - flags: MenuItemFlags.None, - command: 'RunAndDebug.addWatchExpression', } const deleteMenuEntry: MenuEntry = { + command: 'RunAndDebug.deleteWatchExpression', + flags: MenuItemFlags.None, id: 'deleteWatchExpression', label: DebugStrings.deleteWatchExpression(), - flags: MenuItemFlags.None, - command: 'RunAndDebug.deleteWatchExpression', } const deleteAllMenuEntry: MenuEntry = { + command: 'RunAndDebug.deleteAllWatchExpressions', + flags: MenuItemFlags.None, id: 'deleteAllWatchExpressions', label: DebugStrings.deleteAllWatchExpressions(), - flags: MenuItemFlags.None, - command: 'RunAndDebug.deleteAllWatchExpressions', } return [addMenuEntry, deleteMenuEntry, deleteAllMenuEntry] diff --git a/packages/debug-worker/src/parts/GetNewWatchExpressionsAccept/GetNewWatchExpressionsAccept.ts b/packages/debug-worker/src/parts/GetNewWatchExpressionsAccept/GetNewWatchExpressionsAccept.ts index 93a9419c..68f4ccdf 100644 --- a/packages/debug-worker/src/parts/GetNewWatchExpressionsAccept/GetNewWatchExpressionsAccept.ts +++ b/packages/debug-worker/src/parts/GetNewWatchExpressionsAccept/GetNewWatchExpressionsAccept.ts @@ -34,8 +34,8 @@ export const getNewWatchExpressionsAccept = async ( const newExpression: WatchExpression = { expression: editingValue, - value: null, isEditing: false, + value: null, } const newWatchExpressions1 = watchExpressions.toSpliced(editingIndex, 1, newExpression) diff --git a/packages/debug-worker/src/parts/GetNewWatchExpressionsEvaluate/GetNewWatchExpressionsEvaluate.ts b/packages/debug-worker/src/parts/GetNewWatchExpressionsEvaluate/GetNewWatchExpressionsEvaluate.ts index 9f96b9b7..f1c75e24 100644 --- a/packages/debug-worker/src/parts/GetNewWatchExpressionsEvaluate/GetNewWatchExpressionsEvaluate.ts +++ b/packages/debug-worker/src/parts/GetNewWatchExpressionsEvaluate/GetNewWatchExpressionsEvaluate.ts @@ -9,8 +9,8 @@ export const getNewWatchExpressionsEvaluate = ( if (watchExpression.expression === expression) { return { ...watchExpression, - value: result, isEditing: false, + value: result, } } return watchExpression diff --git a/packages/debug-worker/src/parts/GetOpenInfo/GetOpenInfo.ts b/packages/debug-worker/src/parts/GetOpenInfo/GetOpenInfo.ts index 3f5c304a..0c1b4298 100644 --- a/packages/debug-worker/src/parts/GetOpenInfo/GetOpenInfo.ts +++ b/packages/debug-worker/src/parts/GetOpenInfo/GetOpenInfo.ts @@ -6,23 +6,23 @@ import { isSupportedOpenUri } from '../IsSupportedOpenUri/IsSupportedOpenUri.ts' export const getOpenInfo = (id: number, parsedScripts: ParsedScriptMap, item: CallStackItem): OpenInfo => { const { location } = item - const { scriptId, lineNumber, columnNumber } = location + const { columnNumber, lineNumber, scriptId } = location const script = parsedScripts[scriptId] - const { url, scriptLanguage } = script + const { scriptLanguage, url } = script if (isSupportedOpenUri(url)) { return { - uri: url, + columnIndex: columnNumber, languageId: scriptLanguage, rowIndex: lineNumber, - columnIndex: columnNumber, + uri: url, } } const debugUri = getDebugUri(id, scriptId) return { - uri: debugUri, + columnIndex: columnNumber, languageId: scriptLanguage, rowIndex: lineNumber, - columnIndex: columnNumber, + uri: debugUri, } } diff --git a/packages/debug-worker/src/parts/GetPausedInfo2/GetPausedInfo2.ts b/packages/debug-worker/src/parts/GetPausedInfo2/GetPausedInfo2.ts index 5b54950a..71b3781f 100644 --- a/packages/debug-worker/src/parts/GetPausedInfo2/GetPausedInfo2.ts +++ b/packages/debug-worker/src/parts/GetPausedInfo2/GetPausedInfo2.ts @@ -10,7 +10,7 @@ import * as GetScopeChain from '../GetScopeChain/GetScopeChain.ts' export const getPausedInfo2 = async (debugId: any, maxDescriptionLength: number): Promise => { const callFrames = await ExtensionHostDebug.getCallStack(debugId) const callStack = GetCallStack.getCallStack(callFrames) - const { reason, data } = await ExtensionHostDebug.getPausedStatus(debugId) + const { data, reason } = await ExtensionHostDebug.getPausedStatus(debugId) const scripts = await ExtensionHostDebug.getScripts(debugId) const scriptMap = createScriptMap(scripts) const { objectId } = callFrames[0].scopeChain[0].object @@ -34,12 +34,12 @@ export const getPausedInfo2 = async (debugId: any, maxDescriptionLength: number) const pausedReason = reason const pausedMessage = GetDebugPausedMessage.getDebugPausedMessage(reason) return { - scopeChain, - callStack, - pausedReason, - pausedMessage, callFrameId, + callStack, expandedIds: [objectId], + pausedMessage, + pausedReason, + scopeChain, scriptMap, } } diff --git a/packages/debug-worker/src/parts/GetRenderer/GetRenderer.ts b/packages/debug-worker/src/parts/GetRenderer/GetRenderer.ts index fcbcd062..a7a82e0a 100644 --- a/packages/debug-worker/src/parts/GetRenderer/GetRenderer.ts +++ b/packages/debug-worker/src/parts/GetRenderer/GetRenderer.ts @@ -10,18 +10,18 @@ import * as RenderSelection from '../RenderSelection/RenderSelection.ts' export const getRenderer = (diffType: number): Renderer => { switch (diffType) { - case DiffType.RenderItems: - return RenderItems.renderItems - case DiffType.RenderFocusContext: - return RenderFocusContext.renderFocusContext case DiffType.RenderFocus: return RenderFocus.renderFocus - case DiffType.RenderValue: - return RenderInputValue.renderInputValue - case DiffType.RenderSelection: - return RenderSelection.renderSelection + case DiffType.RenderFocusContext: + return RenderFocusContext.renderFocusContext + case DiffType.RenderItems: + return RenderItems.renderItems case DiffType.RenderPauseOnExceptions: return RenderPauseOnExceptions.renderPauseOnExceptions + case DiffType.RenderSelection: + return RenderSelection.renderSelection + case DiffType.RenderValue: + return RenderInputValue.renderInputValue default: throw new Error('unknown renderer') } diff --git a/packages/debug-worker/src/parts/GetRunAndDebugButtonsVirtualDom/GetRunAndDebugButtonsVirtualDom.ts b/packages/debug-worker/src/parts/GetRunAndDebugButtonsVirtualDom/GetRunAndDebugButtonsVirtualDom.ts index 68a27a3b..d068d70b 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugButtonsVirtualDom/GetRunAndDebugButtonsVirtualDom.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugButtonsVirtualDom/GetRunAndDebugButtonsVirtualDom.ts @@ -10,11 +10,11 @@ export const getRunAndDebugButtonsVirtualDom = (debugState: number): readonly Vi const debugButtons = GetDebugButtons.getDebugButtons(debugState) const dom = [ { - type: VirtualDomElements.Div, - className: ClassNames.DebugButtons, childCount: debugButtons.length, - role: AriaRoles.ToolBar, + className: ClassNames.DebugButtons, onClick: DomEventListenerFunctions.HandleClickDebugButton, + role: AriaRoles.ToolBar, + type: VirtualDomElements.Div, }, ...debugButtons.flatMap(GetDebugButtonVirtualDom.getDebugButtonVirtualDom), ] diff --git a/packages/debug-worker/src/parts/GetRunAndDebugRowRenderer/GetRunAndDebugRowRenderer.ts b/packages/debug-worker/src/parts/GetRunAndDebugRowRenderer/GetRunAndDebugRowRenderer.ts index 4ad99a0c..8ed365f4 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugRowRenderer/GetRunAndDebugRowRenderer.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugRowRenderer/GetRunAndDebugRowRenderer.ts @@ -12,26 +12,26 @@ import { renderMessage, renderNoop } from '../RunAndDebugRowRenderers/RunAndDebu export const getRowRenderer = (type: number): DebugRowRenderer => { switch (type) { - case DebugRowType.Message: - return renderMessage - case DebugRowType.SectionHeading: - return GetRunAndDebugRowSectionHeadingVirtualDom.renderSectionHeading case DebugRowType.CallStack: return renderCallStack - case DebugRowType.Scope: - return renderScope - case DebugRowType.Value: - case DebugRowType.Property: - case DebugRowType.Exception: - return renderValue case DebugRowType.CheckBox: return renderCheckBox - case DebugRowType.WatchMessage: - return renderWatchMessage - case DebugRowType.WatchExpression: - return renderWatchExpression + case DebugRowType.Exception: + case DebugRowType.Property: + case DebugRowType.Value: + return renderValue case DebugRowType.InputField: return renderInputField + case DebugRowType.Message: + return renderMessage + case DebugRowType.Scope: + return renderScope + case DebugRowType.SectionHeading: + return GetRunAndDebugRowSectionHeadingVirtualDom.renderSectionHeading + case DebugRowType.WatchExpression: + return renderWatchExpression + case DebugRowType.WatchMessage: + return renderWatchMessage default: return renderNoop } diff --git a/packages/debug-worker/src/parts/GetRunAndDebugRowSectionHeadingVirtualDom/GetRunAndDebugRowSectionHeadingVirtualDom.ts b/packages/debug-worker/src/parts/GetRunAndDebugRowSectionHeadingVirtualDom/GetRunAndDebugRowSectionHeadingVirtualDom.ts index 5ce1ec5a..b15a45c3 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugRowSectionHeadingVirtualDom/GetRunAndDebugRowSectionHeadingVirtualDom.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugRowSectionHeadingVirtualDom/GetRunAndDebugRowSectionHeadingVirtualDom.ts @@ -10,24 +10,24 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' export const renderSectionHeading = (row: DebugRow, selectedIndex: number, rowIndex: number): readonly VirtualDomNode[] => { - const { expanded, text, key, actions, index, setSize, posInset } = row + const { actions, expanded, index, key, posInset, setSize, text } = row const hasActions = actions && actions.length > 0 const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName(ClassNames.DebugSectionHeader + ' ' + ClassNames.DebugRow, isSelected) const nodes: VirtualDomNode[] = [ { - type: VirtualDomElements.Div, - className, - role: AriaRoles.TreeItem, ariaExpanded: expanded, ariaLevel: 1, + ariaPosInSet: posInset, + ariaSetSize: setSize, childCount: hasActions ? 3 : 2, + className, + 'data-index': index, + 'data-name': key, onClick: DomEventListenerFunctions.HandleClickSectionHeading, onContextMenu: DomEventListenerFunctions.HandleSectionHeaderContextMenu, - 'data-name': key, - 'data-index': index, - ariaPosInSet: posInset, - ariaSetSize: setSize, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, expanded ? GetChevronVirtualDom.getChevronDownVirtualDom() : GetChevronVirtualDom.getChevronRightVirtualDom(), VirtualDomHelpers.text(text), diff --git a/packages/debug-worker/src/parts/GetRunAndDebugVirtualDom2/GetRunAndDebugVirtualDom2.ts b/packages/debug-worker/src/parts/GetRunAndDebugVirtualDom2/GetRunAndDebugVirtualDom2.ts index d2219616..ef053cbc 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugVirtualDom2/GetRunAndDebugVirtualDom2.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugVirtualDom2/GetRunAndDebugVirtualDom2.ts @@ -7,11 +7,11 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts export const getRunAndDebugVirtualDom2 = (rows: readonly DebugRow[], selectedIndex: number, tokenColoringEnabled: boolean): readonly VirtualDomNode[] => { return [ { - type: VirtualDomElements.Div, - className: 'Viewlet RunAndDebug', - tabIndex: 0, childCount: rows.length, + className: 'Viewlet RunAndDebug', role: AriaRoles.Tree, + tabIndex: 0, + type: VirtualDomElements.Div, }, ...rows.flatMap((row, index) => GetRunAndDebugRowVirtualDom.getRunAndDebugRowVirtualDom(row, selectedIndex, index, tokenColoringEnabled)), ] diff --git a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRows/GetRunAndDebugVisibleRows.ts b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRows/GetRunAndDebugVisibleRows.ts index f1436293..b1625d2e 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRows/GetRunAndDebugVisibleRows.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRows/GetRunAndDebugVisibleRows.ts @@ -12,18 +12,18 @@ export const getRunAndDebugVisibleRows = (state: RunAndDebugState): readonly Deb if (state.debugState === DebugState.Unavailable) { return [ { - type: DebugRowType.Message, - text: DebugStrings.noScriptRunning(), + description: '', expanded: false, - key: 'no-script-running', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'no-script-running', + name: '', posInset: 1, + setSize: 1, + text: DebugStrings.noScriptRunning(), + type: DebugRowType.Message, + value: '', + valueType: '', }, ] } diff --git a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsBreakPoints/GetRunAndDebugVisibleRowsBreakPoints.ts b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsBreakPoints/GetRunAndDebugVisibleRowsBreakPoints.ts index 454fd6d4..3dda6e8b 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsBreakPoints/GetRunAndDebugVisibleRowsBreakPoints.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsBreakPoints/GetRunAndDebugVisibleRowsBreakPoints.ts @@ -8,7 +8,7 @@ import * as ExceptionBreakPoints from '../ExceptionBreakPoints/ExceptionBreakPoi import * as InputName from '../InputName/InputName.ts' export const getRunAndDebugVisibleRowsBreakPoints = (state: RunAndDebugState, startIndex: number, topLevelCount: number, topLevelIndex: number): readonly DebugRow[] => { - const { breakPointsExpanded, exceptionBreakPoints, breakPointsVisible } = state + const { breakPointsExpanded, breakPointsVisible, exceptionBreakPoints } = state if (!breakPointsVisible) { return [] @@ -18,63 +18,63 @@ export const getRunAndDebugVisibleRowsBreakPoints = (state: RunAndDebugState, st const setSize = 2 return [ { - type: DebugRowType.SectionHeading, - text: DebugStrings.breakPoints(), + description: '', expanded: true, - key: DebugSectionId.BreakPoints, - value: '', indent: 0, - valueType: '', - name: DebugRowName.BreakPoints, - description: '', index: startIndex, - setSize: topLevelCount, + key: DebugSectionId.BreakPoints, + name: DebugRowName.BreakPoints, posInset: topLevelIndex + 1, + setSize: topLevelCount, + text: DebugStrings.breakPoints(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, { - type: DebugRowType.CheckBox, - text: DebugStrings.pauseOnExceptions(), + description: '', expanded: exceptionBreakPoints === ExceptionBreakPoints.All, - key: '', - value: '', indent: 0, - valueType: '', - name: InputName.PauseOnExceptions, - description: '', index: startIndex + 1, - setSize, + key: '', + name: InputName.PauseOnExceptions, posInset: 2, - }, - { + setSize, + text: DebugStrings.pauseOnExceptions(), type: DebugRowType.CheckBox, - text: DebugStrings.pauseOnUncaughtExceptions(), - expanded: exceptionBreakPoints === ExceptionBreakPoints.Uncaught, - key: '', value: '', - indent: 0, valueType: '', - name: InputName.PauseOnUncaughtExceptions, + }, + { description: '', + expanded: exceptionBreakPoints === ExceptionBreakPoints.Uncaught, + indent: 0, index: startIndex + 2, - setSize, + key: '', + name: InputName.PauseOnUncaughtExceptions, posInset: 3, + setSize, + text: DebugStrings.pauseOnUncaughtExceptions(), + type: DebugRowType.CheckBox, + value: '', + valueType: '', }, ] } return [ { - type: DebugRowType.SectionHeading, - text: DebugStrings.breakPoints(), + description: '', expanded: breakPointsExpanded, - key: DebugSectionId.BreakPoints, - value: '', indent: 0, - valueType: '', - name: DebugRowName.BreakPoints, - description: '', index: startIndex, - setSize: topLevelCount, + key: DebugSectionId.BreakPoints, + name: DebugRowName.BreakPoints, posInset: topLevelIndex + 1, + setSize: topLevelCount, + text: DebugStrings.breakPoints(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ] } diff --git a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsCallStack/GetRunAndDebugVisibleRowsCallStack.ts b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsCallStack/GetRunAndDebugVisibleRowsCallStack.ts index 39f2c2ab..7f34610a 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsCallStack/GetRunAndDebugVisibleRowsCallStack.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsCallStack/GetRunAndDebugVisibleRowsCallStack.ts @@ -14,7 +14,7 @@ const unknownScript: ParsedScript = { } export const getRunAndDebugVisibleRowsCallStack = (state: RunAndDebugState, startingIndex: number, topLevelCount: number, topLevelIndex: number): readonly DebugRow[] => { - const { callStack, callStackExpanded, parsedScripts, callStackVisible } = state + const { callStack, callStackExpanded, callStackVisible, parsedScripts } = state if (!callStackVisible) { return [] @@ -23,74 +23,74 @@ export const getRunAndDebugVisibleRowsCallStack = (state: RunAndDebugState, star const rows: DebugRow[] = [] if (callStackExpanded) { rows.push({ - type: DebugRowType.SectionHeading, - text: DebugStrings.callStack(), + description: '', expanded: true, - key: DebugSectionId.CallStack, - value: '', indent: 0, - valueType: '', - name: DebugRowName.CallStack, - description: '', index: startingIndex, - setSize: topLevelCount, + key: DebugSectionId.CallStack, + name: DebugRowName.CallStack, posInset: topLevelIndex + 1, + setSize: topLevelCount, + text: DebugStrings.callStack(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) if (callStack.length === 0) { rows.push({ - type: DebugRowType.Message, - text: DebugStrings.notPaused(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: startingIndex + 1, - setSize: 1, + key: '', + name: '', posInset: 2, + setSize: 1, + text: DebugStrings.notPaused(), + type: DebugRowType.Message, + value: '', + valueType: '', }) } else { const setSize = callStack.length + 1 for (let i = 0; i < callStack.length; i++) { const item = callStack[i] - const { scriptId, lineNumber, columnNumber } = item.location + const { columnNumber, lineNumber, scriptId } = item.location const script = parsedScripts[scriptId] || unknownScript const description = formatLocation(script.url, lineNumber, columnNumber) const hasArrow = i === 0 rows.push({ - type: DebugRowType.CallStack, - text: item.functionName, - expanded: false, - key: DebugSectionId.CallStack, - value: '', - indent: 0, - valueType: '', - name: '', description, + expanded: false, hasArrow, + indent: 0, index: startingIndex + i + 1, - setSize: setSize, + key: DebugSectionId.CallStack, + name: '', posInset: i + 2, + setSize: setSize, + text: item.functionName, + type: DebugRowType.CallStack, + value: '', + valueType: '', }) } } } else { rows.push({ - type: DebugRowType.SectionHeading, - text: DebugStrings.callStack(), + description: '', expanded: false, - key: DebugSectionId.CallStack, - value: '', indent: 0, - valueType: '', - name: DebugRowName.CallStack, - description: '', index: startingIndex, - setSize: 1, + key: DebugSectionId.CallStack, + name: DebugRowName.CallStack, posInset: 1, + setSize: 1, + text: DebugStrings.callStack(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) } return rows diff --git a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsScope/GetRunAndDebugVisibleRowsScope.ts b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsScope/GetRunAndDebugVisibleRowsScope.ts index 099631e4..ab6df2fb 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsScope/GetRunAndDebugVisibleRowsScope.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsScope/GetRunAndDebugVisibleRowsScope.ts @@ -9,25 +9,25 @@ import { getScopeRenderer } from '../GetScopeRenderer/GetScopeRenderer.ts' import * as GetVisibleScopeItems from '../GetVisibleScopeItems/GetVisibleScopeItems.ts' export const getRunAndDebugVisibleRowsScope = (state: RunAndDebugState, startingIndex: number, topLevelCount: number, topLevelIndex: number): readonly DebugRow[] => { - const { scopeChain, scopeExpanded, expandedIds, scopeFocusedIndex, scopeVisible, debugState } = state + const { debugState, expandedIds, scopeChain, scopeExpanded, scopeFocusedIndex, scopeVisible } = state if (!scopeVisible) { return [] } const rows: DebugRow[] = [] if (scopeExpanded) { rows.push({ - type: DebugRowType.SectionHeading, - text: DebugStrings.scope(), + description: '', expanded: true, - key: DebugSectionId.Scope, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Scope, - description: '', index: startingIndex, - setSize: topLevelCount, + key: DebugSectionId.Scope, + name: DebugRowName.Scope, posInset: topLevelIndex + 1, + setSize: topLevelCount, + text: DebugStrings.scope(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) if (debugState === DebugState.Paused) { const visible = GetVisibleScopeItems.getVisibleScopeItems(scopeChain, expandedIds, scopeFocusedIndex) @@ -41,34 +41,34 @@ export const getRunAndDebugVisibleRowsScope = (state: RunAndDebugState, starting } } else { rows.push({ - type: DebugRowType.Message, - text: DebugStrings.notPaused(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: startingIndex + 1, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: DebugStrings.notPaused(), + type: DebugRowType.Message, + value: '', + valueType: '', }) } } else { rows.push({ - type: DebugRowType.SectionHeading, - text: DebugStrings.scope(), + description: '', expanded: false, - key: DebugSectionId.Scope, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Scope, - description: '', index: startingIndex, - setSize: topLevelCount, + key: DebugSectionId.Scope, + name: DebugRowName.Scope, posInset: 1, + setSize: topLevelCount, + text: DebugStrings.scope(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) } return rows diff --git a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatch/GetRunAndDebugVisibleRowsWatch.ts b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatch/GetRunAndDebugVisibleRowsWatch.ts index 2503dcb6..de54c22b 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatch/GetRunAndDebugVisibleRowsWatch.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatch/GetRunAndDebugVisibleRowsWatch.ts @@ -16,19 +16,19 @@ export const getRunAndDebugVisibleRowsWatch = (state: RunAndDebugState, startInd const rows: DebugRow[] = [ { - type: DebugRowType.SectionHeading, - text: DebugStrings.watch(), + actions: getWatchActions(watchExpanded), + description: '', expanded: watchExpanded, - key: DebugSectionId.Watch, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', - actions: getWatchActions(watchExpanded), index: 0, - setSize: topLevelCount, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, posInset: topLevelIndex + 1, + setSize: topLevelCount, + text: DebugStrings.watch(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ] diff --git a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatchContent/GetRunAndDebugVisibleRowsWatchContent.ts b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatchContent/GetRunAndDebugVisibleRowsWatchContent.ts index 6f13d59e..ee537c61 100644 --- a/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatchContent/GetRunAndDebugVisibleRowsWatchContent.ts +++ b/packages/debug-worker/src/parts/GetRunAndDebugVisibleRowsWatchContent/GetRunAndDebugVisibleRowsWatchContent.ts @@ -11,33 +11,33 @@ const formatValue = (value: any): string => { const renderWatchExpression = (expression: string, value: any, isEditing: boolean, relativeIndex: number, index: number, setSize: number): DebugRow => { if (isEditing) { return { - type: DebugRowType.InputField, - text: '', + description: '', expanded: false, - key: 'new-watch-expression', - value: '', indent: 0, - valueType: '', - name: InputName.WatchExpressionInput, - description: '', index, - setSize, + key: 'new-watch-expression', + name: InputName.WatchExpressionInput, posInset: relativeIndex + 1, + setSize, + text: '', + type: DebugRowType.InputField, + value: '', + valueType: '', } } return { - type: DebugRowType.WatchExpression, - text: expression, + description: '', expanded: false, - key: expression, - value: formatValue(value), indent: 0, - valueType: '', - name: '', - description: '', index, - setSize, + key: expression, + name: '', posInset: relativeIndex + 1, + setSize, + text: expression, + type: DebugRowType.WatchExpression, + value: formatValue(value), + valueType: '', } } @@ -46,18 +46,18 @@ export const getRunAndDebugVisibleRowsWatchContent = (watchExpressions: readonly if (watchExpressions.length === 0) { rows.push({ - type: DebugRowType.WatchMessage, - text: DebugStrings.noWatchExpression(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: startIndex + 1, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: DebugStrings.noWatchExpression(), + type: DebugRowType.WatchMessage, + value: '', + valueType: '', }) } else { const setSize = watchExpressions.length diff --git a/packages/debug-worker/src/parts/GetScopeChain/GetScopeChain.ts b/packages/debug-worker/src/parts/GetScopeChain/GetScopeChain.ts index a5d375d4..da9c1138 100644 --- a/packages/debug-worker/src/parts/GetScopeChain/GetScopeChain.ts +++ b/packages/debug-worker/src/parts/GetScopeChain/GetScopeChain.ts @@ -19,35 +19,35 @@ export const getScopeChain = (params: any, thisObject: any, scopeChain: any, kno for (const scope of scopeChain) { const label = DebugDisplay.getScopeLabel(scope) elements.push({ - type: DebugScopeChainType.Scope, + indent: 10, key: label, - value: '', - valueType: '', label, objectId: scope.object.objectId, - indent: 10, + type: DebugScopeChainType.Scope, + value: '', + valueType: '', }) // if(params.reason) if (scope.type === DebugScopeType.Local) { if (params.reason === DebugPausedReason.Exception) { const value = getDescriptionValueLabel(params) elements.push({ - type: DebugScopeChainType.Exception, + indent: 20, key: 'Exception', + objectId: scope.object.objectId, + type: DebugScopeChainType.Exception, value, valueType: '', - objectId: scope.object.objectId, - indent: 20, }) } const valueLabel = GetDebugPropertyValueLabel.getDebugPropertyValueLabel(thisObject, descriptionLength) elements.push({ - type: DebugScopeChainType.This, + indent: 20, key: 'this', + objectId: '', + type: DebugScopeChainType.This, value: valueLabel, valueType: thisObject.type, - objectId: '', - indent: 20, }) } const children = knownProperties[scope.object.objectId] @@ -55,12 +55,12 @@ export const getScopeChain = (params: any, thisObject: any, scopeChain: any, kno for (const child of children.result.result) { const valueLabel = GetDebugPropertyValueLabel.getDebugPropertyValueLabel(child.value, descriptionLength) elements.push({ - type: DebugScopeChainType.Property, + indent: 20, key: child.name, + objectId: GetDebugValueObjectId.getDebugValueObjectId(child), + type: DebugScopeChainType.Property, value: valueLabel, valueType: GetDebugValueType.getDebugValueType(child), - objectId: GetDebugValueObjectId.getDebugValueObjectId(child), - indent: 20, }) } } diff --git a/packages/debug-worker/src/parts/GetScopeRenderer/GetScopeRenderer.ts b/packages/debug-worker/src/parts/GetScopeRenderer/GetScopeRenderer.ts index bed96f01..13040af9 100644 --- a/packages/debug-worker/src/parts/GetScopeRenderer/GetScopeRenderer.ts +++ b/packages/debug-worker/src/parts/GetScopeRenderer/GetScopeRenderer.ts @@ -8,14 +8,14 @@ import { getScopeThisRows } from '../ScopeRenderers/GetScopeThisRows.ts' export const getScopeRenderer = (type: number): ScopeRenderer => { switch (type) { - case DebugScopeChainType.This: - return getScopeThisRows case DebugScopeChainType.Exception: return getScopeExceptionRows - case DebugScopeChainType.Scope: - return getScopeScopeRows case DebugScopeChainType.Property: return getScopePropertyRows + case DebugScopeChainType.Scope: + return getScopeScopeRows + case DebugScopeChainType.This: + return getScopeThisRows default: return getNoopRows } diff --git a/packages/debug-worker/src/parts/GetSectionClickHandler/GetSectionClickHandler.ts b/packages/debug-worker/src/parts/GetSectionClickHandler/GetSectionClickHandler.ts index f9a12f8c..61ff8555 100644 --- a/packages/debug-worker/src/parts/GetSectionClickHandler/GetSectionClickHandler.ts +++ b/packages/debug-worker/src/parts/GetSectionClickHandler/GetSectionClickHandler.ts @@ -8,14 +8,14 @@ import { handleClickSectionWatch } from '../HandleClickSectionWatch/HandleClickS export const getSectionClickHandler = (id: string): SectionClickHandler => { switch (id) { - case DebugSectionId.Watch: - return handleClickSectionWatch case DebugSectionId.BreakPoints: return handleClickSectionBreakPoints - case DebugSectionId.Scope: - return handleClickSectionScope case DebugSectionId.CallStack: return handleClickSectionCallstack + case DebugSectionId.Scope: + return handleClickSectionScope + case DebugSectionId.Watch: + return handleClickSectionWatch default: return handleClickSectionUnknown } diff --git a/packages/debug-worker/src/parts/GetWatchActions/GetWatchActions.ts b/packages/debug-worker/src/parts/GetWatchActions/GetWatchActions.ts index 3bfb51e7..fd77425a 100644 --- a/packages/debug-worker/src/parts/GetWatchActions/GetWatchActions.ts +++ b/packages/debug-worker/src/parts/GetWatchActions/GetWatchActions.ts @@ -7,14 +7,14 @@ export const getWatchActions = (watchExpanded: boolean): readonly DebugRowAction } return [ { + icon: '+', id: InputName.AddWatchExpression, title: 'Add new watch expression', - icon: '+', }, { + icon: '↻', id: InputName.RefreshWatchExpressions, title: 'Refresh watch expressions', - icon: '↻', }, ] } diff --git a/packages/debug-worker/src/parts/HandleClickCallstackItem/HandleClickCallstackItem.ts b/packages/debug-worker/src/parts/HandleClickCallstackItem/HandleClickCallstackItem.ts index 0236c48a..410d6171 100644 --- a/packages/debug-worker/src/parts/HandleClickCallstackItem/HandleClickCallstackItem.ts +++ b/packages/debug-worker/src/parts/HandleClickCallstackItem/HandleClickCallstackItem.ts @@ -10,7 +10,7 @@ export const handleClickCallstackItem = async (state: RunAndDebugState, dataInde if (!item) { return state } - const { uri, languageId, rowIndex, columnIndex } = getOpenInfo(id, parsedScripts, item) + const { columnIndex, languageId, rowIndex, uri } = getOpenInfo(id, parsedScripts, item) await OpenUri.openUri(uri, languageId, rowIndex, columnIndex) return state } diff --git a/packages/debug-worker/src/parts/HandleClickPauseOnExceptions/HandleClickPauseOnExceptions.ts b/packages/debug-worker/src/parts/HandleClickPauseOnExceptions/HandleClickPauseOnExceptions.ts index 4435c65b..78ea0954 100644 --- a/packages/debug-worker/src/parts/HandleClickPauseOnExceptions/HandleClickPauseOnExceptions.ts +++ b/packages/debug-worker/src/parts/HandleClickPauseOnExceptions/HandleClickPauseOnExceptions.ts @@ -5,12 +5,12 @@ import { setPauseOnExceptions } from '../SetPauseOnExceptions/SetPauseOnExceptio export const handleClickPauseOnExceptions = async (state: RunAndDebugState): Promise => { const { exceptionBreakPoints } = state switch (exceptionBreakPoints) { + case ExceptionBreakPoints.All: + return setPauseOnExceptions(state, ExceptionBreakPoints.None) case ExceptionBreakPoints.None: return setPauseOnExceptions(state, ExceptionBreakPoints.All) case ExceptionBreakPoints.Uncaught: return setPauseOnExceptions(state, ExceptionBreakPoints.All) - case ExceptionBreakPoints.All: - return setPauseOnExceptions(state, ExceptionBreakPoints.None) default: return state } diff --git a/packages/debug-worker/src/parts/HandleClickPauseOnUncaughtExceptions/HandleClickPauseOnUncaughtExceptions.ts b/packages/debug-worker/src/parts/HandleClickPauseOnUncaughtExceptions/HandleClickPauseOnUncaughtExceptions.ts index 8ec7887f..d26467d2 100644 --- a/packages/debug-worker/src/parts/HandleClickPauseOnUncaughtExceptions/HandleClickPauseOnUncaughtExceptions.ts +++ b/packages/debug-worker/src/parts/HandleClickPauseOnUncaughtExceptions/HandleClickPauseOnUncaughtExceptions.ts @@ -4,12 +4,12 @@ import { setPauseOnExceptions } from '../SetPauseOnExceptions/SetPauseOnExceptio const getNewExceptionState = (exceptionState: number): number => { switch (exceptionState) { + case ExceptionBreakPoints.All: + return ExceptionBreakPoints.None case ExceptionBreakPoints.None: return ExceptionBreakPoints.Uncaught case ExceptionBreakPoints.Uncaught: return ExceptionBreakPoints.None - case ExceptionBreakPoints.All: - return ExceptionBreakPoints.None default: return exceptionState } diff --git a/packages/debug-worker/src/parts/HandleClickScopeChainIndex/HandleClickScopeChainIndex.ts b/packages/debug-worker/src/parts/HandleClickScopeChainIndex/HandleClickScopeChainIndex.ts index be9fceed..a6565abb 100644 --- a/packages/debug-worker/src/parts/HandleClickScopeChainIndex/HandleClickScopeChainIndex.ts +++ b/packages/debug-worker/src/parts/HandleClickScopeChainIndex/HandleClickScopeChainIndex.ts @@ -3,7 +3,7 @@ import { collapseScopeChain } from '../CollapseScopeChain/CollapseScopeChain.ts' import { expandScopeChain } from '../ExpandScopeChain/ExpandScopeChain.ts' export const handleClickScopeChainIndex = async (state: RunAndDebugState, scopeChainIndex: number, index: number): Promise => { - const { expandedIds, scopeChain, debugId } = state + const { debugId, expandedIds, scopeChain } = state const element = scopeChain[scopeChainIndex] if (expandedIds.includes(element.objectId)) { return collapseScopeChain(state, expandedIds, scopeChain, element, scopeChainIndex, index) diff --git a/packages/debug-worker/src/parts/HandleClickSectionBreakPoints/HandleClickSectionBreakPoints.ts b/packages/debug-worker/src/parts/HandleClickSectionBreakPoints/HandleClickSectionBreakPoints.ts index 0bc0d234..22159a7a 100644 --- a/packages/debug-worker/src/parts/HandleClickSectionBreakPoints/HandleClickSectionBreakPoints.ts +++ b/packages/debug-worker/src/parts/HandleClickSectionBreakPoints/HandleClickSectionBreakPoints.ts @@ -9,8 +9,8 @@ export const handleClickSectionBreakPoints = (state: RunAndDebugState): RunAndDe const newState: RunAndDebugState = { ...state, breakPointsExpanded: !breakPointsExpanded, - selectedIndex: getSectionIndex(state, DebugRowName.BreakPoints), focus: WhenExpression.FocusDebugRow, + selectedIndex: getSectionIndex(state, DebugRowName.BreakPoints), } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/HandleClickSectionCallstack/HandleClickSectionCallstack.ts b/packages/debug-worker/src/parts/HandleClickSectionCallstack/HandleClickSectionCallstack.ts index cb441be0..832f66ce 100644 --- a/packages/debug-worker/src/parts/HandleClickSectionCallstack/HandleClickSectionCallstack.ts +++ b/packages/debug-worker/src/parts/HandleClickSectionCallstack/HandleClickSectionCallstack.ts @@ -9,8 +9,8 @@ export const handleClickSectionCallstack = (state: RunAndDebugState): RunAndDebu const newState: RunAndDebugState = { ...state, callStackExpanded: !callStackExpanded, - selectedIndex: getSectionIndex(state, DebugRowName.CallStack), focus: WhenExpression.FocusDebugRow, + selectedIndex: getSectionIndex(state, DebugRowName.CallStack), } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/HandleClickSectionScope/HandleClickSectionScope.ts b/packages/debug-worker/src/parts/HandleClickSectionScope/HandleClickSectionScope.ts index 34e81d91..ed2aa197 100644 --- a/packages/debug-worker/src/parts/HandleClickSectionScope/HandleClickSectionScope.ts +++ b/packages/debug-worker/src/parts/HandleClickSectionScope/HandleClickSectionScope.ts @@ -8,9 +8,9 @@ export const handleClickSectionScope = (state: RunAndDebugState): RunAndDebugSta const { scopeExpanded } = state const newState: RunAndDebugState = { ...state, + focus: WhenExpression.FocusDebugRow, scopeExpanded: !scopeExpanded, selectedIndex: getSectionIndex(state, DebugRowName.Scope), - focus: WhenExpression.FocusDebugRow, } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/HandleClickSectionWatch/HandleClickSectionWatch.ts b/packages/debug-worker/src/parts/HandleClickSectionWatch/HandleClickSectionWatch.ts index 96cb87cd..080ee9b2 100644 --- a/packages/debug-worker/src/parts/HandleClickSectionWatch/HandleClickSectionWatch.ts +++ b/packages/debug-worker/src/parts/HandleClickSectionWatch/HandleClickSectionWatch.ts @@ -8,9 +8,9 @@ export const handleClickSectionWatch = (state: RunAndDebugState): RunAndDebugSta const { watchExpanded } = state const newState: RunAndDebugState = { ...state, - watchExpanded: !watchExpanded, - selectedIndex: getSectionIndex(state, DebugRowName.Watch), focus: WhenExpression.FocusDebugRow, + selectedIndex: getSectionIndex(state, DebugRowName.Watch), + watchExpanded: !watchExpanded, } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/HandlePaused/HandlePaused.ts b/packages/debug-worker/src/parts/HandlePaused/HandlePaused.ts index 82baf28c..5162c93f 100644 --- a/packages/debug-worker/src/parts/HandlePaused/HandlePaused.ts +++ b/packages/debug-worker/src/parts/HandlePaused/HandlePaused.ts @@ -60,7 +60,7 @@ export const handleDebugInput = (state: RunAndDebugState, value: any): RunAndDeb } export const handleEvaluate = async (state: RunAndDebugState): Promise => { - const { debugInputValue, callFrameId, debugId } = state + const { callFrameId, debugId, debugInputValue } = state const result = await Debug.evaluate(debugId, debugInputValue, callFrameId) // @ts-ignore const actualResult = result.result.result.value diff --git a/packages/debug-worker/src/parts/HandlePaused2/HandlePaused2.ts b/packages/debug-worker/src/parts/HandlePaused2/HandlePaused2.ts index 3c159843..0b1bf920 100644 --- a/packages/debug-worker/src/parts/HandlePaused2/HandlePaused2.ts +++ b/packages/debug-worker/src/parts/HandlePaused2/HandlePaused2.ts @@ -7,20 +7,20 @@ import { updateVisibleRows } from '../UpdateVisibleRows/UpdateVisibleRows.ts' export const handlePaused2 = async (state: RunAndDebugState): Promise => { const { debugId, watchExpressions } = state try { - const { callFrameId, callStack, scopeChain, pausedMessage, pausedReason, expandedIds, scriptMap } = await getPausedInfo2(debugId, state.maxDescriptionLength) + const { callFrameId, callStack, expandedIds, pausedMessage, pausedReason, scopeChain, scriptMap } = await getPausedInfo2(debugId, state.maxDescriptionLength) // TODO move this to getPausedInfo2 const newWatchExpressions = await evaluateWatchExpressions(debugId, callFrameId, watchExpressions) const newState = { ...state, - debugState: DebugState.Paused, - scopeChain, - scopeExpanded: true, - callStack, - pausedReason, - pausedMessage, callFrameId, + callStack, + debugState: DebugState.Paused, expandedIds, parsedScripts: scriptMap, + pausedMessage, + pausedReason, + scopeChain, + scopeExpanded: true, watchExpressions: newWatchExpressions, } return updateVisibleRows(newState) diff --git a/packages/debug-worker/src/parts/HandleResumed/HandleResumed.ts b/packages/debug-worker/src/parts/HandleResumed/HandleResumed.ts index f00724e6..510e1722 100644 --- a/packages/debug-worker/src/parts/HandleResumed/HandleResumed.ts +++ b/packages/debug-worker/src/parts/HandleResumed/HandleResumed.ts @@ -6,12 +6,12 @@ import { updateVisibleRows } from '../UpdateVisibleRows/UpdateVisibleRows.ts' export const handleResumed = (state: RunAndDebugState): RunAndDebugState => { const newState = { ...state, - debugState: DebugState.Default, - scopeChain: [], + callFrameId: '', callStack: [], + debugState: DebugState.Default, pausedMessage: '', pausedReason: DebugPausedReason.None, - callFrameId: '', + scopeChain: [], } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/Highlight/Highlight.ts b/packages/debug-worker/src/parts/Highlight/Highlight.ts index c49543d6..97f5731e 100644 --- a/packages/debug-worker/src/parts/Highlight/Highlight.ts +++ b/packages/debug-worker/src/parts/Highlight/Highlight.ts @@ -1,5 +1,5 @@ export interface Highlight { - readonly uri: string - readonly rowIndex: number readonly columnIndex: number + readonly rowIndex: number + readonly uri: string } diff --git a/packages/debug-worker/src/parts/KeyBinding/KeyBinding.ts b/packages/debug-worker/src/parts/KeyBinding/KeyBinding.ts index b01aed32..82c5b03a 100644 --- a/packages/debug-worker/src/parts/KeyBinding/KeyBinding.ts +++ b/packages/debug-worker/src/parts/KeyBinding/KeyBinding.ts @@ -1,5 +1,5 @@ export interface KeyBinding { - readonly key: number readonly command: string + readonly key: number readonly when?: number } diff --git a/packages/debug-worker/src/parts/LoadContent/LoadContent.ts b/packages/debug-worker/src/parts/LoadContent/LoadContent.ts index 4eb9c12f..3b999cc9 100644 --- a/packages/debug-worker/src/parts/LoadContent/LoadContent.ts +++ b/packages/debug-worker/src/parts/LoadContent/LoadContent.ts @@ -8,19 +8,19 @@ export const loadContent = async (state: RunAndDebugState, isTest: boolean, save if (isTest) { savedState = {} } - const { watchExpressions, watchExpanded, breakPointsExpanded, scopeExpanded, focus, editingValue } = restoreState(savedState) + const { breakPointsExpanded, editingValue, focus, scopeExpanded, watchExpanded, watchExpressions } = restoreState(savedState) const debugId = getDebugId(isTest) const newState = { ...state, + breakPointsExpanded, + callStackExpanded: true, debugId, debugState: DebugState.Default, + editingValue, + focus, scopeExpanded, - callStackExpanded: true, - breakPointsExpanded, - watchExpressions, watchExpanded, - focus, - editingValue, + watchExpressions, } return updateVisibleRows(newState) } diff --git a/packages/debug-worker/src/parts/MenuEntry/MenuEntry.ts b/packages/debug-worker/src/parts/MenuEntry/MenuEntry.ts index 6d866102..b7bf9dec 100644 --- a/packages/debug-worker/src/parts/MenuEntry/MenuEntry.ts +++ b/packages/debug-worker/src/parts/MenuEntry/MenuEntry.ts @@ -1,6 +1,6 @@ export interface MenuEntry { + readonly command: string + readonly flags: number readonly id: string readonly label: string - readonly flags: number - readonly command: string } diff --git a/packages/debug-worker/src/parts/OpenAtPausedLocation/OpenAtPausedLocation.ts b/packages/debug-worker/src/parts/OpenAtPausedLocation/OpenAtPausedLocation.ts index fd84788e..3ecb9951 100644 --- a/packages/debug-worker/src/parts/OpenAtPausedLocation/OpenAtPausedLocation.ts +++ b/packages/debug-worker/src/parts/OpenAtPausedLocation/OpenAtPausedLocation.ts @@ -18,7 +18,7 @@ export const openAtPausedLocation = async (): Promise => { } const first = callStack[0] const { functionLocation } = first - const { scriptId, lineNumber, columnNumber } = functionLocation + const { columnNumber, lineNumber, scriptId } = functionLocation const uri = getDebugUri(key, scriptId) const rowIndex = lineNumber const columnIndex = columnNumber diff --git a/packages/debug-worker/src/parts/OpenInfo/OpenInfo.ts b/packages/debug-worker/src/parts/OpenInfo/OpenInfo.ts index df9b30d9..d936d264 100644 --- a/packages/debug-worker/src/parts/OpenInfo/OpenInfo.ts +++ b/packages/debug-worker/src/parts/OpenInfo/OpenInfo.ts @@ -1,6 +1,6 @@ export interface OpenInfo { - readonly uri: string + readonly columnIndex: number readonly languageId: string readonly rowIndex: number - readonly columnIndex: number + readonly uri: string } diff --git a/packages/debug-worker/src/parts/OpenUri/OpenUri.ts b/packages/debug-worker/src/parts/OpenUri/OpenUri.ts index bc8af450..0f15cb42 100644 --- a/packages/debug-worker/src/parts/OpenUri/OpenUri.ts +++ b/packages/debug-worker/src/parts/OpenUri/OpenUri.ts @@ -2,9 +2,9 @@ import { RendererWorker } from '@lvce-editor/rpc-registry' export const openUri = async (uri: string, languageId: string, rowIndex: number, columnIndex: number): Promise => { const focus = true const options = { + columnIndex, languageId, rowIndex, - columnIndex, } await RendererWorker.openUri(uri, focus, options) } diff --git a/packages/debug-worker/src/parts/PausedInfo2/PausedInfo2.ts b/packages/debug-worker/src/parts/PausedInfo2/PausedInfo2.ts index 92272764..9cc397e0 100644 --- a/packages/debug-worker/src/parts/PausedInfo2/PausedInfo2.ts +++ b/packages/debug-worker/src/parts/PausedInfo2/PausedInfo2.ts @@ -3,11 +3,11 @@ import type { ParsedScriptMap } from '../ParsedScriptMap/ParsedScriptMap.ts' import type { ScopeChainItem } from '../ScopeChainItem/ScopeChainItem.ts' export interface PausedInfo2 { - readonly scopeChain: readonly ScopeChainItem[] - readonly callStack: readonly CallStackItem[] - readonly pausedReason: any - readonly pausedMessage: string readonly callFrameId: any + readonly callStack: readonly CallStackItem[] readonly expandedIds: readonly any[] + readonly pausedMessage: string + readonly pausedReason: any + readonly scopeChain: readonly ScopeChainItem[] readonly scriptMap: ParsedScriptMap } diff --git a/packages/debug-worker/src/parts/RefreshWatchExpression/RefreshWatchExpression.ts b/packages/debug-worker/src/parts/RefreshWatchExpression/RefreshWatchExpression.ts index 4fc34ea0..103c5db5 100644 --- a/packages/debug-worker/src/parts/RefreshWatchExpression/RefreshWatchExpression.ts +++ b/packages/debug-worker/src/parts/RefreshWatchExpression/RefreshWatchExpression.ts @@ -3,7 +3,7 @@ import * as DebugState from '../DebugState/DebugState.ts' import { evaluateWatchExpressions } from '../EvaluateWatchExpressions/EvaluateWatchExpressions.ts' export const refreshWatchExpression = async (state: RunAndDebugState): Promise => { - const { debugId, callFrameId, debugState, watchExpressions } = state + const { callFrameId, debugId, debugState, watchExpressions } = state if (debugState !== DebugState.Paused) { return state diff --git a/packages/debug-worker/src/parts/Render2/Render2.ts b/packages/debug-worker/src/parts/Render2/Render2.ts index 4081f51b..6439d96a 100644 --- a/packages/debug-worker/src/parts/Render2/Render2.ts +++ b/packages/debug-worker/src/parts/Render2/Render2.ts @@ -3,7 +3,7 @@ import * as ApplyRender from '../ApplyRender/ApplyRender.ts' import * as RunAndDebugStates from '../RunAndDebugStates/RunAndDebugStates.ts' export const render2 = (uid: number, diffResult: readonly number[]): readonly ViewletCommand[] => { - const { oldState, newState } = RunAndDebugStates.get(uid) + const { newState, oldState } = RunAndDebugStates.get(uid) RunAndDebugStates.set(uid, newState, newState) const commands = ApplyRender.applyRender(oldState, newState, diffResult) return commands diff --git a/packages/debug-worker/src/parts/RenderActions/RenderActions.ts b/packages/debug-worker/src/parts/RenderActions/RenderActions.ts index 5b0df548..42d0c471 100644 --- a/packages/debug-worker/src/parts/RenderActions/RenderActions.ts +++ b/packages/debug-worker/src/parts/RenderActions/RenderActions.ts @@ -5,7 +5,7 @@ import * as RunAndDebugStates from '../RunAndDebugStates/RunAndDebugStates.ts' export const renderActions = (uid: number): readonly VirtualDomNode[] => { const { newState } = RunAndDebugStates.get(uid) - const { scopeExpanded, debugState } = newState + const { debugState, scopeExpanded } = newState if (debugState === DebugState.Unavailable) { return [] diff --git a/packages/debug-worker/src/parts/RenderCallStack/RenderCallStack.ts b/packages/debug-worker/src/parts/RenderCallStack/RenderCallStack.ts index 96d8f34a..c5c7aecd 100644 --- a/packages/debug-worker/src/parts/RenderCallStack/RenderCallStack.ts +++ b/packages/debug-worker/src/parts/RenderCallStack/RenderCallStack.ts @@ -9,32 +9,32 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' const labelNode: VirtualDomNode = { - type: VirtualDomElements.Div, - className: ClassNames.CallStackLabel, childCount: 1, + className: ClassNames.CallStackLabel, + type: VirtualDomElements.Div, } const descriptionNode: VirtualDomNode = { - type: VirtualDomElements.Div, - className: ClassNames.CallStackDescription, childCount: 1, + className: ClassNames.CallStackDescription, + type: VirtualDomElements.Div, } export const renderCallStack = (row: DebugRow, selectedIndex: number, rowIndex: number): readonly VirtualDomNode[] => { - const { text, description, hasArrow, index } = row + const { description, hasArrow, index, text } = row const childCount = hasArrow ? 3 : 2 const arrowNodes = getArrowNodes(hasArrow) const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName('DebugRow DebugRowCallStack', isSelected) return [ { - type: VirtualDomElements.Div, - className, - role: AriaRoles.TreeItem, ariaLevel: 2, childCount, - onClick: DomEventListenerFunctions.HandleClickCallStackItem, + className, 'data-index': index, + onClick: DomEventListenerFunctions.HandleClickCallStackItem, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, ...arrowNodes, labelNode, diff --git a/packages/debug-worker/src/parts/RenderCheckBox/RenderCheckBox.ts b/packages/debug-worker/src/parts/RenderCheckBox/RenderCheckBox.ts index af132d8a..eeb6f1c5 100644 --- a/packages/debug-worker/src/parts/RenderCheckBox/RenderCheckBox.ts +++ b/packages/debug-worker/src/parts/RenderCheckBox/RenderCheckBox.ts @@ -9,34 +9,34 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' export const renderCheckBox = (row: DebugRow, selectedIndex: number, rowIndex: number): readonly VirtualDomNode[] => { - const { text, expanded, name, index, posInset, setSize } = row + const { expanded, index, name, posInset, setSize, text } = row const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName(ClassNames.DebugRow, isSelected) return [ { - type: VirtualDomElements.Div, - className, - role: AriaRoles.TreeItem, ariaLevel: 2, - childCount: 2, ariaPosInSet: posInset, ariaSetSize: setSize, + childCount: 2, + className, 'data-index': index, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Input, - inputType: InputType.CheckBox, - name, checked: expanded, childCount: 0, - onChange: DomEventListenerFunctions.HandleClickCheckBox, id: name, + inputType: InputType.CheckBox, + name, + onChange: DomEventListenerFunctions.HandleClickCheckBox, + type: VirtualDomElements.Input, }, { - type: VirtualDomElements.Label, + childCount: 1, className: ClassNames.InputLabel, htmlFor: name, - childCount: 1, + type: VirtualDomElements.Label, }, VirtualDomHelpers.text(text), ] diff --git a/packages/debug-worker/src/parts/RenderDebugValue/RenderDebugValue.ts b/packages/debug-worker/src/parts/RenderDebugValue/RenderDebugValue.ts index 6390930d..00a88340 100644 --- a/packages/debug-worker/src/parts/RenderDebugValue/RenderDebugValue.ts +++ b/packages/debug-worker/src/parts/RenderDebugValue/RenderDebugValue.ts @@ -11,7 +11,7 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' export const renderValue = (row: DebugRow, selectedIndex: number, rowIndex: number, tokenColoringEnabled: boolean): readonly VirtualDomNode[] => { - const { indent, key, value, valueType, expanded, tokens, index } = row + const { expanded, indent, index, key, tokens, value, valueType } = row const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName(ClassNames.DebugRow, isSelected) @@ -21,10 +21,10 @@ export const renderValue = (row: DebugRow, selectedIndex: number, rowIndex: numb valueChildren = [] for (let i = 0; i < tokens.length; i += 2) { valueChildren.push({ - type: VirtualDomElements.Span, - className: `DebugToken DebugToken${tokens[i + 1]}`, childCount: 1, children: [VirtualDomHelpers.text(tokens[i])], + className: `DebugToken DebugToken${tokens[i + 1]}`, + type: VirtualDomElements.Span, }) } } else { @@ -33,27 +33,27 @@ export const renderValue = (row: DebugRow, selectedIndex: number, rowIndex: numb return [ { - type: VirtualDomElements.Div, - className: className, - role: AriaRoles.TreeItem, ariaExpanded: expanded, ariaLevel: 3, - paddingLeft: indent, - onPointerDown: DomEventListenerFunctions.HandleClickScopeValue, childCount: 3, + className: className, 'data-index': index, + onPointerDown: DomEventListenerFunctions.HandleClickScopeValue, + paddingLeft: indent, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Span, - className: 'DebugValue DebugPropertyKey', childCount: 1, + className: 'DebugValue DebugPropertyKey', + type: VirtualDomElements.Span, }, VirtualDomHelpers.text(key), separator, { - type: VirtualDomElements.Span, - className: MergeClassNames.mergeClassNames(ClassNames.DebugValue, GetDebugValueClassName.getDebugValueClassName(valueType)), childCount: hasTokens ? valueChildren.length / 2 : 1, + className: MergeClassNames.mergeClassNames(ClassNames.DebugValue, GetDebugValueClassName.getDebugValueClassName(valueType)), + type: VirtualDomElements.Span, }, ...valueChildren, ] diff --git a/packages/debug-worker/src/parts/RenderFocus/RenderFocus.ts b/packages/debug-worker/src/parts/RenderFocus/RenderFocus.ts index 1ef7908a..eee3d920 100644 --- a/packages/debug-worker/src/parts/RenderFocus/RenderFocus.ts +++ b/packages/debug-worker/src/parts/RenderFocus/RenderFocus.ts @@ -3,7 +3,7 @@ import type { ViewletCommand } from '../ViewletCommand/ViewletCommand.ts' import { getFocusSelector } from '../GetFocusSelector/GetFocusSelector.ts' export const renderFocus = (oldState: RunAndDebugState, newState: RunAndDebugState): ViewletCommand => { - const { uid: id, focus } = newState + const { focus, uid: id } = newState const selector = getFocusSelector(focus) if (!selector) { return ['Viewlet.focusElementByName', id, ''] diff --git a/packages/debug-worker/src/parts/RenderInputField/RenderInputField.ts b/packages/debug-worker/src/parts/RenderInputField/RenderInputField.ts index 2bf46da1..908c8129 100644 --- a/packages/debug-worker/src/parts/RenderInputField/RenderInputField.ts +++ b/packages/debug-worker/src/parts/RenderInputField/RenderInputField.ts @@ -8,30 +8,30 @@ import * as InputType from '../InputType/InputType.ts' import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts' export const renderInputField = (row: DebugRow, selectedIndex: number, rowIndex: number): readonly VirtualDomNode[] => { - const { text, name } = row + const { name, text } = row const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName(`${ClassNames.DebugRow} ${ClassNames.DebugRowInputField}`, isSelected) return [ { - type: VirtualDomElements.Div, - className, - role: AriaRoles.TreeItem, ariaLevel: 2, childCount: 1, + className, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Input, - inputType: InputType.Text, - spellcheck: false, autocapitalize: 'off', autocorrect: 'off', + childCount: 0, className: ClassNames.InputBox, + id: name, + inputType: InputType.Text, name, - value: text, - childCount: 0, - onInput: DomEventListenerFunctions.HandleInputFieldChange, onBlur: DomEventListenerFunctions.HandleInputBlur, - id: name, + onInput: DomEventListenerFunctions.HandleInputFieldChange, + spellcheck: false, + type: VirtualDomElements.Input, + value: text, }, ] } diff --git a/packages/debug-worker/src/parts/RenderInputValue/RenderInputValue.ts b/packages/debug-worker/src/parts/RenderInputValue/RenderInputValue.ts index 72733cdb..0bf73ee3 100644 --- a/packages/debug-worker/src/parts/RenderInputValue/RenderInputValue.ts +++ b/packages/debug-worker/src/parts/RenderInputValue/RenderInputValue.ts @@ -3,7 +3,7 @@ import type { ViewletCommand } from '../ViewletCommand/ViewletCommand.ts' import { getFocusSelector } from '../GetFocusSelector/GetFocusSelector.ts' export const renderInputValue = (oldState: RunAndDebugState, newState: RunAndDebugState): ViewletCommand => { - const { uid: id, focus, editingValue } = newState + const { editingValue, focus, uid: id } = newState const selector = getFocusSelector(focus) if (!selector) { return ['Viewlet.setValueByName', id, '', editingValue] diff --git a/packages/debug-worker/src/parts/RenderScope/RenderScope.ts b/packages/debug-worker/src/parts/RenderScope/RenderScope.ts index 37ef71a3..a16292ed 100644 --- a/packages/debug-worker/src/parts/RenderScope/RenderScope.ts +++ b/packages/debug-worker/src/parts/RenderScope/RenderScope.ts @@ -10,26 +10,26 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' export const renderScope = (row: DebugRow, selectedIndex: number, rowIndex: number): readonly VirtualDomNode[] => { - const { key, expanded, index } = row + const { expanded, index, key } = row const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName(ClassNames.DebugRow, isSelected) return [ { - type: VirtualDomElements.Div, - className, - role: AriaRoles.TreeItem, ariaExpanded: expanded, ariaLevel: 2, childCount: 2, - onPointerDown: DomEventListenerFunctions.HandleClickScopeValue, - 'data-name': key, + className, 'data-index': index, + 'data-name': key, + onPointerDown: DomEventListenerFunctions.HandleClickScopeValue, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, expanded ? GetChevronVirtualDom.getChevronDownVirtualDom() : GetChevronVirtualDom.getChevronRightVirtualDom(), { - type: VirtualDomElements.Span, - className: MergeClassNames.mergeClassNames(ClassNames.DebugValue, ClassNames.DebugValueScopeName), childCount: 1, + className: MergeClassNames.mergeClassNames(ClassNames.DebugValue, ClassNames.DebugValueScopeName), + type: VirtualDomElements.Span, }, VirtualDomHelpers.text(key), ] diff --git a/packages/debug-worker/src/parts/RenderSelection/RenderSelection.ts b/packages/debug-worker/src/parts/RenderSelection/RenderSelection.ts index 244fff91..b123dc85 100644 --- a/packages/debug-worker/src/parts/RenderSelection/RenderSelection.ts +++ b/packages/debug-worker/src/parts/RenderSelection/RenderSelection.ts @@ -3,7 +3,7 @@ import type { ViewletCommand } from '../ViewletCommand/ViewletCommand.ts' import { getFocusSelector } from '../GetFocusSelector/GetFocusSelector.ts' export const renderSelection = (oldState: RunAndDebugState, newState: RunAndDebugState): ViewletCommand => { - const { editingselectionstart, editingselectionend, focus, uid: id } = newState + const { editingselectionend, editingselectionstart, focus, uid: id } = newState const selector = getFocusSelector(focus) return ['Viewlet.setSelectionByName', id, selector, editingselectionstart, editingselectionend] } diff --git a/packages/debug-worker/src/parts/RenderWatchExpression/RenderWatchExpression.ts b/packages/debug-worker/src/parts/RenderWatchExpression/RenderWatchExpression.ts index 1e5c9934..135fd204 100644 --- a/packages/debug-worker/src/parts/RenderWatchExpression/RenderWatchExpression.ts +++ b/packages/debug-worker/src/parts/RenderWatchExpression/RenderWatchExpression.ts @@ -11,39 +11,39 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' export const renderWatchExpression = (row: DebugRow, selectedIndex: number, rowIndex: number): readonly VirtualDomNode[] => { - const { value, key, index } = row + const { index, key, value } = row const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName(ClassNames.DebugRow, isSelected) return [ { - type: VirtualDomElements.Div, - className, - role: AriaRoles.TreeItem, childCount: 4, + className, 'data-index': index, onClick: DomEventListenerFunctions.HandleClickWatchExpression, // TODO use doubleclick onContextMenu: DomEventListenerFunctions.HandleWatchExpressionContextMenu, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Span, - className: ClassNames.DebugValueScopeName, childCount: 1, + className: ClassNames.DebugValueScopeName, + type: VirtualDomElements.Span, }, VirtualDomHelpers.text(key), separator, { - type: VirtualDomElements.Span, - className: ClassNames.DebugValue, childCount: 1, + className: ClassNames.DebugValue, + type: VirtualDomElements.Span, }, VirtualDomHelpers.text(value), { - type: VirtualDomElements.Button, - title: DebugStrings.deleteWatchExpression(), + childCount: 1, className: MergeClassNames.mergeClassNames(ClassNames.IconButton, ClassNames.DebugSectionAction, ClassNames.DeleteWatchExpression), 'data-index': index, onClick: DomEventListenerFunctions.HandleClickWatchExpressionDelete, - childCount: 1, + title: DebugStrings.deleteWatchExpression(), + type: VirtualDomElements.Button, }, VirtualDomHelpers.text('×'), ] diff --git a/packages/debug-worker/src/parts/RenderWatchMessage/RenderWatchMessage.ts b/packages/debug-worker/src/parts/RenderWatchMessage/RenderWatchMessage.ts index dccecf85..270c593c 100644 --- a/packages/debug-worker/src/parts/RenderWatchMessage/RenderWatchMessage.ts +++ b/packages/debug-worker/src/parts/RenderWatchMessage/RenderWatchMessage.ts @@ -5,17 +5,17 @@ import * as VirtualDomElements from '../VirtualDomElements/VirtualDomElements.ts import * as VirtualDomHelpers from '../VirtualDomHelpers/VirtualDomHelpers.ts' export const renderWatchMessage = (row: DebugRow, selectedIndex: number, rowIndex: number): readonly VirtualDomNode[] => { - const { text, index, posInset, setSize } = row + const { index, posInset, setSize, text } = row const isSelected = rowIndex === selectedIndex const className = getDebugRowClassName('DebugRow WatchMessage', isSelected) return [ { - type: VirtualDomElements.Div, - className, - childCount: 1, - 'data-index': index, ariaPosInSet: posInset, ariaSetSize: setSize, + childCount: 1, + className, + 'data-index': index, + type: VirtualDomElements.Div, }, VirtualDomHelpers.text(text), diff --git a/packages/debug-worker/src/parts/RendererWorker/RendererWorker.ts b/packages/debug-worker/src/parts/RendererWorker/RendererWorker.ts index 10cce326..93fe678b 100644 --- a/packages/debug-worker/src/parts/RendererWorker/RendererWorker.ts +++ b/packages/debug-worker/src/parts/RendererWorker/RendererWorker.ts @@ -6,10 +6,10 @@ export const { handleDebugPaused, handleDebugResumed, handleDebugScriptParsed, + openUri, + sendMessagePortToEditorWorker, sendMessagePortToExtensionHostWorker, set, showContextMenu, showErrorDialog, - openUri, - sendMessagePortToEditorWorker, } = RendererWorker diff --git a/packages/debug-worker/src/parts/RestoreState/RestoreState.ts b/packages/debug-worker/src/parts/RestoreState/RestoreState.ts index a0b4a953..219ba558 100644 --- a/packages/debug-worker/src/parts/RestoreState/RestoreState.ts +++ b/packages/debug-worker/src/parts/RestoreState/RestoreState.ts @@ -14,11 +14,11 @@ export const restoreState = (savedState: unknown): RestoredState => { const focus = restoreFocus(savedState) const editingValue = restoreEditingValue(savedState) return { - watchExpressions, - watchExpanded, - scopeExpanded, breakPointsExpanded, - focus, editingValue, + focus, + scopeExpanded, + watchExpanded, + watchExpressions, } } diff --git a/packages/debug-worker/src/parts/RestoreWatchExpressions/RestoreWatchExpressions.ts b/packages/debug-worker/src/parts/RestoreWatchExpressions/RestoreWatchExpressions.ts index ae9009b1..b64b2cd1 100644 --- a/packages/debug-worker/src/parts/RestoreWatchExpressions/RestoreWatchExpressions.ts +++ b/packages/debug-worker/src/parts/RestoreWatchExpressions/RestoreWatchExpressions.ts @@ -15,15 +15,15 @@ const restoreWatchExpression = (savedExpression: unknown): WatchExpression => { if (value === null || value === undefined || typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') { return { expression: savedExpression.expression, - value, isEditing: savedExpression.isEditing, + value, } } } return { expression: '', - value: null, isEditing: false, + value: null, } } diff --git a/packages/debug-worker/src/parts/RestoredState/RestoredState.ts b/packages/debug-worker/src/parts/RestoredState/RestoredState.ts index e17880e5..6d4f7149 100644 --- a/packages/debug-worker/src/parts/RestoredState/RestoredState.ts +++ b/packages/debug-worker/src/parts/RestoredState/RestoredState.ts @@ -1,10 +1,10 @@ import type { WatchExpression } from '../WatchExpression/WatchExpression.ts' export interface RestoredState { - readonly watchExpressions: readonly WatchExpression[] - readonly watchExpanded: boolean - readonly scopeExpanded: boolean readonly breakPointsExpanded: boolean - readonly focus: number readonly editingValue: string + readonly focus: number + readonly scopeExpanded: boolean + readonly watchExpanded: boolean + readonly watchExpressions: readonly WatchExpression[] } diff --git a/packages/debug-worker/src/parts/RunAndDebugRowRenderers/RunAndDebugRowRenderers.ts b/packages/debug-worker/src/parts/RunAndDebugRowRenderers/RunAndDebugRowRenderers.ts index 0d2b3d97..a389f176 100644 --- a/packages/debug-worker/src/parts/RunAndDebugRowRenderers/RunAndDebugRowRenderers.ts +++ b/packages/debug-worker/src/parts/RunAndDebugRowRenderers/RunAndDebugRowRenderers.ts @@ -10,9 +10,9 @@ export const renderNoop = (row: DebugRow, selectedIndex: number, rowIndex: numbe const className = getDebugRowClassName(ClassNames.DebugRow, isSelected) return [ { - type: VirtualDomElements.Div, - className, childCount: 1, + className, + type: VirtualDomElements.Div, }, VirtualDomHelpers.text('unknown row type'), ] @@ -23,9 +23,9 @@ export const renderMessage = (row: DebugRow, selectedIndex: number, rowIndex: nu const className = getDebugRowClassName('DebugPausedMessage', isSelected) return [ { - type: VirtualDomElements.Div, - className, childCount: 1, + className, + type: VirtualDomElements.Div, }, VirtualDomHelpers.text(row.text), ] diff --git a/packages/debug-worker/src/parts/RunAndDebugState/RunAndDebugState.ts b/packages/debug-worker/src/parts/RunAndDebugState/RunAndDebugState.ts index 177ba5b8..400342d7 100644 --- a/packages/debug-worker/src/parts/RunAndDebugState/RunAndDebugState.ts +++ b/packages/debug-worker/src/parts/RunAndDebugState/RunAndDebugState.ts @@ -24,7 +24,6 @@ export interface RunAndDebugState { readonly expandedIds: readonly any[] readonly focus: number readonly focusedIndex: number - readonly uid: number readonly inputSource: number readonly maxDescriptionLength: number readonly openFilesOnPause: boolean @@ -40,6 +39,7 @@ export interface RunAndDebugState { readonly selectedIndex: number readonly tokenColoringEnabled?: boolean readonly topLevelCount: number + readonly uid: number readonly visibleRows: readonly DebugRow[] readonly watchExpanded: boolean readonly watchExpressions: readonly WatchExpression[] diff --git a/packages/debug-worker/src/parts/RunAndDebugStates/RunAndDebugStates.ts b/packages/debug-worker/src/parts/RunAndDebugStates/RunAndDebugStates.ts index e768f751..485f8edf 100644 --- a/packages/debug-worker/src/parts/RunAndDebugStates/RunAndDebugStates.ts +++ b/packages/debug-worker/src/parts/RunAndDebugStates/RunAndDebugStates.ts @@ -1,4 +1,4 @@ import * as ViewletRegistry from '@lvce-editor/viewlet-registry' import type { RunAndDebugState } from '../RunAndDebugState/RunAndDebugState.ts' -export const { get, set, wrapCommand, dispose, getKeys } = ViewletRegistry.create() +export const { dispose, get, getKeys, set, wrapCommand } = ViewletRegistry.create() diff --git a/packages/debug-worker/src/parts/SaveState/SaveState.ts b/packages/debug-worker/src/parts/SaveState/SaveState.ts index 8bbfcfcb..6b60c433 100644 --- a/packages/debug-worker/src/parts/SaveState/SaveState.ts +++ b/packages/debug-worker/src/parts/SaveState/SaveState.ts @@ -4,27 +4,27 @@ import { SaveStateReasonHotReload } from '../SaveStateReason/SaveStateReason.ts' export const saveState = (uid: number, reason: number): SavedState => { const { newState } = RunAndDebugStates.get(uid) - const { watchExpressions, scopeExpanded, watchExpanded, breakPointsExpanded, focus, editingValue, inputSource } = newState + const { breakPointsExpanded, editingValue, focus, inputSource, scopeExpanded, watchExpanded, watchExpressions } = newState if (reason === SaveStateReasonHotReload) { return { - watchExpressions, - scopeExpanded, breakPointsExpanded, - watchExpanded, - focus, editingValue, + focus, inputSource, + scopeExpanded, + watchExpanded, + watchExpressions, } } return { - watchExpressions: watchExpressions.map((expr) => ({ ...expr, isEditing: false })), - scopeExpanded, breakPointsExpanded, - watchExpanded, - focus: 0, editingValue: '', + focus: 0, inputSource: 0, + scopeExpanded, + watchExpanded, + watchExpressions: watchExpressions.map((expr) => ({ ...expr, isEditing: false })), } } diff --git a/packages/debug-worker/src/parts/SavedState/SavedState.ts b/packages/debug-worker/src/parts/SavedState/SavedState.ts index 98a6e5db..da6a6ebc 100644 --- a/packages/debug-worker/src/parts/SavedState/SavedState.ts +++ b/packages/debug-worker/src/parts/SavedState/SavedState.ts @@ -1,11 +1,11 @@ import type { WatchExpression } from '../WatchExpression/WatchExpression.ts' export interface SavedState { - readonly watchExpressions: readonly WatchExpression[] - readonly watchExpanded: boolean - readonly scopeExpanded: boolean readonly breakPointsExpanded: boolean - readonly focus: number readonly editingValue: string + readonly focus: number readonly inputSource: number + readonly scopeExpanded: boolean + readonly watchExpanded: boolean + readonly watchExpressions: readonly WatchExpression[] } diff --git a/packages/debug-worker/src/parts/ScopeRenderers/GetScopeExceptionRows.ts b/packages/debug-worker/src/parts/ScopeRenderers/GetScopeExceptionRows.ts index 46370bb8..1dbaa191 100644 --- a/packages/debug-worker/src/parts/ScopeRenderers/GetScopeExceptionRows.ts +++ b/packages/debug-worker/src/parts/ScopeRenderers/GetScopeExceptionRows.ts @@ -4,24 +4,24 @@ import * as DebugRowType from '../DebugRowType/DebugRowType.ts' import { tokenizeValue } from '../TokenizeValue/TokenizeValue.ts' export const getScopeExceptionRows = (scope: Scope, relativeIndex: number, index: number): readonly DebugRow[] => { - const { key, value, indent } = scope + const { indent, key, value } = scope const tokens = tokenizeValue(value) return [ { - type: DebugRowType.Exception, - text: '', - tokens, + description: '', expanded: false, - key, - value, indent, - valueType: '', - name: '', - description: '', index: relativeIndex, - setSize: 1, + key, + name: '', posInset: 1, scopeChainIndex: relativeIndex, + setSize: 1, + text: '', + tokens, + type: DebugRowType.Exception, + value, + valueType: '', }, ] } diff --git a/packages/debug-worker/src/parts/ScopeRenderers/GetScopePropertyRows.ts b/packages/debug-worker/src/parts/ScopeRenderers/GetScopePropertyRows.ts index 77ceaa37..e3aad942 100644 --- a/packages/debug-worker/src/parts/ScopeRenderers/GetScopePropertyRows.ts +++ b/packages/debug-worker/src/parts/ScopeRenderers/GetScopePropertyRows.ts @@ -5,24 +5,24 @@ import * as DebugRowType from '../DebugRowType/DebugRowType.ts' import { tokenizeValue } from '../TokenizeValue/TokenizeValue.ts' export const getScopePropertyRows = (scope: Scope, relativeIndex: number, index: number): readonly DebugRow[] => { - const { indent, key, value, valueType, flags } = scope + const { flags, indent, key, value, valueType } = scope const tokens = tokenizeValue(value) return [ { - type: DebugRowType.Property, - text: '', - tokens, + description: '', expanded: Boolean(flags & DebugItemFlags.Expanded), - key, - value, indent, - valueType, - name: '', - description: '', index, - setSize: 1, + key, + name: '', posInset: 1, scopeChainIndex: relativeIndex, + setSize: 1, + text: '', + tokens, + type: DebugRowType.Property, + value, + valueType, }, ] } diff --git a/packages/debug-worker/src/parts/ScopeRenderers/GetScopeScopeRows.ts b/packages/debug-worker/src/parts/ScopeRenderers/GetScopeScopeRows.ts index d7675e12..cac47b55 100644 --- a/packages/debug-worker/src/parts/ScopeRenderers/GetScopeScopeRows.ts +++ b/packages/debug-worker/src/parts/ScopeRenderers/GetScopeScopeRows.ts @@ -4,22 +4,22 @@ import * as DebugItemFlags from '../DebugItemFlags/DebugItemFlags.ts' import * as DebugRowType from '../DebugRowType/DebugRowType.ts' export const getScopeScopeRows = (scope: Scope, relativeIndex: number, index: number): readonly DebugRow[] => { - const { key, flags } = scope + const { flags, key } = scope return [ { - type: DebugRowType.Scope, - text: '', + description: '', expanded: Boolean(flags & DebugItemFlags.Expanded), - key, - value: '', indent: 0, - valueType: '', - name: '', - description: '', index, - setSize: 1, + key, + name: '', posInset: 1, scopeChainIndex: relativeIndex, + setSize: 1, + text: '', + type: DebugRowType.Scope, + value: '', + valueType: '', }, ] } diff --git a/packages/debug-worker/src/parts/ScopeRenderers/GetScopeThisRows.ts b/packages/debug-worker/src/parts/ScopeRenderers/GetScopeThisRows.ts index 257b1f39..877e2aef 100644 --- a/packages/debug-worker/src/parts/ScopeRenderers/GetScopeThisRows.ts +++ b/packages/debug-worker/src/parts/ScopeRenderers/GetScopeThisRows.ts @@ -8,20 +8,20 @@ export const getScopeThisRows = (scope: Scope, relativeIndex: number, index: num const tokens = tokenizeValue(value) return [ { - type: DebugRowType.Value, - text: '', - tokens, + description: '', expanded: false, - key, - value, indent, - valueType, - name: '', - description: '', index, - setSize: 1, + key, + name: '', posInset: 1, scopeChainIndex: relativeIndex, + setSize: 1, + text: '', + tokens, + type: DebugRowType.Value, + value, + valueType, }, ] } diff --git a/packages/debug-worker/src/parts/WatchExpression/WatchExpression.ts b/packages/debug-worker/src/parts/WatchExpression/WatchExpression.ts index 5ecf3a10..23f10379 100644 --- a/packages/debug-worker/src/parts/WatchExpression/WatchExpression.ts +++ b/packages/debug-worker/src/parts/WatchExpression/WatchExpression.ts @@ -1,5 +1,5 @@ export interface WatchExpression { readonly expression: string - readonly value: string | number | boolean | undefined | null readonly isEditing: boolean + readonly value: string | number | boolean | undefined | null } diff --git a/packages/debug-worker/test/AcceptWatchExpressionEdit.test.ts b/packages/debug-worker/test/AcceptWatchExpressionEdit.test.ts index ce2f74f2..fd1865a2 100644 --- a/packages/debug-worker/test/AcceptWatchExpressionEdit.test.ts +++ b/packages/debug-worker/test/AcceptWatchExpressionEdit.test.ts @@ -16,8 +16,8 @@ test('should remove watch expression when editing value is empty', async () => { watchExpressions: [ { expression: 'old', - value: null, isEditing: true, + value: null, }, ], } @@ -30,21 +30,21 @@ test('should update watch expression with editing value and reset focus', async const state: RunAndDebugState = createDefaultState() const stateWithEditingExpression: RunAndDebugState = { ...state, + editingValue: 'x + y', watchExpressions: [ { expression: 'old', - value: null, isEditing: true, + value: null, }, ], - editingValue: 'x + y', } const result = await acceptWatchExpressionEdit(stateWithEditingExpression) expect(result.watchExpressions).toHaveLength(1) expect(result.watchExpressions[0]).toEqual({ expression: 'x + y', - value: null, isEditing: false, + value: null, }) expect(result.focus).toBe(1299) }) @@ -53,31 +53,31 @@ test('should update correct watch expression when multiple exist', async () => { const state: RunAndDebugState = createDefaultState() const stateWithMultipleExpressions: RunAndDebugState = { ...state, + editingValue: 'updated', watchExpressions: [ { expression: 'first', - value: null, isEditing: false, + value: null, }, { expression: 'second', - value: null, isEditing: true, + value: null, }, { expression: 'third', - value: null, isEditing: false, + value: null, }, ], - editingValue: 'updated', } const result = await acceptWatchExpressionEdit(stateWithMultipleExpressions) expect(result.watchExpressions).toHaveLength(3) expect(result.watchExpressions[1]).toEqual({ expression: 'updated', - value: null, isEditing: false, + value: null, }) expect(result.focus).toBe(1299) }) diff --git a/packages/debug-worker/test/AddWatchExpression.test.ts b/packages/debug-worker/test/AddWatchExpression.test.ts index d743c5e0..4ea57249 100644 --- a/packages/debug-worker/test/AddWatchExpression.test.ts +++ b/packages/debug-worker/test/AddWatchExpression.test.ts @@ -9,7 +9,7 @@ test('addWatchExpression', async () => { expect(newState.watchExpressions).toHaveLength(1) expect(newState.watchExpressions[0]).toEqual({ expression: 'x + y', - value: null, isEditing: true, + value: null, }) }) diff --git a/packages/debug-worker/test/CancelWatchExpressionEdit.test.ts b/packages/debug-worker/test/CancelWatchExpressionEdit.test.ts index cea411a3..5ffa77a6 100644 --- a/packages/debug-worker/test/CancelWatchExpressionEdit.test.ts +++ b/packages/debug-worker/test/CancelWatchExpressionEdit.test.ts @@ -18,13 +18,13 @@ test('should not remove non-empty watch expressions', () => { watchExpressions: [ { expression: 'x + y', - value: null, isEditing: false, + value: null, }, { expression: '', - value: null, isEditing: true, + value: null, }, ], } @@ -33,7 +33,7 @@ test('should not remove non-empty watch expressions', () => { expect(result.watchExpressions).toHaveLength(1) expect(result.watchExpressions[0]).toEqual({ expression: 'x + y', - value: null, isEditing: false, + value: null, }) }) diff --git a/packages/debug-worker/test/CollapseScopeChain.test.ts b/packages/debug-worker/test/CollapseScopeChain.test.ts index c3d5795b..c5124087 100644 --- a/packages/debug-worker/test/CollapseScopeChain.test.ts +++ b/packages/debug-worker/test/CollapseScopeChain.test.ts @@ -8,25 +8,25 @@ test('collapseScopeChain', () => { const state: RunAndDebugState = createDefaultState() const expandedIds = ['scope1', 'scope2'] const scopeChain: readonly ScopeChainItem[] = [ - { objectId: 'scope1', indent: 0, key: 'scope1', label: 'scope1', type: 1, value: 'scope1', valueType: 'object', flags: 0 }, - { objectId: 'scope2', indent: 1, key: 'scope2', label: 'scope2', type: 1, value: 'scope2', valueType: 'object', flags: 0 }, - { objectId: 'scope3', indent: 2, key: 'scope3', label: 'scope3', type: 1, value: 'scope3', valueType: 'object', flags: 0 }, - { objectId: 'scope4', indent: 1, key: 'scope4', label: 'scope4', type: 1, value: 'scope4', valueType: 'object', flags: 0 }, + { flags: 0, indent: 0, key: 'scope1', label: 'scope1', objectId: 'scope1', type: 1, value: 'scope1', valueType: 'object' }, + { flags: 0, indent: 1, key: 'scope2', label: 'scope2', objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object' }, + { flags: 0, indent: 2, key: 'scope3', label: 'scope3', objectId: 'scope3', type: 1, value: 'scope3', valueType: 'object' }, + { flags: 0, indent: 1, key: 'scope4', label: 'scope4', objectId: 'scope4', type: 1, value: 'scope4', valueType: 'object' }, ] - const element: ScopeChainItem = { objectId: 'scope2', indent: 1, key: 'scope2', label: 'scope2', type: 1, value: 'scope2', valueType: 'object', flags: 0 } + const element: ScopeChainItem = { flags: 0, indent: 1, key: 'scope2', label: 'scope2', objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object' } const index = 1 const result = collapseScopeChain(state, expandedIds, scopeChain, element, index, 0) expect(result.expandedIds).toEqual(['scope1']) expect(result.scopeChain).toEqual([ - { objectId: 'scope1', indent: 0, key: 'scope1', label: 'scope1', type: 1, value: 'scope1', valueType: 'object', flags: 0 }, - { objectId: 'scope2', indent: 1, key: 'scope2', label: 'scope2', type: 1, value: 'scope2', valueType: 'object', flags: 0 }, - { objectId: 'scope4', indent: 1, key: 'scope4', label: 'scope4', type: 1, value: 'scope4', valueType: 'object', flags: 0 }, + { flags: 0, indent: 0, key: 'scope1', label: 'scope1', objectId: 'scope1', type: 1, value: 'scope1', valueType: 'object' }, + { flags: 0, indent: 1, key: 'scope2', label: 'scope2', objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object' }, + { flags: 0, indent: 1, key: 'scope4', label: 'scope4', objectId: 'scope4', type: 1, value: 'scope4', valueType: 'object' }, ]) expect(result.scopeFocusedIndex).toBe(1) expect(result.cache).toEqual({ - scope2: [{ objectId: 'scope3', indent: 2, key: 'scope3', label: 'scope3', type: 1, value: 'scope3', valueType: 'object', flags: 0 }], + scope2: [{ flags: 0, indent: 2, key: 'scope3', label: 'scope3', objectId: 'scope3', type: 1, value: 'scope3', valueType: 'object' }], }) expect(result.visibleRows).toBeDefined() }) @@ -35,18 +35,18 @@ test('collapseScopeChain - no children to collapse', () => { const state: RunAndDebugState = createDefaultState() const expandedIds = ['scope1'] const scopeChain: readonly ScopeChainItem[] = [ - { objectId: 'scope1', indent: 0, key: 'scope1', label: 'scope1', type: 1, value: 'scope1', valueType: 'object', flags: 0 }, - { objectId: 'scope2', indent: 1, key: 'scope2', label: 'scope2', type: 1, value: 'scope2', valueType: 'object', flags: 0 }, + { flags: 0, indent: 0, key: 'scope1', label: 'scope1', objectId: 'scope1', type: 1, value: 'scope1', valueType: 'object' }, + { flags: 0, indent: 1, key: 'scope2', label: 'scope2', objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object' }, ] - const element: ScopeChainItem = { objectId: 'scope2', indent: 1, key: 'scope2', label: 'scope2', type: 1, value: 'scope2', valueType: 'object', flags: 0 } + const element: ScopeChainItem = { flags: 0, indent: 1, key: 'scope2', label: 'scope2', objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object' } const index = 1 const result = collapseScopeChain(state, expandedIds, scopeChain, element, index, 0) expect(result.expandedIds).toEqual(['scope1']) expect(result.scopeChain).toEqual([ - { objectId: 'scope1', indent: 0, key: 'scope1', label: 'scope1', type: 1, value: 'scope1', valueType: 'object', flags: 0 }, - { objectId: 'scope2', indent: 1, key: 'scope2', label: 'scope2', type: 1, value: 'scope2', valueType: 'object', flags: 0 }, + { flags: 0, indent: 0, key: 'scope1', label: 'scope1', objectId: 'scope1', type: 1, value: 'scope1', valueType: 'object' }, + { flags: 0, indent: 1, key: 'scope2', label: 'scope2', objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object' }, ]) expect(result.scopeFocusedIndex).toBe(1) expect(result.cache).toEqual({ diff --git a/packages/debug-worker/test/CreateScriptMap.test.ts b/packages/debug-worker/test/CreateScriptMap.test.ts index 8440b49f..6ca74844 100644 --- a/packages/debug-worker/test/CreateScriptMap.test.ts +++ b/packages/debug-worker/test/CreateScriptMap.test.ts @@ -6,13 +6,13 @@ test('createScriptMap', () => { const scripts: readonly ParsedScript[] = [ { scriptId: 'script1', - url: 'test1.js', scriptLanguage: 'JavaScript', + url: 'test1.js', }, { scriptId: 'script2', - url: 'test2.js', scriptLanguage: '', + url: 'test2.js', }, ] diff --git a/packages/debug-worker/test/DebugDisplay.test.ts b/packages/debug-worker/test/DebugDisplay.test.ts index 18884688..87e763d8 100644 --- a/packages/debug-worker/test/DebugDisplay.test.ts +++ b/packages/debug-worker/test/DebugDisplay.test.ts @@ -11,7 +11,7 @@ test('getScopeLabel - local', () => { }) test('getScopeLabel - closure with name', () => { - const element = { type: DebugScopeType.Closure, name: 'testClosure' } + const element = { name: 'testClosure', type: DebugScopeType.Closure } const result = DebugDisplay.getScopeLabel(element) expect(result).toBe(DebugStrings.namedClosure('testClosure')) }) diff --git a/packages/debug-worker/test/DeleteWatchExpression.test.ts b/packages/debug-worker/test/DeleteWatchExpression.test.ts index 39631ba5..ca571cc5 100644 --- a/packages/debug-worker/test/DeleteWatchExpression.test.ts +++ b/packages/debug-worker/test/DeleteWatchExpression.test.ts @@ -11,8 +11,8 @@ test('deleteWatchExpression removes the correct watch expression', async () => { expect(newState.watchExpressions).toHaveLength(1) expect(newState.watchExpressions[0]).toEqual({ expression: 'a + b', - value: null, isEditing: true, + value: null, }) }) diff --git a/packages/debug-worker/test/DiffItems.test.ts b/packages/debug-worker/test/DiffItems.test.ts index a633ff68..574b9bef 100644 --- a/packages/debug-worker/test/DiffItems.test.ts +++ b/packages/debug-worker/test/DiffItems.test.ts @@ -15,14 +15,14 @@ test('isEqual - different scopeChain', () => { ...createDefaultState(0), scopeChain: [ { - objectId: 'different', + flags: 0, indent: 0, key: 'different', label: '', + objectId: 'different', type: 0, value: '', valueType: '', - flags: 0, }, ] as readonly ScopeChainItem[], } diff --git a/packages/debug-worker/test/DiffSelection.test.ts b/packages/debug-worker/test/DiffSelection.test.ts index 20b4085a..5f6c30b0 100644 --- a/packages/debug-worker/test/DiffSelection.test.ts +++ b/packages/debug-worker/test/DiffSelection.test.ts @@ -4,7 +4,7 @@ import { isEqual } from '../src/parts/DiffSelection/DiffSelection.ts' test('isEqual returns true when selection states are the same', () => { const oldState = createDefaultState() - const newState = { ...oldState, editingselectionstart: 5, editingselectionend: 10 } + const newState = { ...oldState, editingselectionend: 10, editingselectionstart: 5 } const result = isEqual(oldState, newState) expect(result).toBe(false) @@ -12,7 +12,7 @@ test('isEqual returns true when selection states are the same', () => { test('isEqual returns true when selection states are identical', () => { const oldState = createDefaultState() - const newState = { ...oldState, editingselectionstart: 0, editingselectionend: 0 } + const newState = { ...oldState, editingselectionend: 0, editingselectionstart: 0 } const result = isEqual(oldState, newState) expect(result).toBe(true) @@ -20,7 +20,7 @@ test('isEqual returns true when selection states are identical', () => { test('isEqual returns false when selection start differs', () => { const oldState = createDefaultState() - const newState = { ...oldState, editingselectionstart: 5, editingselectionend: 0 } + const newState = { ...oldState, editingselectionend: 0, editingselectionstart: 5 } const result = isEqual(oldState, newState) expect(result).toBe(false) @@ -28,7 +28,7 @@ test('isEqual returns false when selection start differs', () => { test('isEqual returns false when selection end differs', () => { const oldState = createDefaultState() - const newState = { ...oldState, editingselectionstart: 0, editingselectionend: 10 } + const newState = { ...oldState, editingselectionend: 10, editingselectionstart: 0 } const result = isEqual(oldState, newState) expect(result).toBe(false) diff --git a/packages/debug-worker/test/DiffValue.test.ts b/packages/debug-worker/test/DiffValue.test.ts index 2982297f..da3d6fb2 100644 --- a/packages/debug-worker/test/DiffValue.test.ts +++ b/packages/debug-worker/test/DiffValue.test.ts @@ -7,8 +7,8 @@ test('isEqual returns true when inputSource is not Script', () => { const oldState = createDefaultState() const newState = { ...createDefaultState(), - inputSource: InputSource.User, editingValue: 'something', + inputSource: InputSource.User, } expect(isEqual(oldState, newState)).toBe(true) }) @@ -17,8 +17,8 @@ test('isEqual returns true when inputSource is Script and editingValue is empty' const oldState = createDefaultState() const newState = { ...createDefaultState(), - inputSource: InputSource.Script, editingValue: '', + inputSource: InputSource.Script, } expect(isEqual(oldState, newState)).toBe(true) }) @@ -27,8 +27,8 @@ test('isEqual returns false when inputSource is Script and editingValue is not e const oldState = createDefaultState() const newState = { ...createDefaultState(), - inputSource: InputSource.Script, editingValue: 'editing', + inputSource: InputSource.Script, } expect(isEqual(oldState, newState)).toBe(false) }) diff --git a/packages/debug-worker/test/EvaluateWatchExpressions.test.ts b/packages/debug-worker/test/EvaluateWatchExpressions.test.ts index deae6e64..92b48c59 100644 --- a/packages/debug-worker/test/EvaluateWatchExpressions.test.ts +++ b/packages/debug-worker/test/EvaluateWatchExpressions.test.ts @@ -23,13 +23,13 @@ test('evaluateWatchExpressions - all succeed', async () => { RendererWorker.set(mockRpc) ExtensionHost.set(mockRpc) const watchExpressions = [ - { expression: 'a + b', value: null, isEditing: false }, - { expression: 'x * y', value: null, isEditing: false }, + { expression: 'a + b', isEditing: false, value: null }, + { expression: 'x * y', isEditing: false, value: null }, ] const result = await evaluateWatchExpressions(debugId, callFrameId, watchExpressions) expect(result).toEqual([ - { expression: 'a + b', value: 'result:a + b', isEditing: false }, - { expression: 'x * y', value: 'result:x * y', isEditing: false }, + { expression: 'a + b', isEditing: false, value: 'result:a + b' }, + { expression: 'x * y', isEditing: false, value: 'result:x * y' }, ]) }) @@ -53,11 +53,11 @@ test('evaluateWatchExpressions - one fails', async () => { RendererWorker.set(mockRpc) ExtensionHost.set(mockRpc) const watchExpressions = [ - { expression: 'ok', value: null, isEditing: false }, - { expression: 'fail', value: null, isEditing: false }, + { expression: 'ok', isEditing: false, value: null }, + { expression: 'fail', isEditing: false, value: null }, ] const result = await evaluateWatchExpressions(debugId, callFrameId, watchExpressions) - expect(result[0]).toEqual({ expression: 'ok', value: 'result:ok', isEditing: false }) - expect(result[1]).toEqual({ expression: 'fail', value: null, isEditing: false }) + expect(result[0]).toEqual({ expression: 'ok', isEditing: false, value: 'result:ok' }) + expect(result[1]).toEqual({ expression: 'fail', isEditing: false, value: null }) spy.mockRestore() }) diff --git a/packages/debug-worker/test/ExpandScopeChain.test.ts b/packages/debug-worker/test/ExpandScopeChain.test.ts index 5211d00a..fa67db44 100644 --- a/packages/debug-worker/test/ExpandScopeChain.test.ts +++ b/packages/debug-worker/test/ExpandScopeChain.test.ts @@ -12,35 +12,35 @@ test('expandScopeChain', async () => { const expandedIds = ['id1'] const scopeChain: readonly ScopeChainItem[] = [ { - objectId: 'scope1', + flags: 0, indent: 0, key: 'scope1', label: 'scope1', + objectId: 'scope1', type: 1, value: 'scope1', valueType: 'object', - flags: 0, }, { - objectId: 'scope2', + flags: 0, indent: 0, key: 'scope2', label: 'scope2', + objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object', - flags: 0, }, ] const element: ScopeChainItem = { - objectId: 'scope2', + flags: 0, indent: 0, key: 'scope2', label: 'scope2', + objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object', - flags: 0, } const index = 1 const debugId = 'debug1' @@ -73,40 +73,40 @@ test('expandScopeChain', async () => { expect(result).toEqual({ ...state, + expandedIds: ['id1', 'scope2'], focus: expect.anything(), scopeChain: [ { - objectId: 'scope1', + flags: 0, indent: 0, key: 'scope1', label: 'scope1', + objectId: 'scope1', type: 1, value: 'scope1', valueType: 'object', - flags: 0, }, { - objectId: 'scope2', + flags: 0, indent: 0, key: 'scope2', label: 'scope2', + objectId: 'scope2', type: 1, value: 'scope2', valueType: 'object', - flags: 0, }, { - type: 3, + flags: 0, + indent: 10, key: 'prop1', + label: '', + objectId: '', + type: 3, value: '{"value":"value1"}', valueType: '', - objectId: '', - indent: 10, - label: '', - flags: 0, }, ], - expandedIds: ['id1', 'scope2'], scopeFocusedIndex: 1, selectedIndex: 0, visibleRows: expect.anything(), diff --git a/packages/debug-worker/test/GetActionDom.test.ts b/packages/debug-worker/test/GetActionDom.test.ts index 78b97c4e..06454180 100644 --- a/packages/debug-worker/test/GetActionDom.test.ts +++ b/packages/debug-worker/test/GetActionDom.test.ts @@ -8,21 +8,21 @@ import * as VirtualDomHelpers from '../src/parts/VirtualDomHelpers/VirtualDomHel test('should return virtual DOM nodes for action', () => { const action: DebugRowAction = { + icon: '⚡', id: 'test-action', title: 'Test Action', - icon: '⚡', } const result = getActionDom(action) expect(result).toEqual([ { - type: VirtualDomElements.Button, + childCount: 1, className: ClassNames.DebugSectionAction, - title: 'Test Action', - onClick: DomEventListenerFunctions.HandleClickSectionAction, name: 'test-action', - childCount: 1, + onClick: DomEventListenerFunctions.HandleClickSectionAction, + title: 'Test Action', + type: VirtualDomElements.Button, }, VirtualDomHelpers.text('⚡'), ]) @@ -30,21 +30,21 @@ test('should return virtual DOM nodes for action', () => { test('should handle action with different properties', () => { const action: DebugRowAction = { + icon: '+', id: 'add-watch', title: 'Add Watch Expression', - icon: '+', } const result = getActionDom(action) expect(result).toEqual([ { - type: VirtualDomElements.Button, + childCount: 1, className: ClassNames.DebugSectionAction, - title: 'Add Watch Expression', - onClick: DomEventListenerFunctions.HandleClickSectionAction, name: 'add-watch', - childCount: 1, + onClick: DomEventListenerFunctions.HandleClickSectionAction, + title: 'Add Watch Expression', + type: VirtualDomElements.Button, }, VirtualDomHelpers.text('+'), ]) @@ -52,21 +52,21 @@ test('should handle action with different properties', () => { test('should handle action with empty strings', () => { const action: DebugRowAction = { + icon: '', id: '', title: '', - icon: '', } const result = getActionDom(action) expect(result).toEqual([ { - type: VirtualDomElements.Button, + childCount: 1, className: ClassNames.DebugSectionAction, - title: '', - onClick: DomEventListenerFunctions.HandleClickSectionAction, name: '', - childCount: 1, + onClick: DomEventListenerFunctions.HandleClickSectionAction, + title: '', + type: VirtualDomElements.Button, }, VirtualDomHelpers.text(''), ]) @@ -74,21 +74,21 @@ test('should handle action with empty strings', () => { test('should handle action with special characters in icon', () => { const action: DebugRowAction = { + icon: '🗑️', id: 'delete-action', title: 'Delete Item', - icon: '🗑️', } const result = getActionDom(action) expect(result).toEqual([ { - type: VirtualDomElements.Button, + childCount: 1, className: ClassNames.DebugSectionAction, - title: 'Delete Item', - onClick: DomEventListenerFunctions.HandleClickSectionAction, name: 'delete-action', - childCount: 1, + onClick: DomEventListenerFunctions.HandleClickSectionAction, + title: 'Delete Item', + type: VirtualDomElements.Button, }, VirtualDomHelpers.text('🗑️'), ]) diff --git a/packages/debug-worker/test/GetArrowNodes.test.ts b/packages/debug-worker/test/GetArrowNodes.test.ts index 06dce766..e41355ff 100644 --- a/packages/debug-worker/test/GetArrowNodes.test.ts +++ b/packages/debug-worker/test/GetArrowNodes.test.ts @@ -6,14 +6,14 @@ import * as VirtualDomElements from '../src/parts/VirtualDomElements/VirtualDomE test('getArrowNodes', () => { expect(getArrowNodes(true)).toEqual([ { - type: VirtualDomElements.Div, - className: ClassNames.CallStackArrow, childCount: 1, + className: ClassNames.CallStackArrow, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Div, - className: 'MaskIcon MaskIconArrowRight', childCount: 0, + className: 'MaskIcon MaskIconArrowRight', + type: VirtualDomElements.Div, }, ]) diff --git a/packages/debug-worker/test/GetCallStack.test.ts b/packages/debug-worker/test/GetCallStack.test.ts index 67cd1d73..859b5e8d 100644 --- a/packages/debug-worker/test/GetCallStack.test.ts +++ b/packages/debug-worker/test/GetCallStack.test.ts @@ -9,24 +9,24 @@ test('getCallStack - returns empty array for empty input', () => { test('getCallStack - transforms call frames correctly', () => { const callFrames = [ { - functionName: 'testFunction', functionLocation: 'test.js:1:1', + functionName: 'testFunction', }, { - functionName: '', functionLocation: 'test.js:2:2', + functionName: '', }, ] const result = getCallStack(callFrames) expect(result).toEqual([ { - functionName: 'testFunction', functionLocation: 'test.js:1:1', + functionName: 'testFunction', }, { - functionName: '(anonymous)', functionLocation: 'test.js:2:2', + functionName: '(anonymous)', }, ]) }) diff --git a/packages/debug-worker/test/GetChevronVirtualDom.test.ts b/packages/debug-worker/test/GetChevronVirtualDom.test.ts index e37e65f7..4f2efa17 100644 --- a/packages/debug-worker/test/GetChevronVirtualDom.test.ts +++ b/packages/debug-worker/test/GetChevronVirtualDom.test.ts @@ -5,35 +5,35 @@ import * as VirtualDomElements from '../src/parts/VirtualDomElements/VirtualDomE test('getChevronDownVirtualDom', () => { const result = GetChevronVirtualDom.getChevronDownVirtualDom() expect(result).toEqual({ - type: VirtualDomElements.Div, - className: 'Chevron MaskIconChevronDown ', childCount: 0, + className: 'Chevron MaskIconChevronDown ', + type: VirtualDomElements.Div, }) }) test('getChevronDownVirtualDom with extra class', () => { const result = GetChevronVirtualDom.getChevronDownVirtualDom('extra') expect(result).toEqual({ - type: VirtualDomElements.Div, - className: 'Chevron MaskIconChevronDown extra', childCount: 0, + className: 'Chevron MaskIconChevronDown extra', + type: VirtualDomElements.Div, }) }) test('getChevronRightVirtualDom', () => { const result = GetChevronVirtualDom.getChevronRightVirtualDom() expect(result).toEqual({ - type: VirtualDomElements.Div, - className: 'Chevron MaskIconChevronRight ', childCount: 0, + className: 'Chevron MaskIconChevronRight ', + type: VirtualDomElements.Div, }) }) test('getChevronRightVirtualDom with extra class', () => { const result = GetChevronVirtualDom.getChevronRightVirtualDom('extra') expect(result).toEqual({ - type: VirtualDomElements.Div, - className: 'Chevron MaskIconChevronRight extra', childCount: 0, + className: 'Chevron MaskIconChevronRight extra', + type: VirtualDomElements.Div, }) }) diff --git a/packages/debug-worker/test/GetDebugPropertyValueLabel.test.ts b/packages/debug-worker/test/GetDebugPropertyValueLabel.test.ts index f0f3118c..542fa37e 100644 --- a/packages/debug-worker/test/GetDebugPropertyValueLabel.test.ts +++ b/packages/debug-worker/test/GetDebugPropertyValueLabel.test.ts @@ -6,8 +6,8 @@ const mockState = createDefaultState() test('getDebugPropertyValueLabel = number', () => { const value = { - type: 'number', description: '1', + type: 'number', } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, mockState.maxDescriptionLength)).toBe('1') }) @@ -29,26 +29,24 @@ test('getDebugPropertyValueLabel - undefined', () => { test('getDebugPropertyValueLabel - symbol', () => { const value = { - type: 'symbol', description: 'Symbol(before)', + type: 'symbol', } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, mockState.maxDescriptionLength)).toBe('Symbol(before)') }) test('getDebugPropertyValueLabel - object', () => { const value = { - type: 'object', description: 'process', + type: 'object', } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, mockState.maxDescriptionLength)).toBe('process') }) test('getDebugPropertyValueLabel - object with preview', () => { const value = { - type: 'object', description: 'obj', preview: { - type: 'object', description: 'Object', overflow: false, properties: [ @@ -58,17 +56,17 @@ test('getDebugPropertyValueLabel - object with preview', () => { value: '🦄🌈✨👋🌎🌍🌏✨🌈🦄', }, ], + type: 'object', }, + type: 'object', } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, mockState.maxDescriptionLength)).toBe("{message:'🦄🌈✨👋🌎🌍🌏✨🌈🦄'}") }) test('getDebugPropertyValueLabel - class instance', () => { const value = { - type: 'object', description: 'IncomingMessage', preview: { - type: 'object', description: 'IncomingMessage', overflow: true, properties: [ @@ -78,15 +76,17 @@ test('getDebugPropertyValueLabel - class instance', () => { value: 'ReadableState', }, ], + type: 'object', }, + type: 'object', } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, mockState.maxDescriptionLength)).toBe('IncomingMessage {_readableState:ReadableState}') }) test('getDebugPropertyValueLabel - function', () => { const value = { - type: 'function', description: '(req, res) => {}', + type: 'function', } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, mockState.maxDescriptionLength)).toBe('(req, res) => {}') }) @@ -107,8 +107,8 @@ test('getDebugPropertyValueLabel - other', () => { test('getDebugPropertyValueLabel - truncates long description', () => { const longDescription = 'a'.repeat(150) const value = { - type: 'function', description: longDescription, + type: 'function', } const truncatedState = { ...mockState, maxDescriptionLength: 50 } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, truncatedState.maxDescriptionLength)).toBe('a'.repeat(50) + '...') @@ -117,8 +117,8 @@ test('getDebugPropertyValueLabel - truncates long description', () => { test('getDebugPropertyValueLabel - does not truncate short description', () => { const shortDescription = 'short' const value = { - type: 'function', description: shortDescription, + type: 'function', } const truncatedState = { ...mockState, maxDescriptionLength: 50 } expect(GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, truncatedState.maxDescriptionLength)).toBe('short') @@ -127,8 +127,8 @@ test('getDebugPropertyValueLabel - does not truncate short description', () => { test('getDebugPropertyValueLabel - truncates very long description to default length', () => { const veryLongDescription = 'a'.repeat(20_000) // 20k characters const value = { - type: 'function', description: veryLongDescription, + type: 'function', } // Use default state with maxDescriptionLength: 100 const result = GetDebugPropertyValueLabel.getDebugPropertyValueLabel(value, mockState.maxDescriptionLength) diff --git a/packages/debug-worker/test/GetDebugPropertyValueLabelArray.test.ts b/packages/debug-worker/test/GetDebugPropertyValueLabelArray.test.ts index 360ca955..5cd036d3 100644 --- a/packages/debug-worker/test/GetDebugPropertyValueLabelArray.test.ts +++ b/packages/debug-worker/test/GetDebugPropertyValueLabelArray.test.ts @@ -3,10 +3,10 @@ import { getDebugPropertyValueLabelArray } from '../src/parts/GetDebugPropertyVa test('getDebugPropertyValueLabelArray formats array with preview', () => { const property = { + description: 'Array(3)', preview: { properties: [{ value: 'item1' }, { value: 'item2' }, { value: 'item3' }], }, - description: 'Array(3)', } const result = getDebugPropertyValueLabelArray(property) expect(result).toBe('(3) ["item1", "item2", "item3"]') @@ -14,10 +14,10 @@ test('getDebugPropertyValueLabelArray formats array with preview', () => { test('getDebugPropertyValueLabelArray handles empty array', () => { const property = { + description: 'Array(0)', preview: { properties: [], }, - description: 'Array(0)', } const result = getDebugPropertyValueLabelArray(property) expect(result).toBe('(0) []') @@ -33,10 +33,10 @@ test('getDebugPropertyValueLabelArray returns description when no preview', () = test('getDebugPropertyValueLabelArray handles array with single item', () => { const property = { + description: 'Array(1)', preview: { properties: [{ value: 'single' }], }, - description: 'Array(1)', } const result = getDebugPropertyValueLabelArray(property) expect(result).toBe('(1) ["single"]') @@ -44,10 +44,10 @@ test('getDebugPropertyValueLabelArray handles array with single item', () => { test('getDebugPropertyValueLabelArray handles invalid array description format', () => { const property = { + description: 'Invalid Format', preview: { properties: [{ value: 'item1' }, { value: 'item2' }], }, - description: 'Invalid Format', } const result = getDebugPropertyValueLabelArray(property) expect(result).toBe('() ["item1", "item2"]') diff --git a/packages/debug-worker/test/GetHighlight.test.ts b/packages/debug-worker/test/GetHighlight.test.ts index dbfdbb1a..116b4209 100644 --- a/packages/debug-worker/test/GetHighlight.test.ts +++ b/packages/debug-worker/test/GetHighlight.test.ts @@ -7,9 +7,9 @@ import * as RunAndDebugStates from '../src/parts/RunAndDebugStates/RunAndDebugSt test('returns empty highlight when state does not exist', () => { const highlight = getHighlight(1) expect(highlight).toEqual({ - uri: '', - rowIndex: 0, columnIndex: 0, + rowIndex: 0, + uri: '', }) }) @@ -17,9 +17,9 @@ test('returns empty highlight when call stack is empty', () => { createDefaultState(1) const highlight = getHighlight(1) expect(highlight).toEqual({ - uri: '', - rowIndex: 0, columnIndex: 0, + rowIndex: 0, + uri: '', }) }) @@ -29,17 +29,17 @@ test('returns highlight from top of call stack', () => { ...state, callStack: [ { - location: { - scriptId: 'script1', - lineNumber: 10, - columnNumber: 5, - }, functionLocation: { - scriptId: 'script1', - lineNumber: 0, columnNumber: 0, + lineNumber: 0, + scriptId: 'script1', }, functionName: '', + location: { + columnNumber: 5, + lineNumber: 10, + scriptId: 'script1', + }, }, ], parsedScripts: { @@ -53,8 +53,8 @@ test('returns highlight from top of call stack', () => { RunAndDebugStates.set(1, newState, newState) const highlight = getHighlight(1) expect(highlight).toEqual({ - uri: 'file:///test.ts', - rowIndex: 10, columnIndex: 5, + rowIndex: 10, + uri: 'file:///test.ts', }) }) diff --git a/packages/debug-worker/test/GetInnerChildScopeChain.test.ts b/packages/debug-worker/test/GetInnerChildScopeChain.test.ts index c8cb5e7f..532b8677 100644 --- a/packages/debug-worker/test/GetInnerChildScopeChain.test.ts +++ b/packages/debug-worker/test/GetInnerChildScopeChain.test.ts @@ -37,10 +37,10 @@ ExtensionHost.set(mockExtensionHost) test('should return cached value if available', async () => { const cache = { - 'test-object-id': [{ type: 3, key: 'test', value: 'cached' }], + 'test-object-id': [{ key: 'test', type: 3, value: 'cached' }], } const result = await getInnerChildScopeChain(cache, 'debug-id', 'test-object-id', 0, 100) - expect(result).toEqual([{ type: 3, key: 'test', value: 'cached' }]) + expect(result).toEqual([{ key: 'test', type: 3, value: 'cached' }]) }) test('should get properties and create scope chain', async () => { @@ -48,14 +48,14 @@ test('should get properties and create scope chain', async () => { const result = await getInnerChildScopeChain(cache, 'debug-id', 'object-id', 0, 100) expect(result).toEqual([ { - type: 3, + flags: 0, + indent: 10, key: 'test', + label: '', + objectId: '', + type: 3, value: '"test-value"', valueType: 'string', - objectId: '', - indent: 10, - label: '', - flags: 0, }, ]) }) diff --git a/packages/debug-worker/test/GetOpenInfo.test.ts b/packages/debug-worker/test/GetOpenInfo.test.ts index ea6ec423..e8d20fe1 100644 --- a/packages/debug-worker/test/GetOpenInfo.test.ts +++ b/packages/debug-worker/test/GetOpenInfo.test.ts @@ -10,23 +10,23 @@ test('getOpenInfo', () => { }, } const item = { - functionName: 'test', functionLocation: { - scriptId: '1', - lineNumber: 1, columnNumber: 1, + lineNumber: 1, + scriptId: '1', }, + functionName: 'test', location: { - scriptId: '1', - lineNumber: 1, columnNumber: 1, + lineNumber: 1, + scriptId: '1', }, } const result = getOpenInfo(0, parsedScripts, item) expect(result).toEqual({ - uri: 'debug:///0/1', + columnIndex: 1, languageId: 'javascript', rowIndex: 1, - columnIndex: 1, + uri: 'debug:///0/1', }) }) diff --git a/packages/debug-worker/test/GetPausedInfo2.test.ts b/packages/debug-worker/test/GetPausedInfo2.test.ts index 4f547963..a81be80b 100644 --- a/packages/debug-worker/test/GetPausedInfo2.test.ts +++ b/packages/debug-worker/test/GetPausedInfo2.test.ts @@ -22,8 +22,8 @@ test.skip('getPausedInfo2', async () => { ] const mockCallStack = ['stack1'] const mockPausedStatus = { - reason: 'test-reason', data: {}, + reason: 'test-reason', } const mockScripts: any[] = [] const mockScriptMap: ParsedScriptMap = {} @@ -88,12 +88,12 @@ test.skip('getPausedInfo2', async () => { try { const result = await getPausedInfo2(mockDebugId, maxDescriptionLength) expect(result).toEqual({ - scopeChain: ['scope1'], - callStack: ['stack1'], - pausedReason: 'test-reason', - pausedMessage: 'test message', callFrameId: 'frame1', + callStack: ['stack1'], expandedIds: ['scope1'], + pausedMessage: 'test message', + pausedReason: 'test-reason', + scopeChain: ['scope1'], scriptMap: mockScriptMap, }) } finally { diff --git a/packages/debug-worker/test/GetRunAndDebugRowSectionHeadingVirtualDom.test.ts b/packages/debug-worker/test/GetRunAndDebugRowSectionHeadingVirtualDom.test.ts index 61250f31..fb8629e4 100644 --- a/packages/debug-worker/test/GetRunAndDebugRowSectionHeadingVirtualDom.test.ts +++ b/packages/debug-worker/test/GetRunAndDebugRowSectionHeadingVirtualDom.test.ts @@ -10,33 +10,33 @@ import * as VirtualDomHelpers from '../src/parts/VirtualDomHelpers/VirtualDomHel test('renderSectionHeading - expanded', () => { const row: DebugRow = { - type: DebugRowType.SectionHeading, - text: 'test heading', + description: '', expanded: true, - key: 'test-key', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test-key', + name: '', posInset: 1, + setSize: 1, + text: 'test heading', + type: DebugRowType.SectionHeading, + value: '', + valueType: '', } const result = GetRunAndDebugRowSectionHeadingVirtualDom.renderSectionHeading(row, -1, 0) expect(result[0]).toEqual({ - type: VirtualDomElements.Div, - className: 'DebugSectionHeader DebugRow', - role: AriaRoles.TreeItem, ariaExpanded: true, ariaLevel: 1, + ariaPosInSet: 1, + ariaSetSize: 1, childCount: 2, - onClick: DomEventListenerFunctions.HandleClickSectionHeading, - onContextMenu: DomEventListenerFunctions.HandleSectionHeaderContextMenu, + className: 'DebugSectionHeader DebugRow', 'data-index': 0, 'data-name': 'test-key', - ariaPosInSet: 1, - ariaSetSize: 1, + onClick: DomEventListenerFunctions.HandleClickSectionHeading, + onContextMenu: DomEventListenerFunctions.HandleSectionHeaderContextMenu, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }) expect(result[1]).toEqual(GetChevronVirtualDom.getChevronDownVirtualDom()) expect(result[2]).toEqual(VirtualDomHelpers.text('test heading')) @@ -44,33 +44,33 @@ test('renderSectionHeading - expanded', () => { test('renderSectionHeading - collapsed', () => { const row: DebugRow = { - type: DebugRowType.SectionHeading, - text: 'test heading', + description: '', expanded: false, - key: 'test-key', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test-key', + name: '', posInset: 1, + setSize: 1, + text: 'test heading', + type: DebugRowType.SectionHeading, + value: '', + valueType: '', } const result = GetRunAndDebugRowSectionHeadingVirtualDom.renderSectionHeading(row, -1, 0) expect(result[0]).toEqual({ - type: VirtualDomElements.Div, - className: 'DebugSectionHeader DebugRow', - role: AriaRoles.TreeItem, ariaExpanded: false, ariaLevel: 1, + ariaPosInSet: 1, + ariaSetSize: 1, childCount: 2, - onClick: DomEventListenerFunctions.HandleClickSectionHeading, - onContextMenu: DomEventListenerFunctions.HandleSectionHeaderContextMenu, + className: 'DebugSectionHeader DebugRow', 'data-index': 0, 'data-name': 'test-key', - ariaPosInSet: 1, - ariaSetSize: 1, + onClick: DomEventListenerFunctions.HandleClickSectionHeading, + onContextMenu: DomEventListenerFunctions.HandleSectionHeaderContextMenu, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }) expect(result[1]).toEqual(GetChevronVirtualDom.getChevronRightVirtualDom()) expect(result[2]).toEqual(VirtualDomHelpers.text('test heading')) diff --git a/packages/debug-worker/test/GetRunAndDebugRowVirtualDom.test.ts b/packages/debug-worker/test/GetRunAndDebugRowVirtualDom.test.ts index 2e233dbc..c818aca2 100644 --- a/packages/debug-worker/test/GetRunAndDebugRowVirtualDom.test.ts +++ b/packages/debug-worker/test/GetRunAndDebugRowVirtualDom.test.ts @@ -4,18 +4,18 @@ import { getRunAndDebugRowVirtualDom } from '../src/parts/GetRunAndDebugRowVirtu test('getRunAndDebugRowVirtualDom - returns virtual dom for row', () => { const row: DebugRow = { - type: 0, + description: '', expanded: false, indent: 0, + index: 0, key: '', name: '', + posInset: 1, + setSize: 1, text: '', + type: 0, value: '0', valueType: '', - description: '', - index: 0, - setSize: 1, - posInset: 1, } const result = getRunAndDebugRowVirtualDom(row, -1, 0, true) diff --git a/packages/debug-worker/test/GetRunAndDebugVisibleRows.test.ts b/packages/debug-worker/test/GetRunAndDebugVisibleRows.test.ts index 94bf985b..af7a0a89 100644 --- a/packages/debug-worker/test/GetRunAndDebugVisibleRows.test.ts +++ b/packages/debug-worker/test/GetRunAndDebugVisibleRows.test.ts @@ -13,18 +13,18 @@ test.skip('should return watch section with default state', () => { const state: RunAndDebugState = createDefaultState() const rows = getRunAndDebugVisibleRows(state) expect(rows[0]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.watch(), + actions: [], + description: '', expanded: false, - key: 'watch', - value: '', indent: 0, - valueType: '', + key: 'watch', name: 'Watch', - description: '', - actions: [], - setSize: 1, posInset: 1, + setSize: 1, + text: DebugStrings.watch(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) }) @@ -32,18 +32,18 @@ test('should return breakpoints section with default state', () => { const state: RunAndDebugState = createDefaultState() const rows = getRunAndDebugVisibleRows(state) expect(rows[1]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.breakPoints(), + description: '', expanded: false, - key: 'breakpoints', - value: '', indent: 0, - valueType: '', - name: DebugRowName.BreakPoints, - description: '', index: 1, - setSize: 4, + key: 'breakpoints', + name: DebugRowName.BreakPoints, posInset: 2, + setSize: 4, + text: DebugStrings.breakPoints(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) }) @@ -51,51 +51,51 @@ test('should return expanded breakpoints section with all exceptions', () => { const state: RunAndDebugState = { ...createDefaultState(), breakPointsExpanded: true, - exceptionBreakPoints: ExceptionBreakPoints.All, debugState: DebugState.Paused, + exceptionBreakPoints: ExceptionBreakPoints.All, } const rows = getRunAndDebugVisibleRows(state) expect(rows[1]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.breakPoints(), + description: '', expanded: true, - key: 'breakpoints', - value: '', indent: 0, - valueType: '', - name: DebugRowName.BreakPoints, - description: '', index: 1, - setSize: 4, + key: 'breakpoints', + name: DebugRowName.BreakPoints, posInset: 2, + setSize: 4, + text: DebugStrings.breakPoints(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) expect(rows[2]).toEqual({ - type: DebugRowType.CheckBox, - text: DebugStrings.pauseOnExceptions(), + description: '', expanded: true, - key: '', - value: '', indent: 0, - valueType: '', - name: InputName.PauseOnExceptions, - description: '', index: 2, - setSize: 2, + key: '', + name: InputName.PauseOnExceptions, posInset: 2, - }) - expect(rows[3]).toEqual({ + setSize: 2, + text: DebugStrings.pauseOnExceptions(), type: DebugRowType.CheckBox, - text: DebugStrings.pauseOnUncaughtExceptions(), - expanded: false, - key: '', value: '', - indent: 0, valueType: '', - name: InputName.PauseOnUncaughtExceptions, + }) + expect(rows[3]).toEqual({ description: '', + expanded: false, + indent: 0, index: 3, - setSize: 2, + key: '', + name: InputName.PauseOnUncaughtExceptions, posInset: 3, + setSize: 2, + text: DebugStrings.pauseOnUncaughtExceptions(), + type: DebugRowType.CheckBox, + value: '', + valueType: '', }) }) @@ -103,55 +103,55 @@ test('should return scope section with default state', () => { const state: RunAndDebugState = createDefaultState() const rows = getRunAndDebugVisibleRows(state) expect(rows[2]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.scope(), + description: '', expanded: false, - key: 'scope', - value: '', indent: 0, - valueType: '', - name: DebugRowName.Scope, - description: '', index: 2, - setSize: 4, + key: 'scope', + name: DebugRowName.Scope, posInset: 1, + setSize: 4, + text: DebugStrings.scope(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) }) test.skip('should return expanded scope section with not paused message', () => { const state: RunAndDebugState = { ...createDefaultState(), - scopeExpanded: true, debugState: DebugState.Paused, + scopeExpanded: true, } const rows = getRunAndDebugVisibleRows(state) expect(rows[2]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.scope(), + description: '', expanded: true, - key: 'scope', - value: '', indent: 0, - valueType: '', - name: DebugRowName.Scope, - description: '', index: 2, - setSize: 1, + key: 'scope', + name: DebugRowName.Scope, posInset: 1, + setSize: 1, + text: DebugStrings.scope(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) expect(rows[3]).toEqual({ - type: DebugRowType.Message, - text: DebugStrings.notPaused(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 3, - setSize: 1, + key: '', + name: '', posInset: 2, + setSize: 1, + text: DebugStrings.notPaused(), + type: DebugRowType.Message, + value: '', + valueType: '', }) }) @@ -159,18 +159,18 @@ test('should return call stack section with default state', () => { const state: RunAndDebugState = createDefaultState() const rows = getRunAndDebugVisibleRows(state) expect(rows[3]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.callStack(), + description: '', expanded: false, - key: 'callstack', - value: '', indent: 0, - valueType: '', - name: DebugRowName.CallStack, - description: '', index: 3, - setSize: 1, + key: 'callstack', + name: DebugRowName.CallStack, posInset: 1, + setSize: 1, + text: DebugStrings.callStack(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) }) @@ -181,46 +181,46 @@ test('should return expanded call stack section with not paused message', () => } const rows = getRunAndDebugVisibleRows(state) expect(rows[3]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.callStack(), + description: '', expanded: true, - key: 'callstack', - value: '', indent: 0, - valueType: '', - name: DebugRowName.CallStack, - description: '', index: 3, - setSize: 4, + key: 'callstack', + name: DebugRowName.CallStack, posInset: 4, + setSize: 4, + text: DebugStrings.callStack(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) expect(rows[4]).toEqual({ - type: DebugRowType.Message, - text: DebugStrings.notPaused(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 4, - setSize: 1, + key: '', + name: '', posInset: 2, + setSize: 1, + text: DebugStrings.notPaused(), + type: DebugRowType.Message, + value: '', + valueType: '', }) }) test('getRunAndDebugVisibleRows: callstack rows have correct index', () => { const callStack = [ { + functionLocation: { columnNumber: 1, lineNumber: 1, scriptId: '1' }, functionName: 'main', - functionLocation: { scriptId: '1', lineNumber: 1, columnNumber: 1 }, - location: { scriptId: '1', lineNumber: 10, columnNumber: 5 }, + location: { columnNumber: 5, lineNumber: 10, scriptId: '1' }, }, { + functionLocation: { columnNumber: 1, lineNumber: 1, scriptId: '2' }, functionName: 'helper', - functionLocation: { scriptId: '2', lineNumber: 1, columnNumber: 1 }, - location: { scriptId: '2', lineNumber: 5, columnNumber: 3 }, + location: { columnNumber: 3, lineNumber: 5, scriptId: '2' }, }, ] const parsedScripts = { @@ -229,9 +229,9 @@ test('getRunAndDebugVisibleRows: callstack rows have correct index', () => { } const state: RunAndDebugState = { ...createDefaultState(), - callStackVisible: true, - callStackExpanded: true, callStack, + callStackExpanded: true, + callStackVisible: true, parsedScripts, } const rows = getRunAndDebugVisibleRows(state) diff --git a/packages/debug-worker/test/GetRunAndDebugVisibleRowsCallStack.test.ts b/packages/debug-worker/test/GetRunAndDebugVisibleRowsCallStack.test.ts index 5280f007..18ee5833 100644 --- a/packages/debug-worker/test/GetRunAndDebugVisibleRowsCallStack.test.ts +++ b/packages/debug-worker/test/GetRunAndDebugVisibleRowsCallStack.test.ts @@ -19,24 +19,24 @@ test('should return empty array when callStackVisible is false', () => { test('should return collapsed call stack section when callStackExpanded is false', () => { const state: RunAndDebugState = { ...createDefaultState(), - callStackVisible: true, callStackExpanded: false, + callStackVisible: true, } const rows = getRunAndDebugVisibleRowsCallStack(state, 0, 4, 0) expect(rows).toEqual([ { - type: DebugRowType.SectionHeading, - text: DebugStrings.callStack(), + description: '', expanded: false, - key: DebugSectionId.CallStack, - value: '', indent: 0, - valueType: '', - name: DebugRowName.CallStack, - description: '', index: 0, - setSize: 1, + key: DebugSectionId.CallStack, + name: DebugRowName.CallStack, posInset: 1, + setSize: 1, + text: DebugStrings.callStack(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ]) }) @@ -44,39 +44,39 @@ test('should return collapsed call stack section when callStackExpanded is false test('should return expanded call stack section with not paused message when callStack is empty', () => { const state: RunAndDebugState = { ...createDefaultState(), - callStackVisible: true, - callStackExpanded: true, callStack: [], + callStackExpanded: true, + callStackVisible: true, } const rows = getRunAndDebugVisibleRowsCallStack(state, 0, 4, 0) expect(rows).toEqual([ { - type: DebugRowType.SectionHeading, - text: DebugStrings.callStack(), + description: '', expanded: true, - key: DebugSectionId.CallStack, - value: '', indent: 0, - valueType: '', - name: DebugRowName.CallStack, - description: '', index: 0, - setSize: 4, + key: DebugSectionId.CallStack, + name: DebugRowName.CallStack, posInset: 1, + setSize: 4, + text: DebugStrings.callStack(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, { - type: DebugRowType.Message, - text: DebugStrings.notPaused(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 1, - setSize: 1, + key: '', + name: '', posInset: 2, + setSize: 1, + text: DebugStrings.notPaused(), + type: DebugRowType.Message, + value: '', + valueType: '', }, ]) }) @@ -84,14 +84,14 @@ test('should return expanded call stack section with not paused message when cal test('should return expanded call stack section with callstack items and correct indices', () => { const callStack = [ { + functionLocation: { columnNumber: 1, lineNumber: 1, scriptId: '1' }, functionName: 'main', - functionLocation: { scriptId: '1', lineNumber: 1, columnNumber: 1 }, - location: { scriptId: '1', lineNumber: 10, columnNumber: 5 }, + location: { columnNumber: 5, lineNumber: 10, scriptId: '1' }, }, { + functionLocation: { columnNumber: 1, lineNumber: 1, scriptId: '2' }, functionName: 'helper', - functionLocation: { scriptId: '2', lineNumber: 1, columnNumber: 1 }, - location: { scriptId: '2', lineNumber: 5, columnNumber: 3 }, + location: { columnNumber: 3, lineNumber: 5, scriptId: '2' }, }, ] const parsedScripts = { @@ -100,54 +100,54 @@ test('should return expanded call stack section with callstack items and correct } const state: RunAndDebugState = { ...createDefaultState(), - callStackVisible: true, - callStackExpanded: true, callStack, + callStackExpanded: true, + callStackVisible: true, parsedScripts, } const rows = getRunAndDebugVisibleRowsCallStack(state, 0, 4, 0) expect(rows[0]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.callStack(), + description: '', expanded: true, - key: DebugSectionId.CallStack, - value: '', indent: 0, - valueType: '', - name: DebugRowName.CallStack, - description: '', index: 0, - setSize: 4, - posInset: 1, - }) - expect(rows[1]).toEqual({ - type: DebugRowType.CallStack, - text: 'main', - expanded: false, key: DebugSectionId.CallStack, + name: DebugRowName.CallStack, + posInset: 1, + setSize: 4, + text: DebugStrings.callStack(), + type: DebugRowType.SectionHeading, value: '', - indent: 0, valueType: '', - name: '', + }) + expect(rows[1]).toEqual({ description: 'main.js:11', + expanded: false, hasArrow: true, + indent: 0, index: 1, - setSize: 3, + key: DebugSectionId.CallStack, + name: '', posInset: 2, - }) - expect(rows[2]).toEqual({ + setSize: 3, + text: 'main', type: DebugRowType.CallStack, - text: 'helper', - expanded: false, - key: DebugSectionId.CallStack, value: '', - indent: 0, valueType: '', - name: '', + }) + expect(rows[2]).toEqual({ description: 'helper.js:6', + expanded: false, hasArrow: false, + indent: 0, index: 2, - setSize: 3, + key: DebugSectionId.CallStack, + name: '', posInset: 3, + setSize: 3, + text: 'helper', + type: DebugRowType.CallStack, + value: '', + valueType: '', }) }) diff --git a/packages/debug-worker/test/GetRunAndDebugVisibleRowsScope.test.ts b/packages/debug-worker/test/GetRunAndDebugVisibleRowsScope.test.ts index 52d4585e..ae660219 100644 --- a/packages/debug-worker/test/GetRunAndDebugVisibleRowsScope.test.ts +++ b/packages/debug-worker/test/GetRunAndDebugVisibleRowsScope.test.ts @@ -13,88 +13,88 @@ test('getRunAndDebugVisibleRowsScope returns collapsed section when scopeExpande const rows = getRunAndDebugVisibleRowsScope(state, 0, 4, 0) expect(rows).toHaveLength(1) expect(rows[0]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.scope(), + description: '', expanded: false, - key: DebugSectionId.Scope, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Scope, - description: '', index: 0, - setSize: 4, + key: DebugSectionId.Scope, + name: DebugRowName.Scope, posInset: 1, + setSize: 4, + text: DebugStrings.scope(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) }) test.skip('getRunAndDebugVisibleRowsScope returns not paused message when scopeExpanded is true and scopeChain is empty', () => { const state: RunAndDebugState = { ...createDefaultState(), - scopeExpanded: true, - scopeChain: [], debugState: DebugState.Paused, + scopeChain: [], + scopeExpanded: true, } const rows = getRunAndDebugVisibleRowsScope(state, 0, 4, 0) expect(rows).toHaveLength(2) expect(rows[0]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.scope(), + description: '', expanded: true, - key: DebugSectionId.Scope, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Scope, - description: '', index: 0, - setSize: 1, + key: DebugSectionId.Scope, + name: DebugRowName.Scope, posInset: 1, + setSize: 1, + text: DebugStrings.scope(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) expect(rows[1]).toEqual({ - type: DebugRowType.Message, - text: DebugStrings.notPaused(), + description: '', expanded: false, + indent: 0, key: '', + name: '', + text: DebugStrings.notPaused(), + type: DebugRowType.Message, value: '', - indent: 0, valueType: '', - name: '', - description: '', }) }) test('getRunAndDebugVisibleRowsScope returns scope items when scopeExpanded is true and scopeChain has items', () => { const state: RunAndDebugState = { ...createDefaultState(), - scopeExpanded: true, expandedIds: ['1'], scopeChain: [ { - type: 1, - key: '1', - objectId: '1', - valueType: 'object', + flags: 0, indent: 0, + key: '1', label: 'Local', + objectId: '1', + type: 1, value: 'Local', - flags: 0, + valueType: 'object', }, ], + scopeExpanded: true, } const rows = getRunAndDebugVisibleRowsScope(state, 0, 4, 0) expect(rows[0]).toEqual({ - type: DebugRowType.SectionHeading, - text: DebugStrings.scope(), + description: '', expanded: true, - key: DebugSectionId.Scope, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Scope, - description: '', index: 0, - setSize: 4, + key: DebugSectionId.Scope, + name: DebugRowName.Scope, posInset: 1, + setSize: 4, + text: DebugStrings.scope(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }) }) diff --git a/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatch.test.ts b/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatch.test.ts index b13a12ce..18c73813 100644 --- a/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatch.test.ts +++ b/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatch.test.ts @@ -14,19 +14,19 @@ test('should return watch section with default state', () => { const rows = getRunAndDebugVisibleRowsWatch(state, 0, 4, 1) expect(rows).toEqual([ { - type: DebugRowType.SectionHeading, - text: DebugStrings.watch(), + actions: [], + description: '', expanded: false, - key: DebugSectionId.Watch, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', index: 0, - setSize: 4, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, posInset: 2, - actions: [], + setSize: 4, + text: DebugStrings.watch(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ]) }) @@ -40,33 +40,33 @@ test('should show no watch expression message when expanded and no expressions', const rows = getRunAndDebugVisibleRowsWatch(expandedState, 0, 4, 1) expect(rows).toEqual([ { - type: DebugRowType.SectionHeading, - text: DebugStrings.watch(), + actions: expect.any(Array), + description: '', expanded: true, - key: DebugSectionId.Watch, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', index: 0, - setSize: 4, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, posInset: 2, - actions: expect.any(Array), + setSize: 4, + text: DebugStrings.watch(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, { - type: DebugRowType.WatchMessage, - text: DebugStrings.noWatchExpression(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 1, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: DebugStrings.noWatchExpression(), + type: DebugRowType.WatchMessage, + value: '', + valueType: '', }, ]) }) @@ -81,47 +81,47 @@ test.skip('should show watch expressions when expanded', async () => { const rows = getRunAndDebugVisibleRowsWatch(expandedState, 0, 4, 1) expect(rows).toEqual([ { - type: DebugRowType.SectionHeading, - text: DebugStrings.watch(), - expanded: true, - key: DebugSectionId.Watch, - value: '', - indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', - index: 0, - setSize: 1, - posInset: 1, actions: [ { + icon: '+', id: InputName.AddWatchExpression, title: 'Add new watch expression', - icon: '+', }, ], + description: '', + expanded: true, + indent: 0, + index: 0, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, + posInset: 1, + setSize: 1, + text: DebugStrings.watch(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, { - type: DebugRowType.WatchExpression, - text: 'x + y', + description: '', expanded: false, + indent: 0, key: 'x + y', + name: '', + text: 'x + y', + type: DebugRowType.WatchExpression, value: '', - indent: 0, valueType: '', - name: '', - description: '', }, { - type: DebugRowType.WatchExpression, - text: 'a + b', + description: '', expanded: false, + indent: 0, key: 'a + b', + name: '', + text: 'a + b', + type: DebugRowType.WatchExpression, value: '', - indent: 0, valueType: '', - name: '', - description: '', }, ]) }) @@ -136,36 +136,36 @@ test.skip('should show input field for new watch expression', async () => { const rows = getRunAndDebugVisibleRowsWatch(expandedState, 0, 4, 1) expect(rows).toEqual([ { - type: DebugRowType.SectionHeading, - text: DebugStrings.watch(), - expanded: true, - key: DebugSectionId.Watch, - value: '', - indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', - index: 0, - setSize: 1, - posInset: 1, actions: [ { + icon: '+', id: InputName.AddWatchExpression, title: 'Add new watch expression', - icon: '+', }, ], + description: '', + expanded: true, + indent: 0, + index: 0, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, + posInset: 1, + setSize: 1, + text: DebugStrings.watch(), + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, { - type: DebugRowType.WatchExpression, - text: '', + description: '', expanded: false, + indent: 0, key: '', + name: '', + text: '', + type: DebugRowType.WatchExpression, value: '', - indent: 0, valueType: '', - name: '', - description: '', }, ]) }) diff --git a/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatchContent.test.ts b/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatchContent.test.ts index aad4a0d9..b95b362b 100644 --- a/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatchContent.test.ts +++ b/packages/debug-worker/test/GetRunAndDebugVisibleRowsWatchContent.test.ts @@ -10,18 +10,18 @@ test('getRunAndDebugVisibleRowsWatchContent - empty expressions', () => { const result = getRunAndDebugVisibleRowsWatchContent(watchExpressions, 0) expect(result).toEqual([ { - type: DebugRowType.WatchMessage, - text: DebugStrings.noWatchExpression(), + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 1, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: DebugStrings.noWatchExpression(), + type: DebugRowType.WatchMessage, + value: '', + valueType: '', }, ]) }) @@ -30,44 +30,44 @@ test('getRunAndDebugVisibleRowsWatchContent - with expressions', () => { const watchExpressions: readonly WatchExpression[] = [ { expression: 'x', - value: 42, isEditing: false, + value: 42, }, { expression: 'y', - value: 'test', isEditing: false, + value: 'test', }, ] const result = getRunAndDebugVisibleRowsWatchContent(watchExpressions, 0) expect(result).toEqual([ { - type: DebugRowType.WatchExpression, - text: 'x', + description: '', expanded: false, - key: 'x', - value: '42', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 2, + key: 'x', + name: '', posInset: 1, + setSize: 2, + text: 'x', + type: DebugRowType.WatchExpression, + value: '42', + valueType: '', }, { - type: DebugRowType.WatchExpression, - text: 'y', + description: '', expanded: false, - key: 'y', - value: 'test', indent: 0, - valueType: '', - name: '', - description: '', index: 1, - setSize: 2, + key: 'y', + name: '', posInset: 2, + setSize: 2, + text: 'y', + type: DebugRowType.WatchExpression, + value: 'test', + valueType: '', }, ]) }) @@ -76,25 +76,25 @@ test('getRunAndDebugVisibleRowsWatchContent - with editing expression', () => { const watchExpressions: readonly WatchExpression[] = [ { expression: 'x', - value: 42, isEditing: true, + value: 42, }, ] const result = getRunAndDebugVisibleRowsWatchContent(watchExpressions, 0) expect(result).toEqual([ { - type: DebugRowType.InputField, - text: '', + description: '', expanded: false, - key: 'new-watch-expression', - value: '', indent: 0, - valueType: '', - name: InputName.WatchExpressionInput, - description: '', index: 0, - setSize: 1, + key: 'new-watch-expression', + name: InputName.WatchExpressionInput, posInset: 1, + setSize: 1, + text: '', + type: DebugRowType.InputField, + value: '', + valueType: '', }, ]) }) @@ -103,44 +103,44 @@ test('getRunAndDebugVisibleRowsWatchContent - with null/undefined values', () => const watchExpressions: readonly WatchExpression[] = [ { expression: 'x', - value: null, isEditing: false, + value: null, }, { expression: 'y', - value: undefined, isEditing: false, + value: undefined, }, ] const result = getRunAndDebugVisibleRowsWatchContent(watchExpressions, 0) expect(result).toEqual([ { - type: DebugRowType.WatchExpression, - text: 'x', + description: '', expanded: false, - key: 'x', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 2, + key: 'x', + name: '', posInset: 1, - }, - { + setSize: 2, + text: 'x', type: DebugRowType.WatchExpression, - text: 'y', - expanded: false, - key: 'y', value: '', - indent: 0, valueType: '', - name: '', + }, + { description: '', + expanded: false, + indent: 0, index: 1, - setSize: 2, + key: 'y', + name: '', posInset: 2, + setSize: 2, + text: 'y', + type: DebugRowType.WatchExpression, + value: '', + valueType: '', }, ]) }) diff --git a/packages/debug-worker/test/GetScopeChain.test.ts b/packages/debug-worker/test/GetScopeChain.test.ts index a2a93b9f..284ea8d4 100644 --- a/packages/debug-worker/test/GetScopeChain.test.ts +++ b/packages/debug-worker/test/GetScopeChain.test.ts @@ -10,8 +10,8 @@ test('getScopeChain - basic scope chain', async () => { const thisObject = { type: 'object' } const scopeChain = [ { - type: 'local', object: { objectId: '1' }, + type: 'local', }, ] const knownProperties = { @@ -36,16 +36,16 @@ test('getScopeChain - basic scope chain', async () => { test('getScopeChain - with exception', async () => { const params = { - reason: 'exception', data: { description: 'Test error', }, + reason: 'exception', } const thisObject = { type: 'object' } const scopeChain = [ { - type: 'local', object: { objectId: '1' }, + type: 'local', }, ] const knownProperties = {} diff --git a/packages/debug-worker/test/GetScopeExceptionRows.test.ts b/packages/debug-worker/test/GetScopeExceptionRows.test.ts index 47073800..907e294a 100644 --- a/packages/debug-worker/test/GetScopeExceptionRows.test.ts +++ b/packages/debug-worker/test/GetScopeExceptionRows.test.ts @@ -5,32 +5,32 @@ import { getScopeExceptionRows } from '../src/parts/ScopeRenderers/GetScopeExcep test('getScopeExceptionRows', () => { const scope: Scope = { - key: 'error', - value: 'test error', + flags: 0, indent: 1, + key: 'error', label: '', objectId: '', type: 0, + value: 'test error', valueType: '', - flags: 0, } const result = getScopeExceptionRows(scope, 0, 0) expect(result).toEqual([ { - type: DebugRowType.Exception, - text: '', - tokens: ['test', 'Identifier', ' ', 'WhiteSpace', 'error', 'Identifier'], + description: '', expanded: false, - key: 'error', - value: 'test error', indent: 1, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'error', + name: '', posInset: 1, scopeChainIndex: 0, + setSize: 1, + text: '', + tokens: ['test', 'Identifier', ' ', 'WhiteSpace', 'error', 'Identifier'], + type: DebugRowType.Exception, + value: 'test error', + valueType: '', }, ]) }) diff --git a/packages/debug-worker/test/GetScopePropertyRows.test.ts b/packages/debug-worker/test/GetScopePropertyRows.test.ts index 0ec104b5..604285e6 100644 --- a/packages/debug-worker/test/GetScopePropertyRows.test.ts +++ b/packages/debug-worker/test/GetScopePropertyRows.test.ts @@ -6,32 +6,32 @@ import { getScopePropertyRows } from '../src/parts/ScopeRenderers/GetScopeProper test('getScopePropertyRows', () => { const scope: Scope = { + flags: DebugItemFlags.Expanded, indent: 1, key: 'property', - value: 'test', - valueType: 'string', - flags: DebugItemFlags.Expanded, label: '', objectId: '', type: 0, + value: 'test', + valueType: 'string', } const result = getScopePropertyRows(scope, 0, 0) expect(result).toEqual([ { - type: DebugRowType.Property, - text: '', - tokens: ['test', 'Identifier'], + description: '', expanded: true, - key: 'property', - value: 'test', indent: 1, - valueType: 'string', - name: '', - description: '', index: 0, - setSize: 1, + key: 'property', + name: '', posInset: 1, scopeChainIndex: 0, + setSize: 1, + text: '', + tokens: ['test', 'Identifier'], + type: DebugRowType.Property, + value: 'test', + valueType: 'string', }, ]) }) diff --git a/packages/debug-worker/test/GetScopeScopeRows.test.ts b/packages/debug-worker/test/GetScopeScopeRows.test.ts index 29936450..54306b80 100644 --- a/packages/debug-worker/test/GetScopeScopeRows.test.ts +++ b/packages/debug-worker/test/GetScopeScopeRows.test.ts @@ -6,9 +6,9 @@ import { getScopeScopeRows } from '../src/parts/ScopeRenderers/GetScopeScopeRows test('getScopeScopeRows', () => { const scope: Scope = { - key: 'scope', flags: DebugItemFlags.Expanded, indent: 0, + key: 'scope', label: '', objectId: '', type: 0, @@ -18,19 +18,19 @@ test('getScopeScopeRows', () => { const result = getScopeScopeRows(scope, 2, 2) expect(result).toEqual([ { - type: DebugRowType.Scope, - text: '', + description: '', expanded: true, - key: 'scope', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 2, - setSize: 1, + key: 'scope', + name: '', posInset: 1, scopeChainIndex: 2, + setSize: 1, + text: '', + type: DebugRowType.Scope, + value: '', + valueType: '', }, ]) }) diff --git a/packages/debug-worker/test/GetScopeThisRows.test.ts b/packages/debug-worker/test/GetScopeThisRows.test.ts index ba276da3..25cdb182 100644 --- a/packages/debug-worker/test/GetScopeThisRows.test.ts +++ b/packages/debug-worker/test/GetScopeThisRows.test.ts @@ -5,32 +5,32 @@ import { getScopeThisRows } from '../src/parts/ScopeRenderers/GetScopeThisRows.t test('getScopeThisRows', () => { const scope: Scope = { + flags: 0, indent: 1, key: 'this', - value: 'test', - valueType: 'string', label: '', objectId: '', type: 0, - flags: 0, + value: 'test', + valueType: 'string', } const result = getScopeThisRows(scope, 0, 0) expect(result).toEqual([ { - type: DebugRowType.Value, - text: '', - tokens: ['test', 'Identifier'], + description: '', expanded: false, - key: 'this', - value: 'test', indent: 1, - valueType: 'string', - name: '', - description: '', index: 0, - setSize: 1, + key: 'this', + name: '', posInset: 1, scopeChainIndex: 0, + setSize: 1, + text: '', + tokens: ['test', 'Identifier'], + type: DebugRowType.Value, + value: 'test', + valueType: 'string', }, ]) }) diff --git a/packages/debug-worker/test/GetVisibleScopeItems.test.ts b/packages/debug-worker/test/GetVisibleScopeItems.test.ts index 6d3cc8c5..aad7ad60 100644 --- a/packages/debug-worker/test/GetVisibleScopeItems.test.ts +++ b/packages/debug-worker/test/GetVisibleScopeItems.test.ts @@ -10,29 +10,29 @@ test('getVisibleScopeItems - empty scope chain', () => { test('getVisibleScopeItems - single item not expanded', () => { const scopeChain = [ { - objectId: '1', - valueType: 'object', + flags: DebugItemFlags.None, indent: 0, + index: 0, key: '', label: '', + objectId: '1', type: 0, value: '', - flags: DebugItemFlags.None, - index: 0, + valueType: 'object', }, ] const result = GetVisibleScopeItems.getVisibleScopeItems(scopeChain, [], 0) expect(result).toEqual([ { - objectId: '1', - valueType: 'object', + flags: 6, indent: 0, + index: 0, key: '', label: '', + objectId: '1', type: 0, value: '', - flags: 6, - index: 0, + valueType: 'object', }, ]) }) @@ -40,29 +40,29 @@ test('getVisibleScopeItems - single item not expanded', () => { test('getVisibleScopeItems - single item expanded', () => { const scopeChain = [ { - objectId: '1', - valueType: 'object', + flags: DebugItemFlags.None, indent: 0, + index: 0, key: '', label: '', + objectId: '1', type: 0, value: '', - flags: DebugItemFlags.None, - index: 0, + valueType: 'object', }, ] const result = GetVisibleScopeItems.getVisibleScopeItems(scopeChain, ['1'], 0) expect(result).toEqual([ { - objectId: '1', - valueType: 'object', + flags: 5, indent: 0, + index: 0, key: '', label: '', + objectId: '1', type: 0, value: '', - flags: 5, - index: 0, + valueType: 'object', }, ]) }) @@ -70,73 +70,73 @@ test('getVisibleScopeItems - single item expanded', () => { test('getVisibleScopeItems - multiple items with different states', () => { const scopeChain = [ { - objectId: '1', - valueType: 'object', + flags: DebugItemFlags.None, indent: 0, + index: 0, key: '', label: '', + objectId: '1', type: 0, value: '', - flags: DebugItemFlags.None, - index: 0, + valueType: 'object', }, { - objectId: '2', - valueType: 'string', + flags: DebugItemFlags.None, indent: 0, + index: 1, key: '', label: '', + objectId: '2', type: 0, value: '', - flags: DebugItemFlags.None, - index: 1, + valueType: 'string', }, { - objectId: '3', - valueType: 'object', + flags: DebugItemFlags.None, indent: 0, + index: 2, key: '', label: '', + objectId: '3', type: 0, value: '', - flags: DebugItemFlags.None, - index: 2, + valueType: 'object', }, ] const result = GetVisibleScopeItems.getVisibleScopeItems(scopeChain, ['1'], 1) expect(result).toEqual([ { - objectId: '1', - valueType: 'object', + flags: DebugItemFlags.Expanded, indent: 0, + index: 0, key: '', label: '', + objectId: '1', type: 0, value: '', - flags: DebugItemFlags.Expanded, - index: 0, + valueType: 'object', }, { - objectId: '2', - valueType: 'string', + flags: DebugItemFlags.Focused, indent: 0, + index: 1, key: '', label: '', + objectId: '2', type: 0, value: '', - flags: DebugItemFlags.Focused, - index: 1, + valueType: 'string', }, { - objectId: '3', - valueType: 'object', + flags: DebugItemFlags.Collapsed, indent: 0, + index: 2, key: '', label: '', + objectId: '3', type: 0, value: '', - flags: DebugItemFlags.Collapsed, - index: 2, + valueType: 'object', }, ]) }) diff --git a/packages/debug-worker/test/GetWatchActions.test.ts b/packages/debug-worker/test/GetWatchActions.test.ts index 611c08d9..f35542cc 100644 --- a/packages/debug-worker/test/GetWatchActions.test.ts +++ b/packages/debug-worker/test/GetWatchActions.test.ts @@ -11,14 +11,14 @@ test('should return actions when watch is expanded', () => { const actions = getWatchActions(true) expect(actions).toEqual([ { + icon: '+', id: InputName.AddWatchExpression, title: 'Add new watch expression', - icon: '+', }, { + icon: '↻', id: InputName.RefreshWatchExpressions, title: 'Refresh watch expressions', - icon: '↻', }, ]) }) diff --git a/packages/debug-worker/test/HandleArrowLeft.test.ts b/packages/debug-worker/test/HandleArrowLeft.test.ts index c0c6be56..2de4cfda 100644 --- a/packages/debug-worker/test/HandleArrowLeft.test.ts +++ b/packages/debug-worker/test/HandleArrowLeft.test.ts @@ -15,25 +15,25 @@ test('handleArrowLeft returns the same state', async () => { test('handleArrowLeft collapses expanded watch section heading', async () => { const state: RunAndDebugState = { ...createDefaultState(), - watchExpanded: true, selectedIndex: 0, visibleRows: [ { - type: DebugRowType.SectionHeading, - text: 'Watch', + actions: [], + description: '', expanded: true, - key: DebugSectionId.Watch, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', - actions: [], index: 0, - setSize: 1, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, posInset: 1, + setSize: 1, + text: 'Watch', + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ], + watchExpanded: true, } const result = await handleArrowLeft(state) expect(result.watchExpanded).toBe(false) @@ -42,25 +42,25 @@ test('handleArrowLeft collapses expanded watch section heading', async () => { test('handleArrowLeft does nothing if watch section heading is already collapsed', async () => { const state: RunAndDebugState = { ...createDefaultState(), - watchExpanded: false, selectedIndex: 0, visibleRows: [ { - type: DebugRowType.SectionHeading, - text: 'Watch', + actions: [], + description: '', expanded: false, - key: DebugSectionId.Watch, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', - actions: [], index: 0, - setSize: 1, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, posInset: 1, + setSize: 1, + text: 'Watch', + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ], + watchExpanded: false, } const result = await handleArrowLeft(state) expect(result).toBe(state) diff --git a/packages/debug-worker/test/HandleArrowRight.test.ts b/packages/debug-worker/test/HandleArrowRight.test.ts index bd907724..1a496233 100644 --- a/packages/debug-worker/test/HandleArrowRight.test.ts +++ b/packages/debug-worker/test/HandleArrowRight.test.ts @@ -15,25 +15,25 @@ test('handleArrowRight returns the same state', async () => { test('handleArrowRight expands collapsed watch section heading', async () => { const state: RunAndDebugState = { ...createDefaultState(), - watchExpanded: false, selectedIndex: 0, visibleRows: [ { - type: DebugRowType.SectionHeading, - text: 'Watch', + actions: [], + description: '', expanded: false, - key: DebugSectionId.Watch, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', - actions: [], index: 0, - setSize: 1, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, posInset: 1, + setSize: 1, + text: 'Watch', + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ], + watchExpanded: false, } const result = await handleArrowRight(state) expect(result.watchExpanded).toBe(true) @@ -42,25 +42,25 @@ test('handleArrowRight expands collapsed watch section heading', async () => { test('handleArrowRight does nothing if watch section heading is already expanded', async () => { const state: RunAndDebugState = { ...createDefaultState(), - watchExpanded: true, selectedIndex: 0, visibleRows: [ { - type: DebugRowType.SectionHeading, - text: 'Watch', + actions: [], + description: '', expanded: true, - key: DebugSectionId.Watch, - value: '', indent: 0, - valueType: '', - name: DebugRowName.Watch, - description: '', - actions: [], index: 0, - setSize: 1, + key: DebugSectionId.Watch, + name: DebugRowName.Watch, posInset: 1, + setSize: 1, + text: 'Watch', + type: DebugRowType.SectionHeading, + value: '', + valueType: '', }, ], + watchExpanded: true, } const result = await handleArrowRight(state) expect(result).toBe(state) diff --git a/packages/debug-worker/test/HandleClickCallstackItem.test.ts b/packages/debug-worker/test/HandleClickCallstackItem.test.ts index 9bd298bb..1be3580b 100644 --- a/packages/debug-worker/test/HandleClickCallstackItem.test.ts +++ b/packages/debug-worker/test/HandleClickCallstackItem.test.ts @@ -20,16 +20,16 @@ test('handleClickCallstackItem', async () => { const state: RunAndDebugState = createDefaultState() const callStack = [ { - functionName: 'test', functionLocation: { - scriptId: '1', - lineNumber: 1, columnNumber: 1, + lineNumber: 1, + scriptId: '1', }, + functionName: 'test', location: { - scriptId: '1', - lineNumber: 1, columnNumber: 1, + lineNumber: 1, + scriptId: '1', }, }, ] diff --git a/packages/debug-worker/test/HandleClickSectionAction.test.ts b/packages/debug-worker/test/HandleClickSectionAction.test.ts index 013402d6..3e69e650 100644 --- a/packages/debug-worker/test/HandleClickSectionAction.test.ts +++ b/packages/debug-worker/test/HandleClickSectionAction.test.ts @@ -16,8 +16,8 @@ test('should add watch expression when actionId is add-watch-expression', async expect(result.watchExpressions).toHaveLength(1) expect(result.watchExpressions[0]).toEqual({ expression: '', - value: null, isEditing: true, + value: null, }) }) diff --git a/packages/debug-worker/test/HandleClickSectionBreakPoints.test.ts b/packages/debug-worker/test/HandleClickSectionBreakPoints.test.ts index ae66e555..987eb160 100644 --- a/packages/debug-worker/test/HandleClickSectionBreakPoints.test.ts +++ b/packages/debug-worker/test/HandleClickSectionBreakPoints.test.ts @@ -22,8 +22,8 @@ test('handleClickSectionBreakPoints preserves other state properties', () => { const newState = handleClickSectionBreakPoints(state) expect(newState).toEqual({ ...state, - focus: expect.anything(), breakPointsExpanded: !state.breakPointsExpanded, + focus: expect.anything(), selectedIndex: 1, visibleRows: expect.anything(), }) diff --git a/packages/debug-worker/test/HandleClickWatchExpression.test.ts b/packages/debug-worker/test/HandleClickWatchExpression.test.ts index 6aeca535..a6981667 100644 --- a/packages/debug-worker/test/HandleClickWatchExpression.test.ts +++ b/packages/debug-worker/test/HandleClickWatchExpression.test.ts @@ -10,8 +10,8 @@ const makeState = (): RunAndDebugState => { return { ...state, watchExpressions: [ - { expression: 'a + b', value: 3, isEditing: false }, - { expression: 'x * y', value: 10, isEditing: false }, + { expression: 'a + b', isEditing: false, value: 3 }, + { expression: 'x * y', isEditing: false, value: 10 }, ], } } @@ -19,7 +19,7 @@ const makeState = (): RunAndDebugState => { test('click valid watch expression index', async () => { const state = makeState() const result = await handleClickWatchExpression(state, '1', false) - expect(result.watchExpressions[1]).toEqual({ expression: 'x * y', value: 10, isEditing: true }) + expect(result.watchExpressions[1]).toEqual({ expression: 'x * y', isEditing: true, value: 10 }) expect(result.focus).toBe(FocusDebugWatchInput) expect(result.inputSource).toBe(Script) expect(result.editingValue).toBe('x * y') diff --git a/packages/debug-worker/test/HandleClickWatchExpressionDelete.test.ts b/packages/debug-worker/test/HandleClickWatchExpressionDelete.test.ts index fb9cb975..869930a8 100644 --- a/packages/debug-worker/test/HandleClickWatchExpressionDelete.test.ts +++ b/packages/debug-worker/test/HandleClickWatchExpressionDelete.test.ts @@ -11,8 +11,8 @@ test('handleClickWatchExpressionDelete removes the correct watch expression', as expect(newState.watchExpressions).toHaveLength(1) expect(newState.watchExpressions[0]).toEqual({ expression: 'a + b', - value: null, isEditing: true, + value: null, }) }) diff --git a/packages/debug-worker/test/HandleDelete.test.ts b/packages/debug-worker/test/HandleDelete.test.ts index c84dbc4a..ad504939 100644 --- a/packages/debug-worker/test/HandleDelete.test.ts +++ b/packages/debug-worker/test/HandleDelete.test.ts @@ -8,11 +8,11 @@ test('handleDelete removes watch expression at current index', async () => { const state: RunAndDebugState = createDefaultState() const stateWithExpressions: RunAndDebugState = { ...state, + watchExpanded: true, watchExpressions: [ - { expression: 'x', value: 42, isEditing: false }, - { expression: 'y', value: 'test', isEditing: false }, + { expression: 'x', isEditing: false, value: 42 }, + { expression: 'y', isEditing: false, value: 'test' }, ], - watchExpanded: true, } const stateWithVisibleRows: RunAndDebugState = updateVisibleRows(stateWithExpressions) const stateWithSelectedIndex: RunAndDebugState = { @@ -30,8 +30,8 @@ test('handleDelete does nothing when current row is not a watch expression', asy const state: RunAndDebugState = createDefaultState() const stateWithExpandedWatch: RunAndDebugState = { ...state, - watchExpanded: true, selectedIndex: 0, // Index of the section heading + watchExpanded: true, } const result = await handleDelete(stateWithExpandedWatch) @@ -43,8 +43,8 @@ test('handleDelete does nothing when selected index is out of bounds', async () const state: RunAndDebugState = createDefaultState() const stateWithExpandedWatch: RunAndDebugState = { ...state, - watchExpanded: true, selectedIndex: 999, // Out of bounds index + watchExpanded: true, } const result = await handleDelete(stateWithExpandedWatch) @@ -56,8 +56,8 @@ test('handleDelete does nothing when no watch expressions exist', async () => { const state: RunAndDebugState = createDefaultState() const stateWithExpandedWatch: RunAndDebugState = { ...state, - watchExpanded: true, selectedIndex: 1, // Index where a watch expression would be if it existed + watchExpanded: true, } const result = await handleDelete(stateWithExpandedWatch) diff --git a/packages/debug-worker/test/HandleInputBlur.test.ts b/packages/debug-worker/test/HandleInputBlur.test.ts index 4db29821..4920d393 100644 --- a/packages/debug-worker/test/HandleInputBlur.test.ts +++ b/packages/debug-worker/test/HandleInputBlur.test.ts @@ -30,8 +30,8 @@ test('should update watch expression with value on blur', async () => { expect(result.watchExpressions).toHaveLength(1) expect(result.watchExpressions[0]).toEqual({ expression: 'x + y', - value: null, isEditing: false, + value: null, }) expect(result.focus).toBe(1299) expect(result.editingValue).toBe('') diff --git a/packages/debug-worker/test/HandleNew.test.ts b/packages/debug-worker/test/HandleNew.test.ts index 4e0c7eb8..7b8855ea 100644 --- a/packages/debug-worker/test/HandleNew.test.ts +++ b/packages/debug-worker/test/HandleNew.test.ts @@ -34,7 +34,7 @@ test.skip('handleNew calls addWatchExpression when selected row is a watch expre expect(result.watchExpressions).toHaveLength(2) expect(result.watchExpressions[1]).toEqual({ expression: '', - value: null, isEditing: true, + value: null, }) }) diff --git a/packages/debug-worker/test/HandleRename.test.ts b/packages/debug-worker/test/HandleRename.test.ts index bd29a9cf..c96a9ddf 100644 --- a/packages/debug-worker/test/HandleRename.test.ts +++ b/packages/debug-worker/test/HandleRename.test.ts @@ -17,16 +17,16 @@ test('handleRename puts watch expression into edit mode', async (): Promise { test('handleSpace does nothing for non-checkbox rows', async () => { const mockRow = { - type: DebugRowType.SectionHeading, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: DebugRowType.SectionHeading, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 0, visibleRows: [mockRow] } const result = await handleSpace(state) @@ -50,16 +50,16 @@ test('handleSpace toggles checkbox rows', async () => { ExtensionHost.set(mockExtensionHost) const checkboxRow = { - type: DebugRowType.CheckBox, - text: 'Pause on Exceptions', + description: '', expanded: false, + indent: 0, + index: 0, key: '', + name: InputName.PauseOnExceptions, + text: 'Pause on Exceptions', + type: DebugRowType.CheckBox, value: '', - indent: 0, valueType: '', - name: InputName.PauseOnExceptions, - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 0, visibleRows: [checkboxRow] } const result = await handleSpace(state) diff --git a/packages/debug-worker/test/Listen.test.ts b/packages/debug-worker/test/Listen.test.ts index 1943a854..8852f60f 100644 --- a/packages/debug-worker/test/Listen.test.ts +++ b/packages/debug-worker/test/Listen.test.ts @@ -3,7 +3,7 @@ import { mockWorkerGlobalRpc } from '@lvce-editor/rpc' import { listen } from '../src/parts/Listen/Listen.ts' test('listen', async () => { - const { start, dispose } = mockWorkerGlobalRpc() + const { dispose, start } = mockWorkerGlobalRpc() const listenPromise = listen() start() await listenPromise diff --git a/packages/debug-worker/test/Main.test.ts b/packages/debug-worker/test/Main.test.ts index 0f6b30fe..a9b9f92b 100644 --- a/packages/debug-worker/test/Main.test.ts +++ b/packages/debug-worker/test/Main.test.ts @@ -3,7 +3,7 @@ import { mockWorkerGlobalRpc } from '@lvce-editor/rpc' import { main } from '../src/parts/Main/Main.ts' test('main', async () => { - const { start, dispose } = mockWorkerGlobalRpc() + const { dispose, start } = mockWorkerGlobalRpc() const mainPromise = main() start() await mainPromise diff --git a/packages/debug-worker/test/OpenAtPausedLocation.test.ts b/packages/debug-worker/test/OpenAtPausedLocation.test.ts index 5492b4a1..3360884c 100644 --- a/packages/debug-worker/test/OpenAtPausedLocation.test.ts +++ b/packages/debug-worker/test/OpenAtPausedLocation.test.ts @@ -21,16 +21,16 @@ test('openAtPausedLocation - with call stack', async () => { ...createDefaultState(mockKey), callStack: [ { - functionName: 'testFunction', functionLocation: { - scriptId: 'test-script', - lineNumber: 10, columnNumber: 5, + lineNumber: 10, + scriptId: 'test-script', }, + functionName: 'testFunction', location: { - scriptId: 'test-script', - lineNumber: 10, columnNumber: 5, + lineNumber: 10, + scriptId: 'test-script', }, }, ], @@ -61,9 +61,9 @@ test('openAtPausedLocation - with call stack', async () => { expect.any(String), true, { + columnIndex: 5, languageId: 'javascript', rowIndex: 10, - columnIndex: 5, }, ]) }) diff --git a/packages/debug-worker/test/OpenUri.test.ts b/packages/debug-worker/test/OpenUri.test.ts index 43483fbf..fd9838f5 100644 --- a/packages/debug-worker/test/OpenUri.test.ts +++ b/packages/debug-worker/test/OpenUri.test.ts @@ -15,8 +15,8 @@ test('openUri calls Main.openUri with correct parameters', async () => { await openUri('file:///test.ts', 'typescript', 1, 2) expect(invoke).toHaveBeenCalledWith('Main.openUri', 'file:///test.ts', true, { + columnIndex: 2, languageId: 'typescript', rowIndex: 1, - columnIndex: 2, }) }) diff --git a/packages/debug-worker/test/RefreshWatchExpression.test.ts b/packages/debug-worker/test/RefreshWatchExpression.test.ts index 354dbff3..be273ccd 100644 --- a/packages/debug-worker/test/RefreshWatchExpression.test.ts +++ b/packages/debug-worker/test/RefreshWatchExpression.test.ts @@ -14,8 +14,8 @@ test('refreshWatchExpression - when not paused, returns same state', async () => watchExpressions: [ { expression: 'x + y', - value: null, isEditing: false, + value: null, }, ], } @@ -42,19 +42,19 @@ test('refreshWatchExpression - when paused, evaluates all expressions', async () const state: RunAndDebugState = { ...createDefaultState(), - debugState: DebugState.Paused, - debugId: '123', callFrameId: '456', + debugId: '123', + debugState: DebugState.Paused, watchExpressions: [ { expression: 'a + b', - value: null, isEditing: false, + value: null, }, { expression: 'x * y', - value: null, isEditing: false, + value: null, }, ], } @@ -63,13 +63,13 @@ test('refreshWatchExpression - when paused, evaluates all expressions', async () expect(result.watchExpressions).toEqual([ { expression: 'a + b', - value: 'result:a + b', isEditing: false, + value: 'result:a + b', }, { expression: 'x * y', - value: 'result:x * y', isEditing: false, + value: 'result:x * y', }, ]) expect(result.debugState).toBe(DebugState.Paused) diff --git a/packages/debug-worker/test/RemoveWatchExpression.test.ts b/packages/debug-worker/test/RemoveWatchExpression.test.ts index ba134fcf..294d889c 100644 --- a/packages/debug-worker/test/RemoveWatchExpression.test.ts +++ b/packages/debug-worker/test/RemoveWatchExpression.test.ts @@ -11,7 +11,7 @@ test('removeWatchExpression', async () => { expect(newState.watchExpressions).toHaveLength(1) expect(newState.watchExpressions[0]).toEqual({ expression: 'a + b', - value: null, isEditing: true, + value: null, }) }) diff --git a/packages/debug-worker/test/RenderCheckBox.test.ts b/packages/debug-worker/test/RenderCheckBox.test.ts index 08205676..a0b3cdba 100644 --- a/packages/debug-worker/test/RenderCheckBox.test.ts +++ b/packages/debug-worker/test/RenderCheckBox.test.ts @@ -8,45 +8,45 @@ import * as VirtualDomElements from '../src/parts/VirtualDomElements/VirtualDomE test('renderCheckBox', () => { const row = { - type: 1, - text: 'test', + description: '', expanded: true, + indent: 0, + index: 0, key: 'test-key', + name: 'test-name', + text: 'test', + type: 1, value: 'test-value', - indent: 0, valueType: 'string', - name: 'test-name', - description: '', - index: 0, } const result = renderCheckBox(row, -1, 0) expect(result).toHaveLength(4) expect(result[0]).toEqual({ - type: VirtualDomElements.Div, - className: expect.any(String), - role: AriaRoles.TreeItem, ariaLevel: 2, childCount: 2, + className: expect.any(String), 'data-index': 0, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }) expect(result[1]).toEqual({ - type: VirtualDomElements.Input, - inputType: InputType.CheckBox, - name: 'test-name', checked: true, childCount: 0, - onChange: DomEventListenerFunctions.HandleClickCheckBox, id: 'test-name', + inputType: InputType.CheckBox, + name: 'test-name', + onChange: DomEventListenerFunctions.HandleClickCheckBox, + type: VirtualDomElements.Input, }) expect(result[2]).toEqual({ - type: VirtualDomElements.Label, + childCount: 1, className: ClassNames.InputLabel, htmlFor: 'test-name', - childCount: 1, + type: VirtualDomElements.Label, }) expect(result[3]).toEqual({ - type: 12, - text: 'test', childCount: 0, + text: 'test', + type: 12, }) }) diff --git a/packages/debug-worker/test/RenderFocus.test.ts b/packages/debug-worker/test/RenderFocus.test.ts index 520239c0..c8a5656e 100644 --- a/packages/debug-worker/test/RenderFocus.test.ts +++ b/packages/debug-worker/test/RenderFocus.test.ts @@ -6,8 +6,8 @@ import { renderFocus } from '../src/parts/RenderFocus/RenderFocus.ts' test.skip('renderFocus - with focus', () => { const state: RunAndDebugState = { ...createDefaultState(), - uid: 1, focus: 1, + uid: 1, } const result = renderFocus(state, state) expect(result).toEqual(['Viewlet.focusElementByName', 1, '[data-focus="1"]']) @@ -16,8 +16,8 @@ test.skip('renderFocus - with focus', () => { test('renderFocus - without focus', () => { const state: RunAndDebugState = { ...createDefaultState(), - uid: 1, focus: 0, + uid: 1, } const result = renderFocus(state, state) expect(result).toEqual(['Viewlet.focusElementByName', 1, '']) diff --git a/packages/debug-worker/test/RenderInputField.test.ts b/packages/debug-worker/test/RenderInputField.test.ts index 9e25033c..0b482406 100644 --- a/packages/debug-worker/test/RenderInputField.test.ts +++ b/packages/debug-worker/test/RenderInputField.test.ts @@ -10,39 +10,39 @@ import * as VirtualDomElements from '../src/parts/VirtualDomElements/VirtualDomE test('renderInputField', () => { const row: DebugRow = { - type: DebugRowType.InputField, - text: 'test input', + description: '', expanded: false, + indent: 0, + index: 0, key: '', + name: 'test-input', + text: 'test input', + type: DebugRowType.InputField, value: '', - indent: 0, valueType: '', - name: 'test-input', - description: '', - index: 0, } const result = renderInputField(row, -1, 0) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: `${ClassNames.DebugRow} ${ClassNames.DebugRowInputField}`, - role: AriaRoles.TreeItem, ariaLevel: 2, childCount: 1, + className: `${ClassNames.DebugRow} ${ClassNames.DebugRowInputField}`, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Input, - inputType: InputType.Text, - spellcheck: false, autocapitalize: 'off', autocorrect: 'off', + childCount: 0, className: ClassNames.InputBox, + id: 'test-input', + inputType: InputType.Text, name: 'test-input', - value: 'test input', - childCount: 0, - onInput: DomEventListenerFunctions.HandleInputFieldChange, onBlur: DomEventListenerFunctions.HandleInputBlur, - id: 'test-input', + onInput: DomEventListenerFunctions.HandleInputFieldChange, + spellcheck: false, + type: VirtualDomElements.Input, + value: 'test input', }, ]) }) diff --git a/packages/debug-worker/test/RenderInputValue.test.ts b/packages/debug-worker/test/RenderInputValue.test.ts index 048eae5d..7a45c213 100644 --- a/packages/debug-worker/test/RenderInputValue.test.ts +++ b/packages/debug-worker/test/RenderInputValue.test.ts @@ -9,9 +9,9 @@ test('should return empty selector when no focus', () => { const oldState = createDefaultState() const newState: RunAndDebugState = { ...createDefaultState(), - uid: 1, editingValue: 'test-value', focus: 0, + uid: 1, } const result = renderInputValue(oldState, newState) @@ -23,9 +23,9 @@ test('should return selector when focus exists', () => { const oldState = createDefaultState() const newState: RunAndDebugState = { ...createDefaultState(), - uid: 1, editingValue: 'test-value', focus: FocusDebugWatchInput, + uid: 1, } const result = renderInputValue(oldState, newState) diff --git a/packages/debug-worker/test/RenderItems.test.ts b/packages/debug-worker/test/RenderItems.test.ts index 43f997dd..6bf3f8ca 100644 --- a/packages/debug-worker/test/RenderItems.test.ts +++ b/packages/debug-worker/test/RenderItems.test.ts @@ -22,14 +22,14 @@ test.skip('getRunAndDebugVisibleRows - unavailable debug state returns message r expect(rows).toHaveLength(1) expect(rows[0]).toEqual({ - type: DebugRowType.Message, - text: DebugStrings.noScriptRunning(), + description: '', expanded: false, + indent: 0, key: 'no-script-running', + name: '', + text: DebugStrings.noScriptRunning(), + type: DebugRowType.Message, value: '', - indent: 0, valueType: '', - name: '', - description: '', }) }) diff --git a/packages/debug-worker/test/RenderPauseOnExceptions.test.ts b/packages/debug-worker/test/RenderPauseOnExceptions.test.ts index aa9b41b2..4f4e57f6 100644 --- a/packages/debug-worker/test/RenderPauseOnExceptions.test.ts +++ b/packages/debug-worker/test/RenderPauseOnExceptions.test.ts @@ -48,8 +48,8 @@ test.skip('renderPauseOnExceptions - with different id', () => { const oldState: RunAndDebugState = createDefaultState(1) const newState: RunAndDebugState = { ...createDefaultState(1), - uid: 2, exceptionBreakPoints: ExceptionBreakPoints.All, + uid: 2, } const result = renderPauseOnExceptions(oldState, newState) diff --git a/packages/debug-worker/test/RenderSelection.test.ts b/packages/debug-worker/test/RenderSelection.test.ts index ace8f787..bcec3875 100644 --- a/packages/debug-worker/test/RenderSelection.test.ts +++ b/packages/debug-worker/test/RenderSelection.test.ts @@ -6,7 +6,7 @@ import { FocusDebugWatchInput } from '../src/parts/WhenExpression/WhenExpression test('renderSelection returns correct selection command', () => { const oldState = createDefaultState() - const newState = { ...oldState, editingselectionstart: 5, editingselectionend: 10 } + const newState = { ...oldState, editingselectionend: 10, editingselectionstart: 5 } const result = renderSelection(oldState, newState) expect(result).toEqual(['Viewlet.setSelectionByName', 0, '', 5, 10]) @@ -14,7 +14,7 @@ test('renderSelection returns correct selection command', () => { test('renderSelection works with zero values', () => { const oldState = createDefaultState() - const newState = { ...oldState, editingselectionstart: 0, editingselectionend: 0 } + const newState = { ...oldState, editingselectionend: 0, editingselectionstart: 0 } const result = renderSelection(oldState, newState) expect(result).toEqual(['Viewlet.setSelectionByName', 0, '', 0, 0]) @@ -22,7 +22,7 @@ test('renderSelection works with zero values', () => { test('renderSelection first element is Viewlet.setSelectionByName', () => { const oldState = createDefaultState() - const newState = { ...oldState, editingselectionstart: 1, editingselectionend: 2 } + const newState = { ...oldState, editingselectionend: 2, editingselectionstart: 1 } const result = renderSelection(oldState, newState) expect(result[0]).toBe('Viewlet.setSelectionByName') @@ -32,9 +32,9 @@ test('renderSelection uses correct selector when focus is on watch input', () => const oldState = createDefaultState() const newState = { ...oldState, - focus: FocusDebugWatchInput, - editingselectionstart: 1, editingselectionend: 2, + editingselectionstart: 1, + focus: FocusDebugWatchInput, } const result = renderSelection(oldState, newState) diff --git a/packages/debug-worker/test/RenderWatchExpression.test.ts b/packages/debug-worker/test/RenderWatchExpression.test.ts index 3fb2d952..e94cefc1 100644 --- a/packages/debug-worker/test/RenderWatchExpression.test.ts +++ b/packages/debug-worker/test/RenderWatchExpression.test.ts @@ -13,50 +13,50 @@ import * as VirtualDomHelpers from '../src/parts/VirtualDomHelpers/VirtualDomHel test('should render watch expression', () => { const row: DebugRow = { - type: DebugRowType.WatchExpression, - text: '', + description: '', expanded: false, - key: 'testKey', - value: 'testValue', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'testKey', + name: '', posInset: 1, + setSize: 1, + text: '', + type: DebugRowType.WatchExpression, + value: 'testValue', + valueType: '', } const result = renderWatchExpression(row, -1, 0) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: ClassNames.DebugRow, - role: AriaRoles.TreeItem, childCount: 4, + className: ClassNames.DebugRow, 'data-index': 0, onClick: DomEventListenerFunctions.HandleClickWatchExpression, onContextMenu: DomEventListenerFunctions.HandleWatchExpressionContextMenu, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Span, - className: ClassNames.DebugValueScopeName, childCount: 1, + className: ClassNames.DebugValueScopeName, + type: VirtualDomElements.Span, }, VirtualDomHelpers.text('testKey'), separator, { - type: VirtualDomElements.Span, - className: ClassNames.DebugValue, childCount: 1, + className: ClassNames.DebugValue, + type: VirtualDomElements.Span, }, VirtualDomHelpers.text('testValue'), { - type: VirtualDomElements.Button, - title: DebugStrings.deleteWatchExpression(), + childCount: 1, className: MergeClassNames.mergeClassNames(ClassNames.IconButton, ClassNames.DebugSectionAction, ClassNames.DeleteWatchExpression), 'data-index': 0, onClick: DomEventListenerFunctions.HandleClickWatchExpressionDelete, - childCount: 1, + title: DebugStrings.deleteWatchExpression(), + type: VirtualDomElements.Button, }, VirtualDomHelpers.text('×'), ]) diff --git a/packages/debug-worker/test/RenderWatchMessage.test.ts b/packages/debug-worker/test/RenderWatchMessage.test.ts index 3e7e97e3..07b4f074 100644 --- a/packages/debug-worker/test/RenderWatchMessage.test.ts +++ b/packages/debug-worker/test/RenderWatchMessage.test.ts @@ -7,28 +7,28 @@ import * as VirtualDomHelpers from '../src/parts/VirtualDomHelpers/VirtualDomHel test('renderWatchMessage', () => { const row: DebugRow = { - type: DebugRowType.WatchMessage, - text: 'test message', + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: 'test message', + type: DebugRowType.WatchMessage, + value: '', + valueType: '', } const result = renderWatchMessage(row, -1, 0) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: 'DebugRow WatchMessage', - childCount: 1, - 'data-index': 0, ariaPosInSet: 1, ariaSetSize: 1, + childCount: 1, + className: 'DebugRow WatchMessage', + 'data-index': 0, + type: VirtualDomElements.Div, }, VirtualDomHelpers.text('test message'), diff --git a/packages/debug-worker/test/RestoreState.test.ts b/packages/debug-worker/test/RestoreState.test.ts index 06a6a743..bcab2acd 100644 --- a/packages/debug-worker/test/RestoreState.test.ts +++ b/packages/debug-worker/test/RestoreState.test.ts @@ -4,32 +4,32 @@ import { FocusDebugWatchInput } from '../src/parts/WhenExpression/WhenExpression test('restoreState restores watch expressions, focus and editing value', () => { const savedState = { + breakPointsExpanded: false, + editingValue: 'a + b', + focus: FocusDebugWatchInput, + scopeExpanded: false, + watchExpanded: true, watchExpressions: [ { expression: 'a + b', - value: 3, isEditing: true, + value: 3, }, ], - watchExpanded: true, - scopeExpanded: false, - breakPointsExpanded: false, - focus: FocusDebugWatchInput, - editingValue: 'a + b', } const result = restoreState(savedState) expect(result).toEqual({ + breakPointsExpanded: false, + editingValue: 'a + b', + focus: 0, // TODO + scopeExpanded: false, + watchExpanded: true, watchExpressions: [ { expression: 'a + b', - value: 3, isEditing: true, + value: 3, }, ], - watchExpanded: true, - scopeExpanded: false, - breakPointsExpanded: false, - focus: 0, // TODO - editingValue: 'a + b', }) }) diff --git a/packages/debug-worker/test/RestoreWatchExpressions.test.ts b/packages/debug-worker/test/RestoreWatchExpressions.test.ts index a07d29d9..0fc734a0 100644 --- a/packages/debug-worker/test/RestoreWatchExpressions.test.ts +++ b/packages/debug-worker/test/RestoreWatchExpressions.test.ts @@ -18,19 +18,19 @@ test.skip('restoreWatchExpressions with array of expressions returns restored ex } const expected: readonly WatchExpression[] = [ { - value: '', expression: 'x + y', isEditing: false, + value: '', }, { - value: '', expression: 'foo.bar', isEditing: false, + value: '', }, { - value: '', expression: '42', isEditing: false, + value: '', }, ] const result = restoreWatchExpressions(input) diff --git a/packages/debug-worker/test/RunAndDebugRowRenderers.test.ts b/packages/debug-worker/test/RunAndDebugRowRenderers.test.ts index 63f76308..221a83f0 100644 --- a/packages/debug-worker/test/RunAndDebugRowRenderers.test.ts +++ b/packages/debug-worker/test/RunAndDebugRowRenderers.test.ts @@ -13,25 +13,25 @@ import * as VirtualDomHelpers from '../src/parts/VirtualDomHelpers/VirtualDomHel test('renderNoop', () => { const row: DebugRow = { - type: 0, - text: 'test', + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 0, + value: '', + valueType: '', } const result = RunAndDebugRowRenderers.renderNoop(row, -1, 0) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: ClassNames.DebugRow, childCount: 1, + className: ClassNames.DebugRow, + type: VirtualDomElements.Div, }, VirtualDomHelpers.text('unknown row type'), ]) @@ -39,25 +39,25 @@ test('renderNoop', () => { test('renderMessage', () => { const row: DebugRow = { - type: DebugRowType.Message, - text: 'test message', + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: 'test message', + type: DebugRowType.Message, + value: '', + valueType: '', } const result = RunAndDebugRowRenderers.renderMessage(row, -1, 0) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: ClassNames.DebugPausedMessage, childCount: 1, + className: ClassNames.DebugPausedMessage, + type: VirtualDomElements.Div, }, VirtualDomHelpers.text('test message'), ]) @@ -65,40 +65,40 @@ test('renderMessage', () => { test('renderCallStack', () => { const row: DebugRow = { - type: DebugRowType.CallStack, - text: 'test stack', + description: '', expanded: false, - key: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: '', + name: '', posInset: 1, + setSize: 1, + text: 'test stack', + type: DebugRowType.CallStack, + value: '', + valueType: '', } const result = renderCallStack(row, -1, 0) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: 'DebugRow DebugRowCallStack', - role: AriaRoles.TreeItem, ariaLevel: 2, childCount: 2, - onClick: DomEventListenerFunctions.HandleClickCallStackItem, + className: 'DebugRow DebugRowCallStack', 'data-index': 0, + onClick: DomEventListenerFunctions.HandleClickCallStackItem, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { + childCount: 1, className: 'CallStackLabel', type: 4, - childCount: 1, }, VirtualDomHelpers.text('test stack'), { + childCount: 1, className: 'CallStackDescription', type: 4, - childCount: 1, }, VirtualDomHelpers.text(''), ]) @@ -106,37 +106,37 @@ test('renderCallStack', () => { test('renderScope', () => { const row: DebugRow = { - type: DebugRowType.Scope, - key: 'testScope', + description: '', expanded: true, - text: '', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 5, - setSize: 1, + key: 'testScope', + name: '', posInset: 1, + setSize: 1, + text: '', + type: DebugRowType.Scope, + value: '', + valueType: '', } const result = renderScope(row, -1, 0) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: ClassNames.DebugRow, - role: AriaRoles.TreeItem, ariaExpanded: true, ariaLevel: 2, childCount: 2, - onPointerDown: 'handleClickScopeValue', + className: ClassNames.DebugRow, 'data-index': 5, 'data-name': 'testScope', + onPointerDown: 'handleClickScopeValue', + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, expect.any(Object), { - type: VirtualDomElements.Span, - className: 'DebugValue DebugValueScopeName', childCount: 1, + className: 'DebugValue DebugValueScopeName', + type: VirtualDomElements.Span, }, VirtualDomHelpers.text('testScope'), ]) @@ -144,44 +144,44 @@ test('renderScope', () => { test.skip('renderValue', () => { const row: DebugRow = { - type: DebugRowType.Value, - text: '', + description: '', expanded: false, - key: 'testKey', - value: 'testValue', indent: 10, - valueType: 'string', - name: '', - description: '', index: 3, - setSize: 1, + key: 'testKey', + name: '', posInset: 1, + setSize: 1, + text: '', + type: DebugRowType.Value, + value: 'testValue', + valueType: 'string', } const result = renderValue(row, -1, 0, false) expect(result).toEqual([ { - type: VirtualDomElements.Div, - className: ClassNames.DebugRow, - role: AriaRoles.TreeItem, ariaExpanded: false, ariaLevel: 3, - paddingLeft: 10, - onPointerDown: DomEventListenerFunctions.HandleClickScopeValue, childCount: 3, + className: ClassNames.DebugRow, 'data-index': 3, + onPointerDown: DomEventListenerFunctions.HandleClickScopeValue, + paddingLeft: 10, + role: AriaRoles.TreeItem, + type: VirtualDomElements.Div, }, { - type: VirtualDomElements.Span, - className: 'DebugValue DebugPropertyKey', childCount: 1, + className: 'DebugValue DebugPropertyKey', + type: VirtualDomElements.Span, }, VirtualDomHelpers.text('testKey'), expect.any(Object), { - type: VirtualDomElements.Span, - className: 'DebugValue DebugValueString', childCount: 1, - children: [{ type: 12, text: 'testValue', childCount: 0 }], + children: [{ childCount: 0, text: 'testValue', type: 12 }], + className: 'DebugValue DebugValueString', + type: VirtualDomElements.Span, }, ]) }) diff --git a/packages/debug-worker/test/SaveState.test.ts b/packages/debug-worker/test/SaveState.test.ts index 161b2e5a..445c8732 100644 --- a/packages/debug-worker/test/SaveState.test.ts +++ b/packages/debug-worker/test/SaveState.test.ts @@ -10,33 +10,33 @@ test('saveState with hot reload preserves all state including focus and editing' const id = 1 const state: RunAndDebugState = { ...createDefaultState(), + editingValue: 'a + b', + focus: FocusDebugWatchInput, + inputSource: 1, watchExpressions: [ { expression: 'a + b', - value: 3, isEditing: true, + value: 3, }, ], - focus: FocusDebugWatchInput, - editingValue: 'a + b', - inputSource: 1, } RunAndDebugStates.set(id, state, state) const result = saveState(id, SaveStateReasonHotReload) expect(result).toEqual({ + breakPointsExpanded: false, + editingValue: 'a + b', + focus: FocusDebugWatchInput, + inputSource: 1, + scopeExpanded: false, + watchExpanded: false, watchExpressions: [ { expression: 'a + b', - value: 3, isEditing: true, + value: 3, }, ], - breakPointsExpanded: false, - scopeExpanded: false, - watchExpanded: false, - focus: FocusDebugWatchInput, - editingValue: 'a + b', - inputSource: 1, }) }) @@ -44,33 +44,33 @@ test('saveState with window reload resets focus and editing state', () => { const id = 1 const state: RunAndDebugState = { ...createDefaultState(), + editingValue: 'a + b', + focus: FocusDebugWatchInput, + inputSource: 1, watchExpressions: [ { expression: 'a + b', - value: 3, isEditing: true, + value: 3, }, ], - focus: FocusDebugWatchInput, - editingValue: 'a + b', - inputSource: 1, } RunAndDebugStates.set(id, state, state) const result = saveState(id, SaveStateReasonWindowReload) expect(result).toEqual({ + breakPointsExpanded: false, + editingValue: '', + focus: 0, + inputSource: 0, + scopeExpanded: false, + watchExpanded: false, watchExpressions: [ { expression: 'a + b', - value: 3, isEditing: false, + value: 3, }, ], - breakPointsExpanded: false, - scopeExpanded: false, - watchExpanded: false, - focus: 0, - editingValue: '', - inputSource: 0, }) }) @@ -78,32 +78,32 @@ test('saveState preserves expanded states in both cases', () => { const id = 1 const state: RunAndDebugState = { ...createDefaultState(), - watchExpanded: true, - scopeExpanded: true, breakPointsExpanded: true, + scopeExpanded: true, + watchExpanded: true, } RunAndDebugStates.set(id, state, state) const hotReloadResult = saveState(id, SaveStateReasonHotReload) expect(hotReloadResult).toEqual({ - watchExpressions: [], breakPointsExpanded: true, - scopeExpanded: true, - watchExpanded: true, - focus: 0, editingValue: '', + focus: 0, inputSource: 0, + scopeExpanded: true, + watchExpanded: true, + watchExpressions: [], }) const windowReloadResult = saveState(id, SaveStateReasonWindowReload) expect(windowReloadResult).toEqual({ - watchExpressions: [], breakPointsExpanded: true, - scopeExpanded: true, - watchExpanded: true, - focus: 0, editingValue: '', + focus: 0, inputSource: 0, + scopeExpanded: true, + watchExpanded: true, + watchExpressions: [], }) }) @@ -114,13 +114,13 @@ test('saveState handles multiple watch expressions correctly', () => { watchExpressions: [ { expression: 'a + b', - value: 3, isEditing: true, + value: 3, }, { expression: 'c * d', - value: 12, isEditing: false, + value: 12, }, ], } @@ -130,13 +130,13 @@ test('saveState handles multiple watch expressions correctly', () => { expect(hotReloadResult.watchExpressions).toEqual([ { expression: 'a + b', - value: 3, isEditing: true, + value: 3, }, { expression: 'c * d', - value: 12, isEditing: false, + value: 12, }, ]) @@ -144,13 +144,13 @@ test('saveState handles multiple watch expressions correctly', () => { expect(windowReloadResult.watchExpressions).toEqual([ { expression: 'a + b', - value: 3, isEditing: false, + value: 3, }, { expression: 'c * d', - value: 12, isEditing: false, + value: 12, }, ]) }) diff --git a/packages/debug-worker/test/SelectFirstIndex.test.ts b/packages/debug-worker/test/SelectFirstIndex.test.ts index db2eff61..7aaebbd9 100644 --- a/packages/debug-worker/test/SelectFirstIndex.test.ts +++ b/packages/debug-worker/test/SelectFirstIndex.test.ts @@ -6,18 +6,18 @@ import { selectFirstIndex } from '../src/parts/SelectFirstIndex/SelectFirstIndex test('selectFirstIndex sets selectedIndex to 0', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 5, visibleRows: [mockRow, mockRow, mockRow, mockRow, mockRow, mockRow] } const result = selectFirstIndex(state) @@ -27,18 +27,18 @@ test('selectFirstIndex sets selectedIndex to 0', () => { test('selectFirstIndex works from -1', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: -1, visibleRows: [mockRow, mockRow] } const result = selectFirstIndex(state) @@ -47,18 +47,18 @@ test('selectFirstIndex works from -1', () => { test('selectFirstIndex works from middle index', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 2, visibleRows: [mockRow, mockRow, mockRow, mockRow, mockRow] } const result = selectFirstIndex(state) @@ -67,18 +67,18 @@ test('selectFirstIndex works from middle index', () => { test('selectFirstIndex handles single row', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 0, visibleRows: [mockRow] } const result = selectFirstIndex(state) @@ -93,18 +93,18 @@ test('selectFirstIndex handles empty visibleRows array', () => { test('selectFirstIndex returns new state object', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), visibleRows: [mockRow, mockRow] } const result = selectFirstIndex(state) diff --git a/packages/debug-worker/test/SelectIndex.test.ts b/packages/debug-worker/test/SelectIndex.test.ts index b736e00f..d542eeb0 100644 --- a/packages/debug-worker/test/SelectIndex.test.ts +++ b/packages/debug-worker/test/SelectIndex.test.ts @@ -6,18 +6,18 @@ import { selectIndex } from '../src/parts/SelectIndex/SelectIndex.ts' test('selectIndex updates selectedIndex', () => { const mockRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), visibleRows: [mockRow, mockRow, mockRow, mockRow, mockRow, mockRow] } const result = selectIndex(state, 5) @@ -33,18 +33,18 @@ test('selectIndex returns new state object', () => { test('selectIndex updates selectedIndex within bounds', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), visibleRows: [mockRow, mockRow, mockRow] } // 3 rows const result = selectIndex(state, 1) @@ -54,18 +54,18 @@ test('selectIndex updates selectedIndex within bounds', () => { test('selectIndex clamps to max index', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), visibleRows: [mockRow, mockRow] } // 2 rows, max index 1 const result = selectIndex(state, 5) @@ -74,18 +74,18 @@ test('selectIndex clamps to max index', () => { test('selectIndex clamps to -1 for negative values', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), visibleRows: [mockRow, mockRow] } const result = selectIndex(state, -5) diff --git a/packages/debug-worker/test/SelectLastIndex.test.ts b/packages/debug-worker/test/SelectLastIndex.test.ts index d941db5a..90a0d8ff 100644 --- a/packages/debug-worker/test/SelectLastIndex.test.ts +++ b/packages/debug-worker/test/SelectLastIndex.test.ts @@ -6,18 +6,18 @@ import { selectLastIndex } from '../src/parts/SelectLastIndex/SelectLastIndex.ts test('selectLastIndex sets selectedIndex to last index', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 0, visibleRows: [mockRow, mockRow, mockRow, mockRow, mockRow, mockRow] } const result = selectLastIndex(state) @@ -27,18 +27,18 @@ test('selectLastIndex sets selectedIndex to last index', () => { test('selectLastIndex works from -1', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: -1, visibleRows: [mockRow, mockRow] } const result = selectLastIndex(state) @@ -47,18 +47,18 @@ test('selectLastIndex works from -1', () => { test('selectLastIndex works from middle index', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 2, visibleRows: [mockRow, mockRow, mockRow, mockRow, mockRow] } const result = selectLastIndex(state) @@ -67,18 +67,18 @@ test('selectLastIndex works from middle index', () => { test('selectLastIndex handles single row', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 0, visibleRows: [mockRow] } const result = selectLastIndex(state) @@ -93,18 +93,18 @@ test('selectLastIndex handles empty visibleRows array', () => { test('selectLastIndex returns new state object', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, - key: 'test', - value: '', indent: 0, - valueType: '', - name: '', - description: '', index: 0, - setSize: 1, + key: 'test', + name: '', posInset: 1, + setSize: 1, + text: 'test', + type: 1, + value: '', + valueType: '', } const state: RunAndDebugState = { ...createDefaultState(), visibleRows: [mockRow, mockRow] } const result = selectLastIndex(state) diff --git a/packages/debug-worker/test/SelectNextRow.test.ts b/packages/debug-worker/test/SelectNextRow.test.ts index 87aa65e8..9be266d2 100644 --- a/packages/debug-worker/test/SelectNextRow.test.ts +++ b/packages/debug-worker/test/SelectNextRow.test.ts @@ -6,16 +6,16 @@ import { selectNextRow } from '../src/parts/SelectNextRow/SelectNextRow.ts' test('selectNextRow increments selectedIndex', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 5, visibleRows: [mockRow, mockRow, mockRow, mockRow, mockRow, mockRow, mockRow] } const result = selectNextRow(state) @@ -25,16 +25,16 @@ test('selectNextRow increments selectedIndex', () => { test('selectNextRow works from -1', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: -1, visibleRows: [mockRow, mockRow] } const result = selectNextRow(state) @@ -43,16 +43,16 @@ test('selectNextRow works from -1', () => { test('selectNextRow does not exceed max index', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 1, visibleRows: [mockRow, mockRow] } // max index 1 const result = selectNextRow(state) @@ -67,16 +67,16 @@ test('selectNextRow handles empty visibleRows array', () => { test('selectNextRow handles negative selectedIndex input', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: -5, visibleRows: [mockRow, mockRow] } const result = selectNextRow(state) @@ -85,16 +85,16 @@ test('selectNextRow handles negative selectedIndex input', () => { test('selectNextRow handles selectedIndex beyond array bounds', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 10, visibleRows: [mockRow, mockRow] } const result = selectNextRow(state) @@ -103,16 +103,16 @@ test('selectNextRow handles selectedIndex beyond array bounds', () => { test('selectNextRow stays at max when already at max', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 1, visibleRows: [mockRow, mockRow] } const result = selectNextRow(state) diff --git a/packages/debug-worker/test/SelectPreviousRow.test.ts b/packages/debug-worker/test/SelectPreviousRow.test.ts index be54a70c..f2a8d410 100644 --- a/packages/debug-worker/test/SelectPreviousRow.test.ts +++ b/packages/debug-worker/test/SelectPreviousRow.test.ts @@ -6,16 +6,16 @@ import { selectPreviousRow } from '../src/parts/SelectPreviousRow/SelectPrevious test('selectPreviousRow decrements selectedIndex', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 5, visibleRows: [mockRow, mockRow, mockRow, mockRow, mockRow, mockRow] } const result = selectPreviousRow(state) @@ -25,16 +25,16 @@ test('selectPreviousRow decrements selectedIndex', () => { test('selectPreviousRow does not go below -1', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 0, visibleRows: [mockRow, mockRow] } const result = selectPreviousRow(state) @@ -43,16 +43,16 @@ test('selectPreviousRow does not go below -1', () => { test('selectPreviousRow stays at -1 when already at -1', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: -1, visibleRows: [mockRow, mockRow] } const result = selectPreviousRow(state) @@ -67,16 +67,16 @@ test('selectPreviousRow handles empty visibleRows array', () => { test('selectPreviousRow handles negative selectedIndex input', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: -5, visibleRows: [mockRow, mockRow] } const result = selectPreviousRow(state) @@ -85,16 +85,16 @@ test('selectPreviousRow handles negative selectedIndex input', () => { test('selectPreviousRow handles selectedIndex beyond array bounds', () => { const mockRow: DebugRow = { - type: 1, - text: 'test', + description: '', expanded: false, + indent: 0, + index: 0, key: 'test', + name: '', + text: 'test', + type: 1, value: '', - indent: 0, valueType: '', - name: '', - description: '', - index: 0, } const state: RunAndDebugState = { ...createDefaultState(), selectedIndex: 10, visibleRows: [mockRow, mockRow] } const result = selectPreviousRow(state) diff --git a/packages/e2e/src/sample.debug-provider-breakpoints-accessibility.ts b/packages/e2e/src/sample.debug-provider-breakpoints-accessibility.ts index a34e368d..a0c07520 100644 --- a/packages/e2e/src/sample.debug-provider-breakpoints-accessibility.ts +++ b/packages/e2e/src/sample.debug-provider-breakpoints-accessibility.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-paused-on-exception' export const skip = 1 -export const test: Test = async ({ FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange const tmpDir = await FileSystem.getTmpDir() await Workspace.setPath(tmpDir) diff --git a/packages/e2e/src/sample.debug-provider-breakpoints-disable-with-space.ts b/packages/e2e/src/sample.debug-provider-breakpoints-disable-with-space.ts index 03e5d666..b8d3cfb6 100644 --- a/packages/e2e/src/sample.debug-provider-breakpoints-disable-with-space.ts +++ b/packages/e2e/src/sample.debug-provider-breakpoints-disable-with-space.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-disable-breakpoint-with-space' export const skip = 1 -export const test: Test = async ({ Command, FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ Command, expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-breakpoints-enable-with-space.ts b/packages/e2e/src/sample.debug-provider-breakpoints-enable-with-space.ts index 6bc735c0..3fffd6c3 100644 --- a/packages/e2e/src/sample.debug-provider-breakpoints-enable-with-space.ts +++ b/packages/e2e/src/sample.debug-provider-breakpoints-enable-with-space.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-enable-breakpoint-with-space' export const skip = 1 -export const test: Test = async ({ Command, FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ Command, expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-callstack-accessibility.ts b/packages/e2e/src/sample.debug-provider-callstack-accessibility.ts index da850307..c71d5a71 100644 --- a/packages/e2e/src/sample.debug-provider-callstack-accessibility.ts +++ b/packages/e2e/src/sample.debug-provider-callstack-accessibility.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-scope' export const skip = 1 -export const test: Test = async ({ FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-error-not-found.ts b/packages/e2e/src/sample.debug-provider-error-not-found.ts index 68300ebe..3eb9614c 100644 --- a/packages/e2e/src/sample.debug-provider-error-not-found.ts +++ b/packages/e2e/src/sample.debug-provider-error-not-found.ts @@ -4,7 +4,7 @@ export const skip = true export const name = 'sample.debug-provider-error-not-found' -export const test: Test = async ({ FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange const tmpDir = await FileSystem.getTmpDir() await Workspace.setPath(tmpDir) diff --git a/packages/e2e/src/sample.debug-provider-paused-on-exception.ts b/packages/e2e/src/sample.debug-provider-paused-on-exception.ts index 6c20c505..bcf2e441 100644 --- a/packages/e2e/src/sample.debug-provider-paused-on-exception.ts +++ b/packages/e2e/src/sample.debug-provider-paused-on-exception.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-paused-on-exception' export const skip = 1 -export const test: Test = async ({ FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange const tmpDir = await FileSystem.getTmpDir() await Workspace.setPath(tmpDir) diff --git a/packages/e2e/src/sample.debug-provider-scope-accessibility.ts b/packages/e2e/src/sample.debug-provider-scope-accessibility.ts index 298bd253..5bcd76f7 100644 --- a/packages/e2e/src/sample.debug-provider-scope-accessibility.ts +++ b/packages/e2e/src/sample.debug-provider-scope-accessibility.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-scope' export const skip = 1 -export const test: Test = async ({ FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-scope.ts b/packages/e2e/src/sample.debug-provider-scope.ts index 515a4697..cc3d9a0f 100644 --- a/packages/e2e/src/sample.debug-provider-scope.ts +++ b/packages/e2e/src/sample.debug-provider-scope.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-scope' export const skip = 1 -export const test: Test = async ({ FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-watch-accessiblity.ts b/packages/e2e/src/sample.debug-provider-watch-accessiblity.ts index cb040b52..2ce3be26 100644 --- a/packages/e2e/src/sample.debug-provider-watch-accessiblity.ts +++ b/packages/e2e/src/sample.debug-provider-watch-accessiblity.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-add-watch-expression' export const skip = 1 -export const test: Test = async ({ Command, FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ Command, expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-watch-expression-add.ts b/packages/e2e/src/sample.debug-provider-watch-expression-add.ts index 8b266cd2..d233e509 100644 --- a/packages/e2e/src/sample.debug-provider-watch-expression-add.ts +++ b/packages/e2e/src/sample.debug-provider-watch-expression-add.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-add-watch-expression' export const skip = 1 -export const test: Test = async ({ Command, FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ Command, expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-watch-expression-edit.ts b/packages/e2e/src/sample.debug-provider-watch-expression-edit.ts index 52cc23c7..65c2a05f 100644 --- a/packages/e2e/src/sample.debug-provider-watch-expression-edit.ts +++ b/packages/e2e/src/sample.debug-provider-watch-expression-edit.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-edit-watch-expression' export const skip = 1 -export const test: Test = async ({ Command, FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ Command, expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir() diff --git a/packages/e2e/src/sample.debug-provider-watch-expression-evaluate.ts b/packages/e2e/src/sample.debug-provider-watch-expression-evaluate.ts index 9c535578..e9592d43 100644 --- a/packages/e2e/src/sample.debug-provider-watch-expression-evaluate.ts +++ b/packages/e2e/src/sample.debug-provider-watch-expression-evaluate.ts @@ -4,7 +4,7 @@ export const name = 'sample.debug-provider-evaluate-watch-expression' export const skip = 1 -export const test: Test = async ({ Command, FileSystem, Workspace, Extension, SideBar, Locator, expect }) => { +export const test: Test = async ({ Command, expect, Extension, FileSystem, Locator, SideBar, Workspace }) => { // arrange await SideBar.open('Explorer') const tmpDir = await FileSystem.getTmpDir()