From 50085785fe7e08557ac0d1879884296459c1dc0c Mon Sep 17 00:00:00 2001 From: Arthur Deierlein Date: Tue, 18 Feb 2025 13:45:26 +0100 Subject: [PATCH 1/3] chore(frontend): update linting update to eslint v9 update most eslint-* deps update stylelint etc. --- frontend/.eslintignore | 27 - frontend/.eslintrc.js | 8 - frontend/.stylelintrc.js | 2 +- frontend/eslint.config.mjs | 16 + frontend/package.json | 28 +- frontend/pnpm-lock.yaml | 1173 +++++++++++++++++++++-------------- frontend/tests/.eslintrc.js | 22 - 7 files changed, 749 insertions(+), 527 deletions(-) delete mode 100644 frontend/.eslintignore delete mode 100644 frontend/.eslintrc.js create mode 100644 frontend/eslint.config.mjs delete mode 100644 frontend/tests/.eslintrc.js diff --git a/frontend/.eslintignore b/frontend/.eslintignore deleted file mode 100644 index 169401613..000000000 --- a/frontend/.eslintignore +++ /dev/null @@ -1,27 +0,0 @@ -# unconventional js -/blueprints/*/files/ -/vendor/ - -# compiled output -/dist/ -/tmp/ - -# dependencies -/bower_components/ -/node_modules/ - -# misc -/coverage/ -!.* -.*/ -.eslintcache - -# ember-try -/.node_modules.ember-try/ -/bower.json.ember-try -/npm-shrinkwrap.json.ember-try -/package.json.ember-try -/package-lock.json.ember-try - -# template lint ci config -.template-lintrc-ci.js diff --git a/frontend/.eslintrc.js b/frontend/.eslintrc.js deleted file mode 100644 index 8a37db740..000000000 --- a/frontend/.eslintrc.js +++ /dev/null @@ -1,8 +0,0 @@ -"use-strict"; - -module.exports = { - extends: ["@adfinis/eslint-config/ember-app"], - rules: { - "ember/no-observers": "warn", - }, -}; diff --git a/frontend/.stylelintrc.js b/frontend/.stylelintrc.js index 6c1f7cadb..34ed23b37 100644 --- a/frontend/.stylelintrc.js +++ b/frontend/.stylelintrc.js @@ -8,7 +8,7 @@ module.exports = { "at-rule-empty-line-before": ["never", { ignoreAtRules: ["import"] }], // we use empty lines to group/order imports (su) "selector-class-pattern": null, // we can ignore this because most css is styling 3rd party components where we don't control the class names "import-notation": null, // doesn't really work with postcss-import - "at-rule-no-unknown": [ + "at-rule-no-deprecated": [ true, { ignoreAtRules: ["apply"], // ignore tailwind decorators diff --git a/frontend/eslint.config.mjs b/frontend/eslint.config.mjs new file mode 100644 index 000000000..683b8e20e --- /dev/null +++ b/frontend/eslint.config.mjs @@ -0,0 +1,16 @@ +import adfinisEmberAppConfig from "@adfinis/eslint-config/ember-app"; +import ember from "eslint-plugin-ember"; + +export default [ + ...adfinisEmberAppConfig, + { + plugins: { ember }, + settings: { + "import/internal-regex": "^timed/", + }, + rules: { + "ember/no-runloop": "warn", + "ember/no-observers": "warn", + }, + }, +]; diff --git a/frontend/package.json b/frontend/package.json index 8610ac881..e360f3287 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -17,14 +17,14 @@ "lint:fix": "concurrently \"npm:lint:*:fix\" --names \"fix:\"", "lint:hbs": "ember-template-lint .", "lint:hbs:fix": "ember-template-lint . --fix", - "lint:js": "eslint --config .eslintrc.js .", - "lint:js:fix": "eslint --config .eslintrc.js . --fix", + "lint:js": "eslint .", + "lint:js:fix": "eslint . --fix", "start": "ember server --proxy https://timed.localhost --secure-proxy=false", "test": "concurrently \"npm:lint\" \"npm:test:*\" --names \"lint,test:\"", "test:ember": "ember test" }, "devDependencies": { - "@adfinis/eslint-config": "^2.1.1", + "@adfinis/eslint-config": "3.0.2", "@apollo/client": "3.8.6", "@babel/core": "7.22.9", "@babel/eslint-parser": "7.21.3", @@ -102,13 +102,13 @@ "ember-tether": "3.1.0", "ember-truth-helpers": "3.1.1", "ember-validated-form": "7.0.1", - "eslint": "8.46.0", - "eslint-config-prettier": "8.8.0", - "eslint-plugin-ember": "11.12.0", - "eslint-plugin-import": "2.28.1", - "eslint-plugin-n": "15.7.0", - "eslint-plugin-prettier": "5.2.1", - "eslint-plugin-qunit": "7.3.4", + "eslint": "9.20.1", + "eslint-config-prettier": "10.0.1", + "eslint-plugin-ember": "12.5.0", + "eslint-plugin-import": "2.31.0", + "eslint-plugin-n": "17.15.1", + "eslint-plugin-prettier": "5.2.3", + "eslint-plugin-qunit": "8.1.2", "faker": "4.1.0", "fast-redact": "3.3.0", "graphql": "16.8.1", @@ -125,9 +125,9 @@ "reactiveweb": "^1.4.0", "shepherd.js": "^11.2.0", "simplebar": "^6.2.5", - "stylelint": "^16.4.0", - "stylelint-config-standard": "^32.0.0", - "stylelint-prettier": "^5.0.0", + "stylelint": "16.14.1", + "stylelint-config-standard": "37.0.0", + "stylelint-prettier": "5.0.3", "tailwindcss": "^3.0.0", "tracked-built-ins": "3.1.1", "tracked-toolbox": "2.0.0", @@ -152,4 +152,4 @@ } }, "packageManager": "pnpm@9.15.4+sha512.b2dc20e2fc72b3e18848459b37359a32064663e5627a51e4c74b2c29dd8e8e0491483c3abb40789cfd578bf362fb6ba8261b05f0387d76792ed6e23ea3b1b6a0" -} +} \ No newline at end of file diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index 10e481d4b..e325be141 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: devDependencies: '@adfinis/eslint-config': - specifier: ^2.1.1 - version: 2.1.1(@babel/core@7.22.9)(@babel/eslint-parser@7.21.3(@babel/core@7.22.9)(eslint@8.46.0))(@babel/plugin-proposal-decorators@7.24.7(@babel/core@7.22.9))(eslint-config-prettier@8.8.0(eslint@8.46.0))(eslint-plugin-ember@11.12.0(eslint@8.46.0))(eslint-plugin-import@2.28.1(eslint@8.46.0))(eslint-plugin-n@15.7.0(eslint@8.46.0))(eslint-plugin-prettier@5.2.1(@types/eslint@8.56.10)(eslint-config-prettier@8.8.0(eslint@8.46.0))(eslint@8.46.0)(prettier@3.0.3))(eslint-plugin-qunit@7.3.4(eslint@8.46.0))(eslint@8.46.0)(prettier@3.0.3) + specifier: 3.0.2 + version: 3.0.2(@babel/core@7.22.9)(@babel/eslint-parser@7.21.3(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)))(@babel/plugin-proposal-decorators@7.24.7(@babel/core@7.22.9))(eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-ember@12.5.0(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-import@2.31.0(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-n@17.15.1(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-prettier@5.2.3(@types/eslint@8.56.10)(eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)))(eslint@9.20.1(jiti@1.21.6))(prettier@3.0.3))(eslint-plugin-qunit@8.1.2(eslint@9.20.1(jiti@1.21.6)))(eslint@9.20.1(jiti@1.21.6))(prettier@3.0.3) '@apollo/client': specifier: 3.8.6 version: 3.8.6(graphql@16.8.1) @@ -19,7 +19,7 @@ importers: version: 7.22.9 '@babel/eslint-parser': specifier: 7.21.3 - version: 7.21.3(@babel/core@7.22.9)(eslint@8.46.0) + version: 7.21.3(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)) '@babel/plugin-proposal-decorators': specifier: ^7.21.0 version: 7.24.7(@babel/core@7.22.9) @@ -243,26 +243,26 @@ importers: specifier: 7.0.1 version: 7.0.1(@glint/template@1.4.0)(ember-data@4.12.8(@babel/core@7.22.9)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(@glint/template@1.4.0)(ember-source@5.4.1(@babel/core@7.22.9)(@glimmer/component@1.1.2(@babel/core@7.22.9))(@glint/template@1.4.0)(rsvp@4.8.5)(webpack@5.92.1))(webpack@5.92.1))(ember-source@5.4.1(@babel/core@7.22.9)(@glimmer/component@1.1.2(@babel/core@7.22.9))(@glint/template@1.4.0)(rsvp@4.8.5)(webpack@5.92.1))(webpack@5.92.1) eslint: - specifier: 8.46.0 - version: 8.46.0 + specifier: 9.20.1 + version: 9.20.1(jiti@1.21.6) eslint-config-prettier: - specifier: 8.8.0 - version: 8.8.0(eslint@8.46.0) + specifier: 10.0.1 + version: 10.0.1(eslint@9.20.1(jiti@1.21.6)) eslint-plugin-ember: - specifier: 11.12.0 - version: 11.12.0(eslint@8.46.0) + specifier: 12.5.0 + version: 12.5.0(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)) eslint-plugin-import: - specifier: 2.28.1 - version: 2.28.1(eslint@8.46.0) + specifier: 2.31.0 + version: 2.31.0(eslint@9.20.1(jiti@1.21.6)) eslint-plugin-n: - specifier: 15.7.0 - version: 15.7.0(eslint@8.46.0) + specifier: 17.15.1 + version: 17.15.1(eslint@9.20.1(jiti@1.21.6)) eslint-plugin-prettier: - specifier: 5.2.1 - version: 5.2.1(@types/eslint@8.56.10)(eslint-config-prettier@8.8.0(eslint@8.46.0))(eslint@8.46.0)(prettier@3.0.3) + specifier: 5.2.3 + version: 5.2.3(@types/eslint@8.56.10)(eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)))(eslint@9.20.1(jiti@1.21.6))(prettier@3.0.3) eslint-plugin-qunit: - specifier: 7.3.4 - version: 7.3.4(eslint@8.46.0) + specifier: 8.1.2 + version: 8.1.2(eslint@9.20.1(jiti@1.21.6)) faker: specifier: 4.1.0 version: 4.1.0 @@ -312,14 +312,14 @@ importers: specifier: ^6.2.5 version: 6.2.7 stylelint: - specifier: ^16.4.0 - version: 16.6.1(typescript@5.5.2) + specifier: 16.14.1 + version: 16.14.1(typescript@5.5.2) stylelint-config-standard: - specifier: ^32.0.0 - version: 32.0.0(stylelint@16.6.1(typescript@5.5.2)) + specifier: 37.0.0 + version: 37.0.0(stylelint@16.14.1(typescript@5.5.2)) stylelint-prettier: - specifier: ^5.0.0 - version: 5.0.2(prettier@3.0.3)(stylelint@16.6.1(typescript@5.5.2)) + specifier: 5.0.3 + version: 5.0.3(prettier@3.0.3)(stylelint@16.14.1(typescript@5.5.2)) tailwindcss: specifier: ^3.0.0 version: 3.4.13 @@ -335,14 +335,14 @@ importers: packages: - '@adfinis/eslint-config@2.1.1': - resolution: {integrity: sha512-MXbEJjlCYg8x/dcKkOySMCd7FTpamlvvoF9F9YpqLPx9HCHB2/pDFe/bDbYZ/WbnR2XArilJScHBZ87gmiIx7w==} + '@adfinis/eslint-config@3.0.2': + resolution: {integrity: sha512-flqmuDhB4UW1SRo4FGjfTWkH81omsvKvKNBL1mhc9fzPBfLDamjvuEMi/AvCFaPq7CxHgJklxgWmShYQkb6ATQ==} peerDependencies: '@babel-plugin-proposal-decorators': '*' '@babel/core': '>= 7' '@babel/eslint-parser': '>= 7' '@babel/plugin-proposal-decorators': '>= 7' - eslint: '>= 8' + eslint: '>= 9' eslint-config-prettier: '>= 9' eslint-plugin-ember: '>= 12' eslint-plugin-import: '>= 2' @@ -447,6 +447,13 @@ packages: '@babel/core': '>=7.11.0' eslint: ^7.5.0 || ^8.0.0 + '@babel/eslint-parser@7.26.8': + resolution: {integrity: sha512-3tBctaHRW6xSub26z7n8uyOTwwUsCdvIug/oxBH9n6yCO5hMj2vwDJAo7RbBMKrM7P+W2j61zLKviJQFGOYKMg==} + engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} + peerDependencies: + '@babel/core': ^7.11.0 + eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + '@babel/generator@7.24.7': resolution: {integrity: sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==} engines: {node: '>=6.9.0'} @@ -1178,28 +1185,28 @@ packages: engines: {node: '>=0.1.95'} hasBin: true - '@csstools/css-parser-algorithms@2.7.0': - resolution: {integrity: sha512-qvBMcOU/uWFCH/VO0MYe0AMs0BGMWAt6FTryMbFIKYtZtVnqTZtT8ktv5o718llkaGZWomJezJZjq3vJDHeJNQ==} - engines: {node: ^14 || ^16 || >=18} + '@csstools/css-parser-algorithms@3.0.4': + resolution: {integrity: sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==} + engines: {node: '>=18'} peerDependencies: - '@csstools/css-tokenizer': ^2.3.2 + '@csstools/css-tokenizer': ^3.0.3 - '@csstools/css-tokenizer@2.3.2': - resolution: {integrity: sha512-0xYOf4pQpAaE6Sm2Q0x3p25oRukzWQ/O8hWVvhIt9Iv98/uu053u2CGm/g3kJ+P0vOYTAYzoU8Evq2pg9ZPXtw==} - engines: {node: ^14 || ^16 || >=18} + '@csstools/css-tokenizer@3.0.3': + resolution: {integrity: sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==} + engines: {node: '>=18'} - '@csstools/media-query-list-parser@2.1.12': - resolution: {integrity: sha512-t1/CdyVJzOQUiGUcIBXRzTAkWTFPxiPnoKwowKW2z9Uj78c2bBWI/X94BeVfUwVq1xtCjD7dnO8kS6WONgp8Jw==} - engines: {node: ^14 || ^16 || >=18} + '@csstools/media-query-list-parser@4.0.2': + resolution: {integrity: sha512-EUos465uvVvMJehckATTlNqGj4UJWkTmdWuDMjqvSUkjGpmOyFZBVwb4knxCm/k2GMTXY+c/5RkdndzFYWeX5A==} + engines: {node: '>=18'} peerDependencies: - '@csstools/css-parser-algorithms': ^2.7.0 - '@csstools/css-tokenizer': ^2.3.2 + '@csstools/css-parser-algorithms': ^3.0.4 + '@csstools/css-tokenizer': ^3.0.3 - '@csstools/selector-specificity@3.1.1': - resolution: {integrity: sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==} - engines: {node: ^14 || ^16 || >=18} + '@csstools/selector-specificity@5.0.0': + resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==} + engines: {node: '>=18'} peerDependencies: - postcss-selector-parser: ^6.0.13 + postcss-selector-parser: ^7.0.0 '@dual-bundle/import-meta-resolve@4.1.0': resolution: {integrity: sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==} @@ -1414,17 +1421,47 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + '@eslint-community/eslint-utils@4.4.1': + resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + '@eslint-community/regexpp@4.11.0': resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/eslintrc@2.1.4': - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@eslint-community/regexpp@4.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/js@8.57.0': - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@eslint/config-array@0.19.2': + resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.10.0': + resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.11.0': + resolution: {integrity: sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.2.0': + resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.20.0': + resolution: {integrity: sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.6': + resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.2.5': + resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@floating-ui/core@1.6.4': resolution: {integrity: sha512-a4IowK4QkXl4SCWTGUR0INAfEOX3wtsYw3rKK5InQEHMGObkR8Xk44qYQD9P4r6HHw0iIfK6GUKECmY8sTkqRA==} @@ -1486,6 +1523,9 @@ packages: '@glimmer/interfaces@0.84.3': resolution: {integrity: sha512-dk32ykoNojt0mvEaIW6Vli5MGTbQo58uy3Epj7ahCgTHmWOKuw/0G83f2UmFprRwFx689YTXG38I/vbpltEjzg==} + '@glimmer/interfaces@0.92.3': + resolution: {integrity: sha512-QwQeA01N+0h+TAi/J7iUnZtRuJy+093hNyagxDQBA6b1wCBw+q+al9+O6gmbWlkWE7EifzmNE1nnrgcecJBlJQ==} + '@glimmer/low-level@0.78.2': resolution: {integrity: sha512-0S6TWOOd0fzLLysw1pWZN0TgasaHmYs1Sjz9Til1mTByIXU1S+1rhdyr2veSQPO/aRjPuEQyKXZQHvx23Zax6w==} @@ -1516,6 +1556,9 @@ packages: '@glimmer/syntax@0.84.3': resolution: {integrity: sha512-ioVbTic6ZisLxqTgRBL2PCjYZTFIwobifCustrozRU2xGDiYvVIL0vt25h2c1ioDsX59UgVlDkIK4YTAQQSd2A==} + '@glimmer/syntax@0.92.3': + resolution: {integrity: sha512-7wPKQmULyXCYf0KvbPmfrs/skPISH2QGR9atCnmDWnHyLv5SSZVLm1P0Ctrpta6+Ci3uGQb7hGk0IjsLEavcYQ==} + '@glimmer/tracking@1.1.2': resolution: {integrity: sha512-cyV32zsHh+CnftuRX84ALZpd2rpbDrhLhJnTXn9W//QpqdRZ5rdMsxSY9fOsj0CKEc706tmEU299oNnDc0d7tA==} @@ -1528,6 +1571,9 @@ packages: '@glimmer/util@0.84.3': resolution: {integrity: sha512-qFkh6s16ZSRuu2rfz3T4Wp0fylFj3HBsONGXQcrAdZjdUaIS6v3pNj6mecJ71qRgcym9Hbaq/7/fefIwECUiKw==} + '@glimmer/util@0.92.3': + resolution: {integrity: sha512-K1oH93gGU36slycxJ9CcFpUTsdOc4XQ6RuZFu5oRsxFYtEF5PSu7ik11h58fyeoaWOr1ebfkyAMawbeI2AJ5GA==} + '@glimmer/validator@0.44.0': resolution: {integrity: sha512-i01plR0EgFVz69GDrEuFgq1NheIjZcyTy3c7q+w7d096ddPVeVcRzU3LKaqCfovvLJ+6lJx40j45ecycASUUyw==} @@ -1546,6 +1592,9 @@ packages: '@glimmer/wire-format@0.84.3': resolution: {integrity: sha512-aZVfQhqv4k7tTo2vwjy+b4mAxKt7cHH75JR3zAeCilimApa+yYTYUyY73NDNSUVbelgAlQ5s6vTiMSQ55WwVow==} + '@glimmer/wire-format@0.92.3': + resolution: {integrity: sha512-gFz81Q9+V7Xs0X8mSq6y8qacHm0dPaGJo2/Bfcsdow1hLOKNgTCLr4XeDBhRML8f6I6Gk9ugH4QDxyIOXOpC4w==} + '@glint/template@1.4.0': resolution: {integrity: sha512-yD271NhLei/HSQ6utm6hKgoU+B5D5DY+B1irPvgI4KsDEcZI7v/INf5HAMJfzCg92bP1sIxSOuXu5DU6VsY7Mw==} @@ -1561,18 +1610,25 @@ packages: resolution: {integrity: sha512-S8cgntEDdXrOwdylVGDh1BFe+nX5uuUzzb3teh1FE++/kbqsOfUpXOYRUsEzsqb0fRqcm6eLxvtNb282Zr67rQ==} engines: {node: '>= 14.*'} - '@humanwhocodes/config-array@0.11.14': - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - deprecated: Use @eslint/config-array instead + '@humanfs/core@0.19.1': + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.6': + resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} + engines: {node: '>=18.18.0'} '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/object-schema@2.0.3': - resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - deprecated: Use @eslint/object-schema instead + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} + engines: {node: '>=18.18'} + + '@humanwhocodes/retry@0.4.1': + resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} + engines: {node: '>=18.18'} '@inquirer/figures@1.0.5': resolution: {integrity: sha512-79hP/VWdZ2UVc9bFGJnoQ/lQMpL74mGgzSYX1xUqCVk7/v73vJCMw1VuyWN1jGkZ9B3z7THAbySqGbCNefcjfA==} @@ -1611,6 +1667,9 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@keyv/serialize@1.0.3': + resolution: {integrity: sha512-qnEovoOp5Np2JDGonIDL6Ayihw0RhnRh6vxPuHo4RDn1UOzwEo4AeIfpL6UGIrsceWrCMiVPgwRjbHu4vYFc3g==} + '@lint-todo/utils@13.1.1': resolution: {integrity: sha512-F5z53uvRIF4dYfFfJP3a2Cqg+4P1dgJchJsFnsZE0eZp0LK8X7g2J0CsJHRgns+skpXOlM7n5vFGwkWCWj8qJg==} engines: {node: 12.* || >= 14} @@ -1679,6 +1738,9 @@ packages: rollup: optional: true + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + '@scarf/scarf@1.4.0': resolution: {integrity: sha512-xxeapPiUXdZAE3che6f3xogoJPeZgig6omHEy1rIY5WVsB3H2BHNnZH+gHG6x91SCWyQCzWGsuL2Hh3ClO5/qQ==} @@ -1864,50 +1926,50 @@ packages: '@ungap/structured-clone@0.3.4': resolution: {integrity: sha512-TSVh8CpnwNAsPC5wXcIyh92Bv1gq6E9cNDeeLu7Z4h8V4/qWtXJp7y42qljRkqcpmsve1iozwv1wr+3BNdILCg==} - '@webassemblyjs/ast@1.14.1': - resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} + '@webassemblyjs/ast@1.12.1': + resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} - '@webassemblyjs/floating-point-hex-parser@1.13.2': - resolution: {integrity: sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==} + '@webassemblyjs/floating-point-hex-parser@1.11.6': + resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} - '@webassemblyjs/helper-api-error@1.13.2': - resolution: {integrity: sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==} + '@webassemblyjs/helper-api-error@1.11.6': + resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} - '@webassemblyjs/helper-buffer@1.14.1': - resolution: {integrity: sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==} + '@webassemblyjs/helper-buffer@1.12.1': + resolution: {integrity: sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==} - '@webassemblyjs/helper-numbers@1.13.2': - resolution: {integrity: sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==} + '@webassemblyjs/helper-numbers@1.11.6': + resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} - '@webassemblyjs/helper-wasm-bytecode@1.13.2': - resolution: {integrity: sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==} + '@webassemblyjs/helper-wasm-bytecode@1.11.6': + resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} - '@webassemblyjs/helper-wasm-section@1.14.1': - resolution: {integrity: sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==} + '@webassemblyjs/helper-wasm-section@1.12.1': + resolution: {integrity: sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==} - '@webassemblyjs/ieee754@1.13.2': - resolution: {integrity: sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==} + '@webassemblyjs/ieee754@1.11.6': + resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} - '@webassemblyjs/leb128@1.13.2': - resolution: {integrity: sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==} + '@webassemblyjs/leb128@1.11.6': + resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} - '@webassemblyjs/utf8@1.13.2': - resolution: {integrity: sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==} + '@webassemblyjs/utf8@1.11.6': + resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} - '@webassemblyjs/wasm-edit@1.14.1': - resolution: {integrity: sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==} + '@webassemblyjs/wasm-edit@1.12.1': + resolution: {integrity: sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==} - '@webassemblyjs/wasm-gen@1.14.1': - resolution: {integrity: sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==} + '@webassemblyjs/wasm-gen@1.12.1': + resolution: {integrity: sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==} - '@webassemblyjs/wasm-opt@1.14.1': - resolution: {integrity: sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==} + '@webassemblyjs/wasm-opt@1.12.1': + resolution: {integrity: sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==} - '@webassemblyjs/wasm-parser@1.14.1': - resolution: {integrity: sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==} + '@webassemblyjs/wasm-parser@1.12.1': + resolution: {integrity: sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==} - '@webassemblyjs/wast-printer@1.14.1': - resolution: {integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==} + '@webassemblyjs/wast-printer@1.12.1': + resolution: {integrity: sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==} '@wry/caches@1.0.1': resolution: {integrity: sha512-bXuaUNLVVkD20wcGBWRyo7j9N3TxePEWFZj2Y+r9OoUzfqmavM84+mFykRicNsBqatba5JLay1t48wxaXaWnlA==} @@ -2601,13 +2663,13 @@ packages: buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + buffer@6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + builtin-modules@3.3.0: resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} engines: {node: '>=6'} - builtins@5.1.0: - resolution: {integrity: sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==} - bytes@1.0.0: resolution: {integrity: sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ==} @@ -2623,6 +2685,9 @@ packages: resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==} engines: {node: '>=0.10.0'} + cacheable@1.8.8: + resolution: {integrity: sha512-OE1/jlarWxROUIpd0qGBSKFLkNsotY8pt4GeiVErUYh/NUeTNrT+SBksUgllQv4m6a0W/VZsLuiHb88maavqEw==} + calculate-cache-key-for-tree@2.0.0: resolution: {integrity: sha512-Quw8a6y8CPmRd6eU+mwypktYCwUcf8yVFIRbNZ6tPQEckX9yd+EBVEPC/GSZZrMWH9e7Vz4pT7XhpmyApRByLQ==} engines: {node: 6.* || 8.* || >= 10.*} @@ -3031,6 +3096,9 @@ packages: resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} engines: {node: '>= 0.6'} + content-tag@2.0.3: + resolution: {integrity: sha512-htLIdtfhhKW2fHlFLnZH7GFzHSdSpHhDLrWVswkNiiPMZ5uXq5JfrGboQKFhNQuAAFF8VNB2EYUj3MsdJrKKpg==} + content-type@1.0.5: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} @@ -3097,12 +3165,16 @@ packages: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + crypto-random-string@2.0.0: resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} engines: {node: '>=8'} - css-functions-list@3.2.2: - resolution: {integrity: sha512-c+N0v6wbKVxTu5gOBBFkr9BEdBWaqqjQeiJ8QvSRIJOf+UxlJh930m8e6/WNeODIK0mYLFkoONrnj16i2EcvfQ==} + css-functions-list@3.2.3: + resolution: {integrity: sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==} engines: {node: '>=12 || >=16'} css-loader@5.2.7: @@ -3111,8 +3183,8 @@ packages: peerDependencies: webpack: ^4.27.0 || ^5.0.0 - css-tree@2.3.1: - resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + css-tree@3.1.0: + resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} cssesc@3.0.0: @@ -3174,6 +3246,15 @@ packages: supports-color: optional: true + debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + decode-uri-component@0.2.2: resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} engines: {node: '>=0.10'} @@ -3278,10 +3359,6 @@ packages: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} engines: {node: '>=0.10.0'} - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - dot-case@3.0.4: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} @@ -3577,6 +3654,16 @@ packages: peerDependencies: ember-source: ^3.8 || ^4.0.0 || >= 5.0.0 + ember-eslint-parser@0.5.9: + resolution: {integrity: sha512-IW4/3cEiFp49M2LiKyzi7VcT1egogOe8UxQ9eUKTooenC7Q4qNhzTD6rOZ8j51m8iJC+8hCzjbNCa3K4CN0Hhg==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@babel/core': ^7.23.6 + '@typescript-eslint/parser': '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + ember-event-helpers@0.1.1: resolution: {integrity: sha512-fWcbWd4W4nRv8bbato8JB6oGRpATkR+oGYxMIqnfgTgPWaCS0ww7CuUVNpwg1TulojKMCuTXi8Fem2b1NSF1ZQ==} engines: {node: 8.* || >= 10.*} @@ -3877,6 +3964,10 @@ packages: resolution: {integrity: sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==} engines: {node: '>=10.2.0'} + enhanced-resolve@5.17.0: + resolution: {integrity: sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==} + engines: {node: '>=10.13.0'} + enhanced-resolve@5.18.1: resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} engines: {node: '>=10.13.0'} @@ -3954,8 +4045,14 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} - eslint-config-prettier@8.8.0: - resolution: {integrity: sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==} + eslint-compat-utils@0.5.1: + resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} + engines: {node: '>=12'} + peerDependencies: + eslint: '>=6.0.0' + + eslint-config-prettier@10.0.1: + resolution: {integrity: sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==} hasBin: true peerDependencies: eslint: '>=7.0.0' @@ -3966,8 +4063,8 @@ packages: eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - eslint-module-utils@2.8.1: - resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} + eslint-module-utils@2.12.0: + resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -3987,36 +4084,40 @@ packages: eslint-import-resolver-webpack: optional: true - eslint-plugin-ember@11.12.0: - resolution: {integrity: sha512-7Ow1ky5JnRR0k3cxuvgYi4AWTe9DzGjlLgOJbU5VABLgr7Q0iq3ioC+YwAP79nV48cpw2HOgMgkZ1MynuIg59g==} - engines: {node: 14.* || 16.* || >= 18} + eslint-plugin-ember@12.5.0: + resolution: {integrity: sha512-DBUzsaKWDVXsujAZPpRir0O7owdlCoVzZmtaJm7g7iQeSrNtcRWI7AItsTqKSsws1XeAySH0sPsQItMdDCb9Fg==} + engines: {node: 18.* || 20.* || >= 21} peerDependencies: - eslint: '>= 7' + '@typescript-eslint/parser': '*' + eslint: '>= 8' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true - eslint-plugin-es@4.1.0: - resolution: {integrity: sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==} - engines: {node: '>=8.10.0'} + eslint-plugin-es-x@7.8.0: + resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==} + engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: - eslint: '>=4.19.1' + eslint: '>=8' - eslint-plugin-import@2.28.1: - resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==} + eslint-plugin-import@2.31.0: + resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 peerDependenciesMeta: '@typescript-eslint/parser': optional: true - eslint-plugin-n@15.7.0: - resolution: {integrity: sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==} - engines: {node: '>=12.22.0'} + eslint-plugin-n@17.15.1: + resolution: {integrity: sha512-KFw7x02hZZkBdbZEFQduRGH4VkIH4MW97ClsbAM4Y4E6KguBJWGfWG1P4HEIpZk2bkoWf0bojpnjNAhYQP8beA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: '>=7.0.0' + eslint: '>=8.23.0' - eslint-plugin-prettier@5.2.1: - resolution: {integrity: sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==} + eslint-plugin-prettier@5.2.3: + resolution: {integrity: sha512-qJ+y0FfCp/mQYQ/vWQ3s7eUlFEL4PyKfAJxsnYTJ4YT73nsJBWqmEpFryxV9OeUiqmsTsYJ5Y+KDNaeP31wrRw==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: '@types/eslint': '>=8.0.0' @@ -4029,9 +4130,9 @@ packages: eslint-config-prettier: optional: true - eslint-plugin-qunit@7.3.4: - resolution: {integrity: sha512-EbDM0zJerH9zVdUswMJpcFF7wrrpvsGuYfNexUpa5hZkkdFhaFcX+yD+RSK4Nrauw4psMGlcqeWUMhaVo+Manw==} - engines: {node: 12.x || 14.x || >=16.0.0} + eslint-plugin-qunit@8.1.2: + resolution: {integrity: sha512-2gDQdHlQW8GVXD7YYkO8vbm9Ldc60JeGMuQN5QlD48OeZ8znBvvoHWZZMeXjvoDPReGaLEvyuWrDtrI8bDbcqw==} + engines: {node: ^16.0.0 || ^18.0.0 || >=20.0.0} eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} @@ -4041,9 +4142,9 @@ packages: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint-utils@2.1.0: - resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} - engines: {node: '>=6'} + eslint-scope@8.2.0: + resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-utils@3.0.0: resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} @@ -4051,10 +4152,6 @@ packages: peerDependencies: eslint: '>=5' - eslint-visitor-keys@1.3.0: - resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} - engines: {node: '>=4'} - eslint-visitor-keys@2.1.0: resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} engines: {node: '>=10'} @@ -4063,18 +4160,27 @@ packages: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint@8.46.0: - resolution: {integrity: sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-visitor-keys@4.2.0: + resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.20.1: + resolution: {integrity: sha512-m1mM33o6dBUjxl2qb6wv6nGNwCAsns1eKtaQ4l/NPHeTvhiUPbtdfMyktxN4B3fgHIgsYh1VT3V9txblpQHq+g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true esm@3.2.25: resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==} engines: {node: '>=6'} - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + espree@10.3.0: + resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} esprima@3.0.0: resolution: {integrity: sha512-xoBq/MIShSydNZOkjkoCEjqod963yHNXTLC40ypBhop6yPqflPz/vTinmCfSrGcywVLnSftRf6a0kJLdFdzemw==} @@ -4204,6 +4310,10 @@ packages: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} @@ -4246,13 +4356,12 @@ packages: resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} engines: {node: '>=8'} - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} + file-entry-cache@10.0.6: + resolution: {integrity: sha512-0wvv16mVo9nN0Md3k7DMjgAPKG/TY4F/gYMBVb/wMThFRJvzrpaqBFqF6km9wf8QfYTN+mNg5aeaBLfy8k35uA==} - file-entry-cache@9.0.0: - resolution: {integrity: sha512-6MgEugi8p2tiUhqO7GnPsmbCCzj0YRCwwaTbpGRyKZesjRSzkqkAE9fPp7V2yMs5hwfgbQLgdvSSkGNg1s5Uvw==} - engines: {node: '>=18'} + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} filesize@10.1.2: resolution: {integrity: sha512-Dx770ai81ohflojxhU+oG+Z2QGvKdYxgEr9OSA8UVrqhwNHjfH9A8f5NKfg83fEH8ZFA5N5llJo5T3PIoZ4CRA==} @@ -4333,17 +4442,19 @@ packages: resolution: {integrity: sha512-SRgwIMXlxkb6AUgaVjIX+jCEqdhyXu9hah7mcK+lWynjKtX73Ux1TDv71B7XyaQ+LJxkYRHl5yCL8IycAvQRUw==} engines: {node: 10.* || >= 12.*} - flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} - flat-cache@5.0.0: - resolution: {integrity: sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==} - engines: {node: '>=18'} + flat-cache@6.1.6: + resolution: {integrity: sha512-F+CKgSwp0pzLx67u+Zy1aCueVWFAHWbXepvXlZ+bWVTaASbm5SyCnSJ80Fp1ePEmS57wU+Bf6cx6525qtMZ4lQ==} flatted@3.3.1: resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + focus-trap@6.9.4: resolution: {integrity: sha512-v2NTsZe2FF59Y+sDykKY+XjqZ0cPfhq/hikWVL88BqLivnNiEffAsac6rP6H45ff9wG9LL5ToiDqrLEP9GX9mw==} @@ -4488,6 +4599,9 @@ packages: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} + get-tsconfig@4.10.0: + resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} + get-value@2.0.6: resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} engines: {node: '>=0.10.0'} @@ -4551,9 +4665,13 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@15.15.0: + resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} + engines: {node: '>=18'} globals@9.18.0: resolution: {integrity: sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==} @@ -4590,9 +4708,6 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - graphql-tag@2.12.6: resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} engines: {node: '>=10'} @@ -4664,10 +4779,6 @@ packages: resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==} engines: {node: '>=0.10.0'} - has@1.0.4: - resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==} - engines: {node: '>= 0.4.0'} - hash-for-dep@1.5.1: resolution: {integrity: sha512-/dQ/A2cl7FBPI2pO0CANkvuuVi/IFS5oTyJ0PsOb6jW6WbVW1js5qJXMJTNbWHXBIPdFTWFbabjB+mE0d+gelw==} @@ -4699,6 +4810,9 @@ packages: resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==} engines: {node: '>=0.10.0'} + hookified@1.7.1: + resolution: {integrity: sha512-OXcdHsXeOiD7OJ5zvWj8Oy/6RCdLwntAX+wUrfemNcMGn6sux4xbEHi2QXwqePYhjQ/yvxxq2MvCRirdlHscBw==} + hosted-git-info@6.1.1: resolution: {integrity: sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -4761,6 +4875,14 @@ packages: resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + ignore@7.0.3: + resolution: {integrity: sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==} + engines: {node: '>= 4'} + immediate@3.0.6: resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} @@ -4862,6 +4984,10 @@ packages: resolution: {integrity: sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==} engines: {node: '>= 0.4'} + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + is-data-descriptor@1.0.1: resolution: {integrity: sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==} engines: {node: '>= 0.4'} @@ -4949,10 +5075,6 @@ packages: resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} engines: {node: '>=8'} - is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - is-plain-obj@2.1.0: resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} engines: {node: '>=8'} @@ -5169,6 +5291,9 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + keyv@5.2.3: + resolution: {integrity: sha512-AGKecUfzrowabUv0bH1RIR5Vf7w+l4S3xtQAypKaUpTdIR1EbrAcTxHCrpo9Q+IWeUlFE2palRtgIQcgm+PQJw==} + kind-of@3.2.2: resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} engines: {node: '>=0.10.0'} @@ -5181,8 +5306,8 @@ packages: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} engines: {node: '>=0.10.0'} - known-css-properties@0.31.0: - resolution: {integrity: sha512-sBPIUGTNF0czz0mwGGUoKKJC8Q7On1GPbCSFPfyEsfHb2DyBG0Y4QtV+EVWpINSaiGKZblDNuF5AezxSgOhesQ==} + known-css-properties@0.35.0: + resolution: {integrity: sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==} language-subtag-registry@0.3.23: resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} @@ -5372,9 +5497,6 @@ packages: magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} - magic-string@0.30.10: - resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} - make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} @@ -5417,8 +5539,8 @@ packages: mathml-tag-names@2.1.3: resolution: {integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==} - mdn-data@2.0.30: - resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + mdn-data@2.12.2: + resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==} mdurl@1.0.1: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} @@ -5469,6 +5591,10 @@ packages: resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} engines: {node: '>=8.6'} + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -5600,6 +5726,11 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + nanomatch@1.2.13: resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} engines: {node: '>=0.10.0'} @@ -6040,6 +6171,9 @@ packages: picocolors@1.1.0: resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} @@ -6139,11 +6273,11 @@ packages: peerDependencies: postcss: ^8.2.14 - postcss-resolve-nested-selector@0.1.1: - resolution: {integrity: sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==} + postcss-resolve-nested-selector@0.1.6: + resolution: {integrity: sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==} - postcss-safe-parser@7.0.0: - resolution: {integrity: sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg==} + postcss-safe-parser@7.0.1: + resolution: {integrity: sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==} engines: {node: '>=18.0'} peerDependencies: postcss: ^8.4.31 @@ -6156,6 +6290,10 @@ packages: resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} engines: {node: '>=4'} + postcss-selector-parser@7.1.0: + resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==} + engines: {node: '>=4'} + postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} @@ -6163,6 +6301,10 @@ packages: resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} engines: {node: ^10 || ^12 || >=14} + postcss@8.5.2: + resolution: {integrity: sha512-MjOadfU3Ys9KYoX0AdkBlFEF1Vx37uCCeN4ZHnmwm9FfpbsGWMZeBLMmmpY+6Ocqod7mkdZ0DT31OlbsFrLlkA==} + engines: {node: ^10 || ^12 || >=14} + prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -6380,10 +6522,6 @@ packages: resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} engines: {node: '>= 0.4'} - regexpp@3.2.0: - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} - engines: {node: '>=8'} - regexpu-core@5.3.2: resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} engines: {node: '>=4'} @@ -6476,6 +6614,9 @@ packages: resolution: {integrity: sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==} engines: {node: '>= 0.8'} + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + resolve-url@0.2.1: resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==} deprecated: https://github.com/lydell/resolve-url#deprecated @@ -6624,10 +6765,6 @@ packages: resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} engines: {node: '>= 12.13.0'} - schema-utils@4.3.0: - resolution: {integrity: sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==} - engines: {node: '>= 10.13.0'} - semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true @@ -6641,6 +6778,11 @@ packages: engines: {node: '>=10'} hasBin: true + semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} + engines: {node: '>=10'} + hasBin: true + send@0.18.0: resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} engines: {node: '>= 0.8.0'} @@ -6782,10 +6924,6 @@ packages: resolution: {integrity: sha512-FYsjYn2dHTRb41wqnv+uEqCUvBpK3jZcTp9rbz2qDTmel7Pmdtf+i2rLaaPMRZeSVM60V3Se31GyWFpmKs4Q5Q==} hasBin: true - source-map-js@1.2.0: - resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} - engines: {node: '>=0.10.0'} - source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -6945,25 +7083,27 @@ packages: styled_string@0.0.1: resolution: {integrity: sha512-DU2KZiB6VbPkO2tGSqQ9n96ZstUPjW7X4sGO6V2m1myIQluX0p1Ol8BrA/l6/EesqhMqXOIXs3cJNOy1UuU2BA==} - stylelint-config-recommended@11.0.0: - resolution: {integrity: sha512-SoGIHNI748OCZn6BxFYT83ytWoYETCINVHV3LKScVAWQQauWdvmdDqJC5YXWjpBbxg2E761Tg5aUGKLFOVhEkA==} + stylelint-config-recommended@15.0.0: + resolution: {integrity: sha512-9LejMFsat7L+NXttdHdTq94byn25TD+82bzGRiV1Pgasl99pWnwipXS5DguTpp3nP1XjvLXVnEJIuYBfsRjRkA==} + engines: {node: '>=18.12.0'} peerDependencies: - stylelint: ^15.3.0 + stylelint: ^16.13.0 - stylelint-config-standard@32.0.0: - resolution: {integrity: sha512-UnGJxYDyYFrIE9CjDMZRkrNh2o4lOtO+MVZ9qG5b8yARfsWho0GMx4YvhHfsv8zKKgHeWX2wfeyxmuoqcaYZ4w==} + stylelint-config-standard@37.0.0: + resolution: {integrity: sha512-+6eBlbSTrOn/il2RlV0zYGQwRTkr+WtzuVSs1reaWGObxnxLpbcspCUYajVQHonVfxVw2U+h42azGhrBvcg8OA==} + engines: {node: '>=18.12.0'} peerDependencies: - stylelint: ^15.4.0 + stylelint: ^16.13.0 - stylelint-prettier@5.0.2: - resolution: {integrity: sha512-qJ+BN+1T2ZcKz9WIrv0x+eFGHzSUnXfXd5gL///T6XoJvr3D8/ztzz2fhtmXef7Vb8P33zBXmLTTveByr0nwBw==} + stylelint-prettier@5.0.3: + resolution: {integrity: sha512-B6V0oa35ekRrKZlf+6+jA+i50C4GXJ7X1PPmoCqSUoXN6BrNF6NhqqhanvkLjqw2qgvrS0wjdpeC+Tn06KN3jw==} engines: {node: '>=18.12.0'} peerDependencies: prettier: '>=3.0.0' stylelint: '>=16.0.0' - stylelint@16.6.1: - resolution: {integrity: sha512-yNgz2PqWLkhH2hw6X9AweV9YvoafbAD5ZsFdKN9BvSDVwGvPh+AUIrn7lYwy1S7IHmtFin75LLfX1m0D2tHu8Q==} + stylelint@16.14.1: + resolution: {integrity: sha512-oqCL7AC3786oTax35T/nuLL8p2C3k/8rHKAooezrPGRvUX0wX+qqs5kMWh5YYT4PHQgVDobHT4tw55WgpYG6Sw==} engines: {node: '>=18.12.0'} hasBin: true @@ -6988,8 +7128,8 @@ packages: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} - supports-hyperlinks@3.0.0: - resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==} + supports-hyperlinks@3.2.0: + resolution: {integrity: sha512-zFObLMyZeEwzAoKCyu1B91U79K2t7ApXuQfo8OuxwXLDgcKxuwM+YvcbIhm6QWqz7mHUH1TVytR1PwVVjEuMig==} engines: {node: '>=14.18'} supports-preserve-symlinks-flag@1.0.0: @@ -7020,8 +7160,8 @@ packages: tabbable@5.3.3: resolution: {integrity: sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA==} - table@6.8.2: - resolution: {integrity: sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==} + table@6.9.0: + resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==} engines: {node: '>=10.0.0'} tailwindcss@3.4.13: @@ -7041,8 +7181,8 @@ packages: resolution: {integrity: sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==} engines: {node: '>=6.0.0'} - terser-webpack-plugin@5.3.11: - resolution: {integrity: sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==} + terser-webpack-plugin@5.3.10: + resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -7074,9 +7214,6 @@ packages: tether@2.0.0: resolution: {integrity: sha512-iAkyBhwILpLIvkwzO5w5WUBtpYwxvzLRTO+sbzF3Uy7X4zznsy73v2b4sOQHXE3CQHeSNtB/YMU2Nn9tocbeBQ==} - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - textextensions@2.6.0: resolution: {integrity: sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==} engines: {node: '>=0.8'} @@ -7213,10 +7350,6 @@ packages: resolution: {integrity: sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==} engines: {node: '>=8'} - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} @@ -7558,20 +7691,20 @@ packages: snapshots: - '@adfinis/eslint-config@2.1.1(@babel/core@7.22.9)(@babel/eslint-parser@7.21.3(@babel/core@7.22.9)(eslint@8.46.0))(@babel/plugin-proposal-decorators@7.24.7(@babel/core@7.22.9))(eslint-config-prettier@8.8.0(eslint@8.46.0))(eslint-plugin-ember@11.12.0(eslint@8.46.0))(eslint-plugin-import@2.28.1(eslint@8.46.0))(eslint-plugin-n@15.7.0(eslint@8.46.0))(eslint-plugin-prettier@5.2.1(@types/eslint@8.56.10)(eslint-config-prettier@8.8.0(eslint@8.46.0))(eslint@8.46.0)(prettier@3.0.3))(eslint-plugin-qunit@7.3.4(eslint@8.46.0))(eslint@8.46.0)(prettier@3.0.3)': + '@adfinis/eslint-config@3.0.2(@babel/core@7.22.9)(@babel/eslint-parser@7.21.3(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)))(@babel/plugin-proposal-decorators@7.24.7(@babel/core@7.22.9))(eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-ember@12.5.0(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-import@2.31.0(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-n@17.15.1(eslint@9.20.1(jiti@1.21.6)))(eslint-plugin-prettier@5.2.3(@types/eslint@8.56.10)(eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)))(eslint@9.20.1(jiti@1.21.6))(prettier@3.0.3))(eslint-plugin-qunit@8.1.2(eslint@9.20.1(jiti@1.21.6)))(eslint@9.20.1(jiti@1.21.6))(prettier@3.0.3)': dependencies: '@babel/core': 7.22.9 - '@babel/eslint-parser': 7.21.3(@babel/core@7.22.9)(eslint@8.46.0) + '@babel/eslint-parser': 7.21.3(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)) '@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.22.9) - eslint: 8.46.0 - eslint-config-prettier: 8.8.0(eslint@8.46.0) - eslint-plugin-import: 2.28.1(eslint@8.46.0) - eslint-plugin-prettier: 5.2.1(@types/eslint@8.56.10)(eslint-config-prettier@8.8.0(eslint@8.46.0))(eslint@8.46.0)(prettier@3.0.3) + eslint: 9.20.1(jiti@1.21.6) + eslint-config-prettier: 10.0.1(eslint@9.20.1(jiti@1.21.6)) + eslint-plugin-import: 2.31.0(eslint@9.20.1(jiti@1.21.6)) + eslint-plugin-prettier: 5.2.3(@types/eslint@8.56.10)(eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)))(eslint@9.20.1(jiti@1.21.6))(prettier@3.0.3) prettier: 3.0.3 optionalDependencies: - eslint-plugin-ember: 11.12.0(eslint@8.46.0) - eslint-plugin-n: 15.7.0(eslint@8.46.0) - eslint-plugin-qunit: 7.3.4(eslint@8.46.0) + eslint-plugin-ember: 12.5.0(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)) + eslint-plugin-n: 17.15.1(eslint@9.20.1(jiti@1.21.6)) + eslint-plugin-qunit: 8.1.2(eslint@9.20.1(jiti@1.21.6)) '@alloc/quick-lru@5.2.0': {} @@ -7714,11 +7847,19 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/eslint-parser@7.21.3(@babel/core@7.22.9)(eslint@8.46.0)': + '@babel/eslint-parser@7.21.3(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6))': dependencies: '@babel/core': 7.22.9 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 8.46.0 + eslint: 9.20.1(jiti@1.21.6) + eslint-visitor-keys: 2.1.0 + semver: 6.3.1 + + '@babel/eslint-parser@7.26.8(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6))': + dependencies: + '@babel/core': 7.22.9 + '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 + eslint: 9.20.1(jiti@1.21.6) eslint-visitor-keys: 2.1.0 semver: 6.3.1 @@ -10701,20 +10842,20 @@ snapshots: exec-sh: 0.3.6 minimist: 1.2.8 - '@csstools/css-parser-algorithms@2.7.0(@csstools/css-tokenizer@2.3.2)': + '@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3)': dependencies: - '@csstools/css-tokenizer': 2.3.2 + '@csstools/css-tokenizer': 3.0.3 - '@csstools/css-tokenizer@2.3.2': {} + '@csstools/css-tokenizer@3.0.3': {} - '@csstools/media-query-list-parser@2.1.12(@csstools/css-parser-algorithms@2.7.0(@csstools/css-tokenizer@2.3.2))(@csstools/css-tokenizer@2.3.2)': + '@csstools/media-query-list-parser@4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)': dependencies: - '@csstools/css-parser-algorithms': 2.7.0(@csstools/css-tokenizer@2.3.2) - '@csstools/css-tokenizer': 2.3.2 + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 - '@csstools/selector-specificity@3.1.1(postcss-selector-parser@6.1.0)': + '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.1.0)': dependencies: - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 7.1.0 '@dual-bundle/import-meta-resolve@4.1.0': {} @@ -11080,19 +11221,42 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint-community/eslint-utils@4.4.0(eslint@8.46.0)': + '@eslint-community/eslint-utils@4.4.0(eslint@9.20.1(jiti@1.21.6))': + dependencies: + eslint: 9.20.1(jiti@1.21.6) + eslint-visitor-keys: 3.4.3 + + '@eslint-community/eslint-utils@4.4.1(eslint@9.20.1(jiti@1.21.6))': dependencies: - eslint: 8.46.0 + eslint: 9.20.1(jiti@1.21.6) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.11.0': {} - '@eslint/eslintrc@2.1.4': + '@eslint-community/regexpp@4.12.1': {} + + '@eslint/config-array@0.19.2': + dependencies: + '@eslint/object-schema': 2.1.6 + debug: 4.3.5 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/core@0.10.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/core@0.11.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/eslintrc@3.2.0': dependencies: ajv: 6.12.6 debug: 4.3.5 - espree: 9.6.1 - globals: 13.24.0 + espree: 10.3.0 + globals: 14.0.0 ignore: 5.3.1 import-fresh: 3.3.0 js-yaml: 4.1.0 @@ -11101,7 +11265,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@8.57.0': {} + '@eslint/js@9.20.0': {} + + '@eslint/object-schema@2.1.6': {} + + '@eslint/plugin-kit@0.2.5': + dependencies: + '@eslint/core': 0.10.0 + levn: 0.4.1 '@floating-ui/core@1.6.4': dependencies: @@ -11234,6 +11405,10 @@ snapshots: dependencies: '@simple-dom/interface': 1.4.0 + '@glimmer/interfaces@0.92.3': + dependencies: + '@simple-dom/interface': 1.4.0 + '@glimmer/low-level@0.78.2': {} '@glimmer/manager@0.84.3': @@ -11315,6 +11490,14 @@ snapshots: '@handlebars/parser': 2.0.0 simple-html-tokenizer: 0.5.11 + '@glimmer/syntax@0.92.3': + dependencies: + '@glimmer/interfaces': 0.92.3 + '@glimmer/util': 0.92.3 + '@glimmer/wire-format': 0.92.3 + '@handlebars/parser': 2.0.0 + simple-html-tokenizer: 0.5.11 + '@glimmer/tracking@1.1.2': dependencies: '@glimmer/env': 0.1.7 @@ -11330,6 +11513,11 @@ snapshots: '@glimmer/interfaces': 0.84.3 '@simple-dom/interface': 1.4.0 + '@glimmer/util@0.92.3': + dependencies: + '@glimmer/env': 0.1.7 + '@glimmer/interfaces': 0.92.3 + '@glimmer/validator@0.44.0': {} '@glimmer/validator@0.84.3': @@ -11357,6 +11545,11 @@ snapshots: '@glimmer/interfaces': 0.84.3 '@glimmer/util': 0.84.3 + '@glimmer/wire-format@0.92.3': + dependencies: + '@glimmer/interfaces': 0.92.3 + '@glimmer/util': 0.92.3 + '@glint/template@1.4.0': {} '@graphql-typed-document-node/core@3.2.0(graphql@16.8.1)': @@ -11378,17 +11571,18 @@ snapshots: transitivePeerDependencies: - supports-color - '@humanwhocodes/config-array@0.11.14': + '@humanfs/core@0.19.1': {} + + '@humanfs/node@0.16.6': dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.5 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.3.1 '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/object-schema@2.0.3': {} + '@humanwhocodes/retry@0.3.1': {} + + '@humanwhocodes/retry@0.4.1': {} '@inquirer/figures@1.0.5': {} @@ -11433,6 +11627,10 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 + '@keyv/serialize@1.0.3': + dependencies: + buffer: 6.0.3 + '@lint-todo/utils@13.1.1': dependencies: '@types/eslint': 8.56.10 @@ -11508,6 +11706,8 @@ snapshots: optionalDependencies: rollup: 2.79.1 + '@rtsao/scc@1.1.0': {} + '@scarf/scarf@1.4.0': {} '@sentry-internal/feedback@7.118.0': @@ -11646,7 +11846,7 @@ snapshots: '@types/eslint-scope@3.7.7': dependencies: '@types/eslint': 8.56.10 - '@types/estree': 1.0.6 + '@types/estree': 1.0.5 '@types/eslint@8.56.10': dependencies: @@ -11741,80 +11941,80 @@ snapshots: '@ungap/structured-clone@0.3.4': {} - '@webassemblyjs/ast@1.14.1': + '@webassemblyjs/ast@1.12.1': dependencies: - '@webassemblyjs/helper-numbers': 1.13.2 - '@webassemblyjs/helper-wasm-bytecode': 1.13.2 + '@webassemblyjs/helper-numbers': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/floating-point-hex-parser@1.13.2': {} + '@webassemblyjs/floating-point-hex-parser@1.11.6': {} - '@webassemblyjs/helper-api-error@1.13.2': {} + '@webassemblyjs/helper-api-error@1.11.6': {} - '@webassemblyjs/helper-buffer@1.14.1': {} + '@webassemblyjs/helper-buffer@1.12.1': {} - '@webassemblyjs/helper-numbers@1.13.2': + '@webassemblyjs/helper-numbers@1.11.6': dependencies: - '@webassemblyjs/floating-point-hex-parser': 1.13.2 - '@webassemblyjs/helper-api-error': 1.13.2 + '@webassemblyjs/floating-point-hex-parser': 1.11.6 + '@webassemblyjs/helper-api-error': 1.11.6 '@xtuc/long': 4.2.2 - '@webassemblyjs/helper-wasm-bytecode@1.13.2': {} + '@webassemblyjs/helper-wasm-bytecode@1.11.6': {} - '@webassemblyjs/helper-wasm-section@1.14.1': + '@webassemblyjs/helper-wasm-section@1.12.1': dependencies: - '@webassemblyjs/ast': 1.14.1 - '@webassemblyjs/helper-buffer': 1.14.1 - '@webassemblyjs/helper-wasm-bytecode': 1.13.2 - '@webassemblyjs/wasm-gen': 1.14.1 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-buffer': 1.12.1 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/wasm-gen': 1.12.1 - '@webassemblyjs/ieee754@1.13.2': + '@webassemblyjs/ieee754@1.11.6': dependencies: '@xtuc/ieee754': 1.2.0 - '@webassemblyjs/leb128@1.13.2': + '@webassemblyjs/leb128@1.11.6': dependencies: '@xtuc/long': 4.2.2 - '@webassemblyjs/utf8@1.13.2': {} + '@webassemblyjs/utf8@1.11.6': {} - '@webassemblyjs/wasm-edit@1.14.1': + '@webassemblyjs/wasm-edit@1.12.1': dependencies: - '@webassemblyjs/ast': 1.14.1 - '@webassemblyjs/helper-buffer': 1.14.1 - '@webassemblyjs/helper-wasm-bytecode': 1.13.2 - '@webassemblyjs/helper-wasm-section': 1.14.1 - '@webassemblyjs/wasm-gen': 1.14.1 - '@webassemblyjs/wasm-opt': 1.14.1 - '@webassemblyjs/wasm-parser': 1.14.1 - '@webassemblyjs/wast-printer': 1.14.1 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-buffer': 1.12.1 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/helper-wasm-section': 1.12.1 + '@webassemblyjs/wasm-gen': 1.12.1 + '@webassemblyjs/wasm-opt': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 + '@webassemblyjs/wast-printer': 1.12.1 - '@webassemblyjs/wasm-gen@1.14.1': + '@webassemblyjs/wasm-gen@1.12.1': dependencies: - '@webassemblyjs/ast': 1.14.1 - '@webassemblyjs/helper-wasm-bytecode': 1.13.2 - '@webassemblyjs/ieee754': 1.13.2 - '@webassemblyjs/leb128': 1.13.2 - '@webassemblyjs/utf8': 1.13.2 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/ieee754': 1.11.6 + '@webassemblyjs/leb128': 1.11.6 + '@webassemblyjs/utf8': 1.11.6 - '@webassemblyjs/wasm-opt@1.14.1': + '@webassemblyjs/wasm-opt@1.12.1': dependencies: - '@webassemblyjs/ast': 1.14.1 - '@webassemblyjs/helper-buffer': 1.14.1 - '@webassemblyjs/wasm-gen': 1.14.1 - '@webassemblyjs/wasm-parser': 1.14.1 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-buffer': 1.12.1 + '@webassemblyjs/wasm-gen': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 - '@webassemblyjs/wasm-parser@1.14.1': + '@webassemblyjs/wasm-parser@1.12.1': dependencies: - '@webassemblyjs/ast': 1.14.1 - '@webassemblyjs/helper-api-error': 1.13.2 - '@webassemblyjs/helper-wasm-bytecode': 1.13.2 - '@webassemblyjs/ieee754': 1.13.2 - '@webassemblyjs/leb128': 1.13.2 - '@webassemblyjs/utf8': 1.13.2 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/helper-api-error': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/ieee754': 1.11.6 + '@webassemblyjs/leb128': 1.11.6 + '@webassemblyjs/utf8': 1.11.6 - '@webassemblyjs/wast-printer@1.14.1': + '@webassemblyjs/wast-printer@1.12.1': dependencies: - '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/ast': 1.12.1 '@xtuc/long': 4.2.2 '@wry/caches@1.0.1': @@ -11856,13 +12056,13 @@ snapshots: dependencies: acorn: 5.7.4 - acorn-import-attributes@1.9.5(acorn@8.14.0): + acorn-import-attributes@1.9.5(acorn@8.12.0): dependencies: - acorn: 8.14.0 + acorn: 8.12.0 - acorn-jsx@5.3.2(acorn@8.12.0): + acorn-jsx@5.3.2(acorn@8.14.0): dependencies: - acorn: 8.12.0 + acorn: 8.14.0 acorn@5.7.4: {} @@ -13107,11 +13307,12 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 - builtin-modules@3.3.0: {} - - builtins@5.1.0: + buffer@6.0.3: dependencies: - semver: 7.6.2 + base64-js: 1.5.1 + ieee754: 1.2.1 + + builtin-modules@3.3.0: {} bytes@1.0.0: {} @@ -13131,6 +13332,11 @@ snapshots: union-value: 1.0.1 unset-value: 1.0.0 + cacheable@1.8.8: + dependencies: + hookified: 1.7.1 + keyv: 5.2.3 + calculate-cache-key-for-tree@2.0.0: dependencies: json-stable-stringify: 1.1.1 @@ -13396,6 +13602,8 @@ snapshots: dependencies: safe-buffer: 5.2.1 + content-tag@2.0.3: {} + content-type@1.0.5: {} continuable-cache@0.3.1: {} @@ -13454,9 +13662,15 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + crypto-random-string@2.0.0: {} - css-functions-list@3.2.2: {} + css-functions-list@3.2.3: {} css-loader@5.2.7(webpack@5.92.1): dependencies: @@ -13472,10 +13686,10 @@ snapshots: semver: 7.6.2 webpack: 5.92.1 - css-tree@2.3.1: + css-tree@3.1.0: dependencies: - mdn-data: 2.0.30 - source-map-js: 1.2.0 + mdn-data: 2.12.2 + source-map-js: 1.2.1 cssesc@3.0.0: {} @@ -13523,6 +13737,10 @@ snapshots: dependencies: ms: 2.1.2 + debug@4.4.0: + dependencies: + ms: 2.1.3 + decode-uri-component@0.2.2: {} decorator-transforms@1.2.1(@babel/core@7.22.9): @@ -13632,10 +13850,6 @@ snapshots: dependencies: esutils: 2.0.3 - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - dot-case@3.0.4: dependencies: no-case: 3.0.4 @@ -14545,6 +14759,19 @@ snapshots: - '@glint/template' - supports-color + ember-eslint-parser@0.5.9(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)): + dependencies: + '@babel/core': 7.22.9 + '@babel/eslint-parser': 7.26.8(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)) + '@glimmer/syntax': 0.92.3 + content-tag: 2.0.3 + eslint-scope: 7.2.2 + html-tags: 3.3.1 + mathml-tag-names: 2.1.3 + svg-tags: 1.0.0 + transitivePeerDependencies: + - eslint + ember-event-helpers@0.1.1: dependencies: ember-cli-babel: 7.26.11 @@ -15169,6 +15396,11 @@ snapshots: - supports-color - utf-8-validate + enhanced-resolve@5.17.0: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.2.1 + enhanced-resolve@5.18.1: dependencies: graceful-fs: 4.2.11 @@ -15279,104 +15511,109 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@8.8.0(eslint@8.46.0): + eslint-compat-utils@0.5.1(eslint@9.20.1(jiti@1.21.6)): + dependencies: + eslint: 9.20.1(jiti@1.21.6) + semver: 7.7.1 + + eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)): dependencies: - eslint: 8.46.0 + eslint: 9.20.1(jiti@1.21.6) eslint-formatter-kakoune@1.0.0: {} eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 - is-core-module: 2.14.0 + is-core-module: 2.16.1 resolve: 1.22.8 transitivePeerDependencies: - supports-color - eslint-module-utils@2.8.1(eslint-import-resolver-node@0.3.9)(eslint@8.46.0): + eslint-module-utils@2.12.0(eslint-import-resolver-node@0.3.9)(eslint@9.20.1(jiti@1.21.6)): dependencies: debug: 3.2.7 optionalDependencies: - eslint: 8.46.0 + eslint: 9.20.1(jiti@1.21.6) eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: - supports-color - eslint-plugin-ember@11.12.0(eslint@8.46.0): + eslint-plugin-ember@12.5.0(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)): dependencies: '@ember-data/rfc395-data': 0.0.4 - '@glimmer/syntax': 0.84.3 - css-tree: 2.3.1 + css-tree: 3.1.0 + ember-eslint-parser: 0.5.9(@babel/core@7.22.9)(eslint@9.20.1(jiti@1.21.6)) ember-rfc176-data: 0.3.18 - ember-template-imports: 3.4.2 - ember-template-recast: 6.1.4 - eslint: 8.46.0 - eslint-utils: 3.0.0(eslint@8.46.0) + eslint: 9.20.1(jiti@1.21.6) + eslint-utils: 3.0.0(eslint@9.20.1(jiti@1.21.6)) estraverse: 5.3.0 lodash.camelcase: 4.3.0 lodash.kebabcase: 4.1.1 - magic-string: 0.30.10 requireindex: 1.2.0 snake-case: 3.0.4 transitivePeerDependencies: - - supports-color + - '@babel/core' - eslint-plugin-es@4.1.0(eslint@8.46.0): + eslint-plugin-es-x@7.8.0(eslint@9.20.1(jiti@1.21.6)): dependencies: - eslint: 8.46.0 - eslint-utils: 2.1.0 - regexpp: 3.2.0 + '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.1(jiti@1.21.6)) + '@eslint-community/regexpp': 4.11.0 + eslint: 9.20.1(jiti@1.21.6) + eslint-compat-utils: 0.5.1(eslint@9.20.1(jiti@1.21.6)) - eslint-plugin-import@2.28.1(eslint@8.46.0): + eslint-plugin-import@2.31.0(eslint@9.20.1(jiti@1.21.6)): dependencies: + '@rtsao/scc': 1.1.0 array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 array.prototype.flat: 1.3.2 array.prototype.flatmap: 1.3.2 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.46.0 + eslint: 9.20.1(jiti@1.21.6) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(eslint-import-resolver-node@0.3.9)(eslint@8.46.0) - has: 1.0.4 - is-core-module: 2.14.0 + eslint-module-utils: 2.12.0(eslint-import-resolver-node@0.3.9)(eslint@9.20.1(jiti@1.21.6)) + hasown: 2.0.2 + is-core-module: 2.16.1 is-glob: 4.0.3 minimatch: 3.1.2 object.fromentries: 2.0.8 object.groupby: 1.0.3 object.values: 1.2.0 semver: 6.3.1 + string.prototype.trimend: 1.0.8 tsconfig-paths: 3.15.0 transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-n@15.7.0(eslint@8.46.0): + eslint-plugin-n@17.15.1(eslint@9.20.1(jiti@1.21.6)): dependencies: - builtins: 5.1.0 - eslint: 8.46.0 - eslint-plugin-es: 4.1.0(eslint@8.46.0) - eslint-utils: 3.0.0(eslint@8.46.0) - ignore: 5.3.1 - is-core-module: 2.14.0 - minimatch: 3.1.2 - resolve: 1.22.8 - semver: 7.6.2 + '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.1(jiti@1.21.6)) + enhanced-resolve: 5.18.1 + eslint: 9.20.1(jiti@1.21.6) + eslint-plugin-es-x: 7.8.0(eslint@9.20.1(jiti@1.21.6)) + get-tsconfig: 4.10.0 + globals: 15.15.0 + ignore: 5.3.2 + minimatch: 9.0.5 + semver: 7.7.1 - eslint-plugin-prettier@5.2.1(@types/eslint@8.56.10)(eslint-config-prettier@8.8.0(eslint@8.46.0))(eslint@8.46.0)(prettier@3.0.3): + eslint-plugin-prettier@5.2.3(@types/eslint@8.56.10)(eslint-config-prettier@10.0.1(eslint@9.20.1(jiti@1.21.6)))(eslint@9.20.1(jiti@1.21.6))(prettier@3.0.3): dependencies: - eslint: 8.46.0 + eslint: 9.20.1(jiti@1.21.6) prettier: 3.0.3 prettier-linter-helpers: 1.0.0 synckit: 0.9.2 optionalDependencies: '@types/eslint': 8.56.10 - eslint-config-prettier: 8.8.0(eslint@8.46.0) + eslint-config-prettier: 10.0.1(eslint@9.20.1(jiti@1.21.6)) - eslint-plugin-qunit@7.3.4(eslint@8.46.0): + eslint-plugin-qunit@8.1.2(eslint@9.20.1(jiti@1.21.6)): dependencies: - eslint-utils: 3.0.0(eslint@8.46.0) + eslint-utils: 3.0.0(eslint@9.20.1(jiti@1.21.6)) requireindex: 1.2.0 transitivePeerDependencies: - eslint @@ -15391,70 +15628,70 @@ snapshots: esrecurse: 4.3.0 estraverse: 5.3.0 - eslint-utils@2.1.0: + eslint-scope@8.2.0: dependencies: - eslint-visitor-keys: 1.3.0 + esrecurse: 4.3.0 + estraverse: 5.3.0 - eslint-utils@3.0.0(eslint@8.46.0): + eslint-utils@3.0.0(eslint@9.20.1(jiti@1.21.6)): dependencies: - eslint: 8.46.0 + eslint: 9.20.1(jiti@1.21.6) eslint-visitor-keys: 2.1.0 - eslint-visitor-keys@1.3.0: {} - eslint-visitor-keys@2.1.0: {} eslint-visitor-keys@3.4.3: {} - eslint@8.46.0: + eslint-visitor-keys@4.2.0: {} + + eslint@9.20.1(jiti@1.21.6): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) - '@eslint-community/regexpp': 4.11.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.20.1(jiti@1.21.6)) + '@eslint-community/regexpp': 4.12.1 + '@eslint/config-array': 0.19.2 + '@eslint/core': 0.11.0 + '@eslint/eslintrc': 3.2.0 + '@eslint/js': 9.20.0 + '@eslint/plugin-kit': 0.2.5 + '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 + '@humanwhocodes/retry': 0.4.1 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 debug: 4.3.5 - doctrine: 3.0.0 escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 + eslint-scope: 8.2.0 + eslint-visitor-keys: 4.2.0 + espree: 10.3.0 esquery: 1.5.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 + file-entry-cache: 8.0.0 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.24.0 - graphemer: 1.4.0 ignore: 5.3.1 imurmurhash: 0.1.4 is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.4 - strip-ansi: 6.0.1 - text-table: 0.2.0 + optionalDependencies: + jiti: 1.21.6 transitivePeerDependencies: - supports-color esm@3.2.25: {} - espree@9.6.1: + espree@10.3.0: dependencies: - acorn: 8.12.0 - acorn-jsx: 5.3.2(acorn@8.12.0) - eslint-visitor-keys: 3.4.3 + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) + eslint-visitor-keys: 4.2.0 esprima@3.0.0: {} @@ -15638,6 +15875,14 @@ snapshots: merge2: 1.4.1 micromatch: 4.0.7 + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + fast-json-stable-stringify@2.1.0: {} fast-levenshtein@2.0.6: {} @@ -15689,13 +15934,13 @@ snapshots: dependencies: escape-string-regexp: 1.0.5 - file-entry-cache@6.0.1: + file-entry-cache@10.0.6: dependencies: - flat-cache: 3.2.0 + flat-cache: 6.1.6 - file-entry-cache@9.0.0: + file-entry-cache@8.0.0: dependencies: - flat-cache: 5.0.0 + flat-cache: 4.0.1 filesize@10.1.2: {} @@ -15823,19 +16068,21 @@ snapshots: matcher-collection: 2.0.1 walk-sync: 2.2.0 - flat-cache@3.2.0: + flat-cache@4.0.1: dependencies: flatted: 3.3.1 keyv: 4.5.4 - rimraf: 3.0.2 - flat-cache@5.0.0: + flat-cache@6.1.6: dependencies: - flatted: 3.3.1 - keyv: 4.5.4 + cacheable: 1.8.8 + flatted: 3.3.3 + hookified: 1.7.1 flatted@3.3.1: {} + flatted@3.3.3: {} + focus-trap@6.9.4: dependencies: tabbable: 5.3.3 @@ -16013,6 +16260,10 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.2.4 + get-tsconfig@4.10.0: + dependencies: + resolve-pkg-maps: 1.0.0 + get-value@2.0.6: {} git-hooks-list@1.0.3: {} @@ -16096,9 +16347,9 @@ snapshots: globals@11.12.0: {} - globals@13.24.0: - dependencies: - type-fest: 0.20.2 + globals@14.0.0: {} + + globals@15.15.0: {} globals@9.18.0: optional: true @@ -16125,8 +16376,8 @@ snapshots: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.3.2 - ignore: 5.3.1 + fast-glob: 3.3.3 + ignore: 5.3.2 merge2: 1.4.1 slash: 3.0.0 @@ -16149,8 +16400,6 @@ snapshots: graceful-fs@4.2.11: {} - graphemer@1.4.0: {} - graphql-tag@2.12.6(graphql@16.8.1): dependencies: graphql: 16.8.1 @@ -16217,8 +16466,6 @@ snapshots: is-number: 3.0.0 kind-of: 4.0.0 - has@1.0.4: {} - hash-for-dep@1.5.1: dependencies: broccoli-kitchen-sink-helpers: 0.3.1 @@ -16271,6 +16518,8 @@ snapshots: dependencies: parse-passwd: 1.0.0 + hookified@1.7.1: {} + hosted-git-info@6.1.1: dependencies: lru-cache: 7.18.3 @@ -16329,6 +16578,10 @@ snapshots: ignore@5.3.1: {} + ignore@5.3.2: {} + + ignore@7.0.3: {} + immediate@3.0.6: {} import-fresh@3.3.0: @@ -16455,6 +16708,10 @@ snapshots: dependencies: hasown: 2.0.2 + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + is-data-descriptor@1.0.1: dependencies: hasown: 2.0.2 @@ -16522,8 +16779,6 @@ snapshots: is-obj@2.0.0: {} - is-path-inside@3.0.3: {} - is-plain-obj@2.1.0: {} is-plain-object@2.0.4: @@ -16723,6 +16978,10 @@ snapshots: dependencies: json-buffer: 3.0.1 + keyv@5.2.3: + dependencies: + '@keyv/serialize': 1.0.3 + kind-of@3.2.2: dependencies: is-buffer: 1.1.6 @@ -16733,7 +16992,7 @@ snapshots: kind-of@6.0.3: {} - known-css-properties@0.31.0: {} + known-css-properties@0.35.0: {} language-subtag-registry@0.3.23: {} @@ -16909,10 +17168,6 @@ snapshots: dependencies: sourcemap-codec: 1.4.8 - magic-string@0.30.10: - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - make-dir@3.1.0: dependencies: semver: 6.3.1 @@ -16962,7 +17217,7 @@ snapshots: mathml-tag-names@2.1.3: {} - mdn-data@2.0.30: {} + mdn-data@2.12.2: {} mdurl@1.0.1: {} @@ -17031,6 +17286,11 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + mime-db@1.52.0: {} mime-types@2.1.35: @@ -17143,6 +17403,8 @@ snapshots: nanoid@3.3.7: {} + nanoid@3.3.8: {} + nanomatch@1.2.13: dependencies: arr-diff: 4.0.0 @@ -17437,7 +17699,7 @@ snapshots: parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -17500,6 +17762,8 @@ snapshots: picocolors@1.1.0: {} + picocolors@1.1.1: {} + picomatch@2.3.1: {} pify@2.3.0: {} @@ -17584,11 +17848,11 @@ snapshots: postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-resolve-nested-selector@0.1.1: {} + postcss-resolve-nested-selector@0.1.6: {} - postcss-safe-parser@7.0.0(postcss@8.4.47): + postcss-safe-parser@7.0.1(postcss@8.5.2): dependencies: - postcss: 8.4.47 + postcss: 8.5.2 postcss-selector-parser@6.1.0: dependencies: @@ -17600,6 +17864,11 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 + postcss-selector-parser@7.1.0: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + postcss-value-parser@4.2.0: {} postcss@8.4.47: @@ -17608,6 +17877,12 @@ snapshots: picocolors: 1.1.0 source-map-js: 1.2.1 + postcss@8.5.2: + dependencies: + nanoid: 3.3.8 + picocolors: 1.1.1 + source-map-js: 1.2.1 + prelude-ls@1.2.1: {} pretender@3.4.7: @@ -17793,8 +18068,6 @@ snapshots: es-errors: 1.3.0 set-function-name: 2.0.2 - regexpp@3.2.0: {} - regexpu-core@5.3.2: dependencies: '@babel/regjsgen': 0.8.0 @@ -17877,6 +18150,8 @@ snapshots: http-errors: 1.6.3 path-is-absolute: 1.0.1 + resolve-pkg-maps@1.0.0: {} + resolve-url@0.2.1: {} resolve@1.22.8: @@ -18039,19 +18314,14 @@ snapshots: ajv-formats: 2.1.1(ajv@8.16.0) ajv-keywords: 5.1.0(ajv@8.16.0) - schema-utils@4.3.0: - dependencies: - '@types/json-schema': 7.0.15 - ajv: 8.16.0 - ajv-formats: 2.1.1(ajv@8.16.0) - ajv-keywords: 5.1.0(ajv@8.16.0) - semver@5.7.2: {} semver@6.3.1: {} semver@7.6.2: {} + semver@7.7.1: {} + send@0.18.0: dependencies: debug: 2.6.9 @@ -18262,8 +18532,6 @@ snapshots: is-plain-obj: 2.1.0 sort-object-keys: 1.1.3 - source-map-js@1.2.0: {} - source-map-js@1.2.1: {} source-map-resolve@0.5.3: @@ -18425,61 +18693,60 @@ snapshots: styled_string@0.0.1: {} - stylelint-config-recommended@11.0.0(stylelint@16.6.1(typescript@5.5.2)): + stylelint-config-recommended@15.0.0(stylelint@16.14.1(typescript@5.5.2)): dependencies: - stylelint: 16.6.1(typescript@5.5.2) + stylelint: 16.14.1(typescript@5.5.2) - stylelint-config-standard@32.0.0(stylelint@16.6.1(typescript@5.5.2)): + stylelint-config-standard@37.0.0(stylelint@16.14.1(typescript@5.5.2)): dependencies: - stylelint: 16.6.1(typescript@5.5.2) - stylelint-config-recommended: 11.0.0(stylelint@16.6.1(typescript@5.5.2)) + stylelint: 16.14.1(typescript@5.5.2) + stylelint-config-recommended: 15.0.0(stylelint@16.14.1(typescript@5.5.2)) - stylelint-prettier@5.0.2(prettier@3.0.3)(stylelint@16.6.1(typescript@5.5.2)): + stylelint-prettier@5.0.3(prettier@3.0.3)(stylelint@16.14.1(typescript@5.5.2)): dependencies: prettier: 3.0.3 prettier-linter-helpers: 1.0.0 - stylelint: 16.6.1(typescript@5.5.2) + stylelint: 16.14.1(typescript@5.5.2) - stylelint@16.6.1(typescript@5.5.2): + stylelint@16.14.1(typescript@5.5.2): dependencies: - '@csstools/css-parser-algorithms': 2.7.0(@csstools/css-tokenizer@2.3.2) - '@csstools/css-tokenizer': 2.3.2 - '@csstools/media-query-list-parser': 2.1.12(@csstools/css-parser-algorithms@2.7.0(@csstools/css-tokenizer@2.3.2))(@csstools/css-tokenizer@2.3.2) - '@csstools/selector-specificity': 3.1.1(postcss-selector-parser@6.1.0) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0) '@dual-bundle/import-meta-resolve': 4.1.0 balanced-match: 2.0.0 colord: 2.9.3 cosmiconfig: 9.0.0(typescript@5.5.2) - css-functions-list: 3.2.2 - css-tree: 2.3.1 - debug: 4.3.5 - fast-glob: 3.3.2 + css-functions-list: 3.2.3 + css-tree: 3.1.0 + debug: 4.4.0 + fast-glob: 3.3.3 fastest-levenshtein: 1.0.16 - file-entry-cache: 9.0.0 + file-entry-cache: 10.0.6 global-modules: 2.0.0 globby: 11.1.0 globjoin: 0.1.4 html-tags: 3.3.1 - ignore: 5.3.1 + ignore: 7.0.3 imurmurhash: 0.1.4 is-plain-object: 5.0.0 - known-css-properties: 0.31.0 + known-css-properties: 0.35.0 mathml-tag-names: 2.1.3 meow: 13.2.0 - micromatch: 4.0.7 + micromatch: 4.0.8 normalize-path: 3.0.0 - picocolors: 1.0.1 - postcss: 8.4.47 - postcss-resolve-nested-selector: 0.1.1 - postcss-safe-parser: 7.0.0(postcss@8.4.47) - postcss-selector-parser: 6.1.0 + picocolors: 1.1.1 + postcss: 8.5.2 + postcss-resolve-nested-selector: 0.1.6 + postcss-safe-parser: 7.0.1(postcss@8.5.2) + postcss-selector-parser: 7.1.0 postcss-value-parser: 4.2.0 resolve-from: 5.0.0 string-width: 4.2.3 - strip-ansi: 7.1.0 - supports-hyperlinks: 3.0.0 + supports-hyperlinks: 3.2.0 svg-tags: 1.0.0 - table: 6.8.2 + table: 6.9.0 write-file-atomic: 5.0.1 transitivePeerDependencies: - supports-color @@ -18510,7 +18777,7 @@ snapshots: dependencies: has-flag: 4.0.0 - supports-hyperlinks@3.0.0: + supports-hyperlinks@3.2.0: dependencies: has-flag: 4.0.0 supports-color: 7.2.0 @@ -18550,7 +18817,7 @@ snapshots: tabbable@5.3.3: {} - table@6.8.2: + table@6.9.0: dependencies: ajv: 8.16.0 lodash.truncate: 4.4.2 @@ -18598,11 +18865,11 @@ snapshots: mkdirp: 0.5.6 rimraf: 2.6.3 - terser-webpack-plugin@5.3.11(webpack@5.92.1): + terser-webpack-plugin@5.3.10(webpack@5.92.1): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 - schema-utils: 4.3.0 + schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.1 webpack: 5.92.1 @@ -18711,8 +18978,6 @@ snapshots: tether@2.0.0: {} - text-table@0.2.0: {} - textextensions@2.6.0: {} thenify-all@1.6.0: @@ -18868,8 +19133,6 @@ snapshots: type-fest@0.11.0: {} - type-fest@0.20.2: {} - type-fest@0.21.3: {} type-is@1.6.18: @@ -19087,15 +19350,15 @@ snapshots: webpack@5.92.1: dependencies: '@types/eslint-scope': 3.7.7 - '@types/estree': 1.0.6 - '@webassemblyjs/ast': 1.14.1 - '@webassemblyjs/wasm-edit': 1.14.1 - '@webassemblyjs/wasm-parser': 1.14.1 - acorn: 8.14.0 - acorn-import-attributes: 1.9.5(acorn@8.14.0) - browserslist: 4.24.0 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 + acorn: 8.12.0 + acorn-import-attributes: 1.9.5(acorn@8.12.0) + browserslist: 4.23.1 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.18.1 + enhanced-resolve: 5.17.0 es-module-lexer: 1.5.4 eslint-scope: 5.1.1 events: 3.3.0 @@ -19107,7 +19370,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.11(webpack@5.92.1) + terser-webpack-plugin: 5.3.10(webpack@5.92.1) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: diff --git a/frontend/tests/.eslintrc.js b/frontend/tests/.eslintrc.js deleted file mode 100644 index df6aa0806..000000000 --- a/frontend/tests/.eslintrc.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -module.exports = { - env: { - embertest: true, - node: true, - }, - globals: { - server: true, - taskSelect: true, - userSelect: true, - setBreakpoint: true, - selectChoose: true, - selectSearch: true, - removeMultipleOption: true, - clearSelected: true, - }, - rules: { - "no-magic-numbers": "off", - "require-jsdoc": "off", - }, -}; From 16a205fbe28b0aacfc0e55dc05aa023e4d92b2ae Mon Sep 17 00:00:00 2001 From: Arthur Deierlein Date: Tue, 18 Feb 2025 13:46:55 +0100 Subject: [PATCH 2/3] fix(frontend): run eslint . --fix --- frontend/app/abilities/report.js | 2 -- frontend/app/analysis/edit/controller.js | 1 + frontend/app/analysis/edit/route.js | 1 + frontend/app/analysis/index/controller.js | 5 +++-- frontend/app/app.js | 1 + frontend/app/components/attendance-slider.js | 1 + frontend/app/components/datepicker-button.js | 3 ++- frontend/app/components/duration-since.js | 1 - frontend/app/components/durationpicker-day.js | 1 + frontend/app/components/durationpicker.js | 3 ++- frontend/app/components/report-row.js | 1 + frontend/app/components/statistic-list.js | 1 + frontend/app/components/task-selection.js | 3 ++- frontend/app/components/timed-clock.js | 1 - frontend/app/components/user-selection.js | 1 + frontend/app/components/worktime-balance-chart.js | 1 + frontend/app/helpers/format-duration.js | 1 + frontend/app/helpers/humanize-duration.js | 1 + frontend/app/helpers/parse-django-duration.js | 1 + frontend/app/index/activities/edit/route.js | 1 + frontend/app/index/attendances/controller.js | 1 + frontend/app/index/controller.js | 8 ++++---- frontend/app/index/reports/controller.js | 3 ++- frontend/app/projects/controller.js | 1 + frontend/app/router.js | 1 + frontend/app/services/autostart-tour.js | 1 + frontend/app/services/metadata-fetcher.js | 1 + frontend/app/services/tour.js | 3 ++- frontend/app/services/tracking.js | 3 ++- frontend/app/statistics/controller.js | 1 + frontend/app/transforms/django-duration.js | 1 + frontend/app/users/edit/controller.js | 2 +- .../users/edit/credits/absence-credits/edit/controller.js | 3 ++- .../edit/credits/overtime-credits/edit/controller.js | 1 + frontend/app/users/edit/index/controller.js | 2 +- frontend/app/users/index/controller.js | 1 + frontend/app/utils/format-duration.js | 1 + frontend/app/utils/query-params.js | 1 + frontend/app/validations/attendance.js | 1 + frontend/config/deprecation-workflow.js | 1 - frontend/config/environment.js | 1 - frontend/ember-cli-build.js | 1 - frontend/mirage/config.js | 5 +++-- frontend/mirage/factories/employment.js | 1 + frontend/mirage/helpers/duration.js | 1 + frontend/tests/acceptance/analysis-edit-test.js | 1 - frontend/tests/acceptance/analysis-test.js | 1 - frontend/tests/acceptance/auth-test.js | 1 - frontend/tests/acceptance/external-employee-test.js | 1 - frontend/tests/acceptance/index-activities-edit-test.js | 1 - frontend/tests/acceptance/index-activities-test.js | 2 +- frontend/tests/acceptance/index-attendances-test.js | 1 - frontend/tests/acceptance/index-reports-test.js | 1 - frontend/tests/acceptance/index-test.js | 1 - frontend/tests/acceptance/magic-link-test.js | 1 - frontend/tests/acceptance/notfound-test.js | 1 - frontend/tests/acceptance/project-test.js | 3 +-- frontend/tests/acceptance/statistics-test.js | 1 - frontend/tests/acceptance/tour-test.js | 3 +-- .../acceptance/users-edit-credits-absence-credit-test.js | 1 - .../acceptance/users-edit-credits-overtime-credit-test.js | 1 - frontend/tests/acceptance/users-edit-credits-test.js | 1 - .../tests/acceptance/users-edit-responsibilities-test.js | 1 - frontend/tests/acceptance/users-edit-test.js | 2 -- frontend/tests/acceptance/users-test.js | 3 --- .../components/durationpicker/component-test.js | 1 + .../components/optimized-power-select/component-test.js | 1 + .../components/statistic-list/column/component-test.js | 1 + .../integration/components/tracking-bar/component-test.js | 1 + .../components/worktime-balance-chart/component-test.js | 1 + frontend/tests/unit/abilities/report-test.js | 1 + .../tests/unit/helpers/balance-highlight-class-test.js | 1 + frontend/tests/unit/helpers/format-duration-test.js | 1 + frontend/tests/unit/helpers/humanize-duration-test.js | 1 + frontend/tests/unit/helpers/parse-django-duration-test.js | 1 + frontend/tests/unit/services/appearance-test.js | 1 + frontend/tests/unit/services/fetch-test.js | 1 + frontend/tests/unit/utils/format-duration-test.js | 1 + frontend/tests/unit/utils/humanize-duration-test.js | 1 + frontend/tests/unit/utils/parse-daytime-test.js | 1 + frontend/tests/unit/utils/parse-django-duration-test.js | 1 + frontend/tests/unit/utils/parse-filename-test.js | 1 + frontend/tests/unit/utils/query-params-test.js | 1 + frontend/tests/unit/utils/url-test.js | 1 + frontend/tests/unit/validators/moment-test.js | 1 + frontend/tests/unit/validators/null-or-not-blank-test.js | 1 + 86 files changed, 77 insertions(+), 49 deletions(-) diff --git a/frontend/app/abilities/report.js b/frontend/app/abilities/report.js index 2aeb2b396..f0280c3b5 100644 --- a/frontend/app/abilities/report.js +++ b/frontend/app/abilities/report.js @@ -12,9 +12,7 @@ export default class ReportAbility extends Ability { const isEditable = this.user?.isSuperuser || (!this.model?.verifiedBy?.get("id") && - // eslint-disable-next-line ember/no-get (this.model?.user?.get("id") === this.user?.get("id") || - // eslint-disable-next-line ember/no-get (this.model?.user?.get("supervisors") ?? []) .map((s) => s.id) .includes(this.user?.get("id")))); diff --git a/frontend/app/analysis/edit/controller.js b/frontend/app/analysis/edit/controller.js index 4185d73d6..06b316251 100644 --- a/frontend/app/analysis/edit/controller.js +++ b/frontend/app/analysis/edit/controller.js @@ -6,6 +6,7 @@ import { service } from "@ember/service"; import { dasherize } from "@ember/string"; import { tracked } from "@glimmer/tracking"; import { task } from "ember-concurrency"; + import { underscoreQueryParams, serializeQueryParams, diff --git a/frontend/app/analysis/edit/route.js b/frontend/app/analysis/edit/route.js index f619038d9..7b0885204 100644 --- a/frontend/app/analysis/edit/route.js +++ b/frontend/app/analysis/edit/route.js @@ -1,4 +1,5 @@ import Route from "@ember/routing/route"; + import { resetQueryParams } from "timed/utils/query-params"; export default class AnalysisEditRoute extends Route { diff --git a/frontend/app/analysis/index/controller.js b/frontend/app/analysis/index/controller.js index d21d6dca0..09bc096ef 100644 --- a/frontend/app/analysis/index/controller.js +++ b/frontend/app/analysis/index/controller.js @@ -13,6 +13,9 @@ import { } from "ember-concurrency"; import fetch from "fetch"; import moment from "moment"; + +import config from "../../config/environment"; + import QPController from "timed/controllers/qpcontroller"; import parseDjangoDuration from "timed/utils/parse-django-duration"; import parseFileName from "timed/utils/parse-filename"; @@ -24,8 +27,6 @@ import { import { serializeMoment } from "timed/utils/serialize-moment"; import { cleanParams, toQueryString } from "timed/utils/url"; -import config from "../../config/environment"; - export default class AnalysisController extends QPController { queryParams = [ "customer", diff --git a/frontend/app/app.js b/frontend/app/app.js index 92f072925..7adf0a9b6 100644 --- a/frontend/app/app.js +++ b/frontend/app/app.js @@ -6,6 +6,7 @@ import { registerDateLibrary } from "ember-power-calendar"; import DateUtils from "ember-power-calendar-moment"; import Resolver from "ember-resolver"; import fastRedact from "fast-redact"; + import config from "timed/config/environment"; import "simplebar"; diff --git a/frontend/app/components/attendance-slider.js b/frontend/app/components/attendance-slider.js index 0a0ed51dc..1c645359e 100644 --- a/frontend/app/components/attendance-slider.js +++ b/frontend/app/components/attendance-slider.js @@ -9,6 +9,7 @@ import Component from "@glimmer/component"; import { tracked } from "@glimmer/tracking"; import { dropTask } from "ember-concurrency"; import moment from "moment"; + import formatDuration from "timed/utils/format-duration"; import { pad2joincolon } from "timed/utils/pad"; diff --git a/frontend/app/components/datepicker-button.js b/frontend/app/components/datepicker-button.js index 39c44e574..70eb80004 100644 --- a/frontend/app/components/datepicker-button.js +++ b/frontend/app/components/datepicker-button.js @@ -5,9 +5,10 @@ */ import { action } from "@ember/object"; -import Datepicker from "timed/components/datepicker"; import { localCopy } from "tracked-toolbox"; +import Datepicker from "timed/components/datepicker"; + /** * The datepicker buttn component * diff --git a/frontend/app/components/duration-since.js b/frontend/app/components/duration-since.js index 7e2280a96..9a5efecdc 100644 --- a/frontend/app/components/duration-since.js +++ b/frontend/app/components/duration-since.js @@ -76,7 +76,6 @@ export default class DurationSinceComponent extends Component { * @public */ timer = task(async () => { - // eslint-disable-next-line no-constant-condition while (true) { this._compute(); diff --git a/frontend/app/components/durationpicker-day.js b/frontend/app/components/durationpicker-day.js index c974e4a6f..60288eae6 100644 --- a/frontend/app/components/durationpicker-day.js +++ b/frontend/app/components/durationpicker-day.js @@ -1,5 +1,6 @@ import { action } from "@ember/object"; import moment from "moment"; + import DurationpickerComponent from "timed/components/durationpicker"; import parseDayTime from "timed/utils/parse-daytime"; diff --git a/frontend/app/components/durationpicker.js b/frontend/app/components/durationpicker.js index 6d8ec848f..d31f84903 100644 --- a/frontend/app/components/durationpicker.js +++ b/frontend/app/components/durationpicker.js @@ -2,9 +2,10 @@ import { action } from "@ember/object"; import { guidFor } from "@ember/object/internals"; import { tracked } from "@glimmer/tracking"; import moment from "moment"; +import { localCopy } from "tracked-toolbox"; + import TimepickerComponent from "timed/components/timepicker"; import formatDuration from "timed/utils/format-duration"; -import { localCopy } from "tracked-toolbox"; const { MIN_SAFE_INTEGER, MAX_SAFE_INTEGER } = Number; const { abs } = Math; diff --git a/frontend/app/components/report-row.js b/frontend/app/components/report-row.js index f4778f1eb..c630c4ec6 100644 --- a/frontend/app/components/report-row.js +++ b/frontend/app/components/report-row.js @@ -2,6 +2,7 @@ import { action } from "@ember/object"; import { service } from "@ember/service"; import Component from "@glimmer/component"; import { dropTask } from "ember-concurrency"; + import ReportValidations from "timed/validations/report"; export default class ReportRowComponent extends Component { diff --git a/frontend/app/components/statistic-list.js b/frontend/app/components/statistic-list.js index a0bdf425c..f7c18d6b1 100644 --- a/frontend/app/components/statistic-list.js +++ b/frontend/app/components/statistic-list.js @@ -2,6 +2,7 @@ import { get } from "@ember/object"; import { capitalize } from "@ember/string"; import Component from "@glimmer/component"; import moment from "moment"; + import parseDjangoDuration from "timed/utils/parse-django-duration"; const PLAIN_LAYOUT = "PLAIN"; diff --git a/frontend/app/components/task-selection.js b/frontend/app/components/task-selection.js index 4f7bd0deb..775e5b831 100644 --- a/frontend/app/components/task-selection.js +++ b/frontend/app/components/task-selection.js @@ -5,11 +5,12 @@ import Component from "@glimmer/component"; import { restartableTask, timeout, dropTask } from "ember-concurrency"; import { trackedTask } from "reactiveweb/ember-concurrency"; import { resolve } from "rsvp"; +import { localCopy } from "tracked-toolbox"; + import customerOptionTemplate from "timed/components/optimized-power-select/custom-options/customer-option"; import projectOptionTemplate from "timed/components/optimized-power-select/custom-options/project-option"; import taskOptionTemplate from "timed/components/optimized-power-select/custom-options/task-option"; import customSelectedTemplate from "timed/components/optimized-power-select/custom-select/task-selection"; -import { localCopy } from "tracked-toolbox"; /** * Component for selecting a task, which consists of selecting a customer and * project first. diff --git a/frontend/app/components/timed-clock.js b/frontend/app/components/timed-clock.js index c2816bd9d..d71b75e8d 100644 --- a/frontend/app/components/timed-clock.js +++ b/frontend/app/components/timed-clock.js @@ -28,7 +28,6 @@ export default class TimedClock extends Component { } timer = task(async () => { - // eslint-disable-next-line no-constant-condition while (true) { this._update(); diff --git a/frontend/app/components/user-selection.js b/frontend/app/components/user-selection.js index 9f8bcfdc3..6fa611d2a 100644 --- a/frontend/app/components/user-selection.js +++ b/frontend/app/components/user-selection.js @@ -3,6 +3,7 @@ import Component from "@glimmer/component"; import { tracked } from "@glimmer/tracking"; import { restartableTask } from "ember-concurrency"; import { trackedTask } from "reactiveweb/ember-concurrency"; + import customOptionTemplate from "timed/components/optimized-power-select/custom-options/user-option"; import customSelectedTemplate from "timed/components/optimized-power-select/custom-select/user-selection"; diff --git a/frontend/app/components/worktime-balance-chart.js b/frontend/app/components/worktime-balance-chart.js index cc84327ad..de77cf9b1 100644 --- a/frontend/app/components/worktime-balance-chart.js +++ b/frontend/app/components/worktime-balance-chart.js @@ -1,5 +1,6 @@ import Component from "@glimmer/component"; import moment from "moment"; + import humanizeDuration from "timed/utils/humanize-duration"; // TODO: take this from tailwind.config.js diff --git a/frontend/app/helpers/format-duration.js b/frontend/app/helpers/format-duration.js index 9f5e23972..55221d26a 100644 --- a/frontend/app/helpers/format-duration.js +++ b/frontend/app/helpers/format-duration.js @@ -4,6 +4,7 @@ * @public */ import { helper } from "@ember/component/helper"; + import formatDuration from "timed/utils/format-duration"; /** diff --git a/frontend/app/helpers/humanize-duration.js b/frontend/app/helpers/humanize-duration.js index 431a22862..ca9f97e3f 100644 --- a/frontend/app/helpers/humanize-duration.js +++ b/frontend/app/helpers/humanize-duration.js @@ -4,6 +4,7 @@ * @public */ import { helper } from "@ember/component/helper"; + import humanizeDuration from "timed/utils/humanize-duration"; /** diff --git a/frontend/app/helpers/parse-django-duration.js b/frontend/app/helpers/parse-django-duration.js index 845fc7ffb..c3e3e9b88 100644 --- a/frontend/app/helpers/parse-django-duration.js +++ b/frontend/app/helpers/parse-django-duration.js @@ -4,6 +4,7 @@ * @public */ import { helper } from "@ember/component/helper"; + import parseDjangoDuration from "timed/utils/parse-django-duration"; /** diff --git a/frontend/app/index/activities/edit/route.js b/frontend/app/index/activities/edit/route.js index f2bbcd13e..da7ee7d8e 100644 --- a/frontend/app/index/activities/edit/route.js +++ b/frontend/app/index/activities/edit/route.js @@ -7,6 +7,7 @@ import Route from "@ember/routing/route"; import { service } from "@ember/service"; import Changeset from "ember-changeset"; import lookupValidator from "ember-changeset-validations"; + import ActivityValidator from "timed/validations/activity"; /** diff --git a/frontend/app/index/attendances/controller.js b/frontend/app/index/attendances/controller.js index e070248bc..962119b0f 100644 --- a/frontend/app/index/attendances/controller.js +++ b/frontend/app/index/attendances/controller.js @@ -6,6 +6,7 @@ import Controller from "@ember/controller"; import { action } from "@ember/object"; import { service } from "@ember/service"; + import AttendanceValidator from "timed/validations/attendance"; /** diff --git a/frontend/app/index/controller.js b/frontend/app/index/controller.js index e74e0fe7f..76f89a3c1 100644 --- a/frontend/app/index/controller.js +++ b/frontend/app/index/controller.js @@ -8,11 +8,12 @@ import { tracked } from "@glimmer/tracking"; import { dropTask, timeout } from "ember-concurrency"; import moment from "moment"; import { trackedFunction } from "reactiveweb/function"; -import AbsenceValidations from "timed/validations/absence"; -import MultipleAbsenceValidations from "timed/validations/multiple-absence"; import { tracked as trackedWrapper } from "tracked-built-ins"; import { cached } from "tracked-toolbox"; +import AbsenceValidations from "timed/validations/absence"; +import MultipleAbsenceValidations from "timed/validations/multiple-absence"; + /** * The index controller * @@ -138,7 +139,6 @@ export default class IndexController extends Controller { * @private */ _activitySumTask = dropTask(async () => { - // eslint-disable-next-line no-constant-condition while (true) { this._activitySum(); @@ -449,7 +449,7 @@ export default class IndexController extends Controller { const publicHolidays = await this.store.query("public-holiday", { ...params, - // eslint-disable-next-line ember/no-get + location: this.currentUser.user.activeEmployment.location.get("id"), }); diff --git a/frontend/app/index/reports/controller.js b/frontend/app/index/reports/controller.js index 741a871ca..95fa05ff4 100644 --- a/frontend/app/index/reports/controller.js +++ b/frontend/app/index/reports/controller.js @@ -10,8 +10,9 @@ import { service } from "@ember/service"; import { tracked } from "@glimmer/tracking"; import moment from "moment"; import { all } from "rsvp"; -import ReportValidations from "timed/validations/report"; import { cached } from "tracked-toolbox"; + +import ReportValidations from "timed/validations/report"; /** * The index reports controller * diff --git a/frontend/app/projects/controller.js b/frontend/app/projects/controller.js index da02f55d9..3233d304b 100644 --- a/frontend/app/projects/controller.js +++ b/frontend/app/projects/controller.js @@ -4,6 +4,7 @@ import { service } from "@ember/service"; import { tracked } from "@glimmer/tracking"; import { dropTask, lastValue, task } from "ember-concurrency"; import uniqBy from "lodash.uniqby"; + import ProjectValidations from "timed/validations/project"; import TaskValidations from "timed/validations/task"; diff --git a/frontend/app/router.js b/frontend/app/router.js index ea7ec3697..21a4e127b 100644 --- a/frontend/app/router.js +++ b/frontend/app/router.js @@ -1,4 +1,5 @@ import EmberRouter from "@ember/routing/router"; + import config from "timed/config/environment"; export default class Router extends EmberRouter { diff --git a/frontend/app/services/autostart-tour.js b/frontend/app/services/autostart-tour.js index 65e326a6b..380cf4461 100644 --- a/frontend/app/services/autostart-tour.js +++ b/frontend/app/services/autostart-tour.js @@ -1,5 +1,6 @@ import Service from "@ember/service"; import { tracked } from "@glimmer/tracking"; + import TOURS from "timed/tours"; /** diff --git a/frontend/app/services/metadata-fetcher.js b/frontend/app/services/metadata-fetcher.js index f692fd1ce..58aaafc3b 100644 --- a/frontend/app/services/metadata-fetcher.js +++ b/frontend/app/services/metadata-fetcher.js @@ -1,6 +1,7 @@ import Service, { service } from "@ember/service"; import { camelize, capitalize, dasherize } from "@ember/string"; import { restartableTask } from "ember-concurrency"; + import DjangoDurationTransform from "timed/transforms/django-duration"; const DJANGO_DURATION_TRANSFORM = DjangoDurationTransform.create(); diff --git a/frontend/app/services/tour.js b/frontend/app/services/tour.js index d590c2de8..8688f1136 100644 --- a/frontend/app/services/tour.js +++ b/frontend/app/services/tour.js @@ -4,9 +4,10 @@ import { waitFor } from "@ember/test-waiters"; import { isTesting, macroCondition } from "@embroider/macros"; import { tracked } from "@glimmer/tracking"; import Tour from "ember-shepherd/services/tour"; -import TOURS from "timed/tours"; import { cached } from "tracked-toolbox"; +import TOURS from "timed/tours"; + export default class TourService extends Tour { @service notify; @service media; diff --git a/frontend/app/services/tracking.js b/frontend/app/services/tracking.js index e1e8419b4..1b629207f 100644 --- a/frontend/app/services/tracking.js +++ b/frontend/app/services/tracking.js @@ -7,6 +7,7 @@ import { tracked } from "@glimmer/tracking"; import { dropTask, task, timeout } from "ember-concurrency"; import moment from "moment"; import { trackedTask } from "reactiveweb/ember-concurrency"; + import formatDuration from "timed/utils/format-duration"; /** @@ -243,7 +244,7 @@ export default class TrackingService extends Service { fetchRecentTasks = dropTask(async () => { await Promise.resolve(); return await this.store.query("task", { - my_most_frequent: 10, // eslint-disable-line camelcase + my_most_frequent: 10, include: "project,project.customer", }); }); diff --git a/frontend/app/statistics/controller.js b/frontend/app/statistics/controller.js index 15e5b4ed0..c77f3ef6e 100644 --- a/frontend/app/statistics/controller.js +++ b/frontend/app/statistics/controller.js @@ -2,6 +2,7 @@ import { action, get, set } from "@ember/object"; import { service } from "@ember/service"; import { tracked } from "@glimmer/tracking"; import { restartableTask, hash } from "ember-concurrency"; + import QPController from "timed/controllers/qpcontroller"; import { underscoreQueryParams, diff --git a/frontend/app/transforms/django-duration.js b/frontend/app/transforms/django-duration.js index c607ba709..11044d4a2 100644 --- a/frontend/app/transforms/django-duration.js +++ b/frontend/app/transforms/django-duration.js @@ -1,5 +1,6 @@ import Transform from "@ember-data/serializer/transform"; import moment from "moment"; + import { pad2joincolon } from "timed/utils/pad"; import parseDjangoDuration from "timed/utils/parse-django-duration"; diff --git a/frontend/app/users/edit/controller.js b/frontend/app/users/edit/controller.js index ccc83454b..c8dcd5a54 100644 --- a/frontend/app/users/edit/controller.js +++ b/frontend/app/users/edit/controller.js @@ -19,7 +19,7 @@ export default class UsersEditController extends Controller { worktimeBalanceLastValidTimesheet = task(async (user) => { const worktimeBalance = await this.store.query("worktime-balance", { user, - last_reported_date: 1, // eslint-disable-line camelcase + last_reported_date: 1, }); return worktimeBalance[0]; diff --git a/frontend/app/users/edit/credits/absence-credits/edit/controller.js b/frontend/app/users/edit/credits/absence-credits/edit/controller.js index 26a3957ad..7e790a655 100644 --- a/frontend/app/users/edit/credits/absence-credits/edit/controller.js +++ b/frontend/app/users/edit/credits/absence-credits/edit/controller.js @@ -1,6 +1,7 @@ import Controller, { inject as controller } from "@ember/controller"; import { service } from "@ember/service"; import { task, dropTask } from "ember-concurrency"; + import AbsenceCreditValidations from "timed/validations/absence-credit"; export default class UsersEditAbsenceCreditsController extends Controller { @@ -14,7 +15,7 @@ export default class UsersEditAbsenceCreditsController extends Controller { absenceTypes = task(async () => { return await this.store.query("absence-type", { - fill_worktime: 0, // eslint-disable-line camelcase + fill_worktime: 0, }); }); diff --git a/frontend/app/users/edit/credits/overtime-credits/edit/controller.js b/frontend/app/users/edit/credits/overtime-credits/edit/controller.js index ef08a9908..c86627cc1 100644 --- a/frontend/app/users/edit/credits/overtime-credits/edit/controller.js +++ b/frontend/app/users/edit/credits/overtime-credits/edit/controller.js @@ -1,6 +1,7 @@ import Controller, { inject as controller } from "@ember/controller"; import { service } from "@ember/service"; import { task, dropTask } from "ember-concurrency"; + import OvertimeCreditValidations from "timed/validations/overtime-credit"; export default class UsersEditOvertimeCreditsController extends Controller { diff --git a/frontend/app/users/edit/index/controller.js b/frontend/app/users/edit/index/controller.js index 2133474a3..06d6b8bb1 100644 --- a/frontend/app/users/edit/index/controller.js +++ b/frontend/app/users/edit/index/controller.js @@ -10,7 +10,7 @@ export default class EditUser extends Controller { return await this.store.query("absence", { user: this.user.id, ordering: "-date", - // eslint-disable-next-line camelcase + from_date: moment({ day: 1, month: 0, diff --git a/frontend/app/users/index/controller.js b/frontend/app/users/index/controller.js index a0cfabc0f..004502a92 100644 --- a/frontend/app/users/index/controller.js +++ b/frontend/app/users/index/controller.js @@ -4,6 +4,7 @@ import { tracked } from "@glimmer/tracking"; import { restartableTask, timeout, hash } from "ember-concurrency"; import moment from "moment"; import { trackedTask } from "reactiveweb/ember-concurrency"; + import QPController from "timed/controllers/qpcontroller"; export default class UsersIndexController extends QPController { diff --git a/frontend/app/utils/format-duration.js b/frontend/app/utils/format-duration.js index 87f89227e..8ca84912d 100644 --- a/frontend/app/utils/format-duration.js +++ b/frontend/app/utils/format-duration.js @@ -4,6 +4,7 @@ * @public */ import moment from "moment"; + import { pad2joincolon } from "timed/utils/pad"; const { floor, abs } = Math; diff --git a/frontend/app/utils/query-params.js b/frontend/app/utils/query-params.js index 18515e508..bc8353f4d 100644 --- a/frontend/app/utils/query-params.js +++ b/frontend/app/utils/query-params.js @@ -1,5 +1,6 @@ import { get } from "@ember/object"; import { underscore } from "@ember/string"; + import { serializeMoment, deserializeMoment, diff --git a/frontend/app/validations/attendance.js b/frontend/app/validations/attendance.js index aa3dfd2e0..4276e6cba 100644 --- a/frontend/app/validations/attendance.js +++ b/frontend/app/validations/attendance.js @@ -4,6 +4,7 @@ * @public */ import { validatePresence } from "ember-changeset-validations/validators"; + import validateMoment from "timed/validators/moment"; /** diff --git a/frontend/config/deprecation-workflow.js b/frontend/config/deprecation-workflow.js index 979a1a7de..60235cf6e 100644 --- a/frontend/config/deprecation-workflow.js +++ b/frontend/config/deprecation-workflow.js @@ -1,4 +1,3 @@ -/* eslint-disable no-undef */ window.deprecationWorkflow = window.deprecationWorkflow || {}; self.deprecationWorkflow.config = { workflow: [ diff --git a/frontend/config/environment.js b/frontend/config/environment.js index e22efb1ab..751860945 100644 --- a/frontend/config/environment.js +++ b/frontend/config/environment.js @@ -115,7 +115,6 @@ module.exports = function (environment) { }; } - // eslint-disable-next-line no-empty if (environment === "production") { ENV["ember-simple-auth-oidc"].host = "sso-client-host"; ENV["ember-simple-auth-oidc"].clientId = "sso-client-id"; diff --git a/frontend/ember-cli-build.js b/frontend/ember-cli-build.js index 2e2f14d9c..9ff7d0ec5 100644 --- a/frontend/ember-cli-build.js +++ b/frontend/ember-cli-build.js @@ -1,6 +1,5 @@ "use strict"; -// eslint-disable-next-line n/no-missing-require const EmberApp = require("ember-cli/lib/broccoli/ember-app"); module.exports = function (defaults) { diff --git a/frontend/mirage/config.js b/frontend/mirage/config.js index 29335a78d..25e84774c 100644 --- a/frontend/mirage/config.js +++ b/frontend/mirage/config.js @@ -1,11 +1,12 @@ import { discoverEmberDataModels } from "ember-cli-mirage"; import { createServer, Response } from "miragejs"; import moment from "moment"; -import formatDuration from "timed/utils/format-duration"; -import parseDjangoDuration from "timed/utils/parse-django-duration"; import { randomDuration } from "./helpers/duration"; +import formatDuration from "timed/utils/format-duration"; +import parseDjangoDuration from "timed/utils/parse-django-duration"; + const { parse } = JSON; const statisticEndpoint = (type) => { diff --git a/frontend/mirage/factories/employment.js b/frontend/mirage/factories/employment.js index 1887a8a43..667ad805b 100644 --- a/frontend/mirage/factories/employment.js +++ b/frontend/mirage/factories/employment.js @@ -1,6 +1,7 @@ import faker from "faker"; import { Factory, trait } from "miragejs"; import moment from "moment"; + import DjangoDurationTransform from "timed/transforms/django-duration"; export default Factory.extend({ diff --git a/frontend/mirage/helpers/duration.js b/frontend/mirage/helpers/duration.js index 276b12367..bbba64947 100644 --- a/frontend/mirage/helpers/duration.js +++ b/frontend/mirage/helpers/duration.js @@ -1,5 +1,6 @@ import faker from "faker"; import moment from "moment"; + import DjangoDurationTransform from "timed/transforms/django-duration"; export function randomDuration(precision = 15, seconds = false, maxHours = 2) { diff --git a/frontend/tests/acceptance/analysis-edit-test.js b/frontend/tests/acceptance/analysis-edit-test.js index 44d39633e..bbbdba7c6 100644 --- a/frontend/tests/acceptance/analysis-edit-test.js +++ b/frontend/tests/acceptance/analysis-edit-test.js @@ -12,7 +12,6 @@ module("Acceptance | analysis edit", function (hooks) { const user = this.server.create("user", { isSuperuser: true }); this.user = user; - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.reportIntersection = this.server.create("report-intersection", { diff --git a/frontend/tests/acceptance/analysis-test.js b/frontend/tests/acceptance/analysis-test.js index e88c17d51..14429e837 100644 --- a/frontend/tests/acceptance/analysis-test.js +++ b/frontend/tests/acceptance/analysis-test.js @@ -24,7 +24,6 @@ module("Acceptance | analysis", function (hooks) { setBreakpoint("md"); this.user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: this.user.id }); this.server.createList("report", 40, { userId: this.user.id }); diff --git a/frontend/tests/acceptance/auth-test.js b/frontend/tests/acceptance/auth-test.js index 50cfd4d46..12be651da 100644 --- a/frontend/tests/acceptance/auth-test.js +++ b/frontend/tests/acceptance/auth-test.js @@ -30,7 +30,6 @@ module("Acceptance | auth", function (hooks) { }); test("can logout", async function (assert) { - // eslint-disable-next-line camelcase await authenticateSession({ user_id: this.user.id }); await visit("/"); diff --git a/frontend/tests/acceptance/external-employee-test.js b/frontend/tests/acceptance/external-employee-test.js index 04fe5b2ae..bc40f51d3 100644 --- a/frontend/tests/acceptance/external-employee-test.js +++ b/frontend/tests/acceptance/external-employee-test.js @@ -13,7 +13,6 @@ module("Acceptance | external employee", function (hooks) { const user = this.server.create("user"); this.user = user; - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); // get active employment and set it to isExternal diff --git a/frontend/tests/acceptance/index-activities-edit-test.js b/frontend/tests/acceptance/index-activities-edit-test.js index b0fc5b399..0003fe5f7 100644 --- a/frontend/tests/acceptance/index-activities-edit-test.js +++ b/frontend/tests/acceptance/index-activities-edit-test.js @@ -20,7 +20,6 @@ module("Acceptance | index activities edit", function (hooks) { hooks.beforeEach(async function () { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.server.createList("activity", 5, { userId: user.id }); diff --git a/frontend/tests/acceptance/index-activities-test.js b/frontend/tests/acceptance/index-activities-test.js index b28b7d95c..85840ef7f 100644 --- a/frontend/tests/acceptance/index-activities-test.js +++ b/frontend/tests/acceptance/index-activities-test.js @@ -4,6 +4,7 @@ import { setupApplicationTest } from "ember-qunit"; import { authenticateSession } from "ember-simple-auth/test-support"; import moment from "moment"; import { module, skip, test } from "qunit"; + import formatDuration from "timed/utils/format-duration"; module("Acceptance | index activities", function (hooks) { @@ -13,7 +14,6 @@ module("Acceptance | index activities", function (hooks) { hooks.beforeEach(async function () { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.activities = this.server.createList("activity", 5, { diff --git a/frontend/tests/acceptance/index-attendances-test.js b/frontend/tests/acceptance/index-attendances-test.js index 077d77182..5d118b99e 100644 --- a/frontend/tests/acceptance/index-attendances-test.js +++ b/frontend/tests/acceptance/index-attendances-test.js @@ -14,7 +14,6 @@ module("Acceptance | index attendances", function (hooks) { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.server.create("attendance", "morning", { userId: user.id }); diff --git a/frontend/tests/acceptance/index-reports-test.js b/frontend/tests/acceptance/index-reports-test.js index 8f3b6edba..030900019 100644 --- a/frontend/tests/acceptance/index-reports-test.js +++ b/frontend/tests/acceptance/index-reports-test.js @@ -22,7 +22,6 @@ module("Acceptance | index reports", function (hooks) { hooks.beforeEach(async function () { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.server.createList("report", 5, { userId: user.id }); diff --git a/frontend/tests/acceptance/index-test.js b/frontend/tests/acceptance/index-test.js index 1d1dbc053..831cb4f07 100644 --- a/frontend/tests/acceptance/index-test.js +++ b/frontend/tests/acceptance/index-test.js @@ -14,7 +14,6 @@ module("Acceptance | index", function (hooks) { hooks.beforeEach(async function () { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.user = user; diff --git a/frontend/tests/acceptance/magic-link-test.js b/frontend/tests/acceptance/magic-link-test.js index ace8ab595..722ac4cdd 100644 --- a/frontend/tests/acceptance/magic-link-test.js +++ b/frontend/tests/acceptance/magic-link-test.js @@ -14,7 +14,6 @@ module("Acceptance | magic links", function (hooks) { hooks.beforeEach(async function () { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.server.createList("report", 5, { userId: user.id }); diff --git a/frontend/tests/acceptance/notfound-test.js b/frontend/tests/acceptance/notfound-test.js index 4828dd235..6bc5ff55d 100644 --- a/frontend/tests/acceptance/notfound-test.js +++ b/frontend/tests/acceptance/notfound-test.js @@ -11,7 +11,6 @@ module("Acceptance | notfound", function (hooks) { test("displays a 404 page for undefined routes if logged in", async function (assert) { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); await visit("/thiswillneverbeavalidrouteurl"); diff --git a/frontend/tests/acceptance/project-test.js b/frontend/tests/acceptance/project-test.js index be8f0cb17..ae79d607d 100644 --- a/frontend/tests/acceptance/project-test.js +++ b/frontend/tests/acceptance/project-test.js @@ -15,7 +15,7 @@ module("Acceptance | projects", function (hooks) { this.server.create("project-assignee", { user, }); - // eslint-disable-next-line camelcase + await authenticateSession({ user_id: user.id }); }); @@ -152,7 +152,6 @@ module("Acceptance | projects", function (hooks) { return user; }); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); await visit("/projects"); diff --git a/frontend/tests/acceptance/statistics-test.js b/frontend/tests/acceptance/statistics-test.js index 38a8bde0f..f8b391888 100644 --- a/frontend/tests/acceptance/statistics-test.js +++ b/frontend/tests/acceptance/statistics-test.js @@ -12,7 +12,6 @@ module("Acceptance | statistics", function (hooks) { hooks.beforeEach(async function () { const user = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); this.server.createList("year-statistic", 5); diff --git a/frontend/tests/acceptance/tour-test.js b/frontend/tests/acceptance/tour-test.js index 4d36c3908..3066e6999 100644 --- a/frontend/tests/acceptance/tour-test.js +++ b/frontend/tests/acceptance/tour-test.js @@ -10,6 +10,7 @@ import { setupApplicationTest } from "ember-qunit"; import { setBreakpoint } from "ember-responsive/test-support"; import { authenticateSession } from "ember-simple-auth/test-support"; import { module, test } from "qunit"; + import TOURS from "timed/tours"; module("Acceptance | tour", function (hooks) { @@ -19,7 +20,6 @@ module("Acceptance | tour", function (hooks) { hooks.beforeEach(async function () { const user = this.server.create("user", { tourDone: false }); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); localStorage.removeItem("timed-tour"); @@ -40,7 +40,6 @@ module("Acceptance | tour", function (hooks) { return user; }); - // eslint-disable-next-line camelcase await authenticateSession(); await visit("/"); diff --git a/frontend/tests/acceptance/users-edit-credits-absence-credit-test.js b/frontend/tests/acceptance/users-edit-credits-absence-credit-test.js index 31b6e8ca8..1f282320c 100644 --- a/frontend/tests/acceptance/users-edit-credits-absence-credit-test.js +++ b/frontend/tests/acceptance/users-edit-credits-absence-credit-test.js @@ -13,7 +13,6 @@ module("Acceptance | users edit credits absence credit", function (hooks) { this.user = this.server.create("user", { isSuperuser: true }); this.types = this.server.loadFixtures("absence-types"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: this.user.id }); }); diff --git a/frontend/tests/acceptance/users-edit-credits-overtime-credit-test.js b/frontend/tests/acceptance/users-edit-credits-overtime-credit-test.js index f9f4a1085..6a9367e69 100644 --- a/frontend/tests/acceptance/users-edit-credits-overtime-credit-test.js +++ b/frontend/tests/acceptance/users-edit-credits-overtime-credit-test.js @@ -12,7 +12,6 @@ module("Acceptance | users edit credits overtime credit", function (hooks) { hooks.beforeEach(async function () { this.user = this.server.create("user", { isSuperuser: true }); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: this.user.id }); }); diff --git a/frontend/tests/acceptance/users-edit-credits-test.js b/frontend/tests/acceptance/users-edit-credits-test.js index 945997c28..d12a3585c 100644 --- a/frontend/tests/acceptance/users-edit-credits-test.js +++ b/frontend/tests/acceptance/users-edit-credits-test.js @@ -12,7 +12,6 @@ module("Acceptance | users edit credits", function (hooks) { hooks.beforeEach(async function () { this.user = this.server.create("user", { isSuperuser: true }); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: this.user.id }); }); diff --git a/frontend/tests/acceptance/users-edit-responsibilities-test.js b/frontend/tests/acceptance/users-edit-responsibilities-test.js index e09f29c72..00d709c5b 100644 --- a/frontend/tests/acceptance/users-edit-responsibilities-test.js +++ b/frontend/tests/acceptance/users-edit-responsibilities-test.js @@ -20,7 +20,6 @@ module("Acceptance | users edit responsibilities", function (hooks) { lastName: "LastName", }); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: this.admin.id }); }); diff --git a/frontend/tests/acceptance/users-edit-test.js b/frontend/tests/acceptance/users-edit-test.js index 0241b16d2..7e71ab660 100644 --- a/frontend/tests/acceptance/users-edit-test.js +++ b/frontend/tests/acceptance/users-edit-test.js @@ -14,7 +14,6 @@ module("Acceptance | users edit", function (hooks) { this.allowed = this.server.create("user", { supervisorIds: [user.id] }); this.notAllowed = this.server.create("user"); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); }); @@ -34,7 +33,6 @@ module("Acceptance | users edit", function (hooks) { test("allows all to superuser", async function (assert) { const user = this.server.create("user", { isSuperuser: true }); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); await visit(`/users/${this.notAllowed.id}`); diff --git a/frontend/tests/acceptance/users-test.js b/frontend/tests/acceptance/users-test.js index eadc7ae59..aafc8f42b 100644 --- a/frontend/tests/acceptance/users-test.js +++ b/frontend/tests/acceptance/users-test.js @@ -17,7 +17,6 @@ module("Acceptance | users", function (hooks) { this.server.createList("user", 5, { supervisorIds: [user.id] }); this.server.createList("user", 5); - // eslint-disable-next-line camelcase await authenticateSession({ user_id: user.id }); }); @@ -36,7 +35,6 @@ module("Acceptance | users", function (hooks) { return user; }); - // eslint-disable-next-line camelcase await authenticateSession(); await visit("/users"); @@ -53,7 +51,6 @@ module("Acceptance | users", function (hooks) { return user; }); - // eslint-disable-next-line camelcase await authenticateSession(); await visit("/users"); diff --git a/frontend/tests/integration/components/durationpicker/component-test.js b/frontend/tests/integration/components/durationpicker/component-test.js index 47c3a87b4..1eb176684 100644 --- a/frontend/tests/integration/components/durationpicker/component-test.js +++ b/frontend/tests/integration/components/durationpicker/component-test.js @@ -10,6 +10,7 @@ import { hbs } from "ember-cli-htmlbars"; import { setupRenderingTest } from "ember-qunit"; import moment from "moment"; import { module, test } from "qunit"; + import formatDuration from "timed/utils/format-duration"; module("Integration | Component | durationpicker", function (hooks) { diff --git a/frontend/tests/integration/components/optimized-power-select/component-test.js b/frontend/tests/integration/components/optimized-power-select/component-test.js index e3dc3f34a..3d1522d22 100644 --- a/frontend/tests/integration/components/optimized-power-select/component-test.js +++ b/frontend/tests/integration/components/optimized-power-select/component-test.js @@ -6,6 +6,7 @@ import { } from "ember-power-select/test-support/helpers"; import { setupRenderingTest } from "ember-qunit"; import { module, test } from "qunit"; + import taskOptionTemplate from "timed/components/optimized-power-select/custom-options/task-option"; import customSelectedTemplate from "timed/components/optimized-power-select/custom-select/task-selection"; diff --git a/frontend/tests/integration/components/statistic-list/column/component-test.js b/frontend/tests/integration/components/statistic-list/column/component-test.js index d2d4d14a7..d46d133d6 100644 --- a/frontend/tests/integration/components/statistic-list/column/component-test.js +++ b/frontend/tests/integration/components/statistic-list/column/component-test.js @@ -3,6 +3,7 @@ import { hbs } from "ember-cli-htmlbars"; import { setupRenderingTest } from "ember-qunit"; import moment from "moment"; import { module, test } from "qunit"; + import humanizeDuration from "timed/utils/humanize-duration"; module("Integration | Component | statistic list/column", function (hooks) { diff --git a/frontend/tests/integration/components/tracking-bar/component-test.js b/frontend/tests/integration/components/tracking-bar/component-test.js index 8b1d86da0..af6458d6a 100644 --- a/frontend/tests/integration/components/tracking-bar/component-test.js +++ b/frontend/tests/integration/components/tracking-bar/component-test.js @@ -2,6 +2,7 @@ import { render } from "@ember/test-helpers"; import { hbs } from "ember-cli-htmlbars"; import { setupRenderingTest } from "ember-qunit"; import { module, test } from "qunit"; + import { setup as setupTrackingService } from "timed/tests/helpers/tracking-mock"; module("Integration | Component | tracking bar", function (hooks) { diff --git a/frontend/tests/integration/components/worktime-balance-chart/component-test.js b/frontend/tests/integration/components/worktime-balance-chart/component-test.js index 813d1f0cc..41907888a 100644 --- a/frontend/tests/integration/components/worktime-balance-chart/component-test.js +++ b/frontend/tests/integration/components/worktime-balance-chart/component-test.js @@ -3,6 +3,7 @@ import { hbs } from "ember-cli-htmlbars"; import { setupRenderingTest } from "ember-qunit"; import moment from "moment"; import { module, test } from "qunit"; + import WorktimeBalanceChart from "timed/components/worktime-balance-chart"; module("Integration | Component | worktime balance chart", function (hooks) { diff --git a/frontend/tests/unit/abilities/report-test.js b/frontend/tests/unit/abilities/report-test.js index eda548b8e..523f1edff 100644 --- a/frontend/tests/unit/abilities/report-test.js +++ b/frontend/tests/unit/abilities/report-test.js @@ -1,6 +1,7 @@ import EmberObject from "@ember/object"; import { setupTest } from "ember-qunit"; import { module, test } from "qunit"; + import setupCurrentUser from "timed/tests/helpers/current-user-mock"; module("Unit | Ability | report", function (hooks) { diff --git a/frontend/tests/unit/helpers/balance-highlight-class-test.js b/frontend/tests/unit/helpers/balance-highlight-class-test.js index bf1d1cbeb..47a5b16c0 100644 --- a/frontend/tests/unit/helpers/balance-highlight-class-test.js +++ b/frontend/tests/unit/helpers/balance-highlight-class-test.js @@ -1,5 +1,6 @@ import moment from "moment"; import { module, test } from "qunit"; + import { balanceHighlightClass } from "timed/helpers/balance-highlight-class"; module("Unit | Helper | balance highlight class", function () { diff --git a/frontend/tests/unit/helpers/format-duration-test.js b/frontend/tests/unit/helpers/format-duration-test.js index 328ba498e..57e337af0 100644 --- a/frontend/tests/unit/helpers/format-duration-test.js +++ b/frontend/tests/unit/helpers/format-duration-test.js @@ -1,5 +1,6 @@ import moment from "moment"; import { module, test } from "qunit"; + import { formatDurationFn } from "timed/helpers/format-duration"; module("Unit | Helper | format duration", function () { diff --git a/frontend/tests/unit/helpers/humanize-duration-test.js b/frontend/tests/unit/helpers/humanize-duration-test.js index c037abf96..51532e74b 100644 --- a/frontend/tests/unit/helpers/humanize-duration-test.js +++ b/frontend/tests/unit/helpers/humanize-duration-test.js @@ -1,5 +1,6 @@ import moment from "moment"; import { module, test } from "qunit"; + import { humanizeDurationFn } from "timed/helpers/humanize-duration"; module("Unit | Helper | humanize duration", function () { diff --git a/frontend/tests/unit/helpers/parse-django-duration-test.js b/frontend/tests/unit/helpers/parse-django-duration-test.js index f3b06aee5..4532ab1dd 100644 --- a/frontend/tests/unit/helpers/parse-django-duration-test.js +++ b/frontend/tests/unit/helpers/parse-django-duration-test.js @@ -1,4 +1,5 @@ import { module, test } from "qunit"; + import { parseDjangoDurationFn } from "timed/helpers/parse-django-duration"; module("Unit | Helper | parse django duration", function () { diff --git a/frontend/tests/unit/services/appearance-test.js b/frontend/tests/unit/services/appearance-test.js index bcfb53ff2..d0e6c5871 100644 --- a/frontend/tests/unit/services/appearance-test.js +++ b/frontend/tests/unit/services/appearance-test.js @@ -1,4 +1,5 @@ import { module, test } from "qunit"; + import { setupTest } from "timed/tests/helpers"; module("Unit | Service | appearance", function (hooks) { diff --git a/frontend/tests/unit/services/fetch-test.js b/frontend/tests/unit/services/fetch-test.js index beb297b34..8bb231598 100644 --- a/frontend/tests/unit/services/fetch-test.js +++ b/frontend/tests/unit/services/fetch-test.js @@ -1,5 +1,6 @@ import { setupTest } from "ember-qunit"; import { module, test } from "qunit"; + import setupSession from "timed/tests/helpers/session-mock"; module("Unit | Service | fetch", function (hooks) { diff --git a/frontend/tests/unit/utils/format-duration-test.js b/frontend/tests/unit/utils/format-duration-test.js index 1552ec1ef..4d6154f00 100644 --- a/frontend/tests/unit/utils/format-duration-test.js +++ b/frontend/tests/unit/utils/format-duration-test.js @@ -1,5 +1,6 @@ import moment from "moment"; import { module, test } from "qunit"; + import formatDuration from "timed/utils/format-duration"; module("Unit | Utility | format duration", function () { diff --git a/frontend/tests/unit/utils/humanize-duration-test.js b/frontend/tests/unit/utils/humanize-duration-test.js index 3a07d229d..1d1cf36a5 100644 --- a/frontend/tests/unit/utils/humanize-duration-test.js +++ b/frontend/tests/unit/utils/humanize-duration-test.js @@ -1,5 +1,6 @@ import moment from "moment"; import { module, test } from "qunit"; + import humanizeDuration from "timed/utils/humanize-duration"; module("Unit | Utility | humanize duration", function () { diff --git a/frontend/tests/unit/utils/parse-daytime-test.js b/frontend/tests/unit/utils/parse-daytime-test.js index 98f7ae1bc..35d744226 100644 --- a/frontend/tests/unit/utils/parse-daytime-test.js +++ b/frontend/tests/unit/utils/parse-daytime-test.js @@ -1,4 +1,5 @@ import { module, test } from "qunit"; + import parseDayTime from "timed/utils/parse-daytime"; module("Unit | Utility | parse day time", function () { diff --git a/frontend/tests/unit/utils/parse-django-duration-test.js b/frontend/tests/unit/utils/parse-django-duration-test.js index f34983f42..677021c36 100644 --- a/frontend/tests/unit/utils/parse-django-duration-test.js +++ b/frontend/tests/unit/utils/parse-django-duration-test.js @@ -1,5 +1,6 @@ import moment from "moment"; import { module, test } from "qunit"; + import parseDjangoDuration from "timed/utils/parse-django-duration"; module("Unit | Utility | parse django duration", function () { diff --git a/frontend/tests/unit/utils/parse-filename-test.js b/frontend/tests/unit/utils/parse-filename-test.js index 93c331341..5f5091f4c 100644 --- a/frontend/tests/unit/utils/parse-filename-test.js +++ b/frontend/tests/unit/utils/parse-filename-test.js @@ -1,4 +1,5 @@ import { module, test } from "qunit"; + import parseFileName from "timed/utils/parse-filename"; module("Unit | Utility | parse filename", function () { diff --git a/frontend/tests/unit/utils/query-params-test.js b/frontend/tests/unit/utils/query-params-test.js index 3603efde5..13e5ba335 100644 --- a/frontend/tests/unit/utils/query-params-test.js +++ b/frontend/tests/unit/utils/query-params-test.js @@ -1,4 +1,5 @@ import { module, test } from "qunit"; + import { serializeQueryParams, underscoreQueryParams, diff --git a/frontend/tests/unit/utils/url-test.js b/frontend/tests/unit/utils/url-test.js index 28c945e7f..3e1e747f1 100644 --- a/frontend/tests/unit/utils/url-test.js +++ b/frontend/tests/unit/utils/url-test.js @@ -1,4 +1,5 @@ import { module, test } from "qunit"; + import { cleanParams, toQueryString } from "timed/utils/url"; module("Unit | Utility | url", function () { diff --git a/frontend/tests/unit/validators/moment-test.js b/frontend/tests/unit/validators/moment-test.js index c78366e66..ff69b823b 100644 --- a/frontend/tests/unit/validators/moment-test.js +++ b/frontend/tests/unit/validators/moment-test.js @@ -1,5 +1,6 @@ import moment from "moment"; import { module, test } from "qunit"; + import validateMoment from "timed/validators/moment"; module("Unit | Validator | moment", function () { diff --git a/frontend/tests/unit/validators/null-or-not-blank-test.js b/frontend/tests/unit/validators/null-or-not-blank-test.js index 4789092cd..9ec92cf01 100644 --- a/frontend/tests/unit/validators/null-or-not-blank-test.js +++ b/frontend/tests/unit/validators/null-or-not-blank-test.js @@ -1,4 +1,5 @@ import { module, test } from "qunit"; + import validateNullOrNotBlank from "timed/validators/null-or-not-blank"; module("Unit | Validator | null or not blank", function () { From 11dc261bbd103f083bb7816304bc352a47c1e1a4 Mon Sep 17 00:00:00 2001 From: Arthur Deierlein Date: Tue, 18 Feb 2025 13:53:19 +0100 Subject: [PATCH 3/3] chore(frontend): manually fix remaining eslint errors --- frontend/app/analysis/edit/controller.js | 2 +- frontend/app/analysis/index/controller.js | 3 +-- frontend/app/index/activities/controller.js | 3 +-- frontend/app/index/attendances/controller.js | 9 +++------ frontend/app/index/controller.js | 8 +++----- frontend/app/index/reports/controller.js | 6 +++--- frontend/app/projects/controller.js | 12 ++++-------- frontend/app/protected/controller.js | 3 +-- frontend/app/services/rejected-reports.js | 2 +- frontend/app/services/tour.js | 2 +- frontend/app/services/tracking.js | 4 ++-- frontend/app/services/unverified-reports.js | 2 +- .../edit/credits/absence-credits/edit/controller.js | 6 ++---- frontend/app/users/edit/credits/index/controller.js | 3 +-- .../edit/credits/overtime-credits/edit/controller.js | 6 ++---- 15 files changed, 27 insertions(+), 44 deletions(-) diff --git a/frontend/app/analysis/edit/controller.js b/frontend/app/analysis/edit/controller.js index 06b316251..235be8df6 100644 --- a/frontend/app/analysis/edit/controller.js +++ b/frontend/app/analysis/edit/controller.js @@ -206,7 +206,7 @@ export default class AnalysisEditController extends Controller { }); this.notify.success("Reports were saved"); - } catch (e) { + } catch { this.notify.error("Error while saving the reports"); } diff --git a/frontend/app/analysis/index/controller.js b/frontend/app/analysis/index/controller.js index 09bc096ef..a6a4b4435 100644 --- a/frontend/app/analysis/index/controller.js +++ b/frontend/app/analysis/index/controller.js @@ -342,8 +342,7 @@ export default class AnalysisController extends QPController { download(file, filename, file.type); this.notify.success("File was downloaded"); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error( "Error while downloading, try again or try reducing results", ); diff --git a/frontend/app/index/activities/controller.js b/frontend/app/index/activities/controller.js index 30d7234c2..f9f9284ea 100644 --- a/frontend/app/index/activities/controller.js +++ b/frontend/app/index/activities/controller.js @@ -223,8 +223,7 @@ export default class ActivitiesIndexController extends Controller { }, resolve()); this.router.transitionTo("index.reports"); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while generating reports"); } finally { this.tracking.generatingReports = false; diff --git a/frontend/app/index/attendances/controller.js b/frontend/app/index/attendances/controller.js index 962119b0f..11e33f0fd 100644 --- a/frontend/app/index/attendances/controller.js +++ b/frontend/app/index/attendances/controller.js @@ -74,8 +74,7 @@ export default class AttendanceController extends Controller { await attendance.save(); this.notify.success("Attendance was saved"); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while saving the attendance"); } } @@ -93,8 +92,7 @@ export default class AttendanceController extends Controller { await this.store.peekRecord("attendance", attendance.id).destroyRecord(); this.notify.success("Attendance was deleted"); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while deleting the attendance"); } } @@ -122,8 +120,7 @@ export default class AttendanceController extends Controller { await attendance.save(); this.notify.success("Attendance was added"); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while adding the attendance"); } } diff --git a/frontend/app/index/controller.js b/frontend/app/index/controller.js index 76f89a3c1..bedf38f70 100644 --- a/frontend/app/index/controller.js +++ b/frontend/app/index/controller.js @@ -519,8 +519,7 @@ export default class IndexController extends Controller { await changeset.save(); this.showEditModal = false; - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while saving the absence"); } finally { this.send("finished"); @@ -542,8 +541,7 @@ export default class IndexController extends Controller { await absence.destroyRecord(); this.showEditModal = false; - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while deleting the absence"); } finally { this.send("finished"); @@ -579,7 +577,7 @@ export default class IndexController extends Controller { changeset.rollback(); this.showAddModal = false; - } catch (e) { + } catch { this.notify.error("Error while adding the absence"); } finally { this.send("finished"); diff --git a/frontend/app/index/reports/controller.js b/frontend/app/index/reports/controller.js index 95fa05ff4..b4636aff4 100644 --- a/frontend/app/index/reports/controller.js +++ b/frontend/app/index/reports/controller.js @@ -122,7 +122,7 @@ export default class IndexReportController extends Controller { if (this.absence) { await this.absence.reload(); } - } catch (e) { + } catch { this.notify.error("Error while saving the report"); } finally { this.send("finished"); @@ -148,7 +148,7 @@ export default class IndexReportController extends Controller { await this.absence.reload(); } } - } catch (e) { + } catch { this.notify.error("Error while deleting the report"); } finally { this.send("finished"); @@ -181,7 +181,7 @@ export default class IndexReportController extends Controller { this.router.transitionTo({ queryParams: { day: date.format("YYYY-MM-DD") }, }); - } catch (e) { + } catch { this.notify.error("Error while rescheduling the timesheet"); } } diff --git a/frontend/app/projects/controller.js b/frontend/app/projects/controller.js index 3233d304b..11f15f6d6 100644 --- a/frontend/app/projects/controller.js +++ b/frontend/app/projects/controller.js @@ -58,8 +58,7 @@ export default class ProjectsController extends Controller { } return projects.toSorted((p) => p.name); - } catch (error) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while fetching projects"); } }); @@ -78,8 +77,7 @@ export default class ProjectsController extends Controller { return await this.store.query("task", { project: id, }); - } catch (error) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while fetching tasks"); } }); @@ -89,8 +87,7 @@ export default class ProjectsController extends Controller { await changeset.save(); this.notify.success("Task was saved"); - } catch (error) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while saving task"); } @@ -101,8 +98,7 @@ export default class ProjectsController extends Controller { try { await changeset.save(); this.notify.success("Project was saved"); - } catch (error) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while saving project"); } this.fetchTasksByProject.perform(this.selectedProject); diff --git a/frontend/app/protected/controller.js b/frontend/app/protected/controller.js index 3d2739291..bf612f84c 100644 --- a/frontend/app/protected/controller.js +++ b/frontend/app/protected/controller.js @@ -45,8 +45,7 @@ export default class ProtectedController extends Controller { user.tourDone = true; await user.save(); this.visible = false; - } catch (error) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while saving the user"); } } diff --git a/frontend/app/services/rejected-reports.js b/frontend/app/services/rejected-reports.js index b5e1db90c..e98eda146 100644 --- a/frontend/app/services/rejected-reports.js +++ b/frontend/app/services/rejected-reports.js @@ -44,7 +44,7 @@ export default class RejectedReportsService extends Service { }); this.amountReports = reports.meta.pagination.count; - } catch (e) { + } catch { this.notify.error("Error while polling reports"); } } diff --git a/frontend/app/services/tour.js b/frontend/app/services/tour.js index 8688f1136..2c794ba79 100644 --- a/frontend/app/services/tour.js +++ b/frontend/app/services/tour.js @@ -151,7 +151,7 @@ export default class TourService extends Tour { await user.save(); this.notify.info("Congratulations you completed the tour!"); - } catch (error) { + } catch { /* istanbul ignore next */ this.notify.error("Error while saving the user"); } diff --git a/frontend/app/services/tracking.js b/frontend/app/services/tracking.js index 1b629207f..145ffc7a0 100644 --- a/frontend/app/services/tracking.js +++ b/frontend/app/services/tracking.js @@ -188,7 +188,7 @@ export default class TrackingService extends Service { this.activity = activity; this.notify.success("Activity was started"); - } catch (e) { + } catch { this.notify.error("Error while starting the activity"); } finally { this._computeTitle.perform(); @@ -210,7 +210,7 @@ export default class TrackingService extends Service { } this.activity = null; - } catch (e) { + } catch { this.notify.error("Error while stopping the activity"); } finally { this.setTitle(this.title); diff --git a/frontend/app/services/unverified-reports.js b/frontend/app/services/unverified-reports.js index 71fc40a50..0252bfa17 100644 --- a/frontend/app/services/unverified-reports.js +++ b/frontend/app/services/unverified-reports.js @@ -56,7 +56,7 @@ export default class UnverifiedReportsService extends Service { }); this.amountReports = reports.meta.pagination.count; - } catch (e) { + } catch { this.notify.error("Error while polling reports"); } } diff --git a/frontend/app/users/edit/credits/absence-credits/edit/controller.js b/frontend/app/users/edit/credits/absence-credits/edit/controller.js index 7e790a655..b608ed3ed 100644 --- a/frontend/app/users/edit/credits/absence-credits/edit/controller.js +++ b/frontend/app/users/edit/credits/absence-credits/edit/controller.js @@ -51,8 +51,7 @@ export default class UsersEditAbsenceCreditsController extends Controller { await this.router.transitionTo("users.edit.credits", this.user.id, { queryParams: { year }, }); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while saving the absence credit"); } }); @@ -66,8 +65,7 @@ export default class UsersEditAbsenceCreditsController extends Controller { this.userController.data.perform(this.user.id); this.router.transitionTo("users.edit.credits"); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while deleting the absence credit"); } }); diff --git a/frontend/app/users/edit/credits/index/controller.js b/frontend/app/users/edit/credits/index/controller.js index 1aba47f89..12e442625 100644 --- a/frontend/app/users/edit/credits/index/controller.js +++ b/frontend/app/users/edit/credits/index/controller.js @@ -83,8 +83,7 @@ export default class UsersEditCredits extends Controller { this.userController.data.perform(this.model.id); this.fetchData(moment().year().toString()); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while transfering"); } }); diff --git a/frontend/app/users/edit/credits/overtime-credits/edit/controller.js b/frontend/app/users/edit/credits/overtime-credits/edit/controller.js index c86627cc1..23035dd13 100644 --- a/frontend/app/users/edit/credits/overtime-credits/edit/controller.js +++ b/frontend/app/users/edit/credits/overtime-credits/edit/controller.js @@ -43,8 +43,7 @@ export default class UsersEditOvertimeCreditsController extends Controller { await this.router.transitionTo("users.edit.credits", this.user.id, { queryParams: { year }, }); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while saving the overtime credit"); } }); @@ -58,8 +57,7 @@ export default class UsersEditOvertimeCreditsController extends Controller { this.userController.data.perform(this.user.id); this.router.transitionTo("users.edit.credits"); - } catch (e) { - /* istanbul ignore next */ + } catch { this.notify.error("Error while deleting the overtime credit"); } });